Compare commits

..

16 Commits

Author SHA1 Message Date
Jan-Bulthuis 6364d8afa0 Updated CSD logic 2025-04-16 13:06:16 +02:00
Jan-Bulthuis c894f00eb0 Added flatpak options 2025-04-16 13:06:09 +02:00
Jan-Bulthuis 1300acd7ce Remove wpa_supplicant_gui 2025-04-16 13:05:40 +02:00
Jan-Bulthuis 5b1022a52b Update 2025-04-16 13:05:20 +02:00
Jan-Bulthuis b9c7a4c4c7 Fixed firefox searchengine name 2025-04-16 13:05:10 +02:00
Jan-Bulthuis cdedce8d5b Renamed wpaperd 2025-04-16 13:04:20 +02:00
Jan-Bulthuis 3f6fcdc283 Fixed wireguard issue with firewall 2025-04-16 13:04:00 +02:00
Jan-Bulthuis 8738fa3066 Fixed vscode customization 2025-04-16 13:03:45 +02:00
Jan-Bulthuis 9c9fe6b18a Added gnome environment back in, fixed es-de 2025-04-16 13:02:27 +02:00
Jan-Bulthuis 885940fd69 Removed unneeded hash 2025-04-16 13:01:24 +02:00
Jan-Bulthuis f41cd9c922 Added battery state to GNOME 2025-04-16 13:01:15 +02:00
Jan-Bulthuis 2f069029e9 Moved to beta nvidia driver 2025-04-16 13:00:52 +02:00
Jan-Bulthuis bebe6eaeeb Enabled grdp and printing 2025-04-16 13:00:40 +02:00
Jan-Bulthuis 7b92e0d364 Added Jack support to pipewire 2025-04-16 13:00:30 +02:00
Jan-Bulthuis 24519ceea7 Added printing and grdp modules 2025-04-16 13:00:18 +02:00
Jan-Bulthuis a0cb0d1f44 Set default background 2025-02-27 11:18:09 +01:00
30 changed files with 508 additions and 439 deletions

View File

