Compare commits

...

6 commits

Author SHA1 Message Date
Vinzenz Schroeter
8ceebd9b22 stylix: initial config 2025-11-11 15:23:24 +01:00
Vinzenz Schroeter
f005a7976a inputs: add stylix, dedup transitive deps 2025-11-11 13:15:22 +01:00
Vinzenz Schroeter
d83096186f keep-sorted, small tweaks to niri session 2025-11-11 12:08:04 +01:00
Vinzenz Schroeter
0679372363 waybar: remove cpu bars, re add power menu 2025-11-09 15:06:18 +01:00
Vinzenz Schroeter
9218e70999 add treefmt config to also format css and json 2025-11-09 14:47:03 +01:00
Vinzenz Schroeter
908bc2dc8f waybar: remove backgrounds, border radius 2025-11-08 15:13:06 +01:00
15 changed files with 673 additions and 462 deletions

457
flake.lock generated
View file

@ -1,5 +1,73 @@
{ {
"nodes": { "nodes": {
"base16": {
"inputs": {
"fromYaml": "fromYaml"
},
"locked": {
"lastModified": 1746562888,
"narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
"owner": "SenchoPens",
"repo": "base16.nix",
"rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "base16.nix",
"type": "github"
}
},
"base16-fish": {
"flake": false,
"locked": {
"lastModified": 1754405784,
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
"owner": "tomyun",
"repo": "base16-fish",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"type": "github"
},
"original": {
"owner": "tomyun",
"repo": "base16-fish",
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
"type": "github"
}
},
"base16-helix": {
"flake": false,
"locked": {
"lastModified": 1748408240,
"narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=",
"owner": "tinted-theming",
"repo": "base16-helix",
"rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-helix",
"type": "github"
}
},
"base16-vim": {
"flake": false,
"locked": {
"lastModified": 1732806396,
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-vim",
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
"type": "github"
}
},
"binding": { "binding": {
"inputs": { "inputs": {
"binding": "binding_2", "binding": "binding_2",
@ -47,7 +115,6 @@
"fenix": { "fenix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"servicepoint-cli",
"naersk", "naersk",
"nixpkgs" "nixpkgs"
], ],
@ -67,26 +134,70 @@
"type": "github" "type": "github"
} }
}, },
"fenix_2": { "firefox-gnome-theme": {
"inputs": { "flake": false,
"nixpkgs": [
"servicepoint-simulator",
"naersk",
"nixpkgs"
],
"rust-analyzer-src": "rust-analyzer-src_2"
},
"locked": { "locked": {
"lastModified": 1752475459, "lastModified": 1748383148,
"narHash": "sha256-z6QEu4ZFuHiqdOPbYss4/Q8B0BFhacR8ts6jO/F/aOU=", "narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=",
"owner": "nix-community", "owner": "rafaelmardojai",
"repo": "fenix", "repo": "firefox-gnome-theme",
"rev": "bf0d6f70f4c9a9cf8845f992105652173f4b617f", "rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "rafaelmardojai",
"repo": "fenix", "repo": "firefox-gnome-theme",
"type": "github"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1762810396,
"narHash": "sha256-dxFVgQPG+R72dkhXTtqUm7KpxElw3u6E+YlQ2WaDgt8=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "0bdadb1b265fb4143a75bd1ec7d8c915898a9923",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"fromYaml": {
"flake": false,
"locked": {
"lastModified": 1731966426,
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
"owner": "SenchoPens",
"repo": "fromYaml",
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
"type": "github"
},
"original": {
"owner": "SenchoPens",
"repo": "fromYaml",
"type": "github"
}
},
"gnome-shell": {
"flake": false,
"locked": {
"lastModified": 1744584021,
"narHash": "sha256-0RJ4mJzf+klKF4Fuoc8VN8dpQQtZnKksFmR2jhWE1Ew=",
"owner": "GNOME",
"repo": "gnome-shell",
"rev": "52c517c8f6c199a1d6f5118fae500ef69ea845ae",
"type": "github"
},
"original": {
"owner": "GNOME",
"ref": "48.1",
"repo": "gnome-shell",
"type": "github" "type": "github"
} }
}, },
@ -115,29 +226,6 @@
"inputs": { "inputs": {
"fenix": "fenix", "fenix": "fenix",
"nixpkgs": [ "nixpkgs": [
"servicepoint-cli",
"nixpkgs"
]
},
"locked": {
"lastModified": 1752689277,
"narHash": "sha256-uldUBFkZe/E7qbvxa3mH1ItrWZyT6w1dBKJQF/3ZSsc=",
"owner": "nix-community",
"repo": "naersk",
"rev": "0e72363d0938b0208d6c646d10649164c43f4d64",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "naersk",
"type": "github"
}
},
"naersk_2": {
"inputs": {
"fenix": "fenix_2",
"nixpkgs": [
"servicepoint-simulator",
"nixpkgs" "nixpkgs"
] ]
}, },
@ -169,11 +257,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1762026425, "lastModified": 1762857797,
"narHash": "sha256-7eDtQrr+CRZ1pLjJ6Bx7Ab9pUIowXJ7ooqEh6p3jIn8=", "narHash": "sha256-puoFJGlbL6khrQKozCO6Wgpq/IhA2Sfnz+ui/87lbQQ=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "342730d4f8e109f3506932d2be1c8f9ab19a7039", "rev": "2ff3443b4226f6721a43b75e76b6ca59caa34fec",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -202,11 +290,11 @@
"niri-unstable": { "niri-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1761888958, "lastModified": 1762854265,
"narHash": "sha256-YgArUHI81Esn6fOCwVSrMI2G4RI3f3BPbRbPWsJubAc=", "narHash": "sha256-iykTzCzU8hI7b8LvAquYY4Asl2xj3AcLzWZv6rm8MGY=",
"owner": "YaLTeR", "owner": "YaLTeR",
"repo": "niri", "repo": "niri",
"rev": "e2576879216a39e5c45b9d2906531bc2065e724c", "rev": "fb2f67c8a036f674e9101e15a7bb1cf61524ebde",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -217,26 +305,11 @@
}, },
"nix-filter": { "nix-filter": {
"locked": { "locked": {
"lastModified": 1731533336, "lastModified": 1757882181,
"narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", "narHash": "sha256-+cCxYIh2UNalTz364p+QYmWHs0P+6wDhiWR4jDIKQIU=",
"owner": "numtide", "owner": "numtide",
"repo": "nix-filter", "repo": "nix-filter",
"rev": "f7653272fd234696ae94229839a99b73c9ab7de0", "rev": "59c44d1909c72441144b93cf0f054be7fe764de5",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "nix-filter",
"type": "github"
}
},
"nix-filter_2": {
"locked": {
"lastModified": 1731533336,
"narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=",
"owner": "numtide",
"repo": "nix-filter",
"rev": "f7653272fd234696ae94229839a99b73c9ab7de0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -252,11 +325,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1762048816, "lastModified": 1762826252,
"narHash": "sha256-gAGed5eYA6WTVQSMELyi+168A9N2UNEjwXn5xm0czsk=", "narHash": "sha256-7VqX6Z8Pq5DzVV5YM7o92vC6goNGtucCv71dXwpy01Q=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-vscode-extensions", "repo": "nix-vscode-extensions",
"rev": "c8261cd60b0623635b4b88ae0f75ac3bfeddf260", "rev": "f10a42469c4db9b4ae7b3cd3a5c0d8bffb4a8b98",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -267,11 +340,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1761999846, "lastModified": 1762756533,
"narHash": "sha256-IYlYnp4O4dzEpL77BD/lj5NnJy2J8qbHkNSFiPBCbqo=", "narHash": "sha256-HiRDeUOD1VLklHeOmaKDzf+8Hb7vSWPVFcWwaTrpm+U=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3de8f8d73e35724bf9abef41f1bdbedda1e14a31", "rev": "c2448301fb856e351aab33e64c33a3fc8bcf637d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -281,13 +354,28 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-lib": {
"locked": {
"lastModified": 1761765539,
"narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=",
"owner": "nix-community",
"repo": "nixpkgs.lib",
"rev": "719359f4562934ae99f5443f20aa06c2ffff91fc",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixpkgs.lib",
"type": "github"
}
},
"nixpkgs-unstable": { "nixpkgs-unstable": {
"locked": { "locked": {
"lastModified": 1761880412, "lastModified": 1762482733,
"narHash": "sha256-QoJjGd4NstnyOG4mm4KXF+weBzA2AH/7gn1Pmpfcb0A=", "narHash": "sha256-g/da4FzvckvbiZT075Sb1/YDNDr+tGQgh4N8i5ceYMg=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "a7fc11be66bdfb5cdde611ee5ce381c183da8386", "rev": "e1ebeec86b771e9d387dd02d82ffdc77ac753abc",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -297,16 +385,45 @@
"type": "github" "type": "github"
} }
}, },
"nur": {
"inputs": {
"flake-parts": [
"flake-parts"
],
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1762858278,
"narHash": "sha256-BYeYJFonJRt9xg6UYXpvVGK5j4NEOXHETRffPQT7drM=",
"owner": "nix-community",
"repo": "NUR",
"rev": "a053db755b35970d6a0ebd97aaceb8f629faa8e7",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"root": { "root": {
"inputs": { "inputs": {
"flake-parts": "flake-parts",
"home-manager": "home-manager", "home-manager": "home-manager",
"naersk": "naersk",
"niri": "niri", "niri": "niri",
"nix-filter": "nix-filter",
"nix-vscode-extensions": "nix-vscode-extensions", "nix-vscode-extensions": "nix-vscode-extensions",
"nixpkgs": "nixpkgs", "nixpkgs": "nixpkgs",
"nixpkgs-unstable": "nixpkgs-unstable", "nixpkgs-unstable": "nixpkgs-unstable",
"nur": "nur",
"servicepoint-cli": "servicepoint-cli", "servicepoint-cli": "servicepoint-cli",
"servicepoint-simulator": "servicepoint-simulator", "servicepoint-simulator": "servicepoint-simulator",
"servicepoint-tanks": "servicepoint-tanks", "servicepoint-tanks": "servicepoint-tanks",
"stylix": "stylix",
"treefmt-nix": "treefmt-nix",
"zerforschen-plus": "zerforschen-plus" "zerforschen-plus": "zerforschen-plus"
} }
}, },
@ -327,27 +444,14 @@
"type": "github" "type": "github"
} }
}, },
"rust-analyzer-src_2": {
"flake": false,
"locked": {
"lastModified": 1752428706,
"narHash": "sha256-EJcdxw3aXfP8Ex1Nm3s0awyH9egQvB2Gu+QEnJn2Sfg=",
"owner": "rust-lang",
"repo": "rust-analyzer",
"rev": "591e3b7624be97e4443ea7b5542c191311aa141d",
"type": "github"
},
"original": {
"owner": "rust-lang",
"ref": "nightly",
"repo": "rust-analyzer",
"type": "github"
}
},
"servicepoint-cli": { "servicepoint-cli": {
"inputs": { "inputs": {
"naersk": "naersk", "naersk": [
"nix-filter": "nix-filter", "naersk"
],
"nix-filter": [
"nix-filter"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -368,8 +472,12 @@
}, },
"servicepoint-simulator": { "servicepoint-simulator": {
"inputs": { "inputs": {
"naersk": "naersk_2", "naersk": [
"nix-filter": "nix-filter_2", "naersk"
],
"nix-filter": [
"nix-filter"
],
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -410,6 +518,161 @@
"url": "https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git" "url": "https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git"
} }
}, },
"stylix": {
"inputs": {
"base16": "base16",
"base16-fish": "base16-fish",
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-parts": [
"flake-parts"
],
"gnome-shell": "gnome-shell",
"nixpkgs": [
"nixpkgs"
],
"nur": [
"nur"
],
"systems": "systems",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
"tinted-schemes": "tinted-schemes",
"tinted-tmux": "tinted-tmux",
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1762295027,
"narHash": "sha256-5z5cGrp9F8g8iyQrM8WkB6pAwP4AaicljKZ15gx+X9Y=",
"owner": "nix-community",
"repo": "stylix",
"rev": "91b9a270523361268ba6a8772152fde31103869f",
"type": "github"
},
"original": {
"owner": "nix-community",
"ref": "release-25.05",
"repo": "stylix",
"type": "github"
}
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"tinted-foot": {
"flake": false,
"locked": {
"lastModified": 1726913040,
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
"owner": "tinted-theming",
"repo": "tinted-foot",
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-foot",
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
"type": "github"
}
},
"tinted-kitty": {
"flake": false,
"locked": {
"lastModified": 1735730497,
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
"owner": "tinted-theming",
"repo": "tinted-kitty",
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-kitty",
"type": "github"
}
},
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1750770351,
"narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "5a775c6ffd6e6125947b393872cde95867d85a2a",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "schemes",
"type": "github"
}
},
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1751159871,
"narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "bded5e24407cec9d01bd47a317d15b9223a1546c",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "tinted-tmux",
"type": "github"
}
},
"tinted-zed": {
"flake": false,
"locked": {
"lastModified": 1751158968,
"narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=",
"owner": "tinted-theming",
"repo": "base16-zed",
"rev": "86a470d94204f7652b906ab0d378e4231a5b3384",
"type": "github"
},
"original": {
"owner": "tinted-theming",
"repo": "base16-zed",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1762410071,
"narHash": "sha256-aF5fvoZeoXNPxT0bejFUBXeUjXfHLSL7g+mjR/p5TEg=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "97a30861b13c3731a84e09405414398fbf3e109f",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"xwayland-satellite-stable": { "xwayland-satellite-stable": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -430,11 +693,11 @@
"xwayland-satellite-unstable": { "xwayland-satellite-unstable": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1761622056, "lastModified": 1762747449,
"narHash": "sha256-fBrUszJXmB4MY+wf3QsCnqWHcz7u7fLq0QMAWCltIQg=", "narHash": "sha256-Z1TKiux8K09a93w4PFDFsj8HFugXNy3iCC3Z8MpR5Rk=",
"owner": "Supreeeme", "owner": "Supreeeme",
"repo": "xwayland-satellite", "repo": "xwayland-satellite",
"rev": "0728d59ff6463a502e001fb090f6eb92dbc04756", "rev": "6338574bc5c036487486acde264f38f39ea15fad",
"type": "github" "type": "github"
}, },
"original": { "original": {

128
flake.nix
View file

@ -8,36 +8,69 @@
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
#keep-sorted start block=yes
flake-parts = {
url = "github:hercules-ci/flake-parts";
#inputs.nixpkgs.follows = "nixpkgs";
};
naersk = {
url = "github:nix-community/naersk";
inputs.nixpkgs.follows = "nixpkgs";
};
niri = { niri = {
url = "github:sodiboo/niri-flake"; url = "github:sodiboo/niri-flake";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
inputs.nixpkgs-stable.follows = "nixpkgs"; inputs.nixpkgs-stable.follows = "nixpkgs";
}; };
nix-filter.url = "github:numtide/nix-filter";
nix-vscode-extensions = { nix-vscode-extensions = {
url = "github:nix-community/nix-vscode-extensions"; url = "github:nix-community/nix-vscode-extensions";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
nur = {
zerforschen-plus = { url = "github:nix-community/NUR";
url = "git+https://git.berlin.ccc.de/vinzenz/zerforschen.plus"; inputs = {
inputs.nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
flake-parts.follows = "flake-parts";
};
}; };
servicepoint-cli = { servicepoint-cli = {
url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-cli.git"; url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-cli.git";
inputs.nixpkgs.follows = "nixpkgs"; inputs = {
nixpkgs.follows = "nixpkgs";
naersk.follows = "naersk";
nix-filter.follows = "nix-filter";
};
}; };
servicepoint-simulator = { servicepoint-simulator = {
url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-simulator.git"; url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-simulator.git";
inputs.nixpkgs.follows = "nixpkgs"; inputs = {
nixpkgs.follows = "nixpkgs";
naersk.follows = "naersk";
nix-filter.follows = "nix-filter";
};
}; };
servicepoint-tanks = { servicepoint-tanks = {
url = "git+https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git?ref=service-improvements"; url = "git+https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git?ref=service-improvements";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
stylix = {
url = "github:nix-community/stylix/release-25.05";
inputs = {
nixpkgs.follows = "nixpkgs";
nur.follows = "nur";
flake-parts.follows = "flake-parts";
};
};
treefmt-nix = {
url = "github:numtide/treefmt-nix";
inputs.nixpkgs.follows = "nixpkgs";
};
zerforschen-plus = {
url = "git+https://git.berlin.ccc.de/vinzenz/zerforschen.plus";
inputs.nixpkgs.follows = "nixpkgs";
};
#keep-sorted end
}; };
outputs = outputs =
@ -45,13 +78,18 @@
self, self,
nixpkgs, nixpkgs,
home-manager, home-manager,
# keep-sorted start
niri, niri,
zerforschen-plus,
nixpkgs-unstable,
nix-vscode-extensions, nix-vscode-extensions,
nixpkgs-unstable,
servicepoint-cli, servicepoint-cli,
servicepoint-simulator, servicepoint-simulator,
servicepoint-tanks, servicepoint-tanks,
stylix,
treefmt-nix,
zerforschen-plus,
# keep-sorted end
...
}: }:
let let
devices = { devices = {
@ -113,6 +151,15 @@
inherit (nixpkgs) lib; inherit (nixpkgs) lib;
forDevice = f: lib.mapAttrs (device: value: f (value // { inherit device; })) devices; forDevice = f: lib.mapAttrs (device: value: f (value // { inherit device; })) devices;
supported-systems = lib.attrsets.mapAttrsToList (k: v: v.system) devices; supported-systems = lib.attrsets.mapAttrsToList (k: v: v.system) devices;
treefmt-config = {
projectRootFile = "flake.nix";
programs = {
nixfmt.enable = true;
jsonfmt.enable = true;
prettier.enable = true;
keep-sorted.enable = true;
};
};
forAllSystems = forAllSystems =
f: f:
lib.genAttrs supported-systems ( lib.genAttrs supported-systems (
@ -120,6 +167,7 @@
f rec { f rec {
inherit system; inherit system;
pkgs = nixpkgs.legacyPackages.${system}; pkgs = nixpkgs.legacyPackages.${system};
treefmt-eval = treefmt-nix.lib.evalModule pkgs treefmt-config;
} }
); );
importModuleDir = importModuleDir =
@ -168,8 +216,6 @@
ronja = ./homeConfigurations/ronja; ronja = ./homeConfigurations/ronja;
}; };
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree);
nixosConfigurations = forDevice ( nixosConfigurations = forDevice (
{ {
device, device,
@ -213,17 +259,18 @@
./nixosConfigurations/${device} ./nixosConfigurations/${device}
self.nixosModules.default # keep-sorted start
self.nixosModules.lix-is-nix
self.nixosModules.globalinstalls
self.nixosModules.autoupdate
self.nixosModules.openssh
self.nixosModules.tailscale
self.nixosModules.allowed-unfree-list self.nixosModules.allowed-unfree-list
self.nixosModules.autoupdate
self.nixosModules.default
self.nixosModules.extra-caches self.nixosModules.extra-caches
self.nixosModules.globalinstalls
self.nixosModules.lix-is-nix
self.nixosModules.openssh
self.nixosModules.systemd-boot self.nixosModules.systemd-boot
self.nixosModules.tailscale
zerforschen-plus.nixosModules.default zerforschen-plus.nixosModules.default
# keep-sorted end
] ]
++ (nixpkgs.lib.optionals (home-manager-users != { }) [ ++ (nixpkgs.lib.optionals (home-manager-users != { }) [
{ {
@ -237,36 +284,49 @@
home-manager.sharedModules = [ home-manager.sharedModules = [
{ home.stateVersion = "22.11"; } { home.stateVersion = "22.11"; }
self.homeModules.adwaita # keep-sorted start
self.homeModules.git self.homeModules.git
self.homeModules.gnome-extensions
self.homeModules.nano
self.homeModules.templates self.homeModules.templates
self.homeModules.zsh-basics self.homeModules.zsh-basics
self.homeModules.nano
self.homeModules.gnome-extensions
self.homeModules.zsh-powerlevel10k self.homeModules.zsh-powerlevel10k
# keep-sorted end
]; ];
home-manager.users = home-manager-users; home-manager.users = home-manager-users;
} }
# keep-sorted start
home-manager.nixosModules.home-manager
self.nixosModules.en-de
self.nixosModules.firmware-updates
self.nixosModules.gnome
self.nixosModules.kdeconnect
self.nixosModules.modern-desktop
self.nixosModules.niri
self.nixosModules.nix-ld
self.nixosModules.pkgs-unstable self.nixosModules.pkgs-unstable
self.nixosModules.pkgs-vscode-extensions self.nixosModules.pkgs-vscode-extensions
self.nixosModules.niri
self.nixosModules.kdeconnect
self.nixosModules.en-de
self.nixosModules.gnome
self.nixosModules.modern-desktop
self.nixosModules.nix-ld
self.nixosModules.quiet-boot self.nixosModules.quiet-boot
self.nixosModules.firmware-updates self.nixosModules.stylix
home-manager.nixosModules.home-manager
servicepoint-simulator.nixosModules.default
servicepoint-cli.nixosModules.default servicepoint-cli.nixosModules.default
servicepoint-simulator.nixosModules.default
servicepoint-tanks.nixosModules.default servicepoint-tanks.nixosModules.default
stylix.nixosModules.stylix
# keep-sorted end
]) ])
++ additional-modules; ++ additional-modules;
} }
); );
formatter = forAllSystems ({ treefmt-eval, ... }: treefmt-eval.config.build.wrapper);
checks = forAllSystems (
{ treefmt-eval, ... }:
{
formatting = treefmt-eval.config.build.check self;
}
);
}; };
} }

View file

@ -27,7 +27,6 @@
"files.autoSaveWhenNoErrors" = true; "files.autoSaveWhenNoErrors" = true;
"files.autoSaveWorkspaceFilesOnly" = true; "files.autoSaveWorkspaceFilesOnly" = true;
"editor.fontFamily" = "'Fira Code', 'Droid Sans Mono', 'monospace', monospace";
"editor.fontLigatures" = true; "editor.fontLigatures" = true;
"editor.formatOnSave" = true; "editor.formatOnSave" = true;
"editor.formatOnSaveMode" = "modificationsIfAvailable"; "editor.formatOnSaveMode" = "modificationsIfAvailable";

View file

@ -1,23 +1,23 @@
{ {
"default": [ "default": [
{ {
"type": "reject" "type": "reject"
}
],
"transports": {
"docker-daemon": {
"": [
{
"type": "insecureAcceptAnything"
}
]
},
"docker": {
"docker.io/library/debian": [
{
"type": "insecureAcceptAnything"
}
]
}
} }
],
"transports": {
"docker-daemon": {
"": [
{
"type": "insecureAcceptAnything"
}
]
},
"docker": {
"docker.io/library/debian": [
{
"type": "insecureAcceptAnything"
}
]
}
}
} }

View file

@ -1,18 +1,21 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
imports = [ imports = [
# keep-sorted start
./editorconfig.nix ./editorconfig.nix
./fonts.nix
./fuzzel.nix ./fuzzel.nix
./git.nix ./git.nix
./gnome.nix ./gnome.nix
./ssh.nix ./mako.nix
./vscode.nix
./zsh.nix
./starship.nix
./fonts.nix
./niri.nix ./niri.nix
./ssh.nix
./starship.nix
./swaylock.nix ./swaylock.nix
./vscode.nix
./waybar.nix ./waybar.nix
./zsh.nix
# keep-sorted end
]; ];
config = { config = {
@ -56,6 +59,7 @@
wireguard-tools wireguard-tools
wirelesstools wirelesstools
tailscale
kdiff3 kdiff3
jetbrains-toolbox jetbrains-toolbox

View file

@ -1,12 +1,9 @@
{ pkgs, ... }: { pkgs, ... }:
{ {
fonts.fontconfig = { fonts.fontconfig.enable = true;
enable = true;
defaultFonts.monospace = [ "FiraCode Nerd Font Mono" ];
};
home.packages = with pkgs; [ home.packages = with pkgs; [
nerd-fonts.fira-code
roboto-mono roboto-mono
recursive recursive
font-awesome
]; ];
} }

View file

@ -7,22 +7,8 @@
terminal = "${lib.getBin pkgs.gnome-console}/bin/kgx"; terminal = "${lib.getBin pkgs.gnome-console}/bin/kgx";
icon-theme = "Adwaita"; icon-theme = "Adwaita";
counter = true; counter = true;
font = "sans:size=11";
launch-prefix = "niri msg action spawn --"; launch-prefix = "niri msg action spawn --";
}; };
colors = {
border = "0003B3FF";
background = "0F0F0FFF";
text = "657b83ff";
prompt = "586e75ff";
placeholder = "93a1a1ff";
input = "657b83ff";
match = "cb4b16ff";
selection = "eee8d5ff";
selection-text = "586e75ff";
selection-match = "cb4b16ff";
counter = "93a1a1ff";
};
border = { border = {
radius = 30; radius = 30;
width = 3; width = 3;

View file

@ -0,0 +1,3 @@
{
services.mako.enable = true;
}

View file

@ -9,7 +9,6 @@
home.sessionVariables.NIXOS_OZONE_WL = "1"; home.sessionVariables.NIXOS_OZONE_WL = "1";
home.packages = with pkgs; [ home.packages = with pkgs; [
xwayland-satellite xwayland-satellite
alacritty
]; ];
qt.style = { qt.style = {
@ -17,8 +16,6 @@
name = "adwaita-dark"; name = "adwaita-dark";
}; };
services.mako.enable = true;
programs.niri.settings = { programs.niri.settings = {
outputs = { outputs = {
"BOE 0x0A3B Unknown" = { "BOE 0x0A3B Unknown" = {
@ -61,7 +58,6 @@
{ {
background-color = "#000000"; background-color = "#000000";
gaps = gap-size; gaps = gap-size;
#default-column-display = "tabbed";
border = { border = {
enable = true; enable = true;
width = gap-size / 2; width = gap-size / 2;
@ -172,10 +168,10 @@
# Suggested binds for running programs: terminal, app launcher, screen locker. # Suggested binds for running programs: terminal, app launcher, screen locker.
"Mod+T".action.spawn = "${lib.getBin pkgs.gnome-console}/bin/kgx"; "Mod+T".action.spawn = "${lib.getBin pkgs.gnome-console}/bin/kgx";
"Mod+D".action.spawn = "fuzzel"; "Mod+D".action.spawn = "${lib.getBin config.programs.fuzzel.package}/bin/fuzzel";
"Super+Alt+L" = { "Super+Alt+L" = {
action.spawn = "${lib.getBin config.programs.swaylock.package}/bin/swaylock"; action.spawn = "${lib.getBin config.programs.swaylock.package}/bin/swaylock";
allow-when-locked=true; allow-when-locked = true;
}; };
# You can also use a shell. Do this if you need pipes, multiple commands, etc. # You can also use a shell. Do this if you need pipes, multiple commands, etc.
@ -406,7 +402,7 @@
"Mod+Shift+P".action.power-off-monitors = { }; "Mod+Shift+P".action.power-off-monitors = { };
"Mod+W".action.toggle-column-tabbed-display = { }; "Mod+W".action.toggle-column-tabbed-display = { };
"Mod+O".action.toggle-overview = {}; "Mod+O".action.toggle-overview = { };
}; };
}; };
}; };

View file

@ -1,4 +1,4 @@
{ ... }: { lib, ... }:
{ {
config.programs.starship = { config.programs.starship = {
enable = true; enable = true;
@ -15,7 +15,8 @@
+ "([ $cmd_duration$status](bg:color_y fg:text_y))[](fg:color_y)" + "([ $cmd_duration$status](bg:color_y fg:text_y))[](fg:color_y)"
+ "$line_break$character "; + "$line_break$character ";
palette = "color_me_surprised"; # TODO: replace with base16 theme
palette = lib.mkForce "color_me_surprised";
palettes.color_me_surprised = { palettes.color_me_surprised = {
"color_r" = "#a30262"; "color_r" = "#a30262";
"color_g" = "#d162a4"; "color_g" = "#d162a4";
@ -210,121 +211,6 @@
swift.symbol = ""; swift.symbol = "";
zig.symbol = ""; zig.symbol = "";
gradle.symbol = ""; gradle.symbol = "";
palettes = {
catppuccin_mocha = {
rosewater = "#f5e0dc";
flamingo = "#f2cdcd";
pink = "#f5c2e7";
mauve = "#cba6f7";
red = "#f38ba8";
maroon = "#eba0ac";
peach = "#fab387";
yellow = "#f9e2af";
green = "#a6e3a1";
teal = "#94e2d5";
sky = "#89dceb";
sapphire = "#74c7ec";
blue = "#89b4fa";
lavender = "#b4befe";
text = "#cdd6f4";
subtext1 = "#bac2de";
subtext0 = "#a6adc8";
overlay2 = "#9399b2";
overlay1 = "#7f849c";
overlay0 = "#6c7086";
surface2 = "#585b70";
surface1 = "#45475a";
surface0 = "#313244";
base = "#1e1e2e";
mantle = "#181825";
crust = "#11111b";
};
catppuccin_frappe = {
rosewater = "#f2d5cf";
flamingo = "#eebebe";
pink = "#f4b8e4";
mauve = "#ca9ee6";
red = "#e78284";
maroon = "#ea999c";
peach = "#ef9f76";
yellow = "#e5c890";
green = "#a6d189";
teal = "#81c8be";
sky = "#99d1db";
sapphire = "#85c1dc";
blue = "#8caaee";
lavender = "#babbf1";
text = "#c6d0f5";
subtext1 = "#b5bfe2";
subtext0 = "#a5adce";
overlay2 = "#949cbb";
overlay1 = "#838ba7";
overlay0 = "#737994";
surface2 = "#626880";
surface1 = "#51576d";
surface0 = "#414559";
base = "#303446";
mantle = "#292c3c";
crust = "#232634";
};
catppuccin_latte = {
rosewater = "#dc8a78";
flamingo = "#dd7878";
pink = "#ea76cb";
mauve = "#8839ef";
red = "#d20f39";
maroon = "#e64553";
peach = "#fe640b";
yellow = "#df8e1d";
green = "#40a02b";
teal = "#179299";
sky = "#04a5e5";
sapphire = "#209fb5";
blue = "#1e66f5";
lavender = "#7287fd";
text = "#4c4f69";
subtext1 = "#5c5f77";
subtext0 = "#6c6f85";
overlay2 = "#7c7f93";
overlay1 = "#8c8fa1";
overlay0 = "#9ca0b0";
surface2 = "#acb0be";
surface1 = "#bcc0cc";
surface0 = "#ccd0da";
base = "#eff1f5";
mantle = "#e6e9ef";
crust = "#dce0e8";
};
catppuccin_macchiato = {
rosewater = "#f4dbd6";
flamingo = "#f0c6c6";
pink = "#f5bde6";
mauve = "#c6a0f6";
red = "#ed8796";
maroon = "#ee99a0";
peach = "#f5a97f";
yellow = "#eed49f";
green = "#a6da95";
teal = "#8bd5ca";
sky = "#91d7e3";
sapphire = "#7dc4e4";
blue = "#8aadf4";
lavender = "#b7bdf8";
text = "#cad3f5";
subtext1 = "#b8c0e0";
subtext0 = "#a5adcb";
overlay2 = "#939ab7";
overlay1 = "#8087a2";
overlay0 = "#6e738d";
surface2 = "#5b6078";
surface1 = "#494d64";
surface0 = "#363a4f";
base = "#24273a";
mantle = "#1e2030";
crust = "#181926";
};
};
}; };
}; };
} }

View file

@ -37,7 +37,6 @@
"files.autoSaveWhenNoErrors" = true; "files.autoSaveWhenNoErrors" = true;
"files.autoSaveWorkspaceFilesOnly" = true; "files.autoSaveWorkspaceFilesOnly" = true;
"editor.fontFamily" = "'Fira Code', 'Droid Sans Mono', 'monospace', monospace";
"editor.fontLigatures" = true; "editor.fontLigatures" = true;
"editor.formatOnSave" = true; "editor.formatOnSave" = true;
"editor.formatOnSaveMode" = "modificationsIfAvailable"; "editor.formatOnSaveMode" = "modificationsIfAvailable";
@ -87,6 +86,10 @@
"\[nix\]" = { "\[nix\]" = {
"editor.formatOnSave" = false; "editor.formatOnSave" = false;
}; };
"\[css\]" = {
"editor.formatOnSave" = false;
};
}; };
}; };
}; };

View file

@ -1,92 +1,98 @@
* { * {
/* `otf-font-awesome` is required to be installed for icons */ /* `otf-font-awesome` is required to be installed for icons */
font-family: FontAwesome, sans-serif; font-family: FontAwesome, sans-serif;
font-size: 13px; font-size: 13px;
border: none; color: #dcdfe1;
border-radius: 0;
color: #dcdfe1;
}
#waybar {
background-color: rgba(0, 0, 0, 0);
border: none;
box-shadow: none;
} }
window#waybar { window#waybar {
color: #ffffff; background: black;
transition-property: background-color; /* border: none; */
transition-duration: .5s; box-shadow: none;
color: #ffffff;
transition-property: background-color;
transition-duration: 0.5s;
} }
window#waybar.hidden { window#waybar.hidden {
opacity: 0.2; opacity: 0.2;
} }
window#waybar.termite { window#waybar.termite {
background-color: #3F3F3F; background-color: #3f3f3f;
} }
window#waybar.chromium { window#waybar.chromium {
background-color: #000000; background-color: #000000;
border: none; border: none;
}
/*
window#waybar .modules-left,
window#waybar .modules-center,
window#waybar .modules-right {
border: 1px solid;
border-radius: 15px;
border-image-source: linear-gradient(90deg, #d162a4, #5BCEFA);
}
*/
box.horizontal {
padding: 4px 4px 0px 4px;
} }
#workspaces, #workspaces,
#window, #window,
#tray { #tray {
background-color: rgba(15, 27, 53, 0.9); background-color: rgba(15, 27, 53, 0.9);
padding: 4px 6px; padding: 4px 6px;
margin-top: 6px; margin-left: 6px;
margin-left: 6px; margin-right: 6px;
margin-right: 6px; border-radius: 15px;
border-radius: 15px; border-width: 0px;
border-width: 0px;
} }
button { button {
/* Use box-shadow instead of border so the text isn't offset */ /* Use box-shadow instead of border so the text isn't offset */
box-shadow: inset 0 -3px transparent; box-shadow: inset 0 -3px transparent;
/* Avoid rounded borders under each button name */ /* Avoid rounded borders under each button name */
border: none; border: none;
border-radius: 0; border-radius: 0;
} }
/* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */
button:hover { button:hover {
background: inherit; background: inherit;
box-shadow: inset 0 -3px #ffffff; box-shadow: inset 0 -3px #ffffff;
} }
/* you can set a style on hover for any module like this */ /* you can set a style on hover for any module like this */
#pulseaudio:hover { #pulseaudio:hover {
background-color: #a37800; background-color: #a37800;
} }
#workspaces button { #workspaces button {
padding: 0 5px; padding: 0 5px;
background-color: transparent; background-color: transparent;
color: #ffffff; color: #ffffff;
border-radius: 15px;
} }
#workspaces button:hover { #workspaces button:hover {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#workspaces button.focused, #workspaces button.focused,
#workspaces button.active { #workspaces button.active {
background-color: #64727D; background-color: #64727d;
box-shadow: inset 0 -3px #ffffff;
} }
#workspaces button.urgent { #workspaces button.urgent {
background-color: #eb4d4b; background-color: #eb4d4b;
} }
#mode { #mode {
background-color: #64727D; background-color: #64727d;
box-shadow: inset 0 -3px #ffffff; box-shadow: inset 0 -3px #ffffff;
} }
#clock, #clock,
@ -100,31 +106,30 @@ button:hover {
#pulseaudio, #pulseaudio,
#wireplumber, #wireplumber,
#custom-media, #custom-media,
#tray,
#mode, #mode,
#idle_inhibitor, #idle_inhibitor,
#scratchpad, #scratchpad,
#power-profiles-daemon, #power-profiles-daemon,
#mpd { #mpd {
padding: 0 10px; padding: 0 10px;
color: #ffffff; color: #ffffff;
} }
#window, #window,
#workspaces { #workspaces {
margin: 0 4px; margin: 0 4px;
} }
/* If workspaces is the leftmost module, omit left margin */ /* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces { .modules-left > widget:first-child > #workspaces {
margin-left: 0; margin-left: 0;
} }
/* If workspaces is the rightmost module, omit right margin */ /* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces { .modules-right > widget:last-child > #workspaces {
margin-right: 0; margin-right: 0;
} }
/*
#clock { #clock {
background-color: #64727D; background-color: #64727D;
} }
@ -139,44 +144,41 @@ button:hover {
color: #ffffff; color: #ffffff;
background-color: #26A65B; background-color: #26A65B;
} }
*/
@keyframes blink { @keyframes blink {
to { to {
background-color: #ffffff; background-color: #ffffff;
color: #000000; color: #000000;
} }
} }
/* Using steps() instead of linear as a timing function to limit cpu usage */ /* Using steps() instead of linear as a timing function to limit cpu usage */
#battery.critical:not(.charging) { #battery.critical:not(.charging) {
background-color: #f53c3c; background-color: #f53c3c;
color: #ffffff; color: #ffffff;
animation-name: blink; animation-name: blink;
animation-duration: 0.5s; animation-duration: 0.5s;
animation-timing-function: steps(12); animation-timing-function: steps(12);
animation-iteration-count: infinite; animation-iteration-count: infinite;
animation-direction: alternate; animation-direction: alternate;
} }
#power-profiles-daemon { #power-profiles-daemon {
padding-right: 15px; padding-right: 15px;
} }
#power-profiles-daemon.performance { #power-profiles-daemon.performance {
background-color: #f53c3c; color: #f53c3c;
color: #ffffff;
} }
#power-profiles-daemon.balanced { #power-profiles-daemon.balanced {
background-color: #2980b9; color: #2980b9;
color: #ffffff;
} }
#power-profiles-daemon.power-saver { #power-profiles-daemon.power-saver {
background-color: #2ecc71; color: #2ecc71;
color: #000000;
} }
/*
label:focus { label:focus {
background-color: #000000; background-color: #000000;
} }
@ -224,7 +226,6 @@ label:focus {
#wireplumber.muted { #wireplumber.muted {
background-color: #f53c3c; background-color: #f53c3c;
} }
#custom-media { #custom-media {
background-color: #66cc99; background-color: #66cc99;
color: #2a5c45; color: #2a5c45;
@ -251,15 +252,16 @@ label:focus {
background-color: #2980b9; background-color: #2980b9;
} }
#tray>.passive { */
-gtk-icon-effect: dim; #tray > .passive {
-gtk-icon-effect: dim;
} }
#tray>.needs-attention { #tray > .needs-attention {
-gtk-icon-effect: highlight; -gtk-icon-effect: highlight;
background-color: #eb4d4b; background-color: #eb4d4b;
} }
/*
#idle_inhibitor { #idle_inhibitor {
background-color: #2d3436; background-color: #2d3436;
} }
@ -285,56 +287,59 @@ label:focus {
#mpd.paused { #mpd.paused {
background-color: #51a37a; background-color: #51a37a;
} }
*/
#language { #language {
/*
background: #00b093; background: #00b093;
color: #740864; color: #740864; */
padding: 0 5px; padding: 0 5px;
margin: 0 5px; margin: 0 5px;
min-width: 16px; min-width: 16px;
} }
#keyboard-state { #keyboard-state {
/*
background: #97e1ad; background: #97e1ad;
color: #000000; color: #000000; */
padding: 0 0px; padding: 0 0px;
margin: 0 5px; margin: 0 5px;
min-width: 16px; min-width: 16px;
} }
#keyboard-state>label { #keyboard-state > label {
padding: 0 5px; padding: 0 5px;
} }
#keyboard-state>label.locked { #keyboard-state > label.locked {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#scratchpad { #scratchpad {
background: rgba(0, 0, 0, 0.2); background: rgba(0, 0, 0, 0.2);
} }
#scratchpad.empty { #scratchpad.empty {
background-color: transparent; background-color: transparent;
} }
#privacy { #privacy {
padding: 0; padding: 0;
} }
#privacy-item { #privacy-item {
padding: 0 5px; padding: 0 5px;
color: white; color: white;
} }
#privacy-item.screenshare { #privacy-item.screenshare {
background-color: #cf5700; background-color: #cf5700;
} }
#privacy-item.audio-in { #privacy-item.audio-in {
background-color: #1ca000; background-color: #1ca000;
} }
#privacy-item.audio-out { #privacy-item.audio-out {
background-color: #0069d4; background-color: #0069d4;
} }

