diff --git a/base/adventurer/configuration.nix b/base/adventurer/configuration.nix new file mode 100644 index 0000000..1902634 --- /dev/null +++ b/base/adventurer/configuration.nix @@ -0,0 +1,138 @@ +# Edit this configuration file to define what should be installed on +# your system. Help is available in the configuration.nix(5) man page +# and in the NixOS manual (accessible by running ‘nixos-help’). + +{ config, pkgs, fetchFromGitLab, ... }: + +{ + imports = + [ # Include the results of the hardware scan. + ./hardware-configuration.nix + ]; + + # Bootloader. + boot.loader.grub.enable = true; + boot.loader.grub.device = "/dev/sda"; + boot.loader.grub.useOSProber = true; + powerManagement.cpuFreqGovernor = "performance"; + nix.settings.experimental-features = "nix-command flakes"; + programs.dconf.enable = true; + services.fprintd.enable = true; + networking.hostName = "adventurer"; # Define your hostname. + # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + environment.variables = { + WLR_NO_HARDWARE_CURSORS = "1"; + PASSWORD_STORE_DIR = "/home/maya/sync/general/pass"; + }; + programs.gnupg.agent.enable = true; + programs.steam.enable = true; + # Configure network proxy if necessary + # networking.proxy.default = "http://user:password@proxy:port/"; + # networking.proxy.noProxy = "127.0.0.1,localhost,internal.domain"; + + # Enable networking + networking.networkmanager.enable = true; + + # Set your time zone. + time.timeZone = "Australia/Perth"; + + # Select internationalisation properties. + i18n.defaultLocale = "en_AU.UTF-8"; + + i18n.extraLocaleSettings = { + LC_ADDRESS = "en_AU.UTF-8"; + LC_IDENTIFICATION = "en_AU.UTF-8"; + LC_MEASUREMENT = "en_AU.UTF-8"; + LC_MONETARY = "en_AU.UTF-8"; + LC_NAME = "en_AU.UTF-8"; + LC_NUMERIC = "en_AU.UTF-8"; + LC_PAPER = "en_AU.UTF-8"; + LC_TELEPHONE = "en_AU.UTF-8"; + LC_TIME = "en_AU.UTF-8"; + }; + + # Enable the X11 windowing system. + # You can disable this if you're only using the Wayland session. + services.xserver.enable = true; + + # Enable the KDE Plasma Desktop Environment. + + # Configure keymap in X11 + services.xserver.xkb = { + layout = "us"; + variant = ""; + }; + + # Enable CUPS to print documents. + services.printing.enable = true; + + # Enable sound with pipewire. + hardware.pulseaudio.enable = false; + security.rtkit.enable = true; + services.pipewire = { + enable = true; + alsa.enable = true; + alsa.support32Bit = true; + pulse.enable = true; + # If you want to use JACK applications, uncomment this + #jack.enable = true; + + # use the example session manager (no others are packaged yet so this is enabled by default, + # no need to redefine it in your config for now) + #media-session.enable = true; + }; + + # Enable touchpad support (enabled default in most desktopManager). + # services.xserver.libinput.enable = true; + + # Define a user account. Don't forget to set a password with ‘passwd’. + users.users.maya = { + isNormalUser = true; + description = "Maya Wren"; + extraGroups = [ "networkmanager" "wheel" ]; + packages = with pkgs; [ + # thunderbird + ]; + }; + # Install firefox. + programs.firefox.enable = true; + + # Allow unfree packages + nixpkgs.config.allowUnfree = true; + # List packages installed in system profile. To search, run: + # $ nix search wget + environment.systemPackages = with pkgs; [ + # vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. + # wget + neovim + git + ]; + + # Some programs need SUID wrappers, can be configured further or are + # started in user sessions. + # programs.mtr.enable = true; + # programs.gnupg.agent = { + # enable = true; + # enableSSHSupport = true; + # }; + + # List services that you want to enable: + + # Enable the OpenSSH daemon. + # services.openssh.enable = true; + + # Open ports in the firewall. + # networking.firewall.allowedTCPPorts = [ ... ]; + # networking.firewall.allowedUDPPorts = [ ... ]; + # Or disable the firewall altogether. + # networking.firewall.enable = false; + + # 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 + # this value at the release version of the first install of this system. + # Before changing this value read the documentation for this option + # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). + system.stateVersion = "24.11"; # Did you read the comment? + +} diff --git a/base/adventurer/default.nix b/base/adventurer/default.nix new file mode 100644 index 0000000..a94a618 --- /dev/null +++ b/base/adventurer/default.nix @@ -0,0 +1,12 @@ +{config, pkgs, ...}:{ + imports = [ + ./configuration.nix + ../overrides.nix + ../ssh.nix + ../firewall.nix + ../substituters.nix + ../fonts.nix + ../udev.nix + ../greetd.nix + ]; +} diff --git a/base/adventurer/hardware-configuration.nix b/base/adventurer/hardware-configuration.nix new file mode 100644 index 0000000..adb8718 --- /dev/null +++ b/base/adventurer/hardware-configuration.nix @@ -0,0 +1,37 @@ +# 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 = [ "uhci_hcd" "ehci_pci" "ata_piix" "ahci" "firewire_ohci" "usb_storage" "usbhid" "sd_mod" "sr_mod" "sdhci_pci" ]; + #boot.initrd.kernelModules = [ "nvidia" ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.kernelPackages = pkgs.linuxPackages_zen; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/be6662d9-e9c6-48a2-9557-672f5307816f"; + fsType = "ext4"; + }; + + swapDevices = + [ { device = "/dev/disk/by-uuid/87a05a1d-e62d-4882-ad5a-e2e6324671da"; } + ]; + + # 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.enp0s29f7u2.useDHCP = lib.mkDefault true; + # networking.interfaces.enp9s0.useDHCP = lib.mkDefault true; + # networking.interfaces.wlp12s0.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + networking.enableIntel3945ABGFirmware = true; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/base/apollo/configuration.nix b/base/apollo/configuration.nix index 0607f75..7ee7e1f 100644 --- a/base/apollo/configuration.nix +++ b/base/apollo/configuration.nix @@ -10,7 +10,9 @@ ./hardware-configuration.nix ]; services.blueman.enable = true; + services.upower.enable = true; programs.steam.enable = true; + services.pcscd.enable = true; services.tailscale = { enable = true; useRoutingFeatures = "both"; @@ -22,6 +24,7 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; programs.virt-manager.enable = true; + services.gvfs.enable = true; hardware.keyboard.qmk.enable = true; virtualisation = { libvirtd = { @@ -29,9 +32,16 @@ extraConfig = '' user="maya" ''; - qemu.ovmf.enable = true; - qemu.package = pkgs.qemu_kvm; - qemu.runAsRoot = true; + onShutdown = "shutdown"; + + qemu = { + ovmf.enable = true; + package = pkgs.qemu_kvm; + runAsRoot = true; + verbatimConfig = '' + namespaces = [] + ''; + }; }; spiceUSBRedirection.enable = true; }; @@ -68,7 +78,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 # Select internationalisation properties. i18n.defaultLocale = "en_AU.UTF-8"; - + nix.settings.experimental-features = "nix-command flakes"; services.udisks2.enable = true; i18n.extraLocaleSettings = { LC_ADDRESS = "en_AU.UTF-8"; @@ -81,32 +91,6 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 LC_TELEPHONE = "en_AU.UTF-8"; LC_TIME = "en_AU.UTF-8"; }; - nix.settings.experimental-features = [ "nix-command" "flakes" ]; - services.greetd = { - enable = true; - restart = true; - settings.default_session = { - command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd sway"; - user = "greeter"; - }; - }; - xdg.portal.config.common.default = "*"; - xdg.portal.wlr.enable = true; - xdg.portal.wlr.settings.screencast = { - chooser_type = "simple"; - chooser_cmd = "${pkgs.slurp}/bin/slurp -f %o -or"; - exec_before = "${lib.getExe' pkgs.swaynotificationcenter "swaync-client"} --dnd-on --skip-wait"; - exec_after = "${lib.getExe' pkgs.swaynotificationcenter "swaync-client"} --dnd-off --skip-wait"; - }; - systemd.services.greetd.serviceConfig = { - Type = "idle"; - StandardInput = "tty"; - StandardOutput = "tty"; - StandardError = "journal"; - TTYReset = "true"; - TTYHangup = "true"; - TTYVTDisallocate = "true"; - }; # Enable the X11 windowing system. services.xserver.enable = true; @@ -117,7 +101,18 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 layout = "us"; variant = ""; }; - + xdg.portal.config.common.default = "*"; + xdg.portal.wlr = { + enable = true; + settings = { + screencast = { + chooser_type = "simple"; + chooser_cmd = "${pkgs.slurp}/bin/slurp -f %o -or"; + exec_before = "${lib.getExe' pkgs.swaynotificationcenter "swaync-client"} --dnd-on --skip-wait"; + exec_after = "${lib.getExe' pkgs.swaynotificationcenter "swaync-client"} --dnd-off --skip-wait"; + }; + }; + }; # Enable CUPS to print documents. services.printing.enable = true; nixpkgs.overlays = [ @@ -155,10 +150,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 users.users.maya = { isNormalUser = true; description = "Maya"; - extraGroups = [ "networkmanager" "wheel" "libvirtd" "camera" "input" "adbusers"]; - packages = with pkgs; [ - # thunderbird - ]; + extraGroups = [ "networkmanager" "wheel" "libvirtd" "qemu-libvirt" "camera" "input" "adbusers"]; }; # Install firefox. @@ -176,6 +168,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 git lact keepassxc + looking-glass-client ]; # Some programs need SUID wrappers, can be configured further or are @@ -185,6 +178,9 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="05c6", ATTRS{idProduct}=="9008", MODE="0666 enable = true; enableSSHSupport = true; }; + systemd.tmpfiles.rules = [ + "f /dev/shm/looking-glass 0660 maya qemu-libvirtd -" + ]; # List services that you want to enable: diff --git a/base/apollo/default.nix b/base/apollo/default.nix index 1749f88..a94a618 100644 --- a/base/apollo/default.nix +++ b/base/apollo/default.nix @@ -7,5 +7,6 @@ ../substituters.nix ../fonts.nix ../udev.nix + ../greetd.nix ]; } diff --git a/base/apollo/hardware-configuration.nix b/base/apollo/hardware-configuration.nix index 075f0c7..4200949 100644 --- a/base/apollo/hardware-configuration.nix +++ b/base/apollo/hardware-configuration.nix @@ -20,9 +20,9 @@ }; }; boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "usb_storage" "sd_mod" "sr_mod" ]; - boot.initrd.kernelModules = [ "vfio_pci" "vfio" "vfio_iommu_type1" ]; + boot.initrd.kernelModules = [ "vfio_pci" "vfio" "vfio_iommu_type1" "vendor-reset" ]; boot.kernelModules = [ "kvm-intel" "vfio_virqfd" "vhost-net" "v4l2loopback" ]; - boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback ]; + boot.extraModulePackages = with config.boot.kernelPackages; [ v4l2loopback vendor-reset]; boot.extraModprobeConfig = '' options vfio-pci ids=1002:6fdf,1002:aaf0,1b21:1242 options v4l2loopback devices=2 video_nr=1,2 card_label="OBS Cam, Virt Cam" exclusive_caps=1 @@ -41,6 +41,16 @@ fsType = "vfat"; options = [ "fmask=0077" "dmask=0077" ]; }; + fileSystems."/mnt/vms" = + { device = "/dev/disk/by-uuid/9443885e-d2b3-44a1-aec2-540de7f5c832"; + fsType = "xfs"; + options = [ "x-gvfs-show" ]; + }; + fileSystems."/mnt/data" = + { device = "/dev/disk/by-uuid/a4a08196-cedc-4be2-988d-d28eb41492c0"; + fsType = "xfs"; + options = [ "x-gvfs-show" ]; + }; swapDevices = [ { device = "/dev/disk/by-uuid/f7e4a77c-0936-445c-8ce9-0386e9e81656"; } diff --git a/base/callisto/configuration.nix b/base/callisto/configuration.nix index 66c533b..18da599 100644 --- a/base/callisto/configuration.nix +++ b/base/callisto/configuration.nix @@ -16,6 +16,7 @@ # undockEvent = "${pkgs.wlr-randr}/bin/wlr-randr --output eDP-1 --pos 0,0"; #}; programs.gamemode.enable = true; + virtualisation.kvmgt = { enable = true; vgpus = { @@ -24,6 +25,20 @@ }; }; }; + services.gvfs.enable = true; + programs.thunderbird.enable = true; + services.kmonad = { + enable = true; + keyboards.thinkpad = { + device = "/dev/input/by-path/platform-i8042-serio-0-event-kbd"; + config = (builtins.readFile ./keymap.kbd); + defcfg = { + enable = true; + fallthrough = true; + compose.key = null; + }; + }; + }; programs.steam.enable = true; virtualisation.libvirtd = { enable = true; @@ -86,6 +101,10 @@ }; services.tlp.enable = true; + services.tlp.settings = { + CPU_SCALING_GOVERNOR_ON_BAT = "ondemand"; + CPU_SCALING_GOVERNOR_ON_AC = "performance"; + }; hardware.graphics = { enable = true; extraPackages = with pkgs; [ @@ -119,11 +138,50 @@ services.fprintd.enable = true; services.udisks2.enable = true; # Bootloader. - boot.loader.systemd-boot.enable = true; - boot.loader.efi.canTouchEfiVariables = true; + boot.loader.systemd-boot.enable = false; + boot.loader.limine = { + enable = true; + style.wallpapers = [ ]; + additionalFiles = { + "efi/memtest86/memtest86.efi" = "${pkgs.memtest86-efi}/BOOTX64.efi"; + "efi/shell.efi" = "${pkgs.edk2-uefi-shell}/shell.efi"; + + }; + extraEntries = '' + /memtest86 + protocol: efi + path: boot():/limine/efi/memtest86/memtest86.efi + /shell + protocol: efi + path: boot():/limine/efi/shell.efi + ''; + + }; + boot.loader.efi.canTouchEfiVariables = false; networking.hostName = "callisto"; # Define your hostname. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. + systemd.services.trackpad-fix = { + description = "Fixes the thinkpad touchpad being total shit"; + serviceConfig = { + Type = "simple"; + ExecStart = "${pkgs.tcl-8_6}/bin/tclsh /home/maya/unshit.tcl"; + ExecStop = "pkill tclsh"; + Restart = "on-failure"; + }; + wantedBy = ["default.target"]; + + + }; + systemd.services.fuckyou = { + description = "h"; + after = ["suspend.target"]; + wantedBy = ["suspend.target"]; + serviceConfig = { + Type = "simple"; + ExecStart = "systemctl --no-block restart trackpad-fix.service"; + }; + }; xdg.portal = { enable = true; @@ -194,7 +252,7 @@ users.users.maya = { isNormalUser = true; description = "Maya"; - extraGroups = [ "networkmanager" "wheel" "libvirtd" ]; + extraGroups = [ "networkmanager" "wheel" "libvirtd" "input" "uinput" "dialout" ]; packages = with pkgs; [ # thunderbird git @@ -214,16 +272,23 @@ # vim # Do not forget to add an editor to edit configuration.nix! The Nano editor is also installed by default. lutris playerctl + undervolt + s-tui + stress + xfsprogs + protonvpn-gui + memtest86-efi + edk2-uefi-shell # wget ]; # Some programs need SUID wrappers, can be configured further or are # started in user sessions. # programs.mtr.enable = true; - # programs.gnupg.agent = { - # enable = true; - # enableSSHSupport = true; - # }; + programs.gnupg.agent = { + enable = true; + enableSSHSupport = true; + }; # List services that you want to enable: diff --git a/base/callisto/hardware-configuration.nix b/base/callisto/hardware-configuration.nix index f9a9c39..16860e8 100644 --- a/base/callisto/hardware-configuration.nix +++ b/base/callisto/hardware-configuration.nix @@ -11,6 +11,13 @@ boot.initrd.availableKernelModules = [ "xhci_pci" "ehci_pci" "ahci" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; boot.initrd.kernelModules = [ ]; boot.kernelParams = [ "resume" ]; + services.undervolt = { + enable = true; + tempBat = 80; + tempAc = 95; + coreOffset = -75; + gpuOffset = -95; + }; boot.kernelModules = [ "kvm-intel" "sierra_net" ]; boot.extraModulePackages = [ ]; boot.kernelPackages = pkgs.linuxPackages_xanmod_latest; diff --git a/base/callisto/keymap.kbd b/base/callisto/keymap.kbd new file mode 100644 index 0000000..874a016 --- /dev/null +++ b/base/callisto/keymap.kbd @@ -0,0 +1,24 @@ +(defsrc + grv 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + caps a s d f g h j k l ; ' ret + lsft z x c v b n m , . / rsft + lctl lmet lalt spc ralt rmet cmp rctl +) +(deflayer qwerty + grv 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q w e r t y u i o p [ ] \ + @ext a s d f g h j k l ; ' ret + lsft z x c v b n m , . / rsft + lctl lmet lalt spc ralt rmet cmp rctl +) +(defalias + ext (layer-toggle extend) +) +(deflayer extend + grv 1 2 3 4 5 6 7 8 9 0 - = bspc + tab q up e ~ t y u i o p [ ] \ + caps left down right f g h j k l ; ' ret + lsft z x c v b n m , . / rsft + lctl lmet KeyPreviousSong KeyPlayPause KeyNextSong rmet cmp rctl +) diff --git a/base/firewall.nix b/base/firewall.nix index 28dfbe7..aecd756 100644 --- a/base/firewall.nix +++ b/base/firewall.nix @@ -1,5 +1,5 @@ { - networking.firewall.allowedTCPPorts = [ 22000 ]; networking.firewall.allowedUDPPorts = [ 22000 21027 ]; - #for syncthing + networking.firewall.allowedTCPPorts = [ 22000 ]; + services.syncthing.openDefaultPorts = true; } diff --git a/base/greetd.nix b/base/greetd.nix new file mode 100644 index 0000000..1990877 --- /dev/null +++ b/base/greetd.nix @@ -0,0 +1,19 @@ +{pkgs, ...}:{ + services.greetd = { + enable = true; + restart = true; + settings.default_session = { + command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd sway"; + user = "greeter"; + }; + }; + systemd.services.greetd.serviceConfig = { + Type = "idle"; + StandardInput = "tty"; + StandardOutput = "tty"; + StandardError = "journal"; + TTYReset = "true"; + TTYHangup = "true"; + TTYVTDisallocate = "true"; + }; +} diff --git a/base/hypermac/configuration.nix b/base/hypermac/configuration.nix index cacfbde..b82c88d 100644 --- a/base/hypermac/configuration.nix +++ b/base/hypermac/configuration.nix @@ -22,28 +22,11 @@ }; programs.sway.enable = true; - services.greetd = { - enable = true; - restart = true; - settings.default_session = { - command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time"; - user = "greeter"; - }; - }; programs.adb.enable = true; environment.variables = { WLR_NO_HARDWARE_CURSORS = "1"; }; - systemd.services.greetd.serviceConfig = { - Type = "idle"; - StandardInput = "tty"; - StandardOutput = "tty"; - StandardError = "journal"; - TTYReset = "true"; - TTYHangup = "true"; - TTYVTDisallocate = "true"; - }; networking.hostName = "hypermac"; # Define your hostname. # Pick only one of the below networking options. # networking.wireless.enable = true; # Enables wireless support via wpa_supplicant. diff --git a/base/hypermac/default.nix b/base/hypermac/default.nix index ac61773..4c1eb4b 100644 --- a/base/hypermac/default.nix +++ b/base/hypermac/default.nix @@ -6,5 +6,6 @@ ../firewall.nix ../substituters.nix ../fonts.nix + ../greetd.nix ]; } diff --git a/base/overrides.nix b/base/overrides.nix index ad26ae6..7a510be 100644 --- a/base/overrides.nix +++ b/base/overrides.nix @@ -5,10 +5,11 @@ }) (lutris.override { extraPkgs = pkgs: [ - wine + wineWowPackages.waylandFull gamescope antimicrox sc-controller + winetricks ]; @@ -34,7 +35,8 @@ pkgsi686Linux.libsndfile pkgsi686Linux.libmpg123 gnome2.GConf - + icu + openldap ]; }) ]; diff --git a/base/udev.nix b/base/udev.nix index 643dab1..7d1b702 100644 --- a/base/udev.nix +++ b/base/udev.nix @@ -27,6 +27,142 @@ KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0ce6", MODE="0660 # Sony DualSense Edge Wireless-Controller; Bluetooth; USB KERNEL=="hidraw*", KERNELS=="*054C:0DF2*", MODE="0660", TAG+="uaccess" KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0df2", MODE="0660", TAG+="uaccess" +# Rules to ensure vendor-reset is loaded and the reset_method for our devices is set to 'device_specific' for kernel 5.15+ +# (the module must be loaded, otherwise setting this may fail) +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C0", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C1", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C2", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C4", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C7", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67D0", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67DF", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C8", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67C9", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67CA", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67CC", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67CF", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6FDF", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E0", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E3", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E8", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67EB", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67EF", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67FF", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E1", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E7", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x67E9", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6980", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6981", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6985", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6986", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6987", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6995", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6997", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x699F", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6860", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6861", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6862", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6863", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6864", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6867", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6868", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x6869", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686a", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686b", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686c", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686d", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686e", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x686f", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x687f", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a0", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a1", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a2", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a3", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a4", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66a7", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x66af", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7310", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7312", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7318", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7319", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x731a", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x731b", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x731e", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x731f", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7340", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7341", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7347", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x734F", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7360", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x7362", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x1002", ATTR{device}=="0x738c", RUN+="/bin/sh -c '/sbin/modprobe vendor-reset; echo device_specific > /sys$env{DEVPATH}/reset_method'" + ''; services.udev.extraHwdb = '' id-input:modalias:input:b0003v054Cp0268* diff --git a/flake.lock b/flake.lock index d6c2f76..68f0c57 100644 --- a/flake.lock +++ b/flake.lock @@ -5,11 +5,11 @@ "nixpkgs": "nixpkgs" }, "locked": { - "lastModified": 1739934729, - "narHash": "sha256-PcrLk10meIJICzUJqtCMOJxoITzbH52fZg2XAB7SSsM=", + "lastModified": 1744447794, + "narHash": "sha256-z5uK5BDmFg0L/0EW2XYLGr39FbQeXyNVnIEhkZrG8+Q=", "owner": "catppuccin", "repo": "nix", - "rev": "b1ff2a638afa827f1473498190a2c1cae1cf41cf", + "rev": "c44fe73ed8e5d5809eded7cc6156ca9c40044e42", "type": "github" }, "original": { @@ -26,11 +26,11 @@ ] }, "locked": { - "lastModified": 1738453229, - "narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", + "lastModified": 1743550720, + "narHash": "sha256-hIshGgKZCgWh6AYJpJmRgFdR3WUbkY04o82X05xqQiY=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", + "rev": "c621e8422220273271f52058f618c94e405bb0f5", "type": "github" }, "original": { @@ -40,21 +40,6 @@ } }, "flake-utils": { - "locked": { - "lastModified": 1659877975, - "narHash": "sha256-zllb8aq3YO3h8B/U0/J1WBgAL8EX5yWf5pMj3G0NAmc=", - "owner": "numtide", - "repo": "flake-utils", - "rev": "c0e246b9b83f637f4681389ecabcb2681b4f3af0", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "flake-utils", - "type": "github" - } - }, - "flake-utils_2": { "inputs": { "systems": "systems" }, @@ -79,11 +64,11 @@ ] }, "locked": { - "lastModified": 1740624780, - "narHash": "sha256-8TP61AI3QBQsjzVUQFIV8NoB5nbYfJB3iHczhBikDkU=", + "lastModified": 1744735751, + "narHash": "sha256-OPpfgL3qUIbQdbmp1/ZwnlsuTLooHN4or0EABnZTFRY=", "owner": "nix-community", "repo": "home-manager", - "rev": "b8869e4ead721bbd4f0d6b927e8395705d4f16e6", + "rev": "db7738e67a101ad945abbcb447e1310147afaf1b", "type": "github" }, "original": { @@ -127,11 +112,11 @@ ] }, "locked": { - "lastModified": 1740281615, - "narHash": "sha256-dZWcbAQ1sF8oVv+zjSKkPVY0ebwENQEkz5vc6muXbKY=", + "lastModified": 1744518957, + "narHash": "sha256-RLBSWQfTL0v+7uyskC5kP6slLK1jvIuhaAh8QvB75m4=", "owner": "nix-community", "repo": "nix-index-database", - "rev": "465792533d03e6bb9dc849d58ab9d5e31fac9023", + "rev": "4fc9ea78c962904f4ea11046f3db37c62e8a02fd", "type": "github" }, "original": { @@ -160,32 +145,13 @@ "type": "github" } }, - "nixgl": { - "inputs": { - "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs_2" - }, - "locked": { - "lastModified": 1713543440, - "narHash": "sha256-lnzZQYG0+EXl/6NkGpyIz+FEOc/DSEG57AP1VsdeNrM=", - "owner": "nix-community", - "repo": "nixGL", - "rev": "310f8e49a149e4c9ea52f1adf70cdc768ec53f8a", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixGL", - "type": "github" - } - }, "nixpkgs": { "locked": { - "lastModified": 1736012469, - "narHash": "sha256-/qlNWm/IEVVH7GfgAIyP6EsVZI6zjAx1cV5zNyrs+rI=", + "lastModified": 1744098102, + "narHash": "sha256-tzCdyIJj9AjysC3OuKA+tMD/kDEDAF9mICPDU7ix0JA=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "8f3e1f807051e32d8c95cd12b9b421623850a34d", + "rev": "c8cd81426f45942bb2906d5ed2fe21d2f19d95b7", "type": "github" }, "original": { @@ -197,26 +163,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1660551188, - "narHash": "sha256-a1LARMMYQ8DPx1BgoI/UN4bXe12hhZkCNqdxNi6uS0g=", - "owner": "nixos", - "repo": "nixpkgs", - "rev": "441dc5d512153039f19ef198e662e4f3dbb9fd65", - "type": "github" - }, - "original": { - "owner": "nixos", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_3": { - "locked": { - "lastModified": 1740560979, - "narHash": "sha256-Vr3Qi346M+8CjedtbyUevIGDZW8LcA1fTG0ugPY/Hic=", + "lastModified": 1744463964, + "narHash": "sha256-LWqduOgLHCFxiTNYi3Uj5Lgz0SR+Xhw3kr/3Xd0GPTM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "5135c59491985879812717f4c9fea69604e7f26f", + "rev": "2631b0b7abcea6e640ce31cd78ea58910d31e650", "type": "github" }, "original": { @@ -226,13 +177,13 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_3": { "locked": { - "lastModified": 1738797219, - "narHash": "sha256-KRwX9Z1XavpgeSDVM/THdFd6uH8rNm/6R+7kIbGa+2s=", + "lastModified": 1744157173, + "narHash": "sha256-bWSjxDwq7iVePrhmA7tY2dyMWHuNJo8knkO4y+q4ZkY=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "1da52dd49a127ad74486b135898da2cef8c62665", + "rev": "6a39c6e495eefabc935d8ddf66aa45d85b85fa3f", "type": "github" }, "original": { @@ -245,15 +196,15 @@ "nixvim": { "inputs": { "flake-parts": "flake-parts", - "nixpkgs": "nixpkgs_4", + "nixpkgs": "nixpkgs_3", "nuschtosSearch": "nuschtosSearch" }, "locked": { - "lastModified": 1740520037, - "narHash": "sha256-TpZMYjOre+6GhKDVHFwoW2iBWqpNQppQTuqIAo+OBV8=", + "lastModified": 1744753228, + "narHash": "sha256-Re8g2pby4sr4hgzJmQJxeH/9PtgX85nivkWibapRI5s=", "owner": "nix-community", "repo": "nixvim", - "rev": "6f8d8f7aee84f377f52c8bb58385015f9168a666", + "rev": "d4dada282aeac94b5d53dd70e276a2f5f534f783", "type": "github" }, "original": { @@ -264,7 +215,7 @@ }, "nuschtosSearch": { "inputs": { - "flake-utils": "flake-utils_2", + "flake-utils": "flake-utils", "ixx": "ixx", "nixpkgs": [ "nixvim", @@ -272,11 +223,11 @@ ] }, "locked": { - "lastModified": 1738508923, - "narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=", + "lastModified": 1743683223, + "narHash": "sha256-LdXtHFvhEC3S64dphap1pkkzwjErbW65eH1VRerCUT0=", "owner": "NuschtOS", "repo": "search", - "rev": "86e2038290859006e05ca7201425ea5b5de4aecb", + "rev": "56a49ffef2908dad1e9a8adef1f18802bc760962", "type": "github" }, "original": { @@ -291,8 +242,7 @@ "home-manager": "home-manager", "nix-index-database": "nix-index-database", "nix-system-graphics": "nix-system-graphics", - "nixgl": "nixgl", - "nixpkgs": "nixpkgs_3", + "nixpkgs": "nixpkgs_2", "nixvim": "nixvim", "system-manager": "system-manager" } @@ -304,11 +254,11 @@ ] }, "locked": { - "lastModified": 1740687245, - "narHash": "sha256-s8avsWuoP4uMxaRl3w5jK+q3lRvT2N2tNTCK4jcRclw=", + "lastModified": 1744139528, + "narHash": "sha256-ABIcmxzf8399pJzXqHzShXtzw7iC+zxjhOxp/qS0fQk=", "owner": "numtide", "repo": "system-manager", - "rev": "db89a99a45265a9810c4556b9f36fe2c94dcd144", + "rev": "803322102ed51f29c250d4bff2973625adc4a521", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 4e3ca5e..92a1a0d 100644 --- a/flake.nix +++ b/flake.nix @@ -3,7 +3,6 @@ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; - nixgl.url = "github:nix-community/nixGL"; home-manager.url = "github:nix-community/home-manager"; home-manager.inputs.nixpkgs.follows = "nixpkgs"; catppuccin.url = "github:catppuccin/nix"; @@ -24,8 +23,7 @@ nixosConfigurations."apollo" = nixpkgs.lib.nixosSystem { system = "x86_64-linux"; modules = [ - ./base/apollo - + ./base/apollo home-manager.nixosModules.home-manager { #imports = [ inputs.nix-index-database.hmModules.nix-index ]; home-manager.extraSpecialArgs = { @@ -80,12 +78,32 @@ home-manager.useGlobalPkgs = true; home-manager.useUserPackages = true; home-manager.users.maya = ./home; - }]; - }; - + } + ]; + }; + nixosConfigurations."adventurer" = nixpkgs.lib.nixosSystem { + system = "x86_64-linux"; + modules = [ + ./base/adventurer + home-manager.nixosModules.home-manager { + home-manager.extraSpecialArgs = { + inherit inputs; + vars = { + isNixOS = true; + class = "lowspec"; + user = "maya"; + useSyncthing = true; + }; + }; + home-manager.useGlobalPkgs = true; + home-manager.useUserPackages = true; + home-manager.users.maya = ./home; + } + ]; + }; #other confs go here, cant be assed rn homeConfigurations.generic = home-manager.lib.homeManagerConfiguration { - pkgs = import nixpkgs { system = "x86_64-linux"; overlays = [inputs.nixgl.overlay]; }; + pkgs = import nixpkgs; # { system = "x86_64-linux"; overlays = [inputs.nixgl.overlay]; }; modules = [ ./home ]; extraSpecialArgs = { inherit inputs; diff --git a/home/default.nix b/home/default.nix index 0ac4f78..0d53ea7 100644 --- a/home/default.nix +++ b/home/default.nix @@ -3,7 +3,7 @@ #home-manager modules inputs.nix-index-database.hmModules.nix-index inputs.nixvim.homeManagerModules.nixvim - inputs.catppuccin.homeManagerModules.catppuccin + inputs.catppuccin.homeModules.catppuccin #aux files to make finding specific things easier ./nixvim ./sway.nix @@ -23,25 +23,20 @@ }; }; programs.home-manager.enable = (!vars.isNixOS); #value is set in flake.nix - #targets.genericLinux.enable = (!vars.isNixOS); - - programs.foot = { - enable = true; - settings.main.font = "monospace:size=10"; - #settings.colors.alpha = "0.8"; - }; - programs.ncmpcpp = { - enable = true; - settings = { - tags_separator = ";"; - }; - }; + + programs.foot.enable = true; + programs.foot.settings.main.font = "monospace:size=10"; + + programs.ncmpcpp.enable = true; + programs.ncmpcpp.settings.tags_separator = ";"; + programs.password-store = { enable = true; package = pkgs.pass.withExtensions (exts: [exts.pass-otp exts.pass-import]); settings = { PASSWORD_STORE_DIR = "$HOME/sync/general/pass"; }; }; + services.mpd-discord-rpc.enable = true; services.mpd = { enable = true; musicDirectory = "/home/${vars.user}/Music"; @@ -50,16 +45,22 @@ type "pipewire" name "default pipewire" } + audio_output { + type "alsa" + name "ALSA Direct" + mixer_type "hardware" + mixer_control "PCM" + auto_resample "no" + device "hw:0,0" + } ''; }; services.syncthing.enable = (vars.useSyncthing); - - services.mpd-mpris = { - enable = true; - }; - programs.waybar = { - enable = true; - }; + + services.mpd-mpris.enable = true; + + programs.waybar.enable = true; + programs.git = { enable = true; userName = "beanigen"; @@ -71,17 +72,18 @@ init.defaultBranch = "main"; }; }; + xdg.portal = { enable = true; extraPortals = [ pkgs.xdg-desktop-portal-wlr ]; configPackages = [ pkgs.xdg-desktop-portal-wlr ]; }; - programs.obs-studio = { - enable = true; - plugins = with pkgs.obs-studio-plugins; [ - wlrobs - obs-backgroundremoval - obs-pipewire-audio-capture - ]; - }; +# programs.obs-studio = { +# enable = true; +# plugins = with pkgs.obs-studio-plugins; [ +# wlrobs +# obs-backgroundremoval +# obs-pipewire-audio-capture +# ]; +# }; } diff --git a/home/nixvim/default.nix b/home/nixvim/default.nix index f6316f9..001438c 100644 --- a/home/nixvim/default.nix +++ b/home/nixvim/default.nix @@ -23,6 +23,7 @@ lsp = { enable = true; servers.cssls.enable = true; + servers.clangd.enable = true; servers.pylsp.enable = true; servers.html = { enable = true; diff --git a/home/packages.nix b/home/packages.nix index 0f5de6a..03794ec 100644 --- a/home/packages.nix +++ b/home/packages.nix @@ -1,48 +1,45 @@ {pkgs, vars, ...}:{ home.packages = with pkgs; [ - prismlauncher - libgpod - vesktop - kdePackages.ark - v4l-utils - nextcloud-client blender-hip + brightnessctl cinny-desktop - libimobiledevice - mpc - strawberry -# lmms - kanshi - emacs comma + emacs + firefox + fzf + gamescope + gimp + grim + gtklock + gzdoom + hyfetch + inkscape + kanshi + kdePackages.ark + libgpod + libimobiledevice + libreoffice + mpc + nemo + nextcloud-client + openrct2 openscad openutau - wlr-randr - grim - slurp - swaynotificationcenter - udiskie - gtklock - swaybg - gzdoom - fzf - openrct2 - wl-clipboard - brightnessctl - nemo - xfce.ristretto - xfce.tumbler - inkscape - hyfetch pamixer pavucontrol - gimp - prusa-slicer - gamescope - vlc playerctl - firefox + prismlauncher + prusa-slicer + slurp + swaybg + swaynotificationcenter + udiskie v4l-utils - libreoffice - ] ++ (if !vars.isNixOS then [nixgl.nixGLIntel] else []); + vesktop + vlc + wl-clipboard + wlr-randr + xfce.ristretto + xfce.tumbler + ]; #++ (if !vars.isNixOS then [nixgl.nixGLIntel] else []); } diff --git a/home/sway.nix b/home/sway.nix index f8aa82f..3e1c531 100644 --- a/home/sway.nix +++ b/home/sway.nix @@ -1,9 +1,9 @@ -{lib, osConfig, pkgs, inputs, ...}:{ +{lib, pkgs, vars, ...}:{ wayland.windowManager.sway = { package = pkgs.swayfx; enable = true; checkConfig = false; #gles2 renderer error - extraConfig = import ./swayfx; + extraConfig = if (vars.class != "lowspec") then import ./swayfx else ""; config = { modifier = "Mod4"; terminal = "foot"; @@ -21,6 +21,10 @@ inner = 5; outer = 7; }; + assigns = { + "9: Mail" = [{ app_id = "thunderbird"; }]; + "10: Messaging" = [{ app_id = "vesktop"; }]; + }; input = { "type:touchpad" = { accel_profile = "flat"; @@ -58,7 +62,7 @@ workspaceLayout = "default"; keybindings = lib.mkOptionDefault { "Print" = "exec grim -g \"$(slurp)\" ~/Pictures/screenshots/screenshot-`date +%F-%T`.png"; - "Mod4+d" = "exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf | xargs swaymsg exec --'"; + "Mod4+d" = "exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf --bind=enter:replace-query+print-query | xargs swaymsg exec --'"; "Mod4+t" = "exec foot --title music --app-id mpd-control-foot ncmpcpp"; "XF86AudioRaiseVolume" = "exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%+ -l 1.0"; "XF86AudioLowerVolume" = "exec wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-"; @@ -75,7 +79,10 @@ "Shift_L+Control_L+B" = "exec playerctl position 10-"; "Shift_L+Control_L+F" = "exec playerctl position 10+"; "Mod4+w" = null; - "Mod4+s" = null; + "Mod4+s" = "scratchpad show"; + "Mod4+Shift+s" = "move scratchpad"; + "Mod4+Control+h" = "workspace prev_on_output"; + "Mod4+Control+l" = "workspace next_on_output"; }; floating.criteria = [ @@ -83,22 +90,6 @@ { app_id = "^mpd-control-foot$";} { con_mark = "DELTARUNE Chapter 1&2";} ]; -# colors = { -# focused = import ./swaycolors.nix; -# focused = { -# border = "#cba6f7"; -# }; -# focusedInactive = import ./swaycolors.nix; -# focusedInactive = { -# background = "#440c88"; -# indicator = "#440c88"; -# }; -# unfocused = import ./swaycolors.nix; -# unfocused = { -# background = "#440c88"; -# indicator = "#440c88"; -# }; -# }; window = { titlebar = false; }; diff --git a/home/swayfx-lite b/home/swayfx-lite new file mode 100644 index 0000000..f990b58 --- /dev/null +++ b/home/swayfx-lite @@ -0,0 +1,13 @@ +" +for_window [app_id=\"foot\"] opacity 0.8 +for_window [app_id=\"waybar\"] blur enable +blur disable +corner_radius 10 +# shadows enable - not using this because of flicker +default_dim_inactive 0.3 +client.focused 000000 cba6f7 000000 cba6f7 +for_window [title=\"Picture-in-Picture\"] dim_inactive 0.0 +for_window [title=\"Picture-in-Picture\"] sticky enable +client.focused_inactive 000000 440C88 000000 440C88 +client.unfocused 000000 440C88 000000 440C88 +" diff --git a/home/waybar/config b/home/waybar/config index 4071761..899b734 100644 --- a/home/waybar/config +++ b/home/waybar/config @@ -13,6 +13,7 @@ "memory": { "format": " {avail} +  {swapAvail} GiB", }, + "cava": { "method": "pipewire", "format-icons" : ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█" ], @@ -25,13 +26,16 @@ "noise_reduction": 0.5, "sensitivity": 13, }, + "disk": { "format": " {free} {path}", }, + "cpu": { "format": " {usage}% {max_frequency}GHz", "states": { "highcpu": 85 }, }, + "group/dtray": { "orientation": "inherit", "drawer": { @@ -40,11 +44,13 @@ }, "modules": ["custom/arrow", "tray"] }, + "group/audio": { "orientation": "inherit", "modules": ["wireplumber", ], "on-click": "pavucontrol", }, + "group/mpdg": { "orientation": "inherit", "drawer": { @@ -54,33 +60,42 @@ }, "modules": ["mpd", "custom/playpause", "custom/prev", "custom/next"] }, + "custom/playpause": { "format": "󰐎", "on-click": "mpc toggle" }, + "custom/prev": { "format": "󰒮", "on-click": "mpc prev" }, + "custom/next": { "format": "󰒭", "on-click": "mpc next" }, + "custom/arrow": { "format": " ", - "tooltip": false + "tooltip": false, + "on-click": "swaync-client -t", }, + "tray": { "spacing": 5 }, + "clock": { "format": "{:%I:%M %p}", }, + "wireplumber": { "on-click": "pavucontrol", "format": "󰓃 {volume}%", "format-muted": "󰓄 {volume}%", }, + "mpd": { "on-click": "mpc toggle", "format-disconnected": "MPD seems to be down", @@ -88,24 +103,42 @@ "format": "{title} - {album} - {artist}", "format-paused": "{title} - {album} - {artist}", }, + "battery": { "bat": "BAT0", "interval": 5, "format-icons": [" ", " ", " ", " ", " "], + "states": { + "warning": 30, + "critical": 15, + "dead": 5 + }, "format": "{icon} {capacity}%", "tooltip-format": "BAT0, {power}W" }, + "battery#bat1": { "bat": "BAT1", "interval": 5, "format-icons": [" ", " ", " ", " ", " "], + "states": { + "warning": 30, + "critical": 15, + "dead": 5 + }, "format": "{icon} {capacity}%", "tooltip-format": "BAT1, {power}W" }, + "battery#bat2": { "bat": "BAT2", "interval": 5, "format-icons": [" ", " ", " ", " ", " "], + "states": { + "warning": 30, + "critical": 15, + "dead": 5 + }, "format": "{icon} {capacity}%", "tooltip-format": "BAT2, {power}W" }, diff --git a/home/waybar/style.css b/home/waybar/style.css index f19a152..9063802 100644 --- a/home/waybar/style.css +++ b/home/waybar/style.css @@ -29,7 +29,7 @@ font-family: Iosevka NF; } window#waybar { - background-color: @surface0; + background-color: rgba(49, 50, 68, 0.999); /* padding: 0px 5px; margin: 5px 10px 5px; */ border-radius: 10px; @@ -45,9 +45,20 @@ window#waybar { border-radius: 10px; border: 0.2em solid #cba6f7; background: @surface2; - min-height: 0; + min-height: 0; margin: 0.2em; } +#battery.warning { + border: 0.2em solid @yellow; +} +#battery.critical { + border: 0.2em solid @red; +} +#battery.dead { + background: @surface0; + color: @surface2; + border: 0.2em solid @overlay1; +} #dtray { margin: 0px 10px 0px; padding: 0px 10px 0px; @@ -58,7 +69,7 @@ window#waybar { } #mpd.stopped { background-color: @surface0; - border: 0; + border: 0 } #mpd.playing { background: @mauve;