diff options
-rw-r--r-- | flake.lock | 206 | ||||
-rw-r--r-- | hosts/cloud/sortug/configuration.nix | 3 | ||||
-rw-r--r-- | hosts/local/gnome.nix | 137 | ||||
-rw-r--r-- | hosts/local/i3.nix | 17 | ||||
-rw-r--r-- | hosts/local/master/configuration.nix | 6 | ||||
-rw-r--r-- | hosts/local/master/hardware-configuration.nix | 12 | ||||
-rw-r--r-- | hosts/local/master/keyboard.nix | 44 | ||||
-rw-r--r-- | hosts/local/master/oldhw.nix | 41 | ||||
-rw-r--r-- | hosts/local/master/rapoo.kbd | 102 | ||||
-rw-r--r-- | hosts/local/nvidia.nix | 9 | ||||
-rw-r--r-- | hosts/unfree.nix | 2 |
11 files changed, 452 insertions, 127 deletions
@@ -11,11 +11,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1718869541, - "narHash": "sha256-smhpGh1x/8mNl+sFL8SbeWnx0bK4HWjmdRA3mIwGjPU=", + "lastModified": 1725344070, + "narHash": "sha256-YX2npWHeTV9SxfI7P4IcPqxkO7sp/twYpdo/SGxNTbk=", "owner": "yaxitech", "repo": "ragenix", - "rev": "8a254bbaa93fbd38e16f70fa81af6782794e046e", + "rev": "e977cf6d792e7959c8bb24d62a6b4bea14daa00f", "type": "github" }, "original": { @@ -35,11 +35,11 @@ "systems": "systems" }, "locked": { - "lastModified": 1707830867, - "narHash": "sha256-PAdwm5QqdlwIqGrfzzvzZubM+FXtilekQ/FA0cI49/o=", + "lastModified": 1723293904, + "narHash": "sha256-b+uqzj+Wa6xgMS9aNbX4I+sXeb5biPDi39VgvSFqFvU=", "owner": "ryantm", "repo": "agenix", - "rev": "8cb01a0e717311680e0cbca06a76cbceba6f3ed6", + "rev": "f6291c5935fdc4e0bef208cfc0dcab7e3f7a1c41", "type": "github" }, "original": { @@ -65,18 +65,12 @@ } }, "crane": { - "inputs": { - "nixpkgs": [ - "agenix", - "nixpkgs" - ] - }, "locked": { - "lastModified": 1708794349, - "narHash": "sha256-jX+B1VGHT0ruHHL5RwS8L21R6miBn4B6s9iVyUJsJJY=", + "lastModified": 1725125250, + "narHash": "sha256-CB20rDD5eHikF6mMTTJdwPP1qvyoiyyw1RDUzwIaIF8=", "owner": "ipetkov", "repo": "crane", - "rev": "2c94ff9a6fbeb9f3ea0107f28688edbe9c81deaa", + "rev": "96fd12c7100e9e05fa1a0a5bd108525600ce282f", "type": "github" }, "original": { @@ -157,11 +151,11 @@ ] }, "locked": { - "lastModified": 1724252836, - "narHash": "sha256-Y0PfeVEa8hwCaxO8dZCCm5IGPlvrDxrAcnAg7ZQeaBo=", + "lastModified": 1725377834, + "narHash": "sha256-tqoAO8oT6zEUDXte98cvA1saU9+1dLJQe3pMKLXv8ps=", "owner": "nix-community", "repo": "disko", - "rev": "74a12fdf533640cd4a14272ed1cf6dcab534253d", + "rev": "e55f9a8678adc02024a4877c2a403e3f6daf24fe", "type": "github" }, "original": { @@ -276,11 +270,11 @@ "nixpkgs-lib": "nixpkgs-lib" }, "locked": { - "lastModified": 1722555600, - "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", + "lastModified": 1725234343, + "narHash": "sha256-+ebgonl3NbiKD2UD0x4BszCZQ6sTfL4xioaM49o5B3Y=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "8471fe90ad337a8074e957b69ca4d0089218391d", + "rev": "567b938d64d4b4112ee253b9274472dc3a346eb6", "type": "github" }, "original": { @@ -315,11 +309,11 @@ "nixpkgs-lib": "nixpkgs-lib_2" }, "locked": { - "lastModified": 1722555600, - "narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=", + "lastModified": 1725024810, + "narHash": "sha256-ODYRm8zHfLTH3soTFWE452ydPYz2iTvr9T8ftDMUQ3E=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "8471fe90ad337a8074e957b69ca4d0089218391d", + "rev": "af510d4a62d071ea13925ce41c95e3dec816c01d", "type": "github" }, "original": { @@ -355,11 +349,11 @@ "systems": "systems_2" }, "locked": { - "lastModified": 1705309234, - "narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=", + "lastModified": 1710146030, + "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=", "owner": "numtide", "repo": "flake-utils", - "rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26", + "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a", "type": "github" }, "original": { @@ -463,11 +457,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1724227338, - "narHash": "sha256-TuSaYdhOxeaaE9885mFO1lZHHax33GD5A9dczJrGUjw=", + "lastModified": 1724857454, + "narHash": "sha256-Qyl9Q4QMTLZnnBb/8OuQ9LSkzWjBU1T5l5zIzTxkkhk=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "6cedaa7c1b4f82a266e5d30f212273e60d62cb0d", + "rev": "4509ca64f1084e73bc7a721b20c669a8d4c5ebe6", "type": "github" }, "original": { @@ -549,11 +543,11 @@ "rust-overlay": "rust-overlay_2" }, "locked": { - "lastModified": 1724200909, - "narHash": "sha256-+nUWRR6mV+EV6pG51tgTG7CckGrHcp3Fq6zz0OzcA9w=", + "lastModified": 1725452565, + "narHash": "sha256-kxduxKvEBSEhoxYHQbMCbxHT0t14kRF4zT6ZmWaqH6M=", "owner": "helix-editor", "repo": "helix", - "rev": "38e6fcd5c51478635ffa405815c7b9bbeadc35a9", + "rev": "41db5d735eae03be9a69b1136844dac642484ed8", "type": "github" }, "original": { @@ -604,11 +598,11 @@ }, "impermanence": { "locked": { - "lastModified": 1724146542, - "narHash": "sha256-MLxtqDtu+y/4UDhXX5pFypX9/qbH54TDP6Z90oFzd/A=", + "lastModified": 1724489415, + "narHash": "sha256-ey8vhwY/6XCKoh7fyTn3aIQs7WeYSYtLbYEG87VCzX4=", "owner": "nix-community", "repo": "impermanence", - "rev": "03fe473c731cda2900bae9894b8dfc68e3492db5", + "rev": "c7f5b394397398c023000cf843986ee2571a1fd7", "type": "github" }, "original": { @@ -623,11 +617,11 @@ }, "locked": { "dir": "nix", - "lastModified": 1724217668, - "narHash": "sha256-cqeOaZkDdcttgWjlokEXYyokBm3guoOGQUC1lvOurO0=", + "lastModified": 1725345689, + "narHash": "sha256-HuRZn/HJ9BXus3QGAae6zSN6xczN5AZF4TKEcHj21G0=", "owner": "kmonad", "repo": "kmonad", - "rev": "4c324f1631b3b2f7e17e804b0ed3ac314e57bcb8", + "rev": "906b4e9620f3b1da7884787d43213c945affb786", "type": "github" }, "original": { @@ -647,11 +641,11 @@ "rust-overlay": "rust-overlay_3" }, "locked": { - "lastModified": 1722329086, - "narHash": "sha256-e/fSi0WER06N8WCvpht62fkGtWfe5ckDxr6zNYkwkFw=", + "lastModified": 1725379389, + "narHash": "sha256-qS1H/5/20ewJIXmf8FN2A5KTOKKU9elWvCPwdBi1P/U=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "f5a3a7dff44d131807fc1a89fbd8576cd870334a", + "rev": "e7bd94e0b5ff3c1e686f2101004ebf4fcea9d871", "type": "github" }, "original": { @@ -666,11 +660,11 @@ "nixpkgs-lib": "nixpkgs-lib_3" }, "locked": { - "lastModified": 1723378259, - "narHash": "sha256-8JZVHJAoDgbAk9nn7blBB+wnQbgCq1lIxBsyT7qgeI8=", + "lastModified": 1725192674, + "narHash": "sha256-xEAVzgkjtdi9b4nl1yHWtiaPqYuvB7pwU9OurXv9Lls=", "owner": "nix-community", "repo": "lib-aggregate", - "rev": "8834c9b308bf4d9d448dd73be5f9782f4635d4ca", + "rev": "3f10d853f98081feec35b736e38da91202a87c3a", "type": "github" }, "original": { @@ -687,11 +681,11 @@ "spectrum": "spectrum" }, "locked": { - "lastModified": 1723470968, - "narHash": "sha256-W76xLG4thxkENM3MOoXWYqKPrgk1WgUWzTixUyuw/co=", + "lastModified": 1725388988, + "narHash": "sha256-hjO/ZpmaXUHUzTSefzbj0Bosj6inFHRplbb+YqQQULc=", "owner": "astro", "repo": "microvm.nix", - "rev": "69e8ac63a7a4d40bb65e73af41ba60df2eba0419", + "rev": "d52082cc2668b8cd788e3133526c8693ee71f6a5", "type": "github" }, "original": { @@ -707,11 +701,11 @@ ] }, "locked": { - "lastModified": 1724219898, - "narHash": "sha256-7PwlnEQDIbww8+nk0CHLeYTYMA23F/CkynHsX7Mxk+s=", + "lastModified": 1725189302, + "narHash": "sha256-IhXok/kwQqtusPsoguQLCHA+h6gKvgdCrkhIaN+kByA=", "owner": "lnl7", "repo": "nix-darwin", - "rev": "d6703b988728b89456b32bac242c8689902e5a5b", + "rev": "7c4b53a7d9f3a3df902b3fddf2ae245ef20ebcda", "type": "github" }, "original": { @@ -748,11 +742,11 @@ "umu": "umu" }, "locked": { - "lastModified": 1724203387, - "narHash": "sha256-nm54uFppQFRYM+2v1BLpmlxB6Jv5n0zzwjU+aZShZlE=", + "lastModified": 1725154929, + "narHash": "sha256-AONhBZQgiJb/teEJF7PV6EpyLLpF2ddSbY7HJNdFSxw=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "ad4e195c8fd545944273f633fd6ec9b993e088ed", + "rev": "76446e879c956930a7f5f6f1d0440b3df67e0dda", "type": "github" }, "original": { @@ -785,11 +779,11 @@ }, "nixlib": { "locked": { - "lastModified": 1723942470, - "narHash": "sha256-QdSArN0xKESEOTcv+3kE6yu4B4WX9lupZ4+Htx3RXGg=", + "lastModified": 1725152544, + "narHash": "sha256-Tm344cnFM9f2YZsgWtJduvhIrvLr3Bi8J4Xc+UZDKYE=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "531a2e8416a6d8200a53eddfbdb8f2c8dc4a1251", + "rev": "7f0b9e4fbd91826cb9ce6babbc11c87903191051", "type": "github" }, "original": { @@ -842,11 +836,11 @@ ] }, "locked": { - "lastModified": 1724028932, - "narHash": "sha256-U11ZiQPrpIBdv7oS23bNdX9GCxe/hPf/ARr64P2Wj1Y=", + "lastModified": 1725497951, + "narHash": "sha256-fayKyVs/9FQdYH+3SCOkQM1GCsEPPVE+lSiVGlYQ7i0=", "owner": "nix-community", "repo": "nixos-generators", - "rev": "5fd22603892e4ec5ac6085058ed658243143aacd", + "rev": "15a07ebf4a041bf232026263f1f96f2af390f3bc", "type": "github" }, "original": { @@ -879,11 +873,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1724067415, - "narHash": "sha256-WJBAEFXAtA41RMpK8mvw0cQ62CJkNMBtzcEeNIJV7b0=", + "lastModified": 1725477728, + "narHash": "sha256-ahej1VRqKmWbG7gewty+GlrSBEeGY/J2Zy8Nt8+3fdg=", "owner": "nixos", "repo": "nixos-hardware", - "rev": "b09c46430ffcf18d575acf5c339b38ac4e1db5d2", + "rev": "880be1ab837e1e9fe0449dae41ac4d034694d4ce", "type": "github" }, "original": { @@ -988,11 +982,11 @@ }, "nixpkgs-darwin": { "locked": { - "lastModified": 1724196396, - "narHash": "sha256-4GoGPErR0RM5r5x+LMnzZvxTdn11lCRO+z8wP3K3PyU=", + "lastModified": 1725140114, + "narHash": "sha256-tlRqsd84YFI7dL8Lz/Sm+M9Bm+Mh7kUs+5ArJbZsuy8=", "owner": "nixos", "repo": "nixpkgs", - "rev": "1c5f849214c6c03c47e684622306aad181c107a4", + "rev": "4927f77b7a68615ce99678086cd3dcd0eda34fdd", "type": "github" }, "original": { @@ -1004,14 +998,14 @@ }, "nixpkgs-lib": { "locked": { - "lastModified": 1722555339, - "narHash": "sha256-uFf2QeW7eAHlYXuDktm9c25OxOyCoUOQmh5SZ9amE5Q=", + "lastModified": 1725233747, + "narHash": "sha256-Ss8QWLXdr2JCBPcYChJhz4xJm+h/xjl4G0c0XlP6a74=", "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" }, "original": { "type": "tarball", - "url": "https://github.com/NixOS/nixpkgs/archive/a5d394176e64ab29c852d03346c1fc9b0b7d33eb.tar.gz" + "url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" } }, "nixpkgs-lib_2": { @@ -1028,11 +1022,11 @@ }, "nixpkgs-lib_3": { "locked": { - "lastModified": 1723337705, - "narHash": "sha256-znSU0DeNDPt7+LMAfFkvKloMaeQ6yl/U5SqV/ktl1vA=", + "lastModified": 1725152544, + "narHash": "sha256-Tm344cnFM9f2YZsgWtJduvhIrvLr3Bi8J4Xc+UZDKYE=", "owner": "nix-community", "repo": "nixpkgs.lib", - "rev": "ace7856d327b618d3777e31b1f224b3ab57ed71a", + "rev": "7f0b9e4fbd91826cb9ce6babbc11c87903191051", "type": "github" }, "original": { @@ -1075,11 +1069,11 @@ }, "nixpkgs-stable_3": { "locked": { - "lastModified": 1724098845, - "narHash": "sha256-D5HwjQw/02fuXbR4LCTo64koglP2j99hkDR79/3yLOE=", + "lastModified": 1725001927, + "narHash": "sha256-eV+63gK0Mp7ygCR0Oy4yIYSNcum2VQwnZamHxYTNi+M=", "owner": "nixos", "repo": "nixpkgs", - "rev": "f1bad50880bae73ff2d82fafc22010b4fc097a9c", + "rev": "6e99f2a27d600612004fbd2c3282d614bfee6421", "type": "github" }, "original": { @@ -1099,11 +1093,11 @@ ] }, "locked": { - "lastModified": 1723573444, - "narHash": "sha256-5R7cF01OqkULUZ/qpAjgs712UGM+N0xFqOk/eYd3V+4=", + "lastModified": 1725292436, + "narHash": "sha256-AeRcvPq2SLjpLP1cXe5SjFUmwuO5BY4bskRcrxRZtJU=", "owner": "nix-community", "repo": "nixpkgs-wayland", - "rev": "d281d56bda9456bb8c0a22a608575926fb9a656d", + "rev": "52b72b12c456a5c0c87c40941ef79335e8d61104", "type": "github" }, "original": { @@ -1226,11 +1220,11 @@ }, "nixpkgs_7": { "locked": { - "lastModified": 1723856861, - "narHash": "sha256-OTDg91+Zzs2SpU3csK4xVdSQFoG8cK1lNUwKmTqERyE=", + "lastModified": 1725099143, + "narHash": "sha256-CHgumPZaC7z+WYx72WgaLt2XF0yUVzJS60rO4GZ7ytY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "cd7b95ee3725af7113bacbce91dd6549cee58ca5", + "rev": "5629520edecb69630a3f4d17d3d33fc96c13f6fe", "type": "github" }, "original": { @@ -1258,11 +1252,11 @@ }, "nixpkgs_9": { "locked": { - "lastModified": 1723991338, - "narHash": "sha256-Grh5PF0+gootJfOJFenTTxDTYPidA3V28dqJ/WV7iis=", + "lastModified": 1725103162, + "narHash": "sha256-Ym04C5+qovuQDYL/rKWSR+WESseQBbNAe5DsXNx5trY=", "owner": "nixos", "repo": "nixpkgs", - "rev": "8a3354191c0d7144db9756a74755672387b702ba", + "rev": "12228ff1752d7b7624a54e9c1af4b222b3c1073b", "type": "github" }, "original": { @@ -1274,11 +1268,11 @@ }, "nur": { "locked": { - "lastModified": 1724258439, - "narHash": "sha256-ZzxQkhVAnH53L8P6AGg9KJRxBkHG+8NCDcX0rsrIDBg=", + "lastModified": 1725510799, + "narHash": "sha256-iCytRKs7e7IQd8UZNCBJHVoxVHodC3VHhDB2+QqCfUw=", "owner": "nix-community", "repo": "NUR", - "rev": "273d73931408c11935383aabde5185f8b16e300c", + "rev": "abf7688fea28ee9ac4bcbc8ba05be635d806188f", "type": "github" }, "original": { @@ -1290,11 +1284,11 @@ "polybar-themes": { "flake": false, "locked": { - "lastModified": 1722351663, - "narHash": "sha256-cUr2XWVSYtwjRvSJJoCLAO2yNCUD3AghGMoAvrr4bQo=", + "lastModified": 1725202882, + "narHash": "sha256-tRxMYWS5RJY0Nwa/J2pELRGfW4uqlHEaD57L4ZMokBE=", "owner": "adi1090x", "repo": "polybar-themes", - "rev": "2db8a712d22966181c7e228d4ac63fcdf72a432e", + "rev": "dfe3c6b5e667a35dc02f7ef5d1745dad606bc22e", "type": "github" }, "original": { @@ -1411,21 +1405,17 @@ }, "rust-overlay": { "inputs": { - "flake-utils": [ - "agenix", - "flake-utils" - ], "nixpkgs": [ "agenix", "nixpkgs" ] }, "locked": { - "lastModified": 1708740535, - "narHash": "sha256-NCTw235XwSDbeTAtAwg/hOeNOgwYhVq7JjDdbkOgBeA=", + "lastModified": 1725330199, + "narHash": "sha256-oUkdPJIxP3r3YyVOBLkDVLIJiQV9YlrVqA+jNcdpCvM=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "9b24383d77f598716fa0cbb8b48c97249f5ee1af", + "rev": "a562172c72d00350f9f2ff830e6515b6e7bee6d5", "type": "github" }, "original": { @@ -1617,11 +1607,11 @@ }, "locked": { "dir": "packaging/nix", - "lastModified": 1723697867, - "narHash": "sha256-LTfbJXR8x35oZ8Mo3R0WTVEp9toWpVfzD21xCSr64IM=", + "lastModified": 1724179424, + "narHash": "sha256-2r2y1p9YQuaWCxuFj45MVRqJ/uWglhzY5O9BW1jRXcg=", "ref": "refs/heads/main", - "rev": "c71a45ad53036f4c668bcbe1be7a49f9d3460151", - "revCount": 699, + "rev": "dd3105e4ceef83bdc9d7437139f9475325e2a66d", + "revCount": 700, "submodules": true, "type": "git", "url": "https://github.com/Open-Wine-Components/umu-launcher/?dir=packaging/nix" @@ -1656,11 +1646,11 @@ ] }, "locked": { - "lastModified": 1724155430, - "narHash": "sha256-oH1wbZ51fSEq1+mOSj0EVl+r01orO739+7zkA19i8Dw=", + "lastModified": 1724670643, + "narHash": "sha256-XHE2Ix3JQ625Le1H8klJidhlOM9trJImlVJ8qkqH7SA=", "owner": "alexays", "repo": "waybar", - "rev": "26329b660af3169b9daad533017964f35ba98726", + "rev": "5d184f74d8f99b834ea19ce353a68786c8602a15", "type": "github" }, "original": { @@ -1674,11 +1664,11 @@ "nixpkgs": "nixpkgs_11" }, "locked": { - "lastModified": 1723670516, - "narHash": "sha256-7RwXnRpr/EklvLZcy+HecXilt8uzGmeldAg+KwSg/tc=", + "lastModified": 1724503599, + "narHash": "sha256-WVhNq3QjnG/2mi772CkTxZCQcomKV5S03TbQKwe1Kj4=", "owner": "viperML", "repo": "wrapper-manager", - "rev": "7b5d4802db9f454b7e9b7b98fd0c159ace6dc8c2", + "rev": "c936f9203217e654a6074d206505c16432edbc70", "type": "github" }, "original": { diff --git a/hosts/cloud/sortug/configuration.nix b/hosts/cloud/sortug/configuration.nix index d409f83..d7d5394 100644 --- a/hosts/cloud/sortug/configuration.nix +++ b/hosts/cloud/sortug/configuration.nix @@ -9,7 +9,7 @@ ./hardware-configuration.nix (modulesPath + "/installer/scan/not-detected.nix") ../../base.nix - ../../users.nix + ../users.nix ../../server.nix ../packages.nix ./gitea.nix @@ -66,6 +66,7 @@ enable = true; domains = ["2001:4860:4860::8888" "2001:4860:4860::8844"]; }; + services.tailscale.enable = true; # networking.firewall = { # enable = true; diff --git a/hosts/local/gnome.nix b/hosts/local/gnome.nix new file mode 100644 index 0000000..9459392 --- /dev/null +++ b/hosts/local/gnome.nix @@ -0,0 +1,137 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page +# and in the NixOS manual (accessible by running ‘nixos-help’). +{ + config, + pkgs, + ... +}: { + + # Enable the X11 windowing system. + services.xserver.enable = true; + + # Enable the GNOME Desktop Environment. + services.xserver.displayManager.gdm.enable = true; + services.xserver.desktopManager.gnome.enable = true; + + # Configure keymap in X11 + services.xserver = { + xkb.layout = "us"; + xkb.variant = ""; + }; + # japanese input + + i18n = { + inputMethod = { + type = "fcitx5"; + fcitx5.addons = with pkgs; [fcitx5-mozc]; + }; + }; + + environment.sessionVariables = { + GTK_IM_MODULE = "fcitx"; + QT_IM_MODULE = "fcitx"; + XMODIFIERS = "@im=fcitx"; + }; + + environment.systemPackages = with pkgs; [ + polybar + rofi + # screenshots + flameshot + shutter + maim + + kitty + alacritty + signal-desktop + tdesktop + brave + gimp + vlc + thunderbird + kmail + firefox + chromium + pavucontrol + # icons + polkit_gnome + gnome-themes-extra + gtk-engine-murrine + gtk_engines + gsettings-desktop-schemas + lxappearance + adwaita-qt + adwaita-icon-theme + xfce.thunar + libreoffice + qbittorrent + zathura + # + libcamera # pipewire seems to want this + easyeffects + # games! + ryujinx + ]; + services.flatpak.enable = true; + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound with pipewire. + hardware.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + # If you want to use JACK applications, uncomment this + #jack.enable = true; + + # use the example session manager (no others are packaged yet so this is enabled by default, + # no need to redefine it in your config for now) + #media-session.enable = true; + }; + + + fonts = { + enableDefaultPackages = true; + fontconfig = { + defaultFonts.emoji = ["Noto Color Emoji"]; + defaultFonts.monospace = ["Hack" "Sarasa Mono SC"]; + defaultFonts.sansSerif = ["DejaVu Sans"]; + defaultFonts.serif = ["DejaVu Serif" "Source Han Serif SC"]; + }; + packages = with pkgs; [ + # fira-code + # fira + # cooper-hewitt + # ibm-plex + # jetbrains-mono + # iosevka + # spleen + # fira-code-symbols + # powerline-fonts + # nerdfonts + # arphic-ukai + # arphic-uming + # dejavu_fonts + # font-awesome + # inconsolata # monospaced + noto-fonts + noto-fonts-cjk + noto-fonts-emoji + noto-fonts-extra + # powerline-fonts + source-han-sans-japanese + # source-han-sans-korean + # source-han-sans-simplified-chinese + # source-han-sans-traditional-chinese + # source-sans-pro + # ubuntu_font_family + # wqy_microhei + # wqy_zenhei + ]; + }; + +} diff --git a/hosts/local/i3.nix b/hosts/local/i3.nix index 522dc83..492acda 100644 --- a/hosts/local/i3.nix +++ b/hosts/local/i3.nix @@ -26,12 +26,14 @@ }; environment.systemPackages = with pkgs; [ + polybar rofi # screenshots flameshot shutter maim + kitty alacritty signal-desktop tdesktop @@ -59,15 +61,18 @@ # libcamera # pipewire seems to want this easyeffects + # games! + ryujinx ]; + services.flatpak.enable = true; # cjk input - i18n = { - inputMethod = { - type = "fcitx5"; - fcitx5.addons = with pkgs; [fcitx5-rime fcitx5-mozc]; - }; - }; + # i18n = { + # inputMethod = { + # type = "fcitx5"; + # fcitx5.addons = with pkgs; [fcitx5-rime fcitx5-mozc]; + # }; + # }; fonts = { enableDefaultPackages = true; diff --git a/hosts/local/master/configuration.nix b/hosts/local/master/configuration.nix index 19708b8..c137835 100644 --- a/hosts/local/master/configuration.nix +++ b/hosts/local/master/configuration.nix @@ -7,9 +7,11 @@ ../../base.nix ../../linux.nix ../../unfree.nix - ../../android.nix - ../i3.nix + #../../android.nix + # ../i3.nix + ../gnome.nix ../nvidia.nix + ./keyboard.nix ]; # Use the systemd-boot EFI boot loader. diff --git a/hosts/local/master/hardware-configuration.nix b/hosts/local/master/hardware-configuration.nix index fc5597c..6e2ed9f 100644 --- a/hosts/local/master/hardware-configuration.nix +++ b/hosts/local/master/hardware-configuration.nix @@ -14,17 +14,18 @@ boot.extraModulePackages = [ ]; fileSystems."/" = - { device = "/dev/disk/by-uuid/13b360be-0528-4690-b7ab-80c89033c5b7"; + { device = "/dev/disk/by-uuid/3f1343f2-1ba3-4c57-b95e-bb808d3dffd3"; fsType = "ext4"; }; fileSystems."/boot" = - { device = "/dev/disk/by-uuid/92AC-1484"; + { device = "/dev/disk/by-uuid/C676-FD24"; fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; }; swapDevices = - [ { device = "/dev/disk/by-uuid/0b5d123f-3832-4aa2-b486-c64ed476fcf9"; } + [ { device = "/dev/disk/by-uuid/e34d7981-458b-462a-b551-007bce4f40f9"; } ]; # Enables DHCP on each ethernet and wireless interface. In case of scripted networking @@ -32,9 +33,8 @@ # still possible to use this option, but it's recommended to use it in conjunction # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. networking.useDHCP = lib.mkDefault true; - # networking.interfaces.docker0.useDHCP = lib.mkDefault true; - # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true; + # networking.interfaces.enp4s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp5s0.useDHCP = lib.mkDefault true; nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; diff --git a/hosts/local/master/keyboard.nix b/hosts/local/master/keyboard.nix new file mode 100644 index 0000000..0aa0687 --- /dev/null +++ b/hosts/local/master/keyboard.nix @@ -0,0 +1,44 @@ +{ config, lib, pkgs, ... }: + +{ + services.logind.extraConfig = '' + # don’t shutdown when power button is short-pressed + HandlePowerKey=ignore + ''; + +# config file keeps getting rewritten but I don't know by who + # i18n.inputMethod = { + # enabled = "fcitx5"; + # fcitx5.addons = with pkgs; [ + # fcitx5-mozc + # # mozc-ut is better, wat do + # fcitx5-gtk + # libsForQt5.fcitx5-qt + # fcitx5-lua + # fcitx5-configtool + # fcitx5-rime + # ]; + # }; + environment.variables = { + GTK_IM_MODULE = "fcitx"; + QT_IM_MODULE = "fcitx"; + XMODIFIERS = "@im=fcitx"; + FCITX_SOCKET = "default"; + }; + + + #kmonad + services.kmonad ={ + enable = true; + + keyboards.internal = { + device = "/dev/input/by-id/usb-RAPOO_Rapoo_2.4G_Wireless_Device-if02-event-kbd"; + config = builtins.readFile ./rapoo.kbd; + + # defcfg = { + # enable = true; + # fallthrough = true; + # }; + }; + }; +} diff --git a/hosts/local/master/oldhw.nix b/hosts/local/master/oldhw.nix new file mode 100644 index 0000000..fc5597c --- /dev/null +++ b/hosts/local/master/oldhw.nix @@ -0,0 +1,41 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/13b360be-0528-4690-b7ab-80c89033c5b7"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/92AC-1484"; + fsType = "vfat"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/0b5d123f-3832-4aa2-b486-c64ed476fcf9"; } + ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.docker0.useDHCP = lib.mkDefault true; + # networking.interfaces.enp3s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/hosts/local/master/rapoo.kbd b/hosts/local/master/rapoo.kbd new file mode 100644 index 0000000..e117f2f --- /dev/null +++ b/hosts/local/master/rapoo.kbd @@ -0,0 +1,102 @@ +;; one liner comments ';;' +#| Multiline + comments |# + +(defcfg ;; For linux & by-id lists pluggable devices +;; If a key is not bound/left_empty(_) then it will fall back to the previous +;; layer's binding if not then default. +fallthrough true +;; To run system commands. You MIGHT face issues with tiling window managers due to command helpers. +;; allow-cmd true +;; use 'ls /dev/input/by-id/' for detachable keyboards and +;; 'ls /dev/input/by-path/' for builtin keyboards location' +;; input (device-file "/dev/input/event3") +input (device-file "/dev/input/by-id/usb-RAPOO_Rapoo_2.4G_Wireless_Device-if02-event-kbd") +;; Not sure what this does. Please check the docs. +output (uinput-sink "My KMonad output") +) + +;; This is the real representation of your actual keyboard. We haven't started +;; customizing layouts yet. +(defsrc + esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 + ` 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + caps a s d f g h j k l ; ' ret + lsft z x c v b n m , . / rsft up + lctl lmet lalt spc ralt rctl left down right +) +;; Aliases + +(defalias +;; Layer toggles +sym (layer-toggle syms) +sym2 (layer-toggle syms2) +cords (sticky-key 1000 (layer-toggle mods)) +;; +hrt (layer-switch homerowmods) +back (layer-switch qwerty) + +;; Homerow keys +a (tap-hold-next-release 280 a lctl) +s (tap-hold-next-release 280 s lalt) +d (tap-hold-next-release 280 d lmet) +f (tap-hold-next-release 280 f lsft) +;; +j (tap-hold-next-release 280 j rsft) +k (tap-hold-next-release 280 k lmet) +l (tap-hold-next-release 280 l lalt) +semi (tap-hold-next-release 280 ; rctl) + +;; button to launch brave browser +;; veeb (cmd-button "brave") +;; ssf (sticky-key 500 (layer-toggle rshift)) +;; rsf (layer-toggle rshift) +) + +;; The first custom layer is the one that gets activated when kmonad is started +(deflayer qwerty ;; The default layer that'd be read when you launch kmonad + esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 + ` 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + esc a s d f g h j k l ; ' ret + @sym z x c v b n m , . / rsft up + lctl lmet @sym spc @cords @hrt left down right +) +(deflayer homerowmods + esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 + ` 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + esc @a @s @d @f g h @j @k @l @semi ' ret + @sym z x c v b n m , . / rsft up + lctl lmet @sym spc lalt @back left down right +) +(deflayer mods + esc f1 f2 f3 f4 f5 f6 f7 f8 f9 f10 f11 f12 + ` 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] h + esc lctl lalt lmet lsft g h rsft rmet ralt rctl ' ret + @sym z x c v b n m , . / rsft up + lctl lmet @sym spc lalt @back left down right +) + +;; A layer dedicated to symbols +(deflayer syms + _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ up _ _ ! @ # $ % _ _ _ + _ _ left down right @sym2 ' ^ & - = _ ret + _ _ _ _ _ _ \( [ { < \ _ _ + _ _ _ _ _ _ _ _ _ +) + + +;; More symbols +(deflayer syms2 + _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ _ _ _ _ _ _ _ _ _ _ _ + _ _ _ _ _ _ ` ~ * \_ + _ ret + _ _ _ _ _ _ \) ] } > | _ _ + _ _ _ _ _ _ _ _ _ +) diff --git a/hosts/local/nvidia.nix b/hosts/local/nvidia.nix index 74d5f5d..84958a5 100644 --- a/hosts/local/nvidia.nix +++ b/hosts/local/nvidia.nix @@ -1,15 +1,18 @@ -{pkgs, ...}: { +{config, pkgs, ...}: { boot.kernelModules = ["nvidia" "nvidia_modeset" "nvidia_uvm" "nvidia_drm"]; # boot.kernelPackages = lib.mkForce unfreePkgs.linuxKernel.packages.linux_xanmod_latest; boot.kernelParams = ["video=HDMI-A-1:1920x1080"]; - # hardware.opengl = { + hardware.opengl = { # package = (pkgs.mesa.override { galliumDrivers = [ "i915" "swrast" ]; }).drivers; - # }; + enable = true; + }; + services.xserver = { videoDrivers = ["nvidia"]; }; hardware.nvidia = { + package = config.boot.kernelPackages.nvidiaPackages.stable; modesetting.enable = true; powerManagement.enable = true; open = true; diff --git a/hosts/unfree.nix b/hosts/unfree.nix index 8a74ba9..79fecb1 100644 --- a/hosts/unfree.nix +++ b/hosts/unfree.nix @@ -11,7 +11,7 @@ vscode # fonts corefonts - symbola + # symbola ]; # fucking vscode requires this for github copilot |