@ -67,35 +67,14 @@
"type": "github"
}
},
"devshell": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1735644329,
"narHash": "sha256-tO3HrHriyLvipc4xr+Ewtdlo7wM1OjXNjlWRgmM7peY=",
"owner": "numtide",
"repo": "devshell",
"rev": "f7795ede5b02664b57035b3b757876703e2c3eac",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "devshell",
"type": "github"
}
},
"firefox-gnome-theme": {
"flake": false,
"locked": {
"lastModified": 1736899990,
"narHash": "sha256-S79Hqn2EtSxU4kp99t8tRschSifWD4p/51++0xNWUxw=",
"lastModified": 1741628778,
"narHash": "sha256-RsvHGNTmO2e/eVfgYK7g+eYEdwwh7SbZa+gZkT24MEA=",
"owner": "rafaelmardojai",
"repo": "firefox-gnome-theme",
"rev": "91ca1f82d717b02ceb03a3f423cbe8082ebbb26d",
"rev": "5a81d390bb64afd4e81221749ec4bffcbeb5fa80",
"type": "github"
},
"original": {
@ -137,21 +116,6 @@
}
},
"flake-compat_3": {
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
"revCount": 69,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-compat_4": {
"flake": false,
"locked": {
"lastModified": 1733328505,
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
@ -174,11 +138,11 @@
]
},
"locked": {
"lastModified": 1738453229,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
"lastModified": 1741352980,
"narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
"rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
"type": "github"
},
"original": {
@ -208,6 +172,28 @@
"type": "github"
}
},
"flake-parts_3": {
"inputs": {
"nixpkgs-lib": [
"stylix",
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": {
"inputs": {
"systems": "systems"
@ -284,47 +270,21 @@
"git-hooks": {
"inputs": {
"flake-compat": [
"nixvim",
"stylix",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1737465171,
"narHash": "sha256-R10v2hoJRLq8jcL4syVFag7nIGE7m13qO48wRIukWNg=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "9364dc02281ce2d37a1f55b6e51f7c0f65a75f17",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"git-hooks_2": {
"inputs": {
"flake-compat": [
"stylix",
"flake-compat"
],
"gitignore": "gitignore_2",
"nixpkgs": [
"stylix",
"nixpkgs"
]
},
"locked": {
"lastModified": 1735882644,
"narHash": "sha256-3FZAG+pGt3OElQjesCAWeMkQ7C/nB1oTHLRQ8ceP110=",
"lastModified": 1741379162,
"narHash": "sha256-srpAbmJapkaqGRE3ytf3bj4XshspVR5964OX5LfjDWc=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
"rev": "b5a62751225b2f62ff3147d0a334055ebadcd5cc",
"type": "github"
},
"original": {
@ -334,28 +294,6 @@
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"nixvim",
"git-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": [
"stylix",
@ -401,11 +339,11 @@
]
},
"locked": {
"lastModified": 1739790043,
"narHash": "sha256-4gK4zdNDQ4PyGFs7B6zp9iPIBy9E+bVJiZ0XAmncvgQ=",
"lastModified": 1742701794,
"narHash": "sha256-bJIFFa6/4vBGoNmCwjO5TCIbiveV2BRxVLqHcxk5jXw=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "c1ea92cdfb85bd7b0995b550581d9fd1c3370bf9",
"rev": "9172a6f956f7e0f7810861b9b1146f1c43d9abcb",
"type": "github"
},
"original": {
@ -415,27 +353,6 @@
}
},
"home-manager_2": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1738878603,
"narHash": "sha256-fmhq8B3MvQLawLbMO+LWLcdC2ftLMmwSk+P29icJ3tE=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "433799271274c9f2ab520a49527ebfe2992dcfbd",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"home-manager_3": {
"inputs": {
"nixpkgs": [
"stylix",
@ -443,11 +360,11 @@
]
},
"locked": {
"lastModified": 1737630279,
"narHash": "sha256-wJQCxyMRc4P26zDrHmZiRD5bbfcJpqPG3e2djdGG3pk=",
"lastModified": 1741635347,
"narHash": "sha256-2aYfV44h18alHXopyfL4D9GsnpE5XlSVkp4MGe586VU=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "0db5c8bfcce78583ebbde0b2abbc95ad93445f7c",
"rev": "7fb8678716c158642ac42f9ff7a18c0800fea551",
"type": "github"
},
"original": {
@ -484,27 +401,6 @@
"type": "github"
}
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1738743987,
"narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "ae406c04577ff9a64087018c79b4fdc02468c87c",
"type": "github"
},
"original": {
"owner": "lnl7",
"repo": "nix-darwin",
"type": "github"
}
},
"nix-matlab": {
"inputs": {
"flake-compat": "flake-compat",
@ -513,11 +409,11 @@
]
},
"locked": {
"lastModified": 1739718118,
"narHash": "sha256-ZRO+3o8g3gjgA0gIfp08ygy++IhQsmfU7afxnJwEV6o=",
"lastModified": 1742655717,
"narHash": "sha256-p1815USOcTj+kPSw2XkK8eWG19NZXpCST9vYDVnQ144=",
"owner": "doronbehar",
"repo": "nix-matlab",
"rev": "b0a43e3c5cac996d646596a338e38632936d96bc",
"rev": "ddc7d6354cf54880c6d0748fdf7ad370a748f562",
"type": "gitlab"
},
"original": {
@ -533,11 +429,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1740267801,
"narHash": "sha256-ckbjP4UON7juVdSsYDpu9vFGRtdS2JvUDRHKq0SQwuA=",
"lastModified": 1742641703,
"narHash": "sha256-hoN8blvJco8OSZmPj8izwQaQUdydVi+5FO4/nWd1MNU=",
"owner": "lilyinstarlight",
"repo": "nixos-cosmic",
"rev": "80952def5b97be37f69a9774163911b47980623a",
"rev": "216557e6cd229dbe7d73a497c227824a3c579cd7",
"type": "github"
},
"original": {
@ -548,11 +444,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1739866667,
"narHash": "sha256-EO1ygNKZlsAC9avfcwHkKGMsmipUk1Uc0TbrEZpkn64=",
"lastModified": 1742422364,
"narHash": "sha256-mNqIplmEohk5jRkqYqG19GA8MbQ/D4gQSK0Mu4LvfRQ=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "73cf49b8ad837ade2de76f87eb53fc85ed5d4680",
"rev": "a84ebe20c6bc2ecbcfb000a50776219f48d134cc",
"type": "github"
},
"original": {
@ -564,11 +460,11 @@
},
"nixpkgs-stable": {
"locked": {
"lastModified": 1739923778,
"narHash": "sha256-BqUY8tz0AQ4to2Z4+uaKczh81zsGZSYxjgvtw+fvIfM=",
"lastModified": 1742512142,
"narHash": "sha256-8XfURTDxOm6+33swQJu/hx6xw1Tznl8vJJN5HwVqckg=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "36864ed72f234b9540da4cf7a0c49e351d30d3f1",
"rev": "7105ae3957700a9646cc4b766f5815b23ed0c682",
"type": "github"
},
"original": {
@ -580,11 +476,11 @@
},
"nixpkgs_2": {
"locked": {
"lastModified": 1739698114,
"narHash": "sha256-8S9n69Dnpg8DhfFlP0YvMGmSOY2X4kImGSPWXYNpaHM=",
"lastModified": 1742606399,
"narHash": "sha256-NAxwF5cjgh8o5aylhePXWNQETCWYaTpNvdO2bMfINpQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b1b43d32be000928cc71250ed77f4a0a5f2bc23a",
"rev": "0740f6f238767d4caf9afe774d3e88105766dfc6",
"type": "github"
},
"original": {
@ -596,11 +492,11 @@
},
"nixpkgs_3": {
"locked": {
"lastModified": 1738797219,
"narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=",
"lastModified": 1742578646,
"narHash": "sha256-GiQ40ndXRnmmbDZvuv762vS+gew1uDpFwOfgJ8tLiEs=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "1da52dd49a127ad74486b135898da2cef8c62665",
"rev": "94c4dbe77c0740ebba36c173672ca15a7926c993",
"type": "github"
},
"original": {
@ -612,11 +508,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1736798957,
"narHash": "sha256-qwpCtZhSsSNQtK4xYGzMiyEDhkNzOCz/Vfu4oL2ETsQ=",
"lastModified": 1741513245,
"narHash": "sha256-7rTAMNTY1xoBwz0h7ZMtEcd8LELk9R5TzBPoHuhNSCk=",
"owner": "NixOS",
"repo": "nixpkgs",
"rev": "9abb87b552b7f55ac8916b6fc9e5cb486656a2f3",
"rev": "e3e32b642a31e6714ec1b712de8c91a3352ce7e1",
"type": "github"
},
"original": {
@ -628,22 +524,16 @@
},
"nixvim": {
"inputs": {
"devshell": "devshell",
"flake-compat": "flake-compat_3",
"flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"home-manager": "home-manager_2",
"nix-darwin": "nix-darwin",
"nixpkgs": "nixpkgs_3",
"nuschtosSearch": "nuschtosSearch",
"treefmt-nix": "treefmt-nix"
"nuschtosSearch": "nuschtosSearch"
},
"locked": {
"lastModified": 1739751913,
"narHash": "sha256-H72wNdLOl9CzfimXjDdKWnV0Mr8lpVF4m3HZ2m+fuck=",
"lastModified": 1742645604,
"narHash": "sha256-4LB/Gx1p/ml79xZfgTvOYvMXXnj5vrFfDYcWIndgXP0=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "3a66c8a33001d8bd79388c6b15eb1039f43f4192",
"rev": "3d84c137eab329ec1a6d4c4b0a067bfa8eea0bb5",
"type": "github"
},
"original": {
@ -658,14 +548,37 @@
"nixpkgs": [
"nixpkgs"
],
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1742725572,
"narHash": "sha256-Lu1kVuH7MzOrCqR4K7XiXd5B8iCTSFzWQW/QfmHnoeI=",
"owner": "nix-community",
"repo": "NUR",
"rev": "ddb77c54f257566ff34a0ba8c758a7b3cc0d76bf",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "NUR",
"type": "github"
}
},
"nur_2": {
"inputs": {
"flake-parts": "flake-parts_3",
"nixpkgs": [
"stylix",
"nixpkgs"
],
"treefmt-nix": "treefmt-nix_2"
},
"locked": {
"lastModified": 1739792859,
"narHash": "sha256-Em/PKyBgW5xWjEE7u2P+aAeH3TrQpPyHJdYY5zHvv64=",
"lastModified": 1741693509,
"narHash": "sha256-emkxnsZstiJWmGACimyAYqIKz2Qz5We5h1oBVDyQjLw=",
"owner": "nix-community",
"repo": "NUR",
"rev": "2320814fdba2500856c915569f39cc90ea562685",
"rev": "5479646b2574837f1899da78bdf9a48b75a9fb27",
"type": "github"
},
"original": {
@ -684,11 +597,11 @@
]
},
"locked": {
"lastModified": 1738508923,
"narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=",
"lastModified": 1741886583,
"narHash": "sha256-sScfYKtxp3CYv5fJcHQDvQjqBL+tPNQqS9yf9Putd+s=",
"owner": "NuschtOS",
"repo": "search",
"rev": "86e2038290859006e05ca7201425ea5b5de4aecb",
"rev": "2974bc5fa3441a319fba943f3ca41f7dcd1a1467",
"type": "github"
},
"original": {
@ -716,12 +629,13 @@
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
"flake-compat": "flake-compat_4",
"flake-compat": "flake-compat_3",
"flake-utils": "flake-utils_3",
"git-hooks": "git-hooks_2",
"git-hooks": "git-hooks",
"gnome-shell": "gnome-shell",
"home-manager": "home-manager_3",
"home-manager": "home-manager_2",
"nixpkgs": "nixpkgs_4",
"nur": "nur_2",
"systems": "systems_3",
"tinted-foot": "tinted-foot",
"tinted-kitty": "tinted-kitty",
@ -730,11 +644,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1739375014,
"narHash": "sha256-0fNbvZ1Dod4rDIfwGnC7CzJ3wRFSF1v5AvNCmNkVgXo=",
"lastModified": 1742591463,
"narHash": "sha256-CguaHULcm4RuIGN+i4u80dYZujFgZaeOTiShFxCwFhw=",
"owner": "danth",
"repo": "stylix",
"rev": "e86de61bb8f5f2b6459d0be3e3291ad16db4b777",
"rev": "113643f332e1f70d90991722f8c4e5a0ace6fd06",
"type": "github"
},
"original": {
@ -825,11 +739,11 @@
"tinted-schemes": {
"flake": false,
"locked": {
"lastModified": 1737565458,
"narHash": "sha256-y+9cvOA6BLKT0WfebDsyUpUa/YxKow9hTjBp6HpQv68=",
"lastModified": 1741468895,
"narHash": "sha256-YKM1RJbL68Yp2vESBqeZQBjTETXo8mCTTzLZyckCfZk=",
"owner": "tinted-theming",
"repo": "schemes",
"rev": "ae31625ba47aeaa4bf6a98cf11a8d4886f9463d9",
"rev": "47c8c7726e98069cade5827e5fb2bfee02ce6991",
"type": "github"
},
"original": {
@ -841,11 +755,11 @@
"tinted-tmux": {
"flake": false,
"locked": {
"lastModified": 1735737224,
"narHash": "sha256-FO2hRBkZsjlIRqzNHCPc/52yxg11kHGA8MEtSun9RwE=",
"lastModified": 1740877430,
"narHash": "sha256-zWcCXgdC4/owfH/eEXx26y5BLzTrefjtSLFHWVD5KxU=",
"owner": "tinted-theming",
"repo": "tinted-tmux",
"rev": "aead506a9930c717ebf81cc83a2126e9ca08fa64",
"rev": "d48ee86394cbe45b112ba23ab63e33656090edb4",
"type": "github"
},
"original": {
@ -873,16 +787,16 @@
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nixvim",
"nur",
"nixpkgs"
]
},
"locked": {
"lastModified": 1738680491,
"narHash": "sha256-8X7tR3kFGkE7WEF5EXVkt4apgaN85oHZdoTGutCFs6I=",
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "64dbb922d51a42c0ced6a7668ca008dded61c483",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
@ -894,6 +808,7 @@
"treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"stylix",
"nur",
"nixpkgs"
]

View File

@ -19,6 +19,8 @@
bluetooth.enable = true;
power-saving.enable = false;
networkmanager.enable = true;
grdp.enable = true;
printing.enable = true;
};
# Hardware configuration

View File

@ -77,6 +77,7 @@ in
networking.firewall.enable = true;
programs.dconf.enable = true;
services.libinput.enable = true;
services.upower.enable = true; # For battery percentage in gnome
modules.unfree.enable = true;
modules.unfree.allowedPackages = [
"nvidia-x11"

View File

@ -17,6 +17,7 @@ with lib;
./brightnessctl/default.nix
./fontconfig/default.nix
./graphics/default.nix
./grdp/default.nix
./greeter/greetd/default.nix
./greeter/greetd/nixgreety.nix
./greeter/greetd/tuigreet.nix
@ -25,6 +26,7 @@ with lib;
./neovim/default.nix
./networkmanager/default.nix
./power-saving/default.nix
./printing/default.nix
./sound/pipewire.nix
./users/default.nix
./unfree/default.nix

View File

@ -18,7 +18,7 @@
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
package = config.boot.kernelPackages.nvidiaPackages.beta;
prime = {
intelBusId = "PCI:0:2:0";
nvidiaBusId = "PCI:1:0:0";

27
modules/grdp/default.nix Normal file
View File

@ -0,0 +1,27 @@
{ config, lib, ... }:
with lib;
{
options.modules.grdp = {
enable = mkEnableOption "grdp";
};
config = mkIf config.modules.grdp.enable {
services.gnome.gnome-remote-desktop.enable = true;
systemd.services."gnome-remote-desktop".wantedBy = [ "graphical.target" ];
networking.firewall = {
allowedTCPPorts = [ 3389 ];
allowedUDPPorts = [ 3389 ];
};
# programs.dconf.profiles.user.databases = [
# {
# settings = with lib.gvariant; {
# "org/gnome/desktop/remote-desktop/rdp" = {
# enable = true;
# view-only = false;
# };
# };
# }
# ];
};
}

View File

@ -20,6 +20,10 @@ in
enable = true;
wifi.powersave = true;
};
firewall = {
# Fix for wireguard
checkReversePath = false;
};
};
};
}

View File

@ -0,0 +1,27 @@
{
lib,
config,
...
}:
with lib;
let
cfg = config.modules.printing;
in
{
options.modules.printing = {
enable = mkEnableOption "printing";
};
config = mkIf cfg.enable {
services.printing = {
enable = true;
# drivers = with pkgs; [];
};
services.avahi = {
enable = true;
nssmdns4 = true;
openFirewall = true;
};
};
}

View File

@ -19,6 +19,7 @@ in
enable = true;
alsa.enable = true;
pulse.enable = true;
jack.enable = true;
};
};
}

View File

@ -9,7 +9,6 @@ pkgs.stdenv.mkDerivation rec {
src = pkgs.fetchurl {
url = "mirror://sourceforge/wqy/${pname}-${version}.tar.gz";
# hash = "sha256-r2Vf7ftJCqu7jOc2AqCKaoR/r8eNw2P/OQGqbDOEyl0=";
hash = "sha256-0uvwkRUbvJ0remTnlP8dElRjaBVd6iukNYBTE/CTO7s=";
};

View File

@ -46,11 +46,10 @@ in
};
profiles.nixos = {
search.default = "DuckDuckGo";
search.default = "ddg";
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
# tridactyl # TODO: Add toggle for this extension?
];
# Theming

View File

@ -20,7 +20,7 @@ in
home.packages = with pkgs; [
pulsemixer
playerctl
wpa_supplicant_gui # TODO: Move
networkmanagerapplet # TODO: Move
];
modules.desktop.reloadScript = ''
@ -43,6 +43,7 @@ in
"mpris"
];
modules-right = [
"tray"
"bluetooth"
"network"
"pulseaudio"

View File

@ -13,7 +13,6 @@ in
options.desktop.theming.background = {
path = mkOption {
type = types.str;
# default = "minimal/a_cat_in_a_cup.png";
default = "minimal/a_flower_on_a_dark_background.png";
description = "Path to the background image.";
};
@ -108,7 +107,7 @@ in
};
in
{
programs.wpaperd = {
services.wpaperd = {
enable = true;
settings.default = {
path = "${background-themed}/";

View File

@ -273,16 +273,18 @@ in
# Configure gtk theme
gtk =
# disableCSD = ''
# headerbar.default-decoration {
# margin-bottom: 50px;
# margin-top: -100px;
# }
# window.csd,
# window.csd decoration {
# box-shadow: none;
# }
# '';
let
disableCSD = ''
headerbar.default-decoration {
margin-bottom: 50px;
margin-top: -100px;
}
window.csd,
window.csd decoration {
box-shadow: none;
}
'';
in
{
enable = true;
@ -291,6 +293,9 @@ in
package = pkgs.gnome-themes-extra;
};
# TODO: Toggles
gtk3.extraCss = disableCSD;
gtk4.extraCss = disableCSD;
};
# TODO: This should just straight up not be here
@ -324,7 +329,10 @@ in
foot.enable = true;
nixvim.enable = true;
qutebrowser.enable = true;
vscode.enable = true;
vscode = {
enable = true;
profileNames = [ "NixOS" ];
};
zathura.enable = true;
};

View File

@ -33,14 +33,17 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
ms-vscode.cpptools
ms-vscode.cmake-tools
ms-vscode.cpptools-extension-pack
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
ms-vscode.cpptools
ms-vscode.cmake-tools
ms-vscode.cpptools-extension-pack
];
userSettings = {
# "C_Cpp.clang_format_fallbackStyle" = "{ BasedOnStyle: Google, IndentWidth: 4 }";
userSettings = {
# TODO: Add setting to set the compiler, it currently needs to be set for each workspace individually
# "C_Cpp.clang_format_fallbackStyle" = "{ BasedOnStyle: Google, IndentWidth: 4 }";
};
};
};

View File

@ -23,14 +23,16 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
haskell.haskell
justusadam.language-haskell
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
haskell.haskell
justusadam.language-haskell
];
userSettings = {
"[haskell]" = { };
# "haskell.formattingProvider" = "fourmolu";
userSettings = {
"[haskell]" = { };
# "haskell.formattingProvider" = "fourmolu";
};
};
};

View File

@ -23,11 +23,13 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
bradlc.vscode-tailwindcss
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
bradlc.vscode-tailwindcss
];
userSettings = { };
userSettings = { };
};
};
# Neovim configuration

