Initial commit
This commit is contained in:
570
flake.lock
generated
Normal file
570
flake.lock
generated
Normal file
@@ -0,0 +1,570 @@
|
||||
{
|
||||
"nodes": {
|
||||
"base16": {
|
||||
"inputs": {
|
||||
"fromYaml": "fromYaml"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1755819240,
|
||||
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "base16.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-fish": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1765809053,
|
||||
"narHash": "sha256-XCUQLoLfBJ8saWms2HCIj4NEN+xNsWBlU1NrEPcQG4s=",
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tomyun",
|
||||
"repo": "base16-fish",
|
||||
"rev": "86cbea4dca62e08fb7fd83a70e96472f92574782",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-helix": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1760703920,
|
||||
"narHash": "sha256-m82fGUYns4uHd+ZTdoLX2vlHikzwzdu2s2rYM2bNwzw=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"rev": "d646af9b7d14bff08824538164af99d0c521b185",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-helix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"base16-vim": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1732806396,
|
||||
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-vim",
|
||||
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"firefox-gnome-theme": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1775176642,
|
||||
"narHash": "sha256-2veEED0Fg7Fsh81tvVDNYR6SzjqQxa7hbi18Jv4LWpM=",
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"rev": "179704030c5286c729b5b0522037d1d51341022c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "rafaelmardojai",
|
||||
"repo": "firefox-gnome-theme",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": "nixpkgs-lib"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775087534,
|
||||
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_2": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"nixvim",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772408722,
|
||||
"narHash": "sha256-rHuJtdcOjK7rAHpHphUb1iCvgkU3GpfvicLMwwnfMT0=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "f20dc5d9b8027381c474144ecabc9034d6a839a3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"flake-parts_3": {
|
||||
"inputs": {
|
||||
"nixpkgs-lib": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775087534,
|
||||
"narHash": "sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "3107b77cd68437b9a76194f0f7f9c55f2329ca5b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"fromYaml": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1731966426,
|
||||
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "SenchoPens",
|
||||
"repo": "fromYaml",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"gnome-shell": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1767737596,
|
||||
"narHash": "sha256-eFujfIUQDgWnSJBablOuG+32hCai192yRdrNHTv0a+s=",
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "GNOME",
|
||||
"repo": "gnome-shell",
|
||||
"rev": "ef02db02bf0ff342734d525b5767814770d85b49",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"hjem": {
|
||||
"inputs": {
|
||||
"nix-darwin": "nix-darwin",
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775569958,
|
||||
"narHash": "sha256-W+kpLQ5J/DDaY1nUmvN9aIAfh5ixdyqYM76ZUdcvMBU=",
|
||||
"owner": "feel-co",
|
||||
"repo": "hjem",
|
||||
"rev": "32bd6d54d805a3eb41efa62a940eeceaf263c4a8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "feel-co",
|
||||
"repo": "hjem",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"import-tree": {
|
||||
"locked": {
|
||||
"lastModified": 1773693634,
|
||||
"narHash": "sha256-BtZ2dtkBdSUnFPPFc+n0kcMbgaTxzFNPv2iaO326Ffg=",
|
||||
"owner": "vic",
|
||||
"repo": "import-tree",
|
||||
"rev": "c41e7d58045f9057880b0d85e1152d6a4430dbf1",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "vic",
|
||||
"repo": "import-tree",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-darwin": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"hjem",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775037210,
|
||||
"narHash": "sha256-KM2WYj6EA7M/FVZVCl3rqWY+TFV5QzSyyGE2gQxeODU=",
|
||||
"owner": "nix-darwin",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "06648f4902343228ce2de79f291dd5a58ee12146",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-darwin",
|
||||
"repo": "nix-darwin",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1775490113,
|
||||
"narHash": "sha256-2ZBhDNZZwYkRmefK5XLOusCJHnoeKkoN95hoSGgMxWM=",
|
||||
"owner": "NixOs",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "c775c2772ba56e906cbeb4e0b2db19079ef11ff7",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOs",
|
||||
"ref": "master",
|
||||
"repo": "nixos-hardware",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1775423009,
|
||||
"narHash": "sha256-vPKLpjhIVWdDrfiUM8atW6YkIggCEKdSAlJPzzhkQlw=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "68d8aa3d661f0e6bd5862291b5bb263b2a6595c9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-lib": {
|
||||
"locked": {
|
||||
"lastModified": 1774748309,
|
||||
"narHash": "sha256-+U7gF3qxzwD5TZuANzZPeJTZRHS29OFQgkQ2kiTJBIQ=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"rev": "333c4e0545a6da976206c74db8773a1645b5870a",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixpkgs.lib",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1774701658,
|
||||
"narHash": "sha256-CIS/4AMUSwUyC8X5g+5JsMRvIUL3YUfewe8K4VrbsSQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b63fe7f000adcfa269967eeff72c64cafecbbebe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1775036866,
|
||||
"narHash": "sha256-ZojAnPuCdy657PbTq5V0Y+AHKhZAIwSIT2cb8UgAz/U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "6201e203d09599479a3b3450ed24fa81537ebc4e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1775579569,
|
||||
"narHash": "sha256-/m3yyS/EnXqoPGBJYVy4jTOsirdgsEZ3JdN2gGkBr14=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "dfd9566f82a6e1d55c30f861879186440614696e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1773734432,
|
||||
"narHash": "sha256-IF5ppUWh6gHGHYDbtVUyhwy/i7D261P7fWD1bPefOsw=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "cda48547b432e8d3b18b4180ba07473762ec8558",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixvim": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts_2",
|
||||
"nixpkgs": "nixpkgs_2",
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775837497,
|
||||
"narHash": "sha256-L17VI03w/wVXvc1SK7EI1muLqHxD3+esYPPzgQvvdOE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "a587a96a48c705609bfd2ad23f9ae5961eb0d373",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nur": {
|
||||
"inputs": {
|
||||
"flake-parts": [
|
||||
"stylix",
|
||||
"flake-parts"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"stylix",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775228139,
|
||||
"narHash": "sha256-ebbeHmg+V7w8050bwQOuhmQHoLOEOfqKzM1KgCTexK4=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "601971b9c89e0304561977f2c28fa25e73aa7132",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-parts": "flake-parts",
|
||||
"hjem": "hjem",
|
||||
"import-tree": "import-tree",
|
||||
"nixos-hardware": "nixos-hardware",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"nixvim": "nixvim",
|
||||
"stylix": "stylix",
|
||||
"wrapper-modules": "wrapper-modules",
|
||||
"wrappers": "wrappers"
|
||||
}
|
||||
},
|
||||
"stylix": {
|
||||
"inputs": {
|
||||
"base16": "base16",
|
||||
"base16-fish": "base16-fish",
|
||||
"base16-helix": "base16-helix",
|
||||
"base16-vim": "base16-vim",
|
||||
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||
"flake-parts": "flake-parts_3",
|
||||
"gnome-shell": "gnome-shell",
|
||||
"nixpkgs": "nixpkgs_3",
|
||||
"nur": "nur",
|
||||
"systems": "systems_2",
|
||||
"tinted-kitty": "tinted-kitty",
|
||||
"tinted-schemes": "tinted-schemes",
|
||||
"tinted-tmux": "tinted-tmux",
|
||||
"tinted-zed": "tinted-zed"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775429060,
|
||||
"narHash": "sha256-wbFF5cRxQOCzL/wHOKYm21t5AHPH2Lfp0mVPCOAvEoc=",
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"rev": "d27951a6539951d87f75cf0a7cda8a3a24016019",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "danth",
|
||||
"repo": "stylix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"systems_2": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-kitty": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1735730497,
|
||||
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-kitty",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-schemes": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772661346,
|
||||
"narHash": "sha256-4eu3LqB9tPqe0Vaqxd4wkZiBbthLbpb7llcoE/p5HT0=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"rev": "13b5b0c299982bb361039601e2d72587d6846294",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "schemes",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-tmux": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772934010,
|
||||
"narHash": "sha256-x+6+4UvaG+RBRQ6UaX+o6DjEg28u4eqhVRM9kpgJGjQ=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"rev": "c3529673a5ab6e1b6830f618c45d9ce1bcdd829d",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "tinted-tmux",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"tinted-zed": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1772909925,
|
||||
"narHash": "sha256-jx/5+pgYR0noHa3hk2esin18VMbnPSvWPL5bBjfTIAU=",
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"rev": "b4d3a1b3bcbd090937ef609a0a3b37237af974df",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "tinted-theming",
|
||||
"repo": "base16-zed",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"wrapper-modules": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775724285,
|
||||
"narHash": "sha256-/ukfzDYzcuz7i+unH7XioPS3Acam6FC935XsOCaJDmY=",
|
||||
"owner": "BirdeeHub",
|
||||
"repo": "nix-wrapper-modules",
|
||||
"rev": "d79d2f910dd0d8bffd11113865923199cb304f86",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "BirdeeHub",
|
||||
"repo": "nix-wrapper-modules",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"wrappers": {
|
||||
"inputs": {
|
||||
"nixpkgs": "nixpkgs_5"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1775600302,
|
||||
"narHash": "sha256-2fgKImv78CXIcfo1RsY7EI4uMZ84x/MggA5rrusYc7c=",
|
||||
"owner": "Lassulus",
|
||||
"repo": "wrappers",
|
||||
"rev": "9d8397d8ef1ac35763085f3338589f558128f7db",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "Lassulus",
|
||||
"repo": "wrappers",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
25
flake.nix
Normal file
25
flake.nix
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
|
||||
flake-parts.url = "github:hercules-ci/flake-parts";
|
||||
import-tree.url = "github:vic/import-tree";
|
||||
nixos-hardware.url = "github:NixOs/nixos-hardware/master";
|
||||
wrapper-modules.url = "github:BirdeeHub/nix-wrapper-modules";
|
||||
nixvim.url = "github:nix-community/nixvim";
|
||||
wrappers.url = "github:Lassulus/wrappers";
|
||||
stylix.url = "github:danth/stylix";
|
||||
hjem = {
|
||||
url = "github:feel-co/hjem";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs = inputs: inputs.flake-parts.lib.mkFlake {inherit inputs;} (inputs.import-tree [ ./modules ]);
|
||||
#inputs.nvf.nixosModules.default
|
||||
#inputs.nixos-hardware.nixosModules.framework-13-7040-amd
|
||||
#nvf = {
|
||||
# url = "github:notashelf/nvf";
|
||||
# inputs.nixpkgs.follows = "nixpkgs";
|
||||
#};
|
||||
}
|
||||
82
modules/features/alacritty.nix
Normal file
82
modules/features/alacritty.nix
Normal file
@@ -0,0 +1,82 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.alacritty = { pkgs, ... }: let
|
||||
selfpkgs = self.packages."${pkgs.stdenv.hostPlatform.system}";
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
selfpkgs.myAlacritty
|
||||
];
|
||||
};
|
||||
|
||||
perSystem = { pkgs, ... }: let
|
||||
environment.systemPackages = [
|
||||
pkgs.zsh
|
||||
];
|
||||
in {
|
||||
packages.myAlacritty = inputs.wrapper-modules.wrappers.alacritty.wrap {
|
||||
inherit pkgs;
|
||||
settings = (builtins.fromTOML
|
||||
''
|
||||
[terminal.shell]
|
||||
args = ['--login']
|
||||
program = "zsh"
|
||||
|
||||
[cursor]
|
||||
style = "Block"
|
||||
|
||||
[font]
|
||||
size = 12
|
||||
|
||||
[font.normal]
|
||||
family = "BitstromWeraNerdFont"
|
||||
|
||||
[window]
|
||||
startup_mode = "Windowed"
|
||||
dynamic_padding = true
|
||||
opacity = 0.9
|
||||
|
||||
[window.padding]
|
||||
x = 0
|
||||
y = 0
|
||||
|
||||
[colors.normal]
|
||||
black = '0x090618'
|
||||
red = '0xc34043'
|
||||
green = '0x76946a'
|
||||
yellow = '0xc0a36e'
|
||||
blue = '0x7e9cd8'
|
||||
magenta = '0x957fb8'
|
||||
cyan = '0x6a9589'
|
||||
white = '0xc8c093'
|
||||
|
||||
|
||||
[colors.primary]
|
||||
background = '0x1f1f28'
|
||||
foreground = '0xdcd7ba'
|
||||
|
||||
[colors.cursor]
|
||||
cursor = '0x2d4f67'
|
||||
text = '0xc8c093'
|
||||
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 16
|
||||
color = '0xffa066'
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 17
|
||||
color = '0xff5d62'
|
||||
|
||||
[keyboard]
|
||||
bindings = [
|
||||
{key="j", mods="Alt", action="ScrollHalfPageDown"},
|
||||
{key="k", mods="Alt", action="ScrollHalfPageUp"},
|
||||
]
|
||||
|
||||
[terminal]
|
||||
|
||||
'' );
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
57
modules/features/alacritty.toml
Normal file
57
modules/features/alacritty.toml
Normal file
@@ -0,0 +1,57 @@
|
||||
[terminal.shell]
|
||||
args = ['--login']
|
||||
program = "/usr/bin/zsh"
|
||||
|
||||
[cursor]
|
||||
style = "Block"
|
||||
|
||||
[font]
|
||||
size = 12
|
||||
|
||||
[font.normal]
|
||||
family = "BitstromWeraNerdFontMono"
|
||||
|
||||
[window]
|
||||
startup_mode = "Windowed"
|
||||
dynamic_padding = true
|
||||
opacity = 0.9
|
||||
|
||||
[window.padding]
|
||||
x = 0
|
||||
y = 0
|
||||
|
||||
[colors.normal]
|
||||
black = '0x090618'
|
||||
red = '0xc34043'
|
||||
green = '0x76946a'
|
||||
yellow = '0xc0a36e'
|
||||
blue = '0x7e9cd8'
|
||||
magenta = '0x957fb8'
|
||||
cyan = '0x6a9589'
|
||||
white = '0xc8c093'
|
||||
|
||||
|
||||
[colors.primary]
|
||||
background = '0x1f1f28'
|
||||
foreground = '0xdcd7ba'
|
||||
|
||||
[colors.cursor]
|
||||
cursor = '0x2d4f67'
|
||||
text = '0xc8c093'
|
||||
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 16
|
||||
color = '0xffa066'
|
||||
|
||||
[[colors.indexed_colors]]
|
||||
index = 17
|
||||
color = '0xff5d62'
|
||||
|
||||
[keyboard]
|
||||
bindings = [
|
||||
{key="j", mods="Alt", action="ScrollHalfPageDown"},
|
||||
{key="k", mods="Alt", action="ScrollHalfPageUp"},
|
||||
]
|
||||
|
||||
[terminal]
|
||||
22
modules/features/chromium.nix
Normal file
22
modules/features/chromium.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{
|
||||
flake.nixosModules.chromium = {pkgs, ...}: {
|
||||
environment.systemPackages = [
|
||||
#pkgs.chromium
|
||||
pkgs.ungoogled-chromium
|
||||
#pkgs.iridium
|
||||
#pkgs.vivaldi
|
||||
];
|
||||
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
defaultSearchProviderSearchURL = "https://duckduckgo.com/?q={searchTerms}";
|
||||
extensions = [
|
||||
"ddkjiahejlhfcafbddmgiahcphecmpfh"
|
||||
"ojigagjjcmnbplgdkggkkleckaohppok"
|
||||
"jfedfbgedapdagkghmgibemcoggfppbb"
|
||||
"jfedfbgedapdagkghmgibemcoggfppbb"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
13
modules/features/discord.nix
Normal file
13
modules/features/discord.nix
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
flake.nixosModules.discord = {pkgs, ...}: {
|
||||
environment.systemPackages = [
|
||||
pkgs.vesktop
|
||||
];
|
||||
|
||||
|
||||
/* persistance.cache.directories = [
|
||||
".config/vesktop"
|
||||
];*/
|
||||
|
||||
};
|
||||
}
|
||||
66
modules/features/firefox.nix
Normal file
66
modules/features/firefox.nix
Normal file
@@ -0,0 +1,66 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.firefox = { pkgs, ... }: {
|
||||
environment.systemPackages = [
|
||||
];
|
||||
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
#package = pkgs.waterfox;
|
||||
|
||||
policies = {
|
||||
DisableTelemetry = true;
|
||||
DisableFirefoxStudies = true;
|
||||
EnableTrackingProtection = {
|
||||
Value = true;
|
||||
Locked = true;
|
||||
Cryptomining = true;
|
||||
Fingerprinting = true;
|
||||
};
|
||||
DisablePocket = true;
|
||||
DisableFirefoxAccounts = true;
|
||||
DisableFirefoxScreenshots = true;
|
||||
OverrideFirstRunPage = "";
|
||||
OverridePostUpdatePage = "";
|
||||
DontCheckDefaultBrowser = true;
|
||||
DisplayBookmarksToolbar = "always";
|
||||
DisplayMenuBar = "default-off";
|
||||
SearchBar = "unified";
|
||||
|
||||
ExtensionSettings = {
|
||||
"*".installation_mode = "blocked";
|
||||
"jid1-NIfFY2CA8fy1tg@jetpack" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/adblock-for-firefox/addon-10996236-latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"jid1-q4sG8pYhq8KGHs@jetpack" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/adblock-for-youtube/addon-11285580-latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
"xifangczy@gmail.com" = {
|
||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/cat-catch/addon-13478803-latest.xpi";
|
||||
installation_mode = "force_installed";
|
||||
};
|
||||
};
|
||||
|
||||
Preferences = {
|
||||
"widget.use-xdg-desktop-portal" = { Value = true; };
|
||||
"widget.use-xdg-desktop-portal.file-picker" = { Value = 1; };
|
||||
"browser.contentblocking.category" = { Value = "strict"; status = "locked"; };
|
||||
"extensions.pocket.enabled" = { Value = false; status = "locked"; };
|
||||
"extensions.screenshots.disabled" = { Value = true; status = "locked"; };
|
||||
"browser.topsites.contile.enabled" = { Value = false; status = "locked"; };
|
||||
"browser.formfill.enable" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.feeds.section.topstories" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.feeds.section.snippets" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.section.highlights.includePocket" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeDownloads" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.section.highlights.includeVisited" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.showSponsored" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.system.showSponsored" = { Value = false; status = "locked"; };
|
||||
"browser.newtabpage.activity-stream.showSponsoredTopSites" = { Value = false; status = "locked"; };
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
22
modules/features/git.nix
Normal file
22
modules/features/git.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.git = { pkgs, ... }: {
|
||||
imports = [
|
||||
self.nixosModules.gnupg
|
||||
];
|
||||
|
||||
programs.git = {
|
||||
enable = true;
|
||||
config.user = {
|
||||
name = "Asdam9";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
flake.nixosModules.gnupg = { pkgs, ... }: {
|
||||
programs.gnupg.agent = {
|
||||
enable = true;
|
||||
enableSSHSupport = true;
|
||||
pinentryPackage = pkgs.pinentry-rofi;
|
||||
};
|
||||
};
|
||||
}
|
||||
21
modules/features/hjem.nix
Normal file
21
modules/features/hjem.nix
Normal file
@@ -0,0 +1,21 @@
|
||||
{inputs, ...}: {
|
||||
flake.nixosModules.hjem = {config, ...}: let
|
||||
user = config.preferences.user.name;
|
||||
in {
|
||||
imports = [
|
||||
inputs.hjem.nixosModules.default
|
||||
];
|
||||
|
||||
config = {
|
||||
hjem = {
|
||||
users."${user}" = {
|
||||
enable = true;
|
||||
directory = "/home/${user}";
|
||||
user = "${user}";
|
||||
};
|
||||
|
||||
clobberByDefault = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
7
modules/features/keepmenu.nix
Normal file
7
modules/features/keepmenu.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{ pkgs, inputs, ... }: {
|
||||
flake.nixosModules.keepmenu = {pkgs, ...}: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
keepmenu
|
||||
];
|
||||
};
|
||||
}
|
||||
79
modules/features/lf.nix
Normal file
79
modules/features/lf.nix
Normal file
@@ -0,0 +1,79 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.lf = { pkgs, ... }: let
|
||||
selfpkgs = self.packages."${pkgs.stdenv.hostPlatform.system}";
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
selfpkgs.mylf
|
||||
];
|
||||
};
|
||||
|
||||
perSystem = { pkgs, ... }: let
|
||||
conf =
|
||||
pkgs.writeText "config"
|
||||
''
|
||||
set reverse true
|
||||
set preview true
|
||||
set hidden true
|
||||
#set drawbox true
|
||||
#set icons true
|
||||
set ignorecase true
|
||||
|
||||
cmd stripspace %stripscpase "$f"
|
||||
|
||||
map "\""
|
||||
map o
|
||||
map d
|
||||
map e
|
||||
map f
|
||||
map . set hidden!
|
||||
map D delete
|
||||
map p paste
|
||||
map dd cut
|
||||
map y copy
|
||||
map ` mark-load
|
||||
map \' mark-load
|
||||
map <enter> open
|
||||
map a rename
|
||||
map r reload
|
||||
map C clear
|
||||
map U unselect
|
||||
|
||||
map do drag-out
|
||||
map g~ cd
|
||||
map gh cd
|
||||
map g/ /
|
||||
map gd cd ~/Downloads
|
||||
map gt cd /tmp
|
||||
map gv cd ~/Videos
|
||||
map go cd ~/Documents
|
||||
map gc cd ~/.config
|
||||
map gn cd ~/Documents/MyNixOs
|
||||
map gp cd ~/Documents/Projects
|
||||
map gs cd ~/.local/share
|
||||
map gm cd /run/media
|
||||
map gH cd /persist/users/$HOME
|
||||
|
||||
map eE $ $EDITOR "$f"
|
||||
map ee $ ${lib.getExe pkgs.direnv} exec . $EDITOR "$f"
|
||||
map e. $ ${lib.getExe pkgs.direnv} exec . $EDITOR .
|
||||
# map V $ ${lib.getExe pkgs.bat} --paging-always --theme=gruvbox "$f"
|
||||
map do $ ${lib.getExe pkgs.ripdrag} -a -x "$fx"
|
||||
|
||||
map <C-d> 5j
|
||||
map <C-u> 5k
|
||||
|
||||
setlocal ~/Documents/Projects sortby time
|
||||
setlocal ~/Documents/Projects/* sortby time
|
||||
setlocal ~/Downloads/ sortby time
|
||||
'';
|
||||
in {
|
||||
packages.mylf = inputs.wrappers.lib.wrapPackage {
|
||||
inherit pkgs;
|
||||
package = pkgs.lf;
|
||||
flags = {
|
||||
"-config" = "${conf}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
2
modules/features/neovim/lua/init.lua
Normal file
2
modules/features/neovim/lua/init.lua
Normal file
@@ -0,0 +1,2 @@
|
||||
require("navi")
|
||||
require('lz.n').load('plugins')
|
||||
10
modules/features/neovim/lua/navi/colors.lua
Normal file
10
modules/features/neovim/lua/navi/colors.lua
Normal file
@@ -0,0 +1,10 @@
|
||||
function ColorMyPencils(color)
|
||||
require('kanagawa').setup({
|
||||
transparent = true,
|
||||
})
|
||||
|
||||
color = color or "kanagawa"
|
||||
vim.cmd.colorscheme(color)
|
||||
end
|
||||
|
||||
ColorMyPencils()
|
||||
7
modules/features/neovim/lua/navi/init.lua
Normal file
7
modules/features/neovim/lua/navi/init.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
require("navi.remap")
|
||||
require("navi.set")
|
||||
require("navi.colors")
|
||||
|
||||
|
||||
--require("navi.lazy")
|
||||
|
||||
62
modules/features/neovim/lua/navi/lazy.lua
Normal file
62
modules/features/neovim/lua/navi/lazy.lua
Normal file
@@ -0,0 +1,62 @@
|
||||
-- Bootstrap lazy.nvim
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
return require('lazy').setup({
|
||||
{
|
||||
'nvim-telescope/telescope.nvim', tag = '0.1.8',
|
||||
-- or , branch = '0.1.x',
|
||||
dependencies = { {'nvim-lua/plenary.nvim'} }
|
||||
},
|
||||
"rebelot/kanagawa.nvim",
|
||||
{
|
||||
'nvim-treesitter/nvim-treesitter',
|
||||
build = ':TSUpdate'
|
||||
},
|
||||
'nvim-treesitter/playground',
|
||||
'theprimeagen/harpoon',
|
||||
'mbbill/undotree',
|
||||
'tpope/vim-fugitive',
|
||||
--'github/copilot.vim',
|
||||
--'vimwiki/vimwiki',
|
||||
{
|
||||
"supermaven-inc/supermaven-nvim",
|
||||
config = function()
|
||||
require("supermaven-nvim").setup({})
|
||||
end,
|
||||
},
|
||||
{
|
||||
'VonHeikemen/lsp-zero.nvim',
|
||||
branch = 'v3.x',
|
||||
dependencies = {
|
||||
{'neovim/nvim-lspconfig'},
|
||||
{'williamboman/mason.nvim'},
|
||||
{'williamboman/mason-lspconfig.nvim'},
|
||||
{'hrsh7th/nvim-cmp'},
|
||||
{'hrsh7th/cmp-buffer'},
|
||||
{'hrsh7th/cmp-path'},
|
||||
{'saadparwaiz1/cmp_luasnip'},
|
||||
{'hrsh7th/cmp-nvim-lsp'},
|
||||
{'hrsh7th/cmp-nvim-lua'},
|
||||
{'L3MON4D3/LuaSnip'},
|
||||
}
|
||||
},
|
||||
{
|
||||
'serenevoid/kiwi.nvim',
|
||||
dependencies = { {'nvim-lua/plenary.nvim'} }
|
||||
},
|
||||
|
||||
})
|
||||
27
modules/features/neovim/lua/navi/remap.lua
Normal file
27
modules/features/neovim/lua/navi/remap.lua
Normal file
@@ -0,0 +1,27 @@
|
||||
vim.g.mapleader = " "
|
||||
|
||||
vim.keymap.set("n", "<leader>pv", vim.cmd.Ex)
|
||||
vim.keymap.set("n", "<F5>", ":w! | !compiler %<CR>")
|
||||
|
||||
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)
|
||||
|
||||
vim.keymap.set("v", "J", ":m '>+1<CR>gv=gv")
|
||||
vim.keymap.set("v", "K", ":m '<-2<CR>gv=gv")
|
||||
|
||||
|
||||
vim.keymap.set("n", "J", "mzJ`z")
|
||||
vim.keymap.set("n", "<C-d>", "<C-d>zz")
|
||||
vim.keymap.set("n", "<C-u>", "<C-u>zz")
|
||||
vim.keymap.set("n", "n", "nzzzv")
|
||||
vim.keymap.set("n", "N", "Nzzzv")
|
||||
|
||||
--vim.keymap.set("x", "<leader>p", "\"_dP")
|
||||
|
||||
vim.keymap.set("n", "<leader>y", "\"+y")
|
||||
vim.keymap.set("v", "<leader>y", "\"+y")
|
||||
vim.keymap.set("n", "<leader>Y", "\"+Y")
|
||||
|
||||
vim.keymap.set("n", "Q", "<nop>")
|
||||
|
||||
vim.keymap.set("n", "<leader>s", ":%s/\\<<C-r><C-w>\\>/<C-r><C-w>/gI<Left><Left><Left>")
|
||||
|
||||
33
modules/features/neovim/lua/navi/set.lua
Normal file
33
modules/features/neovim/lua/navi/set.lua
Normal file
@@ -0,0 +1,33 @@
|
||||
vim.opt.nu = true
|
||||
vim.opt.relativenumber = true
|
||||
vim.cmd("autocmd BufEnter * setlocal formatoptions-=cro") -- No good way of doing this with lua
|
||||
|
||||
vim.opt.tabstop = 4
|
||||
vim.opt.softtabstop = 4
|
||||
vim.opt.shiftwidth = 4
|
||||
vim.opt.expandtab = true
|
||||
vim.opt.smartindent = true
|
||||
vim.opt.smartcase = true
|
||||
vim.opt.ignorecase = true
|
||||
vim.opt.wrap = false
|
||||
vim.opt.updatetime = 300
|
||||
vim.opt.termguicolors = true
|
||||
vim.opt.mouse = "a"
|
||||
vim.opt.cursorline = true
|
||||
vim.opt.pumheight = 16
|
||||
vim.opt.winborder = "single"
|
||||
vim.opt.swapfile = false
|
||||
vim.opt.backup = false
|
||||
vim.opt.undodir = os.getenv("HOME") .. "/.vim/undodir"
|
||||
vim.opt.undofile = true
|
||||
vim.opt.hlsearch = false
|
||||
vim.opt.incsearch = true
|
||||
vim.opt.termguicolors = true
|
||||
vim.opt.scrolloff = 8
|
||||
vim.opt.scroll = 6
|
||||
vim.opt.signcolumn = "yes"
|
||||
vim.opt.isfname:append("@-@")
|
||||
vim.opt.updatetime = 50
|
||||
vim.opt.colorcolumn = "80"
|
||||
|
||||
vim.g.mapleader = " "
|
||||
6
modules/features/neovim/lua/plugins/fugitive.lua
Normal file
6
modules/features/neovim/lua/plugins/fugitive.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"vim-fugitive",
|
||||
after = function()
|
||||
vim.keymap.set("n", "<leader>gs", vim.cmd.Git)
|
||||
end
|
||||
}
|
||||
7
modules/features/neovim/lua/plugins/undotree.lua
Normal file
7
modules/features/neovim/lua/plugins/undotree.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
return {
|
||||
"undotree",
|
||||
after = function ()
|
||||
vim.keymap.set("n", "<leader>u", vim.cmd.UndotreeToggle)
|
||||
vim.g.undotree_UndoDir = ".local/share/nvim/"
|
||||
end
|
||||
}
|
||||
111
modules/features/neovim/neovim.nix
Normal file
111
modules/features/neovim/neovim.nix
Normal file
@@ -0,0 +1,111 @@
|
||||
{ inputs, self, ... }: {
|
||||
flake.nixosModules.neovim = { pkgs, ... }: let
|
||||
selfpkgs = self.packages."${pkgs.stdenv.hostPlatform.system}";
|
||||
in {
|
||||
programs.neovim.defaultEditor = true;
|
||||
environment.systemPackages = [
|
||||
selfpkgs.neovim
|
||||
];
|
||||
};
|
||||
|
||||
flake.modules.neovim.main = { config, wlib, lib, pkgs, ... }: {
|
||||
|
||||
options = {
|
||||
dynamicMode = lib.mkOption {
|
||||
type = lib.types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
If true, use impure config instead for fast edits
|
||||
|
||||
Both versions of the package may be installed simultaneously
|
||||
'';
|
||||
};
|
||||
initLua = lib.mkOption {
|
||||
type = wlib.types.stringable;
|
||||
default = ./.;
|
||||
};
|
||||
dynamicInitLua = lib.mkOption {
|
||||
type = lib.types.either wlib.types.stringable lib.types.luaInline;
|
||||
default = lib.generators.mkLuaInline "vim.uv.os_homedir() .. '/Documents/MyNixOs/modules/features/neovim'";
|
||||
};
|
||||
};
|
||||
config = {
|
||||
settings.config_directory =
|
||||
if config.dynamicMode
|
||||
then config.dynamicInitLua
|
||||
else config.initLua;
|
||||
|
||||
extraPackages = [
|
||||
pkgs.ffmpeg-full
|
||||
pkgs.wl-clipboard
|
||||
];
|
||||
|
||||
|
||||
specs.init = {
|
||||
data = null;
|
||||
before = ["MAIN_INIT"];
|
||||
config = "require('init')";
|
||||
};
|
||||
|
||||
specs.plugins = {
|
||||
data = [
|
||||
pkgs.vimPlugins.lz-n
|
||||
pkgs.vimPlugins.plenary-nvim
|
||||
pkgs.vimPlugins.nvim-lspconfig
|
||||
pkgs.vimPlugins.nvim-treesitter.withAllGrammars
|
||||
|
||||
pkgs.vimPlugins.nvim-web-devicons
|
||||
pkgs.vimPlugins.lspkind-nvim
|
||||
pkgs.vimPlugins.colorful-menu-nvim
|
||||
pkgs.vimPlugins.blink-cmp
|
||||
|
||||
pkgs.vimPlugins.snacks-nvim
|
||||
pkgs.vimPlugins.oil-nvim
|
||||
pkgs.vimPlugins.lualine-nvim
|
||||
pkgs.vimPlugins.luasnip
|
||||
pkgs.vimPlugins.kanagawa-nvim
|
||||
#pkgs.vimPlugins.telescope-nvim
|
||||
#pkgs.vimPlugins.kiwi-nvim
|
||||
];
|
||||
};
|
||||
|
||||
specs.lazyPlugins = {
|
||||
lazy = true;
|
||||
data = [
|
||||
pkgs.vimPlugins.lazydev-nvim
|
||||
pkgs.vimPlugins.gitsigns-nvim
|
||||
pkgs.vimPlugins.nvim-autopairs
|
||||
pkgs.vimPlugins.fastaction-nvim
|
||||
pkgs.vimPlugins.mini-files
|
||||
pkgs.vimPlugins.codecompanion-nvim
|
||||
pkgs.vimPlugins.harpoon
|
||||
pkgs.vimPlugins.undotree
|
||||
pkgs.vimPlugins.vim-fugitive
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
perSystem = {pkgs, self', ... }: {
|
||||
packages.neovim = inputs.wrapper-modules.wrappers.neovim.wrap {
|
||||
inherit pkgs;
|
||||
imports = [
|
||||
self.modules.neovim.main
|
||||
#self.modules.neovim.lua
|
||||
#self.modules.neovim.nix
|
||||
];
|
||||
};
|
||||
|
||||
packages.neovimFull = inputs.wrapper-modules.wrappers.neovim.wrap {
|
||||
inherit pkgs;
|
||||
dynamicMode = true;
|
||||
imports = [
|
||||
self.modules.neovim.main
|
||||
#self.modules.neovim.allServers
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
}
|
||||
15
modules/features/nh.nix
Normal file
15
modules/features/nh.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
flake.nixosModules.nh = {pkgs, config, ...}: let
|
||||
user = config.preferences.user.name;
|
||||
in {
|
||||
programs.nh = {
|
||||
enable = true;
|
||||
clean = {
|
||||
enable = true;
|
||||
extraArgs = "--keep-since 30d --keep 15";
|
||||
};
|
||||
flake = "/home/${user}/Documents/MyNixOS/#laptop";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
189
modules/features/niri.nix
Normal file
189
modules/features/niri.nix
Normal file
@@ -0,0 +1,189 @@
|
||||
{ self, inputs, ... }: {
|
||||
flake.nixosModules.niri = { pkgs, lib, ... }: {
|
||||
environment.systemPackages = [
|
||||
pkgs.wl-clipboard
|
||||
pkgs.clipman
|
||||
];
|
||||
|
||||
programs.niri = {
|
||||
enable = true;
|
||||
package = self.packages.${pkgs.stdenv.hostPlatform.system}.myNiri;
|
||||
};
|
||||
};
|
||||
|
||||
flake.nixosModules.tuigreet = { pkgs, lib, ... }: {
|
||||
environment.systemPackages = with pkgs; [
|
||||
tuigreet
|
||||
];
|
||||
|
||||
|
||||
services.greetd = {
|
||||
enable = true;
|
||||
settings = {
|
||||
default_session = {
|
||||
command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd niri";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
|
||||
perSystem = { pkgs, lib, self', ... }: {
|
||||
packages.myNiri = inputs.wrapper-modules.wrappers.niri.wrap {
|
||||
inherit pkgs;
|
||||
settings = {
|
||||
spawn-at-startup = [
|
||||
(lib.getExe self'.packages.myNoctalia)
|
||||
];
|
||||
|
||||
prefer-no-csd = true;
|
||||
|
||||
xwayland-satellite.path = lib.getExe pkgs.xwayland-satellite;
|
||||
|
||||
input = {
|
||||
keyboard = {
|
||||
xkb.layout = "us,dk";
|
||||
xkb.options = "caps:escape,grp:win_space_toggle";
|
||||
repeat-rate = 25;
|
||||
repeat-delay = 300;
|
||||
};
|
||||
};
|
||||
extraConfig = ''
|
||||
gestures {
|
||||
hot-corners {
|
||||
off
|
||||
}
|
||||
}
|
||||
'';
|
||||
|
||||
|
||||
window-rules = [
|
||||
{
|
||||
matches = [ { is-focused = false; } ];
|
||||
default-column-width = { proportion = 1.; };
|
||||
opacity = 0.65;
|
||||
}
|
||||
{
|
||||
matches = [
|
||||
{ app-id = "firefox"; }
|
||||
{ app-id = "discord"; }
|
||||
];
|
||||
default-column-width = { proportion = 1.; };
|
||||
opacity = 1.;
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "Alacritty"; } ];
|
||||
excludes = [ { is-focused = false; } ];
|
||||
opacity = .90;
|
||||
}
|
||||
];
|
||||
|
||||
|
||||
|
||||
screenshot-path = "~/Pictures/Screenshots/screenshot-%Y-%m-%d-%H-%M-%S.png";
|
||||
hotkey-overlay.skip-at-startup = true;
|
||||
|
||||
layout = {
|
||||
gaps = 15;
|
||||
border.off = {};
|
||||
focus-ring.off = {};
|
||||
preset-column-widths = [
|
||||
{ proportion = 1.; }
|
||||
{ proportion = 1. / 2.; }
|
||||
{ proportion = 1. / 3.; }
|
||||
{ proportion = 2. / 3.; }
|
||||
];
|
||||
default-column-width = { proportion = 1. / 2.; };
|
||||
center-focused-column = "never"; #"on-overflow"; "always";
|
||||
default-column-display = "normal"; #"tabbed";
|
||||
};
|
||||
|
||||
binds = {
|
||||
"Mod+Return".spawn-sh = lib.getExe self'.packages.myAlacritty;
|
||||
"Mod+Shift+Slash".show-hotkey-overlay = {};
|
||||
"Mod+Shift+C".close-window = {};
|
||||
"Mod+Shift+Q".quit = {};
|
||||
"Mod+O".toggle-overview = {};
|
||||
|
||||
"Mod+Left".focus-column-left = {};
|
||||
"Mod+Down".focus-window-down = {};
|
||||
"Mod+Up".focus-window-up = {};
|
||||
"Mod+Right".focus-column-right = {};
|
||||
"Mod+Ctrl+Left".move-column-left = {};
|
||||
"Mod+Ctrl+Down".move-window-down = {};
|
||||
"Mod+Ctrl+Up".move-window-up = {};
|
||||
"Mod+Ctrl+Right".move-column-right = {};
|
||||
"Mod+H".focus-column-left = {};
|
||||
"Mod+J".focus-window-down = {};
|
||||
"Mod+K".focus-window-up = {};
|
||||
"Mod+L".focus-column-right = {};
|
||||
"Mod+Ctrl+H".move-column-left = {};
|
||||
"Mod+Ctrl+J".move-window-down = {};
|
||||
"Mod+Ctrl+K".move-window-up = {};
|
||||
"Mod+Ctrl+L".move-column-right = {};
|
||||
"Mod+Ctrl+Shift+j".move-workspace-down = {};
|
||||
"Mod+Ctrl+Shift+k".move-workspace-up = {};
|
||||
"Mod+U".focus-workspace-down = {};
|
||||
"Mod+I".focus-workspace-up = {};
|
||||
"Mod+Ctrl+U".move-column-to-workspace-down = {};
|
||||
"Mod+Ctrl+I".move-column-to-workspace-up = {};
|
||||
"Mod+R".switch-preset-column-width = {};
|
||||
|
||||
|
||||
"Mod+1".focus-workspace = 1;
|
||||
"Mod+2".focus-workspace = 2;
|
||||
"Mod+3".focus-workspace = 3;
|
||||
"Mod+4".focus-workspace = 4;
|
||||
"Mod+5".focus-workspace = 5;
|
||||
"Mod+6".focus-workspace = 6;
|
||||
"Mod+7".focus-workspace = 7;
|
||||
"Mod+8".focus-workspace = 8;
|
||||
"Mod+9".focus-workspace = 9;
|
||||
"Mod+Ctrl+1".move-column-to-workspace = 1;
|
||||
"Mod+Ctrl+2".move-column-to-workspace = 2;
|
||||
"Mod+Ctrl+3".move-column-to-workspace = 3;
|
||||
"Mod+Ctrl+4".move-column-to-workspace = 4;
|
||||
"Mod+Ctrl+5".move-column-to-workspace = 5;
|
||||
"Mod+Ctrl+6".move-column-to-workspace = 6;
|
||||
"Mod+Ctrl+7".move-column-to-workspace = 7;
|
||||
"Mod+Ctrl+8".move-column-to-workspace = 8;
|
||||
"Mod+Ctrl+9".move-column-to-workspace = 9;
|
||||
|
||||
"XF86AudioRaiseVolume".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call volume increase";
|
||||
"XF86AudioLowerVolume".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call volume decrease";
|
||||
"XF86AudioMute".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call volume muteOutput";
|
||||
|
||||
"XF86MonBrightnessUp".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call brightness increase";
|
||||
"XF86MonBrightnessDown".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call brightness decrease";
|
||||
|
||||
"XF86AudioPrev".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call media previous";
|
||||
"XF86AudioPlay".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call media playPause";
|
||||
"XF86AudioNext".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call media next";
|
||||
|
||||
"XF86AudioMedia".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call systemMonitor toggle";
|
||||
|
||||
|
||||
"Mod+Comma".consume-window-into-column = {};
|
||||
"Mod+Period".expel-window-from-column = {};
|
||||
"Mod+BracketLeft".consume-or-expel-window-left = {};
|
||||
"Mod+BracketRight".consume-or-expel-window-right = {};
|
||||
"Mod+F".maximize-column = {};
|
||||
"Mod+Shift+F".fullscreen-window = {};
|
||||
"Mod+W".toggle-column-tabbed-display = {};
|
||||
"Mod+V".toggle-window-floating = {};
|
||||
"Mod+Shift+V".switch-focus-between-floating-and-tiling = {};
|
||||
|
||||
"Print".screenshot = {};
|
||||
"Mod+Print".screenshot-window = {};
|
||||
"Mod+Shift+Print".screenshot-screen = {};
|
||||
|
||||
"Mod+Shift+L".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call sessionMenu lockAndSuspend";
|
||||
"Mod+Shift+E".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher emoji";
|
||||
"Mod+Shift+Escape".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call sessionMenu toggle";
|
||||
"Mod+P".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher toggle";
|
||||
"Mod+Y".spawn-sh = "${lib.getExe self'.packages.myNoctalia} ipc call launcher clipboard";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
2111
modules/features/noctalia.json
Normal file
2111
modules/features/noctalia.json
Normal file
File diff suppressed because it is too large
Load Diff
11
modules/features/noctalia.nix
Normal file
11
modules/features/noctalia.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{ self, inputs, ... }: {
|
||||
perSystem = { pkgs, ... }: {
|
||||
packages.myNoctalia = inputs.wrapper-modules.wrappers.noctalia-shell.wrap {
|
||||
inherit pkgs;
|
||||
settings =
|
||||
(builtins.fromJSON
|
||||
(builtins.readFile ./noctalia.json)).settings;
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
11
modules/features/pipewire.nix
Normal file
11
modules/features/pipewire.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{ self, inputs, ... }: {
|
||||
flake.nixosModules.pipewire = { pkgs, lib, ... }: {
|
||||
security.rtkit.enable = true;
|
||||
services.pipewire = {
|
||||
enable = true;
|
||||
alsa.enable = true;
|
||||
alsa.support32Bit = true;
|
||||
pulse.enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
9
modules/features/rofi.nix
Normal file
9
modules/features/rofi.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.rofi = { pkgs, ... }: let
|
||||
selfpkgs = self.packages."${pkgs.stdenv.hostPlatform.system}";
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
pkgs.rofi
|
||||
];
|
||||
};
|
||||
}
|
||||
11
modules/features/stylix.nix
Normal file
11
modules/features/stylix.nix
Normal file
@@ -0,0 +1,11 @@
|
||||
{ pkgs, inputs, ... }: {
|
||||
flake.nixosModules.stylix = {pkgs, ...}: {
|
||||
imports = [
|
||||
inputs.stylix.nixosModules.stylix
|
||||
];
|
||||
|
||||
stylix.enable = true;
|
||||
stylix.base16Scheme = "${pkgs.base16-schemes}/share/themes/kanagawa.yaml";
|
||||
|
||||
};
|
||||
}
|
||||
15
modules/features/thunar.nix
Normal file
15
modules/features/thunar.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{
|
||||
flake.nixosModules.thunar = {pkgs, ...}: {
|
||||
programs.thunar.enable = true;
|
||||
services.gvfs.enable = true;
|
||||
services.tumbler.enable = true;
|
||||
xdg.mime.defaultApplications = {
|
||||
"inode/directory" = "thunar.desktop";
|
||||
};
|
||||
|
||||
/* persistance.cache.directories = [
|
||||
".config/vesktop"
|
||||
];*/
|
||||
|
||||
};
|
||||
}
|
||||
183
modules/features/zsh.nix
Normal file
183
modules/features/zsh.nix
Normal file
@@ -0,0 +1,183 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.zsh = { pkgs, config, ... }: {
|
||||
|
||||
imports = [ # Include the results of the hardware scan.
|
||||
self.nixosModules.fastfetch
|
||||
];
|
||||
|
||||
programs.zsh.enable = true;
|
||||
programs.zsh.syntaxHighlighting.enable = true;
|
||||
programs.zsh.histSize=1000;
|
||||
programs.zsh.histFile="${config.users.users.adam.home}/.local/histfile";
|
||||
programs.zsh.setOptions= [
|
||||
"beep"
|
||||
"prompt_subst"
|
||||
];
|
||||
programs.zsh.shellInit =
|
||||
''
|
||||
bindkey -v
|
||||
bindkey "^H" backward-delete-char
|
||||
bindkey "^?" backward-delete-char
|
||||
'';
|
||||
environment.sessionVariables = rec {
|
||||
EDITOR = "nvim";
|
||||
BROWSER = "firefox";
|
||||
ZDOTDIR = "/etc/";
|
||||
};
|
||||
programs.zsh.shellAliases = {
|
||||
fs = "lf";
|
||||
ls = "ls --color=auto";
|
||||
cp = "cp -v";
|
||||
mkdir = "mkdir -v";
|
||||
mv = "mv -v";
|
||||
rm = "rm -v";
|
||||
};
|
||||
programs.zsh.promptInit =
|
||||
''
|
||||
autoload -Uz add-zsh-hook vcs_info
|
||||
add-zsh-hook precmd vcs_info
|
||||
sep=""
|
||||
rsep=""
|
||||
purple="#957fb8"
|
||||
blue="#7e9cd8"
|
||||
black="#090618"
|
||||
green="#76946a"
|
||||
zstyle ':vcs_info:*' formats "%F{$purple}%K{$blue}$sep%k%f%K{$blue}%F{$black} (%r:%b) %F{$blue}"
|
||||
export PS1='%K{$purple}%F{$black} %1~ %F{$purple}''${vcs_info_msg_0_}%k$sep%k%f '
|
||||
export RPROMPT="%F{$green}$rsep%f%K{$green}%F{$black} %n@%m %f%k"
|
||||
tty > /dev/null && (clear ; fastfetch)
|
||||
'';
|
||||
system.userActivationScripts.zshrc = "touch .zshrc";
|
||||
};
|
||||
|
||||
flake.nixosModules.fastfetch = { pkgs, ... }: let
|
||||
selfpkgs = self.packages."${pkgs.stdenv.hostPlatform.system}";
|
||||
in {
|
||||
environment.systemPackages = [
|
||||
selfpkgs.myFastfetch
|
||||
];
|
||||
};
|
||||
|
||||
perSystem = { pkgs, ... }: let
|
||||
conf =
|
||||
pkgs.writeText "config.jsonc"
|
||||
''
|
||||
{
|
||||
"''$schema": "https://github.com/fastfetch-cli/fastfetch/raw/dev/doc/json_schema.json",
|
||||
"logo": {
|
||||
"type": "auto",
|
||||
"color": {
|
||||
"1": "35",
|
||||
},
|
||||
},
|
||||
"display": {
|
||||
"separator": " ",
|
||||
"constants": [
|
||||
"─────────────────"
|
||||
],
|
||||
"key": {
|
||||
"type": "icon",
|
||||
"paddingLeft": 2
|
||||
},
|
||||
"color": {
|
||||
"keys": "35",
|
||||
},
|
||||
},
|
||||
"modules": [
|
||||
{
|
||||
"type": "custom", // HardwareStart
|
||||
"format": "┌{''$1} {#1}Hardware Information{#} {''$1}┐"
|
||||
},
|
||||
//"host",
|
||||
"cpu",
|
||||
"gpu",
|
||||
"disk",
|
||||
"swap",
|
||||
"display",
|
||||
"brightness",
|
||||
"battery",
|
||||
"poweradapter",
|
||||
"bluetooth",
|
||||
//"sound",
|
||||
"memory",
|
||||
"gamepad",
|
||||
{
|
||||
"type": "custom", // SoftwareStart
|
||||
"format": "├{''$1} {#1}Software Information{#} {''$1}┤"
|
||||
},
|
||||
/*{
|
||||
"type": "title",
|
||||
"keyIcon": "",
|
||||
"key": "Title", // Title module has no key by default, so that icon is not displayed
|
||||
"format": "{user-name}@{host-name}"
|
||||
},*/
|
||||
"os",
|
||||
//"kernel",
|
||||
//"lm",
|
||||
"de",
|
||||
"wm",
|
||||
"shell",
|
||||
"terminal",
|
||||
"terminalfont",
|
||||
"theme",
|
||||
"icons",
|
||||
"wallpaper",
|
||||
"packages",
|
||||
"uptime",
|
||||
//"media",
|
||||
/*{
|
||||
"type": "localip",
|
||||
"compact": true
|
||||
},
|
||||
"publicip",
|
||||
{
|
||||
"type": "wifi",
|
||||
"format": "{ssid}"
|
||||
},
|
||||
"locale",*/
|
||||
{
|
||||
"type": "custom", // InformationEnd
|
||||
"format": "└{''$1}──────────────────────{''$1}┘"
|
||||
},
|
||||
{
|
||||
"type": "colors",
|
||||
"paddingLeft": 2,
|
||||
"symbol": "circle"
|
||||
}
|
||||
]
|
||||
}
|
||||
'';
|
||||
logo =
|
||||
pkgs.writeText "navi.txt"
|
||||
''
|
||||
/X\
|
||||
XXX
|
||||
\X/
|
||||
/X/ /XXXXXXXXX\ \X\
|
||||
/XXX/ /XXX/ \XXX\ \XXX\
|
||||
/XX/ /XXX/ \XXX\ \XX\
|
||||
/XX/ XXX /XXX\ XXX \XX\
|
||||
XXX XXX /XXXXX\ XXX XXX
|
||||
XXX\ XXX \XXXXX/ XXX /XXX
|
||||
\XX\ \XX\ \XXX/ /XX/ /XX/
|
||||
\XXX\ \XX\ /XX/ /XXX/
|
||||
XX \XX\ \XXX\ /XXX/ /XX/ XX
|
||||
XX \XX\ /XX/ XX
|
||||
XXX XXX
|
||||
XXX XXX
|
||||
\XX\ /XX/ \XX\ /XX/
|
||||
\XXXXXXX/ \XXXXXXX/
|
||||
|
||||
'';
|
||||
|
||||
in {
|
||||
packages.myFastfetch = inputs.wrappers.lib.wrapPackage {
|
||||
inherit pkgs;
|
||||
package = pkgs.fastfetch;
|
||||
flags = {
|
||||
"--config" = "${conf}";
|
||||
"--logo" = "${logo}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
116
modules/host/laptop/configuration.nix
Normal file
116
modules/host/laptop/configuration.nix
Normal file
@@ -0,0 +1,116 @@
|
||||
{self, inputs, ... }: {
|
||||
flake.nixosModules.laptopConfiguration = { config, pkgs, self', ... }: {
|
||||
imports =
|
||||
[ # Include the results of the hardware scan.
|
||||
self.nixosModules.base
|
||||
self.nixosModules.laptopHardware
|
||||
self.nixosModules.visualProfile
|
||||
];
|
||||
|
||||
nix.settings.experimental-features = [ "nix-command" "flakes" ];
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
nerd-fonts.bitstream-vera-sans-mono
|
||||
];
|
||||
|
||||
# BIOS
|
||||
services.fwupd.enable = true;
|
||||
|
||||
# Bootloader.
|
||||
boot.loader.systemd-boot.enable = true;
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
|
||||
# Use latest kernel.
|
||||
boot.kernelPackages = pkgs.linuxPackages_latest;
|
||||
|
||||
networking.hostName = "laptop"; # Define your hostname.
|
||||
# networking.wireless.enable = true; # Enables wireless support via wpa_supplicant.
|
||||
|
||||
powerManagement.enable = true;
|
||||
services.power-profiles-daemon.enable = true;
|
||||
services.upower.enable = true;
|
||||
#services.tlp.enable = true;
|
||||
|
||||
# Configure network proxy if necessary
|
||||
# networking.proxy.default = "http://user:password@proxy:port/";
|
||||
# networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain";
|
||||
|
||||
# Enable networking
|
||||
networking.networkmanager.enable = true;
|
||||
|
||||
# Set your time zone.
|
||||
time.timeZone = "Europe/Copenhagen";
|
||||
|
||||
# Select internationalisation properties.
|
||||
i18n.defaultLocale = "en_DK.UTF-8";
|
||||
|
||||
i18n.extraLocaleSettings = {
|
||||
LC_ADDRESS = "da_DK.UTF-8";
|
||||
LC_IDENTIFICATION = "da_DK.UTF-8";
|
||||
LC_MEASUREMENT = "da_DK.UTF-8";
|
||||
LC_MONETARY = "da_DK.UTF-8";
|
||||
LC_NAME = "da_DK.UTF-8";
|
||||
LC_NUMERIC = "da_DK.UTF-8";
|
||||
LC_PAPER = "da_DK.UTF-8";
|
||||
LC_TELEPHONE = "da_DK.UTF-8";
|
||||
LC_TIME = "da_DK.UTF-8";
|
||||
};
|
||||
|
||||
# Configure keymap in X11
|
||||
services.xserver.xkb = {
|
||||
layout = "us";
|
||||
variant = "";
|
||||
};
|
||||
|
||||
|
||||
# Define a user account. Don't forget to set a password with ‘passwd’.
|
||||
users.users.${config.preferences.user.name} = {
|
||||
isNormalUser = true;
|
||||
description = "Adam";
|
||||
extraGroups = [ "networkmanager" "wheel" ];
|
||||
packages = with pkgs; [];
|
||||
shell = pkgs.zsh;
|
||||
};
|
||||
|
||||
# Allow unfree packages
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
|
||||
programs.git.enable = true;
|
||||
|
||||
# List packages installed in system profile. To search, run:
|
||||
# $ nix search wget
|
||||
environment.systemPackages = with pkgs; [
|
||||
vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default.
|
||||
wget
|
||||
#self.packages.${pkgs.system}.lf
|
||||
];
|
||||
|
||||
# Some programs need SUID wrappers, can be configured further or are
|
||||
# started in user sessions.
|
||||
# programs.mtr.enable = true;
|
||||
# programs.gnupg.agent = {
|
||||
# enable = true;
|
||||
# enableSSHSupport = true;
|
||||
# };
|
||||
|
||||
# List services that you want to enable:
|
||||
|
||||
# Enable the OpenSSH daemon.
|
||||
# services.openssh.enable = true;
|
||||
|
||||
# Open ports in the firewall.
|
||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||
# networking.firewall.allowedUDPPorts = [ ... ];
|
||||
# Or disable the firewall altogether.
|
||||
# networking.firewall.enable = false;
|
||||
|
||||
# This value determines the NixOS release from which the default
|
||||
# settings for stateful data, like file locations and database versions
|
||||
# on your system were taken. It‘s perfectly fine and recommended to leave
|
||||
# this value at the release version of the first install of this system.
|
||||
# Before changing this value read the documentation for this option
|
||||
# (e.g. man configuration.nix or on https://nixos.org/nixos/options.html).
|
||||
system.stateVersion = "25.11"; # Did you read the comment?
|
||||
|
||||
};
|
||||
}
|
||||
9
modules/host/laptop/default.nix
Normal file
9
modules/host/laptop/default.nix
Normal file
@@ -0,0 +1,9 @@
|
||||
{ self, inputs, ... }: {
|
||||
|
||||
flake.nixosConfigurations.laptop = inputs.nixpkgs.lib.nixosSystem {
|
||||
modules = [
|
||||
self.nixosModules.laptopConfiguration
|
||||
];
|
||||
};
|
||||
|
||||
}
|
||||
39
modules/host/laptop/hardware-configuration.nix
Normal file
39
modules/host/laptop/hardware-configuration.nix
Normal file
@@ -0,0 +1,39 @@
|
||||
{ self, inputs, ... }: {
|
||||
|
||||
flake.nixosModules.laptopHardware = { config, lib, pkgs, modulesPath, ... }: {
|
||||
imports =
|
||||
[
|
||||
(modulesPath + "/installer/scan/not-detected.nix")
|
||||
inputs.nixos-hardware.nixosModules.framework-13-7040-amd
|
||||
];
|
||||
|
||||
boot.initrd.availableKernelModules = [
|
||||
"nvme"
|
||||
"xhci_pci"
|
||||
"thunderbolt"
|
||||
"usb_storage"
|
||||
"sd_mod"
|
||||
];
|
||||
boot.initrd.kernelModules = [ ];
|
||||
boot.kernelModules = [ "kvm-amd" ];
|
||||
boot.extraModulePackages = [ ];
|
||||
|
||||
fileSystems."/" = {
|
||||
device = "/dev/disk/by-uuid/e920679f-af38-4509-bb4a-98c12d8606a5";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
fileSystems."/boot" = {
|
||||
device = "/dev/disk/by-uuid/3800-D0D0";
|
||||
fsType = "vfat";
|
||||
options = [ "fmask=0077" "dmask=0077" ];
|
||||
};
|
||||
|
||||
swapDevices = [
|
||||
{ device = "/dev/disk/by-uuid/f1657874-9bb9-4724-8ddb-05ddc5aca5d9"; }
|
||||
];
|
||||
|
||||
nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux";
|
||||
hardware.cpu.amd.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware;
|
||||
};
|
||||
}
|
||||
10
modules/parts.nix
Normal file
10
modules/parts.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
config = {
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
"x86_64-darwin"
|
||||
"aarch64-linux"
|
||||
"aarch64-darwin"
|
||||
];
|
||||
};
|
||||
}
|
||||
31
modules/profiles/profiles.nix
Normal file
31
modules/profiles/profiles.nix
Normal file
@@ -0,0 +1,31 @@
|
||||
{ inputs, lib, self, ... }: {
|
||||
flake.nixosModules.main = { pkgs, ... }: {
|
||||
imports = [
|
||||
self.nixosModules.git
|
||||
self.nixosModules.lf
|
||||
self.nixosModules.zsh
|
||||
self.nixosModules.stylix
|
||||
self.nixosModules.hjem
|
||||
self.nixosModules.nh
|
||||
];
|
||||
};
|
||||
|
||||
flake.nixosModules.visualProfile = { pkgs, ... }: {
|
||||
imports = [
|
||||
self.nixosModules.main
|
||||
|
||||
self.nixosModules.niri
|
||||
self.nixosModules.pipewire
|
||||
self.nixosModules.discord
|
||||
self.nixosModules.neovim
|
||||
self.nixosModules.alacritty
|
||||
self.nixosModules.firefox
|
||||
self.nixosModules.chromium
|
||||
self.nixosModules.keepmenu
|
||||
self.nixosModules.rofi
|
||||
self.nixosModules.tuigreet
|
||||
];
|
||||
};
|
||||
|
||||
#flake.nixosModules.INSERTNAMEHERE = { pkgs, ... }: {};
|
||||
}
|
||||
10
modules/profiles/user.nix
Normal file
10
modules/profiles/user.nix
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
flake.nixosModules.base = {lib, ...}: {
|
||||
options.preferences = {
|
||||
user.name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "adam";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user