From a0c400d0fef12657f87d1d3a5a7a0e7214bbe598 Mon Sep 17 00:00:00 2001 From: fqbn207 Date: Sun, 2 Feb 2025 09:49:45 +0100 Subject: [PATCH] PROGGERS --- configuration.nix | 208 ------------------------------ modules/system/nix/boot.nix | 16 +++ modules/system/nix/default.nix | 14 +- modules/system/nix/dns.nix | 12 -- modules/system/nix/hw.nix | 15 +++ modules/system/nix/networking.nix | 18 +++ modules/system/nix/pkgs.nix | 125 ++++++++++++++++++ modules/system/nix/sec.nix | 15 +++ modules/system/nix/services.nix | 20 +++ modules/system/nix/users.nix | 25 ++++ modules/system/nix/virt.nix | 9 ++ 11 files changed, 253 insertions(+), 224 deletions(-) create mode 100644 modules/system/nix/boot.nix delete mode 100644 modules/system/nix/dns.nix create mode 100644 modules/system/nix/hw.nix create mode 100644 modules/system/nix/networking.nix create mode 100644 modules/system/nix/pkgs.nix create mode 100644 modules/system/nix/sec.nix create mode 100644 modules/system/nix/services.nix create mode 100644 modules/system/nix/users.nix create mode 100644 modules/system/nix/virt.nix diff --git a/configuration.nix b/configuration.nix index f1a4cc7..a25d0e7 100644 --- a/configuration.nix +++ b/configuration.nix @@ -45,21 +45,6 @@ supportedFilesystems = [ "ntfs" ]; }; - networking = { - hostName = "poggers"; - networkmanager.enable = true; - firewall = { - enable = true; - allowedTCPPorts = [ - 80 - 1337 - 8080 - 3000 - 8000 - ]; - }; - }; - time.timeZone = "Europe/Berlin"; console = { font = "Lat2-Terminus16"; @@ -73,204 +58,11 @@ ]; }; - services = { - libinput = { - enable = true; - }; - pipewire = { - enable = true; - pulse.enable = true; - wireplumber.enable = true; - }; - mullvad-vpn = { - enable = true; - }; - sdrplayApi = { - enable = true; - }; - }; - - hardware = { - bluetooth = { - enable = true; - }; - graphics = { - enable = true; - }; - rtl-sdr = { - enable = true; - }; - }; - programs = { nix-ld.enable = true; fish.enable = true; }; - virtualisation = { - docker = { - enable = true; - }; - }; - - users = { - defaultUserShell = pkgs.fish; - users = { - fabian = { - useDefaultShell = true; - shell = pkgs.fish; - isNormalUser = true; - initialPassword = "1601"; - extraGroups = [ - "wheel" - "docker" - "audio" - "video" - "dialout" - "plugdev" - "adbusers" - "kvm" - "dialout" - ]; - }; - }; - }; - - environment.systemPackages = with pkgs; [ - # sys - unzip - yt-dlp - inetutils - git - wget - curl - dosfstools - ntfs3g - waybar - xdg-desktop-portal-hyprland - grim - slurp - feh - gnumake - flameshot - tree - gdb - vscode - pavucontrol - usbutils - alsa-utils - neovide - - # cli - neofetch - fastfetch - onefetch - vim - weechat - ranger - eza - fzf - htop - btop - kew - jq - - # dev - rustup - python3 - python312Packages.pip - nodejs - gccgo14 - go - dotnet-sdk - bear - android-tools - android-udev-rules - android-studio-tools - - wine - winetricks - - # embedded - espup - esphome - esptool - ethtool - espflash - minicom - pulseview - cp210x-program - arduino-ide - arduino-cli - flashrom - binwalk - chirp - picocom - pwndbg - gdb - minipro - - # LSPs - nixd - arduino-language-server - - # libs - python312Packages.pyserial - python312Packages.meshtastic - - # virt - qemu - - # SDR - noaa-apt - wsjtx - qsstv - gpredict - sdrangel - sdrpp - gnuradio - cubicsdr - gqrx - multimon-ng - - # misc - cava - vesktop - pacman - wf-recorder - qbittorrent - ]; - - security = { - doas = { - enable = true; - extraRules = [ - { - users = [ "fabian" ]; - noPass = true; - keepEnv = true; - } - ]; - }; - }; - - fonts = { - fontconfig.enable = true; - packages = with pkgs; [ - noto-fonts - noto-fonts-emoji - liberation_ttf - fira-code - fira-code-symbols - fantasque-sans-mono - mplus-outline-fonts.githubRelease - dina-font - proggyfonts - pkgs.nerd-fonts._0xproto - pkgs.nerd-fonts.droid-sans-mono - ]; - }; - environment.etc = { "makepkg.conf".source = "${pkgs.pacman}/etc/makepkg.conf"; "pacman.conf".source = ./modules/system/raw/pacman.conf; diff --git a/modules/system/nix/boot.nix b/modules/system/nix/boot.nix new file mode 100644 index 0000000..92aba08 --- /dev/null +++ b/modules/system/nix/boot.nix @@ -0,0 +1,16 @@ +{ config, pkgs, ... }: +{ + boot = { + loader = { + systemd-boot = { + enable = true; + }; + grub = { + enable = false; + device = "/dev/sda"; + useOSProber = true; + }; + }; + supportedFilesystems = [ "ntfs" ]; + }; +} diff --git a/modules/system/nix/default.nix b/modules/system/nix/default.nix index 5de51da..0c69b63 100644 --- a/modules/system/nix/default.nix +++ b/modules/system/nix/default.nix @@ -4,11 +4,17 @@ ... }: { imports = [ - ./dns.nix - ./gaming.nix - ./firefox.nix ./x/dwm/default.nix ./nvim/default.nix - #./x/slstatus/default.nix + ./networking.nix + ./users.nix + ./services.nix + ./gaming.nix + ./firefox.nix + ./pkgs.nix + ./sec.nix + ./virt.nix + ./boot.nix + ./hw.nix ]; } diff --git a/modules/system/nix/dns.nix b/modules/system/nix/dns.nix deleted file mode 100644 index e33f765..0000000 --- a/modules/system/nix/dns.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ config, pkgs, ... }: -{ - environment.systemPackages = with pkgs; [ - dhcpcd - ]; - networking = { - nameservers = [ - "192.168.0.122" - "1.1.1.1" - ]; - }; -} diff --git a/modules/system/nix/hw.nix b/modules/system/nix/hw.nix new file mode 100644 index 0000000..8979e51 --- /dev/null +++ b/modules/system/nix/hw.nix @@ -0,0 +1,15 @@ +{ config, pkgs, ... }: +{ + hardware = { + bluetooth = { + enable = true; + }; + graphics = { + enable = true; + }; + rtl-sdr = { + enable = true; + }; + }; + +} diff --git a/modules/system/nix/networking.nix b/modules/system/nix/networking.nix new file mode 100644 index 0000000..5869a7c --- /dev/null +++ b/modules/system/nix/networking.nix @@ -0,0 +1,18 @@ +{ config, pkgs, ... }: +{ + networking = { + hostName = "poggers"; + networkmanager.enable = true; + firewall = { + enable = true; + allowedTCPPorts = [ + 80 + 1337 + 8080 + 3000 + 8000 + ]; + }; + }; + +} diff --git a/modules/system/nix/pkgs.nix b/modules/system/nix/pkgs.nix new file mode 100644 index 0000000..47c12e2 --- /dev/null +++ b/modules/system/nix/pkgs.nix @@ -0,0 +1,125 @@ +{ config, pkgs, ... }: +{ + environment.systemPackages = with pkgs; [ + # sys + unzip + yt-dlp + inetutils + git + wget + curl + dosfstools + ntfs3g + waybar + xdg-desktop-portal-hyprland + grim + slurp + feh + gnumake + flameshot + tree + gdb + vscode + pavucontrol + usbutils + alsa-utils + neovide + + # cli + neofetch + fastfetch + onefetch + vim + weechat + ranger + eza + fzf + htop + btop + kew + jq + + # dev + rustup + python3 + python312Packages.pip + nodejs + gccgo14 + go + dotnet-sdk + bear + android-tools + android-udev-rules + android-studio-tools + + wine + winetricks + + # embedded + espup + esphome + esptool + ethtool + espflash + minicom + pulseview + cp210x-program + arduino-ide + arduino-cli + flashrom + binwalk + chirp + picocom + pwndbg + gdb + minipro + + # LSPs + nixd + arduino-language-server + + # libs + python312Packages.pyserial + python312Packages.meshtastic + + # virt + qemu + + # SDR + noaa-apt + wsjtx + qsstv + gpredict + sdrangel + sdrpp + gnuradio + cubicsdr + gqrx + multimon-ng + + # misc + cava + vesktop + pacman + wf-recorder + qbittorrent + ]; + + fonts = { + fontconfig.enable = true; + packages = with pkgs; [ + noto-fonts + noto-fonts-emoji + liberation_ttf + fira-code + fira-code-symbols + fantasque-sans-mono + mplus-outline-fonts.githubRelease + dina-font + proggyfonts + pkgs.nerd-fonts._0xproto + pkgs.nerd-fonts.droid-sans-mono + ]; + }; + +} diff --git a/modules/system/nix/sec.nix b/modules/system/nix/sec.nix new file mode 100644 index 0000000..a63b7e5 --- /dev/null +++ b/modules/system/nix/sec.nix @@ -0,0 +1,15 @@ +{ config, pkgs, ... }: +{ + security = { + doas = { + enable = true; + extraRules = [ + { + users = [ "fabian" ]; + noPass = true; + keepEnv = true; + } + ]; + }; + }; +} diff --git a/modules/system/nix/services.nix b/modules/system/nix/services.nix new file mode 100644 index 0000000..0da5415 --- /dev/null +++ b/modules/system/nix/services.nix @@ -0,0 +1,20 @@ +{ config, pkgs, ... }: +{ + services = { + libinput = { + enable = true; + }; + pipewire = { + enable = true; + pulse.enable = true; + wireplumber.enable = true; + }; + mullvad-vpn = { + enable = true; + package = pkgs.mullvad-vpn; + }; + sdrplayApi = { + enable = true; + }; + }; +} diff --git a/modules/system/nix/users.nix b/modules/system/nix/users.nix new file mode 100644 index 0000000..dfd315c --- /dev/null +++ b/modules/system/nix/users.nix @@ -0,0 +1,25 @@ +{ config, pkgs, ... }: +{ + users = { + defaultUserShell = pkgs.fish; + users = { + fabian = { + useDefaultShell = true; + shell = pkgs.fish; + isNormalUser = true; + initialPassword = "1601"; + extraGroups = [ + "wheel" + "docker" + "audio" + "video" + "dialout" + "plugdev" + "adbusers" + "kvm" + "dialout" + ]; + }; + }; + }; +} diff --git a/modules/system/nix/virt.nix b/modules/system/nix/virt.nix new file mode 100644 index 0000000..550bd2a --- /dev/null +++ b/modules/system/nix/virt.nix @@ -0,0 +1,9 @@ +{ config, pkgs, ... }: +{ + virtualisation = { + docker = { + enable = true; + }; + }; + +}