View File

@ -28,12 +28,14 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
ms-toolsai.jupyter
ms-toolsai.jupyter-renderers
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
ms-toolsai.jupyter
ms-toolsai.jupyter-renderers
];
userSettings = { };
userSettings = { };
};
};
# Neovim configuration

View File

@ -32,18 +32,20 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ];
profiles.default = {
extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ];
userSettings = {
"[nix]" = {
"editor.tabSize" = 2;
};
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nixd";
"nix.serverSettings" = {
nixd = {
formatting = {
command = [ "nixfmt" ];
userSettings = {
"[nix]" = {
"editor.tabSize" = 2;
};
"nix.enableLanguageServer" = true;
"nix.serverPath" = "nixd";
"nix.serverSettings" = {
nixd = {
formatting = {
command = [ "nixfmt" ];
};
};
};
};

View File

@ -34,17 +34,19 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
ms-python.python
ms-python.debugpy
ms-python.vscode-pylance
ms-python.black-formatter
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
ms-python.python
ms-python.debugpy
ms-python.vscode-pylance
ms-python.black-formatter
];
userSettings = {
"python.defaultInterpreterPath" = "\${env:PYTHONINTERPRETER}";
"[python]" = {
"editor.defaultFormatter" = "ms-python.black-formatter";
userSettings = {
"python.defaultInterpreterPath" = "\${env:PYTHONINTERPRETER}";
"[python]" = {
"editor.defaultFormatter" = "ms-python.black-formatter";
};
};
};
};

View File

@ -31,19 +31,21 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
rust-lang.rust-analyzer
vadimcn.vscode-lldb
tamasfe.even-better-toml
serayuzgur.crates
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
rust-lang.rust-analyzer
vadimcn.vscode-lldb
tamasfe.even-better-toml
serayuzgur.crates
];
userSettings = {
"[rust]" = {
"editor.inlayHints.enabled" = "off";
userSettings = {
"[rust]" = {
"editor.inlayHints.enabled" = "off";
};
"rust-analyzer.check.command" = "clippy";
"rust-analyzer.showUnlinkedFileNotification" = false;
};
"rust-analyzer.check.command" = "clippy";
"rust-analyzer.showUnlinkedFileNotification" = false;
};
};

View File

@ -29,10 +29,12 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ];
profiles.default = {
extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ];
userSettings = {
"[tex]" = { };
userSettings = {
"[tex]" = { };
};
};
};

