From d41abb956a0bbd41cb28fe5c54c7dde2988e1467 Mon Sep 17 00:00:00 2001 From: Anton Date: Tue, 10 Mar 2026 17:41:28 +0100 Subject: [PATCH] feat: rewrite to more nixy flakes --- .gitignore | 1 - blueplum.nix | 167 +++--- configuration.nix | 143 ++--- flake.lock | 118 ++++ flake.nix | 70 +++ hardware-configuration.nix | 43 ++ home.nix | 88 +-- home/i3.nix | 179 +++--- home/kitty.nix | 102 ++-- home/neovim.nix | 19 +- home/vesktop.nix | 4 + modules/default.nix | 4 + modules/initialFile.nix | 172 ++++++ modules/tetrio/default.nix | 723 +++++++++++++++++++++++++ modules/tetrio/leveldb.nix | 32 ++ pkgs/default.nix | 46 +- pkgs/element/default.nix | 180 ------ pkgs/element/element-desktop-pin.nix | 7 - pkgs/element/seshat/default.nix | 74 --- pkgs/element/seshat/pin.json | 6 - pkgs/element/seshat/update.sh | 49 -- pkgs/fish/default.nix | 14 +- pkgs/flake.nix | 10 + pkgs/leveldb/default.nix | 8 +- pkgs/monaco-font/default.nix | 8 +- pkgs/monaco-font/result | 1 - pkgs/neovim/default.nix | 8 +- pkgs/nimbus/default.nix | 23 + pkgs/nimbus/nimbus-bold.otf | Bin 0 -> 99888 bytes pkgs/nimbus/nimbus-bolditalic.otf | Bin 0 -> 107988 bytes pkgs/nimbus/nimbus.otf | Bin 0 -> 97872 bytes pkgs/tetrio/default.nix | 34 +- pkgs/tetrio/leveldb.nix | 21 +- pkgs/tetrio/module.nix | 4 +- pkgs/tetrio/skins/simple-connected.nix | 23 +- pkgs/wallpaper/default.nix | 8 +- 36 files changed, 1610 insertions(+), 779 deletions(-) create mode 100644 flake.lock create mode 100644 flake.nix create mode 100644 hardware-configuration.nix create mode 100644 modules/default.nix create mode 100644 modules/initialFile.nix create mode 100644 modules/tetrio/default.nix create mode 100644 modules/tetrio/leveldb.nix delete mode 100644 pkgs/element/default.nix delete mode 100644 pkgs/element/element-desktop-pin.nix delete mode 100644 pkgs/element/seshat/default.nix delete mode 100644 pkgs/element/seshat/pin.json delete mode 100644 pkgs/element/seshat/update.sh create mode 100644 pkgs/flake.nix delete mode 120000 pkgs/monaco-font/result create mode 100644 pkgs/nimbus/default.nix create mode 100644 pkgs/nimbus/nimbus-bold.otf create mode 100644 pkgs/nimbus/nimbus-bolditalic.otf create mode 100644 pkgs/nimbus/nimbus.otf diff --git a/.gitignore b/.gitignore index ef6c6c3..749e984 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1 @@ .env.nix -hardware-configuration.nix diff --git a/blueplum.nix b/blueplum.nix index 4cef910..0ade1cd 100644 --- a/blueplum.nix +++ b/blueplum.nix @@ -1,91 +1,104 @@ -{ - config, - pkgs, - lib ? pkgs.lib, - ... -}: - let concat = strings: builtins.concatStringsSep " " strings; - wacom.src = + + displays = let - xsetwacom = "${pkgs.xf86_input_wacom}/bin/xsetwacom"; - awk = lib.getExe pkgs.gawk; + primary = "DP-2"; + secondary = "HDMI-0"; + in - '' - #!/bin/sh - - # Wait for X socket - for i in $(seq 30); do - [ -S /tmp/.X11-unix/X0 ] && break - sleep 0.5 - done - - # Just to be sure that the displays are ready... - sleep 5 - - export DISPLAY=:0 - export XAUTHORITY="$HOME/.Xauthority" - - for i in $(seq 10); do - if ${xsetwacom} list devices | grep -q Wacom; then - break - fi - sleep 1 - done - - stylus=$(${xsetwacom} list devices | ${awk} -F' \t' '/stylus/{print $1}') - - if [ -z "$${stylus}" ]; then - exit 0 - fi - - ${xsetwacom} set "$stylus" MapToOutput HEAD-0 - ''; + { + inherit primary secondary; + xrandr = concat [ + "--output ${primary}" + "--mode 1920x1080" + "--pos 0x0" + "--rate 144" + "--primary" + "" + "--output ${secondary}" + "--mode 1920x1080" + "--pos 1920x0" + "--rate 144" + ]; + }; in { - services.xserver.videoDrivers = [ "nvidia" ]; - services.xserver.wacom.enable = true; + inherit displays; - hardware.nvidia = { - modesetting.enable = true; + nixosModule = + { + pkgs, + config, + lib ? pkgs.lib, + ... + }: + let + wacom.src = + let + xsetwacom = "${pkgs.xf86_input_wacom}/bin/xsetwacom"; + awk = lib.getExe pkgs.gawk; + in + '' + #!/bin/sh - open = true; + # Wait for X socket + for i in $(seq 30); do + [ -S /tmp/.X11-unix/X0 ] && break + sleep 0.5 + done - nvidiaSettings = true; + # Just to be sure that the displays are ready... + sleep 5 - package = config.boot.kernelPackages.nvidiaPackages.stable; - }; + export DISPLAY=:0 + export XAUTHORITY="$HOME/.Xauthority" - home-manager.users.anton.xsession.profileExtra = concat [ - "${lib.getExe pkgs.xrandr}" - "${concat [ - "--output DP-2" - "--mode 1920x1080" - "--pos 0x0" - "--rate 144" - "--primary" - ]}" - "${concat [ - "--output HDMI-0" - "--mode 1920x1080" - "--pos 1920x0" - "--rate 144" - ]}" - ]; + for i in $(seq 10); do + if ${xsetwacom} list devices | grep -q Wacom; then + break + fi + sleep 1 + done - systemd.user.services.wacom = { - enable = true; - description = "Configure my Wacom (One) tablet"; - wantedBy = [ "default.target" ]; - after = [ "graphical-session.target" ]; - serviceConfig = { - Type = "oneshot"; - ExecStart = pkgs.writeShellScript "wacom.sh" wacom.src; + stylus=$(${xsetwacom} list devices | ${awk} -F' \t' '/stylus/{print $1}') + + if [ -z "$${stylus}" ]; then + exit 0 + fi + + ${xsetwacom} set "$stylus" MapToOutput HEAD-0 + ''; + + in + { + + services.xserver.videoDrivers = [ "nvidia" ]; + services.xserver.wacom.enable = true; + + hardware.nvidia = { + modesetting.enable = true; + + open = true; + + nvidiaSettings = true; + + package = config.boot.kernelPackages.nvidiaPackages.stable; + }; + + systemd.user.services.wacom = { + enable = true; + description = "Configure my Wacom (One) tablet"; + wantedBy = [ "default.target" ]; + after = [ "graphical-session.target" ]; + serviceConfig = { + Type = "oneshot"; + ExecStart = pkgs.writeShellScript "wacom.sh" wacom.src; + }; + }; + + services.udev.extraRules = '' + ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="056a", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}+="wacom.service" + ''; }; - }; - - services.udev.extraRules = '' - ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="056a", TAG+="systemd", ENV{SYSTEMD_USER_WANTS}+="wacom.service" - ''; } diff --git a/configuration.nix b/configuration.nix index 546c5c8..6aadfab 100644 --- a/configuration.nix +++ b/configuration.nix @@ -2,31 +2,20 @@ config, pkgs, lib, + hostname, + env, ... + }: -let - stateVersion = "25.05"; - env = import ./.env.nix { inherit pkgs; }; - - mpkgs = import ./pkgs/default.nix { - config = { - system.stateVersion = stateVersion; - }; - }; -in { - imports = [ - # Include the results of the hardware scan. - ./hardware-configuration.nix - (import (./. + "/${env.hostname}.nix")) - mpkgs.home-manager.module - ]; + imports = [ ./hardware-configuration.nix ] ++ lib.optional (env ? nixosModule) env.nixosModule; - nixpkgs.config.allowUnfree = true; - nixpkgs.overlays = [ - (import "${fetchTarball "https://github.com/nix-community/fenix/archive/main.tar.gz"}/overlay.nix") + nix.settings.experimental-features = [ + "nix-command" + "flakes" ]; + nixpkgs.config.allowUnfree = true; environment.systemPackages = with pkgs; [ chromium @@ -43,17 +32,10 @@ in fzf ripgrep - (fenix.stable.withComponents [ - "rustc" - "cargo" - "clippy" - "rust-src" - "rustfmt" - "rust-analyzer" - ]) + # perhaps set up lsps through dev shells someday? nodejs_latest - prettierd typescript-language-server + prettierd pnpm nixd nixfmt @@ -70,8 +52,8 @@ in jetbrains-mono nerd-fonts.symbols-only inter - times-newer-roman - (mpkgs.font.monaco) + nimbus-roman + monaco ]; fonts.fontconfig = { @@ -87,7 +69,7 @@ in "Inter" "Noto Sans" ]; - serif = [ "Times Newer Roman" ]; + serif = [ "Nimbus Roman" ]; }; }; @@ -97,16 +79,13 @@ in windowManager.i3 = { enable = true; - extraPackages = with pkgs; [ rofi i3status ]; }; - displayManager.startx.enable = true; - # Configure keymap in X11 xkb = { layout = "us"; variant = ""; @@ -118,16 +97,14 @@ in greetd = { enable = true; restart = false; - settings = { - default_session = { - command = lib.concatStringsSep " " [ - "${lib.getExe pkgs.tuigreet}" - "--remember" - "--asterisks" - "--time" - ]; - user = "greeter"; - }; + settings.default_session = { + command = lib.concatStringsSep " " [ + "${lib.getExe pkgs.tuigreet}" + "--remember" + "--asterisks" + "--time" + ]; + user = "greeter"; }; }; }; @@ -136,10 +113,10 @@ in programs.fish.enable = true; programs.bash.interactiveShellInit = '' - 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 + 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 ''; # Define a user account. Don't forget to set a password with ‘passwd’. @@ -153,14 +130,6 @@ in ]; }; - home-manager = { - useUserPackages = true; - useGlobalPkgs = true; - sharedModules = [ ] ++ (mpkgs.home-manager.sharedModules); - users.anton = import ./home.nix; - }; - - # programs.home-manager.enable = true; programs.dconf.enable = true; qt = { enable = true; @@ -168,26 +137,25 @@ in style = "adwaita-dark"; }; - hardware.graphics = { - enable = true; - extraPackages = with pkgs; [ - intel-media-driver - intel-vaapi-driver - libvdpau-va-gl - mesa - ]; - }; + hardware = { + graphics = { + enable = true; + extraPackages = with pkgs.unstable; [ + intel-media-driver + intel-vaapi-driver + libvdpau-va-gl + (pkgs.mesa) + ]; + }; + bluetooth = { + enable = true; + powerOnBoot = true; - hardware.bluetooth = { - enable = true; - powerOnBoot = true; - - settings = { - General = { + settings.General = { Experimental = true; FastConnectable = true; }; - Policy.AutoEnable = true; + settings.Policy.AutoEnable = true; }; }; @@ -198,26 +166,27 @@ in services.gnome.gnome-keyring.enable = true; - # Bootloader. - boot.loader.systemd-boot = { - enable = true; - configurationLimit = 10; + boot = { + loader.systemd-boot = { + enable = true; + configurationLimit = 10; + }; + loader.efi.canTouchEfiVariables = true; + + kernelParams = [ "console=tty1" ]; + kernelPackages = pkgs.unstable.linuxPackages_latest; }; - boot.loader.efi.canTouchEfiVariables = true; - boot.kernelParams = [ "console=tty1" ]; + networking = { + hostName = hostname; - boot.kernelPackages = pkgs.linuxPackages_latest; - - networking.hostName = env.hostname; - networking.firewall.enable = false; - - networking.networkmanager.enable = true; + firewall.enable = false; + networkmanager.enable = true; + }; time.timeZone = "Europe/Stockholm"; i18n.defaultLocale = "en_US.UTF-8"; - i18n.extraLocaleSettings = { LC_ADDRESS = "sv_SE.UTF-8"; LC_IDENTIFICATION = "sv_SE.UTF-8"; @@ -230,13 +199,11 @@ in LC_TIME = "sv_SE.UTF-8"; }; - nix.settings.extra-experimental-features = [ "nix-command" ]; - # This value determines the NixOS release from which the default # settings for stateful data, like file locations and database versions # on your system were taken. It‘s perfectly fine and recommended to leave # this value at the release version of the first install of this system. # Before changing this value read the documentation for this option # (e.g. man configuration.nix or on https://nixos.org/nixos/options.html). - system.stateVersion = stateVersion; # Did you read the comment? + system.stateVersion = "25.05"; # Did you read the comment? } diff --git a/flake.lock b/flake.lock new file mode 100644 index 0000000..e1c032a --- /dev/null +++ b/flake.lock @@ -0,0 +1,118 @@ +{ + "nodes": { + "home-manager": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1772985280, + "narHash": "sha256-FdrNykOoY9VStevU4zjSUdvsL9SzJTcXt4omdEDZDLk=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "8f736f007139d7f70752657dff6a401a585d6cbc", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "release-25.11", + "repo": "home-manager", + "type": "github" + } + }, + "nixpkgs": { + "locked": { + "lastModified": 1772822230, + "narHash": "sha256-yf3iYLGbGVlIthlQIk5/4/EQDZNNEmuqKZkQssMljuw=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "71caefce12ba78d84fe618cf61644dce01cf3a96", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-25.11", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs-unstable": { + "locked": { + "lastModified": 1772963539, + "narHash": "sha256-9jVDGZnvCckTGdYT53d/EfznygLskyLQXYwJLKMPsZs=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "9dcb002ca1690658be4a04645215baea8b95f31d", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_2": { + "locked": { + "lastModified": 1772963539, + "narHash": "sha256-9jVDGZnvCckTGdYT53d/EfznygLskyLQXYwJLKMPsZs=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "9dcb002ca1690658be4a04645215baea8b95f31d", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "overlay": { + "inputs": { + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "path": "./pkgs", + "type": "path" + }, + "original": { + "path": "./pkgs", + "type": "path" + }, + "parent": [] + }, + "root": { + "inputs": { + "home-manager": "home-manager", + "nixpkgs": "nixpkgs", + "nixpkgs-unstable": "nixpkgs-unstable", + "overlay": "overlay", + "sops-nix": "sops-nix" + } + }, + "sops-nix": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1773096132, + "narHash": "sha256-M3zEnq9OElB7zqc+mjgPlByPm1O5t2fbUrH3t/Hm5Ag=", + "owner": "Mic92", + "repo": "sops-nix", + "rev": "d1ff3b1034d5bab5d7d8086a7803c5a5968cd784", + "type": "github" + }, + "original": { + "owner": "Mic92", + "repo": "sops-nix", + "type": "github" + } + } + }, + "root": "root", + "version": 7 +} diff --git a/flake.nix b/flake.nix new file mode 100644 index 0000000..03d6d87 --- /dev/null +++ b/flake.nix @@ -0,0 +1,70 @@ +{ + description = "System configuration"; + inputs = { + nixpkgs.url = "github:nixos/nixpkgs/nixos-25.11"; + nixpkgs-unstable.url = "github:nixos/nixpkgs/nixos-unstable"; + + home-manager.url = "github:nix-community/home-manager/release-25.11"; + home-manager.inputs.nixpkgs.follows = "nixpkgs"; + + sops-nix.url = "github:Mic92/sops-nix"; + sops-nix.inputs.nixpkgs.follows = "nixpkgs"; + + overlay.url = "path:./pkgs"; + }; + outputs = + { + self, + nixpkgs, + nixpkgs-unstable, + home-manager, + sops-nix, + overlay, + }@inputs: + let + systems = [ + "aarch64-linux" + "i686-linux" + "x86_64-linux" + "aarch64-darwin" + "x86_64-darwin" + + ]; + forAllSystems = nixpkgs.lib.genAttrs systems; + hostname = "blueplum"; + env = import ./${hostname}.nix; + in + { + formatter = forAllSystems (system: nixpkgs.legacyPackages.${system}.nixfmt); + + nixosConfigurations.blueplum = nixpkgs.lib.nixosSystem { + specialArgs = { inherit inputs hostname env; }; + modules = [ + { + nixpkgs.overlays = [ + overlay.overlays.default + (final: prev: { + unstable = import nixpkgs-unstable { + inherit (final) config; + inherit (final.stdenv.hostPlatform) system; + }; + }) + ]; + } + ./configuration.nix + home-manager.nixosModules.home-manager + { + home-manager = { + useGlobalPkgs = true; + useUserPackages = true; + users.anton = import ./home.nix; + sharedModules = import ./modules; + extraSpecialArgs = { inherit hostname env; }; + }; + } + sops-nix.nixosModules.sops + ]; + }; + + }; +} diff --git a/hardware-configuration.nix b/hardware-configuration.nix new file mode 100644 index 0000000..a1a9b2e --- /dev/null +++ b/hardware-configuration.nix @@ -0,0 +1,43 @@ +# Do not modify this file! It was generated by ‘nixos-generate-config’ +# and may be overwritten by future invocations. Please make changes +# to /etc/nixos/configuration.nix instead. +{ config, lib, pkgs, modulesPath, ... }: + +{ + imports = + [ (modulesPath + "/installer/scan/not-detected.nix") + ]; + + boot.initrd.availableKernelModules = [ "xhci_pci" "ahci" "nvme" "usbhid" "sd_mod" ]; + boot.initrd.kernelModules = [ ]; + boot.kernelModules = [ "kvm-intel" ]; + boot.extraModulePackages = [ ]; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/2a269992-8aaa-4600-99b7-9020e8cd8cfc"; + fsType = "ext4"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/D622-8FDF"; + fsType = "vfat"; + options = [ "fmask=0077" "dmask=0077" ]; + }; + + fileSystems."/home/anton/mnt/sda" = + { device = "/dev/disk/by-uuid/735e9ebf-71f7-49ce-a2d7-5e62a8820f2a"; + fsType = "ext4"; + }; + + swapDevices = [ ]; + + # Enables DHCP on each ethernet and wireless interface. In case of scripted networking + # (the default) this is the recommended approach. When using systemd-networkd it's + # still possible to use this option, but it's recommended to use it in conjunction + # with explicit per-interface declarations with `networking.interfaces..useDHCP`. + networking.useDHCP = lib.mkDefault true; + # networking.interfaces.eno1.useDHCP = lib.mkDefault true; + + nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; + hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; +} diff --git a/home.nix b/home.nix index d261a06..ec67fed 100644 --- a/home.nix +++ b/home.nix @@ -1,19 +1,21 @@ { pkgs, - lib ? pkgs.lib, + lib, + env, ... }: let - mpkgs = import ./pkgs/default.nix { }; - inherit (mpkgs.config) neovim fish; - - env = import ./.env.nix { inherit pkgs; }; - + # env = import ./.env.nix { inherit pkgs; }; home = /home/anton; in { - imports = [ ]; + imports = [ + ./home/vesktop.nix + ./home/kitty.nix + ./home/i3.nix + ] + ++ lib.optional (env ? homeManager) env.homeManager; home.username = lib.mkDefault "anton"; home.homeDirectory = lib.mkDefault home; @@ -27,7 +29,6 @@ in vscode godotPackages_4_5.godot - neovim btop xclip tree @@ -36,9 +37,6 @@ in hyperfine bat - typst - tinymist - # required by spotify ffmpeg_4 ]; @@ -51,36 +49,42 @@ in package = pkgs.posy-cursors; }; - xsession = { - enable = true; - windowManager.i3 = import ./home/i3.nix { inherit pkgs; }; - }; - programs.btop.enable = true; programs.fastfetch.enable = true; - programs.kitty = import ./home/kitty.nix { inherit pkgs; }; - - programs.fish = { + programs.direnv = { enable = true; - shellInit = '' - set fish_function_path $fish_function_path ${fish}/functions - ''; - interactiveShellInit = '' - source ${fish}/config.fish - ''; + nix-direnv.enable = true; }; + programs.fish = + let + config = pkgs.configs.fish; + in + { + enable = true; + shellInit = '' + set fish_function_path $fish_function_path ${config}/functions + ''; + interactiveShellInit = '' + source ${config}/config.fish + ''; + }; + # Fix Fish command not found issues programs.command-not-found.enable = false; programs.neovim = { enable = true; defaultEditor = true; - extraConfig = '' - set runtimepath+=${neovim} - source ${neovim}/init.lua - ''; + extraConfig = + let + config = pkgs.configs.neovim; + in + '' + set runtimepath+=${config} + source ${config}/init.lua + ''; }; programs.rofi = { @@ -92,14 +96,14 @@ in programs.git = { enable = true; - signing = - if (env.git or { }) ? signingKey then - { - key = env.git.signingKey; - signByDefault = true; - } - else - { signByDefault = false; }; + # signing = + # if (env.git or { }) ? signingKey then + # { + # key = env.git.signingKey; + # signByDefault = true; + # } + # else + # { signByDefault = false; }; settings = { user.name = "Anton"; @@ -135,12 +139,12 @@ in programs.tetrio-desktop = { enable = true; - package = mpkgs.tetrio.desktop; + package = pkgs.tetrio.desktop; plus = { enable = true; - package = mpkgs.tetrio.plus; - skin.package = mpkgs.tetrio.skins.simple-connected; + package = pkgs.tetrio.plus; + skin.package = pkgs.tetrio.skins.simple-connected; }; settings = { @@ -193,7 +197,7 @@ in }; }; - programs.vesktop = import ./home/vesktop.nix; + # programs.vesktop = pkgs.callPackage { }; services.gpg-agent = { enable = true; @@ -217,5 +221,5 @@ in NIXPKGS_ALLOW_UNFREE = 1; }; - home.stateVersion = mpkgs.system.stateVersion; + home.stateVersion = "25.11"; } diff --git a/home/i3.nix b/home/i3.nix index f714d2c..ffe73ef 100644 --- a/home/i3.nix +++ b/home/i3.nix @@ -1,106 +1,101 @@ { pkgs, - lib ? pkgs.lib, + lib, + env, ... }: let mod = "Mod4"; - - wallpaper = pkgs.callPackage ../pkgs/wallpaper/default.nix { }; - - env = import /etc/nixos/.env.nix { inherit pkgs; }; + displays = if env ? displays then env.displays else null; in { - enable = true; + xsession.windowManager.i3 = { + enable = true; - config = { - modifier = mod; + config = { + modifier = mod; - fonts = { - names = [ "Monaco" ]; - size = 8.0; - }; + fonts = { + names = [ "Monaco" ]; + size = 8.0; + }; - keybindings = lib.mkOptionDefault { - "${mod}+q" = "kill"; - "${mod}+n" = "exec \"${ - lib.concatStringsSep " " [ - "${lib.getExe pkgs.rofi}" - "-show combi" - "-modes combi" - "-combi-modes drun,run" - "-combi-display-format {text}" - ] - }\""; - "${mod}+Return" = "exec ${lib.getExe pkgs.kitty}"; - - "${mod}+Left" = "focus left"; - "${mod}+Right" = "focus right"; - "${mod}+Up" = "focus up"; - "${mod}+Down" = "focus down"; - - "${mod}+Shift+Left" = "move left"; - "${mod}+Shift+Right" = "move right"; - "${mod}+Shift+Up" = "move up"; - "${mod}+Shift+Down" = "move down"; - - "${mod}+Ctrl+Left" = "move workspace to output left"; - "${mod}+Ctrl+Right" = "move workspace to output right"; - - "Print" = "exec ${lib.getExe pkgs.flameshot} gui"; - }; - }; - - extraConfig = - let - background = lib.concatStringsSep " " [ - "exec --no-startup-id" - (lib.concatStringsSep " " [ - (lib.getExe pkgs.xwinwrap) - "-g 3820x1080" - "-s" - "-b" - "-ni" - "-sp" - "-ov" - "-nf" - ]) - "--" - (lib.concatStringsSep " " [ - (lib.getExe pkgs.mpv) - "${wallpaper}/wallpaper.mov" - "-wid WID" - "--loop" - "--no-audio" - "--no-osc" - "--no-input-default-bindings" - "--no-input-cursor" - "--gpu-api=vulkan" - "--vo=gpu-next" - "--framedrop=vo" - "--profile=low-latency" - "--hwdec=auto" - ]) - ]; - displays = - if (env ? displays) then - lib.concatStringsSep "\n" [ - "workspace 1 output ${env.displays.primary}" - (if (env.displays ? secondary) then "workspace 2 output ${env.displays.secondary}" else "") - "exec i3-msg focus output ${env.displays.primary}" - ( - if (env.displays ? xrandr) then - "exec \"${lib.getExe pkgs.xrandr} ${env.displays.xrandr}\"" - else - "" - ) + keybindings = lib.mkOptionDefault { + "${mod}+q" = "kill"; + "${mod}+n" = "exec \"${ + lib.concatStringsSep " " [ + "${lib.getExe pkgs.rofi}" + "-show combi" + "-modes combi" + "-combi-modes drun,run" + "-combi-display-format {text}" ] - else - ""; - in - lib.concatStringsSep "\n" [ - background - displays - ]; + }\""; + "${mod}+Return" = "exec ${lib.getExe pkgs.kitty}"; + + "${mod}+Left" = "focus left"; + "${mod}+Right" = "focus right"; + "${mod}+Up" = "focus up"; + "${mod}+Down" = "focus down"; + + "${mod}+Shift+Left" = "move left"; + "${mod}+Shift+Right" = "move right"; + "${mod}+Shift+Up" = "move up"; + "${mod}+Shift+Down" = "move down"; + + "${mod}+Ctrl+Left" = "move workspace to output left"; + "${mod}+Ctrl+Right" = "move workspace to output right"; + + "Print" = "exec ${lib.getExe pkgs.flameshot} gui"; + }; + }; + + extraConfig = + let + background = lib.concatStringsSep " " [ + "exec --no-startup-id" + (lib.concatStringsSep " " [ + (lib.getExe pkgs.xwinwrap) + "-g 3820x1080" + "-s" + "-b" + "-ni" + "-sp" + "-ov" + "-nf" + ]) + "--" + (lib.concatStringsSep " " [ + (lib.getExe pkgs.mpv) + "${pkgs.wallpaper}/wallpaper.mov" + "-wid WID" + "--loop" + "--no-audio" + "--no-osc" + "--no-input-default-bindings" + "--no-input-cursor" + "--gpu-api=vulkan" + "--vo=gpu-next" + "--framedrop=vo" + "--profile=low-latency" + "--hwdec=auto" + ]) + ]; + displayConf = + if displays != null then + lib.concatStringsSep "\n" [ + "workspace 1 output ${displays.primary}" + (if (displays ? secondary) then "workspace 2 output ${displays.secondary}" else "") + "exec i3-msg focus output ${displays.primary}" + (if (displays ? xrandr) then "exec \"${lib.getExe pkgs.xrandr} ${displays.xrandr}\"" else "") + ] + else + ""; + in + lib.concatStringsSep "\n" [ + background + displayConf + ]; + }; } diff --git a/home/kitty.nix b/home/kitty.nix index 55af03b..ed2f758 100644 --- a/home/kitty.nix +++ b/home/kitty.nix @@ -1,49 +1,59 @@ -{ pkgs, ... }: - { - enable = true; - font = { - package = pkgs.jetbrains-mono; - name = "JetBrains Mono"; - size = 13; + pkgs, + lib, + ... +}: + +let + makeTheme = + attrs: builtins.concatStringsSep "\n" (lib.mapAttrsToList (k: v: "${k} ${toString v}") attrs); +in +{ + programs.kitty = { + enable = true; + font = { + package = pkgs.jetbrains-mono; + name = "JetBrains Mono"; + size = 13; + }; + extraConfig = makeTheme { + foreground = "#f2f4f8"; + background = "#161616"; + selection_foreground = "#f2f4f8"; + selection_background = "#2a2a2a"; + + cursor = "#f2f4f8"; + cursor_text_color = "#161616"; + + url_color = "#25be6a"; + + active_border_color = "#78a9ff"; + inactive_border_color = "#535353"; + bell_border_color = "#3ddbd9"; + + active_tab_foreground = "#0c0c0c"; + active_tab_background = "#78a9ff"; + inactive_tab_foreground = "#6e6f70"; + inactive_tab_background = "#2a2a2a"; + + color0 = "#282828"; + color8 = "#484848"; + color1 = "#ee5396"; + color9 = "#f16da6"; + color2 = "#25be6a"; + color10 = "#46c880"; + color3 = "#ebcb8b"; + color11 = "#f0d399"; + color4 = "#78a9ff"; + color12 = "#8cb6ff"; + color5 = "#be95ff"; + color13 = "#c8a5ff"; + color6 = "#33b1ff"; + color14 = "#52bdff"; + color7 = "#dfdfe0"; + color15 = "#e4e4e5"; + color16 = "#3ddbd9"; + color17 = "#ff7eb6"; + }; }; - extraConfig = '' - foreground #f2f4f8 - background #161616 - selection_foreground #f2f4f8 - selection_background #2a2a2a - - cursor #f2f4f8 - cursor_text_color #161616 - - url_color #25be6a - - active_border_color #78a9ff - inactive_border_color #535353 - bell_border_color #3ddbd9 - - active_tab_foreground #0c0c0c - active_tab_background #78a9ff - inactive_tab_foreground #6e6f70 - inactive_tab_background #2a2a2a - - color0 #282828 - color8 #484848 - color1 #ee5396 - color9 #f16da6 - color2 #25be6a - color10 #46c880 - color3 #ebcb8b - color11 #f0d399 - color4 #78a9ff - color12 #8cb6ff - color5 #be95ff - color13 #c8a5ff - color6 #33b1ff - color14 #52bdff - color7 #dfdfe0 - color15 #e4e4e5 - color16 #3ddbd9 - color17 #ff7eb6 - ''; } diff --git a/home/neovim.nix b/home/neovim.nix index 737b33d..b2f53bf 100644 --- a/home/neovim.nix +++ b/home/neovim.nix @@ -1,6 +1,21 @@ -{ lib, ... }: +{ + pkgs, + configs ? pkgs.configs, + ... +}: { - enable = true; + programs.neovim = { + enable = true; + defaultEditor = true; + extraConfig = + let + config = configs.neovim; + in + '' + set runtimepath+=${config} + source ${config}/init.lua + ''; + }; } diff --git a/home/vesktop.nix b/home/vesktop.nix index d2c25e1..14336a7 100644 --- a/home/vesktop.nix +++ b/home/vesktop.nix @@ -1,4 +1,7 @@ +{ ... }: + { + programs.vesktop = { enable = true; settings = { discordBranch = "stable"; @@ -313,4 +316,5 @@ WebContextMenus.enabled = true; }; }; + }; } diff --git a/modules/default.nix b/modules/default.nix new file mode 100644 index 0000000..aefb920 --- /dev/null +++ b/modules/default.nix @@ -0,0 +1,4 @@ +[ + ./tetrio + ./initialFile.nix +] diff --git a/modules/initialFile.nix b/modules/initialFile.nix new file mode 100644 index 0000000..0e5d70f --- /dev/null +++ b/modules/initialFile.nix @@ -0,0 +1,172 @@ +{ + pkgs, + lib ? pkgs.lib, + config, + ... +}: + +let + inherit (lib) mkOption types; + + cfg = lib.filterAttrs (n: f: f.enable) config.home.initialFile; + home = config.home.homeDirectory; +in +{ + options = { + home.initialFile = mkOption { + type = types.attrsOf ( + types.submodule ( + { name, config, ... }: + { + options = { + enable = mkOption { + type = types.bool; + default = true; + }; + target = mkOption { + type = types.str; + apply = + path: + let + absPath = if lib.hasPrefix "/" path then path else "${home}/${path}"; + in + lib.removePrefix (home + "/") absPath; + description = "Path to target file relative to home directory"; + default = "/homeless-shelter/home"; + }; + text = mkOption { + type = types.nullOr types.lines; + description = "Text of the file, otherwise copies .source file."; + default = null; + }; + source = mkOption { + type = types.path; + description = "Path of file whose source to copy"; + }; + mode = mkOption { + type = types.nullOr types.str; + description = "File mode to apply to target file (sourced from .source / .text if not specified)"; + default = null; + }; + dir_mode = mkOption { + type = types.str; + description = "File mode to apply to directories"; + default = "0755"; + }; + recursive = mkOption { + type = types.bool; + description = "Whether or not to recursively copy .source as a directory instead of as a file"; + default = false; + }; + force = mkOption { + type = types.bool; + description = "Whether to unconditionally replace the target file, even if it already exists."; + default = false; + }; + }; + config = { + target = lib.mkDefault name; + source = lib.mkIf (config.text != null) ( + lib.mkDefault ( + pkgs.writeTextFile { + inherit (config) text; + name = lib.hm.strings.storeFileName name; + } + ) + ); + }; + } + ) + ); + description = "Attribute set of files to write into the user home (if they don't already exist)."; + default = { }; + }; + }; + + config = { + assertions = [ + ( + let + dups = lib.attrNames ( + lib.filterAttrs (n: v: v > 1) ( + lib.foldAttrs (acc: v: acc + v) 0 (lib.mapAttrsToList (n: v: { ${v.target} = 1; }) cfg) + ) + ); + dupsStr = lib.concatStringsSep ", " dups; + in + { + assertion = dups == [ ]; + message = '' + Conflicting managed target files: ${dupsStr} + + This may happen, for example, if you have a configuration similar to + + home.initialFile = { + conflict1 = { source = ./foo.nix; target = "baz"; }; + conflict2 = { source = ./bar.nix; target = "baz"; }; + }''; + } + ) + ]; + + home.activation.copyInitialFiles = lib.hm.dag.entryAfter [ "writeBoundary" ] ( + let + homeArg = lib.escapeShellArg home; + in + '' + function copyFile() { + local source="$1" + local targetRel="$2" + local mode="$3" + local dirMode="$4" + local recursive="$5" + local force="$6" + + local target="${homeArg}/$targetRel" + + if [[ -e "$target" && "$force" != "true" ]]; then + verboseEcho "Skipping existing $target" + return 0 + fi + + run mkdir -p "$(dirname "$target")" + + if [[ -d "$source" ]]; then + if [[ "$recursive" != "true" ]]; then + errorEcho "Source '$source' is a directory but recursive=false" + return 1 + fi + run rm -rf "$target" + run cp -r "$source" "$target" + else + if [[ -e "$target" && "$force" == "true" ]]; then + run rm -f "$target" + fi + run cp "$source" "$target" + fi + + if [[ -n "$mode" ]]; then + if [[ -d "$target" && "$recursive" == "true" ]]; then + run chmod "$dirMode" "$target" + find "$target" -type f -exec chmod "$mode" {} + + else + run chmod "$mode" "$target" + fi + fi + } + '' + + lib.concatMapStrings ( + v: + let + src = lib.escapeShellArg (toString v.source); + tgt = lib.escapeShellArg v.target; + mode = if v.mode == null then "''" else lib.escapeShellArg v.mode; + in + '' + copyFile ${src} ${tgt} ${mode} ${lib.escapeShellArg v.dir_mode} ${lib.trivial.boolToString v.recursive} ${lib.trivial.boolToString v.force} + '' + ) (lib.attrValues cfg) + ); + + }; +} diff --git a/modules/tetrio/default.nix b/modules/tetrio/default.nix new file mode 100644 index 0000000..37a132b --- /dev/null +++ b/modules/tetrio/default.nix @@ -0,0 +1,723 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + inherit (lib) mkOption mkIf types; + inherit (types) either; + + clamp = + x: min: max: + if x < min then + min + else if x > max then + max + else + x; + + cfg = config.programs.tetrio-desktop; +in +{ + options.programs.tetrio-desktop = { + enable = lib.mkEnableOption "tetrio"; + package = lib.mkPackageOption pkgs "tetrio-desktop" { }; + + plus = { + enable = lib.mkEnableOption "tetrio-plus"; + package = lib.mkOption { + type = types.path; + description = "The package to use for TETR.IO PLUS"; + default = pkgs.tetrio-plus; + }; + + skin = mkOption { + type = types.nullOr ( + types.submodule { + options = { + package = mkOption { + type = types.package; + description = "The package to use for the skin"; + example = "mpkgs.tetrio.skin.simple-connected"; + }; + + nearest = mkOption { + type = types.bool; + description = "Force nearest-neighbor scaling"; + default = false; + }; + }; + } + ); + default = null; + description = "In-game tetrimino skin"; + }; + + hideOnStartup = lib.mkOption { + type = types.bool; + default = true; + description = "Disable the TETR.IO PLUS configuration panel showing"; + }; + }; + settings = { + handling = + let + buffering = types.enum [ + "off" + "hold" + "tap" + ]; + in + { + + auto_repeat_rate = mkOption { + type = types.number; + apply = x: clamp x 0 5; + description = "Automatic Repeat Rate: the speed at which tetrominoes move when holding down movement keys, measured in frames per movement."; + default = 2; + }; + delayed_auto_shift = mkOption { + type = types.number; + apply = x: clamp x 1 20; + description = "Delayed Auto Shift: the time between the initial keypress and the start of its automatic repeat movement, measured in frames."; + default = 10; + }; + das_cut_delay = mkOption { + type = types.number; + apply = x: clamp x 0 20; + + description = "DAS Cut Delay (frames): if not 0, any ongoing DAS movement will pause for a set amount of time after dropping/rotating a piece, measured in frames."; + default = 1; + }; + soft_drop_factor = mkOption { + type = types.number; + apply = x: clamp x 5 41; + description = "Soft Drop Factor: the factor with which soft drops change the gravity speed."; + default = 6; + }; + prevent_hard_drops = mkOption { + type = types.bool; + description = "If enabled, when a piece locks on its own, the hard drop key becomes unavailable for a few frames. This prevents accidental hard drops."; + default = true; + }; + direction_cancel_das = mkOption { + type = types.bool; + description = "If enabled, DAS charge is cancelled when you change directions."; + default = false; + }; + soft_drop_over_movement = mkOption { + type = types.bool; + description = "If enabled, at very high speeds soft drop will always take precedence over horizontal movement, for a more consistent game feel."; + default = true; + }; + rotation_buffering = mkOption { + type = buffering; + description = "When to buffer rotations for the next piece (\"hold\": only if you hold the key as the next piece spawns)."; + default = "tap"; + }; + hold_buffering = mkOption { + type = buffering; + description = "When to buffer holding for the next piece (\"hold\": only if you hold the key as the next piece spawns)."; + default = "tap"; + }; + }; + audio = + let + percentage = x: x / 100.0; + in + { + music = { + volume = mkOption { + type = types.number; + apply = x: percentage (clamp x 0 200); + description = "Volume (%) at which BGM and jingles play."; + default = 100; + }; + reset_on_retry = mkOption { + type = types.bool; + apply = x: !x; + description = "If enabled, the background music will reset whenever you retry a game."; + default = false; + }; + preferences = mkOption { + type = + with types; + attrsOf (enum [ + "off" + "--" + "-" + "" + "+" + "++" + ]); + apply = + x: + pkgs.lib.mapAttrs ( + _: value: + { + "off" = "ban"; + "--" = "minmin"; + "-" = "min"; + "" = "base"; + "+" = "plus"; + "++" = "plusplus"; + } + ."${value}" + ) x; + default = { }; + }; + }; + sfx = { + volume = mkOption { + type = types.number; + apply = x: percentage (clamp x 0 200); + description = "Volume (%) at which sound effects play."; + default = 100; + }; + next_pieces = mkOption { + type = types.bool; + description = "Whether to play a sound effect that signifies the next piece that'll come up."; + default = false; + }; + other_players = mkOption { + type = types.bool; + description = "Whether to hear the sounds of other people playing in Multiplayer."; + default = true; + }; + attacks = mkOption { + type = types.bool; + description = "Whether to hear the sounds of attacks going towards and from you."; + default = true; + }; + speed_changes = mkOption { + type = types.bool; + description = "Whether to hear a sound when your Climb Speed changes in Quick Play."; + default = true; + }; + }; + scroll_adjust_volume = mkOption { + type = types.bool; + description = "Whether to allow adjusting the volume via scrolling in-game (or everywhere while holding ALT)."; + default = true; + }; + mute_unfocused = mkOption { + type = types.bool; + description = "If enabled, the background music will be muted when TETR.IO is minimized or tabbed away."; + default = true; + }; + stereo = mkOption { + type = types.number; + apply = x: percentage (clamp x 0 100); + description = "Intensity (%) of stereo effects. 0% -> Centered; 100% -> Directional"; + default = 50; + }; + disable = mkOption { + type = types.bool; + description = "If enabled, no audio will ever play. This will speed up the game, with a rather obvious drawback."; + default = false; + }; + }; + visual = + let + toFloat = x: if builtins.typeOf x == "str" then builtins.fromJSON x else x; + percentage = + x: min: max: + builtins.toString ((clamp (toFloat x) min max) / 100.0); + in + { + graphics = { + pipeline = mkOption { + type = types.enum [ + "compatability" + "webgl-1" + "webgl-2" + ]; + apply = + x: + { + "compatability" = "legacy"; + "webgl-1" = "webgl1"; + "webgl-2" = "webgl2"; + } + ."${x}"; + description = "The WebGL mode to use for rendering"; + default = "webgl-2"; + }; + tier = mkOption { + type = types.enum [ + "minimal" + "low" + "medium" + "high" + "ultra" + ]; + description = "The graphics tier to use for rendering"; + default = "ultra"; + }; + cache = mkOption { + type = types.bool; + apply = x: if x then "medium" else "low"; + description = "Whether or not to enable caching of resources"; + default = true; + }; + particle_count = mkOption { + type = with types; either str number; + apply = x: percentage x 10 150; + description = "How many particles to display (%)."; + default = 150; + }; + + powersave = mkOption { + type = types.bool; + description = "If enabled, prioritize power saving over performance."; + default = false; + }; + low_resolution = mkOption { + type = types.bool; + description = "If enabled, render blurrier graphics. Not very pretty but helps performance."; + default = false; + }; + low_precision_counters = mkOption { + type = types.bool; + description = "If enabled, don't show as much precision on in-game counters. Speeds up the game significantly."; + default = false; + }; + }; + show_unfocus_warning = mkOption { + type = types.bool; + description = "If enabled, a warning is shown when TETR.IO is out of focus."; + default = true; + }; + action_text = mkOption { + type = types.enum [ + "off" + "some" + "all" + ]; + description = "Determines how much action text to display when performing special attacks."; + default = "some"; + }; + board_bounciness = mkOption { + type = with types; either str number; + apply = x: percentage x 0 200; + description = "How much (%) the board reacts when you move pieces around."; + default = 40; + }; + damage_shakiness = mkOption { + type = with types; either str number; + apply = x: percentage x 0 110; + description = "How much (%) the board reacts when you receive damage."; + default = 100; + }; + grid_opacity = mkOption { + type = with types; either str number; + apply = x: percentage x 0 110; + description = "How visible the grid is (%). 0% makes the grid invisible."; + default = 10; + }; + board_opacity = mkOption { + type = with types; either str number; + apply = x: percentage x 0 110; + description = "How visible the board is (%). 0% makes the board invisible."; + default = 85; + }; + shadow_opacity = mkOption { + type = with types; either str number; + apply = x: percentage x 0 110; + description = "How visible the shadow piece is (%). 0% makes the shadow piece invisible."; + default = 15; + }; + background_opacity = mkOption { + type = with types; either str number; + apply = x: percentage x 0 100; + description = "How visible the background images are. 0% makes the background entirely black."; + default = 5; + }; + show_background_in_menus = mkOption { + type = types.bool; + apply = x: !x; + description = "If enabled, do not show the background when in menus. This will majorly improve performance in menus, but you will no longer see the background."; + default = false; + }; + board_zoom = mkOption { + type = with types; either str number; + apply = x: percentage x 0 110; + description = "How large the board displays. Values over 100% may cause some elements to not be visible."; + default = 100; + }; + spin_board = mkOption { + type = types.bool; + description = "When enabled, the board reacts to T-Spins by rotating a little with it."; + default = true; + }; + fire_meter = mkOption { + type = types.bool; + description = "If enabled, fill a fire meter when doing well, illuminating boards that have a lot of fire."; + default = true; + }; + danger_warning = mkOption { + type = types.bool; + description = "If enabled, makes the board red and play a warning sound when you're in danger."; + default = true; + }; + colored_shadow = mkOption { + type = types.bool; + description = "If enabled, colors the shadow piece."; + default = true; + }; + color_locked_hold_piece = mkOption { + type = types.bool; + description = "If enabled, the HOLD piece will be grayed out if it may not be used."; + default = true; + }; + + }; + multiplayer = { + chat = { + enable = mkOption { + type = types.bool; + apply = x: !x; + description = "If disabled, chat will be hidden when ingame."; + default = true; + }; + filter = mkOption { + type = types.bool; + description = "If enabled, profanity in chat will be filtered. Note that such filters are never perfect."; + default = true; + }; + show_emotes = mkOption { + type = types.bool; + description = "If enabled, show emotes in chat."; + default = true; + }; + show_animated_emotes = mkOption { + type = types.bool; + description = "If enabled, show animated emotes in chat."; + default = true; + }; + invert = mkOption { + type = types.bool; + description = "If enabled, chat text shows in black (good for light backgrounds)."; + default = false; + }; + darken = mkOption { + type = types.bool; + description = "If enabled, show a background behind chat messages when typing."; + default = true; + }; + }; + notifications = + let + notification.optional = types.enum [ + "off" + "in-game" + "desktop" + ]; + notification.required = types.enum [ + "in-game" + "desktop" + ]; + apply = + x: + { + "off" = "off"; + "in-game" = "ingame"; + "desktop" = "both"; + } + ."${x}"; + in + { + when = { + friend_online = mkOption { + type = notification.optional; + inherit apply; + description = "Notify me when a friend goes online"; + default = "in-game"; + }; + friend_offline = mkOption { + type = notification.optional; + inherit apply; + description = "Notify me when a friend goes offline"; + default = "off"; + }; + friend_dm_recieved = mkOption { + type = notification.optional; + inherit apply; + description = "Notify me when a friend sends me a direct message"; + default = "desktop"; + }; + dm_recieved = mkOption { + type = notification.optional; + inherit apply; + description = "Notify me when a non-friend sends me a direct message"; + default = "desktop"; + }; + room_invite = mkOption { + type = notification.required; + inherit apply; + description = "Notify me when someone invites me to a room"; + default = "desktop"; + }; + other = mkOption { + type = notification.required; + inherit apply; + description = "Other notifications"; + default = "desktop"; + }; + }; + enable_desktop_notifications = mkOption { + type = types.bool; + description = "If enabled, show notifications outside of the game."; + default = true; + }; + suppress_while_playing = mkOption { + type = types.bool; + description = "If enabled, unimportant notifications don't show ingame, but will be shown after the game."; + default = false; + }; + full_volume = mkOption { + type = types.bool; + description = "If enabled, notification sounds always play at full volume."; + default = true; + }; + }; + hide_room_ids = mkOption { + type = types.bool; + description = "If enabled, room IDs will not be shown, to protect you from streamsniping."; + default = false; + }; + show_network_warnings = mkOption { + type = types.bool; + apply = x: !x; + description = "If disabled, network warning icons will not be shown."; + default = true; + }; + notify_elim = mkOption { + type = types.bool; + description = "If enabled, show a popup when you KO someone or get KO'd."; + default = true; + }; + duels_side_by_side = mkOption { + type = types.bool; + description = "Whether to display a duel side-by-side. This causes your own board to move slightly to the left."; + default = true; + }; + simplify_thumbnails = mkOption { + type = types.bool; + description = "If enabled, always shows the simpler thumbnails for other players. This increases performance in games between 2 and 8 players, but looks less nice."; + default = false; + }; + animate_super_lobby_background = mkOption { + type = types.bool; + apply = x: !x; + description = "If enabled, the background of Super Lobbies (rooms of 100+ players) animate."; + default = true; + }; + animate_background_in_quickplay = mkOption { + type = types.bool; + apply = x: !x; + description = "If enabled, the background of Quick Play animate."; + default = true; + }; + welcome_guide = mkOption { + type = types.bool; + description = "If enabled, show the simple guide with the keybinds in multiplayer lobbies."; + default = true; + }; + }; + keep_replay_tools_open = mkOption { + type = types.bool; + description = "If enabled, the replay tools do not collapse when you're not using them."; + default = false; + }; + skip_login_screen = mkOption { + type = types.enum [ + "never" + "by-url" + "always" + ]; + apply = + x: + { + "never" = "never"; + "by-url" = "quickjoin"; + "always" = "always"; + } + ."${x}"; + description = "When to skip the login screen (\"by-url\": only when joining matches or viewing replays by url)"; + default = "always"; + }; + discord_rpc = mkOption { + type = types.bool; + description = "If enabled, show your current activity in Discord."; + default = true; + }; + flash_taskbar_icon = mkOption { + type = types.bool; + description = "If enabled, the taskbar icon will flash when something important happens."; + default = true; + }; + devtools = mkOption { + type = types.bool; + description = "If enabled, allow opening the developer toolbox."; + default = false; + }; + advertisments.i_support_the_devs.i_cannot_play_with_ads.and_i_really_want_to.disable = mkOption { + type = types.bool; + description = "If enabled, most/all third-party ads will not show."; + default = false; + }; + }; + }; + + config = mkIf cfg.enable ( + lib.mkMerge [ + { + home.packages = [ + (cfg.package.override { + withTetrioPlus = cfg.plus.enable; + tetrio-plus = cfg.plus.package; + }) + ]; + + home.initialFile.".config/tetrio-desktop/Local Storage/leveldb" = { + mode = "0644"; + source = pkgs.callPackage ./leveldb.nix { + value = { + handling = + let + set = cfg.settings.handling; + in + { + arr = set.auto_repeat_rate; + das = set.delayed_auto_shift; + dcd = set.das_cut_delay; + sdf = set.soft_drop_factor; + safelock = set.prevent_hard_drops; + cancel = set.direction_cancel_das; + may20g = set.soft_drop_over_movement; + irs = set.rotation_buffering; + ihs = set.hold_buffering; + }; + volume = + let + set = cfg.settings.audio; + in + { + music = set.music.volume; + bgmtweak = set.music.preferences; + sfx = set.sfx.volume; + stereo = set.stereo; + scrollable = set.scroll_adjust_volume; + oof = set.mute_unfocused; + next = set.sfx.next_pieces; + others = set.sfx.other_players; + attacks = set.sfx.attacks; + zenithrank = set.sfx.speed_changes; + disable = set.disable; + }; + video = + let + set = cfg.settings.visual; + mul = cfg.settings.multiplayer; + in + { + actionText = set.action_text; + bounciness = set.board_bounciness; + shakiness = set.damage_shakiness; + gridopacity = set.grid_opacity; + boardopacity = set.board_opacity; + shadowopacity = set.shadow_opacity; + zoom = set.board_zoom; + sidebyside = mul.duels_side_by_side; + spin = set.spin_board; + kos = mul.notify_elim; + siren = set.danger_warning; + colorshadow = set.colored_shadow; + + graphics = set.graphics.tier; + caching = set.graphics.cache; + webgl = set.graphics.pipeline; + particles = set.graphics.particle_count; + background = set.background_opacity; + powersave = set.graphics.powersave; + lowres = set.graphics.low_resolution; + lowrescounters = set.graphics.low_precision_counters; + alwaystiny = mul.simplify_thumbnails; + nosuperlobbyanim = mul.animate_super_lobby_background; + nozenithanim = mul.animate_background_in_quickplay; + nobg = set.show_background_in_menus; + chatfilter = mul.chat.filter; + nochat = mul.chat.enable; + hideroomids = mul.hide_room_ids; + emotes = mul.chat.show_emotes; + emotes_anim = mul.chat.show_animated_emotes; + invert = mul.chat.invert; + chatbg = mul.chat.darken; + replaytoolsnocollapse = cfg.settings.keep_replay_tools_open; + hidenetwork = mul.show_network_warnings; + focuswarning = set.show_unfocus_warning; + guide = mul.welcome_guide; + + desktopnotifications = mul.notifications.enable_desktop_notifications; + }; + notifications = + let + set = cfg.settings.multiplayer.notifications; + in + { + suppress = set.suppress_while_playing; + forcesound = set.full_volume; + online = set.when.friend_online; + offline = set.when.friend_offline; + dm = set.when.friend_dm_recieved; + dm_pending = set.when.dm_recieved; + invite = set.when.room_invite; + other = set.when.other; + }; + electron = { + loginskip = cfg.settings.skip_login_screen; + adblock = + cfg.settings.advertisments.i_support_the_devs.i_cannot_play_with_ads.and_i_really_want_to.disable; + taskbarflash = cfg.settings.flash_taskbar_icon; + autoupdate = false; + anglecompat = false; + presence = cfg.settings.discord_rpc; + devtools = cfg.settings.devtools; + }; + }; + }; + recursive = true; + }; + } + (mkIf (cfg.plus.enable) { + home.file.".config/tetrio-desktop/tetrioplus/tpkey-tetrioPlusEnabled.json" = { + text = '' + { "value": true } + ''; + force = true; + }; + home.file.".config/tetrio-desktop/tetrioplus/tpkey-hideTetrioPlusOnStartup.json" = { + text = '' + { "value": ${lib.trivial.boolToString cfg.plus.hideOnStartup} } + ''; + force = true; + }; + }) + (mkIf (cfg.plus.enable && cfg.plus ? skin) { + home.file.".config/tetrio-desktop/tetrioplus/tpkey-skin.json" = { + source = cfg.plus.skin.package; + force = true; + }; + home.file.".config/tetrio-desktop/tetrioplus/tpkey-forceNearestScaling.json" = { + text = '' + { "value": ${lib.trivial.boolToString cfg.plus.skin.nearest} } + ''; + force = true; + }; + }) + ] + ); +} diff --git a/modules/tetrio/leveldb.nix b/modules/tetrio/leveldb.nix new file mode 100644 index 0000000..820ab1b --- /dev/null +++ b/modules/tetrio/leveldb.nix @@ -0,0 +1,32 @@ +{ + stdenv, + lib, + leveldb-cli, + value, + origin ? "https://tetr.io", + key ? "userConfig", +}: + +let + src = ./.; +in +stdenv.mkDerivation { + pname = "tetrio-leveldb"; + version = "1"; + + inherit src; + + nativeBuildInputs = [ leveldb-cli ]; + + buildPhase = '' + runHook preBuild + + ${lib.getExe leveldb-cli} \ + $out \ + ${lib.escapeShellArg origin} \ + ${lib.escapeShellArg key} \ + ${lib.escapeShellArg (builtins.toJSON value)} + + runHook postBuild + ''; +} diff --git a/pkgs/default.nix b/pkgs/default.nix index cbb7ea6..bcf9f7b 100644 --- a/pkgs/default.nix +++ b/pkgs/default.nix @@ -1,32 +1,22 @@ -{ - pkgs ? import { config.allowUnfree = true; }, - config ? (import { }).config, - fetchzip ? pkgs.fetchzip, - ... -}: +final: prev: let - system = { - stateVersion = config.system.stateVersion; - }; - use = path: pkgs.callPackage (import path) { inherit pkgs; }; + fetchzip = prev.fetchzip; + use = path: prev.callPackage (import path) { pkgs = prev; }; in { - inherit system; - - wallpaper = use ./wallpaper/default.nix; - tetrio.desktop = use ./tetrio/default.nix; + wallpaper = use ./wallpaper; + tetrio.desktop = use ./tetrio; tetrio.plus = let repo = { owner = "UniQMG"; name = "tetrio-plus"; job = "11675178434"; - hash = "sha256-j3ACcnT64eMQtWYDGOE2oGXpnN5EUqk+lyV6ARBEtU8="; }; src = fetchzip { url = "https://gitlab.com/${repo.owner}/${repo.name}/-/jobs/${repo.job}/artifacts/raw/app.asar.zip"; - hash = repo.hash; + hash = "sha256-j3ACcnT64eMQtWYDGOE2oGXpnN5EUqk+lyV6ARBEtU8="; }; in "${src}/app.asar"; @@ -34,25 +24,11 @@ in simple-connected = use ./tetrio/skins/simple-connected.nix; }; - leveldb-cli = use ./leveldb/default.nix; + leveldb-cli = use ./leveldb; - config.neovim = use ./neovim/default.nix; - config.fish = use ./fish/default.nix; + configs.neovim = use ./neovim; + configs.fish = use ./fish; - font.monaco = use ./monaco-font/default.nix; - - home-manager = { - module = - let - home-manager = fetchzip { - url = "https://github.com/nix-community/home-manager/archive/master.tar.gz"; - hash = "sha256-UZjPc/d5XRxvjDbk4veAO4XFdvx6BUum2l40V688Xq8="; - }; - in - import "${home-manager}/nixos"; - sharedModules = [ - ./home-manager/initialFile.nix - ./tetrio/module.nix - ]; - }; + nimbus-roman = use ./nimbus; + monaco = use ./monaco-font; } diff --git a/pkgs/element/default.nix b/pkgs/element/default.nix deleted file mode 100644 index 9ca5bbc..0000000 --- a/pkgs/element/default.nix +++ /dev/null @@ -1,180 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - makeWrapper, - makeDesktopItem, - nodejs, - electron_39, - element-web, - sqlcipher, - callPackage, - typescript, - # command line arguments which are always set - commandLineArgs ? "", - yarnConfigHook, - yarnBuildHook, - fetchYarnDeps, - asar, - copyDesktopItems, - darwin, - ... -}: - -let - pinData = import ./element-desktop-pin.nix; - inherit (pinData.hashes) desktopSrcHash desktopYarnHash; - executableName = "element-desktop"; - electron = electron_39; - seshat = callPackage ./seshat { }; -in -stdenv.mkDerivation ( - finalAttrs: - removeAttrs pinData [ "hashes" ] - // { - pname = "element-desktop"; - name = "${finalAttrs.pname}-${finalAttrs.version}"; - src = fetchFromGitHub { - owner = "element-hq"; - repo = "element-desktop"; - rev = "v${finalAttrs.version}"; - hash = desktopSrcHash; - }; - - offlineCache = fetchYarnDeps { - yarnLock = finalAttrs.src + "/yarn.lock"; - hash = desktopYarnHash; - }; - - env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; - - nativeBuildInputs = [ - asar - copyDesktopItems - nodejs - makeWrapper - typescript - yarnConfigHook - yarnBuildHook - ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.autoSignDarwinBinariesHook ]; - - inherit seshat; - - # Only affects unused scripts in $out/share/element/electron/scripts. Also - # breaks because there are some `node`-scripts with a `npx`-shebang and - # this shouldn't be in the closure just for unused scripts. - dontPatchShebangs = true; - - postPatch = '' - cp -r ${electron.dist} electron-dist - chmod -R u+w electron-dist - - substituteInPlace package.json \ - --replace-fail \ - ' electron-builder",' \ - ' electron-builder --dir -c.electronDist=electron-dist -c.electronVersion=${electron.version} -c.mac.identity=null",' - - # `@electron/fuses` tries to run `codesign` and fails. Disable and use autoSignDarwinBinariesHook instead - substituteInPlace ./electron-builder.ts \ - --replace-fail "resetAdHocDarwinSignature:" "// resetAdHocDarwinSignature:" - - # Need to disable asar integrity check to copy in native seshat files, see postBuild phase - substituteInPlace ./electron-builder.ts \ - --replace-fail "enableEmbeddedAsarIntegrityValidation: true" "enableEmbeddedAsarIntegrityValidation: false" - ''; - - preBuild = '' - # Apply upstream patch - # Can be removed if upstream removes patches/@types+auto-launch+5.0.5.patch introduced in - # https://github.com/element-hq/element-desktop/commit/5e882f8e08d58bf9663c8e3ab33885bf7b3709de - node ./node_modules/patch-package/index.js - ''; - - postBuild = '' - # relative path to app.asar differs on Linux and MacOS - packed=$(find ./dist -name app.asar) - asar extract "$packed" tmp-app - - # linking here leads to Error: tmp-app/node_modules/matrix-seshat: file ... links out of the package - cp -r $seshat tmp-app/node_modules/matrix-seshat - - asar pack tmp-app "$packed" - ''; - - installPhase = '' - runHook preInstall - '' - + lib.optionalString stdenv.hostPlatform.isDarwin '' - mkdir -p "$out/Applications" "$out/bin" - mv dist/mac*/Element.app "$out/Applications" - - ln -s '${element-web}' "$out/Applications/Element.app/Contents/Resources/webapp" - - wrapProgram "$out/Applications/Element.app/Contents/MacOS/Element" \ - --add-flags ${lib.escapeShellArg commandLineArgs} - - makeWrapper "$out/Applications/Element.app/Contents/MacOS/Element" "$out/bin/${executableName}" - '' - + lib.optionalString (!stdenv.hostPlatform.isDarwin) '' - mkdir -p "$out/bin" "$out/share" - - cp -a dist/*-unpacked/resources $out/share/element - - ln -s '${element-web}' "$out/share/element/webapp" - - # icon, used in makeDesktopItem - mkdir -p "$out/share/icons/hicolor/512x512/apps" - ln -s "$out/share/element/build/icon.png" "$out/share/icons/hicolor/512x512/apps/element.png" - - # executable wrapper - # LD_PRELOAD workaround for sqlcipher not found: https://github.com/matrix-org/seshat/issues/102 - makeWrapper '${lib.getExe electron}' "$out/bin/${executableName}" \ - --set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher.so \ - --add-flags "$out/share/element/app.asar" \ - --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \ - --add-flags ${lib.escapeShellArg commandLineArgs} - '' - + '' - runHook postInstall - ''; - - # The desktop item properties should be kept in sync with data from upstream: - # https://github.com/element-hq/element-desktop/blob/develop/package.json - desktopItems = [ - (makeDesktopItem { - name = "element-desktop"; - exec = "${executableName} %u"; - icon = "element"; - desktopName = "Element"; - genericName = "Matrix Client"; - comment = finalAttrs.meta.description; - categories = [ - "Network" - "InstantMessaging" - "Chat" - ]; - startupWMClass = "Element"; - mimeTypes = [ - "x-scheme-handler/element" - "x-scheme-handler/io.element.desktop" - ]; - }) - ]; - - passthru = { - # run with: nix-shell ./maintainers/scripts/update.nix --argstr package element-desktop - updateScript = ./update.sh; - }; - - meta = { - description = "Feature-rich client for Matrix.org"; - homepage = "https://element.io/"; - changelog = "https://github.com/element-hq/element-desktop/blob/v${finalAttrs.version}/CHANGELOG.md"; - license = lib.licenses.agpl3Plus; - teams = [ lib.teams.matrix ]; - inherit (electron.meta) platforms; - mainProgram = "element-desktop"; - }; - } -) diff --git a/pkgs/element/element-desktop-pin.nix b/pkgs/element/element-desktop-pin.nix deleted file mode 100644 index 9c28e4b..0000000 --- a/pkgs/element/element-desktop-pin.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version" = "1.12.10"; - "hashes" = { - "desktopSrcHash" = "sha256-2LQBT3+2JTR3XHO3DynOp8cw2m2SB/mGH01e3SFD/IM="; - "desktopYarnHash" = "sha256-QIzuVKmUS4tqXAzhpfLZOp51kLbfC1M2nrff8e+sdg4="; - }; -} diff --git a/pkgs/element/seshat/default.nix b/pkgs/element/seshat/default.nix deleted file mode 100644 index 5e3bb3f..0000000 --- a/pkgs/element/seshat/default.nix +++ /dev/null @@ -1,74 +0,0 @@ -{ - lib, - stdenv, - rustPlatform, - fetchFromGitHub, - sqlcipher, - nodejs, - python3, - yarn, - fixup-yarn-lock, - fetchYarnDeps, - removeReferencesTo, -}: - -let - pinData = lib.importJSON ./pin.json; - -in -rustPlatform.buildRustPackage rec { - pname = "seshat-node"; - inherit (pinData) version cargoHash; - - src = fetchFromGitHub { - owner = "matrix-org"; - repo = "seshat"; - rev = version; - hash = pinData.srcHash; - }; - - sourceRoot = "${src.name}/seshat-node/native"; - - nativeBuildInputs = [ - nodejs - python3 - yarn - fixup-yarn-lock - ]; - buildInputs = [ sqlcipher ]; - - npm_config_nodedir = nodejs; - - yarnOfflineCache = fetchYarnDeps { - yarnLock = src + "/seshat-node/yarn.lock"; - sha256 = pinData.yarnHash; - }; - - buildPhase = '' - runHook preBuild - cd .. - chmod u+w . ./yarn.lock - export HOME=$PWD/tmp - mkdir -p $HOME - yarn config --offline set yarn-offline-mirror $yarnOfflineCache - fixup-yarn-lock yarn.lock - yarn install --offline --frozen-lockfile --ignore-platform --ignore-scripts --no-progress --non-interactive - patchShebangs node_modules/ - node_modules/.bin/neon build --release -- --target ${stdenv.hostPlatform.rust.rustcTarget} -Z unstable-options --out-dir target/release - runHook postBuild - ''; - - doCheck = false; - - installPhase = '' - runHook preInstall - shopt -s extglob - rm -rf native/!(index.node) - rm -rf node_modules $HOME - cp -r . $out - ${removeReferencesTo}/bin/remove-references-to -t ${stdenv.cc.cc} $out/native/index.node - runHook postInstall - ''; - - disallowedReferences = [ stdenv.cc.cc ]; -} diff --git a/pkgs/element/seshat/pin.json b/pkgs/element/seshat/pin.json deleted file mode 100644 index aacdffa..0000000 --- a/pkgs/element/seshat/pin.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "version": "2.3.3", - "srcHash": "sha256-HmKHWFoO8TQ9S/RcJnJ3h85/2uSkqGrgLnX82hkux4Q=", - "yarnHash": "1cbkv8ap7f8vxl5brzqb86d2dyxg555sz67cldrp0vgnk8sq6ibp", - "cargoHash": "sha256-klrFk0gpqQu/9MzLEYMNqEBETZMXtZJX67Sm5ZqyHfE==" -} diff --git a/pkgs/element/seshat/update.sh b/pkgs/element/seshat/update.sh deleted file mode 100644 index 6e7e75e..0000000 --- a/pkgs/element/seshat/update.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/usr/bin/env nix-shell -#!nix-shell -I nixpkgs=../../../../../../ -i bash -p wget prefetch-yarn-deps yarn nix-prefetch nix-prefetch-github - -if [ "$#" -gt 1 ] || [[ "$1" == -* ]]; then - echo "Regenerates packaging data for the seshat package." - echo "Usage: $0 [git release tag]" - exit 1 -fi - -version="$1" - -set -euo pipefail - -if [ -z "$version" ]; then - version="$(wget -O- "https://api.github.com/repos/matrix-org/seshat/tags" | jq -r '.[] | .name' | sort --version-sort | tail -1)" -fi - -SRC="https://raw.githubusercontent.com/matrix-org/seshat/$version" - -tmpdir=$(mktemp -d) -trap 'rm -rf "$tmpdir"' EXIT - -pushd $tmpdir -wget "$SRC/seshat-node/yarn.lock" -yarn_hash=$(prefetch-yarn-deps yarn.lock) -popd - -src_hash=$(nix-prefetch-github matrix-org seshat --rev ${version} | jq -r .hash) - -cat > pin.json << EOF -{ - "version": "$version", - "srcHash": "$src_hash", - "yarnHash": "$yarn_hash", - "cargoHash": "0000000000000000000000000000000000000000000000000000" -} -EOF - -cargo_hash=$(nix-prefetch "{ sha256 }: (import ../../../../../.. {}).element-desktop.seshat.cargoDeps") - -cat > pin.json << EOF -{ - "version": "$version", - "srcHash": "$src_hash", - "yarnHash": "$yarn_hash", - "cargoHash": "$cargo_hash" -} -EOF - diff --git a/pkgs/fish/default.nix b/pkgs/fish/default.nix index b6ce760..8bfe836 100644 --- a/pkgs/fish/default.nix +++ b/pkgs/fish/default.nix @@ -1,10 +1,6 @@ -{ - pkgs ? import { }, - lib ? pkgs.lib, - ... -}: +{ stdenv, ... }: -pkgs.stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "fish-config"; version = "1.0"; @@ -14,9 +10,9 @@ pkgs.stdenv.mkDerivation rec { }; installPhase = '' - mkdir -p $out - cp -r ${src}/* $out/ - ''; + mkdir -p $out + cp -r ${src}/* $out/ + ''; dontUnpack = true; dontBuild = true; diff --git a/pkgs/flake.nix b/pkgs/flake.nix new file mode 100644 index 0000000..97c42f6 --- /dev/null +++ b/pkgs/flake.nix @@ -0,0 +1,10 @@ +{ + description = "Pkgs overlay"; + + inputs = { }; + outputs = + { self, ... }: + { + overlays.default = final: prev: (import ./default.nix final prev); + }; +} diff --git a/pkgs/leveldb/default.nix b/pkgs/leveldb/default.nix index 5a45d54..7cb8618 100644 --- a/pkgs/leveldb/default.nix +++ b/pkgs/leveldb/default.nix @@ -1,12 +1,10 @@ -{ - pkgs ? import { }, -}: +{ buildGoModule, fetchFromGitHub, ... }: -pkgs.buildGoModule { +buildGoModule { name = "leveldb-cli"; version = "1.0.0"; - src = pkgs.fetchFromGitHub { + src = fetchFromGitHub { owner = "theblueplum"; repo = "leveldb-cli"; rev = "main"; diff --git a/pkgs/monaco-font/default.nix b/pkgs/monaco-font/default.nix index 2e777db..1b25af1 100644 --- a/pkgs/monaco-font/default.nix +++ b/pkgs/monaco-font/default.nix @@ -1,10 +1,6 @@ -{ - pkgs ? import { system = builtins.currentSystem; }, - lib ? pkgs.lib, - ... -}: +{ stdenv, lib, ... }: -pkgs.stdenv.mkDerivation rec { +stdenv.mkDerivation { pname = "monaco-font"; version = "1.0"; diff --git a/pkgs/monaco-font/result b/pkgs/monaco-font/result deleted file mode 120000 index c38f055..0000000 --- a/pkgs/monaco-font/result +++ /dev/null @@ -1 +0,0 @@ -/nix/store/kp450zrxxva5fv7wwpnz841vgxan6c49-nixos-system-blueplum-25.05.811874.daf6dc47aa4b \ No newline at end of file diff --git a/pkgs/neovim/default.nix b/pkgs/neovim/default.nix index 74f39ff..fd4d7f2 100644 --- a/pkgs/neovim/default.nix +++ b/pkgs/neovim/default.nix @@ -1,10 +1,6 @@ -{ - pkg ? import , - lib ? pkg.lib, - ... -}: +{ stdenv, ... }: -pkg.stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "neovim-config"; version = "1.0"; diff --git a/pkgs/nimbus/default.nix b/pkgs/nimbus/default.nix new file mode 100644 index 0000000..70e03ff --- /dev/null +++ b/pkgs/nimbus/default.nix @@ -0,0 +1,23 @@ +{ lib, stdenv, ... }: + +stdenv.mkDerivation { + pname = "nimbus-roman"; + version = "1.0"; + + src = ./.; + + dontUnpack = true; + + installPhase = '' + mkdir -p $out/share/fonts/opentype + cp $src/nimbus.otf $out/share/fonts/opentype/nimbus.otf + cp $src/nimbus-bold.otf $out/share/fonts/opentype/nimbus-bold.otf + cp $src/nimbus-bolditalic.otf $out/share/fonts/opentype/nimbus-bolditalic.otf + ''; + + meta = with lib; { + description = "Nimbus Roman No. 9 L"; + license = licenses.gpl2; + platforms = platforms.all; + }; +} diff --git a/pkgs/nimbus/nimbus-bold.otf b/pkgs/nimbus/nimbus-bold.otf new file mode 100644 index 0000000000000000000000000000000000000000..7d2fab89e2fa881b1fd422ea67b77327a88087e2 GIT binary patch literal 99888 zcmd?RcUV-{^EiCVE_+#;x~?Y10HPSX(iH3>_5xxT3kxi;l%*}bN{0i|n;;$OilW$S z?7hWK1QVmC_p{_;^3L6&CZBvizwh&VpXdGO1-WPLDKm5C%$YN1<|dA7);JOdL;^t* zPV*NoG;R6lOK*bEzebSbZZBN8W`)1^-ID|vWlIpm@I?*_7U~Y=|45M2s^NXYA}7by zsRy_2B}m&}31XhZqSb5dr@bCM0NSq+1UbfW^<+!mPtNuNJQw=Ay8BB4ub8y{Nf0^; z_?zl2m3S~o1r5;l6#k}qLxs*S{LRpRFuafQ_E$s@f}qPle+@zCJ@%JG1X9=unn;cx z9l69`x*>n!D|oLa2;S|$fDpxBr-}K%e;c%$5+v7^Ag&qy(z(rO=5K@^4SfmX&a1{Z z+VU@#Klk&d@diUbhM>4w_<=E0@t=E$OFYlNT>e_co2J5~Zc{y}-wDErpfJ49)E4qr zf)67ysSWVHOkI*&iTR`f*I9>qsD7w4EyR^;o!6TJkESe7Lu)X((v={pxHj@SRm`=) zsu095a`s#LR)n_(CSlbMYha4t5w|ojO$;ZEG%$}CNIGd?K4C}R*T6c&K+0MJGsJKz zK?Ca%BI>*b)+Ywjv<4nP45GC>3?z88i>7`MF@R149!Z`q@aYMEYM3O35fvJk0=Zt$ zz%*e?e5QeUgc&(O1M`Vs(oF;F5N6Z>4a^X>)ItrcM~tR+X<&U~4E0C@4@?%^x7S3ezIOA8;%ti1`75k-;)AZ-uGl6boxpw@A}5u)Jf( zk2iIYhRD3+rlSD}lllb&`b*^s(?$MnFlZ&v;KqjnHD|!=4>bXV9kCpmWd3fUA7Co9rYgEkJwhpf9mb8XO`EkejNf?CekXxC1OpTZzms6iq|i;F z2%J87a(H<7q|o5-z`#i!TqOwUzmMg_?Ef#L-2c8P?OTtrG0;n5K@OT3_156Tx0N&%scru^- zi~5MVNL{A7=}bC{uAy(xx9R)5Z9I2gD6fE5!rR5G<8|_m@lNw@@*eTN;JxPkV4Pz7 ziz#I)HZ?XigWWg9)XH?a=}gnvrVgforje%cruC+crfnnmBL_U; zF?z(L5jG>Xjwl<^G~(chduD_gZKi9cXJ%w3G83B(H5+DTYBti$+-$trBr_YcX=V$| z7Mn@Tq-JSmMP?;t4I``6%-V=GNvj&Hc<1%#+R2 z&9lr4%xlcs%=eogH9u~C&itzRP4h?QUyYtQdhTfZ(XON2M|+O;WqE)71rjhNszCyO zP#;hiKmrfxWRSoPx(+1p8IRz(@q&4|ykg!?UM+7AuS+F?hrH*!SG@0y6O4Zb35ZOG znwqL4U}}~q1Sm7UN&*8_68O;UW0eFx0SQ=ZB;ac1VV3xw z1WZSc{U0RY^i~47=GEpcZzXUAB=8Uiz5VUwi&q^w;D+Q~pf; zGwjW+H#gthcys;D)i;;kRK3~tCg)A)n~*m_Z~Wi5zmdGz^2YJaqBnEi%y={Hi^eZz zJfHaduu@X-Mg}Pey@G++}=68Gka(B z+Vl+>!UXo=2*QjQNsJ=Q!6*0xyoRyFIPe!H5EH>rPlhwf0?sHa@GESHsc@cg zXVr8#)n*d2h}py(VlFWc&hh!+T`V9L5{tlVSVAl%mVupJ0oK?N+{sm7hgTD8;7DHw z-pB@GBe98aAvP0Rh^@pnn0YdhLZlHHL>^HL-c=1zP1F+gL>?1mf{lo#Hi#SLeC5{lsh~v}@I8xl;^!1`_;V$bE!fq98T(JYBu3YBoIkN5jlty zQBx=j%9gUDtSKAf5Yah{r>0WVsX0U3Sox%#7?4|C?kF%myvLqkSj??(us&5SCgwqID1s51{8mt;C%f5{2}4+AV`uN z^tVGt<=l`IsL#wljEO%?$UjV}KSt2X!91BheM6te+Og07xcWyE|6_s}{LBcR1Tg@f z!>$eFV26(hQs_L05^xw8P?RB{5F=snr@$i50!CKCLb=098v@Q`JS-7{1u6ycHo$Tm zBu;_zd!4vTJR-g%ejt7$Sdvc~kspztke1{uavr$=rn-vUKyD+Yq%RpvMv_Tn3Yi8b ze;3(I9wg6@7s>17Bk~3L4fzxK8`%ekA)gvZeN2s{#)7D)fk5X`i>Z~=8cIURVd0{v zR4Sh;r7EdE*gJ%P5P7t$-}HS{*x zhYqC^=u|jjis@>)f!<3Wp-`k!Q!7$6Lx<2ZxX! zFP4|cOXVS6KCcXp<7!?5uNe-c18^iA<{jmo;eE=xz`M%3!TXH&koSc5IqwDUCqBU! z@`vz^`JeD-@aOU!_)GXJ`D^(b`J4F?zLf9759EjQBl*$%M1C?qjlY9mz%S5SBwpkt#mTW67ulg>sRHyvM{V4Y~4 zWSwlCVx20TCY^mcM|D2cxu)}(&gVKWb$-<86Ho#@!C=A1g3*G>0$ag6!BW9$!DfL} zAQyxS5(F87d_lROUeGS+5}XoT65JL%7JMQ2R`8qPPe#BDU_NBbnDLA?GmBZsI5Ha; z3FE_rFfmLDvx6yNs+neHKXZ&Z$6RIZG2P5p%nyuGm(&&NigbtTn(I!|ou)fmcag4> z?t0y=x>8*~-4NX<-6Y*C-2&a6x;45@x_foIbWiA>)4i&DNB5C#kM2v|?{$CE?HAHQ zp>Uw^1EGmP1l>Jw^YwjZ-d@8J(*sxUbJ4a9@5L# zE7PmiYtuWbcR}x#Ubo(Bz2Efy)YsJ?tUp|Tg#K9lDf-j(?e&-FJL_-Mch&dP57Cd( zPu1U{U#h=Lzh1vpf4}|_{qy=)^zZ0D(toc1TK`A=J_DYCzQIrfQ-cWxwgw9g91YeP zxETZ*gd3z7MKzf^Cj+~3aPv5Ip19t>>ldx=_ieFe+SO@2vA7e-Ql9>{uY|=E&=53 zs;7hM>7jvx10)I$pe#`=P?MIbiv=p$Qq^<8TRhUY&;m6(QgyLFg$>vODvRE+;`I(( zq{8H-dMmA?nCRE?0UpAs%G6&w)gEnOh@lFGdt)iZ=^6{j(d zswoDjo{rw3axY16sK1{iR1xt0i?fPcu&24N2uz#HdrS2 z3gsSa-=9k8`!8$NYZ|I9*1uyf{2jRQ9T@oz+@zXYlZ&f1 zx6r%=>I$i5>H!Xo}uBveKmvM@qg4e#+(a~S(rS2hvuK!8EUaF8R zlE6Z#h}c*Ot)?=5o*k*QG5v*X5V32VA&UnOtnD1DD-psAV%$FT|sRX1u!sp?ci-Jq)%$GwNt zPa)CZh=NKE1;;yw!k6RSPsO{6Bm4RC& z_m%eIB;r)d#R(;}RvML121aGDmOtrnrJc3!qx%(hz0wpz@#TFkau%(hz0wpz@#TFiD@ z%ywGLc3RAKTFiD@%ywGLc3RAK(^R@_qs21qEfx&{&~LTQSxnJ1SxnIou$ZDDU@=8Q zz+#GqfW;II0gEXb)-9%JShtvBrzWYT&bbROT&ES1wc)_A2+z+Frc{ z?bSW))jjRi6ztU$?A1)zt0!o$rf09FH(!lqz8a^4Mi{o%Y6J_^SQn_VE>PoHpvJR6 z&CP;^>%D>{VbXBbbG_=c3RgYXYwcRN7TBoj6RCQ_94x^`af=AW6hQ3(v2*u;V5x_j zUr=a(0?w>3sF8a3%jDpehDafV?g8E?m|W-Hp zme#gQpwU+m8my^MtL9V-D;vvjDV&Jl_eerQoHd;|d=?hmlq@YQr%FQ<;Oi-*9uhw( z9GAht0pWg9PlXBy4OA7XoQewa2nd&}0Ji{zx^HNphg^k8wbGUrDs6^>lOGgz8ay6y zH<%T?$Ru7cTVPd<2d4Ly8aGunL4e+)=?3nehAcF2lmRyIn7cBJz9Z~hSQjfNp2Abg&910VG zBRM!ALK+k*@#E&imGF>-K_PdCDTaio>cG>6#SK=$9LGR26qbUUwF>4QQcf!BY85eC z8=wrgA$64&R`*nOu(RPDKoDc7pF$Ss7YR*)QqGwV^@9sVKxhc3(0&14oR|Q$c4mq| zE##(9$w#&HoS;;zy?P;7I{1N71*~2;MO#{_>tXY#+PRaT>o>(#Q`%|DshV<{rnFI) z)|&B_nsGK7yfzwqR+{mans-Z0yQOBlssMV{ntoOqx|Z5fL(ft}-%49*>a8_+Ewpqv zwg8`{hA(SvKMg)>4Sj1Z{~CNM_Fb77|Q3bbcLjzSsu=>qIu6pzH z^b3fB%al~D5Zpj3E15jZEfny=!iTBrLD%H!st|t}th&Tq3T)1;HF}*~fQzUrnZO!n>OPO(s|!sC+-eW(qkn zS*ZViHgI9dzeljW|38ml$NayEV3TPOEtWt8+6&T})sW#$f`~PO_;LxE4#Cm{h-g

