Compare commits

...

6 commits

Author SHA1 Message Date
chayleaf 7d8ddb4e4e
tmp 2024-03-19 15:30:38 +07:00
chayleaf 9780a25072
change update script for ci branch 2024-03-19 15:05:59 +07:00
chayleaf 95fbc86d37
impermanence: fix /var/lib/private permissions 2024-02-27 16:55:11 +07:00
chayleaf 710de6ac83
home/firefox: make more settings declarative 2024-02-06 14:59:06 +07:00
chayleaf 7eb2ffd0a0
gpg-agent: fix pinentry
for some reason I started getting the following error without this fix:
sign_and_send_pubkey: signing failed for ED25519 ... from agent: agent
refused operation
2024-02-06 14:31:23 +07:00
chayleaf bef5b3f86d
router: misc dnat changes 2024-02-01 07:33:12 +07:00
11 changed files with 203 additions and 120 deletions

View file

@ -94,11 +94,11 @@
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1668681692,
"narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=",
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "009399224d5e398d03b22badca40a37ac85412a1",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
@ -112,11 +112,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1704982712,
"narHash": "sha256-2Ptt+9h8dczgle2Oo6z5ni5rt/uLMG47UFTR1ry/wgg=",
"lastModified": 1709336216,
"narHash": "sha256-Dt/wOWeW6Sqm11Yh+2+t0dfEWxoMxGBvv3JpIocFl9E=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "07f6395285469419cf9d078f59b5b49993198c00",
"rev": "f7b3c975cf067e56e7cda6cb098ebe3fb4d74ca2",
"type": "github"
},
"original": {
@ -127,14 +127,14 @@
},
"flake-utils": {
"inputs": {
"systems": "systems"
"systems": "systems_2"
},
"locked": {
"lastModified": 1681202837,
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
"lastModified": 1705309234,
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "cfacdce06f30d2b68473a46042957675eebb3401",
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
"type": "github"
},
"original": {
@ -150,26 +150,27 @@
]
},
"locked": {
"lastModified": 1706473109,
"narHash": "sha256-iyuAvpKTsq2u23Cr07RcV5XlfKExrG8gRpF75hf1uVc=",
"owner": "nix-community",
"lastModified": 1707205587,
"narHash": "sha256-WzAIbYbflluERLdPC/5epdodjQbR5WiduYS3BjIiGis=",
"owner": "chayleaf",
"repo": "home-manager",
"rev": "d634c3abafa454551f2083b054cd95c3f287be61",
"rev": "acc7c52f80f1aa33239272d786a6e9ba2ffef9f5",
"type": "github"
},
"original": {
"owner": "nix-community",
"owner": "chayleaf",
"ref": "librewolf",
"repo": "home-manager",
"type": "github"
}
},
"impermanence": {
"locked": {
"lastModified": 1703656108,
"narHash": "sha256-hCSUqdFJKHHbER8Cenf5JRzjMlBjIdwdftGQsO0xoJs=",
"lastModified": 1708968331,
"narHash": "sha256-VUXLaPusCBvwM3zhGbRIJVeYluh2uWuqtj4WirQ1L9Y=",
"owner": "nix-community",
"repo": "impermanence",
"rev": "033643a45a4a920660ef91caa391fbffb14da466",
"rev": "a33ef102a02ce77d3e39c25197664b7a636f9c30",
"type": "github"
},
"original": {
@ -203,11 +204,11 @@
]
},
"locked": {
"lastModified": 1706482802,
"narHash": "sha256-KXwKTfqFkoPpV8QqaVlpmO8w8rD/jHZL2315RL5QQ8w=",
"lastModified": 1710810847,
"narHash": "sha256-l1DacjuZny7i7YRbxIsa6DhXWoKJZEnM3Em8gt6Fsfk=",
"owner": "fufexan",
"repo": "nix-gaming",
"rev": "8f354ef64cd18898b8980ecf7fe90118808b514b",
"rev": "03d036f41beaa8c31b2b2261918d248f5c4d45c8",
"type": "github"
},
"original": {
@ -223,11 +224,11 @@
]
},
"locked": {
"lastModified": 1706411424,
"narHash": "sha256-BzziJYucEZvdCE985vjPoo3ztWcmUiSQ1wJ2CoT6jCc=",
"lastModified": 1710644923,
"narHash": "sha256-0fjbN5GYYDKPyPay0l8gYoH+tFfNqPPwP5sxxBreeA4=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "c782f2a4f6fc94311ab5ef31df2f1149a1856181",
"rev": "e25efda85e39fcdc845e371971ac4384989c4295",
"type": "github"
},
"original": {
@ -238,11 +239,11 @@
},
"nixos-hardware": {
"locked": {
"lastModified": 1706182238,
"narHash": "sha256-Ti7CerGydU7xyrP/ow85lHsOpf+XMx98kQnPoQCSi1g=",
"lastModified": 1710783728,
"narHash": "sha256-eIsfu3c9JUBgm3cURSKTXLEI9Dlk1azo+MWKZVqrmkc=",
"owner": "NixOS",
"repo": "nixos-hardware",
"rev": "f84eaffc35d1a655e84749228cde19922fcf55f1",
"rev": "1e679b9a9970780cd5d4dfe755a74a8f96d33388",
"type": "github"
},
"original": {
@ -258,20 +259,14 @@
"nixpkgs": [
"nixpkgs"
],
"nixpkgs-23_05": [
"nixpkgs"
],
"nixpkgs-23_11": [
"nixpkgs"
],
"utils": "utils"
},
"locked": {
"lastModified": 1706219574,
"narHash": "sha256-qO+8UErk+bXCq2ybHU4GzXG4Ejk4Tk0rnnTPNyypW4g=",
"lastModified": 1710449465,
"narHash": "sha256-2orO8nfplp6uQJBFqKkj1iyNMC6TysmwbWwbb4osTag=",
"owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver",
"rev": "e47f3719f1db3e0961a4358d4cb234a0acaa7baf",
"rev": "79c8cfcd5873a85559da6201b116fb38b490d030",
"type": "gitlab"
},
"original": {
@ -318,11 +313,11 @@
"nixpkgs-lib": {
"locked": {
"dir": "lib",
"lastModified": 1703961334,
"narHash": "sha256-M1mV/Cq+pgjk0rt6VxoyyD+O8cOUiai8t9Q6Yyq4noY=",
"lastModified": 1709237383,
"narHash": "sha256-cy6ArO4k5qTx+l5o+0mL9f5fa86tYUX3ozE1S+Txlds=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "b0d36bd0a420ecee3bc916c91886caca87c894e9",
"rev": "1536926ef5621b09bba54035ae2bb6d806d72ac8",
"type": "github"
},
"original": {
@ -375,11 +370,11 @@
},
"nur": {
"locked": {
"lastModified": 1706607970,
"narHash": "sha256-q5W32qx3HhozhAT75AerVqOnhgvNrSyFrjAlu4qNYCU=",
"lastModified": 1710833135,
"narHash": "sha256-vtF350PUNgnQpVSy0EPS5uwza8gIFpaIx9dDk14EWI4=",
"owner": "nix-community",
"repo": "NUR",
"rev": "d7e286c21530da5d6da54424d64e15de14f7c07a",
"rev": "cee2a9bfe726df39af812591e8b17e8a2f319bd5",
"type": "github"
},
"original": {
@ -415,11 +410,11 @@
]
},
"locked": {
"lastModified": 1706580650,
"narHash": "sha256-e6q4Pn1dp3NoQJdMYdyNdDHU5IRBW9i3bHSJ3jThEL0=",
"lastModified": 1710814282,
"narHash": "sha256-nWaKhMQackiO0M8504HSx/E7I76C2r0/g4wqZf4hp24=",
"owner": "oxalica",
"repo": "rust-overlay",
"rev": "39e20b3c02caa91c9970beef325a04975d83d77f",
"rev": "8c72f33c23c8e537dd59088c4560222c43eedaca",
"type": "github"
},
"original": {
@ -443,13 +438,31 @@
"type": "github"
}
},
"utils": {
"systems_2": {
"locked": {
"lastModified": 1605370193,
"narHash": "sha256-YyMTf3URDL/otKdKgtoMChu4vfVL3vCMkRqpGifhUn0=",
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"utils": {
"inputs": {
"systems": "systems"
},
"locked": {
"lastModified": 1709126324,
"narHash": "sha256-q6EQdSeUZOG26WelxqkmR7kArjgWCdw5sfJVHPH/7j8=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "5021eac20303a61fafe17224c087f5519baed54d",
"rev": "d465f4819400de7c8d874d50b982301f28a84605",
"type": "github"
},
"original": {

View file

@ -26,7 +26,7 @@
inputs.nixpkgs.follows = "nixpkgs";
};
home-manager = {
url = "github:nix-community/home-manager";
url = "github:chayleaf/home-manager/librewolf";
inputs.nixpkgs.follows = "nixpkgs";
};
nix-gaming = {
@ -48,10 +48,6 @@
nixos-mailserver = {
url = "gitlab:simple-nixos-mailserver/nixos-mailserver";
inputs.nixpkgs.follows = "nixpkgs";
# prevent extra input from being in flake.lock
# (this doesn't affect any behavior)
inputs.nixpkgs-23_05.follows = "nixpkgs";
inputs.nixpkgs-23_11.follows = "nixpkgs";
};
flake-compat = {
url = "github:edolstra/flake-compat";
@ -65,6 +61,7 @@
# it takes the paths for modules from filesystem as opposed to flake inputs
dev = {
# coop-ofd = true;
# home-manager = true;
# mobile-nixos = true;
# nixos-router = true;
# notnft = true;
@ -82,7 +79,8 @@
(name: input:
if dev.${name} or false then
(if input._type or null == "flake"
then (import base-inputs.flake-compat { src = /${devPath}/${name}; }).defaultNix
then let inputs = input.inputs // { self = (import /${devPath}/${name}/flake.nix).outputs inputs; };
in inputs.self
else /${devPath}/${name})
else input)
base-inputs;

View file

@ -5,10 +5,8 @@
}:
{
imports = [
./gui.nix
];
home.file.".mozilla/firefox/profiles.ini".target = ".librewolf/profiles.ini";
imports = [ ./gui.nix ];
programs.firefox = {
enable = true;
package = pkgs.wrapFirefox pkgs.librewolf-unwrapped {
@ -40,20 +38,96 @@
youtube-shorts-block
]) ++ (with pkgs.firefoxAddons; [
fastforwardteam
middle-mouse-button-scroll
rikaitan
youtube-nonstop
]);
settings = lib.mkIf config.phone.enable {
"dom.w3c.touch_events.enabled" = true;
"apz.allow_zooming" = true;
"apz.allow_double_tap_zooming" = true;
"dom.w3c_touch_events.legacy_apis.enabled" = true;
"browser.tabs.inTitlebar" = 1;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.urlbar.clickSelectsAll" = true;
"toolkit.cosmeticAnimations.enabled" = false;
"browser.download.animateNotifications" = false;
search.default = "search.pavluk.org";
search.privateDefault = "search.pavluk.org";
search.force = true;
search.engines."search.pavluk.org" = {
name = "search.pavluk.org";
description = "SearXNG is a metasearch engine that respects your privacy.";
queryCharset = "UTF-8";
searchForm = "https://search.pavluk.org/search";
iconURL = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5Mm1tIiBoZWlnaHQ9IjkybW0iIHZpZXdCb3g9IjAgMCA5MiA5MiI+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTQwLjkyMSAtMTcuNDE3KSI+PGNpcmNsZSBjeD0iNzUuOTIxIiBjeT0iNTMuOTAzIiByPSIzMCIgc3R5bGU9ImZpbGw6bm9uZTtmaWxsLW9wYWNpdHk6MTtzdHJva2U6IzMwNTBmZjtzdHJva2Utd2lkdGg6MTA7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIvPjxwYXRoIGQ9Ik02Ny41MTUgMzcuOTE1YTE4IDE4IDAgMCAxIDIxLjA1MSAzLjMxMyAxOCAxOCAwIDAgMSAzLjEzOCAyMS4wNzgiIHN0eWxlPSJmaWxsOm5vbmU7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOiMzMDUwZmY7c3Ryb2tlLXdpZHRoOjU7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIvPjxyZWN0IHdpZHRoPSIxOC44NDYiIGhlaWdodD0iMzkuOTYzIiB4PSIzLjcwNiIgeT0iMTIyLjA5IiByeT0iMCIgc3R5bGU9Im9wYWNpdHk6MTtmaWxsOiMzMDUwZmY7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7c3Ryb2tlLXdpZHRoOjg7c3Ryb2tlLW1pdGVybGltaXQ6NDtzdHJva2UtZGFzaGFycmF5Om5vbmU7c3Ryb2tlLW9wYWNpdHk6MSIgdHJhbnNmb3JtPSJyb3RhdGUoLTQ2LjIzNSkiLz48L2c+PC9zdmc+";
urls = [
{ "params" = [ { "name" = "q"; "value" = "{searchTerms}"; } ];
"rels" = [ "results" ];
"template" = "https://search.pavluk.org/search";
"method" = "POST"; }
{ "params" = [ ];
"rels" = [ "suggestions" ];
"template" = "https://search.pavluk.org/autocompleter?q={searchTerms}";
"type" = "application/x-suggestions+json";
"method" = "POST"; }
];
};
settings = let
langs = [ "ar" "el" "he" "ja" "ko" "th" "x-armn" "x-beng" "x-cans" "x-cyrillic" "x-devanagari"
"x-ethi" "x-geor" "x-gujr" "x-guru" "x-khmr" "x-knda" "x-math" "x-mlym" "x-orya"
"x-sinh" "x-tamil" "x-telu" "x-tibt" "x-unicode" "x-western" "zh-CN" "zh-HK" "zh-TW" ];
genFonts = prefix: func:
lib.genAttrs
(map (lang: "font.name.${prefix}.${lang}") langs)
(s: func (lib.removePrefix "font.name.${prefix}." s));
notoFamilies = {
ar = "Arabic"; x-armn = "Armenian"; x-beng = "Bengali"; x-cans = "Canadian Aboriginal";
ja = "CJK JP"; ko = "CJK KR"; zh-CN = "CJK SC"; zh-HK = "CJK HK"; zh-TW = "CJK TC";
/* cyrillic = "Cyrillic"; */ x-devanagari = "Devanagari"; /* el = "Greek"; */
x-ethi = "Ethiopic"; x-geor = "Georgian"; x-gujr = "Gujarati"; x-guru = "Gurmukhi";
he = "Hebrew"; x-khmr = "Khmer"; x-knda = "Kannada"; x-math = "Math"; x-mlym = "Malayalam";
x-orya = "Oriya"; x-sinh = "Sinhala"; x-tamil = "Tamil"; x-telu = "Telugu"; th = "Thai";
x-tibt = "Tibetan"; /* x-unicode = "Other Writing Systems"; x-western = "Latin"; */
};
in genFonts "monospace" (_: "Noto Sans Mono")
// genFonts "sans-serif" (lang: if notoFamilies?${lang} then "Noto Sans ${notoFamilies.${lang}}" else "Noto Sans")
// genFonts "serif" (lang: if notoFamilies?${lang} then "Noto Serif ${notoFamilies.${lang}}" else "Noto Serif")
// {
"font.name.monospace.ja" = "Noto Sans Mono CJK JP";
"font.name.monospace.ko" = "Noto Sans Mono CJK KR";
"font.name.monospace.zh-CN" = "Noto Sans Mono CJK SC";
"font.name.monospace.zh-HK" = "Noto Sans Mono CJK HK";
"font.name.monospace.zh-TW" = "Noto Sans Mono CJK TC";
"font.name.serif.ar" = "Noto Sans Arabic";
"font.name.serif.x-cans" = "Noto Sans Canadian Aboriginal";
"font.name.serif.x-math" = "Noto Sans Math";
"font.name.serif.x-orya" = "Noto Sans Oriya";
# user-facing tweaks
"browser.quitShortcut.disabled" = true;
"browser.search.suggest.enabled" = true;
"general.autoScroll" = true;
"middlemouse.paste" = false;
"spellchecker.dictionary_path" = pkgs.symlinkJoin {
name = "firefox-hunspell-dicts";
paths = with pkgs.hunspellDicts; [ en-us-large ru-ru ];
};
"widget.content.allow-gtk-dark-theme" = true;
# user agent and overall behavioral tweaks
"gfx.webrender.all" = true;
"general.useragent.compatMode.firefox" = true;
"image.jxl.enabled" = true;
"noscript.sync.enabled" = true;
"privacy.donottrackheader.enabled" = true;
"webgl.disabled" = false;
"xpinstall.signatures.required" = false;
# privacy tweaks
"browser.contentblocking.category" = "strict";
"intl.accept_languages" = "en-US, en";
"javascript.use_us_english_locale" = true;
"privacy.clearOnShutdown.cache" = false;
"privacy.clearOnShutdown.cookies" = false;
"privacy.clearOnShutdown.downloads" = false;
"privacy.clearOnShutdown.formdata" = false;
"privacy.clearOnShutdown.history" = false;
"privacy.clearOnShutdown.offlineApps" = false;
"privacy.clearOnShutdown.sessions" = false;
"privacy.fingerprintingProtection" = true;
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.emailtracking.enabled" = true;
"privacy.trackingprotection.socialtracking.enabled" = true;
};
}
(let
@ -69,6 +143,18 @@
userContent =
concatFiles "${pkgs.mobile-config-firefox}/etc/mobile-config-firefox/common"
+ concatFiles "${pkgs.mobile-config-firefox}/etc/mobile-config-firefox/userContent";
settings = {
"dom.w3c.touch_events.enabled" = true;
"apz.allow_zooming" = true;
"apz.allow_double_tap_zooming" = true;
"dom.w3c_touch_events.legacy_apis.enabled" = true;
"browser.tabs.inTitlebar" = 1;
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
"browser.urlbar.clickSelectsAll" = true;
"toolkit.cosmeticAnimations.enabled" = false;
"browser.download.animateNotifications" = false;
};
})
];
};

View file

@ -17,6 +17,7 @@
enableSshSupport = true;
maxCacheTtl = 72000;
maxCacheTtlSsh = 72000;
pinentryFlavor = "tty";
};
home.shellAliases = {
s = "sudo -A";

View file

@ -22,24 +22,24 @@
"pinned": false,
"src": {
"name": null,
"sha256": "sha256-5fEYhazqXcMENjp+37IcF5U81vZ9bPDkS0siUVi9mdg=",
"sha256": "sha256-wCIffeayOy3kEwmIKB7e+NrliuSpKXoVYC334fxVB3U=",
"type": "url",
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-27/GE-Proton8-27.tar.gz"
"url": "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-1/GE-Proton9-1.tar.gz"
},
"version": "GE-Proton8-27"
"version": "GE-Proton9-1"
},
"searxng": {
"cargoLocks": null,
"date": "2024-01-25",
"date": "2024-03-15",
"extract": null,
"name": "searxng",
"passthru": null,
"pinned": false,
"src": {
"sha256": "sha256-QW1xC6RsHpn5P/QHjyc3O24tSmLvRCVIJwNqPyp1DV0=",
"sha256": "sha256-BqVnp/lByAMr/LOCGkuXCYsomu9hRBGXK3DbBQX10TA=",
"type": "tarball",
"url": "https://github.com/searxng/searxng/archive/8c73aa772b7d4446f77be82d8f9d9eef1e348deb.tar.gz"
"url": "https://github.com/searxng/searxng/archive/e2af3e49702f6fb40e1614f826544dc3b03bca2f.tar.gz"
},
"version": "8c73aa772b7d4446f77be82d8f9d9eef1e348deb"
"version": "e2af3e49702f6fb40e1614f826544dc3b03bca2f"
}
}

View file

@ -12,19 +12,19 @@
};
proton-ge = {
pname = "proton-ge";
version = "GE-Proton8-27";
version = "GE-Proton9-1";
src = fetchurl {
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton8-27/GE-Proton8-27.tar.gz";
sha256 = "sha256-5fEYhazqXcMENjp+37IcF5U81vZ9bPDkS0siUVi9mdg=";
url = "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/GE-Proton9-1/GE-Proton9-1.tar.gz";
sha256 = "sha256-wCIffeayOy3kEwmIKB7e+NrliuSpKXoVYC334fxVB3U=";
};
};
searxng = {
pname = "searxng";
version = "8c73aa772b7d4446f77be82d8f9d9eef1e348deb";
version = "e2af3e49702f6fb40e1614f826544dc3b03bca2f";
src = fetchTarball {
url = "https://github.com/searxng/searxng/archive/8c73aa772b7d4446f77be82d8f9d9eef1e348deb.tar.gz";
sha256 = "sha256-QW1xC6RsHpn5P/QHjyc3O24tSmLvRCVIJwNqPyp1DV0=";
url = "https://github.com/searxng/searxng/archive/e2af3e49702f6fb40e1614f826544dc3b03bca2f.tar.gz";
sha256 = "sha256-BqVnp/lByAMr/LOCGkuXCYsomu9hRBGXK3DbBQX10TA=";
};
date = "2024-01-25";
date = "2024-03-15";
};
}

View file

@ -1,6 +1,5 @@
[
{ "slug": "fastforwardteam" },
{ "slug": "middle-mouse-button-scroll" },
{ "slug": "rikaitan" },
{ "slug": "youtube-nonstop" }
]

View file

@ -17,30 +17,16 @@
"tabs"
"declarativeNetRequestWithHostAccess"
"<all_urls>"
];
];
platforms = platforms.all;
};
};
"middle-mouse-button-scroll" = buildFirefoxXpiAddon {
pname = "middle-mouse-button-scroll";
version = "0.3.2";
addonId = "{b687f6ef-3299-4a75-8279-8b1c30dfcc9d}";
url = "https://addons.mozilla.org/firefox/downloads/file/3505309/middle_mouse_button_scroll-0.3.2.xpi";
sha256 = "d21d29b29a7bd3fae5407d995737c4c41d66daf73729b88ad39d149223362412";
meta = with lib;
{
homepage = "https://github.com/StoyanDimitrov/middle-mouse-button-scroll";
description = "Scroll fast or precise through long documents with pressed middle mouse button";
mozPermissions = [ "*://*/*" ];
platforms = platforms.all;
};
};
};
"rikaitan" = buildFirefoxXpiAddon {
pname = "rikaitan";
version = "24.1.22.0";
version = "24.3.7.1";
addonId = "tatsu@autistici.org";
url = "https://addons.mozilla.org/firefox/downloads/file/4224979/rikaitan-24.1.22.0.xpi";
sha256 = "7df217a68077d45b9f41fe0170193c9224abc2a543c121429ebef4e7e857b0df";
url = "https://addons.mozilla.org/firefox/downloads/file/4246908/rikaitan-24.3.7.1.xpi";
sha256 = "db849343b029b2f1b510cc66032157502e3fe9e6168072d27e8aad9867b6ec17";
meta = with lib;
{
homepage = "https://github.com/Ajatt-Tools/rikaitan";
@ -55,10 +41,10 @@
"http://*/*"
"https://*/*"
"file://*/*"
];
];
platforms = platforms.all;
};
};
};
"youtube-nonstop" = buildFirefoxXpiAddon {
pname = "youtube-nonstop";
version = "0.9.2";
@ -73,8 +59,8 @@
mozPermissions = [
"https://www.youtube.com/*"
"https://music.youtube.com/*"
];
];
platforms = platforms.all;
};
};
}
};
}

