diff --git a/unorganized/machines/vm-audio.nix b/unorganized/machines/vm-audio.nix deleted file mode 100644 index d2b2d36..0000000 --- a/unorganized/machines/vm-audio.nix +++ /dev/null @@ -1,244 +0,0 @@ -{ - lib, - pkgs, - config, - ... -}: - -{ - imports = [ - # Import environment - ./vm-base.nix - ]; - - config = { - # Machine hostname - networking.hostName = "vm-audio"; - - # Enabled modules - modules = { - pipewire.enable = true; - spotifyd.enable = true; - }; - - # Install system packages - environment.systemPackages = with pkgs; [ - carla - xpra - alsa-utils - pulsemixer - adwaita-icon-theme - open-stage-control - carla_osc_bridge - - # Add LV2 plugins - lsp-plugins - airwindows-lv2 - distrho-ports - cardinal - calf - ]; - - # Setup firewall - networking.firewall = { - allowedTCPPorts = [ - 8080 - 10402 - 15151 - 22752 - ]; - allowedUDPPorts = [ - 8080 - 10402 - 15151 - 22752 - ]; - }; - - # Setup dependencies - environment.variables.LD_LIBRARY_PATH = lib.mkForce "${lib.makeLibraryPath ( - with pkgs; - [ - cairo - pipewire.jack - ] - )}"; - qt = { - enable = true; - style = "adwaita"; - }; - xdg.icons = { - enable = true; - fallbackCursorThemes = [ "Adwaita" ]; - }; - hardware.graphics.enable = true; - - # User for audio mixing - users.users.mixer = { - isNormalUser = true; - group = "mixer"; - extraGroups = [ "systemd-journal" ]; - openssh.authorizedKeys.keys = [ - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKKxoQSxfYqf9ITN8Fhckk8WbY4dwtBAXOhC9jxihJvq jan@bulthuis.dev" - ]; - }; - users.groups.mixer = { }; - users.groups.audio = { - members = [ - "mixer" - ]; - }; - users.groups.bluetooth = { - members = [ - "mixer" - ]; - }; - - # Xpra service - systemd.user.services.xpra = { - description = "Xpra Service"; - wantedBy = [ "default.target" ]; - after = [ - "network.target" - ]; - unitConfig = { - ConditionUser = "mixer"; - }; - serviceConfig = { - ExecStart = "${pkgs.xpra}/bin/xpra start :7 --bind-tcp=0.0.0.0:15151 --daemon=no"; - Restart = "always"; - RestartSec = 5; - }; - }; - - # Carla service - systemd.user.services.carla = { - description = "Carla Service"; - wantedBy = [ "default.target" ]; - after = [ - "network.target" - "sound.target" - ]; - requires = [ - "xpra.service" - ]; - unitConfig = { - ConditionUser = "mixer"; - }; - serviceConfig = { - ExecStart = "${pkgs.carla}/bin/carla /home/mixer/Default.carxp -platform xcb"; - Environment = "\"DISPLAY=:7\""; - Restart = "always"; - RestartSec = 5; - }; - }; - - # Carla service - systemd.user.services.carla-bridge = { - description = "Carla OSC Bridge"; - wantedBy = [ "default.target" ]; - after = [ - "network.target" - "sound.target" - ]; - requires = [ - "carla.service" - ]; - unitConfig = { - ConditionUser = "mixer"; - }; - serviceConfig = { - ExecStart = "${pkgs.carla_osc_bridge}/bin/carla_osc_bridge --clients \"127.0.0.1:8080\""; - Restart = "always"; - RestartSec = 5; - }; - }; - - # Open stage control service - systemd.user.services.osc = { - description = "OSC Service"; - wantedBy = [ "default.target" ]; - after = [ - "network.target" - ]; - requires = [ - "carla.service" - ]; - unitConfig = { - ConditionUser = "mixer"; - }; - serviceConfig = { - ExecStart = "${pkgs.open-stage-control}/bin/open-stage-control --no-gui --send 127.0.0.1:10402 --load /home/mixer/open-stage-control/session.json --theme /home/mixer/open-stage-control/theme.css"; - Environment = "\"ELECTRON_RUN_AS_NODE=1\""; - Restart = "always"; - RestartSec = 5; - }; - }; - - # Create bluetooth A2DP source - hardware.bluetooth = { - enable = true; - disabledPlugins = [ "hostname" ]; - settings.General = { - Name = "Linox"; - Class = "0x240414"; - DiscoverableTimeout = 0; - AlwaysPairable = true; - PairableTimeout = 0; - FastConnectable = true; - JustWorksRepairing = "always"; - }; - }; - services.pipewire.wireplumber.extraConfig."50-bluetooth-a2dp" = { - "monitor.bluez.properties" = { - "bluez5.roles" = [ "a2dp_source" ]; - }; - }; - - # Create null sinks - services.pipewire.extraConfig.pipewire."91-null-sinks" = { - "context.objects" = [ - { - factory = "adapter"; - args = { - "factory.name" = "support.null-audio-sink"; - "node.name" = "Speaker-Proxy"; - "node.description" = "Proxy for Speaker Output"; - "media.class" = "Audio/Sink"; - "audio.position" = "L,R"; - }; - } - { - factory = "adapter"; - args = { - "factory.name" = "support.null-audio-sink"; - "node.name" = "Headphone-Proxy"; - "node.description" = "Proxy for Headphone Output"; - "media.class" = "Audio/Sink"; - "audio.position" = "L,R"; - }; - } - { - factory = "adapter"; - args = { - "factory.name" = "support.null-audio-sink"; - "node.name" = "SpotifyD-Proxy"; - "node.description" = "Proxy for SpotifyD"; - "media.class" = "Audio/Sink"; - "audio.position" = "L,R"; - }; - } - { - factory = "adapter"; - args = { - "factory.name" = "support.null-audio-sink"; - "node.name" = "AnalogIn-Proxy"; - "node.description" = "Proxy for the analog input"; - "media.class" = "Audio/Source/Virtual"; - "audio.position" = "L,R"; - }; - } - ]; - }; - }; -} diff --git a/unorganized/machines/vm-base.nix b/unorganized/machines/vm-base.nix deleted file mode 100644 index a874d54..0000000 --- a/unorganized/machines/vm-base.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ lib, ... }: - -{ - imports = [ - # Import environment - ../default.nix - ]; - - config = { - # State version - system.stateVersion = "24.11"; - - # Machine hostname - networking.hostName = lib.mkDefault "vm-base"; - - # Enabled modules - modules = { - base.enable = true; - ssh.enable = true; - }; - - # Enable qemu guest agent - services.qemuGuest.enable = true; - - # Hardware configuration - hardware.enableRedistributableFirmware = true; - boot.initrd.availableKernelModules = [ - "ata_piix" - "uhci_hcd" - "virtio_pci" - "virtio_scsi" - "sd_mod" - "sr_mod" - ]; - boot.initrd.kernelModules = [ ]; - boot.kernelModules = [ "kvm-intel" ]; - boot.extraModulePackages = [ ]; - hardware.cpu.intel.updateMicrocode = true; - - # Filesystems - fileSystems."/" = { - device = "/dev/disk/by-partlabel/root"; - fsType = "ext4"; - }; - - fileSystems."/boot" = { - device = "/dev/disk/by-partlabel/EFI"; - fsType = "vfat"; - options = [ - "fmask=0077" - "dmask=0077" - ]; - }; - - # Swapfile - swapDevices = [ - { - device = "/var/lib/swapfile"; - size = 6 * 1024; - } - ]; - }; -} diff --git a/unorganized/modules/base/default.nix b/unorganized/modules/base/default.nix deleted file mode 100644 index 3ce0ef3..0000000 --- a/unorganized/modules/base/default.nix +++ /dev/null @@ -1,60 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.base; -in -{ - options.modules.base = { - enable = mkEnableOption "base"; - }; - - config = mkIf cfg.enable { - environment.systemPackages = with pkgs; [ - # Add base linux utilities - git - wget - curl - dig - procps - wireguard-tools - usbutils - pciutils - zip - unzip - ]; - - modules = { - # Enable base modules - clean-tmp.enable = true; - neovim.enable = true; - systemd-boot.enable = true; - }; - - # TODO: Remove everything below, it is here out of convenience and should be elsewhere - # networking.nameservers = [ - # "9.9.9.9" - # "149.112.112.112" - # ]; - # programs.captive-browser.enable = true; - services.resolved = { - enable = true; - }; - networking.firewall.enable = true; - modules.unfree.enable = true; - nix.settings.experimental-features = "nix-command flakes"; - nixpkgs.hostPlatform = "x86_64-linux"; - - console.packages = [ - pkgs.dina-psfu - ]; - console.font = "dina"; - console.earlySetup = true; - boot.loader.timeout = 0; - }; -} diff --git a/unorganized/modules/base/desktop.nix b/unorganized/modules/base/desktop.nix deleted file mode 100644 index 5dc2557..0000000 --- a/unorganized/modules/base/desktop.nix +++ /dev/null @@ -1,93 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.base.desktop; -in -{ - options.modules.base.desktop = { - enable = mkEnableOption "desktop"; - }; - - config = mkIf cfg.enable { - environment.systemPackages = with pkgs; [ - # TODO: MOVE - quickemu # TODO: Reenable once building this is fixed - pdftk - - # TODO: Move to USB module - # usbutils - # udiskie - # udisks - brightnessctl - - wireshark - ]; - - # Move to Realm module - security.krb5 = { - enable = true; - settings = { - libdefaults = { - rdns = false; - }; - realms = { - "GEWISWG.GEWIS.NL" = { - kdc = [ - "https://gewisvdesktop.gewis.nl/KdcProxy" - ]; - }; - }; - }; - }; - - modules = { - # Enable base modules - base.enable = true; - fontconfig.enable = true; - nixgreety.enable = true; - pipewire.enable = true; - graphics.enable = true; - }; - - programs.dconf.enable = true; - services.libinput.enable = true; - networking.firewall = { - enable = true; - logRefusedConnections = true; - logRefusedPackets = true; - logReversePathDrops = true; - logRefusedUnicastsOnly = false; - }; - programs.wireshark.enable = true; - machine.sudo-groups = [ "wireshark" ]; - services.upower.enable = true; # For battery percentage in gnome - modules.unfree.allowedPackages = [ - "nvidia-x11" - "nvidia-settings" - ]; - networking.firewall.allowedTCPPortRanges = [ - { - from = 10000; - to = 11000; - } - ]; - networking.firewall.allowedUDPPortRanges = [ - { - from = 10000; - to = 11000; - } - ]; - security.rtkit.enable = true; - security.polkit.enable = true; - - # TODO: Move to USB module - # services.gvfs.enable = true; - services.udisks2.enable = true; - }; -} diff --git a/unorganized/modules/bluetooth/default.nix b/unorganized/modules/bluetooth/default.nix deleted file mode 100644 index a210ae0..0000000 --- a/unorganized/modules/bluetooth/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.bluetooth; -in -{ - options.modules.bluetooth = { - enable = mkEnableOption "bluetooth"; - }; - - config = mkIf cfg.enable { - environment.systemPackages = with pkgs; [ bluez ]; - - hardware.bluetooth.enable = true; - hardware.bluetooth.powerOnBoot = true; - }; -} diff --git a/unorganized/modules/boot/clean-tmp.nix b/unorganized/modules/boot/clean-tmp.nix deleted file mode 100644 index ac63245..0000000 --- a/unorganized/modules/boot/clean-tmp.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.clean-tmp; -in -{ - options.modules.clean-tmp = { - enable = mkEnableOption "clean-tmp"; - }; - - config = mkIf cfg.enable { boot.tmp.cleanOnBoot = true; }; -} diff --git a/unorganized/modules/boot/silent-boot.nix b/unorganized/modules/boot/silent-boot.nix deleted file mode 100644 index f57f385..0000000 --- a/unorganized/modules/boot/silent-boot.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.silent-boot; -in -{ - options.modules.silent-boot = { - enable = mkEnableOption "silent-boot"; - }; - - config = mkIf cfg.enable { - boot = { - loader.timeout = 0; - - consoleLogLevel = 0; - initrd.verbose = false; - initrd.checkJournalingFS = false; - - kernelParams = [ - "quiet" - "boot.shell_on_fail" - "loglevel=3" - "rd.systemd.show_status=false" - "rd.udev.log_level=3" - "udev.log_priority=3" - "video=efifb:nobgrt" - "bgrt_disable" - ]; - }; - }; -} diff --git a/unorganized/modules/boot/systemd-boot.nix b/unorganized/modules/boot/systemd-boot.nix deleted file mode 100644 index 9f17007..0000000 --- a/unorganized/modules/boot/systemd-boot.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.systemd-boot; -in -{ - options.modules.systemd-boot = { - enable = mkEnableOption "systemd-boot"; - }; - - config = mkIf cfg.enable { - boot.loader = { - systemd-boot.enable = true; - systemd-boot.editor = false; - efi.canTouchEfiVariables = true; - }; - }; -} diff --git a/unorganized/modules/brightnessctl/default.nix b/unorganized/modules/brightnessctl/default.nix deleted file mode 100644 index 53c9da2..0000000 --- a/unorganized/modules/brightnessctl/default.nix +++ /dev/null @@ -1,18 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.brightnessctl; -in -{ - options.modules.brightnessctl = { - enable = mkEnableOption "brightnessctl"; - }; - - config = mkIf cfg.enable { environment.systemPackages = [ pkgs.brightnessctl ]; }; -} diff --git a/unorganized/modules/default.nix b/unorganized/modules/default.nix deleted file mode 100644 index 5d27502..0000000 --- a/unorganized/modules/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -{ - imports = [ - # Import modules - ./base/default.nix - ./base/desktop.nix - ./bluetooth/default.nix - ./boot/clean-tmp.nix - ./boot/silent-boot.nix - ./boot/systemd-boot.nix - ./brightnessctl/default.nix - ./fontconfig/default.nix - ./graphics/default.nix - ./grdp/default.nix - ./greeter/greetd/default.nix - ./greeter/greetd/nixgreety.nix - ./greeter/greetd/tuigreet.nix - ./greeter/ly/default.nix - ./locale/default.nix - ./neovim/default.nix - ./networkmanager/default.nix - ./power-saving/default.nix - ./printing/default.nix - ./sound/pipewire.nix - ./spotifyd/default.nix - ./ssh/default.nix - ./users/default.nix - ./unfree/default.nix - ./vpn/tailscale.nix - ./wifi/wpa_supplicant.nix - ]; -} diff --git a/unorganized/modules/fontconfig/default.nix b/unorganized/modules/fontconfig/default.nix deleted file mode 100644 index 3fc9863..0000000 --- a/unorganized/modules/fontconfig/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.fontconfig; -in -{ - options.modules.fontconfig = { - enable = mkEnableOption "fontconfig"; - }; - - config = { - fonts.fontconfig.enable = cfg.enable; - fonts.enableDefaultPackages = false; - fonts.fontconfig.defaultFonts = { - serif = mkDefault [ ]; - sansSerif = mkDefault [ ]; - monospace = mkDefault [ ]; - emoji = mkDefault [ ]; - }; - }; -} diff --git a/unorganized/modules/graphics/default.nix b/unorganized/modules/graphics/default.nix deleted file mode 100644 index 42e8265..0000000 --- a/unorganized/modules/graphics/default.nix +++ /dev/null @@ -1,39 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.fontconfig; -in -{ - options.modules.graphics = { - enable = mkEnableOption "graphics"; - }; - config = mkIf cfg.enable { - # TODO: Modularize further, especially modesetting should be its own module. - # Set up graphics - hardware.graphics.enable32Bit = true; - hardware.graphics.enable = true; - services.xserver.videoDrivers = [ "nvidia" ]; - hardware.nvidia = { - modesetting.enable = true; - powerManagement.enable = false; - powerManagement.finegrained = false; - open = false; - nvidiaSettings = true; - package = config.boot.kernelPackages.nvidiaPackages.beta; - prime = { - intelBusId = "PCI:0:2:0"; - nvidiaBusId = "PCI:1:0:0"; - offload = { - enable = true; - enableOffloadCmd = true; - }; - }; - }; - }; -} diff --git a/unorganized/modules/grdp/default.nix b/unorganized/modules/grdp/default.nix deleted file mode 100644 index bb89142..0000000 --- a/unorganized/modules/grdp/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -{ - options.modules.grdp = { - enable = mkEnableOption "grdp"; - }; - - config = mkIf config.modules.grdp.enable { - services.gnome.gnome-remote-desktop.enable = true; - environment.systemPackages = with pkgs; [ - gnome-remote-desktop - gnome-control-center - gnome-session - gnome-shell - gnome-settings-daemon - gdm - ]; - systemd.services."gnome-remote-desktop".wantedBy = [ "graphical.target" ]; - networking.firewall = { - allowedTCPPorts = [ 3389 ]; - allowedUDPPorts = [ 3389 ]; - }; - services.xserver.displayManager.gdm.enable = true; - modules.greetd.enable = mkForce false; - - # security.polkit.extraConfig = '' - # polkit.addRule(function(action, subject) { - # if (action.id == "org.gnome.controlcenter.remote-session-helper" && - # subject.isInGroup("wheel")) { - # return polkit.Result.YES; - # } - # });''; - # programs.dconf.profiles.user.databases = [ - # { - # settings = with lib.gvariant; { - # "org/gnome/desktop/remote-desktop/rdp" = { - # enable = true; - # view-only = false; - # }; - # }; - # } - # ]; - }; -} diff --git a/unorganized/modules/greeter/greetd/default.nix b/unorganized/modules/greeter/greetd/default.nix deleted file mode 100644 index 0cbfc0c..0000000 --- a/unorganized/modules/greeter/greetd/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.greetd; -in -{ - options.modules.greetd = { - enable = mkEnableOption "greetd"; - command = mkOption { - type = types.str; - default = ""; - description = "Command to run to show greeter."; - }; - }; - - config = mkIf cfg.enable { - services.greetd = { - enable = true; - settings.default_session = { - command = cfg.command; - user = mkDefault "greeter"; - }; - }; - }; -} diff --git a/unorganized/modules/greeter/greetd/nixgreety.nix b/unorganized/modules/greeter/greetd/nixgreety.nix deleted file mode 100644 index 1f4b2d0..0000000 --- a/unorganized/modules/greeter/greetd/nixgreety.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.nixgreety; -in -{ - options.modules.nixgreety = { - enable = mkEnableOption "nixgreety"; - }; - - config = mkIf cfg.enable { - # Enable greetd - modules.greetd = { - enable = true; - command = "${pkgs.nixgreety}/bin/nixgreety"; - }; - - services.greetd.settings.default_session.user = "root"; - - environment.systemPackages = with pkgs; [ - nixgreety - ]; - }; -} diff --git a/unorganized/modules/greeter/greetd/tuigreet.nix b/unorganized/modules/greeter/greetd/tuigreet.nix deleted file mode 100644 index a0e10e6..0000000 --- a/unorganized/modules/greeter/greetd/tuigreet.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.tuigreet; -in -{ - options.modules.tuigreet = { - enable = mkEnableOption "tuigreet"; - greeting = mkOption { - type = types.str; - default = "Hewwo! >_< :3"; - description = "Greeting message to show."; - }; - command = mkOption { - type = types.str; - default = "~/.initrc"; - description = "Command to run after logging in."; - }; - }; - - config = mkIf cfg.enable { - # Enable greetd - modules.greetd = { - enable = true; - command = "${pkgs.greetd.tuigreet}/bin/tuigreet --remember --greeting \"${cfg.greeting}\" --time --cmd \"${cfg.command}\" --asterisks"; - }; - - # Enable silent boot to prevent late log messages from messing up tuigreet - modules.silent-boot.enable = true; - }; -} diff --git a/unorganized/modules/greeter/ly/default.nix b/unorganized/modules/greeter/ly/default.nix deleted file mode 100644 index fee5b8d..0000000 --- a/unorganized/modules/greeter/ly/default.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - config, - lib, - ... -}: - -with lib; -let - cfg = config.modules.ly; -in -{ - options.modules.ly = { - enable = mkEnableOption "ly"; - }; - - config = mkIf cfg.enable { - services.displayManager.ly = { - enable = true; - settings = { - animation = "matrix"; - animation_refresh_ms = 32; - box_title = "Hewwo! >_< :3"; - clear_password = true; - load = true; - save = true; - xinitrc = "null"; - }; - }; - }; -} diff --git a/unorganized/modules/locale/default.nix b/unorganized/modules/locale/default.nix deleted file mode 100644 index 29895a1..0000000 --- a/unorganized/modules/locale/default.nix +++ /dev/null @@ -1,14 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -{ - config = { - time.timeZone = "Europe/Amsterdam"; - i18n.defaultLocale = "en_US.UTF-8"; - console.keyMap = "us"; - }; -} diff --git a/unorganized/modules/neovim/default.nix b/unorganized/modules/neovim/default.nix deleted file mode 100644 index ab507f6..0000000 --- a/unorganized/modules/neovim/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.neovim; -in -{ - options.modules.neovim = { - enable = mkEnableOption "neovim"; - }; - - config = mkIf cfg.enable { - programs.neovim = { - enable = true; - defaultEditor = true; - }; - }; -} diff --git a/unorganized/modules/networkmanager/default.nix b/unorganized/modules/networkmanager/default.nix deleted file mode 100644 index 4d3eaff..0000000 --- a/unorganized/modules/networkmanager/default.nix +++ /dev/null @@ -1,29 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -let - cfg = config.modules.networkmanager; -in -{ - options.modules.networkmanager = { - enable = mkEnableOption "networkmanager"; - }; - - config = mkIf cfg.enable { - machine.sudo-groups = [ "networkmanager" ]; - networking = { - networkmanager = { - enable = true; - wifi.powersave = true; - }; - firewall = { - # Fix for wireguard - checkReversePath = false; - }; - }; - }; -} diff --git a/unorganized/modules/power-saving/default.nix b/unorganized/modules/power-saving/default.nix deleted file mode 100644 index 22372c6..0000000 --- a/unorganized/modules/power-saving/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -let - cfg = config.modules.power-saving; -in -{ - options.modules.power-saving = { - enable = mkEnableOption "power-saving"; - }; - - config = mkIf cfg.enable { - powerManagement.enable = true; - services.thermald.enable = true; - services.tlp = { - enable = true; - - settings = { - CPU_SCALING_GOVERNOR_ON_AC = "performance"; - CPU_SCALING_GOVERNOR_ON_BAT = "powersave"; - - CPU_ENERGY_PERF_POLICY_ON_BAT = "power"; - CPU_ENERGY_PERF_POLICY_ON_AC = "performance"; - - CPU_MIN_PERF_ON_AC = 0; - CPU_MAX_PERF_ON_AC = 100; - CPU_MIN_PERF_ON_BAT = 0; - CPU_MAX_PERF_ON_BAT = 20; - }; - }; - }; -} diff --git a/unorganized/modules/printing/default.nix b/unorganized/modules/printing/default.nix deleted file mode 100644 index 97dcb71..0000000 --- a/unorganized/modules/printing/default.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -let - cfg = config.modules.printing; -in -{ - options.modules.printing = { - enable = mkEnableOption "printing"; - }; - - config = mkIf cfg.enable { - services.printing = { - enable = true; - # drivers = with pkgs; []; - }; - services.avahi = { - enable = true; - nssmdns4 = true; - openFirewall = true; - }; - }; -} diff --git a/unorganized/modules/sound/pipewire.nix b/unorganized/modules/sound/pipewire.nix deleted file mode 100644 index d13569e..0000000 --- a/unorganized/modules/sound/pipewire.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.pipewire; -in -{ - options.modules.pipewire = { - enable = mkEnableOption "pipewire"; - }; - - config = mkIf cfg.enable { - security.rtkit.enable = true; - services.pipewire = { - enable = true; - alsa.enable = true; - alsa.support32Bit = true; - pulse.enable = true; - jack.enable = true; - }; - }; -} diff --git a/unorganized/modules/spotifyd/default.nix b/unorganized/modules/spotifyd/default.nix deleted file mode 100644 index 83e9719..0000000 --- a/unorganized/modules/spotifyd/default.nix +++ /dev/null @@ -1,64 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.spotifyd; -in -{ - options.modules.spotifyd = { - enable = mkEnableOption "spotifyd"; - }; - - config = mkIf cfg.enable { - # User for spotifyd - users.users.mixer = { - group = "mixer"; - }; - users.groups.mixer = { }; - - # Spotifyd service - systemd.user.services.spotifyd = { - description = "SpotifyD Service"; - wantedBy = [ "default.target" ]; - after = [ - "network.target" - "sound.target" - ]; - unitConfig = { - ConditionUser = "mixer"; # TODO: Allow user configuration - }; - serviceConfig = { - ExecStart = "${pkgs.spotifyd}/bin/spotifyd --no-daemon --config-path /etc/spotifyd/spotifyd.conf"; - Restart = "always"; - RestartSec = 5; - }; - }; - - # Set up config - environment.etc = { - "spotifyd/spotifyd.conf" = { - source = ./spotifyd.conf; - mode = "0444"; - user = "mixer"; # TODO: Make user configurable - group = "mixer"; - }; - }; - - # Set up firewall - networking.firewall = { - allowedTCPPorts = [ - 5353 - 5454 - ]; - allowedUDPPorts = [ - 5353 - 5454 - ]; - }; - }; -} diff --git a/unorganized/modules/spotifyd/spotifyd.conf b/unorganized/modules/spotifyd/spotifyd.conf deleted file mode 100644 index 0bdc52f..0000000 --- a/unorganized/modules/spotifyd/spotifyd.conf +++ /dev/null @@ -1,118 +0,0 @@ -[global] - -#---------# -# GENERAL # -#---------# - -# The name that gets displayed under the connect tab on -# official clients. -device_name = "Linox" - -# The displayed device type in Spotify clients. -# Can be unknown, computer, tablet, smartphone, speaker, t_v, -# a_v_r (Audio/Video Receiver), s_t_b (Set-Top Box), and audio_dongle. -device_type = "a_v_r" - -# The directory used to store credentials and audio cache. -# Default: infers a sensible cache directory (e.g. on Linux: $XDG_CACHE_HOME) -# -# Note: The file path does not get expanded. Environment variables and -# shell placeholders like $HOME or ~ don't work! -#cache_path = "/full/path/to/cache/directory" - -# If set to true, audio data does NOT get cached. -# In this case, the cache is only used for credentials. -#no_audio_cache = true - -# The maximal size of the cache directory in bytes -# The example value corresponds to ~ 1GB -#max_cache_size = 1000000000 - -# If set to true, `spotifyd` tries to bind to dbus (default is the session bus) -# and expose MPRIS controls. When running headless, without the session bus, -# you should set this to false, to avoid errors. If you still want to use MPRIS, -# have a look at the `dbus_type` option. -use_mpris = false - -# The bus to bind to with the MPRIS interface. -# Possible values: "session", "system" -# The system bus can be used if no graphical session is available -# (e.g. on headless systems) but you still want to be able to use MPRIS. -# NOTE: You might need to add appropriate policies to allow spotifyd to -# own the name. -#dbus_type = "session" - -#-----------# -# DISCOVERY # -#-----------# - -# If set to true, this disables zeroconf discovery. -# This can be useful, if one prefers to run a single-user instance. -#disable_discovery = false - -# The port at which `spotifyd` is going to offer its service over the network (TCP). -# If not set, a random port > 1024 is used. For the service to be discoverable on the -# local network via mDNS, both the mDNS port (5353 UDP) and the random or fixed -# zeroconf port need to be allowed through any active firewall. -zeroconf_port = 5454 - -#-------# -# AUDIO # -#-------# - -# The audio backend used to play music. To get -# a list of possible backends, run `spotifyd --help`. -#backend = "alsa" # use portaudio for macOS [homebrew] -backend = "pulseaudio" - -# The alsa audio device to stream audio. To get a -# list of valid devices, run `aplay -L`, -#device = "default" # omit for macOS -device = "SpotifyD-Proxy" - -# The PCM sample format to use. Possible values -# are F32, S32, S24, S24_3, S16. -# Change this value if you encounter errors like -# "Alsa error PCM open ALSA function 'snd_pcm_hw_params_set_format' failed with error 'EINVAL: Invalid argument'" -#audio_format = "S16" - -# The volume controller. Each one behaves different to -# volume increases. For possible values, run -# `spotifyd --help`. -#volume_controller = "softvol" # use softvol for macOS - -# ! Only relevant for ALSA ! -# The alsa control device. By default this is the same -# name as the `device` field. -#control = "default" - -# ! Only relevant for ALSA ! -# The alsa mixer used by `spotifyd`. -#mixer = "PCM" # omit for macOS - -# The audio bitrate. 96, 160 or 320 kbit/s -#bitrate = 160 - -# Volume on startup between 0 and 100 -#initial_volume = 90 -initial_volume = 100 - -# If set to true, enables volume normalisation between songs. -# volume_normalisation = true - -# The normalisation pregain that is applied for each song. -#normalisation_pregain = -10 - -#-------ä -# OTHER # -#-------# - -# After the music playback has ended, start playing similar songs based on the previous tracks. -# By default, `spotifyd` infers this setting from the user settings. -autoplay = true - -# A command that gets executed in your shell after each song changes. -#on_song_change_hook = "echo \"hook executed on $PLAYER_EVENT\"" - -# The proxy `spotifyd` will use to connect to spotify. -#proxy = "http://proxy.example.org:8080" \ No newline at end of file diff --git a/unorganized/modules/ssh/default.nix b/unorganized/modules/ssh/default.nix deleted file mode 100644 index e619d5b..0000000 --- a/unorganized/modules/ssh/default.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.ssh; -in -{ - options.modules.ssh = { - enable = mkEnableOption "ssh"; - }; - - config = mkIf cfg.enable { - services.openssh.enable = true; - }; -} diff --git a/unorganized/modules/unfree/default.nix b/unorganized/modules/unfree/default.nix deleted file mode 100644 index eaae9ee..0000000 --- a/unorganized/modules/unfree/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.unfree; -in -{ - options.modules.unfree = { - enable = mkEnableOption "unfree"; - allowedPackages = mkOption { - type = types.listOf types.str; - default = [ ]; - }; - }; - - config = mkIf cfg.enable { - nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (getName pkg) cfg.allowedPackages; - }; -} diff --git a/unorganized/modules/users/default.nix b/unorganized/modules/users/default.nix deleted file mode 100644 index 04b4f95..0000000 --- a/unorganized/modules/users/default.nix +++ /dev/null @@ -1,79 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - # User configuration - userModule = types.submodule { - options = { - sudo = mkOption { - type = types.bool; - default = false; - example = true; - description = "Whether the user is allowed sudo access."; - }; - configuration = mkOption { - type = types.path; - default = ./users/base.nix; - description = "What home manager configuration to use for this user."; - }; - desktopInit = mkOption { - type = types.lines; - default = ""; - description = "Bash script to execute after initial log in."; - }; - }; - }; -in -{ - imports = [ - # Import systemwide configuration - ./systemwide.nix - ]; - - options = { - machine.sudo-groups = mkOption { - type = types.listOf types.str; - default = [ ]; - description = "Groups assigned to sudo users."; - }; - machine.users = mkOption { - type = types.attrsOf userModule; - default = { }; - description = "Users configured on this system."; - }; - }; - - config = { - # Add required home manager modules - home-manager.sharedModules = [ - # Modules - ../../user-modules/default.nix - - # Custom packages - ../../pkgs/default.nix - ]; - - # Create users - users.users = attrsets.concatMapAttrs (name: value: { - ${name} = { - isNormalUser = true; - extraGroups = mkIf value.sudo ( - [ - "wheel" - ] - ++ config.machine.sudo-groups - ); - }; - }) config.machine.users; - - # Create home manager configuration for users - home-manager.users = attrsets.concatMapAttrs (name: value: { - ${name} = value.configuration; - }) config.machine.users; - }; -} diff --git a/unorganized/modules/users/systemwide.nix b/unorganized/modules/users/systemwide.nix deleted file mode 100644 index 280b08f..0000000 --- a/unorganized/modules/users/systemwide.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - config, - lib, - ... -}: - -with lib; -let - moduleFiles = [ - ../../user-modules/desktop/systemwide.nix - ../../user-modules/development/systemwide.nix - ../../user-modules/gaming/systemwide.nix - ../../user-modules/keyring/systemwide.nix - ]; - - moduleConfig = lists.foldr (file: acc: recursiveUpdate acc (import file)) { } moduleFiles; - - moduleNames = attrNames moduleConfig; - - mkModule = - name: moduleConfig: - { pkgs, ... }: - { - config = - mkIf - (any ( - user: - ( - config.home-manager.users.${user}.modules.${name}.enable - || (any (specialisation: specialisation.configuration.modules.${name}.enable) ( - attrValues config.home-manager.users.${user}.specialisation - )) - ) - ) (attrNames config.home-manager.users)) - (if (isAttrs moduleConfig) then moduleConfig else (moduleConfig { inherit config pkgs; })); - }; - - imports = map (name: mkModule name moduleConfig."${name}") moduleNames; -in -{ - imports = imports; -} diff --git a/unorganized/modules/vpn/tailscale.nix b/unorganized/modules/vpn/tailscale.nix deleted file mode 100644 index 1dff284..0000000 --- a/unorganized/modules/vpn/tailscale.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.tailscale; -in -{ - options.modules.tailscale = { - enable = mkEnableOption "tailscale"; - }; - - config = mkIf cfg.enable { - services.tailscale = { - enable = true; - useRoutingFeatures = "client"; - }; - }; -} diff --git a/unorganized/modules/wifi/wpa_supplicant.nix b/unorganized/modules/wifi/wpa_supplicant.nix deleted file mode 100644 index c7d90cd..0000000 --- a/unorganized/modules/wifi/wpa_supplicant.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.wpa_supplicant; -in -{ - options.modules.wpa_supplicant = { - enable = mkEnableOption "wpa_supplicant"; - }; - - config = mkIf cfg.enable { - networking.wireless = { - enable = true; - userControlled.enable = true; - allowAuxiliaryImperativeNetworks = true; - }; - }; -} diff --git a/unorganized/pkgs/default.nix b/unorganized/pkgs/default.nix deleted file mode 100644 index 88722b3..0000000 --- a/unorganized/pkgs/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ - ... -}: - -let - overlay = final: prev: { - dina-psfu = prev.callPackage ./fonts/dina-psfu.nix { }; - ttf2psf = prev.callPackage ./fonts/ttf2psf.nix { }; - wqy-zenhei = prev.callPackage ./fonts/wqy-zenhei.nix { }; - wqy-microhei = prev.callPackage ./fonts/wqy-microhei.nix { }; - wqy-bitmapsong = prev.callPackage ./fonts/wqy-bitmapsong.nix { }; - - wprs = prev.callPackage ./programs/wprs/default.nix { }; - nixgreety = prev.callPackage ./programs/nixgreety.nix { }; - carla_osc_bridge = prev.callPackage ./programs/carla_osc_bridge.nix { }; - # ly = prev.callPackage ./programs/ly/default.nix { }; - }; -in -{ - nixpkgs.overlays = [ overlay ]; -} diff --git a/unorganized/pkgs/fonts/ttf2psf.nix b/unorganized/pkgs/fonts/ttf2psf.nix deleted file mode 100644 index d640959..0000000 --- a/unorganized/pkgs/fonts/ttf2psf.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - pkgs, - ... -}: - -pkgs.stdenv.mkDerivation { - pname = "ttf2psf"; - version = "1.0.0"; - - src = pkgs.fetchFromGitHub { - owner = "NateChoe1"; - repo = "ttf2psf"; - rev = "8db09d05385f595c320eccae4c48ff4393ca5bde"; - sha256 = "v52TZp+GyXHBAMsIoHFA8ZIMPsDVls13WW29vpesCig="; - }; - - buildInputs = with pkgs; [ - pkg-config - freetype - ]; - - buildPhase = '' - make build/ttf2psf - ''; - - installPhase = '' - install -Dm 755 -t $out/bin build/ttf2psf - install -Dm 644 -t $out/share/ttf2psf data/*.* - install -Dm 644 -t $out/share/ttf2psf/fontsets data/fontsets/* - ''; -} diff --git a/unorganized/pkgs/fonts/wqy-bitmapsong.nix b/unorganized/pkgs/fonts/wqy-bitmapsong.nix deleted file mode 100644 index 33c2890..0000000 --- a/unorganized/pkgs/fonts/wqy-bitmapsong.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ - pkgs, - ... -}: - -pkgs.stdenv.mkDerivation rec { - pname = "wqy-bitmapsong-pcf"; - version = "1.0.0-RC1"; - - src = pkgs.fetchurl { - url = "mirror://sourceforge/wqy/${pname}-${version}.tar.gz"; - hash = "sha256-0uvwkRUbvJ0remTnlP8dElRjaBVd6iukNYBTE/CTO7s="; - }; - - buildInputs = [ pkgs.fontforge ]; - buildPhase = '' - newName() { - test "''${1:5:1}" = i && _it=Italic || _it= - case ''${1:6:3} in - 400) test -z $it && _weight=Medium ;; - 700) _weight=Bold ;; - esac - _pt=''${1%.pcf} - _pt=''${_pt#*-} - echo "WenQuanYi_Bitmap_Song$_weight$_it$_pt" - } - - for i in *.pcf; do - fontforge -lang=ff -c "Open(\"$i\"); Generate(\"$(newName $i).otb\")" - done - ''; - installPhase = '' - install -Dm644 *.otb -t $out/share/fonts/ - ''; -} diff --git a/unorganized/pkgs/fonts/wqy-microhei.nix b/unorganized/pkgs/fonts/wqy-microhei.nix deleted file mode 100644 index 49060bb..0000000 --- a/unorganized/pkgs/fonts/wqy-microhei.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - pkgs, - ... -}: - -pkgs.stdenv.mkDerivation rec { - pname = "wqy-microhei"; - version = "0.2.0-beta"; - - src = pkgs.fetchurl { - url = "mirror://sourceforge/wqy/${pname}-${version}.tar.gz"; - hash = "sha256-KAKsgCOqNqZupudEWFTjoHjTd///QhaTQb0jeHH3IT4="; - }; - - installPhase = '' - runHook preInstall - - install -Dm644 *.ttc -t $out/share/fonts/ - - runHook postInstall - ''; -} diff --git a/unorganized/pkgs/fonts/wqy-zenhei.nix b/unorganized/pkgs/fonts/wqy-zenhei.nix deleted file mode 100644 index 56dd61c..0000000 --- a/unorganized/pkgs/fonts/wqy-zenhei.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - pkgs, - ... -}: - -pkgs.stdenv.mkDerivation rec { - pname = "wqy-zenhei"; - version = "0.9.45"; - - src = pkgs.fetchurl { - url = "mirror://sourceforge/wqy/${pname}-${version}.tar.gz"; - hash = "sha256-5LfjBkdb+UJ9F1dXjw5FKJMMhMROqj8WfUxC8RDuddY="; - }; - - installPhase = '' - runHook preInstall - - install -Dm644 *.ttc -t $out/share/fonts/ - - runHook postInstall - ''; -} diff --git a/unorganized/pkgs/programs/carla_osc_bridge.nix b/unorganized/pkgs/programs/carla_osc_bridge.nix deleted file mode 100644 index fe9e7a2..0000000 --- a/unorganized/pkgs/programs/carla_osc_bridge.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, ... }: - -with pkgs; -rustPlatform.buildRustPackage { - pname = "carla_osc_bridge"; - version = "master"; - - src = fetchFromGitea { - domain = "git.bulthuis.dev"; - owner = "Jan"; - repo = "carla_osc_bridge"; - rev = "c037e2d2a1b29b785d8acc10fa0cb761afdb3fcf"; - hash = "sha256-Wvdfm+4dfygZwkvaUhO9w7DrrUl3ZYvtD7nYrPSD0eA="; - }; - - cargoHash = "sha256-s1ZKbhHudgPOy7613zbT8TkbM6B7oloLEuTYHoWjX5o="; - - useFetchCargoVendor = true; -} diff --git a/unorganized/pkgs/programs/ly/default.nix b/unorganized/pkgs/programs/ly/default.nix deleted file mode 100644 index 15f18f9..0000000 --- a/unorganized/pkgs/programs/ly/default.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ - stdenv, - lib, - fetchFromGitHub, - linux-pam, - libxcb, - makeBinaryWrapper, - zig_0_12, - callPackage, - nixosTests, -}: - -stdenv.mkDerivation { - pname = "ly"; - version = "1.0.2"; - - src = fetchFromGitHub { - owner = "peterc-s"; - repo = "ly"; - rev = "e6d8bea236dd0097adb1c22e9a23d95102ebe9d9"; - sha256 = "w9YdNVD+8UhrEbPJ7xqsd/WoxU2rlo2GXFtc9JpWHxo="; - }; - - nativeBuildInputs = [ - makeBinaryWrapper - zig_0_12.hook - ]; - buildInputs = [ - libxcb - linux-pam - ]; - - postPatch = '' - ln -s ${callPackage ./deps.nix { }} $ZIG_GLOBAL_CACHE_DIR/p - ''; - - passthru.tests = { inherit (nixosTests) ly; }; - - meta = with lib; { - description = "TUI display manager"; - license = licenses.wtfpl; - homepage = "https://github.com/fairyglade/ly"; - maintainers = [ maintainers.vidister ]; - platforms = platforms.linux; - mainProgram = "ly"; - }; -} diff --git a/unorganized/pkgs/programs/ly/deps.nix b/unorganized/pkgs/programs/ly/deps.nix deleted file mode 100644 index ba46193..0000000 --- a/unorganized/pkgs/programs/ly/deps.nix +++ /dev/null @@ -1,110 +0,0 @@ -# generated by zon2nix (https://github.com/Cloudef/zig2nix) - -{ - lib, - linkFarm, - fetchurl, - fetchgit, - runCommandLocal, - zig, - name ? "zig-packages", -}: - -let - unpackZigArtifact = - { name, artifact }: - runCommandLocal name { nativeBuildInputs = [ zig ]; } '' - hash="$(zig fetch --global-cache-dir "$TMPDIR" ${artifact})" - mv "$TMPDIR/p/$hash" "$out" - chmod 755 "$out" - ''; - - fetchZig = - { - name, - url, - hash, - }: - let - artifact = fetchurl { inherit url hash; }; - in - unpackZigArtifact { inherit name artifact; }; - - fetchGitZig = - { - name, - url, - hash, - }: - let - parts = lib.splitString "#" url; - base = lib.elemAt parts 0; - rev = lib.elemAt parts 1; - in - fetchgit { - inherit name rev hash; - url = base; - deepClone = false; - }; - - fetchZigArtifact = - { - name, - url, - hash, - }: - let - parts = lib.splitString "://" url; - proto = lib.elemAt parts 0; - path = lib.elemAt parts 1; - fetcher = { - "git+http" = fetchGitZig { - inherit name hash; - url = "http://${path}"; - }; - "git+https" = fetchGitZig { - inherit name hash; - url = "https://${path}"; - }; - http = fetchZig { - inherit name hash; - url = "http://${path}"; - }; - https = fetchZig { - inherit name hash; - url = "https://${path}"; - }; - file = unpackZigArtifact { - inherit name; - artifact = /. + path; - }; - }; - in - fetcher.${proto}; -in -linkFarm name [ - { - name = "122062d301a203d003547b414237229b09a7980095061697349f8bef41be9c30266b"; - path = fetchZigArtifact { - name = "clap"; - url = "https://github.com/Hejsil/zig-clap/archive/refs/tags/0.9.1.tar.gz"; - hash = "sha256-7qxm/4xb+58MGG+iUzssUtR97OG2dRjAqyS0BAet4HY="; - }; - } - { - name = "12209b971367b4066d40ecad4728e6fdffc4cc4f19356d424c2de57f5b69ac7a619a"; - path = fetchZigArtifact { - name = "zigini"; - url = "https://github.com/Kawaii-Ash/zigini/archive/0bba97a12582928e097f4074cc746c43351ba4c8.tar.gz"; - hash = "sha256-OdaJ5tqmk2MPwaAbpK4HRD/CcQCN+Cjj8U63BqUcFMs="; - }; - } - { - name = "1220b0979ea9891fa4aeb85748fc42bc4b24039d9c99a4d65d893fb1c83e921efad8"; - path = fetchZigArtifact { - name = "ini"; - url = "https://github.com/ziglibs/ini/archive/e18d36665905c1e7ba0c1ce3e8780076b33e3002.tar.gz"; - hash = "sha256-RQ6OPJBqqH7PCL+xiI58JT7vnIo6zbwpLWn+byZO5iM="; - }; - } -] diff --git a/unorganized/pkgs/programs/nixgreety.nix b/unorganized/pkgs/programs/nixgreety.nix deleted file mode 100644 index eb378f3..0000000 --- a/unorganized/pkgs/programs/nixgreety.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ pkgs, ... }: - -with pkgs; -rustPlatform.buildRustPackage { - pname = "nixgreety"; - version = "master"; - - src = fetchFromGitea { - domain = "git.bulthuis.dev"; - owner = "Jan"; - repo = "nixgreety"; - rev = "c7278a910a0238a53f23fe9a0ae881802a4bcb31"; - hash = "sha256-kZB+iEFIDJ8pOJetu4Isu4oaktgIn14D4PcpDXLOXA8="; - }; - - cargoHash = "sha256-pklKVzYoChRqPZ/D3BsMGnaBFd615TKbvoAy7iU8UtA="; - - useFetchCargoVendor = true; -} diff --git a/unorganized/pkgs/programs/wprs/Cargo.lock b/unorganized/pkgs/programs/wprs/Cargo.lock deleted file mode 100644 index b5f90b2..0000000 --- a/unorganized/pkgs/programs/wprs/Cargo.lock +++ /dev/null @@ -1,2431 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - -[[package]] -name = "aho-corasick" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" -dependencies = [ - "memchr", -] - -[[package]] -name = "anes" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" - -[[package]] -name = "anstyle" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9" - -[[package]] -name = "anyhow" -version = "1.0.95" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" - -[[package]] -name = "appendlist" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e149dc73cd30538307e7ffa2acd3d2221148eaeed4871f246657b1c3eaa1cbd2" - -[[package]] -name = "approx" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f2a05fd1bd10b2527e20a2cd32d8873d115b8b39fe219ee25f42a8aca6ba278" -dependencies = [ - "num-traits", -] - -[[package]] -name = "arrayref" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb" - -[[package]] -name = "arrayvec" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" - -[[package]] -name = "autocfg" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "bimap" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "230c5f1ca6a325a32553f8640d31ac9b49f2411e901e427570154868b46da4f7" - -[[package]] -name = "bit-set" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3" -dependencies = [ - "bit-vec", -] - -[[package]] -name = "bit-vec" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f68f53c83ab957f72c32642f3868eec03eb974d1fb82e453128456482613d36" -dependencies = [ - "serde", -] - -[[package]] -name = "blake3" -version = "1.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e" -dependencies = [ - "arrayref", - "arrayvec", - "cc", - "cfg-if", - "constant_time_eq", -] - -[[package]] -name = "bpaf" -version = "0.9.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50fd5174866dc2fa2ddc96e8fb800852d37f064f32a45c7b7c2f8fa2c64c77fa" - -[[package]] -name = "bumpalo" -version = "3.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" - -[[package]] -name = "bytecheck" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50c8f430744b23b54ad15161fcbc22d82a29b73eacbe425fea23ec822600bc6f" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "rancor", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "523363cbe1df49b68215efdf500b103ac3b0fb4836aed6d15689a076eadb8fff" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "bytemuck" -version = "1.21.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef657dfab802224e671f5818e9a4935f9b1957ed18e58292690cc39e7a4092a3" -dependencies = [ - "bytemuck_derive", -] - -[[package]] -name = "bytemuck_derive" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b" - -[[package]] -name = "calloop" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10929724661d1c43856fd87c7a127ae944ec55579134fb485e4136fb6a46fdcb" -dependencies = [ - "bitflags 2.8.0", - "polling", - "rustix", - "slab", - "tracing", -] - -[[package]] -name = "calloop-wayland-source" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "876a7a1dbbe026a55ef47a500b123af5a9a0914520f061d467914cf21be95daf" -dependencies = [ - "calloop", - "rustix", - "wayland-backend", - "wayland-client", -] - -[[package]] -name = "camino" -version = "1.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" - -[[package]] -name = "cast" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" - -[[package]] -name = "cc" -version = "1.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8293772165d9345bdaaa39b45b2109591e63fe5e6fbc23c6ff930a048aa310b" -dependencies = [ - "jobserver", - "libc", - "shlex", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - -[[package]] -name = "cgmath" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a98d30140e3296250832bbaaff83b27dcd6fa3cc70fb6f1f3e5c9c0023b5317" -dependencies = [ - "approx", - "num-traits", -] - -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half", -] - -[[package]] -name = "clap" -version = "4.5.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8eb5e908ef3a6efbe1ed62520fb7287959888c88485abe072543190ecc66783" -dependencies = [ - "clap_builder", -] - -[[package]] -name = "clap_builder" -version = "4.5.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b01801b5fc6a0a232407abc821660c9c6d25a1cafc0d4f85f29fb8d9afc121" -dependencies = [ - "anstyle", - "clap_lex", -] - -[[package]] -name = "clap_lex" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46ad14479a25103f283c0f10005961cf086d8dc42205bb44c46ac563475dca6" - -[[package]] -name = "concurrent-queue" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "constant_time_eq" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" - -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "criterion" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b12d017a929603d80db1831cd3a24082f8137ce19c69e6447f54f5fc8d692f" -dependencies = [ - "anes", - "cast", - "ciborium", - "clap", - "criterion-plot", - "is-terminal", - "itertools 0.10.5", - "num-traits", - "once_cell", - "oorandom", - "plotters", - "rayon", - "regex", - "serde", - "serde_derive", - "serde_json", - "tinytemplate", - "walkdir", -] - -[[package]] -name = "criterion-plot" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b50826342786a51a89e2da3a28f1c32b06e387201bc2d19791f622c673706b1" -dependencies = [ - "cast", - "itertools 0.10.5", -] - -[[package]] -name = "crossbeam-channel" -version = "0.5.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" - -[[package]] -name = "crunchy" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" - -[[package]] -name = "cursor-icon" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991" - -[[package]] -name = "divbuf" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0809dcae8c7e9f3a1d7a70ea495427e09a2d494088b4276cb118b51d513c6af1" - -[[package]] -name = "dlib" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412" -dependencies = [ - "libloading", -] - -[[package]] -name = "downcast-rs" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" - -[[package]] -name = "drm-fourcc" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0aafbcdb8afc29c1a7ee5fbe53b5d62f4565b35a042a662ca9fecd0b54dae6f4" - -[[package]] -name = "either" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" - -[[package]] -name = "encoding_rs" -version = "0.8.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "enum-as-inner" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" -dependencies = [ - "heck", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "errno" -version = "0.3.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d" -dependencies = [ - "libc", - "windows-sys 0.59.0", -] - -[[package]] -name = "fallible-iterator" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649" - -[[package]] -name = "fastrand" -version = "2.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" - -[[package]] -name = "fdeflate" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e6853b52649d4ac5c0bd02320cddc5ba956bdb407c4b75a2c6b75bf51500f8c" -dependencies = [ - "simd-adler32", -] - -[[package]] -name = "flate2" -version = "1.0.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c" -dependencies = [ - "crc32fast", - "miniz_oxide", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "generator" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc6bd114ceda131d3b1d665eba35788690ad37f5916457286b32ab6fd3c438dd" -dependencies = [ - "cfg-if", - "libc", - "log", - "rustversion", - "windows", -] - -[[package]] -name = "gethostname" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818" -dependencies = [ - "libc", - "windows-targets 0.48.5", -] - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "libc", - "wasi", -] - -[[package]] -name = "glob" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d1add55171497b4705a648c6b583acafb01d58050a51727785f0b2c8e0a2b2" - -[[package]] -name = "half" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" -dependencies = [ - "cfg-if", - "crunchy", -] - -[[package]] -name = "hashbrown" -version = "0.15.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "hermit-abi" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" - -[[package]] -name = "home" -version = "0.5.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "indexmap" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f" -dependencies = [ - "equivalent", - "hashbrown", -] - -[[package]] -name = "io-lifetimes" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06432fb54d3be7964ecd3649233cddf80db2832f47fec34c01f65b3d9d774983" - -[[package]] -name = "is-terminal" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" -dependencies = [ - "hermit-abi 0.4.0", - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "itertools" -version = "0.10.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" - -[[package]] -name = "jobserver" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0" -dependencies = [ - "libc", -] - -[[package]] -name = "js-sys" -version = "0.3.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f" -dependencies = [ - "once_cell", - "wasm-bindgen", -] - -[[package]] -name = "lagoon" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d646ad46f3aec5825bb57e0245ad9b9396ae2600102e23d029e5d8274c3e9ae4" -dependencies = [ - "crossbeam-channel", - "num_cpus", - "scopeguard", - "spin", -] - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" - -[[package]] -name = "libc" -version = "0.2.169" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5aba8db14291edd000dfcc4d620c7ebfb122c613afb886ca8803fa4e128a20a" - -[[package]] -name = "libloading" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34" -dependencies = [ - "cfg-if", - "windows-targets 0.52.6", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" - -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", -] - -[[package]] -name = "log" -version = "0.4.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbf5b083de1c7e0222a7a51dbfdba1cbe1c6ab0b15e29fff3f6c077fd9cd9f" - -[[package]] -name = "loom" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "419e0dc8046cb947daa77eb95ae174acfbddb7673b4151f56d1eed8e93fbfaca" -dependencies = [ - "cfg-if", - "generator", - "scoped-tls", - "tracing", - "tracing-subscriber", -] - -[[package]] -name = "matchers" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558" -dependencies = [ - "regex-automata 0.1.10", -] - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "memmap2" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed" -dependencies = [ - "libc", -] - -[[package]] -name = "memmap2" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f" -dependencies = [ - "libc", -] - -[[package]] -name = "memoffset" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" -dependencies = [ - "autocfg", -] - -[[package]] -name = "merkle_hash" -version = "3.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3edd3572d1a7b4e1b7ce5bb3af05405a8aeab2ec04b29d9779e72ad576ce4f38" -dependencies = [ - "blake3", - "camino", - "rayon", -] - -[[package]] -name = "miniz_oxide" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8402cab7aefae129c6977bb0ff1b8fd9a04eb5b51efc50a70bea51cda0c7924" -dependencies = [ - "adler2", - "simd-adler32", -] - -[[package]] -name = "munge" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64142d38c84badf60abf06ff9bd80ad2174306a5b11bd4706535090a30a419df" -dependencies = [ - "munge_macro", -] - -[[package]] -name = "munge_macro" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb5c1d8184f13f7d0ccbeeca0def2f9a181bce2624302793005f5ca8aa62e5e" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "nix" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" -dependencies = [ - "bitflags 2.8.0", - "cfg-if", - "cfg_aliases", - "libc", - "memoffset", -] - -[[package]] -name = "nu-ansi-term" -version = "0.46.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" -dependencies = [ - "overload", - "winapi", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - -[[package]] -name = "num_enum" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179" -dependencies = [ - "num_enum_derive", -] - -[[package]] -name = "num_enum_derive" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56" -dependencies = [ - "proc-macro-crate", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "once_cell" -version = "1.20.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" - -[[package]] -name = "oorandom" -version = "11.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b410bbe7e14ab526a0e86877eb47c6996a2bd7746f027ba551028c925390e4e9" - -[[package]] -name = "optional_struct" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14199f59efce6ed2c5854f0abc725c32eedfbd02c6ef82c9733c726f3fc6dc91" -dependencies = [ - "optional_struct_macro", - "serde", -] - -[[package]] -name = "optional_struct_macro" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5eba042d9efe5e108e0df9ce2f85c540fc4f94f41c6821cbcf70ed47c1221da" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "overload" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" - -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall", - "smallvec", - "windows-targets 0.52.6", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" - -[[package]] -name = "pkg-config" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" - -[[package]] -name = "plotters" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" -dependencies = [ - "num-traits", - "plotters-backend", - "plotters-svg", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "plotters-backend" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" - -[[package]] -name = "plotters-svg" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" -dependencies = [ - "plotters-backend", -] - -[[package]] -name = "png" -version = "0.17.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82151a2fc869e011c153adc57cf2789ccb8d9906ce52c0b39a6b5697749d7526" -dependencies = [ - "bitflags 1.3.2", - "crc32fast", - "fdeflate", - "flate2", - "miniz_oxide", -] - -[[package]] -name = "polling" -version = "3.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a604568c3202727d1507653cb121dbd627a58684eb09a820fd746bee38b4442f" -dependencies = [ - "cfg-if", - "concurrent-queue", - "hermit-abi 0.4.0", - "pin-project-lite", - "rustix", - "tracing", - "windows-sys 0.59.0", -] - -[[package]] -name = "ppv-lite86" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "proc-macro-crate" -version = "3.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" -dependencies = [ - "toml_edit", -] - -[[package]] -name = "proc-macro2" -version = "1.0.93" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60946a68e5f9d28b0dc1c21bb8a97ee7d018a8b322fa57838ba31cc878e22d99" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "profiling" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afbdc74edc00b6f6a218ca6a5364d6226a259d4b8ea1af4a0ea063f27e179f4d" -dependencies = [ - "profiling-procmacros", -] - -[[package]] -name = "profiling-procmacros" -version = "1.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a65f2e60fbf1063868558d69c6beacf412dc755f9fc020f514b7955fc914fe30" -dependencies = [ - "quote", - "syn", -] - -[[package]] -name = "proptest" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14cae93065090804185d3b75f0bf93b8eeda30c7a9b4a33d3bdb3988d6229e50" -dependencies = [ - "bit-set", - "bit-vec", - "bitflags 2.8.0", - "lazy_static", - "num-traits", - "rand", - "rand_chacha", - "rand_xorshift", - "regex-syntax 0.8.5", - "rusty-fork", - "tempfile", - "unarray", -] - -[[package]] -name = "ptr_meta" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe9e76f66d3f9606f44e45598d155cb13ecf09f4a28199e48daf8c8fc937ea90" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca414edb151b4c8d125c12566ab0d74dc9cdba36fb80eb7b848c15f495fd32d1" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "quick-error" -version = "1.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" - -[[package]] -name = "quick-xml" -version = "0.36.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7649a7b4df05aed9ea7ec6f628c67c9953a43869b8bc50929569b2999d443fe" -dependencies = [ - "memchr", -] - -[[package]] -name = "quote" -version = "1.0.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4dccaaaf89514f546c693ddc140f729f958c247918a13380cccc6078391acc" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "rancor" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "caf5f7161924b9d1cea0e4cabc97c372cea92b5f927fc13c6bca67157a0ad947" -dependencies = [ - "ptr_meta", -] - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rand_xorshift" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d25bf25ec5ae4a3f1b92f929810509a2f53d7dca2f50b794ff57e3face536c8f" -dependencies = [ - "rand_core", -] - -[[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "redox_syscall" -version = "0.5.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834" -dependencies = [ - "bitflags 2.8.0", -] - -[[package]] -name = "regex" -version = "1.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata 0.4.9", - "regex-syntax 0.8.5", -] - -[[package]] -name = "regex-automata" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" -dependencies = [ - "regex-syntax 0.6.29", -] - -[[package]] -name = "regex-automata" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax 0.8.5", -] - -[[package]] -name = "regex-syntax" -version = "0.6.29" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" - -[[package]] -name = "regex-syntax" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" - -[[package]] -name = "rend" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a35e8a6bf28cd121053a66aa2e6a2e3eaffad4a60012179f0e864aa5ffeff215" -dependencies = [ - "bytecheck", -] - -[[package]] -name = "rkyv" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b11a153aec4a6ab60795f8ebe2923c597b16b05bb1504377451e705ef1a45323" -dependencies = [ - "bytecheck", - "bytes", - "hashbrown", - "indexmap", - "munge", - "ptr_meta", - "rancor", - "rend", - "rkyv_derive", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.8.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "beb382a4d9f53bd5c0be86b10d8179c3f8a14c30bf774ff77096ed6581e35981" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "ron" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" -dependencies = [ - "base64", - "bitflags 2.8.0", - "serde", - "serde_derive", -] - -[[package]] -name = "rustix" -version = "0.38.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a78891ee6bf2340288408954ac787aa063d8e8817e9f53abb37c695c6d834ef6" -dependencies = [ - "bitflags 2.8.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.59.0", -] - -[[package]] -name = "rustversion" -version = "1.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7c45b9784283f1b2e7fb61b42047c2fd678ef0960d4f6f1eba131594cc369d4" - -[[package]] -name = "rusty-fork" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb3dcc6e454c328bb824492db107ab7c0ae8fcffe4ad210136ef014458c1bc4f" -dependencies = [ - "fnv", - "quick-error", - "tempfile", - "wait-timeout", -] - -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "scoped-tls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294" - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "serde" -version = "1.0.217" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_derive" -version = "1.0.217" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "serde_json" -version = "1.0.135" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b0d7ba2887406110130a978386c4e1befb98c674b4fba677954e4db976630d9" -dependencies = [ - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_spanned" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1" -dependencies = [ - "serde", -] - -[[package]] -name = "sharded-slab" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6" -dependencies = [ - "lazy_static", -] - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "simd-adler32" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" - -[[package]] -name = "simdutf8" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "smallvec" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" - -[[package]] -name = "smithay" -version = "0.3.0" -source = "git+https://github.com/Smithay/smithay.git#fe31867e3afac2543c4016fb8ed99df3e11eb6da" -dependencies = [ - "appendlist", - "bitflags 2.8.0", - "calloop", - "cgmath", - "cursor-icon", - "downcast-rs", - "drm-fourcc", - "encoding_rs", - "errno", - "indexmap", - "libc", - "profiling", - "rand", - "rustix", - "scopeguard", - "smallvec", - "tempfile", - "thiserror", - "tracing", - "wayland-protocols", - "wayland-protocols-misc", - "wayland-protocols-wlr", - "wayland-server", - "x11rb", - "xkbcommon 0.8.0", -] - -[[package]] -name = "smithay-client-toolkit" -version = "0.19.2" -source = "git+https://github.com/Smithay/client-toolkit.git#ca6a36e4d5f4a171eea91eabe7c8ab9b17fa98e0" -dependencies = [ - "bitflags 2.8.0", - "bytemuck", - "calloop", - "calloop-wayland-source", - "cursor-icon", - "libc", - "log", - "memmap2 0.9.5", - "pkg-config", - "rustix", - "thiserror", - "wayland-backend", - "wayland-client", - "wayland-csd-frame", - "wayland-cursor", - "wayland-protocols", - "wayland-protocols-wlr", - "wayland-scanner", - "xkbcommon 0.7.0", - "xkeysym", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" -dependencies = [ - "lock_api", -] - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "syn" -version = "2.0.96" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5d0adab1ae378d7f53bdebc67a39f1f151407ef230f0ce2883572f5d8985c80" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "sysctl" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01198a2debb237c62b6826ec7081082d951f46dbb64b0e8c7649a452230d1dfc" -dependencies = [ - "bitflags 2.8.0", - "byteorder", - "enum-as-inner", - "libc", - "thiserror", - "walkdir", -] - -[[package]] -name = "target-triple" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42a4d50cdb458045afc8131fd91b64904da29548bcb63c7236e0844936c13078" - -[[package]] -name = "tempfile" -version = "3.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" -dependencies = [ - "cfg-if", - "fastrand", - "getrandom", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "thiserror" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "thread_local" -version = "1.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" -dependencies = [ - "cfg-if", - "once_cell", -] - -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - -[[package]] -name = "tinyvec" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "022db8904dfa342efe721985167e9fcd16c29b226db4397ed752a761cfce81e8" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "toml" -version = "0.8.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" -dependencies = [ - "serde", - "serde_spanned", - "toml_datetime", - "toml_edit", -] - -[[package]] -name = "toml_datetime" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" -dependencies = [ - "serde", -] - -[[package]] -name = "toml_edit" -version = "0.22.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" -dependencies = [ - "indexmap", - "serde", - "serde_spanned", - "toml_datetime", - "winnow", -] - -[[package]] -name = "tracing" -version = "0.1.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.28" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "tracing-core" -version = "0.1.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" -dependencies = [ - "once_cell", - "valuable", -] - -[[package]] -name = "tracing-log" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3" -dependencies = [ - "log", - "once_cell", - "tracing-core", -] - -[[package]] -name = "tracing-subscriber" -version = "0.3.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008" -dependencies = [ - "matchers", - "nu-ansi-term", - "once_cell", - "parking_lot", - "regex", - "sharded-slab", - "smallvec", - "thread_local", - "tracing", - "tracing-core", - "tracing-log", -] - -[[package]] -name = "tracing-tracy" -version = "0.11.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eaa1852afa96e0fe9e44caa53dc0bd2d9d05e0f2611ce09f97f8677af56e4ba" -dependencies = [ - "tracing-core", - "tracing-subscriber", - "tracy-client 0.18.0", -] - -[[package]] -name = "tracy-client" -version = "0.17.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73202d787346a5418f8222eddb5a00f29ea47caf3c7d38a8f2f69f8455fa7c7e" -dependencies = [ - "loom", - "once_cell", - "tracy-client-sys", -] - -[[package]] -name = "tracy-client" -version = "0.18.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d90a2c01305b02b76fdd89ac8608bae27e173c829a35f7d76a345ab5d33836db" -dependencies = [ - "loom", - "once_cell", - "tracy-client-sys", -] - -[[package]] -name = "tracy-client-sys" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69fff37da548239c3bf9e64a12193d261e8b22b660991c6fd2df057c168f435f" -dependencies = [ - "cc", - "windows-targets 0.52.6", -] - -[[package]] -name = "trybuild" -version = "1.0.101" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8dcd332a5496c026f1e14b7f3d2b7bd98e509660c04239c58b0ba38a12daded4" -dependencies = [ - "glob", - "serde", - "serde_derive", - "serde_json", - "target-triple", - "termcolor", - "toml", -] - -[[package]] -name = "unarray" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaea85b334db583fe3274d12b4cd1880032beab409c0d774be044d4480ab9a94" - -[[package]] -name = "unicode-ident" -version = "1.0.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" - -[[package]] -name = "uuid" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "744018581f9a3454a9e15beb8a33b017183f1e7c0cd170232a2d1453b23a51c4" - -[[package]] -name = "valuable" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" - -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasite" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" - -[[package]] -name = "wasm-bindgen" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5" -dependencies = [ - "cfg-if", - "once_cell", - "rustversion", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6" -dependencies = [ - "bumpalo", - "log", - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de" -dependencies = [ - "proc-macro2", - "quote", - "syn", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.100" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "wayland-backend" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "056535ced7a150d45159d3a8dc30f91a2e2d588ca0b23f70e56033622b8016f6" -dependencies = [ - "cc", - "downcast-rs", - "rustix", - "scoped-tls", - "smallvec", - "wayland-sys", -] - -[[package]] -name = "wayland-client" -version = "0.31.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b66249d3fc69f76fd74c82cc319300faa554e9d865dab1f7cd66cc20db10b280" -dependencies = [ - "bitflags 2.8.0", - "rustix", - "wayland-backend", - "wayland-scanner", -] - -[[package]] -name = "wayland-csd-frame" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" -dependencies = [ - "bitflags 2.8.0", - "cursor-icon", - "wayland-backend", -] - -[[package]] -name = "wayland-cursor" -version = "0.31.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32b08bc3aafdb0035e7fe0fdf17ba0c09c268732707dca4ae098f60cb28c9e4c" -dependencies = [ - "rustix", - "wayland-client", - "xcursor", -] - -[[package]] -name = "wayland-protocols" -version = "0.32.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7cd0ade57c4e6e9a8952741325c30bf82f4246885dca8bf561898b86d0c1f58e" -dependencies = [ - "bitflags 2.8.0", - "wayland-backend", - "wayland-client", - "wayland-scanner", - "wayland-server", -] - -[[package]] -name = "wayland-protocols-misc" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da2e42969764e469a115d4bb1c16e9588ef8b75b127ba7a2c9ddf1e140b25ca7" -dependencies = [ - "bitflags 2.8.0", - "wayland-backend", - "wayland-protocols", - "wayland-scanner", - "wayland-server", -] - -[[package]] -name = "wayland-protocols-wlr" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "782e12f6cd923c3c316130d56205ebab53f55d6666b7faddfad36cecaeeb4022" -dependencies = [ - "bitflags 2.8.0", - "wayland-backend", - "wayland-client", - "wayland-protocols", - "wayland-scanner", - "wayland-server", -] - -[[package]] -name = "wayland-scanner" -version = "0.31.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597f2001b2e5fc1121e3d5b9791d3e78f05ba6bfa4641053846248e3a13661c3" -dependencies = [ - "proc-macro2", - "quick-xml", - "quote", -] - -[[package]] -name = "wayland-server" -version = "0.31.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c89532cc712a2adb119eb4d09694b402576052254d0bb284f82ac1c47fb786ad" -dependencies = [ - "bitflags 2.8.0", - "downcast-rs", - "io-lifetimes", - "rustix", - "wayland-backend", - "wayland-scanner", -] - -[[package]] -name = "wayland-sys" -version = "0.31.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efa8ac0d8e8ed3e3b5c9fc92c7881406a268e11555abe36493efabe649a29e09" -dependencies = [ - "dlib", - "log", - "pkg-config", -] - -[[package]] -name = "web-sys" -version = "0.3.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "whoami" -version = "1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "372d5b87f58ec45c384ba03563b03544dc5fadc3983e434b286913f5b4a9bb6d" -dependencies = [ - "redox_syscall", - "wasite", - "web-sys", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6" -dependencies = [ - "windows-core", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-core" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99" -dependencies = [ - "windows-implement", - "windows-interface", - "windows-result", - "windows-strings", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-implement" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "windows-interface" -version = "0.58.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "windows-result" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-strings" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" -dependencies = [ - "windows-result", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winnow" -version = "0.6.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8d71a593cc5c42ad7876e2c1fda56f314f3754c084128833e64f1345ff8a03a" -dependencies = [ - "memchr", -] - -[[package]] -name = "wprs" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrayref", - "bimap", - "bpaf", - "bytemuck", - "criterion", - "crossbeam-channel", - "divbuf", - "enum-as-inner", - "fallible-iterator", - "home", - "itertools 0.13.0", - "lagoon", - "merkle_hash", - "nix", - "num_enum", - "optional_struct", - "png", - "proptest", - "rkyv", - "ron", - "serde", - "serde_derive", - "serde_json", - "smithay", - "smithay-client-toolkit", - "static_assertions", - "sysctl", - "tracing", - "tracing-subscriber", - "tracing-tracy", - "tracy-client 0.17.6", - "trybuild", - "whoami", - "x11rb", - "zstd", -] - -[[package]] -name = "x11rb" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12" -dependencies = [ - "gethostname", - "rustix", - "x11rb-protocol", -] - -[[package]] -name = "x11rb-protocol" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d" - -[[package]] -name = "xcursor" -version = "0.3.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ef33da6b1660b4ddbfb3aef0ade110c8b8a781a3b6382fa5f2b5b040fd55f61" - -[[package]] -name = "xkbcommon" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e" -dependencies = [ - "libc", - "memmap2 0.8.0", - "xkeysym", -] - -[[package]] -name = "xkbcommon" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d66ca9352cbd4eecbbc40871d8a11b4ac8107cfc528a6e14d7c19c69d0e1ac9" -dependencies = [ - "libc", - "memmap2 0.9.5", - "xkeysym", -] - -[[package]] -name = "xkeysym" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" -dependencies = [ - "bytemuck", -] - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "zstd" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcf2b778a664581e31e389454a7072dab1647606d44f7feea22cd5abb9c9f3f9" -dependencies = [ - "zstd-safe", -] - -[[package]] -name = "zstd-safe" -version = "7.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a3ab4db68cea366acc5c897c7b4d4d1b8994a9cd6e6f841f8964566a419059" -dependencies = [ - "zstd-sys", -] - -[[package]] -name = "zstd-sys" -version = "2.0.13+zstd.1.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38ff0f21cfee8f97d94cef41359e0c89aa6113028ab0291aa8ca0038995a95aa" -dependencies = [ - "cc", - "pkg-config", -] \ No newline at end of file diff --git a/unorganized/pkgs/programs/wprs/default.nix b/unorganized/pkgs/programs/wprs/default.nix deleted file mode 100644 index 2d67994..0000000 --- a/unorganized/pkgs/programs/wprs/default.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - lib, - rustPlatform, - fetchFromGitHub, - pkg-config, - libxkbcommon, - python3, - runCommand, - wprs, -}: -rustPlatform.buildRustPackage { - pname = "wprs"; - version = "0-unstable-2025-04-16"; - - src = fetchFromGitHub { - owner = "wayland-transpositor"; - repo = "wprs"; - rev = "dfc1385bcb73734cd0d05a7e353522983c236562"; - hash = "sha256-MrfYrKAVFoT453B2zED6Ax2coZ/KZ7CWYdZCx469Q/4="; - }; - - nativeBuildInputs = [ - pkg-config - ]; - - buildInputs = [ - libxkbcommon - (python3.withPackages (pp: with pp; [ psutil ])) - ]; - - useFetchCargoVendor = true; - cargoHash = "sha256-01PTfgDeagC72z8XADXEn5Aio6UWQAAYgDP4zKFTPpY="; - - preFixup = '' - cp wprs "$out/bin/wprs" - ''; - - passthru.tests.sanity = runCommand "wprs-sanity" { nativeBuildInputs = [ wprs ]; } '' - ${wprs}/bin/wprs -h > /dev/null && touch $out - ''; - - meta = with lib; { - description = "rootless remote desktop access for remote Wayland"; - license = licenses.asl20; - maintainers = with maintainers; [ mksafavi ]; - platforms = [ "x86_64-linux" ]; # The aarch64-linux support is not implemented in upstream yet. Also, the darwin platform is not supported as it requires wayland. - homepage = "https://github.com/wayland-transpositor/wprs"; - mainProgram = "wprs"; - }; -} diff --git a/unorganized/shell-modules/default.nix b/unorganized/shell-modules/default.nix deleted file mode 100644 index 8c70eb9..0000000 --- a/unorganized/shell-modules/default.nix +++ /dev/null @@ -1,54 +0,0 @@ -{ - nixpkgs, - flake-utils, - ... -}: - -let - imports = [ - ./shell.nix - ./languages/python.nix - ./languages/rust.nix - ./utilities/cuda.nix - ./utilities/jupyter.nix - ]; -in -{ - - mkShell = - attrs: - (flake-utils.lib.eachDefaultSystem ( - system: - let - pkgs = import nixpkgs { - inherit system; - config.allowUnfree = true; - }; - evaluated = - (nixpkgs.lib.evalModules { - modules = [ attrs ] ++ imports; - specialArgs = { - pkgs = pkgs; - }; - }).config; - recUpdate = nixpkgs.lib.recursiveUpdate; - libPackages = evaluated.libPackages pkgs; - shell = recUpdate { - env = - evaluated.env - // ( - if (libPackages != [ ]) then - { - LD_LIBRARY_PATH = nixpkgs.lib.makeLibraryPath libPackages; - } - else - { } - ); - packages = evaluated.packages ++ (evaluated.extraPackages pkgs) ++ libPackages; - } evaluated.override; - in - { - devShells.default = pkgs.mkShell shell; - } - )); -} diff --git a/unorganized/shell-modules/languages/python.nix b/unorganized/shell-modules/languages/python.nix deleted file mode 100644 index e312b1c..0000000 --- a/unorganized/shell-modules/languages/python.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: - -with lib; -let - packages = config.python.packages; - pythonPackage = pkgs.python3.withPackages packages; -in -{ - options.python = { - enable = mkEnableOption "Python"; - packages = mkOption { - type = types.functionTo (types.listOf types.package) // { - merge = - loc: defs: p: - lib.concatMap (def: (def.value p)) defs; - }; - default = p: [ ]; - description = "Python packages to install"; - }; - # TODO: Add option to directly read from requirements.txt, maybe with mach-nix - }; - - config = mkIf config.python.enable { - packages = [ - pythonPackage - ]; - - env.PYTHONINTERPRETER = "${pythonPackage}/bin/python"; - }; -} diff --git a/unorganized/shell-modules/languages/rust.nix b/unorganized/shell-modules/languages/rust.nix deleted file mode 100644 index cb1c3cd..0000000 --- a/unorganized/shell-modules/languages/rust.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: - -with lib; -let - rustPackage = pkgs.rustc; -in -{ - options.rust = { - enable = mkEnableOption "Rust"; - # TODO: Add option to specify toolchain file - # See https://ayats.org/blog/nix-rustup - }; - - config = mkIf config.rust.enable { - packages = with pkgs; [ - rustPackage - cargo - clippy - rustfmt - cargo-audit - - bacon - evcxr - - # TODO: Might be needed for bindgen - # rustPlatform.bindgenHook - # pkg-config - ]; - - # env.RUST_SRC_PATH = "${rustPackage}/lib/rustlib/src/rust/library"; - }; -} diff --git a/unorganized/shell-modules/shell.nix b/unorganized/shell-modules/shell.nix deleted file mode 100644 index 27981b7..0000000 --- a/unorganized/shell-modules/shell.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ lib, ... }: - -with lib; -{ - options = { - env = mkOption { - type = types.attrsOf types.str; - default = { }; - }; - - packages = mkOption { - type = types.listOf types.package; - default = [ ]; - description = "Packages to install"; - }; - - extraPackages = mkOption { - type = types.functionTo (types.listOf types.package) // { - merge = - loc: defs: p: - lib.concatMap (def: (def.value p)) defs; - }; - default = p: [ ]; - description = "Extra packages to install"; - }; - - libPackages = mkOption { - type = types.functionTo (types.listOf types.package) // { - merge = - loc: defs: p: - lib.concatMap (def: (def.value p)) defs; - }; - default = p: [ ]; - description = "Packages to install and add to library path"; - }; - - override = mkOption { - type = types.attrs; - default = { }; - description = "Settings in the mkShell call to override"; - }; - }; -} diff --git a/unorganized/shell-modules/utilities/cuda.nix b/unorganized/shell-modules/utilities/cuda.nix deleted file mode 100644 index 91748d8..0000000 --- a/unorganized/shell-modules/utilities/cuda.nix +++ /dev/null @@ -1,15 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -{ - options.cuda = { - enable = mkEnableOption "CUDA"; - }; - - config = mkIf config.cuda.enable { - }; -} diff --git a/unorganized/shell-modules/utilities/jupyter.nix b/unorganized/shell-modules/utilities/jupyter.nix deleted file mode 100644 index 3c9589d..0000000 --- a/unorganized/shell-modules/utilities/jupyter.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -{ - options.jupyter = { - enable = mkEnableOption "Jupyter"; - }; - - config = mkIf config.jupyter.enable { - python.enable = mkDefault true; - python.packages = - p: with p; [ - jupyter - notebook - ipykernel - ]; - }; -} diff --git a/unorganized/user-modules/bluetuith/default.nix b/unorganized/user-modules/bluetuith/default.nix deleted file mode 100644 index 4c986fd..0000000 --- a/unorganized/user-modules/bluetuith/default.nix +++ /dev/null @@ -1,28 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.bluetuith; -in -{ - options.modules.bluetuith = { - enable = mkEnableOption "bluetuith"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ bluetuith ]; - - # Add nix tree - xdg.desktopEntries.bluetuith = { - exec = "${pkgs.bluetuith}/bin/bluetuith"; - name = "Bluetuith"; - terminal = true; - type = "Application"; - }; - }; -} diff --git a/unorganized/user-modules/browser/default.nix b/unorganized/user-modules/browser/default.nix deleted file mode 100644 index 2443a80..0000000 --- a/unorganized/user-modules/browser/default.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -{ - imports = [ - ./firefox/default.nix - ./qutebrowser/default.nix - ]; - - options.default.browser = mkOption { - type = types.str; - default = ""; - description = "Default browser"; - }; - - config = { - xdg.mimeApps = { - enable = true; - - defaultApplications = { - "text/html" = "${config.default.browser}"; - "x-scheme-handler/http" = "${config.default.browser}"; - "x-scheme-handler/https" = "${config.default.browser}"; - "x-scheme-handler/about" = "${config.default.browser}"; - "x-scheme-handler/unknown" = "${config.default.browser}"; - }; - }; - }; -} diff --git a/unorganized/user-modules/browser/firefox/default.nix b/unorganized/user-modules/browser/firefox/default.nix deleted file mode 100644 index 7611f43..0000000 --- a/unorganized/user-modules/browser/firefox/default.nix +++ /dev/null @@ -1,76 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.firefox; -in -{ - options.modules.firefox = { - enable = lib.mkEnableOption "firefox"; - default = lib.mkEnableOption "default"; - }; - - config = lib.mkIf cfg.enable { - default.browser = mkIf cfg.default "firefox.desktop"; - - programs.firefox = { - enable = true; - - policies = { - AppAutoUpdate = false; - BlockAboutAddons = false; - BlockAboutConfig = true; - BlockAboutProfiles = true; - DisableAppUpdate = true; - DisableFeedbackCommands = true; - DisableMasterPasswordCreation = true; - DisablePocket = true; - DisableProfileImport = true; - DisableProfileRefresh = true; - DisableSetDesktopBackground = true; - DisableTelemetry = true; - DisplayBookmarksToolbar = "never"; - DisplayMenuBar = "never"; - DNSOverHTTPS = { - Enabled = false; - }; - DontCheckDefaultBrowser = true; - PasswordManagerEnabled = false; - TranslateEnabled = true; - UseSystemPrintDialog = true; - }; - - profiles.nixos = { - search.default = "ddg"; - - extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ - ublock-origin - ]; - - # Theming - userChrome = readFile ( - pkgs.replaceVars ./userChrome.css { - colors = config.desktop.theming.colorsCSS; - } - ); - - settings = { - "browser.tabs.inTitlebar" = 0; - "extensions.autoDisableScopes" = 0; - "devtools.chrome.enabled" = true; - "devtools.debugger.remote-enabled" = true; - "toolkit.legacyUserProfileCustomizations.stylesheets" = true; - }; - - # Force overwriting configuration file - search.force = true; - containersForce = true; - }; - }; - }; -} diff --git a/unorganized/user-modules/browser/firefox/userChrome.css b/unorganized/user-modules/browser/firefox/userChrome.css deleted file mode 100644 index 821ba92..0000000 --- a/unorganized/user-modules/browser/firefox/userChrome.css +++ /dev/null @@ -1,73 +0,0 @@ -/* Import theme colors */ -@colors@ - -/* Configure titlebar */ -#titlebar { - /* Add consistent margins to tab bar */ - padding: 0 2px !important; - - /* Add emphasized color to background of tab bar */ - background-color: var(--nix-color-bg-status) !important; - - /* Set correct text color */ - color: var(--nix-color-fg) !important; -} - -.tab-background:is([selected], [multiselected]) { - /* Set correct background color */ - background-color: var(--nix-color-bg) !important; -} - -.tab-content { - /* Set correct text color */ - color: var(--nix-color-fg) !important; -} - -/* Configure navigation bar */ -#nav-bar { - /* Set correct background color */ - background-color: var(--nix-color-bg) !important; - - /* Set correct text color */ - color: var(--nix-color-fg) !important; -} - -#urlbar { - /* Set correct text color */ - color: var(--nix-color-fg) !important; -} - -#urlbar[open]>#urlbar-background { - /* Set correct background color when opened */ - background-color: var(--nix-color-bg) !important; - - /* Use same box-shadow as tabs when opened */ - border: none !important; - box-shadow: 0 0 4px rgba(0, 0, 0, .4) !important; -} - -#urlbar[focused]:not([suppress-focus-border])>#urlbar-background { - /* Set better outline for focused urlbar */ - outline-color: var(--nix-color-border-focused) !important; - outline-width: 1px !important; - outline-offset: 0 !important; -} - -#urlbar-background { - /* Set the correct background color */ - background-color: var(--nix-color-bg-status) !important; -} - -/* Configure popups */ -panelview { - /* Set correct background color for popups */ - background-color: var(--nix-color-bg) !important; - - /* Set correct text color */ - color: var(--nix-color-fg) !important; -} - -menupopup { - /* Set correct background color for context menus */ - --panel-background: var(--nix-color-bg) !important; -} \ No newline at end of file diff --git a/unorganized/user-modules/browser/firefox/userContent.css b/unorganized/user-modules/browser/firefox/userContent.css deleted file mode 100644 index e69de29..0000000 diff --git a/unorganized/user-modules/browser/qutebrowser/default.nix b/unorganized/user-modules/browser/qutebrowser/default.nix deleted file mode 100644 index e454627..0000000 --- a/unorganized/user-modules/browser/qutebrowser/default.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.qutebrowser; - theme = config.desktop.theming; -in -{ - options.modules.qutebrowser = { - enable = mkEnableOption "qutebrowser"; - default = mkEnableOption "default"; - }; - - config = mkIf cfg.enable { - default.browser = mkIf cfg.default "org.qutebrowser.qutebrowser.desktop"; - - programs.qutebrowser = { - enable = true; - - extraConfig = '' - config.set("completion.web_history.max_items", 256) - config.set("colors.webpage.darkmode.enabled", False) - config.set("colors.webpage.preferred_color_scheme", "${if theme.darkMode then "dark" else "light"}") - config.set("fonts.default_family", "${theme.fonts.interface.name}") - config.set("fonts.default_size", "${toString theme.fonts.interface.recommendedSize}pt") - ''; - }; - }; -} diff --git a/unorganized/user-modules/btop/default.nix b/unorganized/user-modules/btop/default.nix deleted file mode 100644 index f0e1efc..0000000 --- a/unorganized/user-modules/btop/default.nix +++ /dev/null @@ -1,368 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.btop; - colors = config.desktop.theming.schemeColors; -in -{ - options.modules.btop = { - enable = mkEnableOption "btop"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ btop ]; - - xdg.configFile."btop/btop.conf" = { - enable = true; - text = '' - #? Config file for btop v. 1.4.0 - - #* Name of a btop++/bpytop/bashtop formatted ".theme" file, "Default" and "TTY" for builtin themes. - #* Themes should be placed in "../share/btop/themes" relative to binary or "$HOME/.config/btop/themes" - color_theme = "nixos" - - #* If the theme set background should be shown, set to False if you want terminal background transparency. - theme_background = True - - #* Sets if 24-bit truecolor should be used, will convert 24-bit colors to 256 color (6x6x6 color cube) if false. - truecolor = True - - #* Set to true to force tty mode regardless if a real tty has been detected or not. - #* Will force 16-color mode and TTY theme, set all graph symbols to "tty" and swap out other non tty friendly symbols. - force_tty = False - - #* Define presets for the layout of the boxes. Preset 0 is always all boxes shown with default settings. Max 9 presets. - #* Format: "box_name:P:G,box_name:P:G" P=(0 or 1) for alternate positions, G=graph symbol to use for box. - #* Use whitespace " " as separator between different presets. - #* Example: "cpu:0:default,mem:0:tty,proc:1:default cpu:0:braille,proc:0:tty" - presets = "cpu:1:default,proc:0:default cpu:0:default,mem:0:default,net:0:default cpu:0:block,net:0:tty" - - #* Set to True to enable "h,j,k,l,g,G" keys for directional control in lists. - #* Conflicting keys for h:"help" and k:"kill" is accessible while holding shift. - vim_keys = False - - #* Rounded corners on boxes, is ignored if TTY mode is ON. - rounded_corners = False - - #* Default symbols to use for graph creation, "braille", "block" or "tty". - #* "braille" offers the highest resolution but might not be included in all fonts. - #* "block" has half the resolution of braille but uses more common characters. - #* "tty" uses only 3 different symbols but will work with most fonts and should work in a real TTY. - #* Note that "tty" only has half the horizontal resolution of the other two, so will show a shorter historical view. - graph_symbol = "braille" - - # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". - graph_symbol_cpu = "default" - - # Graph symbol to use for graphs in gpu box, "default", "braille", "block" or "tty". - graph_symbol_gpu = "default" - - # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". - graph_symbol_mem = "default" - - # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". - graph_symbol_net = "default" - - # Graph symbol to use for graphs in cpu box, "default", "braille", "block" or "tty". - graph_symbol_proc = "default" - - #* Manually set which boxes to show. Available values are "cpu mem net proc" and "gpu0" through "gpu5", separate values with whitespace. - shown_boxes = "cpu net proc mem" - - #* Update time in milliseconds, recommended 2000 ms or above for better sample times for graphs. - update_ms = 500 - - #* Processes sorting, "pid" "program" "arguments" "threads" "user" "memory" "cpu lazy" "cpu direct", - #* "cpu lazy" sorts top process over time (easier to follow), "cpu direct" updates top process directly. - proc_sorting = "cpu lazy" - - #* Reverse sorting order, True or False. - proc_reversed = False - - #* Show processes as a tree. - proc_tree = False - - #* Use the cpu graph colors in the process list. - proc_colors = True - - #* Use a darkening gradient in the process list. - proc_gradient = True - - #* If process cpu usage should be of the core it's running on or usage of the total available cpu power. - proc_per_core = False - - #* Show process memory as bytes instead of percent. - proc_mem_bytes = True - - #* Show cpu graph for each process. - proc_cpu_graphs = True - - #* Use /proc/[pid]/smaps for memory information in the process info box (very slow but more accurate) - proc_info_smaps = False - - #* Show proc box on left side of screen instead of right. - proc_left = False - - #* (Linux) Filter processes tied to the Linux kernel(similar behavior to htop). - proc_filter_kernel = False - - #* In tree-view, always accumulate child process resources in the parent process. - proc_aggregate = False - - #* Sets the CPU stat shown in upper half of the CPU graph, "total" is always available. - #* Select from a list of detected attributes from the options menu. - cpu_graph_upper = "Auto" - - #* Sets the CPU stat shown in lower half of the CPU graph, "total" is always available. - #* Select from a list of detected attributes from the options menu. - cpu_graph_lower = "Auto" - - #* If gpu info should be shown in the cpu box. Available values = "Auto", "On" and "Off". - show_gpu_info = "Auto" - - #* Toggles if the lower CPU graph should be inverted. - cpu_invert_lower = True - - #* Set to True to completely disable the lower CPU graph. - cpu_single_graph = False - - #* Show cpu box at bottom of screen instead of top. - cpu_bottom = False - - #* Shows the system uptime in the CPU box. - show_uptime = True - - #* Show cpu temperature. - check_temp = True - - #* Which sensor to use for cpu temperature, use options menu to select from list of available sensors. - cpu_sensor = "Auto" - - #* Show temperatures for cpu cores also if check_temp is True and sensors has been found. - show_coretemp = True - - #* Set a custom mapping between core and coretemp, can be needed on certain cpus to get correct temperature for correct core. - #* Use lm-sensors or similar to see which cores are reporting temperatures on your machine. - #* Format "x:y" x=core with wrong temp, y=core with correct temp, use space as separator between multiple entries. - #* Example: "4:0 5:1 6:3" - cpu_core_map = "" - - #* Which temperature scale to use, available values: "celsius", "fahrenheit", "kelvin" and "rankine". - temp_scale = "celsius" - - #* Use base 10 for bits/bytes sizes, KB = 1000 instead of KiB = 1024. - base_10_sizes = False - - #* Show CPU frequency. - show_cpu_freq = True - - #* Draw a clock at top of screen, formatting according to strftime, empty string to disable. - #* Special formatting: /host = hostname | /user = username | /uptime = system uptime - clock_format = "%X" - - #* Update main ui in background when menus are showing, set this to false if the menus is flickering too much for comfort. - background_update = True - - #* Custom cpu model name, empty string to disable. - custom_cpu_name = "" - - #* Optional filter for shown disks, should be full path of a mountpoint, separate multiple values with whitespace " ". - #* Begin line with "exclude=" to change to exclude filter, otherwise defaults to "most include" filter. Example: disks_filter="exclude=/boot /home/user". - disks_filter = "" - - #* Show graphs instead of meters for memory values. - mem_graphs = True - - #* Show mem box below net box instead of above. - mem_below_net = False - - #* Count ZFS ARC in cached and available memory. - zfs_arc_cached = True - - #* If swap memory should be shown in memory box. - show_swap = True - - #* Show swap as a disk, ignores show_swap value above, inserts itself after first disk. - swap_disk = True - - #* If mem box should be split to also show disks info. - show_disks = True - - #* Filter out non physical disks. Set this to False to include network disks, RAM disks and similar. - only_physical = True - - #* Read disks list from /etc/fstab. This also disables only_physical. - use_fstab = True - - #* Setting this to True will hide all datasets, and only show ZFS pools. (IO stats will be calculated per-pool) - zfs_hide_datasets = False - - #* Set to true to show available disk space for privileged users. - disk_free_priv = False - - #* Toggles if io activity % (disk busy time) should be shown in regular disk usage view. - show_io_stat = True - - #* Toggles io mode for disks, showing big graphs for disk read/write speeds. - io_mode = True - - #* Set to True to show combined read/write io graphs in io mode. - io_graph_combined = False - - #* Set the top speed for the io graphs in MiB/s (100 by default), use format "mountpoint:speed" separate disks with whitespace " ". - #* Example: "/mnt/media:100 /:20 /boot:1". - io_graph_speeds = "" - - #* Set fixed values for network graphs in Mebibits. Is only used if net_auto is also set to False. - net_download = 100 - - net_upload = 100 - - #* Use network graphs auto rescaling mode, ignores any values set above and rescales down to 10 Kibibytes at the lowest. - net_auto = True - - #* Sync the auto scaling for download and upload to whichever currently has the highest scale. - net_sync = True - - #* Starts with the Network Interface specified here. - net_iface = "" - - #* Show battery stats in top right if battery is present. - show_battery = False - - #* Which battery to use if multiple are present. "Auto" for auto detection. - selected_battery = "Auto" - - #* Show power stats of battery next to charge indicator. - show_battery_watts = True - - #* Set loglevel for "~/.config/btop/btop.log" levels are: "ERROR" "WARNING" "INFO" "DEBUG". - #* The level set includes all lower levels, i.e. "DEBUG" will show all logging info. - log_level = "WARNING" - - #* Measure PCIe throughput on NVIDIA cards, may impact performance on certain cards. - nvml_measure_pcie_speeds = True - - #* Horizontally mirror the GPU graph. - gpu_mirror_graph = True - - #* Custom gpu0 model name, empty string to disable. - custom_gpu_name0 = "" - - #* Custom gpu1 model name, empty string to disable. - custom_gpu_name1 = "" - - #* Custom gpu2 model name, empty string to disable. - custom_gpu_name2 = "" - - #* Custom gpu3 model name, empty string to disable. - custom_gpu_name3 = "" - - #* Custom gpu4 model name, empty string to disable. - custom_gpu_name4 = "" - - #* Custom gpu5 model name, empty string to disable. - custom_gpu_name5 = "" - ''; - }; - - xdg.configFile."btop/themes/nixos.theme" = { - enable = true; - text = with colors; '' - # Main background, empty for terminal default, need to be empty if you want transparent background - theme[main_bg]="#${base00}" - - # Main text color - theme[main_fg]="#${base05}" - - # Title color for boxes - theme[title]="#${base05}" - - # Highlight color for keyboard shortcuts - theme[hi_fg]="#${base0D}" - - # Background color of selected item in processes box - theme[selected_bg]="#${base03}" - - # Foreground color of selected item in processes box - theme[selected_fg]="#${base0D}" - - # Color of inactive/disabled text - theme[inactive_fg]="#8c8fa1" - - # Color of text appearing on top of graphs, i.e uptime and current network graph scaling - theme[graph_text]="#${base06}" - - # Background color of the percentage meters - theme[meter_bg]="#${base03}" - - # Misc colors for processes box including mini cpu graphs, details memory graph and details status text - theme[proc_misc]="#${base06}" - - # CPU, Memory, Network, Proc box outline colors - theme[cpu_box]="#${base0E}" #Mauve - theme[mem_box]="#${base0B}" #Green - theme[net_box]="#e64553" #Maroon - theme[proc_box]="#${colors.base0D}" #Blue - - # Box divider line and small boxes line color - theme[div_line]="#9ca0b0" - - # Temperature graph color (Green -> Yellow -> Red) - theme[temp_start]="#${base0B}" - theme[temp_mid]="#${base0A}" - theme[temp_end]="#${base08}" - - # CPU graph colors (Teal -> Lavender) - theme[cpu_start]="#${base0C}" - theme[cpu_mid]="#209fb5" - theme[cpu_end]="#${base07}" - - # Mem/Disk free meter (Mauve -> Lavender -> Blue) - theme[free_start]="#${base0E}" - theme[free_mid]="#${base07}" - theme[free_end]="#${base0D}" - - # Mem/Disk cached meter (Sapphire -> Lavender) - theme[cached_start]="#209fb5" - theme[cached_mid]="#${base0D}" - theme[cached_end]="#${base07}" - - # Mem/Disk available meter (Peach -> Red) - theme[available_start]="#${base09}" - theme[available_mid]="#e64553" - theme[available_end]="#${base08}" - - # Mem/Disk used meter (Green -> Sky) - theme[used_start]="#${base0B}" - theme[used_mid]="#${base0C}" - theme[used_end]="#04a5e5" - - # Download graph colors (Peach -> Red) - theme[download_start]="#${base09}" - theme[download_mid]="#e64553" - theme[download_end]="#${base08}" - - # Upload graph colors (Green -> Sky) - theme[upload_start]="#${base0B}" - theme[upload_mid]="#${base0C}" - theme[upload_end]="#04a5e5" - - # Process box color gradient for threads, mem and cpu usage (Sapphire -> Mauve) - theme[process_start]="#209fb5" - theme[process_mid]="#${base07}" - theme[process_end]="#${base0E}" - ''; - }; - - modules.shell.aliases = { - top = "btop"; - }; - }; -} diff --git a/unorganized/user-modules/default.nix b/unorganized/user-modules/default.nix deleted file mode 100644 index 4c3ccad..0000000 --- a/unorganized/user-modules/default.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - ... -}: - -{ - imports = [ - # Import all modules - ./bluetuith/default.nix - ./browser/default.nix - ./btop/default.nix - ./desktop/default.nix - ./development/default.nix - ./discord/default.nix - ./eduvpn/default.nix - ./feishin/default.nix - ./fontconfig/default.nix - ./gaming/default.nix - ./git/default.nix - ./keyring/default.nix - ./mako/default.nix - ./neovim/default.nix - ./obsidian/default.nix - ./rofi/default.nix - ./rofi/rofi-rbw.nix - ./scripts/default.nix - ./shell/default.nix - ./shell/bash.nix - ./shell/fish.nix - ./spotify/default.nix - ./terminal/default.nix - ./terminal/foot/default.nix - ./vscode/default.nix - ./whatsapp/default.nix - ./wprs/default.nix - ./winbox/default.nix - ./xpra/default.nix - ./zathura/default.nix - - # Import unfree helper - ../modules/unfree/default.nix - ]; -} diff --git a/unorganized/user-modules/desktop/custom/bar/waybar.nix b/unorganized/user-modules/desktop/custom/bar/waybar.nix deleted file mode 100644 index 0f719d4..0000000 --- a/unorganized/user-modules/desktop/custom/bar/waybar.nix +++ /dev/null @@ -1,164 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.waybar; - theme = config.desktop.theming; - colors = theme.colors; -in -{ - options.modules.waybar = { - enable = mkEnableOption "waybar"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - pulsemixer - playerctl - networkmanagerapplet # TODO: Move - ]; - - modules.desktop.reloadScript = '' - # if ${pkgs.procps}/bin/pgrep waybar; then - # ${pkgs.procps}/bin/pkill waybar - # fi - ${pkgs.waybar}/bin/waybar & - ''; - - programs.waybar = { - enable = true; - systemd.enable = false; - settings = { - mainBar = { - layer = "top"; - spacing = 16; - modules-left = [ "river/tags" ]; - modules-center = [ - #"river/window" - "mpris" - ]; - modules-right = [ - "tray" - "bluetooth" - "network" - "pulseaudio" - "battery" - "clock" - ]; - "river/window" = { - max-length = 50; - }; - "river/tags" = { - tag-labels = [ - "一" - "二" - "三" - "四" - "五" - "六" - "七" - "八" - "九" - ]; - disable-click = false; - }; - network = { - tooltip = false; - on-click = "wpa_gui"; - format-wifi = "直 {essid}"; # Spacing achieved using "Thin Space" - format-ethernet = "TODO"; - format-disconnected = "睊"; - }; - pulseaudio = { - tooltip = false; - format = "{icon}   {volume}%"; # Spacing achieved using "Thin Space" - #format-muted = ""; - format-muted = "{icon}  --%"; # Spacing achieved using "Thin Space" - format-icons = { - #headphone = ""; - #default = [ "" "" ]; - headphone = ""; - headphone-muted = ""; - default = [ - "" - "" - "" - ]; - }; - }; - battery = { - format = "{icon} {capacity}%"; # Spacing achieved using "Thin Space" - format-charging = " {capacity}%"; # Spacing achieved using "Thin Space" - #format-icons = [ "󰂎" "󰁺" "󰁻" "󰁼" "󰁽" "󰁾" "󰁿" "󰂀" "󰂁" "󰂂" "󰁹" ]; - format-icons = [ - "" - "" - "" - "" - "" - "" - "" - "" - "" - "" - "" - ]; - interval = 1; - }; - clock = { - #format = "󰅐 {:%H:%M}"; - #format = "   {:%H:%M}"; # Spacing achieved using "Thin Space" - format = "{:%H:%M}"; - }; - mpris = { - format = "{dynamic}"; - tooltip-format = ""; - interval = 1; - }; - bluetooth = { - tooltip = false; - format = "  {status}"; # Spacing achieved using "Thin Space" - format-connected = "  {device_alias}"; # Spacing achieved using "Thin Space" - }; - }; - }; - # TODO: Replace base03 color with named color - style = '' - window#waybar { - color: #${colors.fg}; - background-color: #${colors.bg}; - border-style: none none solid none; - border-width: ${toString theme.layout.borderSize}px; - border-color: #${colors.border-unfocused}; - font-size: 12px; - font-family: "${theme.fonts.monospace.name}"; - } - - .modules-right { - margin: 0 8px 0 0; - } - - #tags button { - color: #${theme.schemeColors.base03}; - padding: 0 5px 1px 5px; - border-radius: 0; - font-size: 16px; - font-family: "wenquanyi bitmap song"; - } - - #tags button.occupied { - color: #${colors.fg}; - } - - #tags button.focused { - color: #${colors.accent}; - } - ''; - }; - }; -} diff --git a/unorganized/user-modules/desktop/custom/default.nix b/unorganized/user-modules/desktop/custom/default.nix deleted file mode 100644 index 5274974..0000000 --- a/unorganized/user-modules/desktop/custom/default.nix +++ /dev/null @@ -1,89 +0,0 @@ -{ - lib, - pkgs, - config, - ... -}: - -with lib; -let - cfg = config.modules.desktop; -in -{ - imports = [ - # Import desktop environment modules - ./bar/waybar.nix - ./lock-screen/waylock.nix - ./window-manager/river.nix - ]; - - options.modules.desktop = { - wayland = mkEnableOption "wayland"; - # TODO: Find a nicer way to do this as this is also executed on startup - reloadScript = mkOption { - type = types.lines; - default = ""; - description = "Shell script to execute after reload/rebuild."; - }; - decorations = mkOption { - type = types.nullOr ( - types.enum [ - "csd" - "ssd" - ] - ); - default = null; - description = "Window decorations to use."; - }; - }; - - config = mkIf config.desktop.enable ( - lib.recursiveUpdate - { - # Ensure desktop related systemd services (xdg) have access to session variables. - systemd.user.sessionVariables = config.home.sessionVariables; - - home.packages = optionals cfg.wayland ( - with pkgs; - [ - wl-clipboard - wtype - grim - slurp - ] - ); - - home.activation = { - customReloadScript = lib.hm.dag.entryAfter [ "writeBoundary" ] ( - '' - #!${pkgs.bash}/bin/bash - '' - + cfg.reloadScript - ); - }; - - # home.file.".initrc" = { - # enable = true; - # executable = true; - # text = - # '' - # #!${pkgs.bash}/bin/bash - - # '' - # + cfg.initScript; - # }; - } - ( - # TODO: Move to dedicated module within desktop or maybe theming? - # if cfg.decorations == null then - # { } - # else - # { - # csd = { }; - # ssd = { }; - # } - # ."${cfg.decorations}" - { } - ) - ); -} diff --git a/unorganized/user-modules/desktop/custom/lock-screen/waylock.nix b/unorganized/user-modules/desktop/custom/lock-screen/waylock.nix deleted file mode 100644 index f87eb1a..0000000 --- a/unorganized/user-modules/desktop/custom/lock-screen/waylock.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - lib, - pkgs, - config, - ... -}: - -with lib; -let - cfg = config.modules.waylock; -in -{ - options.modules.waylock = { - enable = mkEnableOption "waylock"; - }; - - config = mkIf cfg.enable { - home.packages = (with pkgs; [ waylock ]); - }; -} diff --git a/unorganized/user-modules/desktop/custom/window-manager/river.nix b/unorganized/user-modules/desktop/custom/window-manager/river.nix deleted file mode 100644 index 8d7d07f..0000000 --- a/unorganized/user-modules/desktop/custom/window-manager/river.nix +++ /dev/null @@ -1,268 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -let - cfg = config.modules.river; -in -{ - options.modules.river.enable = lib.mkEnableOption "river"; - - # osConfig = lib.mkIf cfg.enable { - # programs.river.enable = true; - # }; - - config = lib.mkIf cfg.enable { - # Set desktop type to wayland - modules.desktop.wayland = true; - - # TODO: Move elsewhere and make keybindings more configurable - modules.rofi.enable = true; - - # TODO: Move elsewhere - home.packages = with pkgs; [ - brightnessctl - river-filtile - # owm - - udiskie # TODO: Move to USB module - ]; - - # Change desktop to execute river - desktop.initScript = '' - ${pkgs.river}/bin/river - ''; - - desktop.session.type = "wayland"; - desktop.session.desktop = "river"; - - # TODO: Fix this - # modules.desktop.reloadScript = '' - # ${pkgs.river}/bin/riverctl background-color 0x${config.theming.colors.bg} - # ''; - - # Update background after rebuild - # home.activation = { - # river = lib.hm.dag.entryBetween [ "reloadSystemd" ] [ "installPackages" ] '' - # # Close waybar - # PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill waybar - - # # Kill rivertile - # PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill rivertile - - # # Kill glpaper - # PATH="${pkgs.procps}/bin:$PATH" $DRY_RUN_CMD pkill glpaper - - # # Restart river - # PATH="${pkgs.river}/bin:${pkgs.systemd}/bin:${pkgs.waybar}/bin:$PATH" $DRY_RUN_CMD ~/.config/river/init - # ''; - # }; - - # River setup - wayland.windowManager.river = { - enable = true; - xwayland.enable = false; - systemd.enable = true; - settings = - let - layout = "filtile"; - layoutOptions = "-outer-padding ${toString config.desktop.theming.layout.windowPadding} -view-padding ${toString config.desktop.theming.layout.windowPadding} -main-ratio 0.5"; - modes = [ - "normal" - "locked" - ]; - tags = [ - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - ]; - waylockOptions = "-init-color 0x${colors.bg} -input-color 0x${colors.border-focused} -fail-color 0x${colors.bg}"; - - colors = config.desktop.theming.colors; - - # Quick pow function - pow2 = power: if power != 0 then 2 * (pow2 (power - 1)) else 1; - - # Modifiers - main = "Super"; - ssm = "Super+Shift"; - sas = "Super+Alt+Shift"; - sam = "Super+Alt"; - scm = "Super+Control"; - scam = "Super+Control+Alt"; - ssc = "Super+Shift+Control"; - in - { - default-layout = "${layout}"; - set-repeat = "50 300"; - xcursor-theme = "BreezeX-RosePine-Linux 24"; - keyboard-layout = "-options \"caps:escape\" us"; - - border-width = toString config.desktop.theming.layout.borderSize; - background-color = "0x${colors.bg}"; - border-color-focused = "0x${colors.fg}"; - border-color-unfocused = "0x${colors.border-unfocused}"; # TODO: Change to use named color; - border-color-urgent = "0x${colors.fg}"; - - # TODO: Make a desktop options for DE applications - spawn = [ - "\"${layout} ${layoutOptions}\"" - "waybar" # TODO: Decouple - # TODO: Generic background options - # "\"glpaper eDP-1 ${toString config.modules.glpaper.shader}\"" - "udiskie" - # TODO: Should this be part of the keyring configuration directly? - # "\"gnome-keyring-daemon --replace --components=pkcs11,secrets,ssh\"" - "wpaperd" - ]; - map = ( - lib.attrsets.recursiveUpdate - { - "-repeat".normal = { - # Basic utilities - "${main} Q" = "close"; - "${ssm} Return" = "spawn foot"; - - # Window focus - "${main} J" = "focus-view next"; - "${main} K" = "focus-view previous"; - - # Swap windows - "${ssm} J" = "swap next"; - "${ssm} K" = "swap previous"; - "${main} Return" = "zoom"; - - # Main ratio - "${main} H" = "send-layout-cmd ${layout} 'main-ratio -0.05'"; - "${main} L" = "send-layout-cmd ${layout} 'main-ratio +0.05'"; - - # Main count - "${ssm} H" = "send-layout-cmd ${layout} 'main-count +1'"; - "${ssm} L" = "send-layout-cmd ${layout} 'main-count -1'"; - - # Move floating windows - "${sam} H" = "move left 100"; - "${sam} J" = "move down 100"; - "${sam} K" = "move up 100"; - "${sam} L" = "move right 100"; - - # Resize floating windows - "${sas} H" = "resize horizontal -100"; - "${sas} J" = "resize vertical 100"; - "${sas} K" = "resize vertical -100"; - "${sas} L" = "resize horizontal 100"; - - # Toggle modes - "${main} Space" = "toggle-float"; - "${main} F" = "toggle-fullscreen"; - }; - normal = - { - # Basic utilities - "${ssm} E" = "exit"; - "${main} X " = "spawn \"waylock -fork-on-lock ${waylockOptions}\""; - "${main} P" = "spawn \"rofi -show drun\""; - "${ssm} P" = "spawn rofi-rbw"; - "${main} S" = - "spawn \"grim -g \\\"\\\$(slurp)\\\" ~/Images/Screenshots/\\\$(date +'%s_grim.png')\""; - - # Tags - "${main} 0" = "set-focused-tags ${toString (pow2 32 - 1)}"; - "${ssm} 0" = "set-view-tags ${toString (pow2 32 - 1)}"; - - # Orientation - "${main} Up" = "send-layout-cmd ${layout} \"main-location top\""; - "${main} Right" = "send-layout-cmd ${layout} \"main-location right\""; - "${main} Down" = "send-layout-cmd ${layout} \"main-location bottom\""; - "${main} Left" = "send-layout-cmd ${layout} \"main-location left\""; - - # Snap floating windows - "${scam} H" = "snap left"; - "${scam} J" = "snap down"; - "${scam} K" = "snap up"; - "${scam} L" = "snap right"; - } - // builtins.listToAttrs ( - builtins.concatLists ( - map (tag: [ - { - name = "${main} ${toString tag}"; - value = "set-focused-tags ${toString (pow2 (tag - 1))}"; - } - { - name = "${ssm} ${toString tag}"; - value = "set-view-tags ${toString (pow2 (tag - 1))}"; - } - { - name = "${scm} ${toString tag}"; - value = "toggle-focused-tags ${toString (pow2 (tag - 1))}"; - } - { - name = "${ssc} ${toString tag}"; - value = "toggle-view-tags ${toString (pow2 (tag - 1))}"; - } - ]) tags - ) - ); - } - ( - builtins.listToAttrs ( - map (mode: { - name = "${mode}"; - value = { - # Control volume - "None XF86AudioRaiseVolume" = "spawn \"pulsemixer --change-volume +5\""; - "None XF86AudioLowerVolume" = "spawn \"pulsemixer --change-volume -5\""; - "None XF86AudioMute" = "spawn \"pulsemixer --toggle-mute\""; - - # Control brightness - "None XF86MonBrightnessUp" = "spawn \"brightnessctl set +5%\""; - "None XF86MonBrightnessDown" = "spawn \"brightnessctl set 5%-\""; - - # Control music playback - "None XF86Messenger" = "spawn \"playerctl previous\""; - "None XF86Go" = "spawn \"playerctl play-pause\""; - "None Cancel" = "spawn \"playerctl next\""; - }; - }) modes - ) - ) - ); - map-pointer = { - normal = { - "${main} BTN_LEFT" = "move-view"; - "${main} BTN_RIGHT" = "resize-view"; - "${main} BTN_MIDDLE" = "toggle-float"; - }; - }; - input = { - "'*'" = { - accel-profile = "adaptive"; - pointer-accel = "0.5"; - scroll-factor = "0.8"; - }; - "'*Synaptics*'" = { - natural-scroll = "enabled"; - }; - }; - rule-add = { - "-app-id" = { - "'bar'" = "csd"; - "'*'" = "ssd"; - "'wpa_gui'" = "float"; - "'Xpra'" = "float"; - }; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/desktop/default.nix b/unorganized/user-modules/desktop/default.nix deleted file mode 100644 index 3441b9e..0000000 --- a/unorganized/user-modules/desktop/default.nix +++ /dev/null @@ -1,127 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - # Desktop configuration module - desktopConfigurationModule = types.submodule { - options = { - name = mkOption { - type = types.str; - description = "Desktop environment name."; - }; - type = mkOption { - type = types.enum [ - "custom" - "gnome" - ]; - description = "Desktop environment type."; - }; - config = mkOption { - type = types.attrs; - default = { }; - description = "Desktop environment configuration"; - }; - extraConfig = mkOption { - type = types.attrs; - default = { }; - description = "Extra configuration for the configured desktop environment"; - }; - }; - }; - - customBuilder = - config: - recursiveUpdate { - desktop.name = config.name; - } config.extraConfig; - - # Environment builders - environmentBuilders = { - custom = customBuilder; - }; - - cfg = config.desktop; -in -{ - imports = [ - ./custom/default.nix - ./theming/default.nix - ]; - - options.desktop = { - enable = mkEnableOption "desktop"; - name = mkOption { - type = types.str; - default = "Shell"; - description = "Desktop configuration name."; - }; - initScript = mkOption { - type = types.lines; - default = '' - ${pkgs.ncurses}/bin/clear - ${pkgs.bashInteractive}/bin/bash - ''; - description = "Bash script to execute after logging in."; - }; - session = { - type = mkOption { - type = types.enum [ - "wayland" - "x11" - "tty" - ]; - default = "tty"; - description = "Session type."; - }; - desktop = mkOption { - type = types.str; - default = "tty"; - description = "Desktop environment name."; - }; - }; - environments = mkOption { - type = types.attrsOf desktopConfigurationModule; - default = { }; - description = "Desktop environments. Every environment will be built as a specialization."; - }; - }; - - config = mkIf cfg.enable { - specialisation = mapAttrs (name: value: { - configuration = (environmentBuilders."${value.type}" value); - }) cfg.environments; - - # Create session files - home.extraBuilderCommands = '' - mkdir $out/session - echo "${cfg.name}" > $out/session/name - ln -s ${ - pkgs.writeTextFile { - name = "desktop-init"; - text = - '' - #!${pkgs.bash}/bin/bash - - '' - + cfg.initScript; - executable = true; - } - } $out/session/init - ln -s ${ - pkgs.writeTextFile { - name = "session-env"; - text = '' - XDG_SESSION_TYPE=${cfg.session.type} - XDG_CURRENT_DESKTOP=${cfg.session.desktop} - XDG_SESSION_DESKTOP=${cfg.session.desktop} - ''; - } - } $out/session/env - ''; - }; -} diff --git a/unorganized/user-modules/desktop/systemwide.nix b/unorganized/user-modules/desktop/systemwide.nix deleted file mode 100644 index 399c4dc..0000000 --- a/unorganized/user-modules/desktop/systemwide.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ - waylock = { - security.pam.services.waylock = { }; - }; - river = { - programs.river.enable = true; - }; -} diff --git a/unorganized/user-modules/desktop/theming/background.nix b/unorganized/user-modules/desktop/theming/background.nix deleted file mode 100644 index 0032059..0000000 --- a/unorganized/user-modules/desktop/theming/background.nix +++ /dev/null @@ -1,133 +0,0 @@ -{ - config, - pkgs, - lib, - ... -}: - -with lib; -let - cfg = config.desktop.theming.background; -in -{ - options.desktop.theming.background = { - image = { - url = mkOption { - type = types.str; - default = "https://raw.githubusercontent.com/dharmx/walls/refs/heads/main/digital/a_drawing_of_a_spider_on_a_white_surface.png"; - description = "URL to the background image."; - }; - hash = mkOption { - type = types.str; - default = "sha256-eCEjM7R9yeHNhZZtvHjrgkfwT25JA7FeMoVwnQ887CQ="; - description = "SHA256 hash of the background image."; - }; - }; - themed = mkEnableOption "themed background"; - inverted = mkEnableOption "invert background"; - }; - - config = - with pkgs; - let - src = pkgs.fetchurl { - url = cfg.image.url; - hash = cfg.image.hash; - }; - - theme = writeTextFile { - name = "gowall-theme"; - text = builtins.toJSON { - name = "NixOS"; - colors = - let - colors = config.desktop.theming.schemeColors; - in - [ - "#${colors.base00}" - "#${colors.base01}" - "#${colors.base02}" - "#${colors.base03}" - "#${colors.base04}" - "#${colors.base05}" - "#${colors.base06}" - "#${colors.base07}" - "#${colors.base08}" - "#${colors.base09}" - "#${colors.base0A}" - "#${colors.base0B}" - "#${colors.base0C}" - "#${colors.base0D}" - "#${colors.base0E}" - "#${colors.base0F}" - ]; - }; - executable = true; - }; - - fileExtension = - name: - let - parts = splitString "." name; - in - if length parts > 1 then lists.last parts else ""; - - fileName = - name: - let - parts = splitString "/" name; - in - if length parts > 1 then lists.last parts else name; - - image = fileName cfg.image.url; - - background-themed = stdenv.mkDerivation { - name = "background-themed-1.0.0"; - src = src; - - buildInputs = [ - gowall - imagemagick - (writeShellScriptBin "xdg-open" "") - tree - ]; - - unpackPhase = '' - cp ${src} ./${image} - chmod u+w ./${image} - ''; - - buildPhase = '' - ${optionalString cfg.inverted '' - convert ./${image} -channel RGB -negate ./${image} - ''} - ${optionalString cfg.themed '' - cp ${theme} ./theme.json - - export HOME=$PWD - - gowall convert ./${image} --output themed -t ./theme.json - tree - mv ./themed/*.* ./ - ''} - mv ./${image} themed.${fileExtension image} - ${optionalString (fileExtension image != "png") '' - mogrify -format png themed.* - ''} - ''; - - installPhase = '' - install -Dm644 -t $out themed.png - ''; - }; - in - { - services.wpaperd = { - enable = true; - settings.default = { - path = "${background-themed}/"; - mode = "center"; - }; - }; - }; -} diff --git a/unorganized/user-modules/desktop/theming/colors.nix b/unorganized/user-modules/desktop/theming/colors.nix deleted file mode 100644 index 70fc854..0000000 --- a/unorganized/user-modules/desktop/theming/colors.nix +++ /dev/null @@ -1,159 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: - -with lib; -let - cfg = config.desktop.theming; -in -{ - imports = [ - # Import all themes - ./themes/catppuccin.nix - ./themes/gruvbox.nix - ./themes/oxocarbon.nix - ./themes/papercolor.nix - ./themes/sakura.nix - ./themes/nord.nix - ]; - - options.desktop.theming = - let - colors = config.desktop.theming.schemeColors; - in - { - darkMode = mkOption { - type = types.bool; - default = false; - example = true; - description = "Whether the app should use dark mode."; - }; - - colorScheme = mkOption { - type = types.nullOr types.str; - default = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; - description = "Base 16 color scheme to use for styling. See stylix documentation for more information."; - }; - - schemeColors = mkOption { - type = types.attrsOf types.anything; - default = config.lib.stylix.colors; - description = "Generated colors from scheme"; - }; - - colors = { - bg = mkOption { - type = types.str; - default = colors.base00; - }; - fg = mkOption { - type = types.str; - default = colors.base05; - }; - bg-status = mkOption { - type = types.str; - default = colors.base01; - }; - fg-status = mkOption { - type = types.str; - default = colors.base04; - }; - bg-selection = mkOption { - type = types.str; - default = colors.base02; - }; - bg-highlight = mkOption { - type = types.str; - default = colors.base03; - }; - fg-search = mkOption { - type = types.str; - default = colors.base0A; - }; - accent = mkOption { - type = types.str; - default = colors.base0E; - }; - border-focused = mkOption { - type = types.str; - default = cfg.colors.fg; - }; - border-unfocused = mkOption { - type = types.str; - default = cfg.colors.bg-selection; - }; - }; - - colorsCSS = mkOption { - type = types.lines; - default = - ":root {\n" - + concatStrings ( - map (color: " --nix-color-${color.name}: #${color.value};\n") (attrsToList cfg.colors) - ) - + "}\n\n"; - description = "Colors as css variables"; - }; - }; - - config = { - # Configure gnome theme - dconf.settings = mkIf config.desktop.enable { - "org/gnome/desktop/interface" = { - color-scheme = if cfg.darkMode then "prefer-dark" else "prefer-light"; - }; - }; - - # Configure qt theme - qt = mkIf config.desktop.enable { - enable = true; - platformTheme.name = "gtk"; - style = { - name = if cfg.darkMode then "adwaita-dark" else "adwaita-light"; - package = pkgs.adwaita-qt; - }; - }; - - # Configure gtk theme - gtk = mkIf config.desktop.enable { - enable = true; - theme = { - name = if cfg.darkMode then "Adwaita-dark" else "Adwaita-light"; - package = pkgs.gnome-themes-extra; - }; - }; - - # TODO: This should just straight up not be here - programs.direnv = { - enable = true; - nix-direnv.enable = true; - }; - modules.git.ignores = [ - ".direnv" - ]; - - # Enable stylix - # TODO: Move to own module - stylix = { - enable = true; - autoEnable = false; - - targets = { - foot.enable = true; - nixvim.enable = true; - qutebrowser.enable = true; - vscode = { - enable = true; - profileNames = [ "default" ]; - }; - zathura.enable = true; - }; - - base16Scheme = cfg.colorScheme; - polarity = if cfg.darkMode then "dark" else "light"; - }; - }; -} diff --git a/unorganized/user-modules/desktop/theming/default.nix b/unorganized/user-modules/desktop/theming/default.nix deleted file mode 100644 index f61fff3..0000000 --- a/unorganized/user-modules/desktop/theming/default.nix +++ /dev/null @@ -1,241 +0,0 @@ -{ - pkgs, - lib, - config, - ... -}: - -with lib; -let - cfg = config.desktop.theming; - - # Font module type - fontModule = types.submodule { - options = { - name = mkOption { - type = types.str; - description = "Font family name."; - }; - package = mkOption { - type = types.anything; - description = "Font package"; - }; - recommendedSize = mkOption { - type = types.nullOr types.int; - default = null; - description = "Recommended size for displaying this font."; - }; - fallbackFonts = mkOption { - type = types.listOf types.str; - default = [ ]; - description = "Fallback fonts for specified font."; - }; - }; - }; - - fontModules = [ - # Import all fonts - ./fonts/adwaita-mono.nix - ./fonts/adwaita-sans.nix - ./fonts/cozette-vector.nix - ./fonts/cozette.nix - ./fonts/dejavu-sans.nix - ./fonts/dejavu-serif.nix - ./fonts/dina.nix - ./fonts/fira-code.nix - ./fonts/nerd-fonts-symbols.nix - ./fonts/noto-color-emoji.nix - ./fonts/wqy-bitmapsong.nix - ./fonts/wqy-microhei-mono.nix - ./fonts/wqy-microhei.nix - ./fonts/wqy-zenhei-mono.nix - ./fonts/wqy-zenhei-sharp.nix - ./fonts/wqy-zenhei.nix - ]; - - # Gather enabled fonts. - enabledFonts = [ - cfg.fonts.serif.name - cfg.fonts.sansSerif.name - cfg.fonts.monospace.name - cfg.fonts.emoji.name - ] ++ map (font: font.name) cfg.fonts.extraFonts; - - # Flatten dependencies of fonts - fontPackages = - converge - ( - fonts: - listToAttrs ( - map - (font: { - name = font; - value = true; - }) - ( - flatten (map (font: [ font.name ] ++ cfg.fonts.pkgs.${font.name}.fallbackFonts) (attrsToList fonts)) - ) - ) - ) - ( - listToAttrs ( - map (font: { - name = font; - value = true; - }) enabledFonts - ) - ); - - # Convert set of fonts to list of packages - fontNameList = map (font: font.name) (attrsToList fontPackages); - fontPackageList = map (font: cfg.fonts.pkgs.${font}.package) fontNameList; -in -{ - imports = [ - ./background.nix - ./colors.nix - ]; - - options.desktop.theming = { - layout = { - borderRadius = mkOption { - type = types.int; - default = 0; - description = "Border radius of windows."; - }; - - borderSize = mkOption { - type = types.int; - default = 1; - description = "Size of borders used throughout UI."; - }; - - windowPadding = mkOption { - type = types.int; - default = 2; - description = "Margin of each window, actual space between windows will be twice this number."; - }; - }; - - fonts = { - pkgs = mkOption { - type = types.attrsOf fontModule; - default = builtins.listToAttrs ( - map (module: { - name = module.name; - value = module; - }) (map (module: (import module) { inherit lib config pkgs; }) fontModules) - ); - description = "All available font modules."; - }; - - installed = mkOption { - type = types.listOf types.str; - default = fontNameList; - description = "List of installed fonts."; - }; - - serif = mkOption { - type = fontModule; - description = "Default serif font"; - }; - - sansSerif = mkOption { - type = fontModule; - description = "Default sansSerif font."; - }; - - monospace = mkOption { - type = fontModule; - description = "Default monospace font."; - }; - - emoji = mkOption { - type = fontModule; - description = "Default emoji font."; - }; - - interface = mkOption { - type = fontModule; - description = "Default emoji font."; - }; - - extraFonts = mkOption { - type = types.listOf fontModule; - default = [ ]; - description = "Additional fonts to install."; - }; - }; - }; - - config = mkIf config.desktop.enable { - # Enable fontconfig - modules.fontconfig.enable = true; - - # Install configured fonts - home.packages = fontPackageList; - - # Configure gtk theme - gtk = - let - disableCSD = '' - headerbar.default-decoration { - margin-bottom: 50px; - margin-top: -100px; - } - window.csd, - window.csd decoration { - box-shadow: none; - } - ''; - in - { - enable = true; - # TODO: Toggles - gtk3.extraCss = mkIf config.modules.river.enable disableCSD; - gtk4.extraCss = mkIf config.modules.river.enable disableCSD; - }; - - # TODO: Make cursors configurable using modules. - home.pointerCursor = { - gtk.enable = true; - name = lib.mkForce "BreezeX-RosePine-Linux"; - package = lib.mkForce pkgs.rose-pine-cursor; - size = lib.mkForce 24; - x11 = { - defaultCursor = lib.mkForce "BreezeX-RosePine-Linux"; - enable = true; - }; - }; - - # Enable stylix - # TODO: Move to own module - stylix = { - fonts = { - serif = getAttrs [ - "name" - "package" - ] cfg.fonts.serif; - sansSerif = getAttrs [ - "name" - "package" - ] cfg.fonts.sansSerif; - monospace = getAttrs [ - "name" - "package" - ] cfg.fonts.monospace; - emoji = getAttrs [ - "name" - "package" - ] cfg.fonts.emoji; - - sizes = { - applications = mkDefault cfg.fonts.serif.recommendedSize; - desktop = mkDefault cfg.fonts.monospace.recommendedSize; # TODO: See below - popups = mkDefault cfg.fonts.monospace.recommendedSize; # TODO: Add dedicated UI font - terminal = mkDefault cfg.fonts.monospace.recommendedSize; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/adwaita-mono.nix b/unorganized/user-modules/desktop/theming/fonts/adwaita-mono.nix deleted file mode 100644 index ccbd09b..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/adwaita-mono.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Adwaita Mono"; - package = pkgs.adwaita-fonts; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/adwaita-sans.nix b/unorganized/user-modules/desktop/theming/fonts/adwaita-sans.nix deleted file mode 100644 index 4d89a97..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/adwaita-sans.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Adwaita Sans"; - package = pkgs.adwaita-fonts; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/cozette-vector.nix b/unorganized/user-modules/desktop/theming/fonts/cozette-vector.nix deleted file mode 100644 index c29c378..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/cozette-vector.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Cozette Vector"; - package = pkgs.cozette; - recommendedSize = 9; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/cozette.nix b/unorganized/user-modules/desktop/theming/fonts/cozette.nix deleted file mode 100644 index 73cff7f..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/cozette.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Cozette"; - package = pkgs.cozette; - recommendedSize = 9; - fallbackFonts = [ "Cozette Vector" ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/dejavu-sans.nix b/unorganized/user-modules/desktop/theming/fonts/dejavu-sans.nix deleted file mode 100644 index 8b1d5f4..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/dejavu-sans.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "DejaVu Sans"; - package = pkgs.dejavu_fonts; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/dejavu-serif.nix b/unorganized/user-modules/desktop/theming/fonts/dejavu-serif.nix deleted file mode 100644 index 66e723e..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/dejavu-serif.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "DejaVu Serif"; - package = pkgs.dejavu_fonts; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/dina.nix b/unorganized/user-modules/desktop/theming/fonts/dina.nix deleted file mode 100644 index 35d356d..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/dina.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Dina"; - package = pkgs.dina-font; - recommendedSize = 9; - fallbackFonts = [ - "Cozette" - "wenquanyi bitmap song" - "Symbols Nerd Font Mono" - ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/fira-code.nix b/unorganized/user-modules/desktop/theming/fonts/fira-code.nix deleted file mode 100644 index 63deb5c..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/fira-code.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Fira Code"; - package = pkgs.fira-code; - recommendedSize = 12; - fallbackFonts = [ "Symbols Nerd Font Mono" ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/nerd-fonts-symbols.nix b/unorganized/user-modules/desktop/theming/fonts/nerd-fonts-symbols.nix deleted file mode 100644 index 9ceec47..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/nerd-fonts-symbols.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Symbols Nerd Font Mono"; - package = pkgs.nerd-fonts.symbols-only; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/noto-color-emoji.nix b/unorganized/user-modules/desktop/theming/fonts/noto-color-emoji.nix deleted file mode 100644 index 7aab05c..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/noto-color-emoji.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "Noto Color Emoji"; - package = pkgs.noto-fonts-color-emoji; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-bitmapsong.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-bitmapsong.nix deleted file mode 100644 index 61fde6d..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-bitmapsong.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "wenquanyi bitmap song"; - package = pkgs.wqy-bitmapsong; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-microhei-mono.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-microhei-mono.nix deleted file mode 100644 index bbbfb81..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-microhei-mono.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "WenQuanYi Micro Hei Mono"; - package = pkgs.wqy-microhei; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-microhei.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-microhei.nix deleted file mode 100644 index acc61a4..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-microhei.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "WenQuanYi Micro Hei"; - package = pkgs.wqy-microhei; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-mono.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-mono.nix deleted file mode 100644 index 2d575c6..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-mono.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "WenQuanYi Zen Hei Mono"; - package = pkgs.wqy-zenhei; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-sharp.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-sharp.nix deleted file mode 100644 index 9c8dbd6..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei-sharp.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "WenQuanYi Zen Hei Sharp"; - package = pkgs.wqy-zenhei; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei.nix b/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei.nix deleted file mode 100644 index 3f7e39e..0000000 --- a/unorganized/user-modules/desktop/theming/fonts/wqy-zenhei.nix +++ /dev/null @@ -1,8 +0,0 @@ -{ pkgs, ... }: - -{ - name = "WenQuanYi Zen Hei"; - package = pkgs.wqy-zenhei; - recommendedSize = 12; - fallbackFonts = [ ]; -} diff --git a/unorganized/user-modules/desktop/theming/themes/catppuccin.nix b/unorganized/user-modules/desktop/theming/themes/catppuccin.nix deleted file mode 100644 index 91faa44..0000000 --- a/unorganized/user-modules/desktop/theming/themes/catppuccin.nix +++ /dev/null @@ -1,33 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.catppuccin; -in -{ - options = { - desktop.theming.themes.catppuccin = { - enable = mkEnableOption "catppuccin"; - flavor = mkOption { - type = types.enum [ - "latte" - "frappe" - "macchiato" - "mocha" - ]; - default = "mocha"; - description = "The flavor of catppuccin theme."; - }; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = (cfg.flavor != "latte"); - colorScheme = "${pkgs.base16-schemes}/share/themes/catppuccin-${cfg.flavor}.yaml"; - }; -} diff --git a/unorganized/user-modules/desktop/theming/themes/gruvbox.nix b/unorganized/user-modules/desktop/theming/themes/gruvbox.nix deleted file mode 100644 index 683fcaa..0000000 --- a/unorganized/user-modules/desktop/theming/themes/gruvbox.nix +++ /dev/null @@ -1,34 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.gruvbox; - mode = if cfg.darkMode then "dark" else "light"; -in -{ - options = { - desktop.theming.themes.gruvbox = { - enable = mkEnableOption "gruvbox-hard"; - darkMode = mkEnableOption "dark mode"; - contrast = mkOption { - type = types.enum [ - "hard" - "medium" - "soft" - ]; - default = "hard"; - description = "The contrast level of the theme."; - }; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = cfg.darkMode; - colorScheme = "${pkgs.base16-schemes}/share/themes/gruvbox-${mode}-${cfg.contrast}.yaml"; - }; -} diff --git a/unorganized/user-modules/desktop/theming/themes/nord.nix b/unorganized/user-modules/desktop/theming/themes/nord.nix deleted file mode 100644 index 4287ccb..0000000 --- a/unorganized/user-modules/desktop/theming/themes/nord.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.nord; - mode = if cfg.darkMode then "" else "-light"; -in -{ - options = { - desktop.theming.themes.nord = { - enable = mkEnableOption "nord"; - darkMode = mkEnableOption "dark mode"; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = cfg.darkMode; - colorScheme = "${pkgs.base16-schemes}/share/themes/nord${mode}.yaml"; - }; -} diff --git a/unorganized/user-modules/desktop/theming/themes/oxocarbon.nix b/unorganized/user-modules/desktop/theming/themes/oxocarbon.nix deleted file mode 100644 index 1bfccbc..0000000 --- a/unorganized/user-modules/desktop/theming/themes/oxocarbon.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.oxocarbon; - mode = if cfg.darkMode then "dark" else "light"; -in -{ - options = { - desktop.theming.themes.oxocarbon = { - enable = mkEnableOption "oxocarbon"; - darkMode = mkEnableOption "dark mode"; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = cfg.darkMode; - colorScheme = "${pkgs.base16-schemes}/share/themes/oxocarbon-${mode}.yaml"; - }; -} diff --git a/unorganized/user-modules/desktop/theming/themes/papercolor.nix b/unorganized/user-modules/desktop/theming/themes/papercolor.nix deleted file mode 100644 index c0005ae..0000000 --- a/unorganized/user-modules/desktop/theming/themes/papercolor.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.papercolor; - mode = if cfg.darkMode then "dark" else "light"; -in -{ - options = { - desktop.theming.themes.papercolor = { - enable = mkEnableOption "papercolor"; - darkMode = mkEnableOption "dark mode"; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = cfg.darkMode; - colorScheme = "${pkgs.base16-schemes}/share/themes/papercolor-${mode}.yaml"; - }; -} diff --git a/unorganized/user-modules/desktop/theming/themes/sakura.nix b/unorganized/user-modules/desktop/theming/themes/sakura.nix deleted file mode 100644 index 8492edd..0000000 --- a/unorganized/user-modules/desktop/theming/themes/sakura.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.desktop.theming.themes.sakura; -in -{ - options = { - desktop.theming.themes.sakura = { - enable = mkEnableOption "sakura"; - }; - }; - - config.desktop.theming = mkIf cfg.enable { - darkMode = false; - colorScheme = "${pkgs.base16-schemes}/share/themes/sakura.yaml"; - }; -} diff --git a/unorganized/user-modules/development/default.nix b/unorganized/user-modules/development/default.nix deleted file mode 100644 index 510de54..0000000 --- a/unorganized/user-modules/development/default.nix +++ /dev/null @@ -1,19 +0,0 @@ -{ ... }: - -{ - imports = [ - ./ide/mathematica.nix - ./ide/matlab.nix - # TODO: Move languages to make clear it is just IDE configuration - # Languages should be installed with devShells, however the IDE must be configured globally - ./language/cpp.nix - ./language/haskell.nix - ./language/js.nix - ./language/jupyter.nix - ./language/nix.nix - ./language/python.nix - ./language/rust.nix - ./language/tex.nix - ./utility/docker.nix - ]; -} diff --git a/unorganized/user-modules/development/ide/mathematica.nix b/unorganized/user-modules/development/ide/mathematica.nix deleted file mode 100644 index 7ea8e88..0000000 --- a/unorganized/user-modules/development/ide/mathematica.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.mathematica; - - my-mathematica = pkgs.mathematica.override { - # TODO: Just use a generic name for the installer? - # source = ./Wolfram_14.2.1_LIN_Bndl.sh; - }; -in -{ - options.modules.mathematica = { - enable = mkEnableOption "mathematica"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ - "mathematica" - ]; - - home.packages = [ - my-mathematica - ]; - }; -} diff --git a/unorganized/user-modules/development/ide/matlab.nix b/unorganized/user-modules/development/ide/matlab.nix deleted file mode 100644 index d7fb723..0000000 --- a/unorganized/user-modules/development/ide/matlab.nix +++ /dev/null @@ -1,26 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.matlab; -in -{ - options.modules.matlab = { - enable = mkEnableOption "matlab"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - matlab - ]; - - home.sessionVariables = { - _JAVA_AWT_WM_NONREPARENTING = "1"; - }; - }; -} diff --git a/unorganized/user-modules/development/language/cpp.nix b/unorganized/user-modules/development/language/cpp.nix deleted file mode 100644 index 7e8641b..0000000 --- a/unorganized/user-modules/development/language/cpp.nix +++ /dev/null @@ -1,55 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.cpp; -in -{ - options.modules.cpp = { - enable = mkEnableOption "cpp"; - }; - - config = mkIf cfg.enable { - # Allow unfree - modules.unfree.allowedPackages = [ - "vscode-extension-ms-vscode-cpptools" - ]; - - # Gitignore additions - modules.git.ignores = [ - ".ccls-cache" - ]; - - # Development packages - home.packages = with pkgs; [ - gnumake - gcc - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - ms-vscode.cpptools - ms-vscode.cmake-tools - ms-vscode.cpptools-extension-pack - ]; - - userSettings = { - # TODO: Add setting to set the compiler, it currently needs to be set for each workspace individually - # "C_Cpp.clang_format_fallbackStyle" = "{ BasedOnStyle: Google, IndentWidth: 4 }"; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { - plugins.lsp.servers.ccls.enable = true; - }; - }; -} diff --git a/unorganized/user-modules/development/language/haskell.nix b/unorganized/user-modules/development/language/haskell.nix deleted file mode 100644 index abec7ee..0000000 --- a/unorganized/user-modules/development/language/haskell.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.haskell; -in -{ - options.modules.haskell = { - enable = mkEnableOption "haskell"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - haskell.compiler.ghc948 - (haskell-language-server.override { supportedGhcVersions = [ "948" ]; }) - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - haskell.haskell - justusadam.language-haskell - ]; - - userSettings = { - "[haskell]" = { }; - # "haskell.formattingProvider" = "fourmolu"; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { }; - }; -} diff --git a/unorganized/user-modules/development/language/js.nix b/unorganized/user-modules/development/language/js.nix deleted file mode 100644 index ff38384..0000000 --- a/unorganized/user-modules/development/language/js.nix +++ /dev/null @@ -1,38 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.js; -in -{ - options.modules.js = { - enable = mkEnableOption "js"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - nodejs - tailwindcss - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - bradlc.vscode-tailwindcss - ]; - - userSettings = { }; - }; - }; - - # Neovim configuration - programs.nixvim = { }; - }; -} diff --git a/unorganized/user-modules/development/language/jupyter.nix b/unorganized/user-modules/development/language/jupyter.nix deleted file mode 100644 index 242bca7..0000000 --- a/unorganized/user-modules/development/language/jupyter.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -# TODO: Move to a module for notebooks in general -with lib; -let - cfg = config.modules.jupyter; -in -{ - options.modules.jupyter = { - enable = mkEnableOption "jupyter"; - }; - - config = mkIf cfg.enable { - # Development packages - # home.packages = with pkgs; [ - # evcxr - # ]; - - # modules.python.extraPythonPackages = p: [ - # p.jupyter - # p.notebook - # ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - ms-toolsai.jupyter - ms-toolsai.jupyter-renderers - ]; - - userSettings = { }; - }; - }; - - # Neovim configuration - programs.nixvim = { }; - }; -} diff --git a/unorganized/user-modules/development/language/nix.nix b/unorganized/user-modules/development/language/nix.nix deleted file mode 100644 index b8fb9f8..0000000 --- a/unorganized/user-modules/development/language/nix.nix +++ /dev/null @@ -1,60 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.nix; -in -{ - options.modules.nix = { - enable = mkEnableOption "nix"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - nix-tree - nixfmt-rfc-style - nixd - ]; - - # Add nix tree - xdg.desktopEntries.nix-tree = { - exec = "${pkgs.nix-tree}/bin/nix-tree"; - name = "Nix Tree"; - terminal = true; - type = "Application"; - }; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ]; - - userSettings = { - "[nix]" = { - "editor.tabSize" = 2; - }; - "nix.enableLanguageServer" = true; - "nix.serverPath" = "nixd"; - "nix.serverSettings" = { - nixd = { - formatting = { - command = [ "nixfmt" ]; - }; - }; - }; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { - - }; - }; -} diff --git a/unorganized/user-modules/development/language/python.nix b/unorganized/user-modules/development/language/python.nix deleted file mode 100644 index 1868b86..0000000 --- a/unorganized/user-modules/development/language/python.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.python; -in -{ - options.modules.python = { - enable = mkEnableOption "python"; - extraPythonPackages = mkOption { - type = types.functionTo (types.listOf types.package) // { - merge = - loc: defs: p: - lib.concatMap (def: (def.value p)) defs; - }; - default = p: [ ]; - description = "Extra Python packages to install"; - }; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = [ ]; - - # Allow unfree - modules.unfree.allowedPackages = [ - "vscode-extension-MS-python-vscode-pylance" - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - ms-python.python - ms-python.debugpy - ms-python.vscode-pylance - ms-python.black-formatter - ]; - - userSettings = { - "python.defaultInterpreterPath" = "\${env:PYTHONINTERPRETER}"; - "[python]" = { - "editor.defaultFormatter" = "ms-python.black-formatter"; - }; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { }; - }; -} diff --git a/unorganized/user-modules/development/language/rust.nix b/unorganized/user-modules/development/language/rust.nix deleted file mode 100644 index cbe7682..0000000 --- a/unorganized/user-modules/development/language/rust.nix +++ /dev/null @@ -1,59 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.rust; -in -{ - options.modules.rust = { - enable = mkEnableOption "rust"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - # rustup - # rustc - # cargo - # gcc - # lldb - # bacon - # rust-analyzer - # rustfmt - # clippy - # evcxr - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - rust-lang.rust-analyzer - vadimcn.vscode-lldb - tamasfe.even-better-toml - serayuzgur.crates - ]; - - userSettings = { - "[rust]" = { - "editor.inlayHints.enabled" = "off"; - }; - "rust-analyzer.check.command" = "clippy"; - "rust-analyzer.showUnlinkedFileNotification" = false; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { - plugins.rustaceanvim = { - enable = true; - }; - }; - }; -} diff --git a/unorganized/user-modules/development/language/tex.nix b/unorganized/user-modules/development/language/tex.nix deleted file mode 100644 index 1cbe7b9..0000000 --- a/unorganized/user-modules/development/language/tex.nix +++ /dev/null @@ -1,69 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.tex; -in -{ - options.modules.tex = { - enable = mkEnableOption "tex"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - (texlive.combine { - inherit (texlive) scheme-full; - }) - ]; - - # Pygments for minted - modules.python.extraPythonPackages = p: [ - p.pygments - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ]; - - userSettings = { - "[tex]" = { }; - }; - }; - }; - - # Neovim configuration - programs.nixvim = { - extraConfigVim = '' - " Enforce latexmk - let g:vimtex_compiler_method = 'latexmk' - - " Set latexmk compilation settings - let g:vimtex_compiler_latexmk = { - \ 'options': [ - \ '-shell-escape', - \ '-verbose', - \ '-file-line-error', - \ '-synctex=1', - \ '-interaction=nonstopmode', - \ ], - \} - ''; - - # Vimtex plugin - plugins.vimtex = { - enable = true; - texlivePackage = null; - settings = { - view_method = "zathura"; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/development/systemwide.nix b/unorganized/user-modules/development/systemwide.nix deleted file mode 100644 index 94f25a6..0000000 --- a/unorganized/user-modules/development/systemwide.nix +++ /dev/null @@ -1,6 +0,0 @@ -{ - docker = { - virtualisation.docker.enable = true; - machine.sudo-groups = [ "docker" ]; - }; -} diff --git a/unorganized/user-modules/development/utility/docker.nix b/unorganized/user-modules/development/utility/docker.nix deleted file mode 100644 index 5a043e8..0000000 --- a/unorganized/user-modules/development/utility/docker.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.docker; -in -{ - options.modules.docker = { - enable = mkEnableOption "docker"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - docker - docker-compose - ]; - - # Allow unfree - modules.unfree.allowedPackages = [ - ]; - - # VSCode configuration - programs.vscode = { - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - ms-azuretools.vscode-docker - ]; - - userSettings = { - }; - }; - }; - - # Neovim configuration - programs.nixvim = { }; - }; -} diff --git a/unorganized/user-modules/discord/default.nix b/unorganized/user-modules/discord/default.nix deleted file mode 100644 index fefabb3..0000000 --- a/unorganized/user-modules/discord/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.discord; -in -{ - options.modules.discord = { - enable = mkEnableOption "discord"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ "discord" ]; - - home.packages = with pkgs; [ discord ]; - }; -} diff --git a/unorganized/user-modules/eduvpn/default.nix b/unorganized/user-modules/eduvpn/default.nix deleted file mode 100644 index b3b9157..0000000 --- a/unorganized/user-modules/eduvpn/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.eduvpn; -in -{ - options.modules.eduvpn = { - enable = mkEnableOption "EduVPN"; - }; - - config = mkIf cfg.enable { - # Development packages - home.packages = with pkgs; [ - eduvpn-client - ]; - }; -} diff --git a/unorganized/user-modules/feishin/default.nix b/unorganized/user-modules/feishin/default.nix deleted file mode 100644 index eb1bfe9..0000000 --- a/unorganized/user-modules/feishin/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.feishin; -in -{ - options.modules.feishin.enable = mkEnableOption "feishin"; - - config = mkIf cfg.enable { - # TODO: Move to audioling - home.packages = with pkgs; [ feishin ]; - - # TODO: Remove exception once no longer required by feishin - nixpkgs.config.permittedInsecurePackages = [ - "electron-33.4.11" - "freeimage-3.18.0-unstable-2024-04-18" - ]; - }; -} diff --git a/unorganized/user-modules/flatpak/default.nix b/unorganized/user-modules/flatpak/default.nix deleted file mode 100644 index 04410a1..0000000 --- a/unorganized/user-modules/flatpak/default.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -{ - options.modules.flatpak = { - enable = mkEnableOption "flatpak"; - remotes = mkOption { - type = types.attrsOf types.str; - default = { - flathub = "https://dl.flathub.org/repo/flathub.flatpakrepo"; - flathub-beta = "https://dl.flathub.org/beta-repo/flathub-beta.flatpakrepo"; - }; - description = "A set of flatpak repositories to add."; - }; - }; - - config = mkIf config.modules.flatpak.enable { - services.flatpak.enableModule = true; - services.flatpak.remotes = config.modules.flatpak.remotes; - }; -} diff --git a/unorganized/user-modules/flatpak/systemwide.nix b/unorganized/user-modules/flatpak/systemwide.nix deleted file mode 100644 index 59931ec..0000000 --- a/unorganized/user-modules/flatpak/systemwide.nix +++ /dev/null @@ -1,5 +0,0 @@ -{ - flatpak = { - # services.flatpak.enable = true; - }; -} diff --git a/unorganized/user-modules/fontconfig/default.nix b/unorganized/user-modules/fontconfig/default.nix deleted file mode 100644 index 78f0d8a..0000000 --- a/unorganized/user-modules/fontconfig/default.nix +++ /dev/null @@ -1,66 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.fontconfig; - - aliasConfig = font: '' - - ${font.name} - - - ${font.name} - ${concatStrings (map (font: " ${font}\n") font.fallbackFonts)} - - - ''; - - configContent = concatStrings ( - map ( - font: aliasConfig config.desktop.theming.fonts.pkgs.${font} - ) config.desktop.theming.fonts.installed - ); -in -{ - options.modules.fontconfig = { - enable = mkEnableOption "fontconfig"; - }; - - config = mkIf cfg.enable { - fonts.fontconfig = { - enable = true; - - defaultFonts = { - serif = [ config.desktop.theming.fonts.serif.name ]; - sansSerif = [ config.desktop.theming.fonts.sansSerif.name ]; - monospace = [ config.desktop.theming.fonts.monospace.name ]; - emoji = [ config.desktop.theming.fonts.emoji.name ]; - }; - }; - - home.file.".config/fontconfig/conf.d/20-family-fallbacks.conf" = { - enable = true; - - # text = '' - # - # - - # ${configContent} - # - # ''; - text = '' - - - - - ${configContent} - - ''; - }; - }; -} diff --git a/unorganized/user-modules/gaming/default.nix b/unorganized/user-modules/gaming/default.nix deleted file mode 100644 index 50bdeba..0000000 --- a/unorganized/user-modules/gaming/default.nix +++ /dev/null @@ -1,12 +0,0 @@ -{ ... }: - -{ - imports = [ - ./emulators/pcsx2.nix - ./emulators/retroarch.nix - ./emulators/ryujinx.nix - ./launchers/es-de.nix - ./launchers/modrinth.nix - ./launchers/steam.nix - ]; -} diff --git a/unorganized/user-modules/gaming/emulators/pcsx2.nix b/unorganized/user-modules/gaming/emulators/pcsx2.nix deleted file mode 100644 index 2c08d8e..0000000 --- a/unorganized/user-modules/gaming/emulators/pcsx2.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.pcsx2; -in -{ - options.modules.pcsx2 = { - enable = mkEnableOption "pcsx2"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - pcsx2 - ]; - }; -} diff --git a/unorganized/user-modules/gaming/emulators/retroarch.nix b/unorganized/user-modules/gaming/emulators/retroarch.nix deleted file mode 100644 index d1a4883..0000000 --- a/unorganized/user-modules/gaming/emulators/retroarch.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.retroarch; -in -{ - options.modules.retroarch = { - enable = mkEnableOption "RetroArch"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ - "libretro-fbalpha2012" - "libretro-fbneo" - "libretro-fmsx" - "libretro-genesis-plus-gx" - "libretro-mame2000" - "libretro-mame2003" - "libretro-mame2003-plus" - "libretro-mame2010" - "libretro-mame2015" - "libretro-opera" - "libretro-picodrive" - "libretro-snes9x" - "libretro-snes9x2002" - "libretro-snes9x2005" - "libretro-snes9x2005-plus" - "libretro-snes9x2010" - ]; - - home.packages = with pkgs; [ - # retroarch-full - retroarch-free - ]; - }; -} diff --git a/unorganized/user-modules/gaming/emulators/ryujinx.nix b/unorganized/user-modules/gaming/emulators/ryujinx.nix deleted file mode 100644 index 4943ad8..0000000 --- a/unorganized/user-modules/gaming/emulators/ryujinx.nix +++ /dev/null @@ -1,25 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.ryujinx; -in -{ - options.modules.ryujinx = { - enable = mkEnableOption "ryujinx"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - ryubing - ]; - - # TODO: Make more general - wayland.windowManager.river.settings.rule-add."-app-id"."'Ryujinx'" = "fullscreen"; - }; -} diff --git a/unorganized/user-modules/gaming/launchers/es-de.nix b/unorganized/user-modules/gaming/launchers/es-de.nix deleted file mode 100644 index ed89937..0000000 --- a/unorganized/user-modules/gaming/launchers/es-de.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ - lib, - config, - pkgs, - system, - ... -}: - -with lib; -let - cfg = config.modules.es-de; -in -{ - options.modules.es-de = { - enable = mkEnableOption "Emulation Station Desktop Edition"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - emulationstation-de - ]; - - home.sessionVariables = { - ESDE_APPDATA_DIR = "$HOME/.config/ES-DE"; - }; - - # TODO: Remove exception once no longer required by es-de - nixpkgs.config.permittedInsecurePackages = [ - "freeimage-3.18.0-unstable-2024-04-18" - ]; - - # TODO: Remove once emulationstation-de fixes the issue - # TODO: If not fixed, at least pin the specific commit properly - # nixpkgs.overlays = - # let - # pkgs-stable = import (fetchTarball { - # url = "https://github.com/NixOS/nixpkgs/archive/nixos-24.11.tar.gz"; - # sha256 = "1wr1xzkw7v8biqqjcr867gbpqf3kibkgly36lcnhw0glvkr1i986"; - # }) { inherit system; }; - # in - # [ - # (final: prev: { - # libgit2 = pkgs-stable.libgit2; - # }) - # ]; - }; -} diff --git a/unorganized/user-modules/gaming/launchers/modrinth.nix b/unorganized/user-modules/gaming/launchers/modrinth.nix deleted file mode 100644 index c27c7e6..0000000 --- a/unorganized/user-modules/gaming/launchers/modrinth.nix +++ /dev/null @@ -1,27 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.modrinth; -in -{ - options.modules.modrinth = { - enable = mkEnableOption "modrinth"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ - "modrinth-app" - "modrinth-app-unwrapped" - ]; - - home.packages = with pkgs; [ - modrinth-app - ]; - }; -} diff --git a/unorganized/user-modules/gaming/launchers/steam.nix b/unorganized/user-modules/gaming/launchers/steam.nix deleted file mode 100644 index 182cc78..0000000 --- a/unorganized/user-modules/gaming/launchers/steam.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ - config, - lib, - ... -}: - -with lib; -{ - options.modules.steam = { - enable = mkEnableOption "steam"; - }; - - config = mkIf config.modules.steam.enable { - # Steam must be installed systemwide as of time of writing - }; -} diff --git a/unorganized/user-modules/gaming/systemwide.nix b/unorganized/user-modules/gaming/systemwide.nix deleted file mode 100644 index cb5b572..0000000 --- a/unorganized/user-modules/gaming/systemwide.nix +++ /dev/null @@ -1,20 +0,0 @@ -{ - steam = - { pkgs, ... }: - { - modules.unfree.allowedPackages = [ - "steam" - "steam-original" - "steam-unwrapped" - ]; - - programs.steam.enable = true; - - # Make steam create desktop entries in a subfolder - programs.steam.package = pkgs.steam.override { - extraBwrapArgs = [ - "--bind $HOME/.local/share/applications/Steam $HOME/.local/share/applications" - ]; - }; - }; -} diff --git a/unorganized/user-modules/git/default.nix b/unorganized/user-modules/git/default.nix deleted file mode 100644 index 4c569e7..0000000 --- a/unorganized/user-modules/git/default.nix +++ /dev/null @@ -1,53 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.git; -in -{ - options.modules.git = { - enable = mkEnableOption "git"; - - user = mkOption { - type = types.str; - description = "Default user name to use."; - }; - - email = mkOption { - type = types.str; - description = "Default user email to use."; - }; - - ignores = mkOption { - type = types.listOf types.str; - default = [ ]; - description = "Paths to globally ignore"; - }; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - git - lazygit - ]; - - programs.git = { - enable = true; - - extraConfig = { - pull = { - rebase = false; - }; - }; - - userName = cfg.user; - userEmail = cfg.email; - ignores = cfg.ignores; - }; - }; -} diff --git a/unorganized/user-modules/keyring/default.nix b/unorganized/user-modules/keyring/default.nix deleted file mode 100644 index d77dfc9..0000000 --- a/unorganized/user-modules/keyring/default.nix +++ /dev/null @@ -1,23 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.keyring; -in -{ - options.modules.keyring = { - enable = mkEnableOption "keyring"; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - seahorse - ]; - services.gnome-keyring.enable = true; - }; -} diff --git a/unorganized/user-modules/keyring/systemwide.nix b/unorganized/user-modules/keyring/systemwide.nix deleted file mode 100644 index 2cb8422..0000000 --- a/unorganized/user-modules/keyring/systemwide.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - keyring = { - services.gnome.gnome-keyring.enable = true; - security.pam.services.greetd.enableGnomeKeyring = true; - security.pam.services.login.enableGnomeKeyring = true; - }; -} diff --git a/unorganized/user-modules/languagetool/default.nix b/unorganized/user-modules/languagetool/default.nix deleted file mode 100644 index ee727ff..0000000 --- a/unorganized/user-modules/languagetool/default.nix +++ /dev/null @@ -1,16 +0,0 @@ -{ lib, config, ... }: - -with lib; -{ - imports = [ - ./eloquent.nix - ]; - - options.modules.languagetool = { - enable = mkEnableOption "languagetool"; - }; - - config = mkIf config.modules.languagetool.enable { - modules.eloquent.enable = mkDefault true; - }; -} diff --git a/unorganized/user-modules/languagetool/eloquent.nix b/unorganized/user-modules/languagetool/eloquent.nix deleted file mode 100644 index 446dc02..0000000 --- a/unorganized/user-modules/languagetool/eloquent.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ lib, config, ... }: - -with lib; -{ - options.modules.eloquent = { - enable = mkEnableOption "eloquent"; - }; - - config = mkIf config.modules.eloquent.enable { - modules.flatpak.enable = true; - - services.flatpak.packages = [ - "flathub:app/re.sonny.Eloquent//stable" - "flathub:app/org.kde.kdenlive//stable" - ]; - }; -} diff --git a/unorganized/user-modules/mako/default.nix b/unorganized/user-modules/mako/default.nix deleted file mode 100644 index bea449c..0000000 --- a/unorganized/user-modules/mako/default.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.mako; - theme = config.desktop.theming; - colors = theme.colors; -in -{ - options.modules.mako.enable = mkEnableOption "mako"; - - config = mkIf cfg.enable { - services.mako = { - enable = true; - anchor = "top-right"; - defaultTimeout = 5000; - backgroundColor = "#${colors.bg}ff"; - textColor = "#${colors.fg}ff"; - borderColor = "#${colors.fg}ff"; - progressColor = "#${colors.accent}ff"; - borderRadius = 0; - borderSize = theme.layout.borderSize; - font = "${theme.fonts.monospace.name} ${toString theme.fonts.monospace.recommendedSize}"; - }; - }; -} diff --git a/unorganized/user-modules/neovim/default.nix b/unorganized/user-modules/neovim/default.nix deleted file mode 100644 index 089c855..0000000 --- a/unorganized/user-modules/neovim/default.nix +++ /dev/null @@ -1,191 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.neovim; - theme = config.desktop.theming; - colors = theme.colors; -in -{ - options.modules.neovim = { - enable = mkEnableOption "neovim"; - }; - - config = mkIf cfg.enable { - programs.nixvim = { - enable = true; - defaultEditor = true; - viAlias = true; - vimAlias = true; - - extraPackages = with pkgs; [ ]; - - opts = { - number = true; - relativenumber = true; - - signcolumn = "yes"; - - ignorecase = true; - smartcase = true; - - tabstop = 4; - shiftwidth = 4; - softtabstop = 0; - expandtab = true; - smarttab = true; - - list = true; - listchars = "tab:»┈«,trail:·,extends:→,precedes:←,nbsp:␣"; - }; - - diagnostic.settings = { - enable = true; - signs = true; - underline = true; - update_in_insert = true; - }; - - extraConfigLua = '' - vim.fn.sign_define("DiagnosticSignError", - {text = "", texthl = "DiagnosticSignError"}) - vim.fn.sign_define("DiagnosticSignWarn", - {text = "", texthl = "DiagnosticSignWarn"}) - vim.fn.sign_define("DiagnosticSignInfo", - {text = "", texthl = "DiagnosticSignInfo"}) - vim.fn.sign_define("DiagnosticSignHint", - {text = "💡", texthl = "DiagnosticSignHint"}) - ''; - - keymaps = [ - # Save shortcut - { - action = ":update"; - key = ""; - mode = "n"; - } - { - action = ":update"; - key = ""; - mode = "i"; - } - - # Neo tree - { - action = ":Neotree action=focus reveal toggle"; - key = "n"; - mode = "n"; - options.silent = true; - } - ]; - - autoCmd = [ - { - desc = "Automatic formatting"; - event = "BufWritePre"; - callback = { - __raw = '' - function() - vim.lsp.buf.format { - async = false, - } - end - ''; - }; - } - ]; - - highlight = { - Comment = { - italic = true; - fg = theme.schemeColors.withHashtag.base03; # TODO: Come up with a good name colors.muted maybe? - }; - - }; - - plugins.lsp = { - enable = true; - }; - - #plugins.treesitter = { - # enable = true; - #}; - - plugins.cmp = { - enable = true; - - settings = { - mapping = { - "" = "cmp.mapping.complete()"; - "" = "cmp.mapping.scroll_docs(-4)"; - "" = "cmp.mapping.close()"; - "" = "cmp.mapping.scroll_docs(4)"; - "" = "cmp.mapping.confirm({ select = true })"; - "" = "cmp.mapping(cmp.mapping.select_prev_item(), {'i', 's'})"; - "" = "cmp.mapping(cmp.mapping.select_next_item(), {'i', 's'})"; - }; - sources = [ - { name = "path"; } - { name = "nvim_lsp"; } - ]; - }; - }; - - plugins.web-devicons = { - enable = true; - }; - - plugins.neo-tree = { - enable = true; - - closeIfLastWindow = true; - window = { - width = 30; - autoExpandWidth = true; - }; - - extraOptions = { - default_component_configs.git_status.symbols = { - # Change type - added = "+"; - deleted = "✕"; - modified = "✦"; - renamed = "→"; - - # Status type - untracked = "?"; - ignored = "▫"; - unstaged = "□"; - staged = "■"; - conflict = "‼"; - }; - }; - }; - - #plugins.cmp-nvim-lsp.enable = true; - - plugins.gitsigns = { - enable = true; - settings.current_line_blame = true; - }; - - #plugins.copilot-vim = { - # enable = true; - #}; - - # plugins.vimtex = { - # enable = true; - # texlivePackage = null; - # settings = { - # view_method = "zathura"; - # }; - # }; - }; - programs.neovim.defaultEditor = true; - }; -} diff --git a/unorganized/user-modules/obsidian/default.nix b/unorganized/user-modules/obsidian/default.nix deleted file mode 100644 index e7057e3..0000000 --- a/unorganized/user-modules/obsidian/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.obsidian; -in -{ - options.modules.obsidian = { - enable = mkEnableOption "obsidian"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ "obsidian" ]; - - home.packages = with pkgs; [ obsidian ]; - }; -} diff --git a/unorganized/user-modules/rofi/default.nix b/unorganized/user-modules/rofi/default.nix deleted file mode 100644 index 0b1d8a6..0000000 --- a/unorganized/user-modules/rofi/default.nix +++ /dev/null @@ -1,62 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.rofi; - theme = config.desktop.theming; - colors = theme.colors; -in -{ - options.modules.rofi.enable = mkEnableOption "rofi"; - - config = mkIf cfg.enable { - programs.rofi = { - enable = true; - terminal = config.default.terminal; - package = pkgs.rofi-wayland; - font = "${theme.fonts.interface.name} ${toString (theme.fonts.interface.recommendedSize)}"; - theme = - let - inherit (config.lib.formats.rasi) mkLiteral; - in - { - "*" = { - background-color = mkLiteral "rgba(0, 0, 0, 0%)"; - border-color = mkLiteral "#${colors.fg}"; - text-color = mkLiteral "#${colors.fg}"; - }; - mainbox = { - background-color = mkLiteral "#${colors.bg}"; - border = mkLiteral "${toString theme.layout.borderSize}px"; - }; - element-text = { - highlight = mkLiteral "#${colors.fg-search}"; - }; - inputbar = { - children = mkLiteral "[textbox-search, entry]"; - }; - listview = { - padding = mkLiteral "2px 0px"; - }; - textbox-search = { - expand = false; - content = "> "; - }; - "inputbar, message" = { - padding = mkLiteral "2px"; - }; - element = { - padding = mkLiteral "1px 2px 3px 2px"; - }; - "element selected" = { - background-color = mkLiteral "#${colors.border-unfocused}"; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/rofi/rofi-rbw.nix b/unorganized/user-modules/rofi/rofi-rbw.nix deleted file mode 100644 index 451486d..0000000 --- a/unorganized/user-modules/rofi/rofi-rbw.nix +++ /dev/null @@ -1,30 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.rofi-rbw; -in -{ - options.modules.rofi-rbw.enable = mkEnableOption "rofi-rbw"; - - config = mkIf cfg.enable { - modules.rofi.enable = true; - - home.packages = [ pkgs.rofi-rbw ]; - - # TODO: Move to separate module and make configurable - programs.rbw = { - enable = true; - settings = { - base_url = "https://keys.bulthuis.dev"; - email = "jan@bulthuis.dev"; - pinentry = pkgs.pinentry; - }; - }; - }; -} diff --git a/unorganized/user-modules/scripts/default.nix b/unorganized/user-modules/scripts/default.nix deleted file mode 100644 index 5bbfc98..0000000 --- a/unorganized/user-modules/scripts/default.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.scripts; -in -{ - options.modules.scripts.enable = mkEnableOption "scripts"; - - config = mkIf cfg.enable { - # home.packages = with pkgs; map (path: (writeShellScriptBin "${path}" (readFile path))) scripts; - home.packages = with pkgs; [ - (writeShellScriptBin "mkenv" (readFile ./mkenv.sh)) - ]; - }; -} diff --git a/unorganized/user-modules/scripts/mkenv.sh b/unorganized/user-modules/scripts/mkenv.sh deleted file mode 100644 index 76df1d4..0000000 --- a/unorganized/user-modules/scripts/mkenv.sh +++ /dev/null @@ -1,53 +0,0 @@ -setupEnv () { - echo "Setting up .envrc" - if git rev-parse --is-inside-work-tree > /dev/null 2>&1; then - insideGit; - else - outsideGit; - fi; -} - -insideGit () { - echo "Inside of git environment" - cd $(git rev-parse --show-toplevel) - echo "Setting up inside $PWD" - echo "git add -f --intent-to-add flake.nix -use flake ." > .envrc - - echo "Enabling environment" - direnv allow - - setupFlake -} - -outsideGit () { - echo "Outside of git environment" - echo "use flake . --impure" > .envrc - - echo "Enabling environment" - direnv allow - - setupFlake -} - -setupFlake () { - if [ -e flake.nix ]; then - echo "flake.nix already exists." - return - fi; - - echo "Setting up flake.nix" - echo "{ - inputs.devenv.url = \"git+https://git.bulthuis.dev/Jan/dotfiles\"; - outputs = { devenv, ... }: devenv.lib.mkShell { }; -}" > flake.nix -} - -echo "Creating dev environment" - -if [ -e .envrc ]; then - echo ".envrc already exists." - setupFlake -else - setupEnv -fi; \ No newline at end of file diff --git a/unorganized/user-modules/shell/bash.nix b/unorganized/user-modules/shell/bash.nix deleted file mode 100644 index 8d8cfb4..0000000 --- a/unorganized/user-modules/shell/bash.nix +++ /dev/null @@ -1,21 +0,0 @@ -{ - lib, - config, - ... -}: - -with lib; -let - cfg = config.modules.bash; -in -{ - options.modules.bash = { - enable = mkEnableOption "bash"; - }; - - config.programs.bash = { - enable = cfg.enable; - - shellAliases = config.modules.shell.aliases; - }; -} diff --git a/unorganized/user-modules/shell/default.nix b/unorganized/user-modules/shell/default.nix deleted file mode 100644 index e15d2a6..0000000 --- a/unorganized/user-modules/shell/default.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ - lib, - ... -}: - -with lib; -{ - options.modules.shell = { - aliases = mkOption { - type = types.attrsOf types.str; - default = { - "..." = "cd ../.."; - }; - description = "Shell aliases"; - }; - }; -} diff --git a/unorganized/user-modules/shell/fish.nix b/unorganized/user-modules/shell/fish.nix deleted file mode 100644 index e020d43..0000000 --- a/unorganized/user-modules/shell/fish.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.fish; -in -{ - options.modules.fish = { - enable = mkEnableOption "fish"; - - plugins = { - done = mkEnableOption "done"; - fzf = mkEnableOption "fzf"; - grc = mkEnableOption "grc"; - }; - }; - - config = mkIf cfg.enable { - # Make bash load into fish - # Bash will remain the default shell as fish is not POSIX compliant. - modules.bash.enable = true; - programs.bash.initExtra = '' - if [[ $(${pkgs.procps}/bin/ps --no-header --pid=$PPID --format=comm) != "fish" && -z ''${BASH_EXECUTION_STRING} ]] - then - shopt -q login_shell && LOGIN_OPTION='--login' || LOGIN_OPTION="" - exec ${pkgs.fish}/bin/fish $LOGIN_OPTION - fi - ''; - - # Actual fish configuration - programs.fish = { - enable = true; - - shellAliases = config.modules.shell.aliases; - - plugins = [ - (mkIf cfg.plugins.done { - name = "done"; - src = pkgs.fishPlugins.done.src; - }) - (mkIf cfg.plugins.fzf { - name = "fzf"; - src = pkgs.fishPlugins.fzf-fish.src; - }) - (mkIf cfg.plugins.grc { - name = "grc"; - src = pkgs.fishPlugins.grc.src; - }) - ]; - }; - - # Fish plugin dependencies - home.packages = with pkgs; [ - (mkIf cfg.plugins.fzf fzf) - (mkIf cfg.plugins.grc grc) - ]; - }; -} diff --git a/unorganized/user-modules/spotify/default.nix b/unorganized/user-modules/spotify/default.nix deleted file mode 100644 index 4f81156..0000000 --- a/unorganized/user-modules/spotify/default.nix +++ /dev/null @@ -1,24 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.spotify; -in -{ - options.modules.spotify.enable = mkEnableOption "spotify"; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ - "spotify" - ]; - - home.packages = with pkgs; [ - spotify - ]; - }; -} diff --git a/unorganized/user-modules/terminal/default.nix b/unorganized/user-modules/terminal/default.nix deleted file mode 100644 index f6c1aef..0000000 --- a/unorganized/user-modules/terminal/default.nix +++ /dev/null @@ -1,17 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -{ - options.default.terminal = mkOption { - type = types.str; - # TODO: Make sure everything works even without a default value here - # Maybe make sure most gui applications do not exist in the default specialisation - default = "foot"; - description = "Default terminal application"; - }; -} diff --git a/unorganized/user-modules/terminal/foot/default.nix b/unorganized/user-modules/terminal/foot/default.nix deleted file mode 100644 index 3588481..0000000 --- a/unorganized/user-modules/terminal/foot/default.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.foot; -in -{ - options.modules.foot.enable = mkEnableOption "foot"; - - config = mkIf cfg.enable { - default.terminal = mkDefault "${pkgs.foot}/bin/foot"; - - programs.foot = { - enable = true; - settings = { - main = - let - font = config.desktop.theming.fonts.monospace.name; - size = toString config.desktop.theming.fonts.monospace.recommendedSize; - in - { - font = mkForce "${font}:style=Regular:size=${size}"; - font-bold = "${font}:style=Bold:size=${size}"; - font-italic = "${font}:style=Italic:size=${size}"; - font-bold-italic = "${font}:style=Bold Italic:size=${size}"; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/vscode/default.nix b/unorganized/user-modules/vscode/default.nix deleted file mode 100644 index f8b9748..0000000 --- a/unorganized/user-modules/vscode/default.nix +++ /dev/null @@ -1,103 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.vscode; - theme = config.desktop.theming; -in -{ - options.modules.vscode = { - enable = mkEnableOption "vscode"; - codeFont = mkOption { - type = types.anything; - default = theme.fonts.pkgs."Fira Code"; - }; - fallbackFont = mkOption { - type = types.anything; - default = theme.fonts.pkgs."Symbols Nerd Font Mono"; - }; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ - "vscode" - "vscode-extension-github-copilot" - "vscode-extension-github-copilot-chat" - "vscode-extension-ms-vsliveshare-vsliveshare" - "vscode-extension-ms-vscode-remote-remote-ssh" - ]; - - desktop.theming.fonts.extraFonts = [ cfg.codeFont ]; - - programs.vscode = { - enable = true; - - mutableExtensionsDir = false; - profiles.default = { - extensions = with pkgs.vscode-extensions; [ - eamodio.gitlens - ms-vscode.hexeditor - mkhl.direnv - usernamehw.errorlens - gruntfuggly.todo-tree - github.copilot - github.copilot-chat - tomoki1207.pdf - ms-vsliveshare.vsliveshare - ms-vscode-remote.remote-ssh - ]; - - userSettings = - let - font-family = mkForce "'${cfg.codeFont.name}', '${cfg.fallbackFont.name}'"; - # TODO: Move the conversion factor to theme settings - font-size = mkForce cfg.codeFont.recommendedSize; # Convert pt to px - in - { - # Font setup - "editor.fontFamily" = font-family; - "editor.inlayHints.fontFamily" = font-family; - "editor.inlineSuggest.fontFamily" = font-family; - "editor.fontSize" = font-size; - "editor.fontLigatures" = true; - "terminal.integrated.fontFamily" = font-family; - "terminal.integrated.fontSize" = font-size; - "chat.editor.fontFamily" = font-family; # TODO: Change this font to the standard UI font - "chat.editor.fontSize" = font-size; - "debug.console.fontFamily" = font-family; - "debug.console.fontSize" = font-size; - "scm.inputFontFamily" = font-family; # TODO: Change this font to the standard UI font - "scm.inputFontSize" = font-size; - "markdown.preview.fontFamily" = mkForce theme.fonts.sansSerif.name; # TODO: Change this font to the standard UI font - "markdown.preview.fontSize" = mkForce theme.fonts.sansSerif.recommendedSize; - - # Formatting - "editor.formatOnSave" = true; - "editor.tabSize" = 4; - - # Layout - "window.menuBarVisibility" = "hidden"; - - # Git settings - "git.autofetch" = true; - "git.enableSmartCommit" = false; - "git.suggestSmartCommit" = false; - - # Disable update notifications - "update.mode" = "none"; - - # TODO: Move to direnv module - # Ignore direnv folder - "files.exclude" = { - ".direnv" = true; - }; - }; - }; - }; - }; -} diff --git a/unorganized/user-modules/whatsapp/default.nix b/unorganized/user-modules/whatsapp/default.nix deleted file mode 100644 index 3abcb6c..0000000 --- a/unorganized/user-modules/whatsapp/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.whatsapp; -in -{ - options.modules.whatsapp = { - enable = mkEnableOption "whatsapp"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ "whatsapp-for-linux" ]; - - home.packages = with pkgs; [ whatsapp-for-linux ]; - }; -} diff --git a/unorganized/user-modules/winbox/default.nix b/unorganized/user-modules/winbox/default.nix deleted file mode 100644 index bef4cfd..0000000 --- a/unorganized/user-modules/winbox/default.nix +++ /dev/null @@ -1,22 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.winbox; -in -{ - options.modules.winbox = { - enable = mkEnableOption "winbox"; - }; - - config = mkIf cfg.enable { - modules.unfree.allowedPackages = [ "winbox" ]; - - home.packages = with pkgs; [ winbox ]; - }; -} diff --git a/unorganized/user-modules/wprs/default.nix b/unorganized/user-modules/wprs/default.nix deleted file mode 100644 index 8f23b94..0000000 --- a/unorganized/user-modules/wprs/default.nix +++ /dev/null @@ -1,83 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.wprs; - - wprsHostConfigurationModule = types.submodule { - options = { - name = mkOption { - type = types.str; - description = "Command name."; - }; - command = mkOption { - type = types.str; - description = "Command to run."; - }; - }; - }; -in -{ - options.modules.wprs = { - enable = mkEnableOption "Enable wprs"; - hosts = mkOption { - type = types.attrsOf (types.listOf wprsHostConfigurationModule); - default = { }; - description = "wprs commands to add as desktop files"; - }; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - wprs - ]; - - xdg.desktopEntries = ( - listToAttrs ( - map - (entry: { - name = "wprs${ - builtins.substring 0 12 (builtins.hashString "sha256" "${entry.name} (${entry.comment})") - }"; - value = entry // { - type = "Application"; - terminal = false; - genericName = entry.comment; - }; - }) - ( - concatMap ( - entry: - let - host = entry.name; - commands = entry.value; - hostEntries = [ - { - name = "Wprs - Attach"; - comment = host; - exec = "wprs --pulseaudio-forwarding False ${host} attach"; - } - { - name = "Wprs - Detach"; - comment = host; - exec = "wprs ${host} detach"; - } - ]; - commandEntries = map (command: { - name = "Wprs - ${command.name}"; - comment = host; - exec = "wprs --pulseaudio-forwarding False ${host} run \"${command.command}\""; - }) commands; - in - (hostEntries ++ commandEntries) - ) (attrsToList cfg.hosts) - ) - ) - ); - }; -} diff --git a/unorganized/user-modules/xpra/default.nix b/unorganized/user-modules/xpra/default.nix deleted file mode 100644 index 2653f4e..0000000 --- a/unorganized/user-modules/xpra/default.nix +++ /dev/null @@ -1,63 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -with lib; -let - cfg = config.modules.xpra; -in -{ - options.modules.xpra = { - enable = mkEnableOption "Enable xpra"; - hosts = mkOption { - type = types.listOf types.str; - default = { }; - description = "xpra hosts"; - }; - }; - - config = mkIf cfg.enable { - home.packages = with pkgs; [ - xpra - ]; - - xdg.desktopEntries = ( - listToAttrs ( - map - (entry: { - name = "xpra${ - builtins.substring 0 12 (builtins.hashString "sha256" "${entry.name} (${entry.comment})") - }"; - value = entry // { - type = "Application"; - terminal = false; - genericName = entry.comment; - }; - }) - ( - concatMap ( - host: - let - uri = "tcp://${host}:15151/7"; - in - [ - { - name = "Xpra - Attach"; - comment = host; - exec = "xpra attach --min-quality=100 --min-speed=100 --encoding=png --speaker=off ${uri}"; - } - { - name = "Xpra - Detach"; - comment = host; - exec = "xpra detach ${uri}"; - } - ] - ) cfg.hosts - ) - ) - ); - }; -} diff --git a/unorganized/user-modules/zathura/default.nix b/unorganized/user-modules/zathura/default.nix deleted file mode 100644 index dbbe6af..0000000 --- a/unorganized/user-modules/zathura/default.nix +++ /dev/null @@ -1,36 +0,0 @@ -{ - config, - lib, - pkgs, - ... -}: - -let - cfg = config.modules.zathura; - colors = config.desktop.theming.colors; -in -{ - options.modules.zathura.enable = lib.mkEnableOption "zathura"; - - config = lib.mkIf cfg.enable { - programs.zathura = { - enable = true; - - options = { - guioptions = "none"; - recolor = true; - recolor-keephue = false; - recolor-darkcolor = lib.mkForce "#${colors.accent}"; - recolor-lightcolor = lib.mkForce "#${colors.bg}"; - }; - }; - - xdg.mimeApps = { - enable = true; - - defaultApplications = { - "application/pdf" = "zathura"; - }; - }; - }; -} diff --git a/unorganized/users/jan.nix b/unorganized/users/jan.nix deleted file mode 100644 index d07e20e..0000000 --- a/unorganized/users/jan.nix +++ /dev/null @@ -1,370 +0,0 @@ -{ - lib, - config, - pkgs, - ... -}: - -{ - config = ( - lib.recursiveUpdate - { - # State version - home.stateVersion = "24.05"; - - # TODO: Move into modules - home.packages = with pkgs; [ - libreoffice-still - remmina - pinentry - thunderbird - signal-desktop - prusa-slicer - freecad-wayland - inkscape - ente-auth - bitwarden - carla - baobab - gnome-calculator - nautilus - ]; - - # desktop.development = "river-light"; - desktop.enable = true; - desktop.environments = { - river-dark = { - name = "River Dark"; - type = "custom"; - config = { }; - extraConfig = { - modules = { - # Desktop environment - river.enable = true; - waylock.enable = true; - waybar.enable = true; - mako.enable = true; - foot.enable = true; - rofi-rbw.enable = true; - }; - - # TODO: Remove everything below, it is here out of convenience and should be elsewhere - xdg.portal = { - enable = true; - - config.common.default = [ - "wlr" - "gtk" - ]; - - extraPortals = with pkgs; [ - xdg-desktop-portal-gtk - xdg-desktop-portal-wlr - ]; - }; - - # Color scheme - desktop.theming.background = { - image = { - url = "https://i.postimg.cc/tTB3dM3T/1382899.png"; - hash = "sha256-kStcwAtK2vxitU6uaQtZTA5iFS8k0iXkFwinY2M8wQE="; - }; - themed = true; - inverted = false; - }; - desktop.theming.themes.catppuccin = { - enable = true; - flavor = "mocha"; - }; - }; - }; - river-light = { - name = "River Light"; - type = "custom"; - config = { }; - extraConfig = { - modules = { - # Desktop environment - river.enable = true; - waylock.enable = true; - waybar.enable = true; - mako.enable = true; - foot.enable = true; - rofi-rbw.enable = true; - }; - - # TODO: Remove everything below, it is here out of convenience and should be elsewhere - xdg.portal = { - enable = true; - - config.common.default = [ - "wlr" - "gtk" - ]; - - extraPortals = with pkgs; [ - xdg-desktop-portal-gtk - xdg-desktop-portal-wlr - ]; - }; - - # Color scheme - desktop.theming.background = { - image = { - url = "https://raw.githubusercontent.com/dharmx/walls/refs/heads/main/digital/a_drawing_of_a_spider_on_a_white_surface.png"; - hash = "sha256-eCEjM7R9yeHNhZZtvHjrgkfwT25JA7FeMoVwnQ887CQ="; - }; - themed = true; - inverted = false; - }; - desktop.theming.themes.catppuccin = { - enable = true; - flavor = lib.mkForce "latte"; - }; - }; - }; - gnome = { - name = "Gnome"; - type = "custom"; - config = { }; - extraConfig = { - programs = { - gnome-shell.enable = true; - }; - desktop = { - initScript = '' - ${pkgs.gnome-session}/bin/gnome-session - ''; - session = { - type = "wayland"; - desktop = "GNOME"; - }; - }; - modules.river.enable = lib.mkForce false; - - # TODO: Remove everything below, it is here out of convenience and should be elsewhere - xdg.portal = { - enable = true; - - config.common.default = [ - "gnome" - "gtk" - ]; - - extraPortals = with pkgs; [ - xdg-desktop-portal-gnome - xdg-desktop-portal-gtk - ]; - }; - home.packages = [ - # Core utilities - pkgs.epiphany - pkgs.gnome-text-editor - pkgs.gnome-calendar - pkgs.gnome-characters - pkgs.gnome-clocks - pkgs.gnome-console - pkgs.gnome-contacts - pkgs.gnome-font-viewer - pkgs.gnome-logs - pkgs.gnome-maps - pkgs.gnome-music - pkgs.gnome-system-monitor - pkgs.gnome-weather - pkgs.loupe - pkgs.gnome-connections - pkgs.simple-scan - pkgs.snapshot - pkgs.totem - pkgs.yelp - - # Optional packages - pkgs.adwaita-icon-theme - pkgs.gnome-backgrounds - pkgs.gnome-bluetooth - pkgs.gnome-color-manager - pkgs.gnome-control-center - pkgs.gnome-shell-extensions - pkgs.gnome-tour # GNOME Shell detects the .desktop file on first log-in. - pkgs.gnome-user-docs - pkgs.glib # for gsettings program - pkgs.gnome-menus - pkgs.gtk3.out # for gtk-launch program - pkgs.xdg-user-dirs # Update user dirs as described in https://freedesktop.org/wiki/Software/xdg-user-dirs/ - pkgs.xdg-user-dirs-gtk # Used to create the default bookmarks - - # Fonts - pkgs.cantarell-fonts - pkgs.dejavu_fonts - pkgs.source-code-pro # Default monospace font in 3.32 - pkgs.source-sans - - # Other stuff - pkgs.gnome-session - ]; - }; - }; - }; - - # Pipewire roc sink - xdg.configFile."pipewire/pipewire.conf.d/60-roc-sink.conf" = { - text = '' - context.modules = [ - { - name = "libpipewire-module-roc-sink" - args = { - fec.code = "rs8m" - remote.ip = "10.20.60.251" - remote.source.port = 10001 - remote.repair.port = 10002 - sink.name = "Roc Sink" - sink.props.node.name = "roc-sink" - } - } - ] - ''; - }; - - # Enabled modules - modules = { - # Communication - whatsapp.enable = true; - discord.enable = true; - - # Browser - firefox = { - enable = true; - default = false; - }; - qutebrowser = { - enable = true; - default = true; - }; - - # Gaming - steam.enable = true; - # modrinth.enable = true; - # es-de.enable = true; # TODO: Fix, again - retroarch.enable = true; - ryujinx.enable = true; - - # Media - spotify.enable = true; - feishin.enable = true; - - # Tools - git = { - enable = true; - user = "Jan-Bulthuis"; - email = "git@bulthuis.dev"; - # TODO: Move - ignores = [ - ".envrc" - ".direnv" - "flake.nix" - "flake.lock" - ]; - }; - btop.enable = true; - fish.enable = true; - bluetuith.enable = false; - winbox.enable = true; - obsidian.enable = true; - zathura.enable = true; - eduvpn.enable = true; - keyring.enable = true; - scripts.enable = true; - xpra = { - enable = true; - hosts = [ - "mixer@10.20.60.251" - ]; - }; - - # Development - neovim.enable = true; - vscode.enable = true; - docker.enable = true; - matlab.enable = true; - mathematica.enable = true; - - # Languages - haskell.enable = false; - js.enable = true; - nix.enable = true; - rust.enable = true; - python.enable = true; - cpp.enable = true; - tex.enable = true; - jupyter.enable = true; - - # Enable unfree - unfree.enable = true; - }; - - # Theme configuration - desktop.theming = - let - fontpkgs = config.desktop.theming.fonts.pkgs; - in - lib.mkDefault { - # Fonts - fonts.serif = fontpkgs."DejaVu Serif"; - fonts.sansSerif = fontpkgs."DejaVu Sans"; - fonts.monospace = fontpkgs."Dina"; - fonts.emoji = fontpkgs."Noto Color Emoji"; - fonts.interface = fontpkgs."Dina"; - fonts.extraFonts = [ ]; - - # Color scheme - themes.catppuccin = { - enable = true; - flavor = "mocha"; - }; - }; - } - { - # Default desktop environment - modules = { - # Desktop environment - river.enable = true; - waylock.enable = true; - waybar.enable = true; - mako.enable = true; - foot.enable = true; - rofi-rbw.enable = true; - }; - - # TODO: Remove everything below, it is here out of convenience and should be elsewhere - xdg.portal = { - enable = true; - - config.common.default = lib.mkDefault [ - "wlr" - "gtk" - ]; - - extraPortals = - with pkgs; - lib.mkDefault [ - xdg-desktop-portal-gtk - xdg-desktop-portal-wlr - ]; - }; - - # Color scheme - desktop.theming.background = lib.mkDefault { - image = { - url = "https://i.postimg.cc/tTB3dM3T/1382899.png"; - hash = "sha256-kStcwAtK2vxitU6uaQtZTA5iFS8k0iXkFwinY2M8wQE="; - }; - themed = true; - inverted = false; - }; - desktop.theming.themes.catppuccin = { - enable = true; - flavor = "mocha"; - }; - } - ); -} diff --git a/unorganized/users/server.nix b/unorganized/users/server.nix deleted file mode 100644 index e659ae6..0000000 --- a/unorganized/users/server.nix +++ /dev/null @@ -1,52 +0,0 @@ -# How Jan likes his linux to be configured on servers - -{ - pkgs, - ... -}: - -{ - config = { - # State version - home.stateVersion = "24.11"; - - # TODO: Move into modules - home.packages = with pkgs; [ - ]; - - # Enabled modules - modules = { - # Tools - git = { - enable = true; - user = "Jan-Bulthuis"; - email = "git@bulthuis.dev"; - # TODO: Move - ignores = [ - ".envrc" - ".direnv" - "flake.nix" - "flake.lock" - ]; - }; - btop.enable = true; - fish.enable = true; - keyring.enable = true; - scripts.enable = true; - - # Development - neovim.enable = true; - - # Languages - haskell.enable = false; - js.enable = true; - nix.enable = true; - rust.enable = true; - python.enable = true; - cpp.enable = true; - - # Enable unfree - unfree.enable = true; - }; - }; -}