View File

@ -27,11 +27,13 @@ in
# VSCode configuration
programs.vscode = {
extensions = with pkgs.vscode-extensions; [
ms-azuretools.vscode-docker
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
ms-azuretools.vscode-docker
];
userSettings = {
userSettings = {
};
};
};

View File

@ -0,0 +1,25 @@
{
lib,
config,
...
}:
with lib;
{
options.modules.flatpak = {
enable = mkEnableOption "flatpak";
remotes = mkOption {
type = types.attrsOf types.str;
default = {
flathub = "https://dl.flathub.org/repo/flathub.flatpakrepo";
flathub-beta = "https://dl.flathub.org/beta-repo/flathub-beta.flatpakrepo";
};
description = "A set of flatpak repositories to add.";
};
};
config = mkIf config.modules.flatpak.enable {
services.flatpak.enableModule = true;
services.flatpak.remotes = config.modules.flatpak.remotes;
};
}

View File

@ -0,0 +1,5 @@
{
flatpak = {
# services.flatpak.enable = true;
};
}

View File

@ -26,22 +26,22 @@ in
# TODO: Remove exception once no longer required by es-de
nixpkgs.config.permittedInsecurePackages = [
"freeimage-unstable-2021-11-01"
"freeimage-3.18.0-unstable-2024-04-18"
];
# TODO: Remove once emulationstation-de fixes the issue
# TODO: If not fixed, at least pin the specific commit properly
nixpkgs.overlays =
let
pkgs-stable = import (fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/nixos-24.11.tar.gz";
sha256 = "1wr1xzkw7v8biqqjcr867gbpqf3kibkgly36lcnhw0glvkr1i986";
}) { inherit system; };
in
[
(final: prev: {
libgit2 = pkgs-stable.libgit2;
})
];
# nixpkgs.overlays =
# let
# pkgs-stable = import (fetchTarball {
# url = "https://github.com/NixOS/nixpkgs/archive/nixos-24.11.tar.gz";
# sha256 = "1wr1xzkw7v8biqqjcr867gbpqf3kibkgly36lcnhw0glvkr1i986";
# }) { inherit system; };
# in
# [
# (final: prev: {
# libgit2 = pkgs-stable.libgit2;
# })
# ];
};
}