View file

@ -1,6 +1,7 @@
{ {
pkgs, pkgs,
device, lib,
config,
... ...
}: }:
{ {
@ -12,7 +13,7 @@
enable = true; enable = true;
systemd.enable = true; systemd.enable = true;
systemd.target = "graphical-session.target"; systemd.target = "graphical-session.target";
style = ./waybar.css; style = lib.mkAfter (builtins.readFile ./waybar.css);
settings = { settings = {
mainBar = { mainBar = {
layer = "top"; layer = "top";
@ -34,7 +35,7 @@
]; ];
modules-right = [ modules-right = [
"mpris" "mpris"
"image" #"image"
"gamemode" "gamemode"
"temperature" "temperature"
@ -48,7 +49,7 @@
"power-profiles-daemon" "power-profiles-daemon"
"battery" "battery"
"idle_inhibitor" "idle_inhibitor"
#"group/group-power" "group/group-power"
]; ];
"niri/workspaces" = { "niri/workspaces" = {
format = "{icon}"; format = "{icon}";
@ -114,25 +115,7 @@
}; };
cpu = { cpu = {
interval = 1; interval = 1;
format = format = "{usage:3}%@{avg_frequency:4}";
"{usage:3}%@{avg_frequency:4} "
+ (builtins.getAttr device {
"vinzenz-lpt2" =
"{icon0}{icon1}{icon2}{icon3}{icon4}{icon5}{icon6}{icon7}{icon8}{icon9}{icon10}{icon11}{icon12}{icon13}{icon14}{icon15}{icon16}{icon17}{icon18}{icon19}";
"vinzenz-pc2" =
"{icon0}{icon1}{icon2}{icon3}{icon4}{icon5}{icon6}{icon7}{icon8}{icon9}{icon10}{icon11}{icon12}{icon13}{icon14}{icon15}";
})
+ " ";
format-icons = [
"<span color='#69ff94'></span>"
"<span color='#2aa9ff'></span>"
"<span color='#f8f8f2'></span>"
"<span color='#f8f8f2'></span>"
"<span color='#ffffa5'></span>"
"<span color='#ffffa5'></span>"
"<span color='#ff9977'></span>"
"<span color='#dd532e'></span>"
];
}; };
disk = { disk = {
format = "{free}/{total}"; format = "{free}/{total}";
@ -152,25 +135,28 @@
]; ];
}; };
"custom/quit" = { "custom/quit" = {
"format" = "󰗼"; "format" = "󰗼 ";
"tooltip" = false; "tooltip" = false;
"on-click" = "hyprctl dispatch exit"; "on-click" = "niri msg action quit";
min-width = 20; min-width = 20;
}; };
"custom/lock" = { "custom/lock" = {
"format" = "󰍁"; "format" = "󰍁 ";
"tooltip" = false; "tooltip" = false;
"on-click" = "swaylock"; "on-click" = "${lib.getBin config.programs.swaylock.package}/bin/swaylock";
min-width = 20;
}; };
"custom/reboot" = { "custom/reboot" = {
"format" = "󰜉"; "format" = "󰜉 ";
"tooltip" = false; "tooltip" = false;
"on-click" = "reboot"; "on-click" = "systemctl reboot";
min-width = 20;
}; };
"custom/power" = { "custom/power" = {
"format" = ""; "format" = " ";
"tooltip" = false; "tooltip" = false;
"on-click" = "shutdown now"; "on-click" = "systemctl shutdown";
min-width = 20;
}; };
idle_inhibitor = { idle_inhibitor = {
format = "{icon}"; format = "{icon}";
@ -179,24 +165,24 @@
deactivated = ""; deactivated = "";
}; };
}; };
image = #image =
let # let
albumArtScript = pkgs.writeShellScriptBin "album-art.sh" '' # albumArtScript = pkgs.writeShellScriptBin "album-art.sh" ''
#!${pkgs.bash}/bin/bash # #!${pkgs.bash}/bin/bash
album_art=$(playerctl metadata mpris:artUrl) # album_art=$(playerctl metadata mpris:artUrl)
if [[ -z $album_art ]] # if [[ -z $album_art ]]
then # then
exit # exit
fi # fi
curl -s "''${album_art}" --output "/tmp/cover.jpeg" # curl -s "''${album_art}" --output "/tmp/cover.jpeg"
echo "/tmp/cover.jpeg" # echo "/tmp/cover.jpeg"
''; # '';
in # in
{ # {
exec = "${albumArtScript}/bin/album-art.sh"; # exec = "${albumArtScript}/bin/album-art.sh";
interval = 15; # interval = 15;
on-click = "playerctl play-pause"; # on-click = "playerctl play-pause";
}; # };
mpris = { mpris = {
format = "{title} "; format = "{title} ";
tooltip-format = "{player} ({status}) {dynamic}"; tooltip-format = "{player} ({status}) {dynamic}";

View file

@ -1,12 +0,0 @@
{ pkgs, ... }:
{
gtk = {
enable = true;
iconTheme.name = "Adwaita";
cursorTheme.name = "Adwaita";
theme = {
name = "adw-gtk3-dark";
package = pkgs.adw-gtk3;
};
};
}

35
nixosModules/stylix.nix Normal file
View file

@ -0,0 +1,35 @@
{ pkgs, ... }:
{
stylix = {
enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml";
polarity = "dark";
targets = {
gnome.enable = false;
gtk.enable = false;
gtksourceview.enable = false;
fontconfig.enable = true;
};
fonts = {
sansSerif = {
name = "Inter";
package = pkgs.inter;
};
monospace = {
name = "FiraCode Nerd Font Mono";
package = pkgs.nerd-fonts.fira-code;
};
};
icons = {
enable = true;
dark = "Adwaita";
light = "Adwaita";
package = pkgs.adwaita-icon-theme;
};
cursor = {
name = "Adwaita";
size = 16;
package = pkgs.adwaita-icon-theme;
};
};
}