From 92a12b490e52b22fb904a1ba490194e13b509100 Mon Sep 17 00:00:00 2001 From: "Frankie B." Date: Fri, 16 Feb 2024 12:21:48 +0000 Subject: Everything is FUCKED --- common/arrpc.nix | 15 --- flake.lock | 132 ++++++++++---------- flake.nix | 6 - homes/floppydisk/arrpc.nix | 15 --- homes/floppydisk/default.nix | 7 +- homes/floppydisk/hyprland.nix | 9 +- homes/floppydisk/packages.nix | 5 +- homes/floppydisk/waybar.nix | 2 +- hosts/default.nix | 6 +- hosts/nixpad/configuration.nix | 155 ----------------------- hosts/nixpad/hardware-configuration.nix | 40 ------ hosts/watermelon/configuration.nix | 185 ++++++++++++++++++++++++++++ hosts/watermelon/hardware-configuration.nix | 40 ++++++ 13 files changed, 301 insertions(+), 316 deletions(-) delete mode 100644 common/arrpc.nix delete mode 100644 homes/floppydisk/arrpc.nix delete mode 100644 hosts/nixpad/configuration.nix delete mode 100644 hosts/nixpad/hardware-configuration.nix create mode 100644 hosts/watermelon/configuration.nix create mode 100644 hosts/watermelon/hardware-configuration.nix diff --git a/common/arrpc.nix b/common/arrpc.nix deleted file mode 100644 index 16f8be6..0000000 --- a/common/arrpc.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - inputs, - pkgs, - home, - ... -}: { - imports = [ - inputs.arrpc.homeManagerModules.default - ]; - - home.packages = [pkgs.webcord-vencord]; - - # provided by the arrpc-flake home-manager module - services.arrpc.enable = true; -} diff --git a/flake.lock b/flake.lock index 816f22e..c42b615 100644 --- a/flake.lock +++ b/flake.lock @@ -16,26 +16,6 @@ "type": "github" } }, - "arrpc": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1702716624, - "narHash": "sha256-IiPLKu8URsOeeWePz30PzU8Qj38XzeEWnLLP6bvzw/w=", - "owner": "notashelf", - "repo": "arrpc-flake", - "rev": "136eca7e4d13dc8c8cce24480614cbf9b120cc14", - "type": "github" - }, - "original": { - "owner": "notashelf", - "repo": "arrpc-flake", - "type": "github" - } - }, "bufdelete-nvim": { "flake": false, "locked": { @@ -284,11 +264,11 @@ ] }, "locked": { - "lastModified": 1706473964, - "narHash": "sha256-Fq6xleee/TsX6NbtoRuI96bBuDHMU57PrcK9z1QEKbk=", + "lastModified": 1707685877, + "narHash": "sha256-XoXRS+5whotelr1rHiZle5t5hDg9kpguS5yk8c8qzOc=", "owner": "ipetkov", "repo": "crane", - "rev": "c798790eabec3e3da48190ae3698ac227aab770c", + "rev": "2c653e4478476a52c6aa3ac0495e4dea7449ea0e", "type": "github" }, "original": { @@ -483,11 +463,11 @@ ] }, "locked": { - "lastModified": 1704982712, - "narHash": "sha256-2Ptt+9h8dczgle2Oo6z5ni5rt/uLMG47UFTR1ry/wgg=", + "lastModified": 1706830856, + "narHash": "sha256-a0NYyp+h9hlb7ddVz4LUn1vT/PLwqfrWYcHMvFB1xYg=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "07f6395285469419cf9d078f59b5b49993198c00", + "rev": "b253292d9c0a5ead9bc98c4e9a26c6312e27d69f", "type": "github" }, "original": { @@ -690,11 +670,11 @@ ] }, "locked": { - "lastModified": 1706798041, - "narHash": "sha256-BbvuF4CsVRBGRP8P+R+JUilojk0M60D7hzqE0bEvJBQ=", + "lastModified": 1707919853, + "narHash": "sha256-qxmBGDzutuJ/tsX4gp+Mr7fjxOZBbeT9ixhS5o4iFOw=", "owner": "nix-community", "repo": "home-manager", - "rev": "4d53427bce7bf3d17e699252fd84dc7468afc46e", + "rev": "043ba285c6dc20f36441d48525402bcb9743c498", "type": "github" }, "original": { @@ -726,11 +706,11 @@ ] }, "locked": { - "lastModified": 1706014834, - "narHash": "sha256-LjS70aH4NH0WRGTlzY94pJM6aQj84DBbKk+rg/X21JI=", + "lastModified": 1707244801, + "narHash": "sha256-tvZZfzNajAvmKWKukrR42viSO0hoaTbbWbFVWwZ5Mcg=", "owner": "horriblename", "repo": "hyprgrass", - "rev": "1397ae8dad74474f5e967d53c26f981af0bb862d", + "rev": "360bc1c2b590423d91ee7ee21049b55c5c7a1eaa", "type": "github" }, "original": { @@ -748,11 +728,11 @@ "xdph": "xdph" }, "locked": { - "lastModified": 1706888173, - "narHash": "sha256-D7bJTQeDqkNYYw6Tc+AJplFw2eutke1SjppsarU+N5I=", + "lastModified": 1708006940, + "narHash": "sha256-jod61azkh2e2kTSM+e0YxXwXbw0fjBROF/wFxt/3CK8=", "owner": "hyprwm", "repo": "Hyprland", - "rev": "cf1886ca44c78de3424d96fd18023eb0db759af6", + "rev": "a8dae8f5e198327e5de8508d860234089f31e272", "type": "github" }, "original": { @@ -867,11 +847,11 @@ "rust-overlay": "rust-overlay" }, "locked": { - "lastModified": 1706522979, - "narHash": "sha256-2wP2qEFVoZ9q8C9MZdAwXPKDkIIQiEwUzuzCxVKafDc=", + "lastModified": 1707777617, + "narHash": "sha256-gU2TLJuSNENQ8e61YayDcBUyWwAKbyO8VCosAklxuGc=", "owner": "nix-community", "repo": "lanzaboote", - "rev": "c42edac7eb881315bb2a8dfd5190c8c87b91e084", + "rev": "96181a4667a811e4408cbc45092ac42a17a46d74", "type": "github" }, "original": { @@ -1165,6 +1145,7 @@ "project-nvim": "project-nvim", "registers": "registers", "rnix-lsp": "rnix-lsp", + "rose-pine": "rose-pine", "rust-tools": "rust-tools", "scrollbar-nvim": "scrollbar-nvim", "smartcolumn": "smartcolumn", @@ -1187,11 +1168,11 @@ "zig": "zig" }, "locked": { - "lastModified": 1706712454, - "narHash": "sha256-jRfU3KxQ0oVg22cbTum/RSusFxMZQQgYXQ3+3TbaDGQ=", + "lastModified": 1708005091, + "narHash": "sha256-L7NRbPV8TaH54EsFBrf/ul8oaRG15AEG+ze6Zxb/KYA=", "owner": "notashelf", "repo": "neovim-flake", - "rev": "232c8129ca44e522459d01b19cdae048d49199cd", + "rev": "2b1749676dd2fde0903bb56833b89c5ae77e70a3", "type": "github" }, "original": { @@ -1228,11 +1209,11 @@ }, "nixos-hardware": { "locked": { - "lastModified": 1706834982, - "narHash": "sha256-3CfxA7gZ+DVv/N9Pvw61bV5Oe/mWfxYPyVQGqp9TMJA=", + "lastModified": 1707842204, + "narHash": "sha256-M+HAq1qWQBi/gywaMZwX0odU+Qb/XeqVeANGKRBDOwU=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "83e571bb291161682b9c3ccd48318f115143a550", + "rev": "f1b2f71c86a5b1941d20608db0b1e88a07d31303", "type": "github" }, "original": { @@ -1244,11 +1225,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1706191920, - "narHash": "sha256-eLihrZAPZX0R6RyM5fYAWeKVNuQPYjAkCUBr+JNvtdE=", + "lastModified": 1707546158, + "narHash": "sha256-nYYJTpzfPMDxI8mzhQsYjIUX+grorqjKEU9Np6Xwy/0=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ae5c332cbb5827f6b1f02572496b141021de335f", + "rev": "d934204a0f8d9198e1e4515dd6fec76a139c87f0", "type": "github" }, "original": { @@ -1294,11 +1275,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1706370590, - "narHash": "sha256-vq8hTMHsmPkBDaLR2i3m2nSmFObWmo7YwK51KQdI6RY=", + "lastModified": 1707639604, + "narHash": "sha256-J5ipSdfkbYcYaH3Js2dUf3Of94BWStapdmxpW5wwH1U=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "3fb3707af869e32b0ad0676f589b16cc7711a376", + "rev": "bdc57436da855500d44e9c1ce7450c0772e1cfa1", "type": "github" }, "original": { @@ -1358,11 +1339,11 @@ }, "nixpkgs_6": { "locked": { - "lastModified": 1706732774, - "narHash": "sha256-hqJlyJk4MRpcItGYMF+3uHe8HvxNETWvlGtLuVpqLU0=", + "lastModified": 1707956935, + "narHash": "sha256-ZL2TrjVsiFNKOYwYQozpbvQSwvtV/3Me7Zwhmdsfyu4=", "owner": "nixos", "repo": "nixpkgs", - "rev": "b8b232ae7b8b144397fdb12d20f592e5e7c1a64d", + "rev": "a4d4fe8c5002202493e87ec8dbc91335ff55552c", "type": "github" }, "original": { @@ -1503,15 +1484,15 @@ "nvim-colorizer-lua": { "flake": false, "locked": { - "lastModified": 1591879145, - "narHash": "sha256-6YrnItxExL2C8pNIdLd+hXCjsB2MbZANwWkah6dreD8=", - "owner": "norcalli", + "lastModified": 1703321305, + "narHash": "sha256-oKvFN2K+ASlPNwj2rhptR/ErYgo6XKBPhXSZotDdCP0=", + "owner": "NvChad", "repo": "nvim-colorizer.lua", - "rev": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6", + "rev": "85855b38011114929f4058efc97af1059ab3e41d", "type": "github" }, "original": { - "owner": "norcalli", + "owner": "NvChad", "repo": "nvim-colorizer.lua", "type": "github" } @@ -1887,11 +1868,11 @@ "nixpkgs-stable": "nixpkgs-stable" }, "locked": { - "lastModified": 1706424699, - "narHash": "sha256-Q3RBuOpZNH2eFA1e+IHgZLAOqDD9SKhJ/sszrL8bQD4=", + "lastModified": 1707297608, + "narHash": "sha256-ADjo/5VySGlvtCW3qR+vdFF4xM9kJFlRDqcC9ZGI8EA=", "owner": "cachix", "repo": "pre-commit-hooks.nix", - "rev": "7c54e08a689b53c8a1e5d70169f2ec9e2a68ffaf", + "rev": "0db2e67ee49910adfa13010e7f012149660af7f0", "type": "github" }, "original": { @@ -1954,7 +1935,6 @@ }, "root": { "inputs": { - "arrpc": "arrpc", "home-manager": "home-manager", "hyprgrass": "hyprgrass", "hyprland": "hyprland", @@ -1964,6 +1944,22 @@ "nixpkgs": "nixpkgs_6" } }, + "rose-pine": { + "flake": false, + "locked": { + "lastModified": 1707703907, + "narHash": "sha256-jmDGDlCurGAG85SglAwmQr943kVr8KUr11zpPejQliQ=", + "owner": "rose-pine", + "repo": "neovim", + "rev": "f01ce3a71748a92997d266cfe2c985decd18c601", + "type": "github" + }, + "original": { + "owner": "rose-pine", + "repo": "neovim", + "type": "github" + } + }, "rust-overlay": { "inputs": { "flake-utils": [ @@ -1976,11 +1972,11 @@ ] }, "locked": { - "lastModified": 1706494265, - "narHash": "sha256-4ilEUJEwNaY9r/8BpL3VmZiaGber0j09lvvx0e/bosA=", + "lastModified": 1707617562, + "narHash": "sha256-Kk2vv5e4MqKPjelKoYsa6YaUyv3pvjWY9nJSnP2QU9w=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "246ba7102553851af60e0382f558f6bc5f63fa13", + "rev": "a22bbbee9b479c6d95b4819135e856a6d447b3ba", "type": "github" }, "original": { @@ -2523,11 +2519,11 @@ ] }, "locked": { - "lastModified": 1706145785, - "narHash": "sha256-j9MP4fv2U/vdRKAXXc2gyMTmYwVnHP6kHx1/y6jprrU=", + "lastModified": 1706521509, + "narHash": "sha256-AInZ50acOJ3wzUwGzNr1TmxGTMx+8j6oSTzz4E7Vbp8=", "owner": "hyprwm", "repo": "xdg-desktop-portal-hyprland", - "rev": "5a592647587cd20b9692a347df6939b6d371b3bb", + "rev": "c06fd88b3da492b8f9067be021b9184f7012b5a8", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 02a2d7e..1df9da9 100644 --- a/flake.nix +++ b/flake.nix @@ -53,12 +53,6 @@ home-manager.url = "github:nix-community/home-manager/"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; - # arrpc - arrpc = { - url = "github:notashelf/arrpc-flake"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - # nixos-hardware nixos-hardware.url = "github:NixOS/nixos-hardware/master"; diff --git a/homes/floppydisk/arrpc.nix b/homes/floppydisk/arrpc.nix deleted file mode 100644 index 16f8be6..0000000 --- a/homes/floppydisk/arrpc.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - inputs, - pkgs, - home, - ... -}: { - imports = [ - inputs.arrpc.homeManagerModules.default - ]; - - home.packages = [pkgs.webcord-vencord]; - - # provided by the arrpc-flake home-manager module - services.arrpc.enable = true; -} diff --git a/homes/floppydisk/default.nix b/homes/floppydisk/default.nix index acd54c0..345e17c 100644 --- a/homes/floppydisk/default.nix +++ b/homes/floppydisk/default.nix @@ -5,7 +5,6 @@ ... }: { imports = [ - ./arrpc.nix ./packages.nix # home.packages and similar stuff ./neovim-flake.nix ]; @@ -15,8 +14,8 @@ homeDirectory = "/home/floppydisk"; file.".config/lockonsleep/config.sh".source = ./lock.sh; file.".config/hypr/hyprpaper.conf".text = '' - preload = ${/. + ../../misc/wallpapers/oneshot-1.jpg} - wallpaper = ,${/. + ../../misc/wallpapers/oneshot-1.jpg} + preload = ${/. + ../../misc/wallpapers/ibm.png} + wallpaper = ,${/. + ../../misc/wallpapers/ibm.png} splash = false ''; }; @@ -34,7 +33,7 @@ }; services.udiskie.enable = true; - + services.arrpc.enable = true; programs.zsh = { enable = true; shellAliases = { diff --git a/homes/floppydisk/hyprland.nix b/homes/floppydisk/hyprland.nix index 110e037..70ef928 100644 --- a/homes/floppydisk/hyprland.nix +++ b/homes/floppydisk/hyprland.nix @@ -32,8 +32,8 @@ gaps_in = 5; gaps_out = 20; border_size = 2; - "col.active_border" = "rgba(33ccffee) rgba(00ff99ee) 45deg"; - "col.inactive_border" = "rgba(595959aa)"; + "col.active_border" = "rgb(f38ba8)"; + "col.inactive_border" = "rgb(313244)"; layout = "dwindle"; }; @@ -44,10 +44,7 @@ passes = 1; new_optimizations = 1; }; - drop_shadow = "yes"; - shadow_range = 20; - shadow_render_power = 5; - "col.shadow" = "rgba(1a1a1aee)"; + drop_shadow = "no"; }; animations = { diff --git a/homes/floppydisk/packages.nix b/homes/floppydisk/packages.nix index 0e2f87b..53366be 100644 --- a/homes/floppydisk/packages.nix +++ b/homes/floppydisk/packages.nix @@ -18,6 +18,7 @@ qemu virt-manager exactaudiocopy + abcde fsv lsd lsdvd @@ -71,6 +72,7 @@ mycli squirrel-sql figma-linux + processing # langs openscad @@ -83,7 +85,6 @@ deno python310 python310Packages.pip - python310Packages.discordpy dotnet-sdk jdk17 maven @@ -93,7 +94,6 @@ # comms nheko - element-desktop vesktop caprine-bin teamspeak5_client @@ -109,7 +109,6 @@ prismlauncher fceux snes9x - heroic openrct2 osu-lazer-bin diff --git a/homes/floppydisk/waybar.nix b/homes/floppydisk/waybar.nix index 24a9eb2..f66e2d7 100644 --- a/homes/floppydisk/waybar.nix +++ b/homes/floppydisk/waybar.nix @@ -141,7 +141,7 @@ format-charging = " {capacity}%"; format-plugged = " {capacity}%"; format-alt = "{icon}{time}"; - format-icoms = [" " " " " " " " " "]; + format-icons = [" " " " " " " " " "]; }; "network" = { diff --git a/hosts/default.nix b/hosts/default.nix index 5abd965..8cf2a0a 100644 --- a/hosts/default.nix +++ b/hosts/default.nix @@ -3,7 +3,7 @@ inherit (self) inputs; # get necessary inputs from self.inputs inherit (inputs) nixpkgs lanzaboote nixos-hardware; - inherit (inputs.home-manager.nixosModules) home-manager; + inherit (inputs.home-manager.nixosModules) home-manager; # get lib from nixpkgs and create and alias for lib.nixosSystem # for potential future overrides & abstractions inherit (nixpkgs) lib; @@ -20,11 +20,11 @@ commonArgs = {inherit self inputs;}; in { - "nixpad" = mkSystem { + "watermelon" = mkSystem { specialArgs = commonArgs; modules = [ # this list defines which files will be imported to be used as "modules" in the system config - ./nixpad/configuration.nix + ./watermelon/configuration.nix # use the nixos-module for home-manager home-manager home diff --git a/hosts/nixpad/configuration.nix b/hosts/nixpad/configuration.nix deleted file mode 100644 index 092ffde..0000000 --- a/hosts/nixpad/configuration.nix +++ /dev/null @@ -1,155 +0,0 @@ -# This is your system's configuration file. -# Use this to configure your system environment (it replaces /etc/nixos/configuration.nix) -{ - inputs, - lib, - config, - pkgs, - ... -}: { - # You can import other NixOS modules here - imports = [ - ./hardware-configuration.nix - ]; - - services.xserver = { - enable = true; - displayManager.sddm.enable = true; - xkb.layout = "us"; - libinput.enable = true; - }; - - hardware.opengl = { - enable = true; - driSupport = true; - driSupport32Bit = true; - }; - - nixpkgs = { - # Configure your nixpkgs instance - config = { - # Disable if you don't want unfree packages - allowUnfree = true; - }; - }; - - nix = { - # This will add each flake input as a registry - # To make nix3 commands consistent with your flake - registry = lib.mapAttrs (_: value: {flake = value;}) inputs; - - # This will additionally add your inputs to the system's legacy channels - # Making legacy nix commands consistent as well, awesome! - nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry; - - settings = { - # Enable flakes and new 'nix' command - experimental-features = "nix-command flakes"; - # Deduplicate and optimize nix store - auto-optimise-store = true; - }; - }; - - # the configuration (pain) - programs = { - gnupg.agent = { - enable = true; - enableSSHSupport = true; - }; - hyprland = { - enable = true; - xwayland.enable = true; - }; - zsh.enable = true; - }; - - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - - environment.systemPackages = with pkgs; [ - gcc - git - grim - lxqt.lxqt-policykit - pavucontrol - pciutils - pulseaudio - screen - slurp - usbutils - wget - wl-clipboard - xdg-utils - swaynotificationcenter - swayidle - wofi - swaylock - gnome.gnome-keyring - ]; - - services.printing.enable = true; - - fonts.packages = with pkgs; [ - font-awesome - nerdfonts - jetbrains-mono - winePackages.fonts - ]; - - networking.hostName = "nixpad"; - networking.networkmanager.enable = true; - - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; - boot.initrd.systemd.enable = true; - boot.kernelPackages = pkgs.linuxPackages_latest; - - # Set a time zone, idiot - time.timeZone = "Europe/London"; - - # Fun internationalisation stuffs (AAAAAAAA) - i18n.defaultLocale = "en_GB.UTF-8"; - - i18n.extraLocaleSettings = { - LC_ADDRESS = "en_GB.UTF-8"; - LC_IDENTIFICATION = "en_GB.UTF-8"; - LC_MEASUREMENT = "en_GB.UTF-8"; - LC_MONETARY = "en_GB.UTF-8"; - LC_NAME = "en_GB.UTF-8"; - LC_NUMERIC = "en_GB.UTF-8"; - LC_PAPER = "en_GB.UTF-8"; - LC_TELEPHONE = "en_GB.UTF-8"; - LC_TIME = "en_GB.UTF-8"; - }; - - # define user acc - users.users.floppydisk = { - isNormalUser = true; - description = "Frankie B."; - extraGroups = ["networkmanager" "wheel"]; - openssh.authorizedKeys.keys = [ - # TODO: Add your SSH public key(s) here, if you plan on using SSH to connect - ]; - shell = pkgs.zsh; - }; - - nix.gc = { - automatic = true; - dates = "weekly"; - options = "--delete-older-than 30d"; - }; - - # This setups a SSH server. Very important if you're setting up a headless system. - # Feel free to remove if you don't need it. - - services.openssh.enable = true; - - networking.firewall.enable = false; - - system.stateVersion = "24.05"; -} diff --git a/hosts/nixpad/hardware-configuration.nix b/hosts/nixpad/hardware-configuration.nix deleted file mode 100644 index bf0bc0a..0000000 --- a/hosts/nixpad/hardware-configuration.nix +++ /dev/null @@ -1,40 +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" "ehci_pci" "ata_piix" "usb_storage" "sd_mod" "sdhci_pci" ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - - fileSystems."/" = - { device = "/dev/disk/by-uuid/82b7f887-2059-45ae-9bdd-60082718d922"; - fsType = "ext4"; - }; - - fileSystems."/boot" = - { device = "/dev/disk/by-uuid/C630-E94C"; - fsType = "vfat"; - }; - - swapDevices = - [ { device = "/dev/disk/by-uuid/3ce61b0c-691d-4452-93f2-e64e4b926f30"; } - ]; - - # 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..useDHCP`. - networking.useDHCP = lib.mkDefault true; - # networking.interfaces.enp0s25.useDHCP = lib.mkDefault true; - # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; - - nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; - hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; -} diff --git a/hosts/watermelon/configuration.nix b/hosts/watermelon/configuration.nix new file mode 100644 index 0000000..10eddce --- /dev/null +++ b/hosts/watermelon/configuration.nix @@ -0,0 +1,185 @@ +# This is your system's configuration file. +# Use this to configure your system environment (it replaces /etc/nixos/configuration.nix) +{ + inputs, + lib, + config, + pkgs, + ... +}: { + # You can import other NixOS modules here + imports = [ + ./hardware-configuration.nix + ]; + + services.xserver = { + enable = true; + xkb.layout = "us"; + libinput.enable = true; + }; + + services.tailscale.enable = true; + + hardware.opengl = { + enable = true; + driSupport = true; + driSupport32Bit = true; + }; + + nixpkgs = { + # Configure your nixpkgs instance + config = { + # Disable if you don't want unfree packages + allowUnfree = true; + }; + }; + + nix = { + # This will add each flake input as a registry + # To make nix3 commands consistent with your flake + registry = lib.mapAttrs (_: value: {flake = value;}) inputs; + + # This will additionally add your inputs to the system's legacy channels + # Making legacy nix commands consistent as well, awesome! + nixPath = lib.mapAttrsToList (key: value: "${key}=${value.to.path}") config.nix.registry; + + settings = { + # Enable flakes and new 'nix' command + experimental-features = "nix-command flakes"; + # Deduplicate and optimize nix store + auto-optimise-store = true; + }; + }; + + # the configuration (pain) + programs = { + gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; + hyprland = { + enable = true; + xwayland.enable = true; + }; + zsh.enable = true; + }; + + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + + environment.systemPackages = with pkgs; [ + gcc + git + grim + lxqt.lxqt-policykit + pavucontrol + pciutils + pulseaudio + screen + slurp + usbutils + wget + wl-clipboard + xdg-utils + swaynotificationcenter + swayidle + wofi + swaylock + gnome.gnome-keyring + gtklock + fprintd + tailscale + ]; + + services.fprintd = { + enable = true; + }; + services.printing.enable = true; + + fonts.packages = with pkgs; [ + font-awesome + nerdfonts + jetbrains-mono + winePackages.fonts + ]; + + networking.hostName = "watermelon"; + networking.networkmanager.enable = true; + + boot.loader.systemd-boot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + boot.initrd.systemd.enable = true; + boot.kernelPackages = pkgs.linuxPackages_latest; + + # Set a time zone, idiot + time.timeZone = "Europe/London"; + + # Fun internationalisation stuffs (AAAAAAAA) + i18n.defaultLocale = "en_GB.UTF-8"; + + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_GB.UTF-8"; + LC_IDENTIFICATION = "en_GB.UTF-8"; + LC_MEASUREMENT = "en_GB.UTF-8"; + LC_MONETARY = "en_GB.UTF-8"; + LC_NAME = "en_GB.UTF-8"; + LC_NUMERIC = "en_GB.UTF-8"; + LC_PAPER = "en_GB.UTF-8"; + LC_TELEPHONE = "en_GB.UTF-8"; + LC_TIME = "en_GB.UTF-8"; + }; + + # define user acc + users.users.floppydisk = { + isNormalUser = true; + description = "Frankie B."; + extraGroups = ["networkmanager" "wheel"]; + openssh.authorizedKeys.keys = [ + # TODO: Add your SSH public key(s) here, if you plan on using SSH to connect + ]; + shell = pkgs.zsh; + }; + + nix.gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 30d"; + }; + + # This setups a SSH server. Very important if you're setting up a headless system. + # Feel free to remove if you don't need it. + + services.openssh.enable = true; + + services.greetd = { + enable = true; + restart = true; + settings = { + default_session = { + command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd Hyprland"; + user = "greeter"; + }; + }; + }; + + systemd.services.greetd.serviceConfig = { + Type = "idle"; + StandardInput = "tty"; + StandardOutput = "tty"; + StandardError = "journal"; + TTYReset = "true"; + TTYHangup = "true"; + TTYVTDisallocate = true; + }; + + security.pam.services.gtklock.text = lib.readFile "${pkgs.gtklock}/etc/pam.d/gtklock"; + + networking.firewall.enable = false; + + system.stateVersion = "24.05"; +} diff --git a/hosts/watermelon/hardware-configuration.nix b/hosts/watermelon/hardware-configuration.nix new file mode 100644 index 0000000..bf0bc0a --- /dev/null +++ b/hosts/watermelon/hardware-configuration.nix @@ -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, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ata_piix" "usb_storage" "sd_mod" "sdhci_pci" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/82b7f887-2059-45ae-9bdd-60082718d922"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/C630-E94C"; + fsType = "vfat"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/3ce61b0c-691d-4452-93f2-e64e4b926f30"; } + ]; + + # 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..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.enp0s25.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp3s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} -- cgit v1.2.3-54-g00ecf