View File

@ -0,0 +1,16 @@
{ lib, config, ... }:
with lib;
{
imports = [
./eloquent.nix
];
options.modules.languagetool = {
enable = mkEnableOption "languagetool";
};
config = mkIf config.modules.languagetool.enable {
modules.eloquent.enable = mkDefault true;
};
}

View File

@ -0,0 +1,17 @@
{ lib, config, ... }:
with lib;
{
options.modules.eloquent = {
enable = mkEnableOption "eloquent";
};
config = mkIf config.modules.eloquent.enable {
modules.flatpak.enable = true;
services.flatpak.packages = [
"flathub:app/re.sonny.Eloquent//stable"
"flathub:app/org.kde.kdenlive//stable"
];
};
}

View File

@ -37,63 +37,65 @@ in
enable = true;
mutableExtensionsDir = false;
extensions = with pkgs.vscode-extensions; [
eamodio.gitlens
ms-vscode.hexeditor
mkhl.direnv
usernamehw.errorlens
gruntfuggly.todo-tree
github.copilot
github.copilot-chat
tomoki1207.pdf
ms-vsliveshare.vsliveshare
];
profiles.default = {
extensions = with pkgs.vscode-extensions; [
eamodio.gitlens
ms-vscode.hexeditor
mkhl.direnv
usernamehw.errorlens
gruntfuggly.todo-tree
github.copilot
github.copilot-chat
tomoki1207.pdf
ms-vsliveshare.vsliveshare
];
userSettings =
let
font-family = mkForce "'${cfg.codeFont.name}', '${cfg.fallbackFont.name}'";
# TODO: Move the conversion factor to theme settings
font-size = mkForce cfg.codeFont.recommendedSize; # Convert pt to px
in
{
# Font setup
"editor.fontFamily" = font-family;
"editor.inlayHints.fontFamily" = font-family;
"editor.inlineSuggest.fontFamily" = font-family;
"editor.fontSize" = font-size;
"editor.fontLigatures" = true;
"terminal.integrated.fontFamily" = font-family;
"terminal.integrated.fontSize" = font-size;
"chat.editor.fontFamily" = font-family; # TODO: Change this font to the standard UI font
"chat.editor.fontSize" = font-size;
"debug.console.fontFamily" = font-family;
"debug.console.fontSize" = font-size;
"scm.inputFontFamily" = font-family; # TODO: Change this font to the standard UI font
"scm.inputFontSize" = font-size;
"markdown.preview.fontFamily" = mkForce theme.fonts.sansSerif.name; # TODO: Change this font to the standard UI font
"markdown.preview.fontSize" = mkForce theme.fonts.sansSerif.recommendedSize;
userSettings =
let
font-family = mkForce "'${cfg.codeFont.name}', '${cfg.fallbackFont.name}'";
# TODO: Move the conversion factor to theme settings
font-size = mkForce cfg.codeFont.recommendedSize; # Convert pt to px
in
{
# Font setup
"editor.fontFamily" = font-family;
"editor.inlayHints.fontFamily" = font-family;
"editor.inlineSuggest.fontFamily" = font-family;
"editor.fontSize" = font-size;
"editor.fontLigatures" = true;
"terminal.integrated.fontFamily" = font-family;
"terminal.integrated.fontSize" = font-size;
"chat.editor.fontFamily" = font-family; # TODO: Change this font to the standard UI font
"chat.editor.fontSize" = font-size;
"debug.console.fontFamily" = font-family;
"debug.console.fontSize" = font-size;
"scm.inputFontFamily" = font-family; # TODO: Change this font to the standard UI font
"scm.inputFontSize" = font-size;
"markdown.preview.fontFamily" = mkForce theme.fonts.sansSerif.name; # TODO: Change this font to the standard UI font
"markdown.preview.fontSize" = mkForce theme.fonts.sansSerif.recommendedSize;
# Formatting
"editor.formatOnSave" = true;
"editor.tabSize" = 4;
# Formatting
"editor.formatOnSave" = true;
"editor.tabSize" = 4;
# Layout
"window.menuBarVisibility" = "hidden";
# Layout
"window.menuBarVisibility" = "hidden";
# Git settings
"git.autofetch" = true;
"git.enableSmartCommit" = false;
"git.suggestSmartCommit" = false;
# Git settings
"git.autofetch" = true;
"git.enableSmartCommit" = false;
"git.suggestSmartCommit" = false;
# Disable update notifications
"update.mode" = "none";
# Disable update notifications
"update.mode" = "none";
# TODO: Move to direnv module
# Ignore direnv folder
"files.exclude" = {
".direnv" = true;
# TODO: Move to direnv module
# Ignore direnv folder
"files.exclude" = {
".direnv" = true;
};
};
};
};
};
};
}

