From 6815ec12ce35cf349a7e89119d4f42ddcba8ebd9 Mon Sep 17 00:00:00 2001 From: Simon Gardling Date: Mon, 3 Feb 2025 23:34:15 -0500 Subject: [PATCH] ricing and config changes --- etcnixos/common.nix | 5 +- etcnixos/flake.lock | 159 +++++++++++++++++++++++++++++-- etcnixos/flake.nix | 47 ++++----- etcnixos/vm.nix | 67 ++++++++++++- home-manager/flake.lock | 44 ++++----- home-manager/flake.nix | 3 +- home-manager/gui.nix | 138 ++++++++++++++------------- home-manager/libs.nix | 4 - home-manager/no-gui.nix | 10 +- home-manager/progs/alacritty.nix | 2 +- home-manager/progs/fish.nix | 4 - home-manager/progs/helix.nix | 6 ++ home-manager/progs/niri.nix | 4 +- home-manager/progs/waybar.nix | 5 +- home-manager/system-mreow.nix | 2 - home-manager/wallpaper.png | Bin 0 -> 22568 bytes 16 files changed, 353 insertions(+), 147 deletions(-) delete mode 100644 home-manager/libs.nix create mode 100644 home-manager/wallpaper.png diff --git a/etcnixos/common.nix b/etcnixos/common.nix index 531dc93..34020de 100644 --- a/etcnixos/common.nix +++ b/etcnixos/common.nix @@ -16,6 +16,7 @@ inputs.agenix.nixosModules.default inputs.nixos-hardware.nixosModules.common-pc-ssd + inputs.chaotic.nixosModules.default ]; nixpkgs.config.allowUnfreePredicate = @@ -47,7 +48,7 @@ # kernel options boot = { - kernelPackages = pkgs.linuxPackages_latest; + kernelPackages = pkgs.linuxPackages_cachyos-lto; kernel.sysctl = { # dmesg shushhhhh @@ -156,7 +157,7 @@ programs.dconf.enable = true; # Enable sound with pipewire. - hardware.pulseaudio.enable = false; # pipewire >>>>>>> pulseaudio + services.pulseaudio.enable = false; # pipewire >>>>>>> pulseaudio security.rtkit.enable = true; services.pipewire = { enable = true; diff --git a/etcnixos/flake.lock b/etcnixos/flake.lock index cbc1b5f..36f19af 100644 --- a/etcnixos/flake.lock +++ b/etcnixos/flake.lock @@ -23,6 +23,31 @@ "type": "github" } }, + "chaotic": { + "inputs": { + "fenix": "fenix", + "flake-schemas": "flake-schemas", + "home-manager": "home-manager_2", + "jovian": "jovian", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738552004, + "narHash": "sha256-eYE+8F0ZrSIYvlVkgTjTBlnM1COqUdSs4GKyWnel6I4=", + "owner": "chaotic-cx", + "repo": "nyx", + "rev": "894d1db77131a4a449d1993c7ba314ee15dd4e36", + "type": "github" + }, + "original": { + "owner": "chaotic-cx", + "ref": "nyxpkgs-unstable", + "repo": "nyx", + "type": "github" + } + }, "crane": { "locked": { "lastModified": 1731098351, @@ -60,6 +85,28 @@ "type": "github" } }, + "fenix": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src" + }, + "locked": { + "lastModified": 1738477724, + "narHash": "sha256-S1x0F7q9cJ6EEmZsakse2Ps6Adi7NadxRtGiuWUlwT0=", + "owner": "nix-community", + "repo": "fenix", + "rev": "1936bb37b1d8597273e3611873dc09dd61b09818", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "fenix", + "type": "github" + } + }, "flake-compat": { "flake": false, "locked": { @@ -97,6 +144,20 @@ "type": "github" } }, + "flake-schemas": { + "locked": { + "lastModified": 1721999734, + "narHash": "sha256-G5CxYeJVm4lcEtaO87LKzOsVnWeTcHGKbKxNamNWgOw=", + "rev": "0a5c42297d870156d9c57d8f99e476b738dcd982", + "revCount": 75, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/DeterminateSystems/flake-schemas/0.1.5/0190ef2f-61e0-794b-ba14-e82f225e55e6/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/DeterminateSystems/flake-schemas/%3D0.1.5.tar.gz" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -140,6 +201,49 @@ "type": "github" } }, + "home-manager_2": { + "inputs": { + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738448366, + "narHash": "sha256-4ATtQqBlgsGqkHTemta0ydY6f7JBRXz4Hf574NHQpkg=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "18fa9f323d8adbb0b7b8b98a8488db308210ed93", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, + "jovian": { + "inputs": { + "nix-github-actions": "nix-github-actions", + "nixpkgs": [ + "chaotic", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1738478597, + "narHash": "sha256-it7lc+HRSQiLV+3CcA+c6fkr2355HyT2GGUowHdfa/E=", + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "rev": "77fb0818cb42ca0db98839d47bbc6a317c286282", + "type": "github" + }, + "original": { + "owner": "Jovian-Experiments", + "repo": "Jovian-NixOS", + "type": "github" + } + }, "lanzaboote": { "inputs": { "crane": "crane", @@ -165,13 +269,36 @@ "type": "github" } }, + "nix-github-actions": { + "inputs": { + "nixpkgs": [ + "chaotic", + "jovian", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1729697500, + "narHash": "sha256-VFTWrbzDlZyFHHb1AlKRiD/qqCJIripXKiCSFS8fAOY=", + "owner": "zhaofengli", + "repo": "nix-github-actions", + "rev": "e418aeb728b6aa5ca8c5c71974e7159c2df1d8cf", + "type": "github" + }, + "original": { + "owner": "zhaofengli", + "ref": "matrix-name", + "repo": "nix-github-actions", + "type": "github" + } + }, "nixos-hardware": { "locked": { - "lastModified": 1738391520, - "narHash": "sha256-6HI58PKjddsC0RA0gBQlt6ox47oH//jLUHwx05RO8g0=", + "lastModified": 1738638143, + "narHash": "sha256-ZYMe4c4OCtIUBn5hx15PEGr0+B1cNEpl2dsaLxwY2W0=", "owner": "NixOS", "repo": "nixos-hardware", - "rev": "34b64e4e1ddb14e3ffc7db8d4a781396dbbab773", + "rev": "9bdd53f5908453e4d03f395eb1615c3e9a351f70", "type": "github" }, "original": { @@ -183,16 +310,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1738277201, - "narHash": "sha256-6L+WXKCw5mqnUIExvqkD99pJQ41xgyCk6z/H9snClwk=", + "lastModified": 1738410390, + "narHash": "sha256-xvTo0Aw0+veek7hvEVLzErmJyQkEcRk6PSR4zsRQFEc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "666e1b3f09c267afd66addebe80fb05a5ef2b554", + "rev": "3a228057f5b619feb3186e986dbe76278d707b6e", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.11", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } @@ -243,11 +370,29 @@ "root": { "inputs": { "agenix": "agenix", + "chaotic": "chaotic", "lanzaboote": "lanzaboote", "nixos-hardware": "nixos-hardware", "nixpkgs": "nixpkgs" } }, + "rust-analyzer-src": { + "flake": false, + "locked": { + "lastModified": 1738433753, + "narHash": "sha256-lyhEsEf5FQzV+KHVkfxIApMOFWHqyls5+llcQ/uhV6Y=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "88b901878e684e4f68f104fdbc48749f41bcccd3", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, "rust-overlay": { "inputs": { "nixpkgs": [ diff --git a/etcnixos/flake.nix b/etcnixos/flake.nix index 9dbee29..5366a77 100644 --- a/etcnixos/flake.nix +++ b/etcnixos/flake.nix @@ -2,8 +2,7 @@ description = "System nixOS flake"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11"; - # nixpkgs.url = "github:NixOS/nixpkgs/master"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; lanzaboote = { url = "github:nix-community/lanzaboote"; @@ -16,6 +15,11 @@ url = "github:ryantm/agenix"; inputs.nixpkgs.follows = "nixpkgs"; }; + + chaotic = { + url = "github:chaotic-cx/nyx/nyxpkgs-unstable"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = @@ -30,29 +34,26 @@ let username = "primary"; system = "x86_64-linux"; + hostnames = [ + "mreow" + "yarn" + ]; in { - # desktop - nixosConfigurations.yarn = nixpkgs.lib.nixosSystem { - specialArgs = { - hostname = "yarn"; - inherit inputs username; - }; - modules = [ - ./system-yarn.nix - ]; - }; - - # laptop - nixosConfigurations.mreow = nixpkgs.lib.nixosSystem { - specialArgs = { - hostname = "mreow"; - inherit inputs username; - }; - modules = [ - ./system-mreow.nix - ]; - }; + nixosConfigurations = nixpkgs.lib.foldl' ( + config: hostname: + config + // { + "${hostname}" = nixpkgs.lib.nixosSystem { + specialArgs = { + inherit inputs username hostname; + }; + modules = [ + ./system-${hostname}.nix + ]; + }; + } + ) { } hostnames; }; } diff --git a/etcnixos/vm.nix b/etcnixos/vm.nix index f3428a1..112b2d9 100644 --- a/etcnixos/vm.nix +++ b/etcnixos/vm.nix @@ -1,14 +1,77 @@ -{ pkgs, username, ... }: { + pkgs, + username, + lib, + ... +}: +{ + + environment.systemPackages = with pkgs; [ + # https://github.com/quickemu-project/quickemu + (quickemu.overrideAttrs (old: { + patches = [ + (pkgs.fetchpatch { + url = "https://github.com/Titaniumtown/quickemu/commit/f96d52a6b6f4b3187171d8cab61a273475da3b6c.diff"; + sha256 = "vXVI4EeJGhOlx8ARTCvB98Ajalk0bVakL98WojqcI3c="; + }) + ]; + })) + ]; programs.virt-manager.enable = true; users.groups.libvirtd.members = [ username ]; - virtualisation.libvirtd.enable = true; + virtualisation.libvirtd = { + enable = true; + + package = pkgs.libvirt; + + qemu = { + package = ( + pkgs.qemu_kvm.overrideAttrs (old: { + patches = old.patches ++ [ + # amd? + # (pkgs.fetchpatch { + # url = "https://github.com/Scrut1ny/Hypervisor-Phantom/raw/d09d66813570704e2b05440f290d6f9bdf2d26c7/Hypervisor-Phantom/patches/QEMU/amd-qemu-9.2.0.patch"; + # sha256 = "BbzgjRa3qaYH1yXXqU6M/S68SxXWpAc9ObTG5qXu6YA="; + # }) + + # or intel! + (pkgs.fetchpatch { + url = "https://github.com/Scrut1ny/Hypervisor-Phantom/raw/d09d66813570704e2b05440f290d6f9bdf2d26c7/Hypervisor-Phantom/patches/QEMU/intel-qemu-9.2.0.patch"; + sha256 = "kXY6R/0Tsotf0mGUIevDLlLWHEznnF1dt0K2ayX7XAg="; + }) + + (pkgs.fetchpatch { + url = "https://github.com/Scrut1ny/Hypervisor-Phantom/raw/d09d66813570704e2b05440f290d6f9bdf2d26c7/Hypervisor-Phantom/patches/QEMU/qemu-9.2.0-libnfs6.patch"; + sha256 = "DkkC7KiQLnL7jbBOtgyLKVvozEG388hdfl5seEqvu3o="; + }) + ]; + }) + ); + + ovmf.packages = lib.mkForce [ + (pkgs.OVMF.overrideAttrs (old: { + secureBoot = true; + tpmSupport = true; + })).fd + ]; + }; + }; virtualisation.spiceUSBRedirection.enable = true; users.users."${username}".extraGroups = [ "libvirtd" ]; + boot.kernelPatches = [ + { + name = "undetected-kvm"; + patch = pkgs.fetchurl { + url = "https://raw.githubusercontent.com/Scrut1ny/Hypervisor-Phantom/d09d66813570704e2b05440f290d6f9bdf2d26c7/Hypervisor-Phantom/patches/Kernel/linux-6.13-svm.patch"; + sha256 = "zz18xerutulLGzlHhnu26WCY8rVQXApyeoDtCjbejIk="; + }; + } + ]; + } diff --git a/home-manager/flake.lock b/home-manager/flake.lock index d1ea531..2e552d9 100644 --- a/home-manager/flake.lock +++ b/home-manager/flake.lock @@ -54,11 +54,11 @@ ] }, "locked": { - "lastModified": 1738415006, - "narHash": "sha256-ZlLTnqIQQ8OE6AtT+fluB642j2R9tnvxHHtpnmLjSxQ=", + "lastModified": 1738610386, + "narHash": "sha256-yb6a5efA1e8xze1vcdN2HBxqYr340EsxFMrDUHL3WZM=", "owner": "nix-community", "repo": "home-manager", - "rev": "8544cd092047a7e92d0dce011108a563de7fc0f2", + "rev": "066ba0c5cfddbc9e0dddaec73b1561ad38aa8abe", "type": "github" }, "original": { @@ -79,11 +79,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1738410471, - "narHash": "sha256-j0XZIViI4ZEFwhrEzVKz696/4DZ9pRiWtGfxJogA+MM=", + "lastModified": 1738583235, + "narHash": "sha256-Tk5w3uqp045W/W0mDQT0swwy90ex0l3JWS2crimG8Wo=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "16f8e14385163479aca7231d8fab0091adac2e56", + "rev": "1511396846427b58f1d6ca5442a228ede7673c67", "type": "github" }, "original": { @@ -112,11 +112,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1738404307, - "narHash": "sha256-BFtfL5kZbIsDAMgbVP5E0HbqDapYWw4NBw1xS0AOCCc=", + "lastModified": 1738579367, + "narHash": "sha256-820QsR/C9+Gyn3v65LHNwwW7KxSA6u6MQtky3SUrZ3A=", "owner": "YaLTeR", "repo": "niri", - "rev": "32ad545f842f4c176548e30d183d10e0a2bab752", + "rev": "553b1ba85256e2cb290e8a67f709a14e603606bc", "type": "github" }, "original": { @@ -127,27 +127,27 @@ }, "nixpkgs": { "locked": { - "lastModified": 1738277201, - "narHash": "sha256-6L+WXKCw5mqnUIExvqkD99pJQ41xgyCk6z/H9snClwk=", + "lastModified": 1738410390, + "narHash": "sha256-xvTo0Aw0+veek7hvEVLzErmJyQkEcRk6PSR4zsRQFEc=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "666e1b3f09c267afd66addebe80fb05a5ef2b554", + "rev": "3a228057f5b619feb3186e986dbe76278d707b6e", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-24.11", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } }, "nixpkgs-stable": { "locked": { - "lastModified": 1738277201, - "narHash": "sha256-6L+WXKCw5mqnUIExvqkD99pJQ41xgyCk6z/H9snClwk=", + "lastModified": 1738435198, + "narHash": "sha256-5+Hmo4nbqw8FrW85FlNm4IIrRnZ7bn0cmXlScNsNRLo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "666e1b3f09c267afd66addebe80fb05a5ef2b554", + "rev": "f6687779bf4c396250831aa5a32cbfeb85bb07a3", "type": "github" }, "original": { @@ -174,11 +174,11 @@ ] }, "locked": { - "lastModified": 1738376888, - "narHash": "sha256-S6ErHxkSm0iA7ZMsjjDaASWxbELYcdfv8BhOkkj1rHw=", + "lastModified": 1738635966, + "narHash": "sha256-5MbJhh6nz7tx8FYVOJ0+ixMaEn0ibGzV/hScPMmqVTE=", "owner": "oxalica", "repo": "rust-overlay", - "rev": "83284068670d5ae4a43641c4afb150f3446be70d", + "rev": "1ff8663cd75a11e61f8046c62f4dbb05d1907b44", "type": "github" }, "original": { @@ -242,11 +242,11 @@ ] }, "locked": { - "lastModified": 1738421728, - "narHash": "sha256-+4w7zluaVoM1WrbhuBkWUF5hiXVCmXORlVT/p0Dm4vQ=", + "lastModified": 1738639173, + "narHash": "sha256-fZnh8ypF2NJ99heI3C/MdtvRUDlIhuSCnhduKEJy86o=", "owner": "0xc000022070", "repo": "zen-browser-flake", - "rev": "d0022d9a6c2a18ea8da0ecaa6482b4607f3d7591", + "rev": "5bce21504d22f7d9d984b4f008cbc74b4ce76273", "type": "github" }, "original": { diff --git a/home-manager/flake.nix b/home-manager/flake.nix index e376bec..954a3e0 100644 --- a/home-manager/flake.nix +++ b/home-manager/flake.nix @@ -2,8 +2,7 @@ description = "My nixOS flake for home-manager"; inputs = { - nixpkgs.url = "github:NixOS/nixpkgs/nixos-24.11"; - # nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; + nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; home-manager = { url = "github:nix-community/home-manager"; diff --git a/home-manager/gui.nix b/home-manager/gui.nix index 60f19c8..6bb51b1 100644 --- a/home-manager/gui.nix +++ b/home-manager/gui.nix @@ -21,103 +21,105 @@ "apple_cursor" ]; - home.packages = with pkgs; [ - #calculator - gnome-calculator + home.packages = + with pkgs; + [ + #calculator + gnome-calculator - #productivity stuff - libreoffice - hunspell # spellcheck - hunspellDicts.en_US # spellcheck dictionary + #productivity stuff + libreoffice + hunspell # spellcheck + hunspellDicts.en_US # spellcheck dictionary - #video and audio downloading - parabolic + #video and audio downloading + parabolic - #soulseek client - nicotine-plus + #soulseek client + nicotine-plus - #dark web browsing deep web browsing - tor-browser + #dark web browsing deep web browsing + tor-browser - #audio editing - audacity + #audio editing + audacity - #fonts - noto-fonts - noto-fonts-emoji - liberation_ttf + #fonts + noto-fonts + noto-fonts-emoji + liberation_ttf - #for ebook reading - foliate + #for ebook reading + foliate - #audio mixer (pavucontrol but for pipewire) - pwvucontrol + #audio mixer (pavucontrol but for pipewire) + pwvucontrol - #minecraft launcher - prismlauncher + #minecraft launcher + prismlauncher - mpv - mumble - system76-keyboard-configurator + mpv + mumble + system76-keyboard-configurator - #jellyfin - finamp # music player - delfin # jellyfin client + #jellyfin + finamp # music player + delfin # jellyfin client - signal-desktop + signal-desktop - #accounting - # gnucash + #accounting + # gnucash - # image tools - inkscape - nomacs + # image tools + inkscape + nomacs - # partitioning utilities - gparted - gnome-disk-utility + # partitioning utilities + gparted + gnome-disk-utility - # small nicities - wl-clipboard # wl-copy & wl-paste - libnotify # notifications library - xdg-utils # xdg utils + # small nicities + wl-clipboard # wl-copy & wl-paste + libnotify # notifications library + xdg-utils # xdg utils - # music tagging utility - picard + # music tagging utility + picard - # music lyric fetcher - lrcget + # music lyric fetcher + lrcget - inputs.zen-browser.packages."${system}".default + inputs.zen-browser.packages."${system}".default - # freecad-wayland - puddletag + # freecad-wayland + puddletag - epiphany + epiphany - mcaselector + mcaselector - wireshark + wireshark - darktable - rawtherapee - hugin + darktable + rawtherapee + hugin - # nufraw - nufraw-thumbnailer - gdk-pixbuf - nautilus + # nufraw + nufraw-thumbnailer + gdk-pixbuf + nautilus - enblend-enfuse + enblend-enfuse - nerdfonts + savvycan - savvycan + # nerdfonts - # simple screen recording on wayland - wl-screenrec - ]; - # ++ (builtins.filter lib.isDerivation (builtins.attrValues nerd-fonts)); + # simple screen recording on wayland + wl-screenrec + ] + ++ (builtins.filter lib.isDerivation (builtins.attrValues nerd-fonts)); programs.zed-editor = { enable = true; diff --git a/home-manager/libs.nix b/home-manager/libs.nix deleted file mode 100644 index c62047c..0000000 --- a/home-manager/libs.nix +++ /dev/null @@ -1,4 +0,0 @@ -{ pkgs, ... }: -{ - -} diff --git a/home-manager/no-gui.nix b/home-manager/no-gui.nix index 080888b..13816ba 100644 --- a/home-manager/no-gui.nix +++ b/home-manager/no-gui.nix @@ -144,11 +144,11 @@ nmap ]; - home.file.".cargo/config.toml".text = '' - [target.${lib.strings.removeSuffix "-linux" pkgs.system}-unknown-linux-gnu] - linker = "${pkgs.clang}/bin/clang" - rustflags = ["-C", "link-arg=-fuse-ld=${pkgs.mold}/bin/mold"] - ''; + # home.file.".cargo/config.toml".text = '' + # [target.${lib.strings.removeSuffix "-linux" pkgs.system}-unknown-linux-gnu] + # linker = "${pkgs.clang}/bin/clang" + # rustflags = ["-C", "link-arg=-fuse-ld=${pkgs.mold}/bin/mold"] + # ''; # default applications home.sessionVariables = { diff --git a/home-manager/progs/alacritty.nix b/home-manager/progs/alacritty.nix index b7e2c6a..49de2b1 100644 --- a/home-manager/progs/alacritty.nix +++ b/home-manager/progs/alacritty.nix @@ -15,7 +15,7 @@ decorations = "none"; # semi-transparent - opacity = 0.975; + opacity = 0.90; # padding between the content of the terminal and the edge padding = { diff --git a/home-manager/progs/fish.nix b/home-manager/progs/fish.nix index 4149a6a..29e64de 100644 --- a/home-manager/progs/fish.nix +++ b/home-manager/progs/fish.nix @@ -43,12 +43,8 @@ in pbcopy = "${pkgs.wl-clipboard}/bin/wl-copy"; pbpaste = "${pkgs.wl-clipboard}/bin/wl-paste"; - nix-cleanup = "doas nix-collect-garbage --delete-older-than 1d && doas nix-store --optimise && doas nix-store --gc"; - gcc-native = "${pkgs.gcc}/bin/gcc -Q --help=target -mtune=native -march=native | ${pkgs.gnugrep}/bin/grep -E '^\\s+\-(mtune|march)=' | ${coreutils}/tr -d '[:blank:]'"; - chess = "${pkgs.chess-tui}/bin/chess-tui -e ${pkgs.stockfish}/bin/stockfish"; - run-steam = "gamescope --backend sdl -W 2256 -H 1504 -f --steam -- steam -tenfoot -pipewire-dmabuf"; }; diff --git a/home-manager/progs/helix.nix b/home-manager/progs/helix.nix index 6dd51cb..3f5919e 100644 --- a/home-manager/progs/helix.nix +++ b/home-manager/progs/helix.nix @@ -18,7 +18,13 @@ # wrapping!! soft-wrap.enable = true; + + end-of-line-diagnostics = "hint"; + inline-diagnostics = { + cursor-line = "warning"; + }; }; + }; languages = { diff --git a/home-manager/progs/niri.nix b/home-manager/progs/niri.nix index fb38db3..5c3c8ea 100644 --- a/home-manager/progs/niri.nix +++ b/home-manager/progs/niri.nix @@ -47,10 +47,8 @@ { command = [ "${pkgs.swaybg}/bin/swaybg" - "-m" - "center" "-i" - "${homeDirectory}/.wallpaper.png" + "${../wallpaper.png}" ]; } diff --git a/home-manager/progs/waybar.nix b/home-manager/progs/waybar.nix index 5b3f0ed..6e3ee36 100644 --- a/home-manager/progs/waybar.nix +++ b/home-manager/progs/waybar.nix @@ -158,9 +158,10 @@ style = '' /*base background color*/ - @define-color bg_main rgba(25, 25, 25, 1.0); - @define-color bg_main_tooltip rgba(0, 0, 0, 0.7); + /* color picked from a celeste background bc it looks pretty and matches my background */ + @define-color bg_main rgba(39.6, 51.4, 76.1, 1.0); + @define-color bg_main_tooltip rgba(0, 0, 0, 0.7); /*base background color of selections */ @define-color bg_hover rgba(200, 200, 200, 0.3); diff --git a/home-manager/system-mreow.nix b/home-manager/system-mreow.nix index db80d0b..b5e35ff 100644 --- a/home-manager/system-mreow.nix +++ b/home-manager/system-mreow.nix @@ -32,8 +32,6 @@ xwayland-satellite-unstable ]; - services.blueman-applet.enable = true; - # media controls systemd.user.services.mpris-proxy = { Unit.Description = "Mpris proxy"; diff --git a/home-manager/wallpaper.png b/home-manager/wallpaper.png new file mode 100644 index 0000000000000000000000000000000000000000..6806bd75f2538cfe13a51cf017baeeb56a27ead1 GIT binary patch literal 22568 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 R;&IT4u%51dF6*2UngCqy-HQMK literal 0 HcmV?d00001