?}hmBJ_xSvhbZ>}h;DZghaf(^ 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 G)&BtwbQ5I& literal 0 HcmV?d00001 diff --git a/pkgs/nimbus/nimbus-bolditalic.otf b/pkgs/nimbus/nimbus-bolditalic.otf new file mode 100644 index 0000000000000000000000000000000000000000..367d7b689e67a5f492426057f86513757d954587 GIT binary patch literal 107988 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%0AlCo(A*i>L*tdQ_2d>Gqb2aztQh!jF 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 literal 0 HcmV?d00001 diff --git a/pkgs/nimbus/nimbus.otf b/pkgs/nimbus/nimbus.otf new file mode 100644 index 0000000000000000000000000000000000000000..c173b3362bf52c2f3a1a3e51c4fac625cf425d99 GIT binary patch literal 97872 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⩓!=!i4 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 SXdT4GIriV6vtv9of*v|ZLJH7VKne}j-u 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 U=l-i4$~Q^df}8o|jmgFT2VrkG6951J literal 0 HcmV?d00001 diff --git a/pkgs/tetrio/default.nix b/pkgs/tetrio/default.nix index ce7b3f4..5e773cd 100644 --- a/pkgs/tetrio/default.nix +++ b/pkgs/tetrio/default.nix @@ -1,30 +1,22 @@ { - pkgs ? import { }, - fetchzip ? pkgs.fetchzip, - withTetrioPlus ? false, - tetrio-plus ? pkgs.tetrio-plus, + dpkg, + fetchzip, + tetrio-desktop, + withTetrioPlus ? false, + tetrio-plus, ... }: let - tetrio-desktop = - let - version = "10"; - in - { - inherit version; - src = fetchzip { - url = "https://tetr.io/about/desktop/builds/${version}/TETR.IO%20Setup.deb"; - hash = "sha256-2FtFCajNEj7O8DGangDecs2yeKbufYLx1aZb3ShnYvw="; - nativeBuildInputs = with pkgs; [ dpkg ]; - }; - }; + version = "10"; + src = fetchzip { + url = "https://tetr.io/about/desktop/builds/${version}/TETR.IO%20Setup.deb"; + hash = "sha256-2FtFCajNEj7O8DGangDecs2yeKbufYLx1aZb3ShnYvw="; + nativeBuildInputs = [ dpkg ]; + }; in -(pkgs.tetrio-desktop.overrideAttrs { - version = tetrio-desktop.version; - src = tetrio-desktop.src; -}).override { - inherit withTetrioPlus tetrio-plus; +(tetrio-desktop.overrideAttrs { inherit src version; }).override { + inherit withTetrioPlus tetrio-plus; } diff --git a/pkgs/tetrio/leveldb.nix b/pkgs/tetrio/leveldb.nix index bef5d1a..3fcfb60 100644 --- a/pkgs/tetrio/leveldb.nix +++ b/pkgs/tetrio/leveldb.nix @@ -1,31 +1,32 @@ { - pkgs ? import { }, - mpkgs ? import /etc/nixos/pkgs/default.nix { }, + stdenv, + lib, + leveldb-cli, + value, origin ? "https://tetr.io", key ? "userConfig", - value, - ... + ... }: let src = ./.; in -pkgs.stdenv.mkDerivation { +stdenv.mkDerivation { pname = "tetrio-leveldb"; version = "1"; inherit src; - nativeBuildInputs = [ mpkgs.leveldb-cli ]; + nativeBuildInputs = [ leveldb-cli ]; buildPhase = '' runHook preBuild - ${pkgs.lib.getExe mpkgs.leveldb-cli} \ + ${lib.getExe leveldb-cli} \ $out \ - ${pkgs.lib.escapeShellArg origin} \ - ${pkgs.lib.escapeShellArg key} \ - ${pkgs.lib.escapeShellArg (builtins.toJSON value)} + ${lib.escapeShellArg origin} \ + ${lib.escapeShellArg key} \ + ${lib.escapeShellArg (builtins.toJSON value)} runHook postBuild ''; diff --git a/pkgs/tetrio/module.nix b/pkgs/tetrio/module.nix index e76184e..37a132b 100644 --- a/pkgs/tetrio/module.nix +++ b/pkgs/tetrio/module.nix @@ -18,8 +18,6 @@ let else x; - leveldb = import ./leveldb.nix; - cfg = config.programs.tetrio-desktop; in { @@ -586,7 +584,7 @@ in home.initialFile.".config/tetrio-desktop/Local Storage/leveldb" = { mode = "0644"; - source = leveldb { + source = pkgs.callPackage ./leveldb.nix { value = { handling = let diff --git a/pkgs/tetrio/skins/simple-connected.nix b/pkgs/tetrio/skins/simple-connected.nix index 7d5f7d5..e06d496 100644 --- a/pkgs/tetrio/skins/simple-connected.nix +++ b/pkgs/tetrio/skins/simple-connected.nix @@ -1,21 +1,18 @@ -{ - pkgs ? import { }, - ... -}: +{ stdenv, fetchurl, ... }: let - src = pkgs.fetchurl { + src = fetchurl { url = "https://you.have.fail/tetrioplus/data/tpsefiles/skin/SpooKoArts/simple_connected.zip.tpse"; hash = "sha256-dIrEpEV9Gy2iU6K6rMrNX4XFQEchkJqSmOuQwVF4EQQ="; }; in -pkgs.stdenv.mkDerivation { +stdenv.mkDerivation { name = "simple-connected"; version = "2022-06-26"; inherit src; - dontUnpack = true; - dontBuild = true; + dontUnpack = true; + dontBuild = true; installPhase = '' runHook preInstall @@ -23,9 +20,9 @@ pkgs.stdenv.mkDerivation { runHook postInstall ''; - fixupPhase = '' - runHook preFixup - sed -i 's/\bskin\b/value/' $out - runHook postFixup - ''; + fixupPhase = '' + runHook preFixup + sed -i 's/\bskin\b/value/' $out + runHook postFixup + ''; } diff --git a/pkgs/wallpaper/default.nix b/pkgs/wallpaper/default.nix index a5c8ae6..29c3333 100644 --- a/pkgs/wallpaper/default.nix +++ b/pkgs/wallpaper/default.nix @@ -1,10 +1,6 @@ -{ - pkgs ? import { }, - lib ? pkgs.lib, - ... -}: +{ stdenv, ... }: -pkgs.stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "wallpaper"; version = "1.0";