View File

@ -186,112 +186,112 @@
# ];
# };
# };
# gnome = {
# name = "Gnome";
# type = "custom";
# config = { };
# extraConfig = {
# programs = {
# gnome-shell.enable = true;
# };
# desktop = {
# initScript = ''
# ${pkgs.gnome-session}/bin/gnome-session
# '';
# session = {
# type = "wayland";
# desktop = "GNOME";
# };
# };
gnome = {
name = "Gnome";
type = "custom";
config = { };
extraConfig = {
programs = {
gnome-shell.enable = true;
};
desktop = {
initScript = ''
${pkgs.gnome-session}/bin/gnome-session
'';
session = {
type = "wayland";
desktop = "GNOME";
};
};
# # TODO: Remove everything below, it is here out of convenience and should be elsewhere
# xdg.portal = {
# enable = true;
# TODO: Remove everything below, it is here out of convenience and should be elsewhere
xdg.portal = {
enable = true;
# config.common.default = [
# "gnome"
# "gtk"
# ];
config.common.default = [
"gnome"
"gtk"
];
# extraPortals = with pkgs; [
# xdg-desktop-portal-gnome
# xdg-desktop-portal-gtk
# ];
# };
# home.packages = [
# # Core utilities
# pkgs.baobab
# pkgs.epiphany
# pkgs.gnome-text-editor
# pkgs.gnome-calculator
# pkgs.gnome-calendar
# pkgs.gnome-characters
# pkgs.gnome-clocks
# pkgs.gnome-console
# pkgs.gnome-contacts
# pkgs.gnome-font-viewer
# pkgs.gnome-logs
# pkgs.gnome-maps
# pkgs.gnome-music
# pkgs.gnome-system-monitor
# pkgs.gnome-weather
# pkgs.loupe
# pkgs.nautilus
# pkgs.gnome-connections
# pkgs.simple-scan
# pkgs.snapshot
# pkgs.totem
# pkgs.yelp
extraPortals = with pkgs; [
xdg-desktop-portal-gnome
xdg-desktop-portal-gtk
];
};
home.packages = [
# Core utilities
pkgs.baobab
pkgs.epiphany
pkgs.gnome-text-editor
pkgs.gnome-calculator
pkgs.gnome-calendar
pkgs.gnome-characters
pkgs.gnome-clocks
pkgs.gnome-console
pkgs.gnome-contacts
pkgs.gnome-font-viewer
pkgs.gnome-logs
pkgs.gnome-maps
pkgs.gnome-music
pkgs.gnome-system-monitor
pkgs.gnome-weather
pkgs.loupe
pkgs.nautilus
pkgs.gnome-connections
pkgs.simple-scan
pkgs.snapshot
pkgs.totem
pkgs.yelp
# # Optional packages
# pkgs.adwaita-icon-theme
# pkgs.gnome-backgrounds
# pkgs.gnome-bluetooth
# pkgs.gnome-color-manager
# pkgs.gnome-control-center
# pkgs.gnome-shell-extensions
# pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in.
# pkgs.gnome-user-docs
# pkgs.glib # for gsettings program
# pkgs.gnome-menus
# pkgs.gtk3.out # for gtk-launch program
# pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
# pkgs.xdg-user-dirs-gtk # Used to create the default bookmarks
# Optional packages
pkgs.adwaita-icon-theme
pkgs.gnome-backgrounds
pkgs.gnome-bluetooth
pkgs.gnome-color-manager
pkgs.gnome-control-center
pkgs.gnome-shell-extensions
pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in.
pkgs.gnome-user-docs
pkgs.glib # for gsettings program
pkgs.gnome-menus
pkgs.gtk3.out # for gtk-launch program
pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/
pkgs.xdg-user-dirs-gtk # Used to create the default bookmarks
# # Games
# pkgs.aisleriot
# pkgs.atomix
# pkgs.five-or-more
# pkgs.four-in-a-row
# pkgs.gnome-2048
# pkgs.gnome-chess
# pkgs.gnome-klotski
# pkgs.gnome-mahjongg
# pkgs.gnome-mines
# pkgs.gnome-nibbles
# pkgs.gnome-robots
# pkgs.gnome-sudoku
# pkgs.gnome-taquin
# pkgs.gnome-tetravex
# pkgs.hitori
# pkgs.iagno
# pkgs.lightsoff
# pkgs.quadrapassel
# pkgs.swell-foop
# pkgs.tali
# Games
pkgs.aisleriot
pkgs.atomix
pkgs.five-or-more
pkgs.four-in-a-row
pkgs.gnome-2048
pkgs.gnome-chess
pkgs.gnome-klotski
pkgs.gnome-mahjongg
pkgs.gnome-mines
pkgs.gnome-nibbles
pkgs.gnome-robots
pkgs.gnome-sudoku
pkgs.gnome-taquin
pkgs.gnome-tetravex
pkgs.hitori
pkgs.iagno
pkgs.lightsoff
pkgs.quadrapassel
pkgs.swell-foop
pkgs.tali
# # Fonts
# pkgs.cantarell-fonts
# pkgs.dejavu_fonts
# pkgs.source-code-pro # Default monospace font in 3.32
# pkgs.source-sans
# Fonts
pkgs.cantarell-fonts
pkgs.dejavu_fonts
pkgs.source-code-pro # Default monospace font in 3.32
pkgs.source-sans
# # Other stuff
# pkgs.gnome-session
# # pkgs.gnome-session.sessions
# ];
# };
# };
# Other stuff
pkgs.gnome-session
# pkgs.gnome-session.sessions
];
};
};
};
# Enabled modules
@ -313,7 +313,7 @@
# Gaming
steam.enable = true;
modrinth.enable = true;
es-de.enable = true;
# es-de.enable = true; # TODO: Fix, again
retroarch.enable = true;
ryujinx.enable = true;