diff --git a/config/common.nix b/config/common.nix index 3e2297f..1f9076c 100644 --- a/config/common.nix +++ b/config/common.nix @@ -75,6 +75,7 @@ usbutils # lsusb wget zsh + android-tools # media yt-dlp diff --git a/config/desktop.nix b/config/desktop.nix index 72fc66a..63cd250 100644 --- a/config/desktop.nix +++ b/config/desktop.nix @@ -12,7 +12,8 @@ qt.platformTheme = "gnome"; #hyprland - services.displayManager.gdm.enable = true; # use sddm until gnome 50 due to https://github.com/systemd/systemd/issues/39259 + services.displayManager.sddm.enable = true; # use sddm until gnome 50 due to https://github.com/systemd/systemd/issues/39259 + services.displayManager.sddm.wayland.enable = true; hardware.bluetooth.enable = true; hardware.bluetooth.powerOnBoot = true; @@ -47,12 +48,11 @@ services.ollama = { enable = true; - acceleration = "cuda"; openFirewall = true; host = "0.0.0.0"; # Optional: preload models, see https://ollama.com/library loadModels = [ "gemma4" ]; - package = pkgs.unstable.ollama; + package = pkgs.ollama-cuda; }; @@ -100,33 +100,33 @@ environment.systemPackages = with pkgs; [ brave firefox - #blender - #audacity - #orca-slicer - #gimp - #inkscape - #unstable.protonmail-desktop + blender + audacity + orca-slicer + gimp + inkscape + unstable.protonmail-desktop #bitwarden-desktop - #libreoffice - #freecad - #kiwix - #obs-studio - #obsidian + libreoffice + freecad + kiwix + obs-studio + obsidian unstable.proton-authenticator - #prismlauncher - #unstable.signal-desktop + prismlauncher + unstable.signal-desktop tor-browser - #wireshark - #monero-gui - #moonlight-qt + wireshark + monero-gui + moonlight-qt nvtopPackages.nvidia dconf-editor - #kdePackages.kdenlive - #element-desktop - #chirp + kdePackages.kdenlive + element-desktop + chirp scrcpy veracrypt - #lmms + lmms restic-browser # games @@ -144,20 +144,20 @@ #zeroad #0ad # game utils - mangohud - umu-launcher + #mangohud + #umu-launcher # emu #ryubing #xemu - xenia-canary + #xenia-canary #retroarch-full #rpcs3 #dolphin-emu #cemu # backup - #keepassxc + keepassxc ]; fonts.fontconfig = { @@ -181,8 +181,6 @@ services.hardware.openrgb.package = pkgs.openrgb-with-all-plugins; programs = { - adb.enable = true; - localsend = { @@ -196,7 +194,7 @@ gamescope = { enable = true; - capSysNice = true; + #capSysNice = true; }; steam = { @@ -244,69 +242,69 @@ [ "${automount_opts},credentials=/etc/nixos/smb-credentials,uid=1000,gid=1000" ]; }; - programs.virt-manager.enable = true; - users.groups.libvirtd.members = [ "admin" ]; - virtualisation.libvirtd = { - enable = true; - qemu.swtpm.enable = true; - }; - virtualisation.spiceUSBRedirection.enable = true; + #programs.virt-manager.enable = true; + #users.groups.libvirtd.members = [ "admin" ]; + #virtualisation.libvirtd = { + # enable = true; + # qemu.swtpm.enable = true; + #}; + #virtualisation.spiceUSBRedirection.enable = true; imports = [ inputs.nix-flatpak.nixosModules.nix-flatpak ]; - services.flatpak = { - enable = true; - update.auto = { - enable = true; - onCalendar = "weekly"; # Default value - }; - packages = [ - "com.bitwarden.desktop" - "com.orcaslicer.OrcaSlicer" - "me.proton.Mail" - "org.audacityteam.Audacity" - "org.blender.Blender" - "org.freecad.FreeCAD" - "org.gimp.GIMP" - "org.inkscape.Inkscape" - "org.kiwix.desktop" - "org.libreoffice.LibreOffice" - "md.obsidian.Obsidian" - "com.obsproject.Studio" - "org.prismlauncher.PrismLauncher" - "org.signal.Signal" - "org.wireshark.Wireshark" - "org.getmonero.Monero" - "com.moonlight_stream.Moonlight" - "org.kde.kdenlive" - "im.riot.Riot" - "com.chirpmyradio.chirp" - "io.lmms.LMMS" + #services.flatpak = { + # enable = true; + # update.auto = { + # enable = true; + # onCalendar = "weekly"; # Default value + # }; + # packages = [ + # "com.bitwarden.desktop" + # "com.orcaslicer.OrcaSlicer" + # "me.proton.Mail" + # "org.audacityteam.Audacity" + # "org.blender.Blender" + # "org.freecad.FreeCAD" + # "org.gimp.GIMP" + # "org.inkscape.Inkscape" + # "org.kiwix.desktop" + # "org.libreoffice.LibreOffice" + # "md.obsidian.Obsidian" + # "com.obsproject.Studio" + # "org.prismlauncher.PrismLauncher" + # "org.signal.Signal" + # "org.wireshark.Wireshark" + # "org.getmonero.Monero" + # "com.moonlight_stream.Moonlight" + # "org.kde.kdenlive" + # "im.riot.Riot" + # "com.chirpmyradio.chirp" + # "io.lmms.LMMS" - # games - "com.github.Anuken.Mindustry" - "com.play0ad.zeroad" - "io.github.endless_sky.endless_sky" - "io.github.spacingbat3.webcord" - "io.github.yairm210.unciv" - "io.openrct2.OpenRCT2" - "net.runelite.RuneLite" - "org.cataclysmdda.CataclysmDDA" - "org.openttd.OpenTTD" - "org.wesnoth.Wesnoth" - "org.xonotic.Xonotic" - "sh.ppy.osu" - - # emu - "io.github.ryubing.Ryujinx" - "app.xemu.xemu" - "net.rpcs3.RPCS3" - "org.DolphinEmu.dolphin-emu" - "info.cemu.Cemu" + # # games + # "com.github.Anuken.Mindustry" + # "com.play0ad.zeroad" + # "io.github.endless_sky.endless_sky" + # "io.github.spacingbat3.webcord" + # "io.github.yairm210.unciv" + # "io.openrct2.OpenRCT2" + # "net.runelite.RuneLite" + # "org.cataclysmdda.CataclysmDDA" + # "org.openttd.OpenTTD" + # "org.wesnoth.Wesnoth" + # "org.xonotic.Xonotic" + # "sh.ppy.osu" + # + # # emu + # "io.github.ryubing.Ryujinx" + # "app.xemu.xemu" + # "net.rpcs3.RPCS3" + # "org.DolphinEmu.dolphin-emu" + # "info.cemu.Cemu" - # backup - "org.keepassxc.KeePassXC" - - ]; - }; + # # backup + # "org.keepassxc.KeePassXC" + # + # ]; + #}; } diff --git a/home/hyprland.nix b/home/hyprland.nix index d384c9a..33d2a37 100644 --- a/home/hyprland.nix +++ b/home/hyprland.nix @@ -359,7 +359,7 @@ in "custom/menu" = { format = ""; - on-click = "walker"; + on-click = "rofi -show drun"; }; "custom/expand" = { @@ -439,150 +439,6 @@ in }; }; }; - services.walker = { - enable = true; - systemd.enable = true; - settings = { - app_launch_prefix = ""; - as_window = false; - close_when_open = false; - disable_click_to_close = false; - force_keyboard_focus = false; - hotreload_theme = false; - locale = ""; - monitor = ""; - terminal_title_flag = ""; - timeout = 0; - }; - theme.name = "my-theme"; - theme.style = '' - @define-color background ${nix_background}; - @define-color foreground ${nix_text}; - @define-color selected-text ${nix_accent}; - @define-color base ${nix_background}; - @define-color border ${nix_accent}; - @define-color text ${nix_text}; - - * { - all: unset; - } - - * { - font-family: monospace; - font-size: 18px; - color: @text; - } - - scrollbar { - opacity: 0; - } - - .normal-icons { - -gtk-icon-size: 16px; - } - - .large-icons { - -gtk-icon-size: 32px; - } - - .box-wrapper { - background: alpha(@base, 0.95); - padding: 20px; - border: 2px solid @border; - } - - .preview-box { - } - - .box { - } - - .search-container { - background: @base; - padding: 10px; - } - - .input placeholder { - opacity: 0.5; - } - - .input { - } - - .input:focus, - .input:active { - box-shadow: none; - outline: none; - } - - .content-container { - } - - .placeholder { - } - - .scroll { - } - - .list { - } - - child, - child > * { - } - - child:hover .item-box { - } - - child:selected .item-box { - } - - child:selected .item-box * { - color: @selected-text; - } - - child:selected { - background: alpha(@text, 0.07); - } - - .item-box { - padding-left: 14px; - } - - .item-text-box { - all: unset; - padding: 14px 0; - } - - .item-text { - } - - .item-subtext { - font-size: 0px; - min-height: 0px; - margin: 0px; - padding: 0px; - } - - .item-image { - margin-right: 14px; - -gtk-icon-transform: scale(0.9); - } - - .current { - font-style: italic; - } - - .keybind-hints { - background: @background; - padding: 10px; - margin-top: 10px; - } - - .preview { - } - ''; - }; programs.rofi = { enable = true; font = "${nix_font} 14"; @@ -806,7 +662,7 @@ in "$terminal" = "alacritty"; "$fileManager" = "dolphin"; - "$menu" = "walker"; + "$menu" = "rofi -show drun"; "$browser" = "brave"; ################# @@ -885,8 +741,8 @@ in group = { "col.border_active" = "rgb(4385be)"; "col.border_inactive" = "rgb(403e3c)"; - "col.border_locked_active" = -1; - "col.border_locked_inactive" = -1; + #"col.border_locked_active" = -1; + #"col.border_locked_inactive" = -1; groupbar = { font_size = 12; @@ -934,11 +790,11 @@ in }; layerrule = [ - "blur, notifications" - "ignorezero, notifications" + #"blur, notifications" + #"ignorezero, notifications" # turn off anim for walker - "noanim, walker" + #"noanim, walker" ]; # add blur to notifications @@ -977,7 +833,7 @@ in # See https://wiki.hypr.land/Configuring/Dwindle-Layout/ for more dwindle = { - pseudotile = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below + #pseudo = true; # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true; # You probably want this force_split = 2; # Always split on the right }; @@ -1057,7 +913,7 @@ in "$mainMod, W, exec, $browser" "$mainMod, space, exec, $menu" #"$mainMod, P, pseudo," # dwindle - "$mainMod, T, togglesplit," # dwindle + #"$mainMod, T, togglesplit," # dwindle "$mainMod SHIFT, L, exec, hyprlock" "$mainMod SHIFT, F, workspaceopt, allfloat" "$mainMod SHIFT, H, exec, for i in {1..10}; do dunstctl history-pop; done; sleep 5 && dunstctl close-all" # show last 10 notifications for 5 seconds @@ -1145,74 +1001,74 @@ in # See https://wiki.hypr.land/Configuring/Window-Rules/ for more # See https://wiki.hypr.land/Configuring/Workspace-Rules/ for workspace rules - windowrule = [ - # Example windowrule - # "float,class:^(kitty)$,title:^(kitty)$" - # Ignore maximize requests from apps. You'll probably like this. - "suppressevent maximize, class:.*" + #windowrule = [ + # # Example windowrule + # # "float,class:^(kitty)$,title:^(kitty)$" + # # Ignore maximize requests from apps. You'll probably like this. + # "suppressevent maximize, class:.*" - # Fix some dragging issues with XWayland - "nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0" + # # Fix some dragging issues with XWayland + # "nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0" - # make tuis accessed from waybar float in center - "tag +floating-window, title:(bluetui|impala|wiremix)" - "tag +floating-window, title:^(Open.*Files?|Open [F|f]older.*|Save.*Files?|Save.*As|Save|All Files|.*wants to [open|save].*|[C|c]hoose.*)" - "float, class:(org.gnome.Calculator)" + # # make tuis accessed from waybar float in center + # "tag +floating-window, title:(bluetui|impala|wiremix)" + # "tag +floating-window, title:^(Open.*Files?|Open [F|f]older.*|Save.*Files?|Save.*As|Save|All Files|.*wants to [open|save].*|[C|c]hoose.*)" + # "float, class:(org.gnome.Calculator)" - # send games to specific workspace - "workspace name:games silent, class:$games" - "noanim, class:$games" - "noblur, class:$games" - "noshadow, class:$games" - "noborder, class:$games" - "rounding 0, class:$games" - "fullscreen, class:$games" - "immediate, class:$games" + # # send games to specific workspace + # "workspace name:games silent, class:$games" + # "noanim, class:$games" + # "noblur, class:$games" + # "noshadow, class:$games" + # "noborder, class:$games" + # "rounding 0, class:$games" + # "fullscreen, class:$games" + # "immediate, class:$games" - # pip - "tag +pip, title:(Picture.?in.?[Pp]icture)" - "tag -default-opacity, tag:pip" - "float, tag:pip" - "pin, tag:pip" - "size 600 338, tag:pip" - "keepaspectratio, tag:pip" - "bordersize 0, tag:pip" - "opacity 1 1, tag:pip" - "move (monitor_w-window_w-40) (monitor_h*0.04), tag:pip" + # # pip + # "tag +pip, title:(Picture.?in.?[Pp]icture)" + # "tag -default-opacity, tag:pip" + # "float, tag:pip" + # "pin, tag:pip" + # "size 600 338, tag:pip" + # "keepaspectratio, tag:pip" + # "bordersize 0, tag:pip" + # "opacity 1 1, tag:pip" + # "move (monitor_w-window_w-40) (monitor_h*0.04), tag:pip" - # steam - "float, class:^(steam)$" - "center, class:^(steam)$, title:^(Steam)$" - "tag -default-opacity, class:^(steam.*)$" - "opacity 1 1, class:^(steam.*)$" - "size 1100 700, class:^(steam)$, title:^(Steam)$" - "size 460 800, class:^(steam)$, title:^(Friends List)$" - "idleinhibit fullscreen, class:^(steam)$" + # # steam + # "float, class:^(steam)$" + # "center, class:^(steam)$, title:^(Steam)$" + # "tag -default-opacity, class:^(steam.*)$" + # "opacity 1 1, class:^(steam.*)$" + # "size 1100 700, class:^(steam)$, title:^(Steam)$" + # "size 460 800, class:^(steam)$, title:^(Friends List)$" + # "idleinhibit fullscreen, class:^(steam)$" - # bitwarden - "noscreenshare, class:^(Bitwarden)$" - "tag +floating-window, class:^(Bitwarden)$" + # # bitwarden + # "noscreenshare, class:^(Bitwarden)$" + # "tag +floating-window, class:^(Bitwarden)$" - # Bitwarden Chrome Extension - "noscreenshare, class:^(brave-nngceckbapebfimnlniiiahkandclblb-Default)$" - "tag +floating-window, class:^(brave-nngceckbapebfimnlniiiahkandclblb-Default)$" + # # Bitwarden Chrome Extension + # "noscreenshare, class:^(brave-nngceckbapebfimnlniiiahkandclblb-Default)$" + # "tag +floating-window, class:^(brave-nngceckbapebfimnlniiiahkandclblb-Default)$" - # floating tag - "float, tag:floating-window" - "center, tag:floating-window" - "size 875 600, tag:floating-window" + # # floating tag + # "float, tag:floating-window" + # "center, tag:floating-window" + # "size 875 600, tag:floating-window" - # hyprbar - "plugin:hyprbars:nobar, tag:^(?!floating-window$).*$" - ]; + # # hyprbar + # "plugin:hyprbars:nobar, tag:^(?!floating-window$).*$" + #]; - "$games" = - "^(steam_app_.*|lutris_game_class|minigalaxy|playnite_game_class|gamescope|chiaki|moonlight|com\.moonlight_stream\.Moonlight|.*[Ww]ine.*)$"; - workspace = [ - "name:1,monitor:DP-2" - "name:games,monitor:DP-2" - "name:4,monitor:HDMI-A-1" - ]; + #"$games" = + # "^(steam_app_.*|lutris_game_class|minigalaxy|playnite_game_class|gamescope|chiaki|moonlight|com\.moonlight_stream\.Moonlight|.*[Ww]ine.*)$"; + #workspace = [ + # "name:1,monitor:DP-2" + # "name:games,monitor:DP-2" + # "name:4,monitor:HDMI-A-1" + #]; }; }; diff --git a/hosts/desktop/hardware.nix b/hosts/desktop/hardware.nix index b80939d..9e8e162 100644 --- a/hosts/desktop/hardware.nix +++ b/hosts/desktop/hardware.nix @@ -1,57 +1,34 @@ # 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, - ... -}: +{ config, lib, pkgs, modulesPath, ... }: { - imports = [ - (modulesPath + "/installer/scan/not-detected.nix") - ]; + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; - boot.initrd.availableKernelModules = [ - "xhci_pci" - "ahci" - "nvme" - "usbhid" - "usb_storage" - "sd_mod" - "nvidia-uvm" - ]; + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usb_storage" "usbhid" "sd_mod" ]; boot.initrd.kernelModules = [ ]; boot.kernelModules = [ "kvm-amd" ]; boot.extraModulePackages = [ ]; - fileSystems."/" = { - device = "/dev/disk/by-uuid/bd28421d-7ec4-4b23-964d-c07a6f351e1f"; - fsType = "ext4"; - }; + fileSystems."/" = + { device = "/dev/disk/by-uuid/c4d42c06-25fa-45cb-9341-76bb895140fb"; + fsType = "ext4"; + }; - boot.initrd.luks.devices."luks-e3a81f8e-3ae9-494b-a329-a6f860b10e34".device = - "/dev/disk/by-uuid/e3a81f8e-3ae9-494b-a329-a6f860b10e34"; + boot.initrd.luks.devices."luks-4b9e90fd-5bb4-4647-89b1-0d42d5f05a1e".device = "/dev/disk/by-uuid/4b9e90fd-5bb4-4647-89b1-0d42d5f05a1e"; - fileSystems."/boot" = { - device = "/dev/disk/by-uuid/D47C-5FCE"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/81A0-0593"; + fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/e0f10fbd-4f23-4f71-87bf-04a672ae3170"; } ]; - }; - - swapDevices = [ - { device = "/dev/disk/by-uuid/be22d9db-283a-4dd9-93d5-1006e392724b"; } - ]; - - fileSystems."/run/media/admin/08cabc7a-9a6e-4c21-8a07-6663af77b705" = { - device = "/dev/disk/by-uuid/08cabc7a-9a6e-4c21-8a07-6663af77b705"; - fsType = "ext4"; - }; # 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 diff --git a/hosts/desktop/settings.nix b/hosts/desktop/settings.nix index db56771..bac00ba 100644 --- a/hosts/desktop/settings.nix +++ b/hosts/desktop/settings.nix @@ -19,8 +19,7 @@ }; boot = { - initrd.luks.devices."luks-cbf20b12-90f7-4fbb-95d3-1320eece4d89".device = - "/dev/disk/by-uuid/cbf20b12-90f7-4fbb-95d3-1320eece4d89"; + initrd.luks.devices."luks-d5e2e9e2-9ffb-4e4c-9728-61209ac4dc2c".device = "/dev/disk/by-uuid/d5e2e9e2-9ffb-4e4c-9728-61209ac4dc2c"; kernelParams = [ "nvidia_drm.modeset=1" "nvidia_drm.fbdev=1" @@ -31,16 +30,16 @@ networking = { hostName = "nixos-desktop"; - interfaces.enp42s0 = { - wakeOnLan.enable = true; - ipv4.addresses = [ - { - address = "192.168.30.40"; - prefixLength = 24; - } - ]; - }; - defaultGateway = "192.168.30.1"; + # interfaces.enp42s0 = { + # wakeOnLan.enable = true; + # ipv4.addresses = [ + # { + # address = "192.168.30.40"; + # prefixLength = 24; + # } + # ]; + # }; + # defaultGateway = "192.168.30.1"; nameservers = [ "192.168.0.1" "1.1.1.1"