summaryrefslogtreecommitdiff
path: root/nix
diff options
context:
space:
mode:
authorAndrew Opalach <andrew@akon.city> 2025-10-17 12:22:00 -0400
committerAndrew Opalach <andrew@akon.city> 2025-10-17 12:32:42 -0400
commit544da1ba50d9cbf51a18ca0abf1db66b3baa7460 (patch)
tree1caa87664ea4937c5f4e6e8dc83c49b3132ddd70 /nix
parent85a47287e56ba9100420246531ebea5996cc0486 (diff)
downloaddotfiles-544da1ba50d9cbf51a18ca0abf1db66b3baa7460.tar.gz
dotfiles-544da1ba50d9cbf51a18ca0abf1db66b3baa7460.tar.bz2
dotfiles-544da1ba50d9cbf51a18ca0abf1db66b3baa7460.zip
Gentoo desktop
Diffstat (limited to 'nix')
-rw-r--r--nix/amdgpu.nix51
-rw-r--r--nix/audio.nix113
-rw-r--r--nix/bluetooth.nix16
-rw-r--r--nix/email.nix158
-rw-r--r--nix/gaming.nix110
-rw-r--r--nix/intel.nix15
-rw-r--r--nix/mesa_git.nix16
-rw-r--r--nix/programs/bash.nix65
-rw-r--r--nix/programs/docker.nix4
-rw-r--r--nix/programs/firefox.nix145
-rw-r--r--nix/programs/foot.nix51
-rw-r--r--nix/programs/kdeconnect.nix12
-rw-r--r--nix/programs/kitty.nix112
-rw-r--r--nix/programs/nvim.nix235
-rw-r--r--nix/programs/obs.nix11
-rw-r--r--nix/programs/sunshine.nix29
-rw-r--r--nix/programs/sway.nix360
-rw-r--r--nix/programs/waydroid.nix3
-rw-r--r--nix/programs/zsh.nix76
-rw-r--r--nix/scripts.nix28
-rw-r--r--nix/settings.nix8
-rw-r--r--nix/steam.nix48
-rw-r--r--nix/system.nix134
-rw-r--r--nix/user.nix211
-rw-r--r--nix/virtualisation.nix15
-rw-r--r--nix/x86.nix3
26 files changed, 0 insertions, 2029 deletions
diff --git a/nix/amdgpu.nix b/nix/amdgpu.nix
deleted file mode 100644
index 3d28b1d..0000000
--- a/nix/amdgpu.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ pkgs, ... }: {
- boot.kernelParams = [ "amdgpu.ppfeaturemask=0xffffffff" ];
- environment.sessionVariables = with pkgs; {
- VDPAU_DRIVER = "radeonsi";
- LIBVA_DRIVER_NAME = "radeonsi";
- AMD_VULKAN_ICD = "RADV";
- VK_ICD_FILENAMES="${pkgsi686Linux.mesa}/share/vulkan/icd.d/radeon_icd.i686.json:${mesa}/share/vulkan/icd.d/radeon_icd.x86_64.json";
- __EGL_VENDOR_LIBRARY_FILENAMES="${pkgsi686Linux.mesa}/share/glvnd/egl_vendor.d/50_mesa.json:${mesa}/share/glvnd/egl_vendor.d/50_mesa.json";
- };
- environment.systemPackages = with pkgs; [
- radeontop
- (writeShellScriptBin "proton-env-amdvlk" ''
- export AMD_VULKAN_ICD="AMDVLK"
- export VK_ICD_FILENAMES="${amdvlk}/share/vulkan/icd.d/amd_icd64.json"
- proton-env "$@"
- '')
- ];
- security.wrappers = {
- radeontop = {
- owner = "root";
- group = "root";
- source = "${pkgs.radeontop}/bin/radeontop";
- capabilities = "cap_perfmon+ep";
- };
- };
- # https://github.com/sibradzic/amdgpu-clocks
- # @TODO: Fetch and patch scripts from the git repo.
- #environment.etc = { # XFX RX 6600
- # "default/amdgpu-custom-states.card0".text = ''
- # OD_VDDGFX_OFFSET:
- # -55mV
- # FORCE_POWER_CAP: 120000000
- # FORCE_PERF_LEVEL: auto
- # FORCE_POWER_PROFILE: 1
- # '';
- #};
- #environment.systemPackages = [ amdgpu-clocks pkgs.radeontop ];
- #systemd.services.amdgpu-clocks = {
- # description = "Set custom amdgpu clocks & voltages";
- # after = [ "multi-user.target" "rc-local.service" "systemd-user-sessions.service" ];
- # wants = [ "modprobe@amdgpu.service" ];
- # wantedBy = [ "multi-user.target" ];
- # serviceConfig = {
- # Type = "oneshot";
- # ExecStart = "${amdgpu-clocks}/bin/amdgpu-clocks";
- # ExecStop = "${amdgpu-clocks}/bin/amdgpu-clocks restore";
- # ExecReload = "${amdgpu-clocks}/bin/amdgpu-clocks";
- # RemainAfterExit = true;
- # };
- #};
-}
diff --git a/nix/audio.nix b/nix/audio.nix
deleted file mode 100644
index 80ef231..0000000
--- a/nix/audio.nix
+++ /dev/null
@@ -1,113 +0,0 @@
-{ pkgs, ... }: {
- #hardware.pulseaudio = {
- # enable = true;
- # support32Bit = true;
- #};
- #nixpkgs.config.pulseaudio = true;
- services.pipewire = {
- enable = true;
- pulse.enable = true;
- alsa.enable = true;
- alsa.support32Bit = true;
- extraConfig = {
- # cat /proc/asound/card1/stream0
- pipewire = {
- "92-user" = {
- "context.properties" = {
- "default.clock.rate" = 48000;
- "default.clock.allowed-rates" = [ 44100 48000 88200 96000 176400 192000 352800 384000 ];
- "default.clock.quantum" = 512;
- "default.clock.min-quantum" = 32;
- "default.clock.max-quantum" = 4096;
- "default.clock.quantum-limit" = 4096;
- "default.video.width" = 640;
- "default.video.height" = 480;
- "default.video.rate.num" = 25;
- "default.video.rate.denom" = 1;
- };
- "context.modules" = [{
- "name" = "libpipewire-module-filter-chain";
- "args" = {
- "node.description" = "Focal Elegia EQ (Convolver)";
- "media.name" = "Focal Elegia EQ (Convolver)";
- "filter.graph" = {
- "nodes" = [{
- "type" = "builtin";
- "name" = "Convolver EQ";
- "label" = "convolver";
- "config" = {
- "filename" = [
- "/etc/convolver/Focal_Elegia_minimum_phase_44100Hz.wav"
- "/etc/convolver/Focal_Elegia_minimum_phase_48000Hz.wav"
- ];
- "resample_quality" = 10;
- };
- }];
- };
- "capture.props" = {
- "node.name" = "eq_input.elegia_convolver_eq";
- "media.class" = "Audio/Sink";
- "audio.channels" = 2;
- "audio.position" = [ "FL" "FR" ];
- };
- "playback.props" = {
- "node.name" = "eq_output.elegia_convolver_eq";
- "node.passive" = true;
- "audio.channels" = 2;
- "audio.position" = [ "FL" "FR" ];
- };
- };
- }];
- "stream.properties" = {
- "resample.quality" = 10;
- "channelmix.normalize" = false;
- };
- };
- };
- client = {
- "92-client-user" = {
- "stream.properties" = {
- "resample.quality" = 10;
- "channelmix.normalize" = false;
- };
- };
- };
- pipewire-pulse = {
- "92-pulse-user" = {
- "pulse.properties" = {
- "pulse.default.format" = "S32";
- "pulse.default.position" = [ "FL" "FR" ];
- };
- "stream.properties" = {
- "resample.quality" = 10;
- "channelmix.normalize" = false;
- };
- };
- };
- };
- wireplumber = {
- enable = true;
- extraConfig = {
- "alsa-conf" = {
- "monitor.alsa.properties" = {
- "alsa.use-acp" = true;
- };
- "wireplumber.profiles" = {
- "main" = {
- "monitor.alsa.reserve-device" = "disabled";
- };
- };
- };
- };
- };
- };
- environment.systemPackages = with pkgs; [
- pipewire
- pavucontrol
- ];
- environment.etc = {
- "convolver/Focal_Elegia_minimum_phase_44100Hz.wav".source = ../files/convolver/Focal_Elegia_minimum_phase_44100Hz.wav;
- "convolver/Focal_Elegia_minimum_phase_48000Hz.wav".source = ../files/convolver/Focal_Elegia_minimum_phase_48000Hz.wav;
- };
- security.rtkit.enable = true;
-}
diff --git a/nix/bluetooth.nix b/nix/bluetooth.nix
deleted file mode 100644
index 18b9a42..0000000
--- a/nix/bluetooth.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ ... }: {
- hardware.bluetooth = {
- enable = true;
- powerOnBoot = true;
- settings = {
- General = {
- ControllerMode = "dual";
- };
- LE = {
- MinConnectionInterval = 7;
- MaxConnectionInterval = 9;
- ConnectionLatency = 0;
- };
- };
- };
-}
diff --git a/nix/email.nix b/nix/email.nix
deleted file mode 100644
index 96924ab..0000000
--- a/nix/email.nix
+++ /dev/null
@@ -1,158 +0,0 @@
-{ config, pkgs, ... }: {
- environment.systemPackages = with pkgs; [ lynx urlscan ];
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- accounts.email.maildirBasePath = "mail";
- accounts.email.accounts."andrew" = {
- address = "andrew@akon.city";
- realName = "Andrew Opalach";
- userName = "andrew@akon.city";
- maildir.path = "";
- primary = true;
- passwordCommand = "${pkgs.pass}/bin/pass andrew@akon.city";
- folders.inbox = "INBOX";
- imap = {
- host = "mail.akon.city";
- port = 993;
- tls.enable = true;
- };
- smtp = {
- host = "mail.akon.city";
- port = 465;
- tls.enable = true;
- };
- mbsync = {
- enable = true;
- create = "maildir";
- };
- msmtp.enable = true;
- imapnotify = {
- enable = true;
- boxes = [ "INBOX" ];
- onNotify = "${pkgs.notmuch}/bin/notmuch new";
- onNotifyPost = "${pkgs.libnotify}/bin/notify-send '📥 New Mail!'";
- };
- notmuch = {
- enable = true;
- neomutt = {
- enable = true;
- virtualMailboxes = [
- { name = "INBOX"; query = "folder:INBOX"; }
- { name = "Sent"; query = "folder:Sent"; }
- { name = "Archive"; query = "folder:Archive"; }
- { name = "Drafts"; query = "folder:Drafts"; }
- { name = "Trash"; query = "folder:Trash"; }
- { name = "Junk"; query = "folder:Junk"; }
- ];
- };
- };
- neomutt.enable = true;
- };
- programs.mbsync.enable = true;
- services.mbsync.enable = true;
- programs.msmtp.enable = true;
- services.imapnotify.enable = true;
- programs.notmuch = {
- enable = true;
- hooks = {
- preNew = "${pkgs.notmuch}/bin/notmuch search --output=files --format=text0 tag:deleted | xargs -0 rm -f; ${pkgs.isync}/bin/mbsync --all -ngfuX";
- };
- };
- programs.neomutt = {
- enable = true;
- vimKeys = false;
- sidebar = {
- enable = true;
- width = 18;
- shortPath = true;
- };
- sort = "reverse-date";
- binds = [
- { key = "i"; action = "noop"; map = [ "index" "pager" ]; }
- { key = "g"; action = "noop"; map = [ "index" "pager" ]; }
- { key = "gg"; action = "first-entry"; map = [ "index" ]; }
- { key = "j"; action = "next-entry"; map = [ "index" ]; }
- { key = "k"; action = "previous-entry"; map = [ "index" ]; }
- { key = "G"; action = "last-entry"; map = [ "index" ]; }
- { key = "<Return>"; action = "view-mailcap"; map = [ "attach" ]; }
- { key = "l"; action = "view-mailcap"; map = [ "attach" ]; }
- { key = "<space>"; action = "noop"; map = [ "editor" ]; }
- { key = "j"; action = "next-line"; map = [ "pager" ]; }
- { key = "k"; action = "previous-line"; map = [ "pager" ]; }
- { key = "gg"; action = "top"; map = [ "pager" ]; }
- { key = "G"; action = "bottom"; map = [ "pager" ]; }
- { key = "l"; action = "view-attachments"; map = [ "pager" ]; }
- { key = "h"; action = "noop"; map = [ "index" ]; }
- { key = "h"; action = "exit"; map = [ "pager" "attach" ]; }
- { key = "\\Ck"; action = "sidebar-prev"; map = [ "index" "pager" ]; }
- { key = "\\Cj"; action = "sidebar-next"; map = [ "index" "pager" ]; }
- { key = "\\Co"; action = "sidebar-open"; map = [ "index" "pager" ]; }
- { key = "<Tab>"; action = "complete-query"; map = [ "editor" ]; }
- { key = "l"; action = "select-entry"; map = [ "browser" ]; }
- { key = "gg"; action = "top-page"; map = [ "browser" ]; }
- { key = "G"; action = "bottom-page"; map = [ "browser" ]; }
- { key = "H"; action = "view-raw-message"; map = [ "index" "pager" ]; }
- ];
- macros = let
- delete-macro = "<modify-labels>+deleted<enter>";
- undelete-macro = "<modify-labels>-deleted<enter>";
- in [
- { key = "\\Cb"; action = "<pipe-message>${pkgs.urlscan}/bin/urlscan -cW<enter>"; map = [ "index" "pager" ]; }
- { key = "\\Cb"; action = "<pipe-entry>${pkgs.urlscan}/bin/urlscan -cW<enter>"; map = [ "attach" "compose" ]; }
- { key = "h"; action = "<change-dir><kill-line>..<enter>"; map = [ "browser" ]; }
- { key = "o"; action = "<shell-escape>${pkgs.notmuch}/bin/notmuch new<enter><sync-mailbox>"; map = [ "index" ]; }
- { key = "\\Cd"; action = delete-macro; map = [ "index" ]; }
- { key = "\\Cu"; action = undelete-macro; map = [ "index" ]; }
- ];
- extraConfig = ''
- unmailboxes ${homeDir}/mail/INBOX
- set mail_check_stats = yes
- set delete = ask-yes
-
- # https://github.com/LukeSmithxyz/mutt-wizard/blob/10a16e0ee6442425e7ca1634b1d3356e6d4d04f6/share/mutt-wizard.muttrc#L14
- set rfc2047_parameters = yes
- set sleep_time = 0
- set markers = no
- set wait_key = no
- set reverse_name
- set fast_reply
- set fcc_attach
- set mime_forward = no
- set forward_attachments = yes
- set forward_format = "Fwd: %s"
- set forward_quote
-
- set index_format="%2C (%Z) %[%D %I:%M %p] %-15.15F %s (%c, %g)"
-
- auto_view text/html
- auto_view application/pgp-encrypted
- alternative_order text/plain text/enriched text/html
-
- color normal blue black
- color attachment brightyellow black
- color hdrdefault blue black
- color indicator black blue
- color markers brightred black
- color quoted green black
- color signature blue black
- color status black red
- color tilde blue black
- color tree red black
-
- color index red black ~D
- color index magenta black ~T
-
- color header brightgreen black ^From:
- color header brightblue black ^To:
- color header brightblue black ^Reply-To:
- color header brightblue black ^Cc:
- color header brightblue black ^Subject:
-
- color body brightred black [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+
- color body brightblue black (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+
- '';
- };
- home.file.".mailcap".source = ../files/mailcap;
- };
-}
diff --git a/nix/gaming.nix b/nix/gaming.nix
deleted file mode 100644
index e86cd61..0000000
--- a/nix/gaming.nix
+++ /dev/null
@@ -1,110 +0,0 @@
-{ config, lib, pkgs, ... }: let
- loc = config.local;
- colo = loc.scheme;
-in {
- users.users.andrew = {
- extraGroups = [ "gamemode" ];
- };
- environment.systemPackages = with pkgs; lib.lists.flatten [
- (asNeeded "gamepad-tool" ["gamepad-tool"])
- (asNeeded "sdl-jstest" ["sdl-jstest" "sdl2-jstest"])
- (asNeeded "parsec-bin" ["parsecd"])
- (asNeeded "[lutris umu-launcher]" ["lutris"])
- (asNeeded "(retroarch.withCores (cores: with cores; [ mesen bsnes ]))" ["retroarch"])
- (asNeeded "dolphin-emu" ["dolphin-emu"])
- (asNeeded "cemu" ["cemu"])
- (asNeeded "ryujinx" ["ryujinx"])
- (asNeeded "pcsx2" ["pcsx2-qt"])
- (asNeeded "(ppsspp.override { enableQt = true; })" ["ppsspp"])
- (asNeeded "rpcs3" ["rpcs3"])
- (asNeeded "prismlauncher" ["prismlauncher"])
- (asNeeded "osu-lazer-bin" ["osu!"])
- ];
- #hardware.xone.enable = true;
- #hardware.opentabletdriver.enable = true;
- #services.udev.packages = [ pkgs.dolphinEmu ];
- #boot.extraModulePackages = [
- # config.boot.kernelPackages.gcadapter-oc-kmod
- #];
- #boot.kernelModules = [ "gcadapter_oc" ];
- programs.gamemode = {
- enable = true;
- settings = {
- general.desiredgov = "schedutil";
- general.inhibit_screensaver = 0;
- general.renice = 10;
- # Can't set GPU parameters from an unprivileged container.
- #gpu = {
- # apply_gpu_optimisations = "accept-responsibility";
- # gpu_device = 0;
- # amd_performance_level = "high";
- #};
- };
- };
- programs.gamescope = {
- enable = true;
- package = pkgs.gamescope;
- capSysNice = true;
- };
- #services.ananicy = {
- # enable = true;
- # #package = pkgs.ananicy-cpp;
- # settings = {
- # apply_nice = true;
- # };
- # extraTypes = [
- # { type = "realtime"; nice = -20; }
- # ];
- # extraRules = [
- # { name = "gamescope"; type = "realtime"; }
- # ];
- #};
- #security.wrappers = {
- # gamescope = {
- # owner = "root";
- # group = "root";
- # source = "${pkgs.gamescope}/bin/gamescope";
- # capabilities = "cap_sys_nice+eip";
- # };
- #};
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- programs.mangohud = {
- enable = true;
- enableSessionWide = false;
- package = (pkgs.mangohud.override { nvidiaSupport = false; });
- settings = {
- gamemode = true;
- cpu_temp = true;
- cpu_mhz = true;
- vulkan_driver = true;
- gpu_name = true;
- gpu_power = true;
- gpu_temp = true;
- gpu_junction_temp = true;
- gpu_core_clock = true;
- gpu_voltage = true;
- vram = true;
- gpu_mem_temp = true;
- gpu_mem_clock = true;
- engine_version = true;
- wine = true;
- winesync = true;
- display_server = true;
- present_mode = true;
- table_columns = 4;
- cellpadding_y = -0.100;
- font_size = 22;
- round_corners = true;
- toggle_preset = "";
- toggle_hud_position = "";
- toggle_fps_limit = "";
- toggle_logging = "";
- reload_cfg = "";
- upload_log = "";
- toggle_hud = "Shift_R+F10";
- };
- };
- };
-}
diff --git a/nix/intel.nix b/nix/intel.nix
deleted file mode 100644
index 7b69ba8..0000000
--- a/nix/intel.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ pkgs, ... }: {
- environment.sessionVariables = with pkgs; {
- VDPAU_DRIVER = "va_gl";
- LIBVA_DRIVER_NAME = "iHD";
- AMD_VULKAN_ICD = "ANV";
- VK_ICD_FILENAMES="${pkgsi686Linux.mesa}/share/vulkan/icd.d/intel_icd.i686.json:${mesa}/share/vulkan/icd.d/intel_icd.x86_64.json";
- __EGL_VENDOR_LIBRARY_FILENAMES="${pkgsi686Linux.mesa}/share/glvnd/egl_vendor.d/50_mesa.json:${mesa}/share/glvnd/egl_vendor.d/50_mesa.json";
- };
- hardware.graphics = {
- extraPackages = with pkgs; [
- intel-media-driver
- ];
- };
- hardware.intel-gpu-tools.enable = true;
-}
diff --git a/nix/mesa_git.nix b/nix/mesa_git.nix
deleted file mode 100644
index ba2dcc1..0000000
--- a/nix/mesa_git.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ pkgs, ... }: {
- environment.systemPackages = with pkgs; [
- (writeShellScriptBin "proton-env-anv" ''
- export AMD_VULKAN_ICD="ANV"
- export VK_ICD_FILENAMES="${pkgsi686Linux.mesa_git}/share/vulkan/icd.d/intel_icd.i686.json:${mesa_git}/share/vulkan/icd.d/intel_icd.x86_64.json"
- proton-env "$@"
- '')
- (writeShellScriptBin "proton-env-radv" ''
- export AMD_VULKAN_ICD="RADV"
- export VK_ICD_FILENAMES="${pkgsi686Linux.mesa_git}/share/vulkan/icd.d/radeon_icd.i686.json:${mesa_git}/share/vulkan/icd.d/radeon_icd.x86_64.json"
- export __EGL_VENDOR_LIBRARY_FILENAMES="${pkgsi686Linux.mesa_git}/share/glvnd/egl_vendor.d/50_mesa.json:${mesa_git}/share/glvnd/egl_vendor.d/50_mesa.json"
- export LD_LIBRARY_PATH="${pkgsi686Linux.mesa_git}/lib:${mesa_git}/lib:$LD_LIBRARY_PATH"
- proton-env "$@"
- '')
- ];
-}
diff --git a/nix/programs/bash.nix b/nix/programs/bash.nix
deleted file mode 100644
index 571b4fe..0000000
--- a/nix/programs/bash.nix
+++ /dev/null
@@ -1,65 +0,0 @@
-{ config, pkgs, ... }: {
- users.defaultUserShell = pkgs.bashInteractive;
- environment.sessionVariables = {
- SHELL = "${pkgs.bashInteractive}/bin/bash";
- };
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- programs.bash = {
- enable = true;
- shellAliases = {
- cp = "rsync -av";
- top = "htop";
- bc = "bc -l";
- pgrep = "pgrep -f";
- make = "make -j6";
- diff = "diff -u";
- gdb = "gdb -q";
- mail = "neomutt";
- iroha = "ssh andrew@iroha";
- moyo = "ssh andrew@moyo";
- zasshi = "ssh andrew@zasshi";
- denpa = "ssh moyo -t 'ssh 192.168.122.89'";
- rod = "ssh -p 1738 rod";
- bmrg = "ssh boomerang";
- cmv-add = "$HOME/c/camu/scripts/cmv_add.sh";
- cmv-pause = "cmv-add PAUSE";
- cmv-next = "cmv-add NEXT";
- cmv-prev = "cmv-add PREV";
- cmv-shuffle = "cmv-add SHUFFLE";
- cmv-sort = "cmv-add SORT";
- cmv-reverse = "cmv-add REVERSE";
- cmv-clear = "cmv-add CLEAR";
- };
- historyControl = [ "erasedups" ];
- historySize = 10000;
- historyFile = "${homeDir}/.bash_history";
- historyFileSize = 100000;
- initExtra = ''
- bind 'set completion-query-items 0'
- bind 'set show-all-if-ambiguous on'
- bind 'set show-all-if-unmodified on'
- bind 'set menu-complete-display-prefix on'
- bind '"\t": menu-complete'
- bind '"\e[Z": menu-complete-backward'
- RESET="\001\017\002"
- NORMAL="\001\033[0m\002"
- YELLOW="\001\033[0;33m\002"
- BLUE="\001\033[0;34m\002"
- MAGENTA="\001\033[0;35m\002"
- CYAN="\001\033[0;36m\002"
- RED="\001\033[0;31m\002"
- exit_code_guy()
- {
- if [ $? -eq 0 ]; then
- printf "(・_・) >"
- else
- printf "(″ロ゛) >"
- fi
- }
- export PS1="$RESET$MAGENTA\u@$CYAN\H$MAGENTA:\w\$(exit_code_guy)$NORMAL "
- '';
- };
- };
-}
diff --git a/nix/programs/docker.nix b/nix/programs/docker.nix
deleted file mode 100644
index 3491a80..0000000
--- a/nix/programs/docker.nix
+++ /dev/null
@@ -1,4 +0,0 @@
-{ ... }: {
- virtualisation.docker.enable = true;
- users.users.andrew.extraGroups = [ "docker" ];
-}
diff --git a/nix/programs/firefox.nix b/nix/programs/firefox.nix
deleted file mode 100644
index 9364d29..0000000
--- a/nix/programs/firefox.nix
+++ /dev/null
@@ -1,145 +0,0 @@
-{ config, pkgs, ... }:
-let
- colo = config.local.scheme;
-in {
- environment.systemPackages = with pkgs; [
- firefox-wayland
- ];
- environment.sessionVariables = {
- BROWSER = "firefox";
- };
- services.psd.enable = true;
- home-manager.users.andrew = {
- home.file."user-overrides.js" = {
- target = ".mozilla/firefox/default/user-overrides.js";
- source = ../../files/firefox/user-overrides.js;
- };
- home.file."firefox-gnome-theme" = {
- target = ".mozilla/firefox/default/chrome/firefox-gnome-theme";
- source = (pkgs.fetchFromGitHub {
- owner = "rafaelmardojai";
- repo = "firefox-gnome-theme";
- rev = "4eb2714fbed2b80e234312611a947d6cb7d70caf";
- hash = "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=";
- });
- };
- home.file."customChrome.css" = {
- target = ".mozilla/firefox/default/chrome/customChrome.css";
- source = pkgs.writeText "customChrome.css" ''
- @namespace xul url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
-
- @media (prefers-color-scheme: ${colo.lightness}) {
- :root {
- /* Accent */
- --gnome-accent-bg: #${colo.color3};
- --gnome-accent: #${colo.color4};
-
- --gnome-toolbar-star-button: #${colo.color4};
-
- /* Window */
- --gnome-window-background: #${colo.background};
- --gnome-window-color: #${colo.foreground};
- --gnome-view-background: #${colo.background};
- --gnome-sidebar-background: #${colo.color5};
- --gnome-secondary-sidebar-background: #${colo.color4};
-
- /* Card */
- --gnome-card-background: #${colo.background};
- --gnome-card-shade-color: #${colo.color4};
-
- /* Menu */
- --gnome-menu-background: #${colo.background};
-
- /* Header bar */
- --gnome-headerbar-background: #${colo.background};
- --gnome-headerbar-shade-color: #${colo.background};
-
- /* Toolbars */
- --gnome-toolbar-icon-fill: #${colo.foreground};
-
- /* Tabs */
- --gnome-tabbar-tab-hover-background: #${colo.color5};
- --gnome-tabbar-tab-active-background: #${colo.color4};
- --gnome-tabbar-tab-active-background-contrast: #${colo.color4};
- --gnome-tabbar-tab-active-hover-background: #${colo.color5};
-
- --gnome-tabbar-identity-color-green: var(--gnome-palette-green-1);
- --gnome-tabbar-identity-color-yellow: var(--gnome-palette-yellow-2);
- --gnome-tabbar-identity-color-orange: var(--gnome-palette-orange-3);
- --gnome-tabbar-identity-color-red: var(--gnome-palette-red-1);
- --gnome-tabbar-identity-color-purple: var(--gnome-palette-purple-1);
-
- /* Text color for Firefox Logo in new private tab */
- --gnome-private-wordmark: #${colo.background};
- /* New private tab background */
- --gnome-private-in-content-page-background: #${colo.background};
- /* Private browsing info box */
- --gnome-private-text-primary-color: #${colo.background};
- }
-
- /* Backdrop colors */
- :root:-moz-window-inactive {
- --gnome-tabbar-tab-hover-background: #${colo.background};
- --gnome-tabbar-tab-active-background: #${colo.background};
- }
-
- /* Private colors */
- :root[privatebrowsingmode="temporary"] {
- --gnome-accent-fg: #${colo.color4};
- /* Headerbar */
- --gnome-headerbar-background: #${colo.color5} !important;
- /* Tabs */
- --gnome-tabbar-tab-hover-background: #${colo.color5};
- --gnome-tabbar-tab-active-background: #${colo.background};
- --gnome-tabbar-tab-active-background-contrast: #${colo.background};
- --gnome-tabbar-tab-active-hover-background: #${colo.color5};
- }
-
- /* Private and backdrop colors */
- :root[privatebrowsingmode="temporary"]:-moz-window-inactive {
- --gnome-headerbar-background: #${colo.color5} !important;
- --gnome-tabbar-tab-hover-background: #${colo.color5};
- --gnome-tabbar-tab-active-background: #${colo.color5};
- }
- }
- '';
- };
- home.sessionVariables = {
- MOZ_WEBRENDER = "1";
- MOZ_USE_XINPUT2 = "1";
- MOZ_ENABLE_WAYLAND = "1";
- };
- programs.firefox = {
- enable = true;
- profiles.default = {
- extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
- ublock-origin
- skip-redirect
- cookies-txt
- youtube-recommended-videos
- istilldontcareaboutcookies
- hls-stream-detector
- old-reddit-redirect
- tampermonkey
- enhanced-h264ify
- ];
- userChrome = ''
- @import "firefox-gnome-theme/userChrome.css";
- @import "customChrome.css";
- #urlbar .search-one-offs {
- display: none !important;
- }
- #tabbrowser-tabpanels{
- background-color: #${colo.background} !important;
- }
- '';
- userContent = ''
- @import "firefox-gnome-theme/userContent.css";
- @-moz-document url("about:home"),url("about:blank"),url("about:newtab"),url("about:privatebrowsing") {
- body{ background-color: #${colo.background} !important }
- }
- '';
- };
- };
- };
-}
diff --git a/nix/programs/foot.nix b/nix/programs/foot.nix
deleted file mode 100644
index 5c85ce7..0000000
--- a/nix/programs/foot.nix
+++ /dev/null
@@ -1,51 +0,0 @@
-{ config, pkgs, ... }:
-let
- loc = config.local;
- colo = loc.scheme;
-in {
- environment.sessionVariables = {
- TERMINAL = "${pkgs.foot}/bin/footclient";
- };
- home-manager.users.andrew = {
- programs.foot = {
- enable = true;
- server.enable = true;
- settings = {
- main = {
- font = "${s.font.name}:size=${toString s.font.size}";
- };
- colors = {
- foreground = "${colo.foreground}";
- background = "${colo.background}";
- regular0 = "${colo.color0}";
- regular1 = "${colo.color1}";
- regular2 = "${colo.color2}";
- regular3 = "${colo.color3}";
- regular4 = "${colo.color4}";
- regular5 = "${colo.color5}";
- regular6 = "${colo.color6}";
- regular7 = "${colo.color7}";
- bright0 = "${colo.color8}";
- bright1 = "${colo.color9}";
- bright2 = "${colo.color10}";
- bright3 = "${colo.color11}";
- bright4 = "${colo.color12}";
- bright5 = "${colo.color13}";
- bright6 = "${colo.color14}";
- bright7 = "${colo.color15}";
- alpha = "1.0";
- };
- };
- };
- wayland.windowManager.sway = {
- config = rec {
- terminal = "${pkgs.foot}/bin/footclient";
- keybindings = let
- mod1 = "Mod1";
- in {
- "${mod1}+Return" = "exec ${terminal}";
- };
- };
- };
- };
-}
diff --git a/nix/programs/kdeconnect.nix b/nix/programs/kdeconnect.nix
deleted file mode 100644
index 8d8b366..0000000
--- a/nix/programs/kdeconnect.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ ... }: {
- networking.firewall = {
- allowedTCPPortRanges = [ { from = 1714; to = 1764; } ];
- allowedUDPPortRanges = [ { from = 1714; to = 1764; } ];
- };
- home-manager.users.andrew = {
- services.kdeconnect = {
- enable = true;
- indicator = false;
- };
- };
-}
diff --git a/nix/programs/kitty.nix b/nix/programs/kitty.nix
deleted file mode 100644
index f3c11a4..0000000
--- a/nix/programs/kitty.nix
+++ /dev/null
@@ -1,112 +0,0 @@
-{ config, lib, pkgs, ... }:
-let
- loc = config.local;
- colo = loc.scheme;
-in {
- environment.sessionVariables = {
- TERMINAL = "${pkgs.kitty}/bin/kitty -1";
- };
- home-manager.users.andrew = {
- programs.kitty = {
- enable = true;
- font = {
- name = loc.font.name;
- size = loc.font.size;
- };
- shellIntegration = {
- mode = "enabled";
- enableBashIntegration = true;
- };
- extraConfig = ''
- shell ${pkgs.bashInteractive}/bin/bash --login
- update_check_interval 0
- confirm_os_window_close 0
- sync_to_monitor no
- allow_remote_control yes
- linux_display_server wayland
- remember_window_size no
- initial_window_width 720
- initial_window_height 480
- resize_debounce_time 0.025 0.5
- window_padding_width 1
- placement_strategy top-left
- scrollback_lines 3000
- paste_actions confirm,confirm-if-large
- disable_ligatures always
- modify_font baseline ${toString loc.font.baseline}
- modify_font cell_height ${toString loc.font.cell-height-offset}
- cursor_shape block
- #cursor_blink_interval -1 linear ease-out
- #cursor_stop_blinking_after 20.0
- cursor_trail 2
- cursor_trail_decay 0.075 0.425
- cursor_trail_start_threshold 3
- cursor #${colo.foreground}
- #cursor none
- cursor_text_color background
- foreground #${colo.foreground}
- background #${colo.background}
- color0 #${colo.color0}
- color1 #${colo.color1}
- color2 #${colo.color2}
- color3 #${colo.color3}
- color4 #${colo.color4}
- color5 #${colo.color5}
- color6 #${colo.color6}
- color7 #${colo.color7}
- color8 #${colo.color8}
- color9 #${colo.color9}
- color10 #${colo.color10}
- color11 #${colo.color11}
- color12 #${colo.color12}
- color13 #${colo.color13}
- color14 #${colo.color14}
- color15 #${colo.color15}
- selection_foreground #${colo.background}
- selection_background #${colo.color6}
- mark1_foreground #${colo.background}
- mark1_background #${colo.color5}
- mark2_foreground #${colo.background}
- mark2_background #${colo.color6}
- mark3_foreground #${colo.background}
- mark3_background #${colo.color4}
- background_opacity ${toString colo.alpha}
- active_border_color #${colo.color4}
- bell_border_color #${colo.color1}
- inactive_border_color #${colo.color3}
- active_tab_foreground #${colo.background}
- active_tab_background #${colo.color5}
- active_tab_font_style bold-italic
- inactive_tab_foreground #${colo.background}
- inactive_tab_background #${colo.color4}
- url_color #${colo.color5}
- enabled_layouts splits,stack
- '';
- };
- home.file.".config/kitty/quick-access-terminal.conf".text = ''
- lines 18
- background_opacity 0.925
- output_name ${loc.monitors.monitor1}
- kitty_override startup_session=quick-access-session.conf
- kitty_override placement_strategy=bottom-right
- kitty_override window_padding_width=0 12 8 0
- '';
- home.file.".config/kitty/quick-access-session.conf".text = ''
- layout splits
- launch --var window=main
- launch --location=vsplit --bias=17.1 /home/andrew/dl/tmp/clock/a.out
- focus_matching_window var:window=first
- '';
- wayland.windowManager.sway = {
- config = rec {
- terminal = "${pkgs.kitty}/bin/kitty -1";
- keybindings = let
- mod1 = "Mod1";
- in {
- "${mod1}+Return" = "exec ${terminal}";
- "${mod1}+backslash" = "exec ${pkgs.kitty}/bin/kitten quick-access-terminal";
- };
- };
- };
- };
-}
diff --git a/nix/programs/nvim.nix b/nix/programs/nvim.nix
deleted file mode 100644
index 3cdf12e..0000000
--- a/nix/programs/nvim.nix
+++ /dev/null
@@ -1,235 +0,0 @@
-{ config, pkgs, ... }:
-let
- colo = config.local.scheme;
- local-nvim = pkgs.vimUtils.buildVimPlugin {
- pname = "local";
- version = "0.2";
- src = ../../files/nvim/local;
- };
- wal = pkgs.vimUtils.buildVimPlugin {
- # https://github.com/neovim/neovim/blob/ec8922978eb14fe62671628bb25215743712eac0/src/nvim/highlight_group.c#L432
- # ...neovim-unwrapped-0.10.4/share/nvim/runtime/syntax/c.vim
- pname = "wal";
- version = "3.3";
- src = pkgs.writeTextDir "colors/wal-gui.vim" ''
- let g:colors_name = "wal-gui"
-
- set background=${colo.lightness}
- set pumblend=10
-
- " Lag Fix
- hi! link CurSearch Search
-
- " Plugins
- hi MiniStarterInactive guifg=#${colo.foreground}
- hi MiniStarterQuery guifg=#${colo.color5} gui=bold
- hi MiniStarterItemPrefix guifg=#${colo.color4}
-
- " https://github.com/NeogitOrg/neogit/blob/nightly/lua/neogit/lib/hl.lua
- hi link NeogitDiffContext Normal
- hi link NeogitDiffContextHighlight Normal
- hi link NeogitDiffContextCursor Normal
- hi link NeogitHunkHeader NeogitHunkHeaderHighlight
-
- " Custom
- hi ExtraWhitespace guibg=#${colo.color4}
-
- hi Normal guifg=#${colo.foreground} guibg=#${colo.background}
-
- " Necessary even without tree-sitter.
- hi @variable guifg=#${colo.foreground}
-
- " UI
- hi Added guifg=#${colo.color2}
- hi Changed guifg=#${colo.color3}
- hi ColorColumn guibg=#${colo.color6}
- hi Conceal guifg=#${colo.color5}
- hi CurSearch guifg=#${colo.background} guibg=#${colo.color4}
- hi CursorColumn guibg=#${colo.background}
- hi CursorLine guibg=#${colo.color5}
- hi DiffAdd guifg=#${colo.color2} guibg=#${colo.background}
- hi DiffChange guifg=#${colo.color3} guibg=#${colo.background}
- hi DiffDelete guifg=#${colo.color1} guibg=#${colo.background} gui=bold
- hi DiffText guifg=#${colo.color4} guibg=#${colo.background}
- hi Directory guifg=#${colo.color2}
- hi ErrorMsg guifg=#${colo.color1}
- hi FloatShadow guibg=#${colo.color6} blend=80
- hi FloatShadowThrough guibg=#${colo.color6} blend=100
- hi Folded guifg=#${colo.color5} guibg=#${colo.background}
- hi LineNr guifg=#${colo.color2}
- hi MatchParen guifg=#${colo.color2} guibg=#${colo.background} gui=bold
- hi ModeMsg guifg=#${colo.color4}
- hi MoreMsg guifg=#${colo.color2}
- hi NonText guifg=#${colo.color6}
- hi NormalFloat guibg=#${colo.color5}
- hi Pmenu guibg=#${colo.color5}
- hi PmenuThumb guibg=#${colo.color4}
- hi PmenuSel guibg=#${colo.color5} " Font color.
- hi PmenuSbar guibg=#${colo.color5}
- hi Question guifg=#${colo.color3}
- hi QuickFixLine guifg=#${colo.color3}
- hi RedrawDebugClear guibg=#${colo.color2}
- hi RedrawDebugComposed guibg=#${colo.background}
- hi RedrawDebugRecompose guibg=#${colo.color3}
- hi Removed guifg=#${colo.color1}
- hi Search guifg=#${colo.foreground} guibg=#${colo.color1}
- hi SignColumn guifg=#${colo.color6}
- hi SpecialKey guifg=#${colo.color6}
- hi SpellBad guisp=#${colo.color1} gui=undercurl
- hi SpellCap guisp=#${colo.color4} gui=undercurl
- hi SpellLocal guisp=#${colo.color4} gui=undercurl
- hi SpellRare guisp=#${colo.color3} gui=undercurl
- hi StatusLine guifg=#${colo.background} guibg=#${colo.color5}
- hi StatusLineNC guifg=#${colo.background} guibg=#${colo.color4}
- hi Title guifg=#${colo.foreground} gui=bold
- hi Visual guibg=#${colo.color3}
- hi WarningMsg guifg=#${colo.color3}
- hi WinBar guifg=#${colo.color5} guibg=#${colo.background} gui=bold
- hi WinBarNC guifg=#${colo.color5} guibg=#${colo.background}
-
- " // Syntax
- " "default link Character Constant",
- " "default link Number Constant",
- " "default link Boolean Constant",
- " "default link Float Number",
- " "default link Conditional Statement",
- " "default link Repeat Statement",
- " "default link Label Statement",
- " "default link Keyword Statement",
- " "default link Exception Statement",
- " "default link Include PreProc",
- " "default link Define PreProc",
- " "default link Macro PreProc",
- " "default link PreCondit PreProc",
- " "default link StorageClass Type",
- " "default link Structure Type",
- " "default link Typedef Type",
- " "default link Tag Special",
- " "default link SpecialChar Special",
- " "default link SpecialComment Special",
- " "default link Debug Special",
- " "default link Ignore Normal",
-
- " Syntax Overrides
- hi Structure guifg=#${colo.color4} gui=bold
- hi StorageClass guifg=#${colo.color4} gui=bold
- hi Number guifg=#${colo.foreground}
- " -----
- hi link Boolean Number
- hi link Character String
- hi link SpecialChar Character
-
- " Syntax
- hi Constant guifg=#${colo.foreground}
- hi Operator guifg=#${colo.foreground}
- hi PreProc guifg=#${colo.foreground}
- hi Type guifg=#${colo.foreground} gui=bold
- hi Delimiter guifg=#${colo.foreground}
-
- hi Comment guifg=#${colo.color2}
- hi String guifg=#${colo.color2}
- hi Identifier guifg=#${colo.foreground}
- hi Function guifg=#${colo.foreground}
- hi Statement guifg=#${colo.foreground} gui=bold
- hi Special guifg=#${colo.color6}
- hi Error guifg=#${colo.color1} guibg=#${colo.foreground} " Used for Neogit delete.
- hi Todo guifg=#${colo.foreground} gui=bold
-
- " Diagnostic
- hi DiagnosticError guifg=#${colo.color1}
- hi DiagnosticWarn guifg=#${colo.color3}
- hi DiagnosticInfo guifg=#${colo.color2}
- hi DiagnosticHint guifg=#${colo.foreground}
- hi DiagnosticOk guifg=#${colo.color4}
- hi DiagnosticUnderlineError guisp=#${colo.color1} gui=underline
- hi DiagnosticUnderlineWarn guisp=#${colo.color3} gui=underline
- hi DiagnosticUnderlineInfo guisp=#${colo.color2} gui=underline
- hi DiagnosticUnderlineHint guisp=#${colo.foreground} gui=underline
- hi DiagnosticUnderlineOk guisp=#${colo.color4} gui=underline
- hi DiagnosticDeprecated guisp=#${colo.color3} gui=strikethrough
- '';
- };
-in {
- environment.sessionVariables = {
- EDITOR = "nvim";
- };
- home-manager.users.andrew = {
- programs.neovim = let
- s = config.local.starter;
- in {
- enable = true;
- viAlias = true;
- vimAlias = true;
- extraConfig = ''
- lua << EOF
- -- Simpler mini.starter builtin actions.
- local builtin_actions_edit = function()
- return {
- { name = 'Edit new buffer', action = 'enew', section = 'Actions' },
- { name = 'Quit', action = 'qall', section = 'Actions' }
- }
- end
- local starter = require('mini.starter')
- starter.setup({
- items = {
- starter.sections.sessions(6, true),
- starter.sections.recent_files(7, false, false),
- builtin_actions_edit()
- },
- content_hooks = {
- starter.gen_hook.adding_bullet(),
- starter.gen_hook.aligning('center', 'center')
- },
- top_padding = ${toString s.top_padding},
- header = '${s.header}',
- footer = '${s.footer}',
- footer_offset = ${toString s.footer-offset},
- picture = {
- path = '${s.picture}',
- kitty = os.getenv('TERM') == 'xterm-kitty',
- width = ${toString s.width},
- position = '${s.position}',
- padding = {
- top = ${toString s.padding.top},
- left = ${toString s.padding.left},
- text = ${toString s.padding.text}
- }
- }
- })
- EOF
- '' + builtins.readFile(../../files/nvim/init.vim);
- extraPackages = with pkgs; [
- fzf
- chafa
- ripgrep
- xxd
- ];
- #(pkgs.vimUtils.buildVimPlugin {
- # pname = "";
- # version = "";
- # src = pkgs.fetchFromGitHub {
- # owner = "";
- # repo = "";
- # rev = "";
- # hash = "";
- # };
- # meta.homepage = "";
- #})
- plugins = with pkgs.vimPlugins; [
- local-nvim
- wal
- undotree
- fzfWrapper
- fzf-vim
- vim-gitbranch
- vim-signify
- nvim-lspconfig
- inc-rename-nvim
- mini-nvim
- neogit
- plenary-nvim
- ccc-nvim
- ];
- };
- };
-}
diff --git a/nix/programs/obs.nix b/nix/programs/obs.nix
deleted file mode 100644
index 59dca35..0000000
--- a/nix/programs/obs.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ config, pkgs, ... }: {
- environment.systemPackages = with pkgs; [
- obs-studio
- ];
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- home.file.".config/obs-studio/plugins/wlrobs/bin/64bit/libwlrobs.so".source = "${pkgs.obs-studio-plugins.wlrobs}/lib/obs-plugins/libwlrobs.so";
- home.file.".config/obs-studio/plugins/wlrobs/bin/64bit/obs-vaapi.so".source = "${pkgs.obs-studio-plugins.obs-vaapi}/lib/obs-plugins/obs-vaapi.so";
- };
-}
diff --git a/nix/programs/sunshine.nix b/nix/programs/sunshine.nix
deleted file mode 100644
index dff4d97..0000000
--- a/nix/programs/sunshine.nix
+++ /dev/null
@@ -1,29 +0,0 @@
-{ pkgs, ... }: {
- #environment.systemPackages = with pkgs; [ sunshine ];
- services.sunshine = {
- enable = true;
- capSysAdmin = true;
- settings = {
- sunshine_name = "Iroha";
- };
- applications = {
- env = {
- PATH = "$(PATH)";
- };
- apps = [
- {
- name = "Steam Gamescope";
- cmd = "gamescope -w 960 -W 960 -h 544 -H 544 -r 60 -O DP-1 -e -- steam steam://open/bigpicture";
- }
- ];
- };
- };
- #security.wrappers = {
- # sunshine = {
- # owner = "root";
- # group = "root";
- # source = "${pkgs.sunshine}/bin/sunshine";
- # capabilities = "cap_sys_admin+p";
- # };
- #};
-}
diff --git a/nix/programs/sway.nix b/nix/programs/sway.nix
deleted file mode 100644
index 07f8d2c..0000000
--- a/nix/programs/sway.nix
+++ /dev/null
@@ -1,360 +0,0 @@
-{ config, lib, pkgs, ... }:
-let
- loc = config.local;
- colo = loc.scheme;
-in {
- services.xserver.videoDrivers = [ "modesetting" ];
- programs.sway = {
- enable = true;
- package = pkgs.swayfx;
- extraPackages = with pkgs; [
- libinput
- swaybg
- swayidle
- wl-clipboard
- libnotify
- bemenu
- slurp
- grim
- wf-recorder
- wlsunset
- xorg.xprop
- xorg.xset
- xorg.xrdb
- xorg.xrandr
- ];
- };
- local.scripts.imports = [
- "dbus-sway-environment"
- "dmenu-path"
- "dmenu-path0"
- "dmenu-emoji"
- "wlsunset-toggle"
- "screenshot"
- ];
- services.dbus.enable = true;
- security.polkit.enable = true;
- programs.dconf.enable = true;
- xdg.portal = {
- enable = true;
- wlr.enable = true;
- extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
- };
- xdg.icons.enable = true;
- #services.getty.autologinUser = "andrew";
- #services.greetd = {
- # enable = false;
- # settings = {
- # vt=3;
- # default_session = {
- # command = "run-sway";
- # user = "root";
- # };
- # };
- #};
- qt = {
- enable = true;
- platformTheme = "qt5ct"; # Also selects qt6ct.
- style = "adwaita";
- };
- home-manager.users.andrew = {
- home.sessionVariables = {
- MAIN_MONITOR="${loc.monitors.monitor1}";
- XDG_CURRENT_DESKTOP = "sway";
- MOZ_ENABLE_WAYLAND = "1";
- SDL_VIDEODRIVER = "wayland";
- GDK_BACKEND = "wayland,x11";
- QT_QPA_PLATFORM = "wayland;xcb";
- QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
- _JAVA_AWT_WM_NONREPARENTING = "1";
- };
- xresources.properties = {
- "*background" = "#${colo.background}";
- "*foreground" = "#${colo.foreground}";
- "*color0" = "#${colo.color0}";
- "*color1" = "#${colo.color1}";
- "*color2" = "#${colo.color2}";
- "*color3" = "#${colo.color3}";
- "*color4" = "#${colo.color4}";
- "*color5" = "#${colo.color5}";
- "*color6" = "#${colo.color6}";
- "*color7" = "#${colo.color7}";
- "*color8" = "#${colo.color8}";
- "*color9" = "#${colo.color9}";
- "*color10" = "#${colo.color10}";
- "*color11" = "#${colo.color11}";
- "*color12" = "#${colo.color12}";
- "*color13" = "#${colo.color13}";
- "*color14" = "#${colo.color14}";
- "*color15" = "#${colo.color15}";
- };
- gtk = let
- # *_shade_color is adjusted from black by default.
- extraCss3 = ''
- @define-color shade_color #${colo.background};
- @define-color scrollbar_outline_color #${colo.foreground};
- @define-color window_bg_color #${colo.background};
- @define-color window_fg_color #${colo.foreground};
- @define-color view_bg_color #${colo.background};
- @define-color view_fg_color #${colo.foreground};
- @define-color accent_bg_color #${colo.color4};
- @define-color accent_fg_color #${colo.background};
- @define-color accent_color #${colo.color4};
- @define-color headerbar_bg_color #${colo.background};
- @define-color headerbar_fg_color #${colo.foreground};
- @define-color headerbar_backdrop_color #${colo.background};
- @define-color headerbar_border_color #${colo.color6};
- @define-color secondary_headerbar_bg_color #${colo.background};
- @define-color secondary_headerbar_fg_color #${colo.foreground};
- @define-color secondary_headerbar_backdrop_color #${colo.background};
- @define-color secondary_headerbar_border_color #${colo.color5};
- @define-color thumbnail_bg_color #${colo.background};
- @define-color thumbnail_fg_color #${colo.foreground};
- @define-color card_bg_color #${colo.background};
- @define-color card_fg_color #${colo.foreground};
- @define-color popover_bg_color #${colo.background};
- @define-color popover_fg_color #${colo.foreground};
- @define-color dialog_bg_color #${colo.background};
- @define-color dialog_fg_color #${colo.foreground};
- @define-color panel_bg_color #${colo.background};
- @define-color panel_fg_color #${colo.foreground};
- @define-color sidebar_bg_color #${colo.background};
- @define-color sidebar_fg_color #${colo.foreground};
- @define-color sidebar_backdrop_color #${colo.background};
- @define-color sidebar_border_color #${colo.color5};
- @define-color secondary_sidebar_bg_color #${colo.background};
- @define-color secondary_sidebar_fg_color #${colo.foreground};
- @define-color secondary_sidebar_backdrop_color #${colo.background};
- @define-color secondary_sidebar_border_color #${colo.color6};
- @define-color warning_bg_color #${colo.color4};
- @define-color warning_fg_color #${colo.foreground};
- @define-color warning_color #${colo.color4};
- @define-color error_bg_color #${colo.color3};
- @define-color error_fg_color #${colo.foreground};
- @define-color error_color #${colo.color3};
- @define-color success_bg_color #${colo.color2};
- @define-color success_fg_color #${colo.background};
- @define-color success_color #${colo.color2};
- @define-color destructive_bg_color #${colo.color5};
- @define-color destructive_fg_color #${colo.background};
- @define-color destructive_color #${colo.color5};
- '';
- extraCss4 = ''
- '';
- in {
- enable = true;
- theme = {
- name = "adw-gtk3" + (if colo.lightness == "light" then "" else "-dark");
- package = pkgs.adw-gtk3;
- };
- cursorTheme = {
- name = "WhiteSur-cursors";
- };
- #iconTheme = {
- # name = "suru";
- # package = pkgs.ubuntu-themes;
- #};
- gtk3.extraCss = extraCss3;
- gtk4.extraCss = extraCss3;
- };
- home.pointerCursor = {
- name = "WhiteSur-cursors";
- package = pkgs.whitesur-cursors;
- };
- wayland.windowManager.sway = {
- enable = true;
- systemd.enable = true;
- xwayland = true;
- wrapperFeatures = { base = true; gtk = true; };
- swaynag = {
- enable = true;
- settings = {
- "<config>" = {
- edge = "top";
- font = "${loc.ui-font.name} ${toString loc.ui-font.size}";
- background = "${colo.background}";
- border = "${colo.background}";
- text = "${colo.foreground}";
- button-text = "${colo.foreground}";
- button-background = "${colo.color6}";
- message-padding = 5;
- border-bottom-size = 1;
- details-border-size = 1;
- button-border-size = 1;
- button-gap = 3;
- button-dismiss-gap = 7;
- button-padding = 3;
- button-margin-right = 5;
- };
- };
- };
- config = rec {
- input = {
- "type:keyboard" = {
- repeat_rate = "45";
- repeat_delay = "220";
- xkb_options = "ctrl:nocaps";
- };
- "type:touchpad" = {
- natural_scroll = "enabled";
- };
- "1189:32769:BenQ_ZOWIE_BenQ_ZOWIE_Gaming_Mouse" = {
- accel_profile = "flat";
- pointer_accel = "-0.675";
- scroll_factor = "1.0";
- };
- "1241:44368:USB_Gaming_Mouse" = { # Finalmouse Ultralight 2
- accel_profile = "flat";
- scroll_factor = "0.75";
- };
- "1133:45104:Logi_POP_Mouse" = {
- accel_profile = "flat";
- scroll_factor = "0.75";
- };
- "1133:50504:Logitech_USB_Receiver_Mouse" = {
- accel_profile = "flat";
- scroll_factor = "0.75";
- };
- "2362:9488:PixArt_USB_Optical_Mouse" = {
- accel_profile = "flat";
- scroll_factor = "0.75";
- };
- "1390:268:ELECOM_TrackBall_Mouse_HUGE_TrackBall_Mouse" = {
- accel_profile = "flat";
- scroll_factor = "0.25";
- scroll_method = "on_button_down";
- scroll_button = "276";
- };
- "1386:890:Wacom_One_by_Wacom_S_Pen" = {
- map_to_output = loc.monitors.monitor1;
- left_handed = "enabled";
- };
- };
- modifier = "Mod1";
- menu = "dmenu-path | bemenu-colored | ${pkgs.findutils}/bin/xargs swaymsg exec --";
- focus.wrapping = "yes";
- keybindings = let
- mod1 = "Mod1";
- in {
- "button4" = "nop";
- "button5" = "nop";
- "${mod1}+d" = "exec ${menu}";
- "${mod1}+e" = "exec dmenu-emoji | bemenu-colored | awk '{split($0,a);printf \"%s\", a[1];}' | wl-copy";
- "${mod1}+q" = "exec screenshot qrcode";
- "${mod1}+c" = "exec screenshot color";
- "${mod1}+Shift+q" = "kill";
- "${mod1}+h" = "focus left";
- "${mod1}+j" = "focus down";
- "${mod1}+k" = "focus up";
- "${mod1}+l" = "focus right";
- "${mod1}+Shift+h" = "move left";
- "${mod1}+Shift+j" = "move down";
- "${mod1}+Shift+k" = "move up";
- "${mod1}+Shift+l" = "move right";
- "${mod1}+b" = "split h";
- "${mod1}+v" = "split v";
- "${mod1}+f" = "fullscreen toggle";
- "${mod1}+space" = "floating toggle";
- "${mod1}+r" = "mode \"resize\"";
- "${mod1}+Shift+c" = "reload";
- "${mod1}+Shift+e" = "exec swaynag -m 'Do you really want to exit?' -B 'Yes' 'swaymsg exit'";
- "Print" = "exec screenshot main";
- "Shift+Print" = "exec screenshot full";
- "${mod1}+Shift+s" = "exec screenshot";
- "${mod1}+s" = "exec wlsunset-toggle";
- "${mod1}+Shift+t" = "exec swaymsg -- input 1386:890:Wacom_One_by_Wacom_S_Pen events disabled";
- };
- modes = {
- resize = {
- Escape = "mode default";
- h = "resize shrink width 1 px";
- j = "resize grow height 1 px";
- k = "resize shrink height 1 px";
- l = "resize grow width 1 px";
- };
- };
- fonts = {
- names = [ loc.ui-font.name ];
- style = "Regular";
- size = loc.ui-font.size + 0.0;
- };
- bars = [ ];
- window = {
- border = 2;
- titlebar = false;
- commands = [
- { command = "move to scratchpad"; criteria.app_id = "kitty-server"; }
- { command = "allow_tearing yes"; criteria.app_id = "kitty"; }
- { command = "inhibit_idle fullscreen; floating enable"; criteria.app_id = "cmv"; }
- { command = "floating enable"; criteria.class = "cmv.exe"; }
- { command = "floating enable"; criteria.app_id = "mauri"; }
- { command = "inhibit_idle fullscreen"; criteria.title = "Parsec"; }
- { command = "inhibit_idle fullscreen"; criteria.class = "streaming_client"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.class = "steam_app_.*"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes; floating enable"; criteria.app_id = "gamescope"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.class = ".gamescope-wrapped"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.app_id = "osu!"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.class = "cs2"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.class = "Minecraft*"; }
- { command = "inhibit_idle fullscreen; allow_tearing yes"; criteria.title = "Overwatch"; }
- { command = "inhibit_idle fullscreen"; criteria.class = "Ryujinx"; }
- { command = "inhibit_idle fullscreen"; criteria.app_id = "org.yuzu_emu.yuzu"; }
- { command = "inhibit_idle fullscreen"; criteria.app_id = "info.cemu.Cemu"; }
- { command = "inhibit_idle fullscreen"; criteria.class = "dolphin-emu"; }
- { command = "inhibit_idle fullscreen"; criteria.class = "AppRun"; } # Ishiiruka-Dolphin
- { command = "inhibit_idle fullscreen"; criteria.class = "SuperMeatBoy"; }
- ];
- };
- colors = let
- bg = "#${colo.background}";
- fg = "#${colo.foreground}";
- ch = "#${colo.color4}";
- urgent = "#${colo.color1}";
- in {
- background = bg;
- focused = { background = bg; border = ch; childBorder = ch; indicator = ch; text = fg; };
- focusedInactive = { background = bg; border = ch; childBorder = ch; indicator = ch; text = fg; };
- unfocused = { background = bg; border = bg; childBorder = bg; indicator = bg; text = fg; };
- urgent = { background = urgent; border = urgent; childBorder = urgent; indicator = urgent; text = fg; };
- placeholder = { background = bg; border = bg; childBorder = bg; indicator = bg; text = fg; };
- };
- startup = let
- gnome-schema = "org.gnome.desktop.interface";
- in [
- { command = "dconf write /org/gnome/desktop/interface/color-scheme \"'prefer-${colo.lightness}'\""; always = true; }
- { command = "dbus-sway-environment"; }
- { command = "swaymsg 'seat * hide_cursor 4000'"; always = true; }
- { command = "kitty -1 --class=\"kitty-server\""; }
- { command = "wlsunset-toggle"; }
- ];
- };
- extraConfig = ''
- blur enable
- blur_passes 4
- blur_radius 2
- blur_contrast 1.5
- blur_saturation 1.1
- '';
- };
- services.swayidle = {
- enable = true;
- timeouts = [
- {
- timeout = 300;
- command = "${pkgs.sway}/bin/swaymsg \"output * dpms off\"";
- resumeCommand = "${pkgs.sway}/bin/swaymsg \"output * dpms on\"";
- }
- ];
- };
- services.mako = {
- enable = true;
- settings = {
- default-timeout = 14000;
- font = "${loc.font.name} ${toString loc.ui-font.size}";
- background-color = "#${colo.background}";
- text-color = "#${colo.foreground}";
- border-color = "#${colo.color6}";
- };
- };
- };
-}
diff --git a/nix/programs/waydroid.nix b/nix/programs/waydroid.nix
deleted file mode 100644
index af0c207..0000000
--- a/nix/programs/waydroid.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-{ ... }: {
- virtualisation.waydroid.enable = true;
-}
diff --git a/nix/programs/zsh.nix b/nix/programs/zsh.nix
deleted file mode 100644
index 6071429..0000000
--- a/nix/programs/zsh.nix
+++ /dev/null
@@ -1,76 +0,0 @@
-{ config, pkgs, ... }: {
- programs.zsh.enable = true;
-
- environment.shells = [ pkgs.zsh ];
- environment.pathsToLink = [ "/share/zsh" ];
- users.defaultUserShell = pkgs.zsh;
- environment.sessionVariables = {
- SHELL = "${pkgs.zsh}/bin/zsh";
- };
-
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- programs.zsh = {
- enable = true;
- shellAliases = {
- sudo = "nocorrect sudo ";
- xargs = "nocorrect xargs ";
- cp = "rsync -avz";
- top = "htop";
- bc = "bc -l";
- pgrep = "pgrep -f";
- make = "make -j6";
- diff = "diff -u";
- gdb = "gdb -q";
- mail = "neomutt";
- iroha = "ssh andrew@iroha";
- moyo = "ssh andrew@moyo";
- zasshi = "ssh andrew@zasshi";
- denpa = "ssh moyo -t 'ssh 192.168.122.89'";
- rod = "ssh -p 1738 rod";
- bmrg = "ssh boomerang";
- cmv = "$HOME/c/camu/scripts/cmv.sh";
- cmv-add = "$HOME/c/camu/scripts/cmv_add.sh";
- cmv-pause = "cmv-add PAUSE";
- cmv-next = "cmv-add NEXT";
- cmv-prev = "cmv-add PREV";
- cmv-shuffle = "cmv-add SHUFFLE";
- cmv-sort = "cmv-add SORT";
- cmv-reverse = "cmv-add REVERSE";
- cmv-clear = "cmv-add CLEAR";
- };
- defaultKeymap = "emacs";
- history = {
- save = 10000;
- size = 10000;
- append = true;
- expireDuplicatesFirst = true;
- extended = true;
- path = "${homeDir}/.histfile";
- # Don't share history between sessions.
- share = false;
- };
- # Completion tanks startup performance.
- enableCompletion = false;
- zprof.enable = false;
- initExtra = ''
- autoload -U colors && colors
- exit_code_guy()
- {
- if [[ $? == 0 ]]; then
- echo "(・_・) >"
- else
- echo "(″ロ゛) > %{$fg[red]%}$?%{$fg[cyan]%}"
- fi
- }
- setopt prompt_subst
- if [[ -v NIX_SHELL ]]; then
- PS1="($NIX_SHELL)%{$fg[yellow]%}%n%{$fg[red]%}@%{$fg[light\ red]%}%M%{$fg[cyan]%}:%~\$(exit_code_guy)%{$reset_color%} "
- else
- PS1="%{$fg[yellow]%}%n%{$fg[red]%}@%{$fg[light\ red]%}%M%{$fg[cyan]%}:%~\$(exit_code_guy)%{$reset_color%} "
- fi
- '';
- };
- };
-}
diff --git a/nix/scripts.nix b/nix/scripts.nix
deleted file mode 100644
index 8fac0a3..0000000
--- a/nix/scripts.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ config, lib, pkgs, ... }:
-let
- loc = config.local;
- colo = loc.scheme;
-in {
- environment.etc = {
- "emoji.json".source = builtins.fetchurl {
- url = "https://raw.githubusercontent.com/github/gemoji/0eca75db9301421efc8710baf7a7576793ae452a/db/emoji.json";
- sha256 = "sha256-sXSuKusyG1L2Stuf9BL5ZqfzOIOdeAeE3RXcrXAsLdY=";
- };
- };
- environment.systemPackages = with pkgs; [
- (writeShellScriptBin "bemenu-colored" ''
- bemenu -C --single-instance -B 0 -M 0 --hp 6 \
- --fn "${loc.font.name} ${toString (loc.font.size - 1)}" -H ${toString ((loc.font.size * 2) - 1)} \
- --cf "#${colo.foreground}" --cb "#${colo.background}" \
- --hf "#${colo.background}" --hb "#${colo.color4}" \
- --nf "#${colo.foreground}" --nb "#${colo.background}" \
- --ff "#${colo.foreground}" --fb "#${colo.background}" \
- --af "#${colo.foreground}" --ab "#${colo.background}" -p ""
- '')
- ] ++ (lib.lists.forEach loc.scripts.imports (x: pkgs.writeTextFile {
- name = x;
- text = (builtins.readFile ../scripts/desktop/${x});
- executable = true;
- destination = "/bin/${x}";
- }));
-}
diff --git a/nix/settings.nix b/nix/settings.nix
deleted file mode 100644
index 743529c..0000000
--- a/nix/settings.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- disks = {
- nfs_options = [ "noatime" "nodiratime" "rw" "bg" "hard" "fsc" "proto=tcp" "timeo=600" "nfsvers=4" "minorversion=2" "x-systemd.automount" "noauto" "x-systemd.idle-timeout=60" "x-systemd.device-timeout=5s" "x-systemd.mount-timeout=5s" ];
- hdd_options = [ "noatime" ];
- cdrom_options = [ "ro" "user" "noauto" "unhide" ];
- ntfs_options = [ "uid=1000" "gid=100" "rw" "user" "exec" "umask=000" ];
- };
-}
diff --git a/nix/steam.nix b/nix/steam.nix
deleted file mode 100644
index 66d675f..0000000
--- a/nix/steam.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ config, lib, pkgs, ... }: let
- loc = config.local;
-in {
- environment.systemPackages = with pkgs; lib.lists.flatten [
- (asNeeded "protontricks" ["protontricks" "protontricks-launch"])
- (writeShellScriptBin "run-steam-gamescope" ''
- export TTY=/dev/tty4
- export XDG_VTNR=4
- cd $HOME
- exec ${pkgs.kbd}/bin/openvt --switch --login --console 4 -f -- steam-gamescope
- '')
- (writeShellScriptBin "proton-env" ''
- export STEAM_COMPAT_LAUNCHER_SERVICE=proton
- export DXVK_HUD=compiler
- export DXVK_LOG_LEVEL=none
- export DXVK_DEBUG=none
- export VKD3D_HUD=compiler
- export VKD3D_CONFIG=dxr
- export VKD3D_DEBUG=none
- export VKD3D_SHADER_DEBUG=none
- export mesa_glthread=true
- xrandr --output ${loc.monitors.monitor1} --primary
- exec env --unset=SDL_VIDEODRIVER --unset=SDL_VIDEO_DRIVER MANGOHUD=1 gamemoderun "$@"
- '')
- ];
- programs.steam = {
- enable = true;
- gamescopeSession = let
- width = "2560";
- height = "1440";
- in {
- enable = true;
- args = [
- "-W ${width}" "-H ${height}"
- "-w ${width}" "-h ${height}"
- "-r 144"
- "-O ${loc.monitors.monitor1}"
- "--rt"
- "-f"
- "-e"
- #"-o 10"
- "--adaptive-sync"
- #"--force-grab-cursor"
- "--mangoapp"
- ];
- };
- };
-}
diff --git a/nix/system.nix b/nix/system.nix
deleted file mode 100644
index 92b95df..0000000
--- a/nix/system.nix
+++ /dev/null
@@ -1,134 +0,0 @@
-{ config, lib, pkgs, ... }: {
- nix = {
- settings = {
- experimental-features = [ "nix-command" "flakes" ];
- system-features = [ "big-parallel" "kvm" ];
- auto-optimise-store = true;
- download-buffer-size = 134217728;
- };
- gc.automatic = false;
- optimise.automatic = true;
- };
-
- nixpkgs.config.allowUnfree = true;
- hardware.enableRedistributableFirmware = true;
-
- security.pam.loginLimits = [
- {
- domain = "*";
- type = "soft";
- item = "nice";
- value = "-11";
- }
- {
- domain = "*";
- type = "hard";
- item = "nice";
- value = "-11";
- }
- {
- domain = "*";
- type = "soft";
- item = "rtprio";
- value = "99";
- }
- {
- domain = "*";
- type = "hard";
- item = "rtprio";
- value = "99";
- }
- {
- domain = "*";
- type = "soft";
- item = "nofile";
- value = "8192";
- }
- {
- domain = "*";
- type = "hard";
- item = "nofile";
- value = "1048576";
- }
- {
- domain = "*";
- type = "soft";
- item = "memlock";
- value = "unlimited";
- }
- {
- domain = "*";
- type = "hard";
- item = "memlock";
- value = "unlimited";
- }
- ];
- #systemd.services.nix-daemon.serviceConfig.LimitNOFILE = lib.mkForce 134217728;
-
- security.wrappers = {
- ping = {
- owner = "root";
- group = "root";
- source = "${pkgs.iputils.out}/bin/ping";
- capabilities = "cap_net_raw+p";
- };
- };
-
- hardware.graphics = {
- enable = true;
- extraPackages = with pkgs; [
- libvdpau-va-gl
- vaapiVdpau
- ];
- };
-
- environment.systemPackages = with pkgs; [
- git # flakes
- appimage-run
- i2c-tools
- pciutils
- smartmontools
- lm_sensors
- libdrm
- libva-utils
- vulkan-loader
- vulkan-validation-layers
- vulkan-tools
- mesa-demos
- ];
-
- boot.binfmt.registrations.appimage = {
- wrapInterpreterInShell = false;
- interpreter = "${pkgs.appimage-run}/bin/appimage-run";
- recognitionType = "magic";
- offset = 0;
- mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
- magicOrExtension = ''\x7fELF....AI\x02'';
- };
-
- services.openssh.enable = true;
-
- time.timeZone = "America/New_York";
- i18n.defaultLocale = "en_US.UTF-8";
- i18n.supportedLocales = [
- "C.UTF-8/UTF-8"
- "${config.i18n.defaultLocale}/UTF-8"
- "ja_JP.UTF-8/UTF-8"
- "ko_KR.UTF-8/UTF-8"
- ];
- i18n.glibcLocales = pkgs.glibcLocales.override {
- allLocales = false;
- locales = [
- "C.UTF-8/UTF-8"
- "${config.i18n.defaultLocale}/UTF-8"
- "ja_JP.UTF-8/UTF-8"
- "ko_KR.UTF-8/UTF-8"
- ];
- };
-
- console = {
- font = "Lat2-Terminus16";
- keyMap = "us";
- useXkbConfig = false;
- };
-}
diff --git a/nix/user.nix b/nix/user.nix
deleted file mode 100644
index 91a6e6b..0000000
--- a/nix/user.nix
+++ /dev/null
@@ -1,211 +0,0 @@
-{ config, lib, pkgs, ... }: let
- loc = config.local;
- colo = loc.scheme;
-in {
- users.users.andrew = {
- isNormalUser = true;
- uid = 1000;
- extraGroups = [ "wheel" "input" "audio" "video" "render" "disk" "cdrom" ];
- };
- nix.settings.trusted-users = [ "andrew" ];
-
- documentation = {
- enable = true;
- man.enable = true;
- dev.enable = true;
- };
-
- fonts = {
- fontDir.enable = true;
- packages = with pkgs; [
- local-fonts
- vistafonts
- noto-fonts
- noto-fonts-extra
- noto-fonts-cjk-sans
- noto-fonts-cjk-serif
- noto-fonts-emoji-blob-bin
- mplus-outline-fonts.osdnRelease
- intel-one-mono
- nanum-gothic-coding
- iosevka-comfy.comfy
- dina-font
- freefont_ttf # FreeMono
- ];
- fontconfig = {
- enable = true;
- includeUserConf = false;
- allowBitmaps = true;
- cache32Bit = true;
- antialias = true;
- hinting = {
- enable = false;
- style = "slight";
- };
- subpixel = {
- rgba = "rgb";
- lcdfilter = "light";
- };
- defaultFonts = {
- serif = [ loc.ui-font.name ];
- sansSerif = [ loc.ui-font.name ];
- monospace = [ loc.font.name ];
- emoji = [ loc.emoji-font.name ];
- };
- };
- };
-
- environment.systemPackages = with pkgs; lib.lists.flatten [
- man-pages
- man-pages-posix
- home-manager
- mercurial
- file
- bc
- screen
- loccount
- (aspellWithDicts (dicts: with dicts; [ en en-computers en-science ]))
- rsync
- (python3.withPackages (python-pkgs: [ python-pkgs.requests python-pkgs.beautifulsoup4 ]))
- htop
- neofetch
- ufetch
- (asNeeded "cmatrix" ["cmatrix"])
- hdparm
- #dcfldd
- ddrescue
- cdrtools
- usbutils
- cryptsetup
- (asNeeded "nix-index" ["nix-channel-index" "nix-index" "nix-locate"])
- imagemagick
- pngcheck
- (asNeeded "optipng" ["optipng"])
- (asNeeded "dmtx-utils" ["dmtxquery" "dmtxread" "dmtxwrite"])
- (asNeeded "zbar" ["zbarcam" "zbarcam-gtk" "zbarcam-qt" "zbarimg"])
- perlPackages.ArchiveZip # For crc32.
- b3sum
- libfaketime
- cpulimit
- dos2unix
- socat
- curl
- (asNeeded "httrack" ["htsserver" "httrack" "proxytrack" "webhttrack"])
- libuchardet
- (unzip.override { enableNLS = true; })
- rar
- unrar
- p7zip
- rclone
- ffmpeg-headless
- xdg-utils
- jq
- when
- evtest
- linuxConsoleTools
- wev
- gcr
- pass
- zenity
- ];
-
- local.scripts.imports = [
- "install-as-needed"
- "cpu-vulns"
- "sp" # spell
- "ts-date"
- "term-font-size"
- "shift-jis-zip"
- "7z-password"
- "moonrune-charset-utf8"
- "gpg-pubkey"
- "img-fstype"
- "mount-nfs"
- "rewrite-git"
- "xbox360-ffmpeg-enc"
- ];
-
- programs.screen = {
- enable = true;
- screenrc = ''
- termcapinfo xterm* ti@:te@
- defscrollback 10000
- startup_message off
- '';
- };
-
- programs.mtr.enable = true;
- services.gnome.gnome-keyring.enable = false;
- programs.gnupg.agent = {
- enable = true;
- pinentryPackage = pkgs.pinentry-gnome3;
- enableSSHSupport = true;
- settings = {
- default-cache-ttl = 28800;
- max-cache-ttl = 28800;
- };
- };
- programs.ssh = {
- extraConfig = "AddKeysToAgent yes";
- };
-
- home-manager.users.andrew = let
- homeDir = "${config.users.users.andrew.home}";
- in {
- home.username = "andrew";
- xdg.userDirs = {
- enable = true;
- desktop = "${homeDir}/tmp";
- documents = "${homeDir}/docs";
- download = "${homeDir}/dl";
- music = "${homeDir}/tmp";
- pictures = "${homeDir}/pics";
- publicShare = "${homeDir}/tmp";
- templates = "${homeDir}/tmp";
- videos = "${homeDir}/dl/mp4";
- };
- home.sessionVariables = {
- GOPATH = "${homeDir}/tmp/go";
- };
- programs.git = {
- enable = true;
- userEmail = "andrew@akon.city";
- userName = "Andrew Opalach";
- signing = {
- key = "99659CB58598BDDB"; # The last digits of the key.
- signByDefault = true;
- };
- extraConfig = {
- format.signOff = true;
- init.defaultBranch = "master";
- };
- };
- home.file.".config/gdb/gdbinit".source = ../files/gdbinit;
- home.file.".config/colors.json".text = ''
- {
- "special": {
- "background": "${colo.background}",
- "foreground": "${colo.foreground}"
- },
- "colors": {
- "color0": "${colo.color0}",
- "color1": "${colo.color1}",
- "color2": "${colo.color2}",
- "color3": "${colo.color3}",
- "color4": "${colo.color4}",
- "color5": "${colo.color5}",
- "color6": "${colo.color6}",
- "color7": "${colo.color7}",
- "color8": "${colo.color8}",
- "color9": "${colo.color9}",
- "color10": "${colo.color10}",
- "color11": "${colo.color11}",
- "color12": "${colo.color12}",
- "color13": "${colo.color13}",
- "color14": "${colo.color14}",
- "color15": "${colo.color15}"
- }
- }
- '';
- };
-}
diff --git a/nix/virtualisation.nix b/nix/virtualisation.nix
deleted file mode 100644
index bc6a6c0..0000000
--- a/nix/virtualisation.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ pkgs, ... }: {
- users.users.andrew.extraGroups = [ "libvirtd" "kvm" ];
- virtualisation.libvirtd.enable = true;
- programs.virt-manager.enable = true;
- virtualisation.spiceUSBRedirection.enable = true;
- environment.systemPackages = with pkgs; [
- virt-manager
- OVMF
- spice-gtk
- looking-glass-client
- ];
- local.scripts.imports = [
- "looking-glass"
- ];
-}
diff --git a/nix/x86.nix b/nix/x86.nix
deleted file mode 100644
index a8ebdd1..0000000
--- a/nix/x86.nix
+++ /dev/null
@@ -1,3 +0,0 @@
-{ ... }: {
- hardware.graphics.enable32Bit = true;
-}