diff --git a/README.md b/README.md new file mode 100644 index 0000000..3120704 --- /dev/null +++ b/README.md @@ -0,0 +1,7 @@ +# NixOS Configs + +This repository tracks my NixOS config. Generally, this is just for me, and is public for the purpose of global accessibility without authentication moreso than for the benefit of anyone other than me. That said, anyone is welcome to browse if they feel so inspired. + +## Organization + +**Top level** - Root configurations and anything you'd want to point a `/etc/nixos/configuration.nix` or `~/.config/nixpkgs/home.nix` at. These are the entrypoints to the configuration. diff --git a/dconf.nix b/configs/dconf.nix similarity index 100% rename from dconf.nix rename to configs/dconf.nix diff --git a/filesystems.nix b/configs/filesystems.nix similarity index 93% rename from filesystems.nix rename to configs/filesystems.nix index 1fc4ad6..8bf0fd5 100644 --- a/filesystems.nix +++ b/configs/filesystems.nix @@ -1,5 +1,5 @@ { config, lib, pkgs, modulesPath, ... }: -let systemInformation = import ./system-information.nix; in +let systemInformation = import ../system/system-information.nix; in { boot.initrd.luks.devices = { cryptoroot = { diff --git a/configs/home.full.nix b/configs/home.full.nix new file mode 100644 index 0000000..07f5770 --- /dev/null +++ b/configs/home.full.nix @@ -0,0 +1,11 @@ +{pkgs, ...}: { + imports = [./home.nogui.nix] + home.packages = with pkgs; [ + clapper + ]; + home.sessionVariables = { + MOZ_ENABLE_WAYLAND = "1"; + }; + programs.kitty = import programs/kitty.nix pkgs; + programs.firefox = import programs/firefox.nix pkgs; +} \ No newline at end of file diff --git a/home.nix b/configs/home.nogui.nix similarity index 94% rename from home.nix rename to configs/home.nogui.nix index 915f530..d16e731 100644 --- a/home.nix +++ b/configs/home.nogui.nix @@ -3,7 +3,6 @@ NNN_FIFO = "/tmp/nnn.fifo"; LANG = "en_US.UTF-8"; EDITOR = "nvim"; - MOZ_ENABLE_WAYLAND = "1"; }; home.keyboard.layout = "us"; home.keyboard.variant = "3l"; @@ -11,7 +10,6 @@ restic ripgrep libqalculate - clapper git-annex git-annex-remote-rclone qrencode @@ -62,13 +60,11 @@ pull.rebase = false; }; }; - programs.kitty = import programs/kitty.nix pkgs; programs.password-store = { enable = true; package = pkgs.pass.withExtensions (exts: [ exts.pass-otp ]); }; programs.fish = import programs/fish.nix pkgs; - programs.firefox = import programs/firefox.nix pkgs; programs.nnn = { enable = true; plugins.mappings = { @@ -106,4 +102,4 @@ dconf.settings = import ./dconf.nix; home.stateVersion = "22.11"; targets.genericLinux.enable = true; -} +} \ No newline at end of file diff --git a/programs/firefox.nix b/configs/programs/firefox.nix similarity index 100% rename from programs/firefox.nix rename to configs/programs/firefox.nix diff --git a/programs/fish.nix b/configs/programs/fish.nix similarity index 100% rename from programs/fish.nix rename to configs/programs/fish.nix diff --git a/programs/kitty.nix b/configs/programs/kitty.nix similarity index 100% rename from programs/kitty.nix rename to configs/programs/kitty.nix diff --git a/programs/neovim.nix b/configs/programs/neovim.nix similarity index 95% rename from programs/neovim.nix rename to configs/programs/neovim.nix index 263e68e..276d801 100644 --- a/programs/neovim.nix +++ b/configs/programs/neovim.nix @@ -137,13 +137,13 @@ pkgs: { command = "coc#pum#visible() ? coc#pum#prev(1) : \"\\\""; expr = true; } - { - mode = "i"; - binding = ""; - command = "coc#pum#visible() ? coc#pum#confirm() : \"\\u\\\\=coc#on_enter()\\\""; - silent = true; - expr = true; - } +# { +# mode = "i"; +# binding = ""; +# command = "coc#pum#visible() ? coc#pum#confirm() : \"\\u\\\\=coc#on_enter()\\\""; +# silent = true; +# expr = true; +# } { mode = "n"; binding = ""; diff --git a/programs/neovim/init.vim b/configs/programs/neovim/init.vim similarity index 84% rename from programs/neovim/init.vim rename to configs/programs/neovim/init.vim index b628530..0c2e73b 100644 --- a/programs/neovim/init.vim +++ b/configs/programs/neovim/init.vim @@ -28,4 +28,6 @@ function! ShowDocumentation() else call feedkeys('K', 'in') endif -endfunction \ No newline at end of file +endfunction + +inoremap coc#pum#visible() ? coc#pum#confirm() : "\u\\=coc#on_enter()\" \ No newline at end of file diff --git a/programs/neovim/laserwave/colors/laserwave.vim b/configs/programs/neovim/laserwave/colors/laserwave.vim similarity index 100% rename from programs/neovim/laserwave/colors/laserwave.vim rename to configs/programs/neovim/laserwave/colors/laserwave.vim diff --git a/home.full.nix b/home.full.nix new file mode 100644 index 0000000..971a02a --- /dev/null +++ b/home.full.nix @@ -0,0 +1,9 @@ +{ config, pkgs, lib, ... }: +{ + imports = + [ + ./configs/home.full.nix + ]; + + programs.home-manager.enable = true; +} \ No newline at end of file diff --git a/home.nogui.nix b/home.nogui.nix new file mode 100644 index 0000000..a28aa3d --- /dev/null +++ b/home.nogui.nix @@ -0,0 +1,9 @@ +{ config, pkgs, lib, ... }: +{ + imports = + [ + ./configs/home.nogui.nix + ]; + + programs.home-manager.enable = true; +} \ No newline at end of file diff --git a/nixos.nix b/nixos.nix index 7cb24d1..37441fd 100644 --- a/nixos.nix +++ b/nixos.nix @@ -1,15 +1,15 @@ # sudo nix-channel --add https://github.com/NixOS/nixos-hardware/archive/master.tar.gz nixos-hardware # sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager -let systemInformation = import ./system-information.nix; in +let systemInformation = import ./system/system-information.nix; in { config, pkgs, lib, ... }: { networking.hostName = "kudzu"; imports = [ - ./filesystems.nix - ./hardware-requirements.nix + ./configs/filesystems.nix + ./system/hardware-requirements.nix ]; @@ -152,7 +152,7 @@ let systemInformation = import ./system-information.nix; in extraGroups = [ "networkmanager" "wheel" ]; shell = pkgs.fish; }; - home-manager.users.ember = import ./home.nix; + home-manager.users.ember = import ./configs/home.nix; # Allow unfree packages nixpkgs.config.allowUnfree = true; diff --git a/hardware-requirements.nix b/system/hardware-requirements.nix similarity index 100% rename from hardware-requirements.nix rename to system/hardware-requirements.nix diff --git a/system-information.nix b/system/system-information.nix similarity index 100% rename from system-information.nix rename to system/system-information.nix