Merge branch 'master' of ssh://ssh.nx2.site:50022/nx2/dotfiles

This commit is contained in:
Lennart J. Kurzweg (Nx2)
2025-10-04 12:29:02 +02:00
23 changed files with 258 additions and 131 deletions

View File

@@ -1,13 +1,13 @@
{ {
"base": { "base": {
"foreground": "#fefefe", "foreground": "#fee5cc",
"background": "#020202" "background": "#190c00"
}, },
"to_alter": { "to_alter": {
"accent": "#aaaaff", "accent": "#fc9835",
"secondary": "#aaeeff", "secondary": "#fc3535",
"tertiary": "#aaffaa", "tertiary": "#e64b73",
"special": "#aaffaa", "special": "#3499fc",
"weird": "#ffffaa" "weird": "#56fc34"
} }
} }

View File

@@ -7,10 +7,24 @@ pkgs: rec {
gap-size = 5; gap-size = 5;
border-width = 2; border-width = 2;
color = let color = let
dark = (-0.5); dark = (-0.4);
bright = (0.5); darker = (-0.6);
alter-set = let f = lib.alter-luminace-hex; in color-name: color-value: { base = color-value; dark = f color-value dark; bright = f color-value bright; }; bright = 0.4;
alter = let f = lib.alter-luminace-hex; in color-value: { base = color-value; dark = f color-value dark; bright = f color-value bright; }; brighter = 0.7;
alter-set = let f = lib.alter-luminace-hex; in color-name: color-value: {
base = color-value;
dark = f color-value dark;
darker = f color-value darker;
bright = f color-value bright;
brighter = f color-value brighter;
};
alter = let f = lib.alter-luminace-hex; in color-value: {
base = color-value;
dark = f color-value dark;
darker = f color-value darker;
bright = f color-value bright;
brighter = f color-value brighter;
};
# ccolor = builtins.mapAttrs alter-set (builtins.fromJSON (builtins.readFile ./colors.json)); # ccolor = builtins.mapAttrs alter-set (builtins.fromJSON (builtins.readFile ./colors.json));
ccolor = builtins.mapAttrs alter-set { ccolor = builtins.mapAttrs alter-set {
black = "#040404"; # "#111111" "#001100"; black = "#040404"; # "#111111" "#001100";
@@ -33,6 +47,7 @@ pkgs: rec {
# tertiary = magenta; # tertiary = magenta;
# special = yellow; # special = yellow;
# weird = green; # weird = green;
subtle = { darker = "#111111"; dark = "#444444"; base = "#777777"; bright = "#999999"; brighter = "#cccccc"; };
positive = alter "#00dd00"; positive = alter "#00dd00";
negative = alter "#dd0000"; negative = alter "#dd0000";
border = accent.base; border = accent.base;

128
flake.lock generated
View File

@@ -20,11 +20,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755946532, "lastModified": 1759499898,
"narHash": "sha256-POePremlUY5GyA1zfbtic6XLxDaQcqHN6l+bIxdT5gc=", "narHash": "sha256-UNzYHLWfkSzLHDep5Ckb5tXc0fdxwPIrT+MY4kpQttM=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "aquamarine", "repo": "aquamarine",
"rev": "81584dae2df6ac79f6b6dae0ecb7705e95129ada", "rev": "655e067f96fd44b3f5685e17f566b0e4d535d798",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -39,11 +39,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1756320983, "lastModified": 1759572648,
"narHash": "sha256-huaJ1CvBsylibf55pjiFEpiKxYU235iAzwMhJ+iDSjw=", "narHash": "sha256-0f1EsUBA64FV14RuNLyo3XDLLgvY+l2X/Bro+T4+AdM=",
"owner": "9001", "owner": "9001",
"repo": "copyparty", "repo": "copyparty",
"rev": "f4f702c39dd2365f6ca43ed6b72a84c708fded8d", "rev": "38cc80982237e862e538a31f49e8c6aae749f014",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -220,11 +220,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1756245065, "lastModified": 1758463745,
"narHash": "sha256-aAZNbGcWrVRZgWgkQbkabSGcDVRDMgON4BipMy69gvI=", "narHash": "sha256-uhzsV0Q0I9j2y/rfweWeGif5AWe0MGrgZ/3TjpDYdGA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "54b2879ce622d44415e727905925e21b8f833a98", "rev": "3b955f5f0a942f9f60cdc9cacb7844335d0f21c3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -279,11 +279,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755678602, "lastModified": 1759490292,
"narHash": "sha256-uEC5O/NIUNs1zmc1aH1+G3GRACbODjk2iS0ET5hXtuk=", "narHash": "sha256-T6iWzDOXp8Wv0KQOCTHpBcmAOdHJ6zc/l9xaztW6Ivc=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprgraphics", "repo": "hyprgraphics",
"rev": "157cc52065a104fc3b8fa542ae648b992421d1c7", "rev": "9431db625cd9bb66ac55525479dce694101d6d7a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -308,11 +308,11 @@
"xdph": "xdph" "xdph": "xdph"
}, },
"locked": { "locked": {
"lastModified": 1756325904, "lastModified": 1759530922,
"narHash": "sha256-PRz3GE4ZBScWrHTVegpM4B2YLZplp1iPwmZ9AeYBbsg=", "narHash": "sha256-IKNfBuBbuofOVHJujnzBGaSydnmlMBRWl9owIZVVk9k=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "378e130f1426648d8d734049800128f9882805bf", "rev": "76d998743ac10e712238c1016db4d8e8d16f1049",
"revCount": 6395, "revCount": 6476,
"submodules": true, "submodules": true,
"type": "git", "type": "git",
"url": "https://github.com/hyprwm/Hyprland" "url": "https://github.com/hyprwm/Hyprland"
@@ -340,11 +340,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1756325158, "lastModified": 1758895089,
"narHash": "sha256-aJ9jAYtZ64MWBpWPfH1q+t6U9b6kJWc2yK9Vrlj6fZY=", "narHash": "sha256-HOIITlSwB5iuVEVLmWNGu8bvI83Y2IbN8SzJQmBDwvg=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-plugins", "repo": "hyprland-plugins",
"rev": "bf843fc6adf90d43a5dd7742e9df61d395ba780d", "rev": "4d940a10aff16b240533c9b6527a14ff91e5e5ae",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -433,11 +433,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1753819801, "lastModified": 1759080228,
"narHash": "sha256-tHe6XeNeVeKapkNM3tcjW4RuD+tB2iwwoogWJOtsqTI=", "narHash": "sha256-RgDoAja0T1hnF0pTc56xPfLfFOO8Utol2iITwYbUhTk=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprland-qtutils", "repo": "hyprland-qtutils",
"rev": "b308a818b9dcaa7ab8ccab891c1b84ebde2152bc", "rev": "629b15c19fa4082e4ce6be09fdb89e8c3312aed7",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -462,11 +462,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1753622892, "lastModified": 1758927902,
"narHash": "sha256-0K+A+gmOI8IklSg5It1nyRNv0kCNL51duwnhUO/B8JA=", "narHash": "sha256-LZgMds7M94+vuMql2bERQ6LiFFdhgsEFezE4Vn+Ys3A=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprlang", "repo": "hyprlang",
"rev": "23f0debd2003f17bd65f851cd3f930cff8a8c809", "rev": "4dafa28d4f79877d67a7d1a654cddccf8ebf15da",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -483,11 +483,11 @@
"systems": "systems_2" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1754887838, "lastModified": 1759033501,
"narHash": "sha256-npC+H+Wl60EdrV75sjqm+bbbLbKgCCGn4ALSM0B2OWA=", "narHash": "sha256-QhcOFLJYC9CiSVPkci62ghMEAJChzl+L98To1pKvnRQ=",
"owner": "KZDKM", "owner": "KZDKM",
"repo": "Hyprspace", "repo": "Hyprspace",
"rev": "2b61fd2115262243b03aa9afe8dfd8a78e71636c", "rev": "e54884da1d6a1af76af9d053887bf3750dd554fd",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -508,11 +508,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1756117388, "lastModified": 1759490926,
"narHash": "sha256-oRDel6pNl/T2tI+nc/USU9ZP9w08dxtl7hiZxa0C/Wc=", "narHash": "sha256-7IbZGJ5qAAfZsGhBHIsP8MBsfuFYS0hsxYHVkkeDG5Q=",
"owner": "hyprwm", "owner": "hyprwm",
"repo": "hyprutils", "repo": "hyprutils",
"rev": "b2ae3204845f5f2f79b4703b441252d8ad2ecfd0", "rev": "94cce794344538c4d865e38682684ec2bbdb2ef3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -576,11 +576,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1755261305, "lastModified": 1759348509,
"narHash": "sha256-EOqCupB5X5WoGVHVcfOZcqy0SbKWNuY3kq+lj1wHdu8=", "narHash": "sha256-at9xMhxMP65JYWlGWYJ412VKbS+tXkTM3f5t9Q8IyMA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "203a7b463f307c60026136dd1191d9001c43457f", "rev": "d96dda76c1f1827634ddf28d386feabd2d135d21",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -607,11 +607,11 @@
}, },
"nixpkgs-latest": { "nixpkgs-latest": {
"locked": { "locked": {
"lastModified": 1756326156, "lastModified": 1759571742,
"narHash": "sha256-EvRCnKAE5oL9wOIT/LrA5+pJVpTvhH71OReJDTOZDyk=", "narHash": "sha256-XnKT7uz8+qWixrdfbADNKK7RXw5qS/C/ODRl2UpgL28=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "636dea4f2cd65b8c558149a957423da47c1cbc95", "rev": "52d84c8433651dec08db86d2a31b4562f026bd6b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -639,11 +639,11 @@
}, },
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1756266583, "lastModified": 1759381078,
"narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", "narHash": "sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", "rev": "7df7ff7d8e00218376575f0acdcc5d66741351ee",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -654,11 +654,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1756266583, "lastModified": 1759381078,
"narHash": "sha256-cr748nSmpfvnhqSXPiCfUPxRz2FJnvf/RjJGvFfaCsM=", "narHash": "sha256-gTrEEp5gEspIcCOx9PD8kMaF1iEmfBcTbO0Jag2QhQs=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "8a6d5427d99ec71c64f0b93d45778c889005d9c2", "rev": "7df7ff7d8e00218376575f0acdcc5d66741351ee",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -686,11 +686,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1754725699, "lastModified": 1759036355,
"narHash": "sha256-iAcj9T/Y+3DBy2J0N+yF9XQQQ8IEb5swLFzs23CdP88=", "narHash": "sha256-0m27AKv6ka+q270dw48KflE0LwQYrO7Fm4/2//KCVWg=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "85dbfc7aaf52ecb755f87e577ddbe6dbbdbc1054", "rev": "e9f00bd893984bc8ce46c895c3bf7cac95331127",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -702,11 +702,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1756217674, "lastModified": 1759439645,
"narHash": "sha256-TH1SfSP523QI7kcPiNtMAEuwZR3Jdz0MCDXPs7TS8uo=", "narHash": "sha256-oiAyQaRilPk525Z5aTtTNWNzSrcdJ7IXM0/PL3CGlbI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "4e7667a90c167f7a81d906e5a75cba4ad8bee620", "rev": "879bd460b3d3e8571354ce172128fbcbac1ed633",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -717,11 +717,11 @@
}, },
"nixpkgs_6": { "nixpkgs_6": {
"locked": { "locked": {
"lastModified": 1752596105, "lastModified": 1756288264,
"narHash": "sha256-lFNVsu/mHLq3q11MuGkMhUUoSXEdQjCHvpReaGP1S2k=", "narHash": "sha256-Om8adB1lfkU7D33VpR+/haZ2gI5r3Q+ZbIPzE5sYnwE=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "dab3a6e781554f965bde3def0aa2fda4eb8f1708", "rev": "ddd1826f294a0ee5fdc198ab72c8306a0ea73aa9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -741,11 +741,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1755960406, "lastModified": 1758108966,
"narHash": "sha256-RF7j6C1TmSTK9tYWO6CdEMtg6XZaUKcvZwOCD2SICZs=", "narHash": "sha256-ytw7ROXaWZ7OfwHrQ9xvjpUWeGVm86pwnEd1QhzawIo=",
"owner": "cachix", "owner": "cachix",
"repo": "git-hooks.nix", "repo": "git-hooks.nix",
"rev": "e891a93b193fcaf2fc8012d890dc7f0befe86ec2", "rev": "54df955a695a84cd47d4a43e08e1feaf90b1fd9b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -826,11 +826,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1752633862, "lastModified": 1756348497,
"narHash": "sha256-Bj7ozT1+5P7NmvDcuAXJvj56txcXuAhk3Vd9FdWFQzk=", "narHash": "sha256-xJp3VnoYh4kpsaKFO/7SsGbwOz7pI1ZmjbqpXEuR2cw=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "8668ca94858206ac3db0860a9dec471de0d995f8", "rev": "0adf92c70d23fb4f703aea5d3ebb51ac65994f7f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -846,11 +846,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1754988908, "lastModified": 1759188042,
"narHash": "sha256-t+voe2961vCgrzPFtZxha0/kmFSHFobzF00sT8p9h0U=", "narHash": "sha256-f9QC2KKiNReZDG2yyKAtDZh0rSK2Xp1wkPzKbHeQVRU=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "3223c7a92724b5d804e9988c6b447a0d09017d48", "rev": "9fcfabe085281dd793589bdc770a2e577a3caa5d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -952,11 +952,11 @@
"rust-overlay": "rust-overlay_2" "rust-overlay": "rust-overlay_2"
}, },
"locked": { "locked": {
"lastModified": 1756309929, "lastModified": 1759502148,
"narHash": "sha256-udly1zNvxR6UKFZSkbutSEZ9EihUd+pPCDBaseppB5s=", "narHash": "sha256-Yncc0FlzzvsZTAtId/usUKNdJR911mpQcR+ZNjabrio=",
"owner": "sxyazi", "owner": "sxyazi",
"repo": "yazi", "repo": "yazi",
"rev": "dd7afaa64aa54fac5bd30404eb44ccd9d68f31c5", "rev": "cd6881c9fe88dfe73d91980829fd371f5eeec242",
"type": "github" "type": "github"
}, },
"original": { "original": {

Binary file not shown.

View File

@@ -27,7 +27,7 @@
"custom/caldav_event" = { "custom/caldav_event" = {
execute = "caldav_event"; execute = "caldav_event";
label = "󰃰 {}"; label = "󰃰 {}";
interval = 1000; interval = 60000;
hideOnEmpty = false; hideOnEmpty = false;
actions = {}; actions = {};
}; };
@@ -51,12 +51,12 @@
# "bluetooth" # "bluetooth"
"network" "network"
"windowtitle" "windowtitle"
"media"
]; ];
"middle" = [ "workspaces" ]; "middle" = [ "workspaces" ];
"right" = [ "right" = [
"submap" "submap"
"custom/caldav_event" "custom/caldav_event"
"media"
"custom/cclock" "custom/cclock"
"notifications" "notifications"
"systray" "systray"

View File

@@ -6,7 +6,7 @@ let
# "asmongold" # "asmongold"
# "Caedrel" # "Caedrel"
# "EintrachtSpandau" # "EintrachtSpandau"
"GamesDoneQuick" # "GamesDoneQuick"
"Odoamne" "Odoamne"
"iwdominate" "iwdominate"
"imls" "imls"
@@ -20,13 +20,13 @@ let
"lol_nemesis" "lol_nemesis"
# "NASA" # "NASA"
"NoWay4u_Sir" "NoWay4u_Sir"
"OfficialMikeShinoda" # "OfficialMikeShinoda"
"Rekkles" "Rekkles"
"riotgames" "riotgames"
"thebausffs" "thebausffs"
"ThePrimeagen" "ThePrimeagen"
"Tolkin" "Tolkin"
# "TSM_ImperialHal" "imperialhal__"
"velja_lol" "velja_lol"
# "Xisuma" # "Xisuma"
"zackrawrr" "zackrawrr"
@@ -46,7 +46,7 @@ let
}; };
}; };
in { in {
sops.secrets."streamlink/twitch-oauth" = { path = "%r/secrets/streamlink/twich-oauth"; }; # sops.secrets."streamlink/twitch-oauth" = { path = "%r/secrets/streamlink/twich-oauth"; };
home = { home = {
packages = with pkgs; [ packages = with pkgs; [

View File

@@ -3,17 +3,25 @@
home.file.".config/color-pallete.html".text = with rice.color; let home.file.".config/color-pallete.html".text = with rice.color; let
cb = color-set: color-name: size: /* html */ '' cb = color-set: color-name: size: /* html */ ''
<div class="color-container" style="border-color: ${color-set.base}"> <div class="color-container" style="border-color: ${color-set.base}">
<div class="color-box" style="background: ${color-set.darker}; height: ${builtins.toString size}px;">
<p style="color: ${color-set.bright}"> ${color-name}.darker </p>
<p sktyle="color: ${color-set.bright}"> ${color-set.darker} </p>
</div>
<div class="color-box" style="background: ${color-set.dark}; height: ${builtins.toString size}px;"> <div class="color-box" style="background: ${color-set.dark}; height: ${builtins.toString size}px;">
<p style="color: ${color-set.bright}"> ${color-name}.dark </p> <p style="color: ${color-set.brighter}"> ${color-name}.dark </p>
<p style="color: ${color-set.bright}"> ${color-set.dark} </p> <p style="color: ${color-set.brighter}"> ${color-set.dark} </p>
</div> </div>
<div class="color-box" style="background: ${color-set.base}; height: ${builtins.toString size}px;"> <div class="color-box" style="background: ${color-set.base}; height: ${builtins.toString size}px;">
<p class="dynamic-text"> ${color-name}.base </p> <p class="dynamic-text"> ${color-name}.base </p>
<p class="dynamic-text"> ${color-set.base} </p> <p class="dynamic-text"> ${color-set.base} </p>
</div> </div>
<div class="color-box" style="background: ${color-set.bright}; height: ${builtins.toString size}px;"> <div class="color-box" style="background: ${color-set.bright}; height: ${builtins.toString size}px;">
<p style="color: ${color-set.dark}"> ${color-name}.bright </p> <p style="color: ${color-set.darker}"> ${color-name}.bright </p>
<p style="color: ${color-set.dark}"> ${color-set.bright} </p> <p style="color: ${color-set.darker}"> ${color-set.bright} </p>
</div>
<div class="color-box" style="background: ${color-set.brighter}; height: ${builtins.toString size}px;">
<p style="color: ${color-set.dark}"> ${color-name}.brighter </p>
<p style="color: ${color-set.dark}"> ${color-set.brighter} </p>
</div> </div>
</div> </div>
''; '';
@@ -67,8 +75,9 @@
${cb accent "accent" 100} ${cb accent "accent" 100}
${cb secondary "secondary" 100} ${cb secondary "secondary" 100}
${cb tertiary "tertiary" 100} ${cb tertiary "tertiary" 100}
${cb weird "weird" 100} ${cb weird "weird" 80}
${cb special "special" 100} ${cb special "special" 80}
${cb subtle "subtle" 80}
<br> <br>
${cb positive "positive" 70} ${cb positive "positive" 70}
${cb negative "negative" 70} ${cb negative "negative" 70}

View File

@@ -1,7 +1,4 @@
{ pkgs, ... }@all: with all; { pkgs, ... }@all: with all; {
# browser.tabs.allow_transparent_browser
# https://www.reddit.com/r/FirefoxCSS/comments/1dqws4b/firefox_128_will_allow_the_main_browser_content/
{
programs.firefox.profiles."{hyper.user}".settings = { programs.firefox.profiles."{hyper.user}".settings = {
"widget.use-xdg-desktop-portal.file-picker" = 1; "widget.use-xdg-desktop-portal.file-picker" = 1;
}; };
@@ -15,3 +12,5 @@
}; };
}; };
} }
# browser.tabs.allow_transparent_browser
# https://www.reddit.com/r/FirefoxCSS/comments/1dqws4b/firefox_128_will_allow_the_main_browser_content/

View File

@@ -132,6 +132,49 @@ in /* css */ ''
background-color: rgba(${rice.lib.hex-to-rgb-comma-string accent.base},0.5) !important; background-color: rgba(${rice.lib.hex-to-rgb-comma-string accent.base},0.5) !important;
} }
} }
@-moz-document domain(wikipedia.org) {
body, html, div.mw-page-container, .vector-header, .mw-header {
background-color: transparent !important;
}
:root {
--color-base: ${foreground} !important;
--color-base--hover: ${accent.bright} !important;
--color-emphasized: ${accent.base} !important;
--color-progressive: ${accent.base} !important;
--color-progressive--hover: ${accent.brighter} !important;
--color-progressive--active: ${secondary.bright} !important;
--color-destructive: ${negative.base} !important;
--color-destructive--hover: ${negative.brighter} !important;
--color-destructive--active: ${negative.bright} !important;
--color-visited: ${secondary.base} !important;
--color-visited--hover: ${secondary.brighter} !important;
--color-visited--active: ${secondary.bright} !important;
--color-error: ${negative.base} !important;
--color-error--hover: ${negative.bright} !important;
--color-error--active: ${negative.bright} !important;
--color-warning: ${weird.base} !important;
--color-success: ${positive.base} !important;
--color-notice: ${special.base} !important;
--color-content-added: ${positive.base} !important;
--color-content-removed: ${negative.base} !important;
--color-base--subtle: ${accent.dark} !important;
--box-shadow-color-base: ${black.base} !important;
--background-color-base: transparent !important;
--background-color-neutral: transparent !important;
--background-color-neutral-subtle: transparent !important;
--background-color-interactive: ${accent.darker} !important;
--background-color-interactive--hover: ${accent.dark} !important;
--background-color-interactive--active: ${secondary.dark} !important;
--background-color-interactive-subtle: ${subtle.darker} !important;
--background-color-interactive-subtle--hover: ${subtle.dark} !important;
--background-color-interactive-subtle--active: ${subtle.base} !important;
--border-color-base: ${border} !important;
--border-color-emphasized: ${border2} !important;
--border-color-subtle: ${subtle.base} !important;
--border-color-muted: ${subtle.dark} !important;
}
}
@-moz-document url-prefix("https://nx2.site/") { @-moz-document url-prefix("https://nx2.site/") {
html { html {

View File

@@ -4,7 +4,7 @@
fish fish
any-nix-shell any-nix-shell
(writeShellScriptBin "nxfetch" '' (writeShellScriptBin "nxfetch" /* bash */ ''
logo=$(echo -e " logo=$(echo -e "
OS OS
@@ -20,12 +20,12 @@
" | lolcat --force 2> /dev/null) " | lolcat --force 2> /dev/null)
msg=" msg="
$(echo -e "$logo" | sed -n 3p): $(cat /etc/*-release | grep PRETTY_NAME | cut -c 14- | rev | cut -c 2- | rev) $(echo -e "$logo" | sed -n 3p): $(cat /etc/*-releas 2> /dev/null || echo 'PRETTY_NAME="[No Release]"' | grep PRETTY_NAME | cut -c 14- | rev | cut -c 2- | rev)
$(echo -e "$logo" | sed -n 4p): ''${XDG_CURRENT_DESKTOP^} $(echo -e "$logo" | sed -n 4p): ''${XDG_CURRENT_DESKTOP^}
$(echo -e "$logo" | sed -n 5p): ''${TERM^} $(echo -e "$logo" | sed -n 5p): ''${TERM^}
$(echo -e "$logo" | sed -n 6p): $(bash --version | head --lines 1 | cut -f -4 -d' ' | sed -E 's-(.*?), version (.*?)\(.*-\1 \2-g') $(echo -e "$logo" | sed -n 6p): $(bash --version | head --lines 1 | cut -f -4 -d' ' | sed -E 's-(.*?), version (.*?)\(.*-\1 \2-g')
$(echo -e "$logo" | sed -n 7p): fish $(fish --version | rev | cut -f 1 -d' ' | rev | sed 's/./\U&/') $(echo -e "$logo" | sed -n 7p): fish $(fish --version | rev | cut -f 1 -d' ' | rev | sed 's/./\U&/')
$(echo -e "$logo" | sed -n 8p): ''$(uname -r) $(echo -e "$logo" | sed -n 8p): ''$(uname -r | sed -E 's=(.+-.+-.+-.+)-.+=\1=g')
$(echo -e "$logo" | sed -n 9p): $($EDITOR --version | head -n 1 | sed -E 's-(.+?) \(.*-\1-g' | sed 's/./\U&/') $(echo -e "$logo" | sed -n 9p): $($EDITOR --version | head -n 1 | sed -E 's-(.+?) \(.*-\1-g' | sed 's/./\U&/')
$(echo -e "$logo" | sed -n 10p): $(yazi --version | sed -E 's-(.*?) \(.*-\1-g') $(echo -e "$logo" | sed -n 10p): $(yazi --version | sed -E 's-(.*?) \(.*-\1-g')
$(echo -e "$logo" | sed -n 11p): $(starship --version | head -n 1 | sed 's/./\U&/') $(echo -e "$logo" | sed -n 11p): $(starship --version | head -n 1 | sed 's/./\U&/')
@@ -112,7 +112,7 @@
''; '';
nx_backup = let nx_backup = let
destination = if hyper.host == "NxNORTH" then "${hyper.home}/shared/" else "${hyper.home}/backups/"; destination = if hyper.host == "NxNORTH" then "${hyper.home}/shared/" else "${hyper.home}/backups/";
in pkgs.lib.mkIf (hyper.host != "NxACE") '' in pkgs.lib.mkIf (hyper.host != "NxACE" && hyper.host != "NxWSL") ''
set RPATH (curl -s https://${hyper.domain}/latest-backup) set RPATH (curl -s https://${hyper.domain}/latest-backup)
rsync -avz --info=progress2 -e "ssh -p ${builtins.toString secrets.ssh.port}" ${hyper.user}@ssh.${hyper.domain}:"$RPATH" ${destination} rsync -avz --info=progress2 -e "ssh -p ${builtins.toString secrets.ssh.port}" ${hyper.user}@ssh.${hyper.domain}:"$RPATH" ${destination}
''; '';

View File

@@ -31,6 +31,7 @@
}; };
programs.lazygit = { programs.lazygit = {
enable = true; enable = true;
package = pkgs.lazygit;
settings = { settings = {
windowSize = "normal"; windowSize = "normal";
gui.theme = with rice.color; { gui.theme = with rice.color; {

View File

@@ -1,5 +1,4 @@
{ pkgs, ... }@all: with all; { pkgs, ... }@all: with all; let
let
animation-speed = "5"; animation-speed = "5";
transparency = builtins.toString rice.transparency; transparency = builtins.toString rice.transparency;
terminal = "ghostty"; terminal = "ghostty";
@@ -15,12 +14,11 @@ let
left = { name = "desc:Philips Consumer Electronics Company 273PLPH AU11423002132"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; }; left = { name = "desc:Philips Consumer Electronics Company 273PLPH AU11423002132"; resolution = "1920x1080"; position = "0x0"; scale = "1.0"; };
# right = { name = "HDMI-A-2"; resolution = "1920x1080"; position = "4480x360"; scale = "1.0"; }; # right = { name = "HDMI-A-2"; resolution = "1920x1080"; position = "4480x360"; scale = "1.0"; };
}; };
ace = { ace.main = { name = "HDMI-A-1"; resolution = "3840x2160"; position = "0x0"; scale = "2.0"; };
main = { name = "HDMI-A-1"; resolution = "3840x2160"; position = "0x0"; scale = "2.0"; };
};
}; };
in { in {
home.packages = with pkgs; [ home.packages = with pkgs; [
xdg-desktop-portal-hyprland
hyprland-protocols hyprland-protocols
hyprlock hyprlock
hypridle hypridle
@@ -267,6 +265,7 @@ in {
"opacity ${transparency}, title:^(wlogout)$" "opacity ${transparency}, title:^(wlogout)$"
"opaque, title:^(GNU Image Manipulation Program)$" "opaque, title:^(GNU Image Manipulation Program)$"
"opaque, fullscreen:1"
"pin, title:^(Picture-in-Picture)$" "pin, title:^(Picture-in-Picture)$"

View File

@@ -1,7 +1,7 @@
{ pkgs, ... }@all: with all; { { pkgs, ... }@all: with all; {
home = { home = {
packages = with pkgs; [ packages = with pkgs; [
latest.opencode opencode
]; ];
file.".config/opencode/opencode.json".text = let file.".config/opencode/opencode.json".text = let
model = "qwen2.5-coder:7b"; model = "qwen2.5-coder:7b";

View File

@@ -1,5 +1,6 @@
{ pkgs, ... }@all: with all; { { pkgs, ... }@all: with all; {
home.packages = with pkgs; [ home.packages = with pkgs; [
xdg-desktop-portal
brightnessctl brightnessctl
blueman blueman
fontpreview fontpreview
@@ -7,7 +8,7 @@
gsettings-desktop-schemas gsettings-desktop-schemas
imv imv
pavucontrol pavucontrol
# playerctl playerctl
swww swww
wev wev
wl-clipboard wl-clipboard

View File

@@ -7,7 +7,6 @@
gnome-2048 gnome-2048
element-desktop element-desktop
qbittorrent qbittorrent
unstable.spotify
wl-clipboard wl-clipboard
xfce.thunar xfce.thunar
] ++ (if (hyper.host != "NxACE") then [ ] ++ (if (hyper.host != "NxACE") then [

View File

@@ -5,8 +5,7 @@
]; ];
sops = { sops = {
age.keyFile = lib.mkIf (hyper.host == "NxACE") "${hyper.home}.age_nx2_key_13.txt"; age.keyFile = "${hyper.home}.age_nx2_key_13.txt";
gnupg.home = lib.mkIf (hyper.host != "NxACE") "${hyper.home}.gnupg";
defaultSopsFile = ../sops-secrets.yaml; defaultSopsFile = ../sops-secrets.yaml;
# %r is $XDG_RUNTIME_DIR # %r is $XDG_RUNTIME_DIR

56
home-modules/spotify.nix Normal file
View File

@@ -0,0 +1,56 @@
{ pkgs, ... }@all: with all;
{
home.packages = with pkgs; [
unstable.spotify
];
services.librespot = {
enable = true;
package = pkgs.unstable.librespot;
};
sops.secrets."spotify/spotiy-player-clinet-id" = { path = "%r/secrets/spotify/spotiy-player-clinet-id"; };
programs.spotify-player = {
enable = true;
package = pkgs.unstable.spotify-player;
settings = {
border_type = "Rounded";
client_id_command = "cat $XDG_RUNTIME_DIR/secrets/spotify/spotiy-player-clinet-id";
copy_command.command = "wl-copy";
cover_img_length = 20;
cover_img_scale = 1; # if this is not 1 it doesnt fit in the box (for me)
cover_img_width = 9; # this ratio depends on your terminal font
device.normalization = true;
genre_num = 32; # all of them
liked_icon = "";
name = "spotify-player-${hyper.host}";
pause_icon = "";
playback_window_position = "Bottom";
play_icon = "";
progress_bar_position = "Right"; # "Bottom"
progress_bar_type = "Rectangle"; # "Line"
theme = "${hyper.user}";
};
themes = [{
name = "${hyper.user}";
component_style = with rice.color; {
block_title = { fg = accent.bright; };
border = { fg = border; };
current_playing = { fg = special.base; bg = special.darker; modifiers = ["Italic"]; };
like = { fg = positive.base; };
lyrics_played = { fg = subtle.base; };
lyrics_playing = { fg = special.base; };
page_desc = { fg = secondary.base; };
playback_album = { fg = secondary.base; };
playback_artists = { fg = secondary.base; };
playback_genres = { fg = subtle.base; };
playback_metadata = { fg = accent.base; bg = background; };
playback_progress_bar = { fg = accent.brighter; bg = accent.dark; modifiers = ["Bold"]; };
playback_status = { fg = accent.bright; };
playback_track = { fg = accent.bright; modifiers = ["Bold"]; };
secondary_row = { fg = secondary.base; };
selection = { bg = accent.dark; };
table_header = { fg = tertiary.bright; };
# playback_progress_bar_unfilled (Specific to progress_bar_type as Line) = "";
};
}];
};
}

View File

@@ -1,5 +1,5 @@
{ pkgs, ... }@all: with all; let { pkgs, ... }@all: with all; let
tfc = pkgs.latest.xdg-desktop-portal-termfilechooser; tfc = pkgs.xdg-desktop-portal-termfilechooser;
in { in {
home.packages = [ home.packages = [
pkgs.unar pkgs.unar
@@ -331,7 +331,7 @@ in {
border_style = { fg = border; }; border_style = { fg = border; };
}; };
tabs = { tabs = {
active = { fg = accent.dark; bg = accent.base; }; active = { fg = secondary.dark; bg = secondary.base; };
inactive = { fg = secondary.base; bg = secondary.dark; }; inactive = { fg = secondary.base; bg = secondary.dark; };
# sep_inner = # sep_inner =
# sep_outer = # sep_outer =
@@ -420,7 +420,14 @@ in {
enable = true; enable = true;
xdgOpenUsePortal = true; xdgOpenUsePortal = true;
config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser"; config.common."org.freedesktop.impl.portal.FileChooser" = "termfilechooser";
extraPortals = [ tfc ]; extraPortals = [ tfc ] ++ (with pkgs; [
xdg-desktop-portal-hyprland
xdg-desktop-portal
xdg-desktop-portal-gnome
xdg-desktop-portal-gtk
xdg-desktop-portal-hyprland
xdg-desktop-portal-wlr
]);
}; };
}; };
home.sessionVariables."GTK_USE_PORTAL" = "1"; home.sessionVariables."GTK_USE_PORTAL" = "1";

View File

@@ -55,6 +55,7 @@
./home-modules/scanning.nix ./home-modules/scanning.nix
./home-modules/sent.nix ./home-modules/sent.nix
./home-modules/sops.nix ./home-modules/sops.nix
./home-modules/spotify.nix
./home-modules/ssh.nix ./home-modules/ssh.nix
./home-modules/starship.nix ./home-modules/starship.nix
./home-modules/tts.nix ./home-modules/tts.nix

View File

@@ -2,15 +2,16 @@
{ {
imports = [ imports = [
inputs.nixos-wsl.nixosModules.default inputs.nixos-wsl.nixosModules.default
./system-modules/users.nix ./system-modules/base-packages.nix
./system-modules/gc.nix
./system-modules/docker.nix ./system-modules/docker.nix
./system-modules/gc.nix
./system-modules/gpg.nix ./system-modules/gpg.nix
./system-modules/networking.nix ./system-modules/networking.nix
./system-modules/nixd.nix ./system-modules/nixd.nix
# ./system-modules/sops.nix # ./system-modules/sops.nix
# ./system-modules/sshd.nix # ./system-modules/sshd.nix
# ./system-modules/syncthing.nix # ./system-modules/syncthing.nix
./system-modules/users.nix
]; ];
system.stateVersion = pkgs.version; system.stateVersion = pkgs.version;
# system.stateVersion = "24.11"; # system.stateVersion = "24.11";

View File

@@ -31,7 +31,7 @@
home.username = hyper.user; home.username = hyper.user;
# home.homeDirectory = hyper.home; # for some reason you cant use hyper.home here # home.homeDirectory = hyper.home; # for some reason you cant use hyper.home here
home.homeDirectory = "/home/${hyper.user}"; home.homeDirectory = "/home/${hyper.user}";
home.stateVersion = pkgs.version; home.stateVersion = hyper.pkgs-version;
xdg = { xdg = {
enable = true; enable = true;
configHome = "${hyper.home}/.config"; configHome = "${hyper.home}/.config";

View File

@@ -21,6 +21,8 @@ weechat:
passphrase: ENC[AES256_GCM,data:3NVhMouf3wwMJTZCvIjbi5fjHJHxe25Q+wRo,iv:W8cShdM3iUyEiRCPNupMin3gfF+cqGxslD18CAvUW4c=,tag:DXBATGEhHjhXqy+J9BNVwg==,type:str] passphrase: ENC[AES256_GCM,data:3NVhMouf3wwMJTZCvIjbi5fjHJHxe25Q+wRo,iv:W8cShdM3iUyEiRCPNupMin3gfF+cqGxslD18CAvUW4c=,tag:DXBATGEhHjhXqy+J9BNVwg==,type:str]
streamlink: streamlink:
twitch-oauth: ENC[AES256_GCM,data:SvV0CBVL6MO0zqiRg2Ns00KNHLDfzgNObse5F69n,iv:h0DFbwIVKfJSoVowgO3voAOdHXIsw1D3O/aweFRVKcI=,tag:PW0gc+gzlfdOUvIoYIkywg==,type:str] twitch-oauth: ENC[AES256_GCM,data:SvV0CBVL6MO0zqiRg2Ns00KNHLDfzgNObse5F69n,iv:h0DFbwIVKfJSoVowgO3voAOdHXIsw1D3O/aweFRVKcI=,tag:PW0gc+gzlfdOUvIoYIkywg==,type:str]
spotify:
spotiy-player-clinet-id: ENC[AES256_GCM,data:hJpLMgWKzPpqTffr80Jh65Zl3MzKGXiMb8x2F1CxuSQ=,iv:Q8TdEZiAtcdkndsKmvCAlnuu+i60xXUBX6I6VSxwQow=,tag:CIeaJbkMeqRoWnuOgERHYw==,type:str]
nx2site: nx2site:
cloudflare: cloudflare:
api-token-dns-edit: ENC[AES256_GCM,data:fR4fH6NqwtHI8aebEwjUn5JMoy3q3GXgu/dREe8JK7yRBIOhJ8BKuw==,iv:fQqLRYCN/7zhpHzYxMcn8q1aA7x4qd3qWGgrFWn2E/U=,tag:GJ1muJG755ch/84Sgcf2Vw==,type:str] api-token-dns-edit: ENC[AES256_GCM,data:fR4fH6NqwtHI8aebEwjUn5JMoy3q3GXgu/dREe8JK7yRBIOhJ8BKuw==,iv:fQqLRYCN/7zhpHzYxMcn8q1aA7x4qd3qWGgrFWn2E/U=,tag:GJ1muJG755ch/84Sgcf2Vw==,type:str]
@@ -89,8 +91,8 @@ sops:
YkJWUEMySU50ZHVxUzVudjNnYURXak0KkMn/8sFrrviqb3s8DtS/BAbrdCwJ+jv/ YkJWUEMySU50ZHVxUzVudjNnYURXak0KkMn/8sFrrviqb3s8DtS/BAbrdCwJ+jv/
A8rXQkKMjvTqG1f0fq5IlSmRAQy7XFBzkfbKdIUoefhey190WPEHaw== A8rXQkKMjvTqG1f0fq5IlSmRAQy7XFBzkfbKdIUoefhey190WPEHaw==
-----END AGE ENCRYPTED FILE----- -----END AGE ENCRYPTED FILE-----
lastmodified: "2025-08-06T22:09:56Z" lastmodified: "2025-09-07T21:03:20Z"
mac: ENC[AES256_GCM,data:s3lBIa/Y0fjtFFTDggC+Oxd9T5A1al9ULh4VM78vS+A6nmCZWdezLkY1CwXPrCcrwYQtnKrj5N4Y1jQQmEkF1UIcgkvH7ZQsT7MOJyvWhZUx2/wIg1DwcdlHYJAiwFkIkZ1fEvE4m/uDCWA8xO4qWU4NJaxPzTyapPKKF4VwkNs=,iv:tqDVOQlwS+CMzX8MxrBRPjBVj1Svx91eQx2xamAsSiE=,tag:VJf1at+026fQJ5ML2D/PEg==,type:str] mac: ENC[AES256_GCM,data:x8eIqQQGxtB5ukScesN1Lf4cFicTOi3VSOr/hFxKzccgwW7HLLEqwjai6e67KUFC2otaN9TR7ft0tUsTVwWRVRCHnpEoQ5KshLHy2zsk+CmPIpWTLCZJBpe154z3rRLlc10DCM7yhqArzepw0HgE4j1knADqLVwC7e0k+o/OmE8=,iv:uXeIv19J3LmYg7gtA2SGUSoMe9uccrvvztlDFSSs1V8=,tag:YTJpZdw1K+7//EARR+MviA==,type:str]
pgp: pgp:
- created_at: "2025-06-08T12:35:30Z" - created_at: "2025-06-08T12:35:30Z"
enc: |- enc: |-

View File

@@ -1,11 +1,6 @@
{ config, pkgs, ... }@all: with all; { config, pkgs, ... }@all: with all; {
{
# sops.secrets = {
# "wireless-networking.env" = {};
# };
networking = { networking = {
nameservers = [ nameservers = pkgs.lib.mkIf (hyper.host != "NxWSL") [ # wsl manages resolv.conf
"1.1.1.1" "1.1.1.1"
"8.8.8.8" "8.8.8.8"
]; ];