View file

@ -749,7 +749,7 @@ in {
# SSH
[(is.eq meta.l4proto (f: f.tcp)) (is.eq tcp.dport 23) accept]
# wg1
[(is.eq meta.l4proto (f: f.udp)) (is.eq udp.dport 854) accept]
[(is.eq meta.l4proto (f: with f; set [ udp tcp ])) (is.eq th.dport (set [ 854 855 ])) accept]
];
};
};
@ -935,7 +935,7 @@ in {
socketNamespace = "wan";
peers = lib.flip lib.imap0 cfg.wgPubkeys (i: publicKey: {
inherit publicKey;
allowedIPs = [ "${addToIp parsedAddr4 (1 + i)}/32" "${addToIp parsedAddr6 (2 + i)}/128" ];
allowedIPs = [ "${addToIp parsedAddr4 (1 + i)}/32" "${addToIp parsedAddr6 (1 + i)}/128" ];
presharedKeyFile = "/secrets/wg1/wg_psk${toString i}";
});
};
@ -948,6 +948,6 @@ in {
{ directory = /secrets; mode = "0000"; }
# my custom impermanence module doesnt detect it
{ directory = /var/db/dhcpcd; mode = "0755"; }
{ directory = /var/lib/private/kea; mode = "0750"; }
{ directory = /var/lib/private/kea; mode = "0750"; parentDirectory.mode = "0700"; }
];
}

