Compare commits
6 commits
882321a0f8
...
08e84f0138
Author | SHA1 | Date | |
---|---|---|---|
08e84f0138 | |||
9e54caa429 | |||
5bf057ea9c | |||
084550f934 | |||
5b880684d9 | |||
0e68e5ac9c |
12 changed files with 736 additions and 204 deletions
141
flake.lock
141
flake.lock
|
@ -5,11 +5,11 @@
|
||||||
"nixpkgs": "nixpkgs"
|
"nixpkgs": "nixpkgs"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703934913,
|
"lastModified": 1704549352,
|
||||||
"narHash": "sha256-ICPSBWQBPVthW1uXxFizOfuNU3SEf+rf/tfJD89mWRk=",
|
"narHash": "sha256-fUwtVfjpkEtpQE2xwCTIgtmJzJSegFvNKsoZABDMvX4=",
|
||||||
"owner": "Aylur",
|
"owner": "Aylur",
|
||||||
"repo": "ags",
|
"repo": "ags",
|
||||||
"rev": "6a892994287b52ee3014dedfb41cec9fb675875b",
|
"rev": "dcb24f887efc3d0dbf291c75da05b19221bfdee4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -162,11 +162,11 @@
|
||||||
"nixpkgs-lib": "nixpkgs-lib"
|
"nixpkgs-lib": "nixpkgs-lib"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1701473968,
|
"lastModified": 1704152458,
|
||||||
"narHash": "sha256-YcVE5emp1qQ8ieHUnxt1wCZCC3ZfAS+SRRWZ2TMda7E=",
|
"narHash": "sha256-DS+dGw7SKygIWf9w4eNBUZsK+4Ug27NwEWmn2tnbycg=",
|
||||||
"owner": "hercules-ci",
|
"owner": "hercules-ci",
|
||||||
"repo": "flake-parts",
|
"repo": "flake-parts",
|
||||||
"rev": "34fed993f1674c8d06d58b37ce1e0fe5eebcb9f5",
|
"rev": "88a2cd8166694ba0b6cb374700799cec53aef527",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -197,11 +197,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1704276313,
|
"lastModified": 1704498488,
|
||||||
"narHash": "sha256-4eD4RaAKHLj0ztw5pQcNFs3hGpxrsYb0e9Qir+Ute+w=",
|
"narHash": "sha256-yINKdShHrtjdiJhov+q0s3Y3B830ujRoSbHduUNyKag=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "4d8f90205c6c90be2e81d94d0e5eedf71c1ba34e",
|
"rev": "51e44a13acea71b36245e8bd8c7db53e0a3e61ee",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -219,11 +219,11 @@
|
||||||
"xdph": "xdph"
|
"xdph": "xdph"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1704230318,
|
"lastModified": 1704647751,
|
||||||
"narHash": "sha256-aYjwKz4ybEEGqG45xFlnQbb0eN5GUxj9NMRcEYBPT3w=",
|
"narHash": "sha256-w2Tg80tZKn9eIzcOs1SlIYvYiqb7I7t516+QMwmkzkY=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "Hyprland",
|
"repo": "Hyprland",
|
||||||
"rev": "1512b81126dd115f089fd21244692d92034c78f8",
|
"rev": "9f2bde925bde09b4820a2cef369e9ddd930a746b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -239,11 +239,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1704241842,
|
"lastModified": 1704501043,
|
||||||
"narHash": "sha256-PsccT6JJYCnQM8vQI9SO6ZT3oEoluT983rbcnoYTGEk=",
|
"narHash": "sha256-ZjaDk2zx2210KQgzbNmx7Ang1kkxIFdfN1tWGjK/gVc=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "hyprland-plugins",
|
"repo": "hyprland-plugins",
|
||||||
"rev": "cf817ebadd003ad27383ef08c1c310a6bae82930",
|
"rev": "23708e7ad859d02902b58abae518abc5c11b4172",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -277,6 +277,24 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"hyprlang": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": "nixpkgs_4"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1704287638,
|
||||||
|
"narHash": "sha256-TuRXJGwtK440AXQNl5eiqmQqY4LZ/9+z/R7xC0ie3iA=",
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"rev": "6624f2bb66d4d27975766e81f77174adbe58ec97",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hyprwm",
|
||||||
|
"repo": "hyprlang",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nh": {
|
"nh": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
|
@ -300,14 +318,14 @@
|
||||||
"nix-gaming": {
|
"nix-gaming": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": "flake-parts_2",
|
"flake-parts": "flake-parts_2",
|
||||||
"nixpkgs": "nixpkgs_4"
|
"nixpkgs": "nixpkgs_5"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1704244428,
|
"lastModified": 1704590450,
|
||||||
"narHash": "sha256-n3KZlxx1QS3919I1O77OhBouUeetlLpmQQcIx3dqAso=",
|
"narHash": "sha256-9wUJ0irPrkukEUiqjXQev961l0sa0vgNlu9SW4GDV+E=",
|
||||||
"owner": "fufexan",
|
"owner": "fufexan",
|
||||||
"repo": "nix-gaming",
|
"repo": "nix-gaming",
|
||||||
"rev": "bd7442917422de061bcf61323b07abbb93bdb766",
|
"rev": "7a393401bd9212a5635e82dede0198d3e9602d41",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -323,11 +341,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703992163,
|
"lastModified": 1704596958,
|
||||||
"narHash": "sha256-709CGmwU34dxv8DjSpRBZ+HibVJIVaFcA4JH+GFnhyM=",
|
"narHash": "sha256-BK3Ohsz7m8X6qVKFxDtr8KVcHipfr5hYE9PDIJevHbQ=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "nix-index-database",
|
"repo": "nix-index-database",
|
||||||
"rev": "d6510ce144f5da7dd9bac667ba3d5a4946c00d11",
|
"rev": "f46800ac5a6e9f892fe36e50821c5d85794ecc62",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -355,11 +373,11 @@
|
||||||
"nixpkgs-lib": {
|
"nixpkgs-lib": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"dir": "lib",
|
"dir": "lib",
|
||||||
"lastModified": 1701253981,
|
"lastModified": 1703961334,
|
||||||
"narHash": "sha256-ztaDIyZ7HrTAfEEUt9AtTDNoCYxUdSd6NrRHaYOIxtk=",
|
"narHash": "sha256-M1mV/Cq+pgjk0rt6VxoyyD+O8cOUiai8t9Q6Yyq4noY=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e92039b55bcd58469325ded85d4f58dd5a4eaf58",
|
"rev": "b0d36bd0a420ecee3bc916c91886caca87c894e9",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -388,11 +406,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs-stable_2": {
|
"nixpkgs-stable_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703950681,
|
"lastModified": 1704290814,
|
||||||
"narHash": "sha256-veU5bE4eLOmi7aOzhE7LfZXcSOONRMay0BKv01WHojo=",
|
"narHash": "sha256-LWvKHp7kGxk/GEtlrGYV68qIvPHkU9iToomNFGagixU=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "0aad9113182747452dbfc68b93c86e168811fa6c",
|
"rev": "70bdadeb94ffc8806c0570eb5c2695ad29f0e421",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -420,11 +438,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_3": {
|
"nixpkgs_3": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703438236,
|
"lastModified": 1704194953,
|
||||||
"narHash": "sha256-aqVBq1u09yFhL7bj1/xyUeJjzr92fXVvQSSEx6AdB1M=",
|
"narHash": "sha256-RtDKd8Mynhe5CFnVT8s0/0yqtWFMM9LmCzXv/YKxnq4=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "5f64a12a728902226210bf01d25ec6cbb9d9265b",
|
"rev": "bd645e8668ec6612439a9ee7e71f7eac4099d4f6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -436,11 +454,27 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_4": {
|
"nixpkgs_4": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703499205,
|
"lastModified": 1702645756,
|
||||||
"narHash": "sha256-lF9rK5mSUfIZJgZxC3ge40tp1gmyyOXZ+lRY3P8bfbg=",
|
"narHash": "sha256-qKI6OR3TYJYQB3Q8mAZ+DG4o/BR9ptcv9UnRV2hzljc=",
|
||||||
|
"owner": "nixos",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"rev": "40c3c94c241286dd2243ea34d3aef8a488f9e4d0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "NixOS",
|
||||||
|
"ref": "nixos-unstable",
|
||||||
|
"repo": "nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs_5": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1704161960,
|
||||||
|
"narHash": "sha256-QGua89Pmq+FBAro8NriTuoO/wNaUtugt29/qqA8zeeM=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "e1fa12d4f6c6fe19ccb59cac54b5b3f25e160870",
|
"rev": "63143ac2c9186be6d9da6035fa22620018c85932",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -450,13 +484,13 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nixpkgs_5": {
|
"nixpkgs_6": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703961334,
|
"lastModified": 1704194953,
|
||||||
"narHash": "sha256-M1mV/Cq+pgjk0rt6VxoyyD+O8cOUiai8t9Q6Yyq4noY=",
|
"narHash": "sha256-RtDKd8Mynhe5CFnVT8s0/0yqtWFMM9LmCzXv/YKxnq4=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "b0d36bd0a420ecee3bc916c91886caca87c894e9",
|
"rev": "bd645e8668ec6612439a9ee7e71f7eac4099d4f6",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -466,6 +500,21 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nur": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1704645857,
|
||||||
|
"narHash": "sha256-YRFry+uleoeDKs0kr039eVCN5XSCOuUbgbyKMJRXeFY=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "e72bc8a4fff841c6a131fe40471e4ae401f31096",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"ags": "ags",
|
"ags": "ags",
|
||||||
|
@ -478,7 +527,8 @@
|
||||||
"nh": "nh",
|
"nh": "nh",
|
||||||
"nix-gaming": "nix-gaming",
|
"nix-gaming": "nix-gaming",
|
||||||
"nix-index-database": "nix-index-database",
|
"nix-index-database": "nix-index-database",
|
||||||
"nixpkgs": "nixpkgs_5",
|
"nixpkgs": "nixpkgs_6",
|
||||||
|
"nur": "nur",
|
||||||
"sops-nix": "sops-nix"
|
"sops-nix": "sops-nix"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -490,11 +540,11 @@
|
||||||
"nixpkgs-stable": "nixpkgs-stable_2"
|
"nixpkgs-stable": "nixpkgs-stable_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703991717,
|
"lastModified": 1704596510,
|
||||||
"narHash": "sha256-XfBg2dmDJXPQEB8EdNBnzybvnhswaiAkUeeDj7fa/hQ=",
|
"narHash": "sha256-tupdwwg1WeX2hNMOQrvtyafTaTVty0QC/gQp7yaYJic=",
|
||||||
"owner": "Mic92",
|
"owner": "Mic92",
|
||||||
"repo": "sops-nix",
|
"repo": "sops-nix",
|
||||||
"rev": "cfdbaf68d00bc2f9e071f17ae77be4b27ff72fa6",
|
"rev": "f5fbcc0f50e7fc60c4f806fa7a09abccf0826d8a",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -576,6 +626,7 @@
|
||||||
"hyprland",
|
"hyprland",
|
||||||
"hyprland-protocols"
|
"hyprland-protocols"
|
||||||
],
|
],
|
||||||
|
"hyprlang": "hyprlang",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"hyprland",
|
"hyprland",
|
||||||
"nixpkgs"
|
"nixpkgs"
|
||||||
|
@ -586,11 +637,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1703514399,
|
"lastModified": 1704400467,
|
||||||
"narHash": "sha256-VRr5Xc4S/VPr/gU3fiOD3vSIL2+GJ+LUrmFTWTwnTz4=",
|
"narHash": "sha256-IsEAKBCorRlN53FwFAMbyGLRsPVu/ZrWEJtCwykPds8=",
|
||||||
"owner": "hyprwm",
|
"owner": "hyprwm",
|
||||||
"repo": "xdg-desktop-portal-hyprland",
|
"repo": "xdg-desktop-portal-hyprland",
|
||||||
"rev": "0a318a7a217a6402b0b705837cd5b50b0e94b31b",
|
"rev": "1c802128f6cc3db29a8ef01552b1a22f894eeefd",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -9,6 +9,7 @@
|
||||||
ags.url = "github:Aylur/ags";
|
ags.url = "github:Aylur/ags";
|
||||||
nix-gaming.url = "github:fufexan/nix-gaming";
|
nix-gaming.url = "github:fufexan/nix-gaming";
|
||||||
attic.url = "github:zhaofengli/attic";
|
attic.url = "github:zhaofengli/attic";
|
||||||
|
nur.url = "github:nix-community/NUR";
|
||||||
hyprland-plugins = {
|
hyprland-plugins = {
|
||||||
url = "github:hyprwm/hyprland-plugins";
|
url = "github:hyprwm/hyprland-plugins";
|
||||||
inputs.hyprland.follows = "hyprland";
|
inputs.hyprland.follows = "hyprland";
|
||||||
|
|
107
home/firefox/default.nix
Normal file
107
home/firefox/default.nix
Normal file
|
@ -0,0 +1,107 @@
|
||||||
|
{pkgs, ...}: {
|
||||||
|
programs.firefox = {
|
||||||
|
enable = true;
|
||||||
|
policies = {
|
||||||
|
DisablePocket = true;
|
||||||
|
DisplayBookmarksToolbar = true;
|
||||||
|
DontCheckDefaultBrowser = true;
|
||||||
|
OfferToSaveLogins = false;
|
||||||
|
NoDefaultBookmarks = true;
|
||||||
|
PasswordManagerEnable = false;
|
||||||
|
DNSOverHTTPS = {
|
||||||
|
Enabled = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
profiles.notohh = {
|
||||||
|
id = 0;
|
||||||
|
isDefault = true;
|
||||||
|
name = "notohh";
|
||||||
|
settings = {
|
||||||
|
"browser.search.separatePrivateDefault" = false;
|
||||||
|
"browser.search.separatePrivateDefault.ui.enabled" = true;
|
||||||
|
"browser.startup.homepage" = "http://dashboard.internal.flake.sh/";
|
||||||
|
"network.trr.mode" = 2;
|
||||||
|
};
|
||||||
|
extraConfig = builtins.readFile ./user.js/betterfox.js;
|
||||||
|
search = {
|
||||||
|
default = "SearXNG";
|
||||||
|
engines = {
|
||||||
|
"SearXNG" = {
|
||||||
|
urls = [
|
||||||
|
{
|
||||||
|
template = "http://100.121.201.47:8100";
|
||||||
|
params = [
|
||||||
|
{
|
||||||
|
name = "q";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
definedAliases = ["@sx"];
|
||||||
|
};
|
||||||
|
"Nix Packages" = {
|
||||||
|
urls = [
|
||||||
|
{
|
||||||
|
template = "https://search.nixos.org/packages";
|
||||||
|
params = [
|
||||||
|
{
|
||||||
|
name = "type";
|
||||||
|
value = "packages";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "query";
|
||||||
|
value = "{searchTerms}";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
icon = "''${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||||
|
definedAliases = ["@np"];
|
||||||
|
};
|
||||||
|
"Bing".metaData.hidden = true;
|
||||||
|
"Google".metaData.hidden = true;
|
||||||
|
"Amazon.com".metaData.hidden = true;
|
||||||
|
"eBay".metaData.hidden = true;
|
||||||
|
"DuckDuckGo".metaData.hidden = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
|
# security
|
||||||
|
bitwarden
|
||||||
|
ublock-origin
|
||||||
|
canvasblocker
|
||||||
|
|
||||||
|
#leisure
|
||||||
|
darkreader
|
||||||
|
mal-sync
|
||||||
|
|
||||||
|
#utility
|
||||||
|
new-tab-override
|
||||||
|
sponsorblock
|
||||||
|
return-youtube-dislikes
|
||||||
|
|
||||||
|
#misc
|
||||||
|
tokyo-night-v2
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
xdg.mimeApps = {
|
||||||
|
enable = true;
|
||||||
|
defaultApplications = {
|
||||||
|
"x-scheme-handler/discord-409416265891971072" = ["discord-409416265891971072.desktop"];
|
||||||
|
"x-scheme-handler/discord-402572971681644545" = ["discord-402572971681644545.desktop"];
|
||||||
|
"x-scheme-handler/discord-696343075731144724" = ["discord-696343075731144724.desktop"];
|
||||||
|
"x-scheme-handler/http" = ["firefox.desktop"];
|
||||||
|
"x-scheme-handler/https" = ["firefox.desktop"];
|
||||||
|
"x-scheme-handler/chrome" = ["firefox.desktop"];
|
||||||
|
"text/html" = ["firefox.desktop"];
|
||||||
|
"application/x-extension-htm" = ["firefox.desktop"];
|
||||||
|
"application/x-extension-html" = ["firefox.desktop"];
|
||||||
|
"application/x-extension-shtml" = ["firefox.desktop"];
|
||||||
|
"application/xhtml+xml" = ["firefox.desktop"];
|
||||||
|
"application/x-extension-xhtml" = ["firefox.desktop"];
|
||||||
|
"application/x-extension-xht" = ["firefox.desktop"];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
255
home/firefox/user.js/betterfox.js
Normal file
255
home/firefox/user.js/betterfox.js
Normal file
|
@ -0,0 +1,255 @@
|
||||||
|
//
|
||||||
|
/* You may copy+paste this file and use it as it is.
|
||||||
|
*
|
||||||
|
* If you make changes to your about:config while the program is running, the
|
||||||
|
* changes will be overwritten by the user.js when the application restarts.
|
||||||
|
*
|
||||||
|
* To make lasting changes to preferences, you will have to edit the user.js.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* Betterfox *
|
||||||
|
* "Ad meliora" *
|
||||||
|
* version: 119 *
|
||||||
|
* url: https://github.com/yokoffing/Betterfox *
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* SECTION: FASTFOX *
|
||||||
|
****************************************************************************/
|
||||||
|
/** GENERAL ***/
|
||||||
|
user_pref("content.notify.interval", 100000);
|
||||||
|
|
||||||
|
/** GFX ***/
|
||||||
|
user_pref("gfx.canvas.accelerated.cache-items", 4096);
|
||||||
|
user_pref("gfx.canvas.accelerated.cache-size", 512);
|
||||||
|
user_pref("gfx.content.skia-font-cache-size", 20);
|
||||||
|
|
||||||
|
/** DISK CACHE ***/
|
||||||
|
user_pref("browser.cache.jsbc_compression_level", 3);
|
||||||
|
|
||||||
|
/** MEDIA CACHE ***/
|
||||||
|
user_pref("media.memory_cache_max_size", 65536);
|
||||||
|
user_pref("media.cache_readahead_limit", 7200);
|
||||||
|
user_pref("media.cache_resume_threshold", 3600);
|
||||||
|
|
||||||
|
/** IMAGE CACHE ***/
|
||||||
|
user_pref("image.mem.decode_bytes_at_a_time", 32768);
|
||||||
|
|
||||||
|
/** NETWORK ***/
|
||||||
|
user_pref("network.buffer.cache.size", 262144);
|
||||||
|
user_pref("network.buffer.cache.count", 128);
|
||||||
|
user_pref("network.http.max-connections", 1800);
|
||||||
|
user_pref("network.http.max-persistent-connections-per-server", 10);
|
||||||
|
user_pref("network.http.max-urgent-start-excessive-connections-per-host", 5);
|
||||||
|
user_pref("network.http.pacing.requests.enabled", false);
|
||||||
|
user_pref("network.dnsCacheExpiration", 3600);
|
||||||
|
user_pref("network.dns.max_high_priority_threads", 8);
|
||||||
|
user_pref("network.ssl_tokens_cache_capacity", 10240);
|
||||||
|
|
||||||
|
/** SPECULATIVE LOADING ***/
|
||||||
|
user_pref("network.dns.disablePrefetch", true);
|
||||||
|
user_pref("network.prefetch-next", false);
|
||||||
|
user_pref("network.predictor.enabled", false);
|
||||||
|
|
||||||
|
/** EXPERIMENTAL ***/
|
||||||
|
user_pref("layout.css.grid-template-masonry-value.enabled", true);
|
||||||
|
user_pref("dom.enable_web_task_scheduling", true);
|
||||||
|
user_pref("layout.css.has-selector.enabled", true);
|
||||||
|
user_pref("dom.security.sanitizer.enabled", true);
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* SECTION: SECUREFOX *
|
||||||
|
****************************************************************************/
|
||||||
|
/** TRACKING PROTECTION ***/
|
||||||
|
user_pref("browser.contentblocking.category", "strict");
|
||||||
|
user_pref("urlclassifier.trackingSkipURLs", "*.reddit.com, *.twitter.com, *.twimg.com, *.tiktok.com");
|
||||||
|
user_pref("urlclassifier.features.socialtracking.skipURLs", "*.instagram.com, *.twitter.com, *.twimg.com");
|
||||||
|
user_pref("network.cookie.sameSite.noneRequiresSecure", true);
|
||||||
|
user_pref("browser.download.start_downloads_in_tmp_dir", true);
|
||||||
|
user_pref("browser.helperApps.deleteTempFileOnExit", true);
|
||||||
|
user_pref("browser.uitour.enabled", false);
|
||||||
|
user_pref("privacy.globalprivacycontrol.enabled", true);
|
||||||
|
user_pref("privacy.globalprivacycontrol.functionality.enabled", true);
|
||||||
|
|
||||||
|
/** OCSP & CERTS / HPKP ***/
|
||||||
|
user_pref("security.OCSP.enabled", 0);
|
||||||
|
user_pref("security.remote_settings.crlite_filters.enabled", true);
|
||||||
|
user_pref("security.pki.crlite_mode", 2);
|
||||||
|
|
||||||
|
/** SSL / TLS ***/
|
||||||
|
user_pref("security.ssl.treat_unsafe_negotiation_as_broken", true);
|
||||||
|
user_pref("browser.xul.error_pages.expert_bad_cert", true);
|
||||||
|
user_pref("security.tls.enable_0rtt_data", false);
|
||||||
|
|
||||||
|
/** DISK AVOIDANCE ***/
|
||||||
|
user_pref("browser.privatebrowsing.forceMediaMemoryCache", true);
|
||||||
|
user_pref("browser.sessionstore.interval", 60000);
|
||||||
|
|
||||||
|
/** SHUTDOWN & SANITIZING ***/
|
||||||
|
user_pref("privacy.history.custom", true);
|
||||||
|
|
||||||
|
/** SEARCH / URL BAR ***/
|
||||||
|
user_pref("browser.search.separatePrivateDefault.ui.enabled", true);
|
||||||
|
user_pref("browser.urlbar.update2.engineAliasRefresh", true);
|
||||||
|
user_pref("browser.search.suggest.enabled", false);
|
||||||
|
user_pref("browser.urlbar.suggest.quicksuggest.sponsored", false);
|
||||||
|
user_pref("browser.urlbar.suggest.quicksuggest.nonsponsored", false);
|
||||||
|
user_pref("browser.formfill.enable", false);
|
||||||
|
user_pref("security.insecure_connection_text.enabled", true);
|
||||||
|
user_pref("security.insecure_connection_text.pbmode.enabled", true);
|
||||||
|
user_pref("network.IDN_show_punycode", true);
|
||||||
|
|
||||||
|
/** HTTPS-FIRST POLICY ***/
|
||||||
|
user_pref("dom.security.https_first", true);
|
||||||
|
|
||||||
|
/** PASSWORDS ***/
|
||||||
|
user_pref("signon.rememberSignons", false);
|
||||||
|
user_pref("signon.formlessCapture.enabled", false);
|
||||||
|
user_pref("signon.privateBrowsingCapture.enabled", false);
|
||||||
|
user_pref("network.auth.subresource-http-auth-allow", 1);
|
||||||
|
user_pref("editor.truncate_user_pastes", false);
|
||||||
|
|
||||||
|
/** ADDRESS + CREDIT CARD MANAGER ***/
|
||||||
|
user_pref("extensions.formautofill.addresses.enabled", false);
|
||||||
|
user_pref("extensions.formautofill.creditCards.enabled", false);
|
||||||
|
|
||||||
|
/** MIXED CONTENT + CROSS-SITE ***/
|
||||||
|
user_pref("security.mixed_content.block_display_content", true);
|
||||||
|
user_pref("security.mixed_content.upgrade_display_content", true);
|
||||||
|
user_pref("security.mixed_content.upgrade_display_content.image", true);
|
||||||
|
user_pref("pdfjs.enableScripting", false);
|
||||||
|
user_pref("extensions.postDownloadThirdPartyPrompt", false);
|
||||||
|
|
||||||
|
/** HEADERS / REFERERS ***/
|
||||||
|
user_pref("network.http.referer.XOriginTrimmingPolicy", 2);
|
||||||
|
|
||||||
|
/** CONTAINERS ***/
|
||||||
|
user_pref("privacy.userContext.ui.enabled", true);
|
||||||
|
|
||||||
|
/** WEBRTC ***/
|
||||||
|
user_pref("media.peerconnection.ice.proxy_only_if_behind_proxy", true);
|
||||||
|
user_pref("media.peerconnection.ice.default_address_only", true);
|
||||||
|
|
||||||
|
/** SAFE BROWSING ***/
|
||||||
|
user_pref("browser.safebrowsing.downloads.remote.enabled", false);
|
||||||
|
|
||||||
|
/** MOZILLA ***/
|
||||||
|
user_pref("permissions.default.desktop-notification", 2);
|
||||||
|
user_pref("permissions.default.geo", 2);
|
||||||
|
user_pref("geo.provider.network.url", "https://location.services.mozilla.com/v1/geolocate?key=%MOZILLA_API_KEY%");
|
||||||
|
user_pref("permissions.manager.defaultsUrl", "");
|
||||||
|
user_pref("webchannel.allowObject.urlWhitelist", "");
|
||||||
|
|
||||||
|
/** TELEMETRY ***/
|
||||||
|
user_pref("datareporting.policy.dataSubmissionEnabled", false);
|
||||||
|
user_pref("datareporting.healthreport.uploadEnabled", false);
|
||||||
|
user_pref("toolkit.telemetry.unified", false);
|
||||||
|
user_pref("toolkit.telemetry.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.server", "data:,");
|
||||||
|
user_pref("toolkit.telemetry.archive.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.newProfilePing.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.shutdownPingSender.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.updatePing.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.bhrPing.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.firstShutdownPing.enabled", false);
|
||||||
|
user_pref("toolkit.telemetry.coverage.opt-out", true);
|
||||||
|
user_pref("toolkit.coverage.opt-out", true);
|
||||||
|
user_pref("toolkit.coverage.endpoint.base", "");
|
||||||
|
user_pref("browser.ping-centre.telemetry", false);
|
||||||
|
user_pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
|
||||||
|
user_pref("browser.newtabpage.activity-stream.telemetry", false);
|
||||||
|
|
||||||
|
/** EXPERIMENTS ***/
|
||||||
|
user_pref("app.shield.optoutstudies.enabled", false);
|
||||||
|
user_pref("app.normandy.enabled", false);
|
||||||
|
user_pref("app.normandy.api_url", "");
|
||||||
|
|
||||||
|
/** CRASH REPORTS ***/
|
||||||
|
user_pref("breakpad.reportURL", "");
|
||||||
|
user_pref("browser.tabs.crashReporting.sendReport", false);
|
||||||
|
user_pref("browser.crashReports.unsubmittedCheck.autoSubmit2", false);
|
||||||
|
|
||||||
|
/** DETECTION ***/
|
||||||
|
user_pref("captivedetect.canonicalURL", "");
|
||||||
|
user_pref("network.captive-portal-service.enabled", false);
|
||||||
|
user_pref("network.connectivity-service.enabled", false);
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* SECTION: PESKYFOX *
|
||||||
|
****************************************************************************/
|
||||||
|
/** MOZILLA UI ***/
|
||||||
|
user_pref("browser.privatebrowsing.vpnpromourl", "");
|
||||||
|
user_pref("extensions.getAddons.showPane", false);
|
||||||
|
user_pref("extensions.htmlaboutaddons.recommendations.enabled", false);
|
||||||
|
user_pref("browser.discovery.enabled", false);
|
||||||
|
user_pref("browser.shell.checkDefaultBrowser", false);
|
||||||
|
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
|
||||||
|
user_pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
|
||||||
|
user_pref("browser.preferences.moreFromMozilla", false);
|
||||||
|
user_pref("browser.tabs.tabmanager.enabled", false);
|
||||||
|
user_pref("browser.aboutConfig.showWarning", false);
|
||||||
|
user_pref("browser.aboutwelcome.enabled", false);
|
||||||
|
|
||||||
|
/** THEME ADJUSTMENTS ***/
|
||||||
|
user_pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
|
||||||
|
user_pref("browser.compactmode.show", true);
|
||||||
|
user_pref("browser.display.focus_ring_on_anything", true);
|
||||||
|
user_pref("browser.display.focus_ring_style", 0);
|
||||||
|
user_pref("browser.display.focus_ring_width", 0);
|
||||||
|
user_pref("layout.css.prefers-color-scheme.content-override", 2);
|
||||||
|
user_pref("browser.privateWindowSeparation.enabled", false); // WINDOWS
|
||||||
|
|
||||||
|
/** COOKIE BANNER HANDLING ***/
|
||||||
|
user_pref("cookiebanners.service.mode", 1);
|
||||||
|
user_pref("cookiebanners.service.mode.privateBrowsing", 1);
|
||||||
|
user_pref("cookiebanners.service.enableGlobalRules", true);
|
||||||
|
|
||||||
|
/** FULLSCREEN NOTICE ***/
|
||||||
|
user_pref("full-screen-api.transition-duration.enter", "0 0");
|
||||||
|
user_pref("full-screen-api.transition-duration.leave", "0 0");
|
||||||
|
user_pref("full-screen-api.warning.delay", -1);
|
||||||
|
user_pref("full-screen-api.warning.timeout", 0);
|
||||||
|
|
||||||
|
/** URL BAR ***/
|
||||||
|
user_pref("browser.urlbar.suggest.calculator", true);
|
||||||
|
user_pref("browser.urlbar.unitConversion.enabled", true);
|
||||||
|
user_pref("browser.urlbar.trending.featureGate", false);
|
||||||
|
|
||||||
|
/** NEW TAB PAGE ***/
|
||||||
|
user_pref("browser.newtabpage.activity-stream.feeds.topsites", false);
|
||||||
|
user_pref("browser.newtabpage.activity-stream.feeds.section.topstories", false);
|
||||||
|
|
||||||
|
/*** POCKET ***/
|
||||||
|
user_pref("extensions.pocket.enabled", false);
|
||||||
|
|
||||||
|
/** DOWNLOADS ***/
|
||||||
|
user_pref("browser.download.useDownloadDir", false);
|
||||||
|
user_pref("browser.download.always_ask_before_handling_new_types", true);
|
||||||
|
user_pref("browser.download.manager.addToRecentDocs", false);
|
||||||
|
|
||||||
|
/** PDF ***/
|
||||||
|
user_pref("browser.download.open_pdf_attachments_inline", true);
|
||||||
|
|
||||||
|
/** TAB BEHAVIOR ***/
|
||||||
|
user_pref("browser.bookmarks.openInTabClosesMenu", false);
|
||||||
|
user_pref("browser.menu.showViewImageInfo", true);
|
||||||
|
user_pref("findbar.highlightAll", true);
|
||||||
|
user_pref("layout.word_select.eat_space_to_next_word", false);
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* START: MY OVERRIDES *
|
||||||
|
****************************************************************************/
|
||||||
|
// visit https://github.com/yokoffing/Betterfox/wiki/Common-Overrides
|
||||||
|
// visit https://github.com/yokoffing/Betterfox/wiki/Optional-Hardening
|
||||||
|
// Enter your personal overrides below this line:
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* SECTION: SMOOTHFOX *
|
||||||
|
****************************************************************************/
|
||||||
|
// visit https://github.com/yokoffing/Betterfox/blob/main/Smoothfox.js
|
||||||
|
// Enter your scrolling overrides below this line:
|
||||||
|
|
||||||
|
/****************************************************************************
|
||||||
|
* END: BETTERFOX *
|
||||||
|
****************************************************************************/
|
|
@ -7,6 +7,7 @@ inputs: let
|
||||||
anyrunModule = inputs.anyrun.homeManagerModules.default;
|
anyrunModule = inputs.anyrun.homeManagerModules.default;
|
||||||
agsModule = inputs.ags.homeManagerModules.default;
|
agsModule = inputs.ags.homeManagerModules.default;
|
||||||
atticModule = inputs.attic.nixosModules.atticd;
|
atticModule = inputs.attic.nixosModules.atticd;
|
||||||
|
nurModule = inputs.nur.nixosModules.nur;
|
||||||
inherit (inputs.nixpkgs.lib) nixosSystem;
|
inherit (inputs.nixpkgs.lib) nixosSystem;
|
||||||
in {
|
in {
|
||||||
tsuki = nixosSystem {
|
tsuki = nixosSystem {
|
||||||
|
@ -17,6 +18,7 @@ in {
|
||||||
sopsModule
|
sopsModule
|
||||||
hmModule
|
hmModule
|
||||||
atticModule
|
atticModule
|
||||||
|
nurModule
|
||||||
{
|
{
|
||||||
home-manager = {
|
home-manager = {
|
||||||
useGlobalPkgs = true;
|
useGlobalPkgs = true;
|
||||||
|
|
27
hosts/haru/services/adguardhome/adguardhome.nix
Normal file
27
hosts/haru/services/adguardhome/adguardhome.nix
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
_: {
|
||||||
|
imports = [
|
||||||
|
./filters.nix
|
||||||
|
./rewrites.nix
|
||||||
|
];
|
||||||
|
networking.firewall.allowedTCPPorts = [53 443 80 3000];
|
||||||
|
networking.firewall.allowedUDPPorts = [53];
|
||||||
|
services.adguardhome = {
|
||||||
|
enable = true;
|
||||||
|
openFirewall = true;
|
||||||
|
mutableSettings = true;
|
||||||
|
settings = {
|
||||||
|
bind_port = 3000;
|
||||||
|
bind_host = "0.0.0.0";
|
||||||
|
statistics = {
|
||||||
|
enabled = true;
|
||||||
|
ignored = [
|
||||||
|
"youporn.com"
|
||||||
|
"pornhub.com"
|
||||||
|
"xvideos.com"
|
||||||
|
"onlyfans.com"
|
||||||
|
"fansly.com"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
170
hosts/haru/services/adguardhome/filters.nix
Normal file
170
hosts/haru/services/adguardhome/filters.nix
Normal file
|
@ -0,0 +1,170 @@
|
||||||
|
_: {
|
||||||
|
services.adguardhome.settings = {
|
||||||
|
filters = [
|
||||||
|
{
|
||||||
|
name = "blocklistproject";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://blocklistproject.github.io/Lists/ads.txt";
|
||||||
|
id = 1;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "StevenBlack";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts";
|
||||||
|
id = 2;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "adaway";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://adaway.org/hosts.txt";
|
||||||
|
id = 3;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/AdguardDNS.txt";
|
||||||
|
id = 4;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/Admiral.txt";
|
||||||
|
id = 5;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "anudeepND";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/anudeepND/blacklist/master/adservers.txt";
|
||||||
|
id = 6;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "simple_ad";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt";
|
||||||
|
id = 7;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/Easylist.txt";
|
||||||
|
id = 8;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "pgl.yoyo.org";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext";
|
||||||
|
id = 9;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "UncheckyAds";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/UncheckyAds/hosts";
|
||||||
|
id = 10;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "bigdargon";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/bigdargon/hostsVN/master/hosts";
|
||||||
|
id = 11;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/Easyprivacy.txt";
|
||||||
|
id = 12;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/Prigent-Ads.txt";
|
||||||
|
id = 13;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "FadeMind";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts";
|
||||||
|
id = 14;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "crazy-max";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt";
|
||||||
|
id = 15;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "hostfiles.frogeye.fr";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://hostfiles.frogeye.fr/firstparty-trackers-hosts.txt";
|
||||||
|
id = 16;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "DandelionSprout";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/DandelionSprout/adfilt/master/Alternate%20versions%20Anti-Malware%20List/AntiMalwareHosts.txt";
|
||||||
|
id = 17;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "osint.digitalside.it";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://osint.digitalside.it/Threat-Intel/lists/latestdomains.txt";
|
||||||
|
id = 18;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "simple_malvertising";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://s3.amazonaws.com/lists.disconnect.me/simple_malvertising.txt";
|
||||||
|
id = 19;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/Prigent-Crypto.txt";
|
||||||
|
id = 20;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "FadeMind";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Risk/hosts";
|
||||||
|
id = 21;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/RPiList-Phishing.txt";
|
||||||
|
id = 22;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "v.fire.blog";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://v.firebog.net/hosts/RPiList-Malware.txt";
|
||||||
|
id = 23;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "zerodot1.gitlab.io";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://zerodot1.gitlab.io/CoinBlockerLists/hosts_browser";
|
||||||
|
id = 24;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "StevenBlack";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts";
|
||||||
|
id = 25;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
whitelist_filters = [
|
||||||
|
{
|
||||||
|
name = "whitelist";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/anudeepND/whitelist/master/domains/whitelist.txt";
|
||||||
|
id = 1;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "whitelist - optionals";
|
||||||
|
enabled = true;
|
||||||
|
url = "https://raw.githubusercontent.com/anudeepND/whitelist/master/domains/optional-list.txt";
|
||||||
|
id = 1;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
74
hosts/haru/services/adguardhome/rewrites.nix
Normal file
74
hosts/haru/services/adguardhome/rewrites.nix
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
_: {
|
||||||
|
services.adguardhome.settings = {
|
||||||
|
dns.rewrites = [
|
||||||
|
{
|
||||||
|
domain = "adguardhome.internal.flake.sh";
|
||||||
|
answer = "192.168.1.103";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "dashboard.internal.flake.sh";
|
||||||
|
answer = "192.168.1.98";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "truenas.internal.flake.sh";
|
||||||
|
answer = "192.168.1.199";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "assistant.internal.flake.sh";
|
||||||
|
answer = "192.168.1.189";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "udm.internal.flake.s";
|
||||||
|
answer = "192.168.1.1";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "pve.internal.flake.sh";
|
||||||
|
answer = "192.168.1.37";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "pbs.internal.flake.sh";
|
||||||
|
answer = "192.168.1.38";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "jellyfin.internal.flake.sh";
|
||||||
|
answer = "192.168.1.98";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "jellyseerr.internal.flake.sh";
|
||||||
|
answer = "192.168.1.98";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "sonarr.internal.flake.sh";
|
||||||
|
answer = "192.168.1.54";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "radarr.internal.flake.sh";
|
||||||
|
answer = "192.168.1.54";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "whisparr.internal.flake.sh";
|
||||||
|
answer = "192.168.1.54";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "prowlarr.internal.flake.sh";
|
||||||
|
answer = "192.168.1.54";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "stash.internal.flake.sh";
|
||||||
|
answer = "192.168.1.98";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "nextcloud.internal.flake.sh";
|
||||||
|
answer = "192.168.1.199";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "wallos.internal.flake.sh";
|
||||||
|
answer = "192.168.1.98";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
domain = "synology.internal.flake.sh";
|
||||||
|
answer = "192.168.1.71";
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
|
@ -1,138 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
networking.firewall.allowedTCPPorts = [53 4000];
|
|
||||||
networking.firewall.allowedUDPPorts = [53];
|
|
||||||
|
|
||||||
environment.systemPackages = [pkgs.blocky];
|
|
||||||
|
|
||||||
services.blocky = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
connectIPVersion = "v4";
|
|
||||||
upstreamTimeout = "30s";
|
|
||||||
startVerifyUpstream = false;
|
|
||||||
minTlsServeVersion = "1.2";
|
|
||||||
log = {
|
|
||||||
level = "debug";
|
|
||||||
privacy = true;
|
|
||||||
};
|
|
||||||
ports = {
|
|
||||||
dns = 53;
|
|
||||||
http = 4000;
|
|
||||||
https = 443;
|
|
||||||
};
|
|
||||||
upstream.default = [
|
|
||||||
"1.1.1.1"
|
|
||||||
"1.0.0.1"
|
|
||||||
"9.9.9.9"
|
|
||||||
"https://1.1.1.1/dns-query"
|
|
||||||
"https://dns.quad9.net/dns-query"
|
|
||||||
"https://dns-unfiltered.adguard.com/dns-query"
|
|
||||||
];
|
|
||||||
blocking = {
|
|
||||||
loading = {
|
|
||||||
strategy = "fast";
|
|
||||||
concurrency = 8;
|
|
||||||
};
|
|
||||||
blackLists = {
|
|
||||||
ads = [
|
|
||||||
"https://blocklistproject.github.io/Lists/ads.txt"
|
|
||||||
"https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts"
|
|
||||||
"https://adaway.org/hosts.txt"
|
|
||||||
"https://v.firebog.net/hosts/AdguardDNS.txt"
|
|
||||||
"https://v.firebog.net/hosts/Admiral.txt"
|
|
||||||
"https://raw.githubusercontent.com/anudeepND/blacklist/master/adservers.txt"
|
|
||||||
"https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt"
|
|
||||||
"https://v.firebog.net/hosts/Easylist.txt"
|
|
||||||
"https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext"
|
|
||||||
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/UncheckyAds/hosts"
|
|
||||||
"https://raw.githubusercontent.com/bigdargon/hostsVN/master/hosts"
|
|
||||||
];
|
|
||||||
tracking = [
|
|
||||||
"https://v.firebog.net/hosts/Easyprivacy.txt"
|
|
||||||
"https://v.firebog.net/hosts/Prigent-Ads.txt"
|
|
||||||
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts"
|
|
||||||
"https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt"
|
|
||||||
"https://hostfiles.frogeye.fr/firstparty-trackers-hosts.txt"
|
|
||||||
];
|
|
||||||
malicious = [
|
|
||||||
"https://raw.githubusercontent.com/DandelionSprout/adfilt/master/Alternate%20versions%20Anti-Malware%20List/AntiMalwareHosts.txt"
|
|
||||||
"https://osint.digitalside.it/Threat-Intel/lists/latestdomains.txt"
|
|
||||||
"https://s3.amazonaws.com/lists.disconnect.me/simple_malvertising.txt"
|
|
||||||
"https://v.firebog.net/hosts/Prigent-Crypto.txt"
|
|
||||||
"https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Risk/hosts"
|
|
||||||
"https://v.firebog.net/hosts/RPiList-Phishing.txt"
|
|
||||||
"https://v.firebog.net/hosts/RPiList-Malware.txt"
|
|
||||||
];
|
|
||||||
misc = [
|
|
||||||
"https://zerodot1.gitlab.io/CoinBlockerLists/hosts_browser"
|
|
||||||
"https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-only/hosts"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
whiteLists = {
|
|
||||||
default = [
|
|
||||||
"https://raw.githubusercontent.com/anudeepND/whitelist/master/domains/whitelist.txt"
|
|
||||||
"https://raw.githubusercontent.com/anudeepND/whitelist/master/domains/optional-list.txt"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
clientGroupsBlock = {
|
|
||||||
default = [
|
|
||||||
"ads"
|
|
||||||
"tracking"
|
|
||||||
"malicious"
|
|
||||||
"misc"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
customDNS = {
|
|
||||||
customTTL = "1h";
|
|
||||||
mapping = {
|
|
||||||
# infra
|
|
||||||
|
|
||||||
"truenas.internal.flake.sh" = "192.168.1.199";
|
|
||||||
"assistant.internal.flake.sh" = "192.168.1.189";
|
|
||||||
"dashboard.internal.flake.sh" = "192.168.1.98";
|
|
||||||
"udm.internal.flake.sh" = "192.168.1.1";
|
|
||||||
"pve.internal.flake.sh" = "192.168.1.37";
|
|
||||||
"pbs.internal.flake.sh" = "192.168.1.38";
|
|
||||||
|
|
||||||
# media
|
|
||||||
|
|
||||||
"jellyfin.internal.flake.sh" = "192.168.1.98";
|
|
||||||
"jellyseerr.internal.flake.sh" = "192.168.1.98";
|
|
||||||
"sonarr.internal.flake.sh" = "192.168.1.54";
|
|
||||||
"radarr.internal.flake.sh" = "192.168.1.54";
|
|
||||||
"readarr.internal.flake.sh" = "192.168.1.54";
|
|
||||||
"whisparr.internal.flake.sh" = "192.168.1.54";
|
|
||||||
"prowlarr.internal.flake.sh" = "192.168.1.54";
|
|
||||||
"stash.internal.flake.sh" = "192.168.1.98";
|
|
||||||
"nextcloud.internal.flake.sh" = "192.168.1.199";
|
|
||||||
|
|
||||||
# misc
|
|
||||||
|
|
||||||
"wallos.internal.flake.sh" = "192.168.1.98";
|
|
||||||
"synology.internal.flake.sh" = "192.168.1.71";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
redis = {
|
|
||||||
address = "100.94.214.100:6381";
|
|
||||||
password = "blocky";
|
|
||||||
database = 2;
|
|
||||||
required = false;
|
|
||||||
connectionAttempts = 10;
|
|
||||||
connectionCooldown = "5s";
|
|
||||||
};
|
|
||||||
caching = {
|
|
||||||
minTime = "2h";
|
|
||||||
maxTime = "12h";
|
|
||||||
maxItemsCount = 0;
|
|
||||||
prefetching = true;
|
|
||||||
prefetchExpires = "2h";
|
|
||||||
prefetchThreshold = 5;
|
|
||||||
};
|
|
||||||
prometheus = {
|
|
||||||
enable = true;
|
|
||||||
path = "/metrics";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,5 +1,5 @@
|
||||||
_: {
|
_: {
|
||||||
imports = [
|
imports = [
|
||||||
./blocky.nix
|
./adguardhome/adguardhome.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
}: {
|
}: {
|
||||||
imports = [
|
imports = [
|
||||||
../../home
|
../../home
|
||||||
|
../../home/firefox
|
||||||
../../home/ags
|
../../home/ags
|
||||||
../../home/anyrun
|
../../home/anyrun
|
||||||
../../home/cava
|
../../home/cava
|
||||||
|
@ -25,7 +26,6 @@
|
||||||
username = "notoh";
|
username = "notoh";
|
||||||
homeDirectory = "/home/notoh";
|
homeDirectory = "/home/notoh";
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
floorp
|
|
||||||
chromium
|
chromium
|
||||||
discord
|
discord
|
||||||
cinny-desktop
|
cinny-desktop
|
||||||
|
@ -127,23 +127,4 @@
|
||||||
IdentityFile ~/.ssh/notohh-git
|
IdentityFile ~/.ssh/notohh-git
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
xdg.mimeApps = {
|
|
||||||
enable = true;
|
|
||||||
defaultApplications = {
|
|
||||||
"x-scheme-handler/discord-409416265891971072" = ["discord-409416265891971072.desktop"];
|
|
||||||
"x-scheme-handler/discord-402572971681644545" = ["discord-402572971681644545.desktop"];
|
|
||||||
"x-scheme-handler/discord-696343075731144724" = ["discord-696343075731144724.desktop"];
|
|
||||||
"x-scheme-handler/http" = ["floorp.desktop"];
|
|
||||||
"x-scheme-handler/https" = ["floorp.desktop"];
|
|
||||||
"x-scheme-handler/chrome" = ["floorp.desktop"];
|
|
||||||
"text/html" = ["floorp.desktop"];
|
|
||||||
"application/x-extension-htm" = ["floorp.desktop"];
|
|
||||||
"application/x-extension-html" = ["floorp.desktop"];
|
|
||||||
"application/x-extension-shtml" = ["floorp.desktop"];
|
|
||||||
"application/xhtml+xml" = ["floorp.desktop"];
|
|
||||||
"application/x-extension-xhtml" = ["floorp.desktop"];
|
|
||||||
"application/x-extension-xht" = ["floorp.desktop"];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
{
|
{
|
||||||
lib,
|
lib,
|
||||||
pkgs,
|
pkgs,
|
||||||
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
nixpkgs = {
|
nixpkgs = {
|
||||||
|
overlays = [inputs.nur.overlay];
|
||||||
config = {
|
config = {
|
||||||
allowUnfree = true;
|
allowUnfree = true;
|
||||||
permittedInsecurePackages = lib.optional (pkgs.obsidian.version == "1.5.3") "electron-25.9.0";
|
permittedInsecurePackages = lib.optional (pkgs.obsidian.version == "1.5.3") "electron-25.9.0";
|
||||||
|
|
Loading…
Reference in a new issue