25 Commits

Author SHA1 Message Date
450118d234 remove dead code with deadnix 2023-02-20 20:45:56 -05:00
cc84f1d37a move nixos and darwin back into modules dir 2023-02-20 20:37:37 -05:00
ded498f4c9 switch from uuid to label disks 2023-02-20 20:30:45 -05:00
0d0ee1fc5a improve readme clarity 2023-02-20 20:26:14 -05:00
251dce68bb remove mitm ssl instructions 2023-02-20 20:13:52 -05:00
448c97665b move public-keys to root directory 2023-02-20 20:02:21 -05:00
86aa02aae4 rename patches directory to overlays 2023-02-20 20:00:54 -05:00
6cd22bc7ce remove bypass-paywalls-clean
no longer available from mozilla extensions
2023-02-20 17:49:19 -05:00
048de4772c rename 1password module with underscore 2023-02-20 17:49:00 -05:00
700e59e6c8 update outdated readme 2023-02-20 17:48:11 -05:00
07e0afa1e9 fix: iso generating 2023-02-20 17:32:14 -05:00
6577b9e49b initial setup for swan and staff 2023-02-18 10:24:54 -05:00
58a0e6166d allow reading windows ntfs drives 2023-02-17 18:15:23 -05:00
e8c5a10df7 attempt to set default apps for xdg-open 2023-02-17 18:14:57 -05:00
37fa835c66 update lockfile, host name updates 2023-02-12 21:26:12 -05:00
fa69557ced change hostname theme 2023-02-11 14:35:38 +00:00
a9a06fb5fc fix steam games not launching 2023-02-05 17:16:20 -05:00
ceaad9d186 update lockfile, fix age not building 2023-02-02 11:01:12 -05:00
521937e366 fix desktop for new pc build 2023-01-31 09:07:47 -05:00
8915f17ea3 fixes for latest wsl 2023-01-28 15:36:52 +00:00
17799909b2 fix: polybar not showing i3 workspaces 2023-01-21 19:46:56 -05:00
7a4c3b930d firefox working again
still polybar is broken
2023-01-21 10:44:39 -05:00
e7bbee5da0 fix desktop to work with refactor 2023-01-21 09:29:03 -05:00
2dda6a31bd update lockfile, fix treesitter for terraform filetypes 2023-01-09 13:09:12 -05:00
e4d76189e6 update lockfile 2023-01-06 15:46:59 -05:00
182 changed files with 441 additions and 318 deletions

View File