View file

@ -70,14 +70,14 @@ in {
] ++ lib.optionals config.services.akkoma.enable [
{ directory = /var/lib/akkoma; user = "akkoma"; group = "akkoma"; mode = "0700"; }
] ++ lib.optionals config.services.botamusique.enable [
{ directory = /var/lib/private/botamusique; user = "root"; group = "root"; mode = "0750"; }
{ directory = /var/lib/private/botamusique; user = "root"; group = "root"; mode = "0750"; parentDirectory.mode = "0700"; }
] ++ lib.optionals config.programs.ccache.enable [
{ directory = config.programs.ccache.cacheDir; user = "root"; group = "nixbld"; mode = "0770"; }
{ directory = /var/cache/sccache; user = "root"; group = "nixbld"; mode = "0770"; }
] ++ lib.optionals config.services.certspotter.enable [
{ directory = /var/lib/certspotter; user = "certspotter"; group = "certspotter"; mode = "0755"; }
] ++ lib.optionals (config.services.coop-ofd.enable or false) [
{ directory = /var/lib/private/coop-ofd; mode = "0750"; }
{ directory = /var/lib/private/coop-ofd; mode = "0750"; parentDirectory.mode = "0700"; }
] ++ lib.optionals config.services.dovecot2.enable [
{ directory = /var/lib/dhparams; user = "root"; group = "root"; mode = "0755"; }
{ directory = /var/lib/dovecot; user = "root"; group = "root"; mode = "0755"; }

View file

@ -7,9 +7,9 @@ mozilla-addons-to-nix \
./pkgs/firefox-addons/addons.json \
./pkgs/firefox-addons/generated.nix || echo "failed to update firefox addons"
nix flake update
if [ -z ${SUDO_ASKPASS+x} ]; then
sudo nixos-rebuild switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"
else
sudo -A nixos-rebuild switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"
fi
home-manager switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"
#if [ -z ${SUDO_ASKPASS+x} ]; then
# sudo nixos-rebuild switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"
#else
# sudo -A nixos-rebuild switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"
#fi
#home-manager switch --flake . --option extra-builtins-file "$(pwd)/extra-builtins.nix"