diff --git a/home/games/morrowind.nix b/home/games/morrowind.nix index ff85bab..be92688 100644 --- a/home/games/morrowind.nix +++ b/home/games/morrowind.nix @@ -1,10 +1,15 @@ { + config, pkgs, ... }: { - home.packages = with pkgs; [ openmw ]; - home.sessionVariables.SDL_VIDEO_DRIVER = "wayland"; + home = { + packages = with pkgs; [ openmw ]; + sessionVariables = { + SDL_VIDEO_DRIVER = "wayland"; + }; + }; programs.firefox.profiles.default.search.engines.uesp = { name = "Unofficial Elder Scrolls Pages"; diff --git a/home/services/default.nix b/home/services/default.nix index a0ff910..d38c136 100644 --- a/home/services/default.nix +++ b/home/services/default.nix @@ -31,8 +31,6 @@ home.sessionVariables = { QT_QPA_PLATFORMTHEME = "qt6ct"; - # this makes electron apps work per the wiki - NIXOS_OZONE_WL = "1"; }; gtk = { diff --git a/home/terminal/neovim.nix b/home/terminal/neovim.nix index f45e453..65ace66 100644 --- a/home/terminal/neovim.nix +++ b/home/terminal/neovim.nix @@ -1,11 +1,12 @@ { pkgs, config, - lib, ... }: { - home.sessionVariables.EDITOR = lib.mkForce "kitty nvim"; + home.sessionVariables = { + EDITOR = "nvim"; + }; home.packages = with pkgs; [ kdePackages.qtdeclarative diff --git a/home/tiling/niri.nix b/home/tiling/niri.nix index 3c29760..26dff3b 100644 --- a/home/tiling/niri.nix +++ b/home/tiling/niri.nix @@ -196,40 +196,8 @@ ]; opacity = 1.0; } - { - # Kitty Fastfetch window - matches = [ - { - app-id = "kitty"; - title = "^fastfetch$"; - } - ]; - open-floating = true; - baba-is-float = true; - min-width = 960; - min-height = 480; - max-width = 960; - max-height = 480; - } ]; layer-rules = [ - { - matches = [ { namespace = "noctalia-bar-content-.*"; } ]; - background-effect = { - xray = false; - blur = true; - noise = 0.05; - saturation = 1; - }; - } - { - matches = [ { namespace = "noctalia-bar-exclusion-top-.*"; } ]; - place-within-backdrop = true; - } - { - matches = [ { namespace = "^launcher$"; } ]; - opacity = 0.925; - } { matches = [ { @@ -249,10 +217,6 @@ action.spawn = [ "kitty" ]; hotkey-overlay.title = "Open a Terminal: kitty"; }; - "Mod+Shift+T" = { - action.spawn-sh = [ "kitty --title fastfetch sh -c 'fastfetch; sleep 10'" ]; - hotkey-overlay.title = "Open a Terminal with Fastfetch"; - }; "Mod+Space" = { action.spawn = [ "fuzzel" ]; hotkey-overlay.title = "Run an Application: Noctalia app launcher"; diff --git a/home/tiling/wallpaper.nix b/home/tiling/wallpaper.nix index 2f11288..095c163 100644 --- a/home/tiling/wallpaper.nix +++ b/home/tiling/wallpaper.nix @@ -6,6 +6,8 @@ systemd.user.services.awww-daemon = { Unit.Description = "Wallpaper service using awww (daemon)"; Service.ExecStart = "${pkgs.awww}/bin/awww-daemon"; + Unit.After = [ "graphical-session.target" ]; + Unit.PartOf = [ "graphical-session.target" ]; Install.WantedBy = [ "graphical-session.target" ]; }; diff --git a/system/default.nix b/system/default.nix index 5b7bcf4..332e25f 100755 --- a/system/default.nix +++ b/system/default.nix @@ -2,16 +2,28 @@ # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { - config, pkgs, ... }: { + environment.sessionVariables = { + # this makes electron apps work per the wiki + NIXOS_OZONE_WL = "1"; + }; + boot = { - plymouth.enable = true; - plymouth.logo = "${pkgs.nixos-icons}/share/icons/hicolor/64x64/apps/nix-snowflake-white.png"; + plymouth = { + enable = true; + logo = "${pkgs.nixos-icons}/share/icons/hicolor/64x64/apps/nix-snowflake-white.png"; + }; + loader = { timeout = 3; + # systemd-boot = { + # enable = true; + # consoleMode = lib.mkForce "auto"; + # configurationLimit = 10; + # }; limine = { enable = true; maxGenerations = 10; @@ -28,6 +40,7 @@ }; }; }; + # efi.canTouchEfiVariables = true; }; kernelParams = [ "quiet" @@ -42,93 +55,9 @@ initrd.verbose = false; }; - programs = { - gnupg.agent = { - enable = true; - enableSSHSupport = true; - pinentryPackage = pkgs.pinentry-curses; - }; - niri.enable = true; - niri.package = pkgs.niri-unstable; - dconf.enable = true; - dconf.profiles.user = { - databases = [ - { - # breaks user-level indirect config of dconf - # lockAll = true; - settings = { - "org/gnome/desktop/interface" = { - color-scheme = "prefer-dark"; - clock-format = "12h"; - clock-show-weekday = true; - }; - "org/gnome/desktop/wm/preferences" = { - button-layout = ":"; - action-double-click-titlebar = "'none'"; - }; - "org/gnome/desktop/media-handling" = { - automount = false; - automount-open = false; - autorun-never = true; - }; - "org/gnome/settings-daemon/plugins/power" = { - sleep-inactive-ac-type = "nothing"; - }; - "org/gnome/mutter" = { - edge-tiling = true; - dynamic-workspaces = true; - experimental-features = [ "variable-refresh-rate" ]; - }; - }; - } - ]; - }; - - }; - - # aerothemeplasma = { - # enable = true; - # plasma.enable = true; - # fonts.enable = false; - # plymouth.enable = false; - # sddm.enable = true; - # }; - - services = { - desktopManager.plasma6.enable = true; - displayManager = { - sddm.enable = true; - sddm.wayland.enable = true; - defaultSession = "niri"; - }; - gnome.gnome-keyring.enable = true; - libinput.enable = true; - printing.enable = true; - pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - }; - udisks2.enable = true; - gvfs.enable = true; - upower.enable = true; - power-profiles-daemon.enable = true; - openssh.enable = true; - }; - - environment.systemPackages = with pkgs; [ - git - firefoxpwa - ]; - - security.pam.services.niri.enableGnomeKeyring = config.services.gnome.gnome-keyring.enable; - networking.firewall.enable = false; networking.networkmanager.enable = true; - documentation.man.enable = true; - documentation.man.generateCaches = false; - hardware.graphics.enable = true; hardware.bluetooth.enable = true; + time.timeZone = "America/New_York"; i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { @@ -143,6 +72,108 @@ LC_TIME = "en_US.UTF-8"; }; + # Enable OpenGL + hardware.graphics = { + enable = true; + }; + + programs.niri = { + enable = true; + package = pkgs.niri-unstable; + }; + services.gnome.gnome-keyring.enable = true; + security.pam.services.niri.enableGnomeKeyring = true; + programs.dconf.enable = true; + + programs.dconf.profiles.user = { + databases = [ + { + # breaks user-level indirect config of dconf + # lockAll = true; + settings = { + "org/gnome/desktop/interface" = { + color-scheme = "prefer-dark"; + clock-format = "12h"; + clock-show-weekday = true; + }; + "org/gnome/desktop/wm/preferences" = { + button-layout = ":"; + action-double-click-titlebar = "'none'"; + }; + "org/gnome/desktop/media-handling" = { + automount = false; + automount-open = false; + autorun-never = true; + }; + "org/gnome/settings-daemon/plugins/power" = { + sleep-inactive-ac-type = "nothing"; + }; + "org/gnome/mutter" = { + edge-tiling = true; + dynamic-workspaces = true; + experimental-features = [ "variable-refresh-rate" ]; + }; + }; + } + ]; + }; + + # aerothemeplasma = { + # enable = true; + # plasma.enable = true; + # fonts.enable = false; + # plymouth.enable = false; + # sddm.enable = true; + # }; + + services = { + # displayManager = { + # gdm.enable = true; + # defaultSession = "niri"; + # }; + desktopManager.plasma6.enable = true; + displayManager = { + sddm.enable = true; + # defaultSession = "aerothemeplasma"; + }; + + libinput.enable = true; + printing.enable = true; + pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + }; + udisks2.enable = true; + gvfs.enable = true; + + upower.enable = true; + power-profiles-daemon.enable = true; + }; + + environment = { + systemPackages = with pkgs; [ + git + firefoxpwa + distrobox + ]; + }; + + programs.gnupg.agent = { + enable = true; + enableSSHSupport = true; + pinentryPackage = pkgs.pinentry-curses; + }; + networking.firewall.enable = false; + + documentation.man = { + enable = true; + generateCaches = false; + }; + + services.openssh.enable = true; + # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave