diff --git a/configuration.nix b/configuration.nix index 8b02c76..e6d7a09 100755 --- a/configuration.nix +++ b/configuration.nix @@ -2,6 +2,7 @@ { imports = ([ inputs.sops-nix.nixosModules.sops + ./system-modules/adb.nix ./system-modules/auto-mount.nix ./system-modules/hardware-configuration.nix ./system-modules/fuse.nix @@ -25,6 +26,7 @@ ./system-modules/kanata.nix ./system-modules/kodi.nix ./system-modules/networking.nix + ./system-modules/nixd.nix ./system-modules/nvidia.nix ./system-modules/ollama.nix ./system-modules/qmk.nix diff --git a/flake-modules/rice.nix b/flake-modules/rice.nix index 2641551..30cd6f7 100644 --- a/flake-modules/rice.nix +++ b/flake-modules/rice.nix @@ -2,10 +2,10 @@ pkgs: rec { lib = import ../nxlib/ricelib.nix pkgs.lib; - transparency = 0.9; - rounding = 10; - gap-size = 10; - border-width = 3; + transparency = 0.8; + rounding = 3; + gap-size = 5; + border-width = 2; color = let dark = (-0.5); diff --git a/flake.lock b/flake.lock index 6a10b44..25a9b70 100755 --- a/flake.lock +++ b/flake.lock @@ -4,14 +4,15 @@ "inputs": { "hyprland": [ "hyprland" - ] + ], + "systems": "systems" }, "locked": { - "lastModified": 1726437584, - "narHash": "sha256-lMIFDORuyMYHtUPrRWU5WjGcS+ZMrR4/wBSO+sgUVSY=", + "lastModified": 1728710667, + "narHash": "sha256-9HR9EePhzweUAUPUccByNYxKQzfFAnxfu2BXTLqOLZQ=", "owner": "KZDKM", "repo": "Hyprspace", - "rev": "8f14fa2e10d24742d713f04c278bc7651037b74b", + "rev": "e8406a7708bceb3b5bedf56b67490dbe3d27e6f8", "type": "github" }, "original": { @@ -40,11 +41,11 @@ ] }, "locked": { - "lastModified": 1727261104, - "narHash": "sha256-rxDI7WrxIRV9it9mDCHcLa7xQykf1JloXnoXr5xQ8zI=", + "lastModified": 1728902391, + "narHash": "sha256-44bnoY0nAvbBQ/lVjmn511yL39Sv7SknV0BDxn34P3Q=", "owner": "hyprwm", "repo": "aquamarine", - "rev": "b82fdaff917582a9d568969e15e61b398c71e990", + "rev": "9874e08eec85b5542ca22494e127b0cdce46b786", "type": "github" }, "original": { @@ -87,6 +88,22 @@ } }, "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { "flake": false, "locked": { "lastModified": 1673956053, @@ -107,11 +124,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1726153070, - "narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=", + "lastModified": 1727826117, + "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a", + "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1", "type": "github" }, "original": { @@ -143,7 +160,7 @@ }, "flake-utils": { "inputs": { - "systems": "systems_2" + "systems": "systems_3" }, "locked": { "lastModified": 1681202837, @@ -161,14 +178,14 @@ }, "flake-utils_2": { "inputs": { - "systems": "systems_3" + "systems": "systems_4" }, "locked": { - "lastModified": 1710146030, - "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", + "lastModified": 1726560853, + "narHash": "sha256-X6rJYSESBVr3hBoH0WbKE5KvhPU5bloyZ2L4K60/fPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", + "rev": "c1dfcf08411b08f6b8615f7d8971a2bfa81d5e8a", "type": "github" }, "original": { @@ -178,6 +195,28 @@ } }, "gitignore": { + "inputs": { + "nixpkgs": [ + "hyprland", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { "inputs": { "nixpkgs": [ "lanzaboote", @@ -236,11 +275,11 @@ ] }, "locked": { - "lastModified": 1722623071, - "narHash": "sha256-sLADpVgebpCBFXkA1FlCXtvEPu1tdEsTfqK1hfeHySE=", + "lastModified": 1728669738, + "narHash": "sha256-EDNAU9AYcx8OupUzbTbWE1d3HYdeG0wO6Msg3iL1muk=", "owner": "hyprwm", "repo": "hyprcursor", - "rev": "912d56025f03d41b1ad29510c423757b4379eb1c", + "rev": "0264e698149fcb857a66a53018157b41f8d97bb0", "type": "github" }, "original": { @@ -258,15 +297,16 @@ "hyprutils": "hyprutils", "hyprwayland-scanner": "hyprwayland-scanner", "nixpkgs": "nixpkgs", - "systems": "systems", + "pre-commit-hooks": "pre-commit-hooks", + "systems": "systems_2", "xdph": "xdph" }, "locked": { - "lastModified": 1727451329, - "narHash": "sha256-ysRNFO8X0qE3/+xWcYMY+v94WurNvvdDKlGVLT/aKmA=", + "lastModified": 1729629261, + "narHash": "sha256-IJtor2qFpsZkCm4UMnCHOSosW9GXKZVOm7DILtJJgoM=", "ref": "refs/heads/main", - "rev": "58669fef77ac17ea205ce3570f48e17de736111f", - "revCount": 5272, + "rev": "29997ef4ba8ef0a80390e80199998d1390177454", + "revCount": 5366, "submodules": true, "type": "git", "url": "https://github.com/hyprwm/Hyprland" @@ -294,11 +334,11 @@ ] }, "locked": { - "lastModified": 1727258890, - "narHash": "sha256-/55TVManE/J19LSzXtUNhHUpeouRqZxM08ZdWvJrNoA=", + "lastModified": 1729596320, + "narHash": "sha256-sBPr6O2Ad916f+L7biAjmJVx4TLDITC4joKgeOT47V8=", "owner": "hyprwm", "repo": "hyprland-plugins", - "rev": "4fcb465c9d771f4ae1f451e8d953250d16eead70", + "rev": "4d7f0b5d8b952f31f7d2e29af22ab0a55ca5c219", "type": "github" }, "original": { @@ -319,38 +359,11 @@ ] }, "locked": { - "lastModified": 1727451107, - "narHash": "sha256-qV9savtHwmZUa0eJE294WYJjKPGB2+bJhwByFShsVyo=", + "lastModified": 1728345020, + "narHash": "sha256-xGbkc7U/Roe0/Cv3iKlzijIaFBNguasI31ynL2IlEoM=", "owner": "hyprwm", "repo": "hyprland-protocols", - "rev": "6b3261ee13a6d2b99de79a31d352f6996e35bde3", - "type": "github" - }, - "original": { - "owner": "hyprwm", - "repo": "hyprland-protocols", - "type": "github" - } - }, - "hyprland-protocols_2": { - "inputs": { - "nixpkgs": [ - "hyprland", - "xdph", - "nixpkgs" - ], - "systems": [ - "hyprland", - "xdph", - "systems" - ] - }, - "locked": { - "lastModified": 1721326555, - "narHash": "sha256-zCu4R0CSHEactW9JqYki26gy8h9f6rHmSwj4XJmlHgg=", - "owner": "hyprwm", - "repo": "hyprland-protocols", - "rev": "5a11232266bf1a1f5952d5b179c3f4b2facaaa84", + "rev": "a7c183800e74f337753de186522b9017a07a8cee", "type": "github" }, "original": { @@ -375,11 +388,11 @@ ] }, "locked": { - "lastModified": 1725997860, - "narHash": "sha256-d/rZ/fHR5l1n7PeyLw0StWMNLXVU9c4HFyfskw568so=", + "lastModified": 1728168612, + "narHash": "sha256-AnB1KfiXINmuiW7BALYrKqcjCnsLZPifhb/7BsfPbns=", "owner": "hyprwm", "repo": "hyprlang", - "rev": "dfeb5811dd6485490cce18d6cc1e38a055eea876", + "rev": "f054f2e44d6a0b74607a6bc0f52dba337a3db38e", "type": "github" }, "original": { @@ -420,11 +433,11 @@ ] }, "locked": { - "lastModified": 1727300645, - "narHash": "sha256-OvAtVLaSRPnbXzOwlR1fVqCXR7i+ICRX3aPMCdIiv+c=", + "lastModified": 1728941256, + "narHash": "sha256-WRypmcZ2Bw94lLmcmxYokVOHPJSZ7T06V49QZ4tkZeQ=", "owner": "hyprwm", "repo": "hyprutils", - "rev": "3f5293432b6dc6a99f26aca2eba3876d2660665c", + "rev": "fd4be8b9ca932f7384e454bcd923c5451ef2aa85", "type": "github" }, "original": { @@ -461,7 +474,7 @@ "lanzaboote": { "inputs": { "crane": "crane", - "flake-compat": "flake-compat", + "flake-compat": "flake-compat_2", "flake-parts": "flake-parts_2", "flake-utils": "flake-utils", "nixpkgs": "nixpkgs_3", @@ -485,11 +498,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1727122398, - "narHash": "sha256-o8VBeCWHBxGd4kVMceIayf5GApqTavJbTa44Xcg5Rrk=", + "lastModified": 1728888510, + "narHash": "sha256-nsNdSldaAyu6PE3YUA+YQLqUDJh+gRbBooMMekZJwvI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "30439d93eb8b19861ccbe3e581abf97bdc91b093", + "rev": "a3c0b3b21515f74fd2665903d4ce6bc4dc81c77c", "type": "github" }, "original": { @@ -501,11 +514,11 @@ }, "nixpkgs-latest": { "locked": { - "lastModified": 1727466185, - "narHash": "sha256-03DlXkzcRrsjz/VorCFey0pDxBsnAmerC6LxY32T3DY=", + "lastModified": 1729631290, + "narHash": "sha256-zVL79jvDihxcnq9FKkAoILYWxGmxCw1DGdBnpv/B+3s=", "owner": "nixos", "repo": "nixpkgs", - "rev": "0ca03f3df8c81598656de3d955a4353111ae2e0c", + "rev": "1f9d2cf67508efd9b5e81cdf7af556bbbfe02377", "type": "github" }, "original": { @@ -517,17 +530,33 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1725233747, - "narHash": "sha256-Ss8QWLXdr2JCBPcYChJhz4xJm+h/xjl4G0c0XlP6a74=", + "lastModified": 1727825735, + "narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz" } }, "nixpkgs-stable": { + "locked": { + "lastModified": 1720386169, + "narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "194846768975b7ad2c4988bdb82572c00222c0d7", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-24.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-stable_2": { "locked": { "lastModified": 1678872516, "narHash": "sha256-/E1YwtMtFAu2KUQKV/1+KFuReYPANM2Rzehk84VxVoc=", @@ -543,13 +572,13 @@ "type": "github" } }, - "nixpkgs-stable_2": { + "nixpkgs-stable_3": { "locked": { - "lastModified": 1725762081, - "narHash": "sha256-vNv+aJUW5/YurRy1ocfvs4q/48yVESwlC/yHzjkZSP8=", + "lastModified": 1729357638, + "narHash": "sha256-66RHecx+zohbZwJVEPF7uuwHeqf8rykZTMCTqIrOew4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "dc454045f5b5d814e5862a6d057e7bb5c29edc05", + "rev": "bb8c2cf7ea0dd2e18a52746b2c3a5b0c73b93c22", "type": "github" }, "original": { @@ -561,11 +590,11 @@ }, "nixpkgs-unstable": { "locked": { - "lastModified": 1727348695, - "narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=", + "lastModified": 1729413321, + "narHash": "sha256-I4tuhRpZFa6Fu6dcH9Dlo5LlH17peT79vx1y1SpeKt0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784", + "rev": "1997e4aa514312c1af7e2bda7fad1644e778ff26", "type": "github" }, "original": { @@ -607,11 +636,11 @@ }, "nixpkgs_4": { "locked": { - "lastModified": 1727264057, - "narHash": "sha256-KQPI8CTTnB9CrJ7LrmLC4VWbKZfljEPBXOFGZFRpxao=", + "lastModified": 1729449015, + "narHash": "sha256-Gf04dXB0n4q0A9G5nTGH3zuMGr6jtJppqdeljxua1fo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "759537f06e6999e141588ff1c9be7f3a5c060106", + "rev": "89172919243df199fe237ba0f776c3e3e3d72367", "type": "github" }, "original": { @@ -622,11 +651,11 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1722415718, - "narHash": "sha256-5US0/pgxbMksF92k1+eOa8arJTJiPvsdZj9Dl+vJkM4=", + "lastModified": 1729265718, + "narHash": "sha256-4HQI+6LsO3kpWTYuVGIzhJs1cetFcwT7quWCk/6rqeo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c3392ad349a5227f4a3464dce87bcc5046692fce", + "rev": "ccc0c2126893dd20963580b6478d1a10a4512185", "type": "github" }, "original": { @@ -638,11 +667,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1726937504, - "narHash": "sha256-bvGoiQBvponpZh8ClUcmJ6QnsNKw0EMrCQJARK3bI1c=", + "lastModified": 1727348695, + "narHash": "sha256-J+PeFKSDV+pHL7ukkfpVzCOO7mBSrrpJ3svwBFABbhI=", "owner": "nixos", "repo": "nixpkgs", - "rev": "9357f4f23713673f310988025d9dc261c20e70c6", + "rev": "1925c603f17fc89f4c8f6bf6f631a802ad85d784", "type": "github" }, "original": { @@ -652,6 +681,30 @@ "type": "github" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": "flake-compat", + "gitignore": "gitignore", + "nixpkgs": [ + "hyprland", + "nixpkgs" + ], + "nixpkgs-stable": "nixpkgs-stable" + }, + "locked": { + "lastModified": 1728778939, + "narHash": "sha256-WybK5E3hpGxtCYtBwpRj1E9JoiVxe+8kX83snTNaFHE=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "ff68f91754be6f3427e4986d7949e6273659be1d", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "pre-commit-hooks-nix": { "inputs": { "flake-compat": [ @@ -662,12 +715,12 @@ "lanzaboote", "flake-utils" ], - "gitignore": "gitignore", + "gitignore": "gitignore_2", "nixpkgs": [ "lanzaboote", "nixpkgs" ], - "nixpkgs-stable": "nixpkgs-stable" + "nixpkgs-stable": "nixpkgs-stable_2" }, "locked": { "lastModified": 1681413034, @@ -732,17 +785,16 @@ ] }, "locked": { - "lastModified": 1721441897, - "narHash": "sha256-gYGX9/22tPNeF7dR6bWN5rsrpU4d06GnQNNgZ6ZiXz0=", + "lastModified": 1729391507, + "narHash": "sha256-as0I9xieJUHf7kiK2a9znDsVZQTFWhM1pLivII43Gi0=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "b7996075da11a2d441cfbf4e77c2939ce51506fd", + "rev": "784981a9feeba406de38c1c9a3decf966d853cca", "type": "github" }, "original": { "owner": "oxalica", "repo": "rust-overlay", - "rev": "b7996075da11a2d441cfbf4e77c2939ce51506fd", "type": "github" } }, @@ -751,14 +803,14 @@ "nixpkgs": [ "nixpkgs" ], - "nixpkgs-stable": "nixpkgs-stable_2" + "nixpkgs-stable": "nixpkgs-stable_3" }, "locked": { - "lastModified": 1727423009, - "narHash": "sha256-+4B/dQm2EnORIk0k2wV3aHGaE0WXTBjColXjj7qWh10=", + "lastModified": 1729587807, + "narHash": "sha256-YOc4033a/j1TbdLfkaSOSX2SrvlmuM+enIFoveNTCz4=", "owner": "Mic92", "repo": "sops-nix", - "rev": "127a96f49ddc377be6ba76964411bab11ae27803", + "rev": "26642e8f193f547e72d38cd4c0c4e45b49236d27", "type": "github" }, "original": { @@ -784,16 +836,16 @@ }, "systems_2": { "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "lastModified": 1689347949, + "narHash": "sha256-12tWmuL2zgBgZkdoB6qXZsgJEH9LR3oUgpaQq2RbI80=", "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "repo": "default-linux", + "rev": "31732fcf5e8fea42e59c2488ad31a0e651500f68", "type": "github" }, "original": { "owner": "nix-systems", - "repo": "default", + "repo": "default-linux", "type": "github" } }, @@ -812,9 +864,27 @@ "type": "github" } }, + "systems_4": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "xdph": { "inputs": { - "hyprland-protocols": "hyprland-protocols_2", + "hyprland-protocols": [ + "hyprland", + "hyprland-protocols" + ], "hyprlang": [ "hyprland", "hyprlang" @@ -837,11 +907,11 @@ ] }, "locked": { - "lastModified": 1727109343, - "narHash": "sha256-1PFckA8Im7wMSl26okwOKqBZeCFLD3LvZZFaxswDhbY=", + "lastModified": 1728166987, + "narHash": "sha256-w6dVTguAn9zJ+7aPOhBQgDz8bn6YZ7b56cY8Kg5HJRI=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "4adb6c4c41ee5014bfe608123bfeddb26e5f5cea", + "rev": "fb9c8d665af0588bb087f97d0f673ddf0d501787", "type": "github" }, "original": { @@ -857,11 +927,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1727455294, - "narHash": "sha256-WSSLsNJw4ABnaXjs/lVcCea1d/YF6ko+OZ3TElIEg+E=", + "lastModified": 1729473414, + "narHash": "sha256-ffiEVFCUMnShcSa4hvCbT1EQeu7c2lVOk6OdaxjiUmU=", "owner": "sxyazi", "repo": "yazi", - "rev": "3e4973dbbfa7d34a95b6005822db84db51ebddb7", + "rev": "0e118b5b3a5baacf7fe62971e2bfe2b0ad972bab", "type": "github" }, "original": { @@ -875,11 +945,11 @@ "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1727287465, - "narHash": "sha256-XQAf5M593WmxgaXagtkci/H9DA3jSVx1TJk6F3X5VQo=", + "lastModified": 1727721329, + "narHash": "sha256-QYlWZwUSwrM7BuO+dXclZIwoPvBIuJr6GpFKv9XKFPI=", "owner": "MarceColl", "repo": "zen-browser-flake", - "rev": "96f1b5d80bf7360cb77c9b521f388324f18383a0", + "rev": "e6ab73f405e9a2896cce5956c549a9cc359e5fcc", "type": "github" }, "original": { diff --git a/git-crypt/secrets.nix b/git-crypt/secrets.nix index c3dfb15..c6f0ad4 100755 Binary files a/git-crypt/secrets.nix and b/git-crypt/secrets.nix differ diff --git a/home-modules/discord.nix b/home-modules/discord.nix index e08eec0..6134473 100755 --- a/home-modules/discord.nix +++ b/home-modules/discord.nix @@ -6,7 +6,9 @@ lib.mkIf (host != "NxACE") vesktop ]; - file.".config/vesktop/settings/settings.json".text = /* json */ ''{ + file.".config/vesktop/settings/settings.json".text = let + settingsSyncVersion = "1729179678715"; + in /* json */ ''{ "notifyAboutUpdates": true, "autoUpdate": false, "autoUpdateNotification": true, @@ -188,7 +190,7 @@ lib.mkIf (host != "NxACE") "authenticated": false, "url": "https://api.vencord.dev/", "settingsSync": false, - "settingsSyncVersion": 1725386648445 + "settingsSyncVersion": ${settingsSyncVersion} } } ''; diff --git a/home-modules/email.nix b/home-modules/email.nix index 49b6d58..b2a227c 100755 --- a/home-modules/email.nix +++ b/home-modules/email.nix @@ -143,6 +143,38 @@ lib.mkIf (host != "NxACE") }; }; }; + tuda = with secrets.email.tuda; { + address = "${un}@stud.tu-darmstadt.de"; + userName = tuid; + realName = "Lennart J. Kurzweg"; + imap = { + port = 993; + host = "imap.stud.tu-darmstadt.de"; + }; + smtp = { + port = 465; + host = "smtp.tu-darmstadt.de"; + tls.enable = true; + }; + signature = { + text = '' + Field: MSc. AI/ML + MNr: ${mnr} + TU-ID: ${tuid} + About Me: https://nx2.site/about-me + Contact: https://nx2.site/contact + GPG: https://nx2.site/gpg + ''; + showSignature = "append"; + }; + thunderbird = { + enable = true; + profiles = [ "nx2" ]; + settings = id: { + "mail.server.server_${id}.fcc_folder" = "imap://${un}%40hs-mittweida.de@xc.hs-mittweida.de/Sent"; + }; + }; + }; }; } diff --git a/home-modules/firefox.nix b/home-modules/firefox.nix index df567da..5b9954a 100644 --- a/home-modules/firefox.nix +++ b/home-modules/firefox.nix @@ -1,5 +1,6 @@ # { pkgs-unstable, secrets, user, system, inputs, ...}: { rice, user, ... }: +# browser.tabs.allow_transparent_browser { home.file = with rice.color; let blur = builtins.toString 20; @@ -176,6 +177,25 @@ } } + @-moz-document domain(mynixos.com) { + body, html { + background-color: transparent !important; + } + header, footer { + background-color: rgba(0,0,0,0.5) !important; + border-radius: ${builtins.toString rice.rounding}px; + } + } + + @-moz-document domain(moodle.informatik.tu-darmstadt.de) { + body, html , .main-inner, .main-inner * { + background-color: transparent !important; + } + .bg-primary { + background-color: rgba(${rice.lib.hex-to-rgb-comma-string accent.base}, 0.5) !important! + } + } + @-moz-document domain(nx2.site) { html { background: radial-gradient(rgba(255, 255, 255, 0.8) 5%, transparent 5%) !important; diff --git a/home-modules/git.nix b/home-modules/git.nix index 48f5287..2f14d6a 100755 --- a/home-modules/git.nix +++ b/home-modules/git.nix @@ -53,13 +53,19 @@ windowSize = "normal"; gui.theme = with rice.color; { lightTheme = false; - activeBorderColor = [ border "bold"]; - inactiveBorderColor = [ black.bright ]; - optionsTextColor = [ blue.base ]; - selectedLineBgColor = [ foreground ]; - selectedRangeByColor = [ magenta.bright ]; + activeBorderColor = [ foreground "bold" ]; + inactiveBorderColor = [ border ]; + optionsTextColor = [ tertiary.base ]; + selectedLineBgColor = [ secondary.base ]; + selectedRangeByColor = [ weird.bright ]; showRandomTip = true; animateExplosion = true; + cherryPickedCommitFgColor = [ accent.base ]; # Foreground color of copied commit + cherryPickedCommitBgColor = [ secondary.dark ]; # Background color of copied commit + markedBaseCommitFgColor = [ accent.base ]; # Foreground color of marked base commit (for rebase) + markedBaseCommitBgColor = [ secondary.dark ]; # Background color of marked base commit (for rebase) + unstagedChangesColor = [ negative.base ]; # Color for file with unstaged changes + defaultFgColor = [ "default" ]; # Default text color }; }; }; diff --git a/home-modules/gpg.nix b/home-modules/gpg.nix index 8f1931e..234c761 100644 --- a/home-modules/gpg.nix +++ b/home-modules/gpg.nix @@ -1,10 +1,10 @@ { pkgs, pkgs-unstable, ... }: { # there also is a system module - home.packages = with pkgs; [ + home.packages = (with pkgs; [ gnupg gpg-tui - ] ++ ( with pkgs-unstable; [ + ]) ++ ( with pkgs-unstable; [ pinentry-all ]); diff --git a/home-modules/helix.nix b/home-modules/helix.nix index 035e3c5..56f3477 100644 --- a/home-modules/helix.nix +++ b/home-modules/helix.nix @@ -2,8 +2,9 @@ { home = { packages = with pkgs; [ - nixfmt-classic # nix formater - nil # nix language server + # nixfmt-classic # nix formater + # nil # nix language server + # nixd # specified in nixd.nix python311Packages.python-lsp-server ruff ruff-lsp @@ -13,7 +14,8 @@ marksman # markdown vale-ls # style-checker lsp (needs vale) ltex-ls # Ltex (language tool) - ] ++ (with pkgs-unstable; [ + ] ++ (with pkgs-unstable; [ + bash-language-server helix ]); sessionVariables = { @@ -60,7 +62,7 @@ }; }; keys.normal = { - "C-g" = [":new" ":insert-output lazygit" ":buffer-close!" ":redraw"]; + "C-g" = [ ":new" ":insert-output lazygit" ":buffer-close!" ":redraw" ]; "A-`" = [ "no_op" ]; "`" = [ "no_op" ]; }; @@ -72,10 +74,14 @@ }; languages = { language = [ - # { - # name = "latex"; - # language-servers = ["texlab" "spellchek"]; - # } + { + name = "nix"; + language-servers = [ "nixd" "nil" ]; + } + { + name = "latex"; + language-servers = [ "texlab" "language-tool" ]; + } { name = "markdown"; # language-servers = [ "marksman" "style-check" "language-tool" ]; @@ -118,6 +124,9 @@ } ]; language-server = { + "nixd" = { + command = "nixd"; + }; "style-check" = { command = lib.getExe pkgs.vale-ls; }; @@ -232,7 +241,7 @@ }; "ui.cursor.match" = { # Matching bracket etc. "bg" = green.dark; - "modifiers" = [ "reversed" ]; + "modifiers" = [ ]; }; "ui.gutter" = { "bg" = black.base; diff --git a/home-modules/hyprland.nix b/home-modules/hyprland.nix index 356886a..a2a5ed8 100755 --- a/home-modules/hyprland.nix +++ b/home-modules/hyprland.nix @@ -162,8 +162,8 @@ in { gaps_in = builtins.div rice.gap-size 2; gaps_out = rice.gap-size; border_size = rice.border-width; - "col.active_border" = "rgba(${rice.lib.nohash rice.color.border}ff) rgba(${rice.lib.nohash rice.color.border2}ff) 90deg"; - "col.inactive_border" = "rgba(${rice.lib.nohash rice.color.background}ff) rgba(${rice.lib.nohash rice.color.border2}ff) 90deg"; + "col.active_border" = "rgba(${rice.lib.nohash rice.color.border2}ff) rgba(${rice.lib.nohash rice.color.border}ff) 90deg"; + "col.inactive_border" = "rgba(${rice.lib.nohash rice.color.background}ff) rgba(${rice.lib.nohash rice.color.border}ff) 90deg"; # cursor_inactive_timeout = 10; @@ -228,7 +228,7 @@ in { dwindle = { preserve_split = true; # you probably want this - no_gaps_when_only = false; + no_gaps_when_only = true; }; # master = { @@ -268,7 +268,7 @@ in { "opacity ${transparency}, sent" "opacity ${transparency}, neovide" "opacity ${transparency}, obsidian" - "opacity ${transparency}, zathura" + # "opacity ${transparency}, zathura" # "bordercolor rgba(${rice.lib.nohash rice.color.foreground}ff) rgba(${rice.lib.nohash rice.color.background}${rice.lib.float-to-drune rice.transparency}), Alacritty" # "bordercolor rgba(${rice.lib.nohash rice.color.foreground}ff) rgba(${rice.lib.nohash rice.color.background}${rice.lib.float-to-drune rice.transparency}), Kitty" "opacity ${transparency}, discord" @@ -330,6 +330,7 @@ in { "SUPER, F5, exec, nx_gcal_event force-lookup" "SUPER SHIFT, F5, exec, nx_gcal_event reauthenticate" "SUPER, F6, exec, kitty -e 'htop'" + "SUPER, F7, exec, kitty -e 'nmtui'" ''SUPER, F8, exec, find ~/Pictures/wallpapers/* -type f -not -path "~/Pictures/wallpapers/.git/*" | sort -R | head -n 1 | xargs swww img --transition-type wipe --transition-angle 60 --transition-step 120 --transition-fps 120'' ''SUPER, F9, exec, kitty -e sh -c 'change_colors_json $(swww query | sed -n 1p | sed -e "s-.*image: --g") && nh home switch && firefox /home/${user}/.config/color-pallete.html' '' ''SUPER SHIFT, F9, exec, firefox /home/${user}/.config/color-pallete.html '' diff --git a/home-modules/nixd.nix b/home-modules/nixd.nix new file mode 100644 index 0000000..f2ac5e3 --- /dev/null +++ b/home-modules/nixd.nix @@ -0,0 +1,6 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ + nixd + ]; +} diff --git a/home-modules/ssh.nix b/home-modules/ssh.nix index 8420801..4f1c885 100755 --- a/home-modules/ssh.nix +++ b/home-modules/ssh.nix @@ -4,7 +4,7 @@ packages = with pkgs; [ sshfs ]; file.".ssh/config".text = '' HOST nxace - HostName ${domain} + HostName ssh.${domain} User nx2 Port 50022 @@ -13,18 +13,13 @@ User nx2 Port 50022 - HOST nxrpi - HostName ${domain} - User pi - Port 50023 - HOST nxrpil HostName 192.168.178.31 - User pi - Port 50023 + User nx2 + Port 22 HOST nxgit - HostName git.${domain} + HostName ssh.${domain} User git Port 20022 ''; diff --git a/home-modules/tts.nix b/home-modules/tts.nix new file mode 100755 index 0000000..ebd8755 --- /dev/null +++ b/home-modules/tts.nix @@ -0,0 +1,18 @@ +{ pkgs, lib, user, ... }: +lib.mkIf (user != "tv") +{ + home.packages = with pkgs; [ + (writeShellApplication { + name = "ttss"; + text = let + cmd = inp: "piper -m /home/nx2/tts/en_GB-cori-high.onnx --output_raw ${inp} | ffmpeg -hide_banner -loglevel error -f s16le -ar 22050 -ac 1 -i - -f wav - | mpv -"; + in /* bash */ '' + if [ -p /dev/stdin ]; then + ${cmd " list[int]: hue, lum, sat = c.hls if alter_sat: - new_sat = min(sat**0.5, 1) + new_sat = min((sat**0.5) + 0.4, 1) else: new_sat = sat new_lum = max(lum, 0.5) @@ -123,7 +123,7 @@ if __name__ == "__main__": accent = ensure_color(c=palette[0], alter_sat=False) secondary = ensure_color(c=palette[1], alter_sat=True) tertiary = ensure_color(c=palette[2], alter_sat=False) - weird = alter_hue(ilist=secondary, hue=180) + weird = alter_hue(ilist=accent, hue=80) special = alter_hue(ilist=accent, hue=180) foreground = alter_l(accent, 0.9) background = alter_l(accent, 0.1) diff --git a/home-modules/yazi.nix b/home-modules/yazi.nix index 3909965..fb80725 100755 --- a/home-modules/yazi.nix +++ b/home-modules/yazi.nix @@ -168,12 +168,12 @@ hovered = { underline = true; }; }; which = { - mask = { bg = "#3c3836"; }; - cand = { fg = "#83a598"; }; - rest = { fg = "#928374"; }; - desc = { fg = "#fe8019"; }; + mask = { bg = black.base; }; + cand = { fg = accent.base; }; + rest = { fg = secondary.base; }; + desc = { fg = tertiary.base; }; separator = "  "; - separator_style = { fg = "#504945"; }; + separator_style = { fg = foreground; }; }; help = { on = { fg = "#fe8019"; }; diff --git a/home-modules/zathura.nix b/home-modules/zathura.nix new file mode 100644 index 0000000..2351fe0 --- /dev/null +++ b/home-modules/zathura.nix @@ -0,0 +1,36 @@ +{ pkgs, rice, ... }: +{ + programs.zathura = { + enable = true; + options = with rice.color; { + completion-bg = background; + completion-fg = foreground; + completion-highlight-bg = background; + completion-highlight-fg = accent.base; + default-bg = "rgba(${rice.lib.hex-to-rgb-comma-string background},${builtins.toString rice.transparency})"; + default-fg = foreground; + highlight-active-color = "rgba(${rice.lib.hex-to-rgb-comma-string accent.base},0.5)"; + highlight-color = "rgba(${rice.lib.hex-to-rgb-comma-string secondary.base},0.5)"; + highlight-fg = "rgba(${rice.lib.hex-to-rgb-comma-string secondary.base},0.5)"; + index-active-bg = background; + inputbar-bg = background; + inputbar-fg = foreground; + notification-bg = background; + notification-error-bg = background; + notification-error-fg = foreground; + notification-fg = foreground; + notification-warning-bg = background; + notification-warning-fg = foreground; + recolor = true; + recolor-darkcolor = foreground; + recolor-keephue = true; + recolor-lightcolor = background; + selection-clipboard = "clipboard"; + statusbar-bg = black.base; + statusbar-fg = foreground; + + n-completion-items = 9999999999999; + exec-command = "open"; + }; + }; +} diff --git a/home.nix b/home.nix index c2b0231..ec362ee 100755 --- a/home.nix +++ b/home.nix @@ -1,4 +1,4 @@ -{ pkgs, pkgs-unstable, lib, host, user, inputs, ... }: +{ pkgs, pkgs-unstable, host, user, inputs, ... }: { imports = [ ./home-modules/auto-mount.nix @@ -24,7 +24,9 @@ ./home-modules/latex.nix ./home-modules/mako.nix # ./home-modules/matrix.nix + # ./home-modules/nm.nix ./home-modules/nh.nix + ./home-modules/nixd.nix ./home-modules/nvidia.nix ./home-modules/nx2site.nix # ./home-modules/nx-gcal-event.nix @@ -43,6 +45,7 @@ ./home-modules/sops.nix ./home-modules/ssh.nix ./home-modules/starship.nix + ./home-modules/tts.nix ./home-modules/vale.nix ./home-modules/virt-manager.nix ./home-modules/vscode.nix @@ -50,17 +53,19 @@ ./home-modules/waybar.nix ./home-modules/wlogout.nix ./home-modules/yazi.nix - ./home-modules/zoxide.nix ]; + ./home-modules/zathura.nix + ./home-modules/zoxide.nix + ]; home.username = user; home.homeDirectory = "/home/${user}"; home.stateVersion = "24.05"; home.packages = with pkgs; [ chromium - zathura + # zathura xfce.thunar - spotify + # spotify spicetify-cli swww playerctl @@ -75,6 +80,7 @@ sssnake pipes dig screen + reflex gnumake cmake @@ -86,12 +92,14 @@ wl-clipboard xclip xournal - + ghostscript + inputs.zen-browser.packages."${system}".default ] ++ (with pkgs-unstable; [ obsidian firefox + spotify ]) ++ (if host != "NxACE" then (with pkgs; [ signal-desktop zoom-us diff --git a/system-modules/adb.nix b/system-modules/adb.nix new file mode 100644 index 0000000..d19df86 --- /dev/null +++ b/system-modules/adb.nix @@ -0,0 +1,7 @@ +{ host, lib, ... }: +lib.mkIf (host != "NxACE") +{ + programs.adb = { + enable = true; + }; +} diff --git a/system-modules/fcitx5.nix b/system-modules/fcitx5.nix index d254a9a..48fe697 100644 --- a/system-modules/fcitx5.nix +++ b/system-modules/fcitx5.nix @@ -1,28 +1,87 @@ -{ pkgs-unstable, ... }: +{ pkgs, pkgs-unstable, ... }: { + # i18n.inputMethod = { + # type = "fcitx5"; + # enable = true; + # fcitx5.addons = with pkgs; [ + # fcitx5-gtk # alternatively, kdePackages.fcitx5-qt + # fcitx5-chinese-addons # table input method support + # fcitx5-nord # a color theme + # ]; + # }; i18n.inputMethod = { enabled = "fcitx5"; - # type = "fcitx5"; # for later than 24.05 - # enable = true; - fcitx5 = { - waylandFrontend = true; - addons = with pkgs-unstable; [ - rime-data - fcitx5-rime - fcitx5-gtk - fcitx5-chinese-addons - fcitx5-catppuccin - ]; - }; - }; - services.xserver.desktopManager.runXdgAutostartIfNone = true; - environment.variables = { - GLFW_IM_MODULE = "fcitx"; - GTK_IM_MODULE = "fcitx"; - INPUT_METHOD = "fcitx"; - XMODIFIERS = "@im=fcitx"; - IMSETTINGS_MODULE = "fcitx"; - QT_IM_MODULE = "fcitx"; - SDL_IM_MODULE = "fcitx"; + fcitx5.waylandFrontend = true; + fcitx5.addons = with pkgs; [ + fcitx5-gtk # alternatively, kdePackages.fcitx5-qt + fcitx5-chinese-addons # table input method support + fcitx5-nord # a color theme + ]; }; + # i18n.inputMethod = { + # enabled = "fcitx5"; + # ignoreUserConfig = true; + # waylandFrontend = true; + # fcitx5 = { + # addons = with pkgs-unstable; [ + # rime-data + # fcitx5-rime + + # # Chinese + # fcitx5-chinese-addons + # fcitx5-table-extra + # fcitx5-pinyin-moegirl + # fcitx5-pinyin-zhwiki + + # # Japanese + # # fcitx5-mozc + # ]; + # settings = { + # globalOptions = { + # Hotkey = { + # # Enumerate when press trigger key repeatedly + # EnumerateWithTriggerKeys = "True"; + # # Skip first input method while enumerating + # EnumerateSkipFirst = "False"; + # }; + # "Hotkey/EnumerateForwardKeys" = { "0" = "Control+space"; }; + # "Hotkey/EnumerateBackwardKeys" = { "0" = "Control+Shift+space"; }; + # "Hotkey/PrevPage" = { "0" = "Up"; }; + # "Hotkey/NextPage" = { "0" = "Down"; }; + # "Hotkey/PrevCandidate" = { "0" = "Shift+Tab"; }; + # "Hotkey/NextCandidate" = { "0" = "Tab"; }; + # Behavior = { + # ActiveByDefault = "False"; # Active By Default + # ShareInputState = "No"; # Share Input State + # PreeditEnabledByDefault = "True"; # Show preedit in application + # ShowInputMethodInformation = "True"; # Show Input Method Information when switch input method + # showInputMethodInformationWhenFocusIn = "False"; # Show Input Method Information when changing focus + # CompactInputMethodInformation = "True"; # Show compact input method information + # ShowFirstInputMethodInformation = "True"; # Show first input method information + # DefaultPageSize = "5"; # Default page size + # OverrideXkbOption = "False"; # Override Xkb Option + # PreloadInputMethod = "True"; # Preload input method to be used by default + # }; + # }; + # inputMethod = { + # "Groups/0" = { + # "Name" = "Default"; + # "Default Layout" = "us"; + # "DefaultIM" = "mozc"; + # }; + # "Groups/0/Items/0" = { + # "Name" = "keyboard-us"; + # "Layout" = null; + # }; + # "Groups/0/Items/1" = { + # "Name" = "mozc"; + # "Layout" = null; + # }; + # "GroupOrder" = { + # "0" = "Default"; + # }; + # }; + # }; + # }; + # }; } diff --git a/system-modules/fuse.nix b/system-modules/fuse.nix index 3ca7c52..2cd4b24 100755 --- a/system-modules/fuse.nix +++ b/system-modules/fuse.nix @@ -1,7 +1,12 @@ { config, pkgs, ...}: { - environment.systemPackages = with pkgs; [ - jmtpfs - ]; -} \ No newline at end of file + environment = { + systemPackages = with pkgs; [ + jmtpfs + simple-mtpfs + android-file-transfer + ]; + }; + programs.fuse.userAllowOther = true; +} diff --git a/system-modules/hardware-configuration.nix b/system-modules/hardware-configuration.nix index c484495..4e01f1b 100755 --- a/system-modules/hardware-configuration.nix +++ b/system-modules/hardware-configuration.nix @@ -16,7 +16,7 @@ fileSystems = if host != "NxACE" then { "/" = { device = "/dev/disk/by-label/nixos"; fsType = "ext4"; }; "/boot" = { device = "/dev/disk/by-label/EFI"; fsType = "vfat"; }; - "/home/${user}/shared" = { device = "/dev/disk/by-label/shared"; fsType = "ntfs"; options = [ "uid:1000" "gid:100" ]; }; + "/home/${user}/shared" = { device = "/dev/disk/by-label/shared"; fsType = "ntfs"; options = [ "uid=1000" "gid=100" ]; }; } else { "/" = { device = "/dev/disk/by-label/nixos"; fsType = "ext4"; }; "/boot" = { device = "/dev/disk/by-label/EFI"; fsType = "vfat"; }; diff --git a/system-modules/networking.nix b/system-modules/networking.nix index e52d9ef..5acee63 100755 --- a/system-modules/networking.nix +++ b/system-modules/networking.nix @@ -1,17 +1,23 @@ - -{ config, pkgs, host, ... }: -let -in +{ pkgs, lib, host, secrets, ... }: { - networking.nameservers = [ - "1.1.1.1" - "8.8.8.8" - ]; - - networking.hostName = host; + # sops.secrets = { + # "wireless-networking.env" = {}; + # }; - networking.networkmanager = { - enable = true; + networking = { + nameservers = [ + "1.1.1.1" + "8.8.8.8" + ]; + hostName = host; + networkmanager = { + enable = true; + }; + enableIPv6 = false; + firewall.allowedTCPPorts = [ + 80 + 443 + ]; }; networking.enableIPv6 = true; diff --git a/system-modules/nixd.nix b/system-modules/nixd.nix new file mode 100644 index 0000000..bd33819 --- /dev/null +++ b/system-modules/nixd.nix @@ -0,0 +1,8 @@ +{ inputs, ... }: +{ + nix.nixPath = [ + "nixpkgs=${inputs.nixpkgs}" + "nixpkgs-unstable=${inputs.nixpkgs-unstable}" + "nixpkgs-latest=${inputs.nixpkgs-latest}" + ]; +} diff --git a/system-modules/users.nix b/system-modules/users.nix index a065b4f..8e1168e 100755 --- a/system-modules/users.nix +++ b/system-modules/users.nix @@ -1,11 +1,11 @@ -{ pkgs, lib, host, user, ... }: +{ pkgs, user, ... }: { users.defaultUserShell = pkgs.bash; # if interactive, itll switch to fish users.users."${user}" = { isNormalUser = true; - extraGroups = [ "networkmanager" "wheel" "audio" "video" "docker" "libvirtd" "uinput" "input" "ydotool" "acme" "nginx" ]; + extraGroups = [ "networkmanager" "wheel" "audio" "video" "docker" "libvirtd" "uinput" "input" "ydotool" "acme" "nginx" "adbusers" ]; useDefaultShell = true; openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAID1RPCcS8DtIf75a2FEW4d8X6WTVeLlmretoLqppvZlJ" # From [A] GPG Sub Key