@ -1,3 +1,5 @@
# System Configurations
This repository contains configuration files for my NixOS, macOS, and WSL This repository contains configuration files for my NixOS, macOS, and WSL
hosts. hosts.
@ -6,31 +8,31 @@ configuration may be difficult to translate to a non-Nix system.
However, some of the configurations are easier to lift directly: However, some of the configurations are easier to lift directly:
- [Neovim](https://github.com/nmasur/dotfiles/tree/master/modules/neovim/config) - [Neovim](https://github.com/nmasur/dotfiles/tree/master/modules/common/neovim/config)
- [Fish functions](https://github.com/nmasur/dotfiles/tree/master/modules/shell/fish/functions) - [Fish functions](https://github.com/nmasur/dotfiles/tree/master/modules/common/shell/fish/functions)
- [More fish aliases](https://github.com/nmasur/dotfiles/blob/master/modules/shell/fish/default.nix) - [More fish aliases](https://github.com/nmasur/dotfiles/blob/master/modules/common/shell/fish/default.nix)
- [Git aliases](https://github.com/nmasur/dotfiles/blob/master/modules/shell/git.nix) - [Git aliases](https://github.com/nmasur/dotfiles/blob/master/modules/common/shell/git.nix)
- [Hammerspoon](https://github.com/nmasur/dotfiles/tree/master/modules/darwin/hammerspoon) - [Hammerspoon](https://github.com/nmasur/dotfiles/tree/master/modules/darwin/hammerspoon)
Try out my Neovim config: Try out my Neovim config (requires [nix](https://nixos.org/download.html)):
```bash ```bash
nix run github:nmasur/dotfiles#neovim nix run github:nmasur/dotfiles#neovim
``` ```
Or build it as a package: Or build it as a package (requires [nix](https://nixos.org/download.html)):
```bash ```bash
nix build github:nmasur/dotfiles#neovim nix build github:nmasur/dotfiles#neovim
``` ```
If you already have a Neovim configuration, you may need to move it out of If you already have a Neovim configuration, you may need to move it out of
`~/.config/nvim` or set `XDG_CONFIG_HOME` to another value; otherwise, both `~/.config/nvim` or set `XDG_CONFIG_HOME` to another value; otherwise both
configs might conflict with each other. configs might conflict with each other.
--- ---
# Installation # Full Installation
## NixOS - From Live Disk ## NixOS - From Live Disk
@ -42,7 +44,7 @@ installer disk:
```bash ```bash
lsblk # Choose the disk you want to wipe lsblk # Choose the disk you want to wipe
nix-shell -p nixVersions.stable nix-shell -p nixVersions.stable
nix run github:nmasur/dotfiles#installer -- nvme0n1 desktop nix run github:nmasur/dotfiles#installer -- nvme0n1 tempest
``` ```
## NixOS - From Existing System ## NixOS - From Existing System
@ -52,7 +54,7 @@ following command:
```bash ```bash
nix-shell -p nixVersions.stable nix-shell -p nixVersions.stable
sudo nixos-rebuild switch --flake github:nmasur/dotfiles#desktop sudo nixos-rebuild switch --flake github:nmasur/dotfiles#tempest
``` ```
## Windows - From NixOS WSL ## Windows - From NixOS WSL
@ -63,7 +65,7 @@ the WSL configuration:
``` ```
nix-shell -p nixVersions.stable nix-shell -p nixVersions.stable
sudo nixos-rebuild switch --flake github:nmasur/dotfiles#wsl sudo nixos-rebuild switch --flake github:nmasur/dotfiles#hydra
``` ```
You should also download the You should also download the
@ -90,17 +92,7 @@ nix-build https://github.com/LnL7/nix-darwin/archive/master.tar.gz -A installer
Then switch to the macOS configuration: Then switch to the macOS configuration:
```bash ```bash
darwin-rebuild switch --flake github:nmasur/dotfiles#macbook darwin-rebuild switch --flake github:nmasur/dotfiles#lookingglass
```
### Dealing with corporate MITM SSL certificates:
```bash
# Get the certificates
openssl s_client -showcerts -verify 5 -connect cache.nixos.org:443 < /dev/null
# Paste them in here
sudo nvim $NIX_SSL_CERT_FILE
``` ```
--- ---

View File

@ -34,7 +34,7 @@
echo ${pkgs.system} echo ${pkgs.system}
SYSTEM=${if pkgs.stdenv.isDarwin then "darwin" else "linux"} SYSTEM=${if pkgs.stdenv.isDarwin then "darwin" else "linux"}
if [ "$SYSTEM" == "darwin" ]; then if [ "$SYSTEM" == "darwin" ]; then
darwin-rebuild switch --flake github:nmasur/dotfiles#macbook darwin-rebuild switch --flake github:nmasur/dotfiles#lookingglass
else else
nixos-rebuild switch --flake github:nmasur/dotfiles nixos-rebuild switch --flake github:nmasur/dotfiles
fi fi
@ -57,7 +57,7 @@
neovim = { neovim = {
type = "app"; type = "app";
program = "${ program = "${
(import ../modules/neovim/package { (import ../modules/common/neovim/package {
inherit pkgs; inherit pkgs;
colors = colors =
import ../colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; }; import ../colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; };

View File

@ -11,7 +11,7 @@
tmpfile=$(mktemp) tmpfile=$(mktemp)
echo "''${secret}" > ''${tmpfile} echo "''${secret}" > ''${tmpfile}
${pkgs.age}/bin/age --encrypt --armor --recipients-file ${ ${pkgs.age}/bin/age --encrypt --armor --recipients-file ${
builtins.toString ../hosts/public-keys builtins.toString ../public-keys
} $tmpfile } $tmpfile
rm $tmpfile rm $tmpfile
''); '');

View File

@ -17,7 +17,7 @@
--identity ~/.ssh/id_ed25519 $encryptedfile > $tmpfile --identity ~/.ssh/id_ed25519 $encryptedfile > $tmpfile
echo "Encrypting ''${encryptedfile}..." echo "Encrypting ''${encryptedfile}..."
${pkgs.age}/bin/age --encrypt --armor --recipients-file ${ ${pkgs.age}/bin/age --encrypt --armor --recipients-file ${
builtins.toString ../hosts/public-keys builtins.toString ../public-keys
} $tmpfile > $encryptedfile } $tmpfile > $encryptedfile
rm $tmpfile rm $tmpfile
done done

138
flake.lock generated
View File

@ -3,11 +3,11 @@
"Comment-nvim-src": { "Comment-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1668781964, "lastModified": 1674040818,
"narHash": "sha256-po1MyuuOH3e8yJTAtkxnusFSJuNpQnjpe+zfWPoO62E=", "narHash": "sha256-7UtZAE9tPlnpeHS2LLol/LGVOxptDXNKWXHNHvFBNk4=",
"owner": "numToStr", "owner": "numToStr",
"repo": "Comment.nvim", "repo": "Comment.nvim",
"rev": "5f01c1a89adafc52bf34e3bf690f80d9d726715d", "rev": "eab2c83a0207369900e92783f56990808082eac2",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -19,11 +19,11 @@
"bufferline-nvim-src": { "bufferline-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1668632062, "lastModified": 1676130961,
"narHash": "sha256-qGl1jwBaMFWsrth7F20KrfJpyVENF8GEOJsVBBcSTVA=", "narHash": "sha256-3LT45i0eSMfUV9EBrtdtzHxFKRATIhRy/faDd3lI3mA=",
"owner": "akinsho", "owner": "akinsho",
"repo": "bufferline.nvim", "repo": "bufferline.nvim",
"rev": "4ecfa81e470a589e74adcde3d5bb1727dd407363", "rev": "84b0822b2af478d0b4f7b0f9249ca218855331db",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -35,11 +35,11 @@
"cmp-nvim-lsp-src": { "cmp-nvim-lsp-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1668566979, "lastModified": 1675708067,
"narHash": "sha256-Mqkp8IH/laUx0cK7S0BjusTT+OtOOJOamZM4+93RHdU=", "narHash": "sha256-DxpcPTBlvVP88PDoTheLV2fC76EXDqS2UpM5mAfj/D4=",
"owner": "hrsh7th", "owner": "hrsh7th",
"repo": "cmp-nvim-lsp", "repo": "cmp-nvim-lsp",
"rev": "59224771f91b86d1de12570b4070fe4ad7cd1eeb", "rev": "0e6b2ed705ddcff9738ec4ea838141654f12eeef",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -55,11 +55,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1671196037, "lastModified": 1673295039,
"narHash": "sha256-2+J98SeczFWonbqFLMEAQC7vZEe6I2gM17XYvEmG52I=", "narHash": "sha256-AsdYgE8/GPwcelGgrntlijMg4t3hLFJFCRF3tL5WVjA=",
"owner": "lnl7", "owner": "lnl7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "adb8ac0453c8b2c40f5bffb578453dbaee838952", "rev": "87b9d090ad39b25b2400029c64825fc2a8868943",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -74,11 +74,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1671410692, "lastModified": 1675471726,
"narHash": "sha256-azBs+c7zMnjNXntsnFM67AKsTdlUhU4eFzZwtTEGScs=", "narHash": "sha256-526iHwidfdtZZ7aAU9od1/zbyfSFBEailBTet+Gvfqg=",
"owner": "bandithedoge", "owner": "bandithedoge",
"repo": "nixpkgs-firefox-darwin", "repo": "nixpkgs-firefox-darwin",
"rev": "ce6bde60382284ca3044b4010143fec0c44a3cf5", "rev": "813d55a3e3b3c0423eb5d1fcb4bf82197c9f7796",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -90,11 +90,11 @@
"flake-compat": { "flake-compat": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1668681692, "lastModified": 1673956053,
"narHash": "sha256-Ht91NGdewz8IQLtWZ9LCeNXMSXHUss+9COoqu6JLmXU=", "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=",
"owner": "edolstra", "owner": "edolstra",
"repo": "flake-compat", "repo": "flake-compat",
"rev": "009399224d5e398d03b22badca40a37ac85412a1", "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -156,11 +156,11 @@
"utils": "utils" "utils": "utils"
}, },
"locked": { "locked": {
"lastModified": 1671459164, "lastModified": 1675935446,
"narHash": "sha256-RbkDnvLV7WjbiF4Dpiezrf8kXxwieQXAVtY8ciRQj6Q=", "narHash": "sha256-WajulTn7QdwC7QuXRBavrANuIXE5z+08EdxdRw1qsNs=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e7eba9cc46547ae86642ad3c6a9a4fb22c07bc26", "rev": "2dce7f1a55e785a22d61668516df62899278c9e4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -177,11 +177,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1670595719, "lastModified": 1676110678,
"narHash": "sha256-9jvA0QdcZtGWImiRZ8KRhXNsy5NxgZBm0TXtNLmFbyM=", "narHash": "sha256-hemg8rMKS2me2Wua9ZG/0aQ8fEOfytjyKB+WYcXfEKE=",
"owner": "oxalica", "owner": "oxalica",
"repo": "nil", "repo": "nil",
"rev": "1c122ae707c6365ea731565daf307844df03e95e", "rev": "ce2e0b5d60fe497134050796f7d12ffb6b50eb28",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -198,11 +198,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1671522211, "lastModified": 1673891598,
"narHash": "sha256-i5BLrj3wlIC1VMQTfBSYIasEmv3D4as0Mu2K3rdJrSU=", "narHash": "sha256-EevceKxQtA+I0XVA8tBGKmYV1V1KbWc3gsswysMzeDk=",
"owner": "gytis-ivaskevicius", "owner": "gytis-ivaskevicius",
"repo": "nix2vim", "repo": "nix2vim",
"rev": "3cc95ef557b6e2f97f5ff14ae89997a564d3a130", "rev": "5b31eb81e2c6c74f9e8a4911660f3bf585d55158",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -234,11 +234,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1671355134, "lastModified": 1674666581,
"narHash": "sha256-ZtnUWTDDyFog+NQBjZpnhgPdj3gHp5ImxFVWy+ObNno=", "narHash": "sha256-KNI2s/xrL7WOYaPJAWKBtb7cCH3335rLfsL+B+ssuGY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nixos-generators", "repo": "nixos-generators",
"rev": "64a96ca8621d03cb3889daf0d3ff58d8209e3e0c", "rev": "6a5dc1d3d557ea7b5c19b15ff91955124d0400fa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -265,11 +265,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1670559856, "lastModified": 1675309347,
"narHash": "sha256-xUkgQRFqE6HIFQXs9SIXMZiXcLaH2415UR6w/FnsgcY=", "narHash": "sha256-D3CQ6HRDT2m3XJlrzb5jKq4vNFR5xFTEFKC7iSjlFpM=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "6bc6f77cb171a74001033d94f17f49043a9f1804", "rev": "006c3bd4dd2f5d1d2094047f307cbf9e2b73d9c5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -281,11 +281,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1671359686, "lastModified": 1676110339,
"narHash": "sha256-3MpC6yZo+Xn9cPordGz2/ii6IJpP2n8LE8e/ebUXLrs=", "narHash": "sha256-kOS/L8OOL2odpCOM11IevfHxcUeE0vnZUQ74EOiwXcs=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "04f574a1c0fde90b51bf68198e2297ca4e7cccf4", "rev": "e5530aba13caff5a4f41713f1265b754dc2abfd8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -297,11 +297,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1671313200, "lastModified": 1674868155,
"narHash": "sha256-itZTrtHeDJjV696+ur0/TzkTqb5y3Eb57WRLRPK3rwA=", "narHash": "sha256-eFNm2h6fNbgD7ZpO4MHikCB5pSnCJ7DTmwPisjetmwc=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "0938d73bb143f4ae037143572f11f4338c7b2d1c", "rev": "ce20e9ebe1903ea2ba1ab006ec63093020c761cb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -314,11 +314,11 @@
"null-ls-nvim-src": { "null-ls-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1671458255, "lastModified": 1676246878,
"narHash": "sha256-YQaWKSW9D1HEBva9GeivQkylFeYfTrFUiTkXYF4V8SA=", "narHash": "sha256-hAUEa2zNsYXQ+TsHYHBzcW67lCxhiD7x+uPbdOZwY8o=",
"owner": "jose-elias-alvarez", "owner": "jose-elias-alvarez",
"repo": "null-ls.nvim", "repo": "null-ls.nvim",
"rev": "db1c7cb5f6d6f6036b7f8433bb3cfcbe985cb3d1", "rev": "d4594231a06cecce73a78a256b0d7c7ab51f7dd5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -329,11 +329,11 @@
}, },
"nur": { "nur": {
"locked": { "locked": {
"lastModified": 1671547500, "lastModified": 1676251563,
"narHash": "sha256-97hzIBBNDbva9eRj1WomM+pimxt7hVrH/yNjUfJSMJc=", "narHash": "sha256-itLKR2Haeh5wQ6dxkuZ8L5gwp3+CAggpN+w2e7cLQPg=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nur", "repo": "nur",
"rev": "4103fbdf825891b4dc54a6bda72ef1757081444c", "rev": "9a8b28a9d6611f6af9f7abb3e690fc755d6906fe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -345,11 +345,11 @@
"nvim-lspconfig-src": { "nvim-lspconfig-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1671517641, "lastModified": 1676175675,
"narHash": "sha256-RWXc/nCVNPv0BQN99QQMfeplQFpEsNJdmyoC/TQuIYQ=", "narHash": "sha256-Wg3NatT4DRBMF6hCxK4C2DC+geFMpfFUFogPbqeMt6E=",
"owner": "neovim", "owner": "neovim",
"repo": "nvim-lspconfig", "repo": "nvim-lspconfig",
"rev": "d597b0f3605f43526f1b6948c6d7ca2919ea32ac", "rev": "1712672e4da3003a0dd9f771d30389600b360f42",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -361,11 +361,11 @@
"nvim-tree-lua-src": { "nvim-tree-lua-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1671430707, "lastModified": 1676244722,
"narHash": "sha256-SdQ7nCgrtSN96XeaPjDoGnc++jllYy/up/jDc5LunRM=", "narHash": "sha256-xoSekdZhWr59qTOM0/ihYiuKiwHiKYb42Ep5JHn65UM=",
"owner": "kyazdani42", "owner": "kyazdani42",
"repo": "nvim-tree.lua", "repo": "nvim-tree.lua",
"rev": "e14c2895b4f36a22001f7773244041c173dcf867", "rev": "ba1778e061f25814bc5940be886a7f41d7d7736e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -377,11 +377,11 @@
"nvim-treesitter-src": { "nvim-treesitter-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1671521720, "lastModified": 1676240774,
"narHash": "sha256-GeuRomX3cFXK/zqWf1SJ3WXbTSLLy3FT99lIyhVnefo=", "narHash": "sha256-eRSU/9ysSvTyYxBrp9Whg0eXgAOsCdmIHMlYZK7bjRg=",
"owner": "nvim-treesitter", "owner": "nvim-treesitter",
"repo": "nvim-treesitter", "repo": "nvim-treesitter",
"rev": "eedb7b9c69b13afe86461b0742266bb62b811ece", "rev": "7eb5f1a2e3949496f26c4084b521b30f2d08137a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -426,11 +426,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1670552927, "lastModified": 1675391458,
"narHash": "sha256-lCE51eAGrAFS4k9W5aDGFpVtOAwQQ/rFMN80PCDh0vo=", "narHash": "sha256-ukDKZw922BnK5ohL9LhwtaDAdCsJL7L6ScNEyF1lO9w=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "a0fdafd18c9cf599fde17fbaf07dbb20fa57eecb", "rev": "383a4acfd11d778d5c2efcf28376cbd845eeaedf",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -442,11 +442,11 @@
"telescope-nvim-src": { "telescope-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1669979094, "lastModified": 1675149856,
"narHash": "sha256-5UgCqnDs4iubnq7gER1wC8Mk9UZuo8cWqDB8ZbyGCRI=", "narHash": "sha256-L4Kw94CUy6N7zcyy9INuR/O0fxQ7sp0IvGd/u7fHxMA=",
"owner": "nvim-telescope", "owner": "nvim-telescope",
"repo": "telescope.nvim", "repo": "telescope.nvim",
"rev": "cabf991b1d3996fa6f3232327fc649bbdf676496", "rev": "203bf5609137600d73e8ed82703d6b0e320a5f36",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -458,11 +458,11 @@
"telescope-project-nvim-src": { "telescope-project-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1665406281, "lastModified": 1671805267,
"narHash": "sha256-ZBFgUlW+h7vndazZ0lZux8i7yQHKJNDPQPZ2z96Rfpk=", "narHash": "sha256-S4SOHzQ17ux5pcwwYFpVVLzjLeC4/EJ0IFPbrfzUJC8=",
"owner": "nvim-telescope", "owner": "nvim-telescope",
"repo": "telescope-project.nvim", "repo": "telescope-project.nvim",
"rev": "ff4d3cea905383a67d1a47b9dd210c4907d858c2", "rev": "8e8ee37b7210761502cdf2c3a82b5ba8fb5b2972",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -474,11 +474,11 @@
"toggleterm-nvim-src": { "toggleterm-nvim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1670593071, "lastModified": 1675358836,
"narHash": "sha256-0n3WbUM3rYyR2BXgeyYuyTZIbIs5dzuIu8imsSvAc8U=", "narHash": "sha256-9O7p/7tRStg51OFhMc88M5ewYquiYC9x9CV4s5veVP8=",
"owner": "akinsho", "owner": "akinsho",
"repo": "toggleterm.nvim", "repo": "toggleterm.nvim",
"rev": "b02a1674bd0010d7982b056fd3df4f717ff8a57a", "rev": "19aad0f41f47affbba1274f05e3c067e6d718e1e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -525,11 +525,11 @@
"nixpkgs": "nixpkgs_4" "nixpkgs": "nixpkgs_4"
}, },
"locked": { "locked": {
"lastModified": 1671480147, "lastModified": 1676126384,
"narHash": "sha256-IzWdZL8jMNtyKsXXJjn2L4MsBeR52WBdhciPw4latHU=", "narHash": "sha256-3aAnN891Cb1pizewAgaHIo3W1WbAjXtoWuX8n3j8YoI=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NixOS-WSL", "repo": "NixOS-WSL",
"rev": "577d7919e4380e6905e69d4a5f8f48a41ca37187", "rev": "a1c7e8bebac32cfac7aa8498bdfc60cbff13eb50",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@ -94,7 +94,7 @@
}; };
outputs = { self, nixpkgs, ... }@inputs: outputs = { nixpkgs, ... }@inputs:
let let
@ -112,7 +112,8 @@
overlays = [ overlays = [
inputs.nur.overlay inputs.nur.overlay
inputs.nix2vim.overlay inputs.nix2vim.overlay
(import ./modules/neovim/plugins-overlay.nix inputs) (import ./overlays/neovim-plugins.nix inputs)
(import ./overlays/calibre-web.nix)
]; ];
# System types to support. # System types to support.
@ -125,22 +126,24 @@
in rec { in rec {
nixosConfigurations = { nixosConfigurations = {
desktop = import ./hosts/desktop { inherit inputs globals overlays; }; tempest = import ./hosts/tempest { inherit inputs globals overlays; };
wsl = import ./hosts/wsl { inherit inputs globals overlays; }; hydra = import ./hosts/hydra { inherit inputs globals overlays; };
oracle = import ./hosts/oracle { inherit inputs globals overlays; }; flame = import ./hosts/flame { inherit inputs globals overlays; };
swan = import ./hosts/swan { inherit inputs globals overlays; };
}; };
darwinConfigurations = { darwinConfigurations = {
macbook = import ./hosts/macbook { inherit inputs globals overlays; }; lookingglass =
import ./hosts/lookingglass { inherit inputs globals overlays; };
}; };
# For quickly applying local settings with: # For quickly applying local settings with:
# home-manager switch --flake .#desktop # home-manager switch --flake .#tempest
homeConfigurations = { homeConfigurations = {
desktop = tempest =
nixosConfigurations.desktop.config.home-manager.users.${globals.user}.home; nixosConfigurations.tempest.config.home-manager.users.${globals.user}.home;
macbook = lookingglass =
darwinConfigurations.macbook.config.home-manager.users."Noah.Masur".home; darwinConfigurations.lookingglass.config.home-manager.users."Noah.Masur".home;
}; };
# Package servers into images with a generator # Package servers into images with a generator
@ -148,11 +151,17 @@
aws = { aws = {
"${system}" = "${system}" =
import ./hosts/aws { inherit inputs globals system overlays; }; import ./generators/aws { inherit inputs globals system overlays; };
};
staff = {
"${system}" = import ./generators/staff {
inherit inputs globals system overlays;
};
}; };
neovim = let pkgs = import nixpkgs { inherit system overlays; }; neovim = let pkgs = import nixpkgs { inherit system overlays; };
in import ./modules/neovim/package { in import ./modules/common/neovim/package {
inherit pkgs; inherit pkgs;
colors = colors =
import ./colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; }; import ./colorscheme/gruvbox/neovim-gruvbox.nix { inherit pkgs; };

View File

@ -15,16 +15,16 @@ nixos-generators.nixosGenerate {
gitEmail = globals.gitEmail; gitEmail = globals.gitEmail;
networking.hostName = "sheep"; networking.hostName = "sheep";
gui.enable = false; gui.enable = false;
colorscheme = (import ../modules/colorscheme/gruvbox); colorscheme = (import ../colorscheme/gruvbox);
passwordHash = null; passwordHash = null;
publicKey = publicKey =
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"; "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s";
# AWS settings require this # AWS settings require this
permitRootLogin = "prohibit-password"; permitRootLogin = "prohibit-password";
} }
../../hosts/common.nix ../../modules/common
../../modules/nixos ../../modules/nixos
../../modules/services/sshd.nix ../../modules/common/services/sshd.nix
] ++ [ ] ++ [
# Required to fix diskSize errors during build # Required to fix diskSize errors during build
({ ... }: { amazonImage.sizeMB = 16 * 1024; }) ({ ... }: { amazonImage.sizeMB = 16 * 1024; })

View File

@ -0,0 +1,17 @@
# The Staff
# ISO configuration for my USB drive
{ inputs, system, ... }:
with inputs;
nixos-generators.nixosGenerate {
inherit system;
format = "install-iso";
modules = [{
networking.hostName = "staff";
users.extraUsers.root.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s"
];
}];
}

View File

@ -1,30 +0,0 @@
# 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" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ "kvm-intel" ];
boot.extraModulePackages = [ ];
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
fileSystems."/boot" = {
device = "/dev/disk/by-label/boot";
fsType = "vfat";
};
swapDevices = [ ];
powerManagement.cpuFreqGovernor = lib.mkDefault "powersave";
hardware.cpu.intel.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -1,19 +1,20 @@
{ inputs, globals, overlays, ... }: # The Flame
with inputs;
# System configuration for an Oracle free server # System configuration for an Oracle free server
# How to install: # How to install:
# https://blog.korfuri.fr/posts/2022/08/nixos-on-an-oracle-free-tier-ampere-machine/ # https://blog.korfuri.fr/posts/2022/08/nixos-on-an-oracle-free-tier-ampere-machine/
{ inputs, globals, overlays, ... }:
with inputs;
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
system = "aarch64-linux"; system = "aarch64-linux";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
./hardware-configuration.nix ./hardware-configuration.nix
../../modules ../../modules/common
../../nixos ../../modules/nixos
(removeAttrs globals [ "mail.server" ]) (removeAttrs globals [ "mail.server" ])
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
@ -26,7 +27,7 @@ nixpkgs.lib.nixosSystem {
caddy.enable = true; caddy.enable = true;
# FQDNs for various services # FQDNs for various services
networking.hostName = "oracle"; networking.hostName = "flame";
bookServer = "books.masu.rs"; bookServer = "books.masu.rs";
streamServer = "stream.masu.rs"; streamServer = "stream.masu.rs";
nextcloudServer = "cloud.masu.rs"; nextcloudServer = "cloud.masu.rs";

View File

@ -1,7 +1,7 @@
# Do not modify this file! It was generated by nixos-generate-config # Do not modify this file! It was generated by nixos-generate-config
# and may be overwritten by future invocations. Please make changes # and may be overwritten by future invocations. Please make changes
# to /etc/nixos/configuration.nix instead. # to /etc/nixos/configuration.nix instead.
{ config, lib, pkgs, modulesPath, ... }: { lib, modulesPath, ... }:
{ {
imports = [ (modulesPath + "/profiles/qemu-guest.nix") ]; imports = [ (modulesPath + "/profiles/qemu-guest.nix") ];

View File

@ -1,19 +1,22 @@
{ inputs, globals, ... }: # The Hydra
# System configuration for WSL
{ inputs, globals, overlays, ... }:
with inputs; with inputs;
# System configuration for WSL
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
../../modules ../../modules/common
../../nixos ../../modules/nixos
globals globals
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
networking.hostName = "wsl"; networking.hostName = "hydra";
nixpkgs.overlays = overlays;
# Set registry to flake packages, used for nix X commands # Set registry to flake packages, used for nix X commands
nix.registry.nixpkgs.flake = nixpkgs; nix.registry.nixpkgs.flake = nixpkgs;
identityFile = "/home/${globals.user}/.ssh/id_ed25519"; identityFile = "/home/${globals.user}/.ssh/id_ed25519";
@ -25,14 +28,16 @@ nixpkgs.lib.nixosSystem {
passwordHash = nixpkgs.lib.fileContents ../../private/password.sha512; passwordHash = nixpkgs.lib.fileContents ../../private/password.sha512;
wsl = { wsl = {
enable = true; enable = true;
automountPath = "/mnt"; wslConf.automount.root = "/mnt";
defaultUser = globals.user; defaultUser = globals.user;
startMenuLaunchers = true; startMenuLaunchers = true;
nativeSystemd = true;
wslConf.network.generateResolvConf = true; # Turn off if it breaks VPN wslConf.network.generateResolvConf = true; # Turn off if it breaks VPN
interop.includePath = interop.includePath =
false; # Including Windows PATH will slow down Neovim command mode false; # Including Windows PATH will slow down Neovim command mode
}; };
neovim.enable = true;
mail.enable = true; mail.enable = true;
mail.aerc.enable = true; mail.aerc.enable = true;
mail.himalaya.enable = true; mail.himalaya.enable = true;

View File

@ -1,14 +1,16 @@
# The Looking Glass
# System configuration for my work Macbook
{ inputs, globals, overlays, ... }: { inputs, globals, overlays, ... }:
with inputs; with inputs;
# System configuration for my work MacBook
darwin.lib.darwinSystem { darwin.lib.darwinSystem {
system = "x86_64-darwin"; system = "x86_64-darwin";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
../../modules ../../modules/common
../../darwin ../../modules/darwin
(globals // { (globals // {
user = "Noah.Masur"; user = "Noah.Masur";
gitName = "Noah-Masur_1701"; gitName = "Noah-Masur_1701";

48
hosts/swan/default.nix Normal file
View File

@ -0,0 +1,48 @@
# The Swan
# System configuration for my home NAS server
{ inputs, globals, overlays, ... }:
with inputs;
nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
specialArgs = { };
modules = [
./hardware-configuration.nix
../../modules/common
../../modules/nixos
(removeAttrs globals [ "mail.server" ])
wsl.nixosModules.wsl
home-manager.nixosModules.home-manager
{
server = true;
gui.enable = false;
theme = { colors = (import ../../colorscheme/gruvbox).dark; };
nixpkgs.overlays = overlays;
wsl.enable = false;
caddy.enable = true;
networking.hostName = "swan";
# Disable passwords, only use SSH key
publicKey =
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB+AbmjGEwITk5CK9y7+Rg27Fokgj9QEjgc9wST6MA3s";
# Clone dotfiles
dotfiles.enable = true;
neovim.enable = true;
boot.zfs.enabled = true;
boot.kernelPackages =
config.boot.zfs.package.latestCompatibleLinuxPackages;
boot.zfs.extraPools = [ "mypool" ];
services.zfs.autoScrub.enable = true;
services.zfs.autoScrub.interval = "daily";
services.nfs.server.enable = true;
}
];
}

View File

@ -1,22 +1,24 @@
{ inputs, globals, ... }: # The Tempest
# System configuration for my desktop
{ inputs, globals, overlays, ... }:
with inputs; with inputs;
# System configuration for my desktop
nixpkgs.lib.nixosSystem { nixpkgs.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { }; specialArgs = { };
modules = [ modules = [
./hardware-configuration.nix ./hardware-configuration.nix
../../modules ../../modules/common
../../nixos ../../modules/nixos
globals globals
wsl.nixosModules.wsl wsl.nixosModules.wsl
home-manager.nixosModules.home-manager home-manager.nixosModules.home-manager
{ {
physical = true; physical = true;
networking.hostName = "desktop"; networking.hostName = "tempest";
nixpkgs.overlays = [ nur.overlay ]; nixpkgs.overlays = [ nur.overlay ] ++ overlays;
# Set registry to flake packages, used for nix X commands # Set registry to flake packages, used for nix X commands
nix.registry.nixpkgs.flake = nixpkgs; nix.registry.nixpkgs.flake = nixpkgs;
identityFile = "/home/${globals.user}/.ssh/id_ed25519"; identityFile = "/home/${globals.user}/.ssh/id_ed25519";
@ -29,24 +31,32 @@ nixpkgs.lib.nixosSystem {
gtk.theme.name = nixpkgs.lib.mkDefault "Adwaita-dark"; gtk.theme.name = nixpkgs.lib.mkDefault "Adwaita-dark";
passwordHash = nixpkgs.lib.fileContents ../../private/password.sha512; passwordHash = nixpkgs.lib.fileContents ../../private/password.sha512;
wsl.enable = false; wsl.enable = false;
publicKey = null;
neovim.enable = true;
media.enable = true; media.enable = true;
firefox.enable = true; firefox.enable = true;
kitty.enable = true; kitty.enable = true;
"1password".enable = true; _1password.enable = true;
discord.enable = true; discord.enable = true;
nautilus.enable = true; nautilus.enable = true;
obsidian.enable = true; obsidian.enable = true;
mail.enable = true; mail.enable = true;
mail.aerc.enable = true; mail.aerc.enable = true;
mail.himalaya.enable = true; mail.himalaya.enable = true;
gaming.enable = true;
gaming.steam.enable = true;
gaming.legendary.enable = true;
keybase.enable = true; keybase.enable = true;
mullvad.enable = true; # mullvad.enable = true;
nixlang.enable = true; nixlang.enable = true;
dotfiles.enable = true; dotfiles.enable = true;
gaming = {
enable = true;
steam.enable = true;
legendary.enable = true;
lutris.enable = true;
leagueoflegends.enable = true;
};
} }
]; ];
} }

View File

@ -0,0 +1,40 @@
# 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, modulesPath, ... }:
{
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
boot.initrd.availableKernelModules =
[ "nvme" "xhci_pci" "ahci" "usb_storage" "usbhid" "sd_mod" ];
boot.initrd.kernelModules = [ "amdgpu" ];
boot.kernelModules = [ "kvm-amd" ];
boot.extraModulePackages = [ ];
services.xserver.videoDrivers = [ "amdgpu" ];
fileSystems."/" = {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
fileSystems."/boot" = {
device = "/dev/disk/by-label/boot";
fsType = "vfat";
};
swapDevices = [ ];
# 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.enp5s0.useDHCP = lib.mkDefault true;
# networking.interfaces.wlp4s0.useDHCP = lib.mkDefault true;
powerManagement.cpuFreqGovernor = lib.mkDefault "performance";
hardware.cpu.amd.updateMicrocode =
lib.mkDefault config.hardware.enableRedistributableFirmware;
}

View File

@ -1,21 +0,0 @@
{ config, pkgs, lib, ... }: {
options = {
media = {
enable = lib.mkEnableOption {
description = "Enable media programs.";
default = false;
};
};
};
config = lib.mkIf (config.gui.enable && config.media.enable) {
home-manager.users.${config.user}.home.packages = with pkgs; [
mpv # Video viewer
sxiv # Image viewer
mupdf # PDF viewer
zathura # PDF viewer
];
};
}

View File

@ -1,7 +1,7 @@
{ config, pkgs, lib, ... }: { { config, pkgs, lib, ... }: {
options = { options = {
"1password" = { _1password = {
enable = lib.mkEnableOption { enable = lib.mkEnableOption {
description = "Enable 1Password."; description = "Enable 1Password.";
default = false; default = false;
@ -10,7 +10,7 @@
}; };
config = lib.mkIf config = lib.mkIf
(config.gui.enable && config."1password".enable && pkgs.stdenv.isLinux) { (config.gui.enable && config._1password.enable && pkgs.stdenv.isLinux) {
unfreePackages = [ "1password" "_1password-gui" ]; unfreePackages = [ "1password" "_1password-gui" ];
home-manager.users.${config.user} = { home-manager.users.${config.user} = {
home.packages = with pkgs; [ _1password-gui ]; home.packages = with pkgs; [ _1password-gui ];

View File

@ -14,7 +14,7 @@
config = lib.mkIf (config.gui.enable && config.firefox.enable) { config = lib.mkIf (config.gui.enable && config.firefox.enable) {
unfreePackages = [ unfreePackages = [
(lib.mkIf config."1password".enable "onepassword-password-manager") (lib.mkIf config._1password.enable "onepassword-password-manager")
"okta-browser-plugin" "okta-browser-plugin"
]; ];
@ -24,29 +24,28 @@
enable = true; enable = true;
package = package =
if pkgs.stdenv.isDarwin then pkgs.firefox-bin else pkgs.firefox; if pkgs.stdenv.isDarwin then pkgs.firefox-bin else pkgs.firefox;
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
vimium
multi-account-containers
facebook-container
temporary-containers
(lib.mkIf config."1password".enable onepassword-password-manager)
okta-browser-plugin
sponsorblock
reddit-enhancement-suite
return-youtube-dislikes
bypass-paywalls-clean
markdownload
darkreader
snowflake
don-t-fuck-with-paste
i-dont-care-about-cookies
wappalyzer
];
profiles.default = { profiles.default = {
id = 0; id = 0;
name = "default"; name = "default";
isDefault = true; isDefault = true;
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
vimium
multi-account-containers
facebook-container
temporary-containers
(lib.mkIf config._1password.enable onepassword-password-manager)
okta-browser-plugin
sponsorblock
reddit-enhancement-suite
return-youtube-dislikes
markdownload
darkreader
snowflake
don-t-fuck-with-paste
i-dont-care-about-cookies
wappalyzer
];
settings = { settings = {
"app.update.auto" = false; "app.update.auto" = false;
"browser.aboutConfig.showWarning" = false; "browser.aboutConfig.showWarning" = false;
@ -54,7 +53,7 @@
"browser.quitShortcut.disabled" = "browser.quitShortcut.disabled" =
if pkgs.stdenv.isLinux then true else false; if pkgs.stdenv.isLinux then true else false;
"browser.theme.dark-private-windows" = true; "browser.theme.dark-private-windows" = true;
"browser.toolbars.bookmarks.visibility" = "newtab"; "browser.toolbars.bookmarks.visibility" = false;
"browser.startup.page" = 3; # Restore previous session "browser.startup.page" = 3; # Restore previous session
"browser.newtabpage.enabled" = false; # Make new tabs blank "browser.newtabpage.enabled" = false; # Make new tabs blank
"trailhead.firstrun.didSeeAboutWelcome" = "trailhead.firstrun.didSeeAboutWelcome" =

View File

@ -0,0 +1,30 @@
{ config, pkgs, lib, ... }: {
options = {
media = {
enable = lib.mkEnableOption {
description = "Enable media programs.";
default = false;
};
};
};
config = lib.mkIf (config.gui.enable && config.media.enable) {
home-manager.users.${config.user} = {
home.packages = with pkgs; [
mpv # Video viewer
sxiv # Image viewer
mupdf # PDF viewer
zathura # PDF viewer
];
# Set default for opening PDFs
xdg.mimeApps.defaultApplications."application/pdf" =
[ "zathura.desktop" ];
xdg.mimeApps.defaultApplications."image/*" = [ "sxiv.desktop" ];
};
};
}

View File

@ -17,6 +17,10 @@
gnome.sushi # Quick preview with spacebar gnome.sushi # Quick preview with spacebar
]; ];
# Set default for opening directories
xdg.mimeApps.defaultApplications."inode/directory" =
[ "nautilus.desktop" ];
programs.fish.functions = { programs.fish.functions = {
qr = { qr = {
body = body =

View File

@ -42,7 +42,10 @@
command = "${pkgs.shfmt}/bin/shfmt", command = "${pkgs.shfmt}/bin/shfmt",
extra_args = { "-i", "4", "-ci" }, extra_args = { "-i", "4", "-ci" },
}), }),
require("null-ls").builtins.formatting.terraform_fmt.with({ command = "${pkgs.terraform}/bin/terraform" }), require("null-ls").builtins.formatting.terraform_fmt.with({
command = "${pkgs.terraform}/bin/terraform",
extra_filetypes = { "hcl" },
}),
}, },
on_attach = function(client, bufnr) on_attach = function(client, bufnr)

View File

@ -1,7 +1,7 @@
{ pkgs, ... }: { { pkgs, ... }: {
plugins = [ plugins = [
(pkgs.vimPlugins.nvim-treesitter.withPlugins (plugins: (pkgs.vimPlugins.nvim-treesitter.withPlugins (_plugins:
with pkgs.tree-sitter-grammars; [ with pkgs.tree-sitter-grammars; [
tree-sitter-hcl tree-sitter-hcl
tree-sitter-python tree-sitter-python

View File

@ -4,7 +4,8 @@
vim.filetype.add({ vim.filetype.add({
pattern = { pattern = {
[".*%.tfvars"] = "terraform", [".*%.tfvars"] = "hcl",
[".*%.tf"] = "hcl",
}, },
}) })

View File

@ -13,16 +13,16 @@
# in pkgs.neovimBuilder { # in pkgs.neovimBuilder {
# package = pkgs.neovim-unwrapped; # package = pkgs.neovim-unwrapped;
# imports = [ # imports = [
# ./modules/neovim/plugins/bufferline.nix # ./modules/common/neovim/plugins/bufferline.nix
# ./modules/neovim/plugins/completion.nix # ./modules/common/neovim/plugins/completion.nix
# ./modules/neovim/plugins/gitsigns.nix # ./modules/common/neovim/plugins/gitsigns.nix
# ./modules/neovim/plugins/lsp.nix # ./modules/common/neovim/plugins/lsp.nix
# ./modules/neovim/plugins/misc.nix # ./modules/common/neovim/plugins/misc.nix
# ./modules/neovim/plugins/statusline.nix # ./modules/common/neovim/plugins/statusline.nix
# ./modules/neovim/plugins/syntax.nix # ./modules/common/neovim/plugins/syntax.nix
# ./modules/neovim/plugins/telescope.nix # ./modules/common/neovim/plugins/telescope.nix
# ./modules/neovim/plugins/toggleterm.nix # ./modules/common/neovim/plugins/toggleterm.nix
# ./modules/neovim/plugins/tree.nix # ./modules/common/neovim/plugins/tree.nix
# ] ++ extraConfig; # ] ++ extraConfig;
# } # }

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { ... }: {
imports = [ imports = [
./haskell.nix ./haskell.nix

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, lib, ... }: {
options.haskell.enable = lib.mkEnableOption "Haskell programming language."; options.haskell.enable = lib.mkEnableOption "Haskell programming language.";

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, pkgs, ... }: {
users.users.${config.user}.shell = pkgs.fish; users.users.${config.user}.shell = pkgs.fish;
programs.fish.enable = programs.fish.enable =

View File

@ -1,4 +1,4 @@
{ config, pkgs, lib, ... }: { { config, pkgs, ... }: {
home-manager.users.${config.user} = { home-manager.users.${config.user} = {
programs.fish = { programs.fish = {

View File

@ -17,6 +17,20 @@ in {
home-manager.users.${config.user} = { home-manager.users.${config.user} = {
# Fix: age won't build
nixpkgs.overlays = [
(_final: prev: {
age = prev.age.overrideAttrs (_old: {
src = prev.fetchFromGitHub {
owner = "FiloSottile";
repo = "age";
rev = "7354aa0d08a06eac42c635670a55f858bd23c943";
sha256 = "H80mNTgZmExDMgubONIXP7jmLBvNMVqXee6NiZJhPFY=";
};
});
})
];
home.packages = with pkgs; [ home.packages = with pkgs; [
unzip # Extract zips unzip # Extract zips
rsync # Copy folders rsync # Copy folders

Some files were not shown because too many files have changed in this diff Show More