diff --git a/home/.chezmoiscripts/.placeholder b/home/.chezmoiscripts/.placeholder deleted file mode 100644 index e69de29b..00000000 diff --git a/home/bin/executable_arch-install-cad b/home/bin/executable_arch-install-cad deleted file mode 100644 index 2404e228..00000000 --- a/home/bin/executable_arch-install-cad +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# https://github.com/starr-dusT/dotfiles - -# Install cadquery -sudo pacman -S python python-pip -pip install cadquery --break-system-packages -curl -LO https://github.com/CadQuery/CQ-editor/releases/download/nightly/CQ-editor-master-Linux-x86_64.sh -sh CQ-editor-master-Linux-x86_64.sh -rm CQ-editor-master-Linux-x86_64.sh - -# Install dependencies for Simplify3d -sudo pacman -S fontconfig -sudo pacman -S $(pacman -Ssq xcb) -sudo pacman -S $(pacman -Ssq xorg) -echo "The joys of using proprietary software... you need to install Simplify3d with the script from their website (https://cloud.simplify3d.com/account/downloads)" diff --git a/home/bin/executable_linux-app-launcher b/home/bin/executable_linux-app-launcher deleted file mode 100644 index 09710141..00000000 --- a/home/bin/executable_linux-app-launcher +++ /dev/null @@ -1,19 +0,0 @@ -#!/usr/bin/env bash -# https://gist.github.com/nicedreams/f8d0a6373949f6d9b9583e7e1634a1c3 - -bmenu() { -launchapp=$(IFS=':'; \ - for p in ${PATH}; \ - do find -L "${p}" -type f -executable -print 2> /dev/null; done \ - | fzf --header="Select application to launch from PATH:" \ - --multi=0 \ - --exact \ - --height="50%" \ - --preview-window="down:wrap:3") - if [[ "${launchapp}" ]]; then - setsid -f "${launchapp}" &> /dev/null & - sleep .1 - fi -} - -bmenu "$@" diff --git a/home/bin/executable_linux-clean-home b/home/bin/executable_linux-clean-home deleted file mode 100644 index c5d45772..00000000 --- a/home/bin/executable_linux-clean-home +++ /dev/null @@ -1,16 +0,0 @@ -#!/usr/bin/env bash - -tmp_dir="$HOME/tmp/$(date +'%Y%m%dT%H%M%S')" - -mkdir -p $tmp_dir -ls -p ~ | grep -v '^\.' \ - | grep -v 'bin' \ - | grep -v 'Desktop' \ - | grep -v 'devel' \ - | grep -v 'documents' \ - | grep -v 'media' \ - | grep -v 'mnt' \ - | grep -v 'Screenshots' \ - | grep -v 'sync' \ - | grep -v 'tmp' \ - | xargs -I {} mv ~/{} $tmp_dir diff --git a/home/bin/executable_linux-toggle-vpn b/home/bin/executable_linux-toggle-vpn deleted file mode 100644 index 5847a92e..00000000 --- a/home/bin/executable_linux-toggle-vpn +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env bash - -if [ -f ~/.wg0 ]; then - sudo systemctl stop wg-quick-wg0.service - rm ~/.wg0 -else - sudo systemctl restart wg-quick-wg0.service - touch ~/.wg0 -fi diff --git a/home/dot_aliases b/home/dot_aliases index b6bcb559..2c30f6f0 100644 --- a/home/dot_aliases +++ b/home/dot_aliases @@ -1,16 +1,8 @@ #!/usr/bin/env bash # https://github.com/starr-dusT/dotfiles -# nixos -alias nu="cd ~/.local/share/chezmoi/provision && \ - sudo nixos-rebuild switch --impure --flake .#$(hostname) && \ - cd -" -alias nb="cd ~/.local/share/chezmoi/provision && \ - sudo nix run .#nixosConfigurations.wsl.config.system.build.tarballBuilder && \ - cd -" - # sesh -function s() { +function b() { { exec ~/.nnn_last -} - -alias cp="cpg -g" -alias mv="mvg -g" - -# git -alias gs="git status" -alias gc="git commit" -alias ga="git add ." -alias gd="git diff" -alias gl="git log" - -# dev -alias dp="docker pull ghcr.io/starr-dust/dev-container:master" -alias dr='docker run --rm --name $(date +%Y%m%d%k%M%S) -p 8082:8082 -v $(pwd):/root/src -it ghcr.io/starr-dust/dev-container:master' - -# applications -alias google-chrome-stable="google-chrome-stable --simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'" - # rsync alias rsync.net="ssh fm2120@fm2120.rsync.net" diff --git a/home/dot_bash_profile b/home/dot_bash_profile index 442fa84a..a9c0c915 100644 --- a/home/dot_bash_profile +++ b/home/dot_bash_profile @@ -16,12 +16,6 @@ shopt -s histappend; # Autocorrect typos in path names when using `cd` shopt -s cdspell; -# Setup thefuck -eval "$(thefuck --alias)" - -# Setup direnv -eval "$(direnv hook bash)" - # Setup zoxide eval "$(zoxide init bash)" diff --git a/home/dot_config/private_user-dirs.dirs b/home/dot_config/private_user-dirs.dirs deleted file mode 100644 index 83a9440c..00000000 --- a/home/dot_config/private_user-dirs.dirs +++ /dev/null @@ -1,17 +0,0 @@ -# This file is written by xdg-user-dirs-update -# If you want to change or add directories, just edit the line you're -# interested in. All local changes will be retained on the next run. -# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped -# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an -# absolute path. No other format is supported. -# -XDG_TMP_DIR="$HOME/tmp" -XDG_SCREENSHOTS_DIR="$HOME/media/pictures/screenshots" -#XDG_DESKTOP_DIR="$HOME/Desktop" -#XDG_DOWNLOAD_DIR="$HOME/Downloads" -#XDG_TEMPLATES_DIR="$HOME/Templates" -#XDG_PUBLICSHARE_DIR="$HOME/Public" -#XDG_DOCUMENTS_DIR="$HOME/Documents" -#XDG_PICTURES_DIR="$HOME/Pictures" -#XDG_VIDEOS_DIR="$HOME/Videos" -#XDG_MUSIC_DIR="$HOME" diff --git a/home/dot_config/user-dirs.dirs b/home/dot_config/user-dirs.dirs new file mode 100644 index 00000000..ca4f6b4e --- /dev/null +++ b/home/dot_config/user-dirs.dirs @@ -0,0 +1,9 @@ +XDG_DESKTOP_DIR="$HOME/Desktop" +XDG_DOWNLOAD_DIR="$HOME/Downloads" +#XDG_TEMPLATES_DIR="$HOME/Templates" +#XDG_PUBLICSHARE_DIR="$HOME/Public" +XDG_DOCUMENTS_DIR="$HOME/Documents" +#XDG_PICTURES_DIR="$HOME/Pictures" +#XDG_VIDEOS_DIR="$HOME/Videos" +#XDG_MUSIC_DIR="$HOME/Music" +XDG_SCREENSHOTS_DIR="$HOME/Screenshots" diff --git a/home/dot_config/vimium-options.json b/home/dot_config/vimium-options.json index 28afb938..2251c903 100644 --- a/home/dot_config/vimium-options.json +++ b/home/dot_config/vimium-options.json @@ -1,7 +1,7 @@ { - "newTabUrl": "http://localhost:8080", + "newTabUrl": "https://link.tstarr.us/bookmarks?q=%23daily", "searchEngines": "# Daily\ngo: https://www.google.ie/search?q=%s Google\nyt: http://www.youtube.com/results?search_query=%s Youtube\n\n# NixOS\nnu: https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=%s Nixos Packages (Unstable)\nns: https://search.nixos.org/packages?channel=23.05&from=0&size=50&sort=relevance&type=packages&query=%s Nixos Packages (23.05)\nno: https://search.nixos.org/options?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=%s Nixos Options\n\n# Github\ngr: https://github.com/search?q=%s&type=repositories Github Repos\ngc: https://github.com/search?q=%s&type=code Github Code", - "settingsVersion": "2.0.5", + "settingsVersion": "2.1.2", "userDefinedLinkHintCss": "/* -------- HINTS -------- */\n#vimiumHintMarkerContainer div.internalVimiumHintMarker, #vimiumHintMarkerContainer div.vimiumHintMarker {\n background: #282828;\n border: 1px solid #DCDCCC;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n padding: 3px 4px;\n}\n\n#vimiumHintMarkerContainer div span {\n color: #f0dfaf;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n text-shadow: none;\n}\n\n#vimiumHintMarkerContainer div > .matchingCharacter {\n opacity: 0.3;\n}\n\n#vimiumHintMarkerContainer div > .matchingCharacter ~ span {\n color: #83a598;\n}\n\n/* -------- VOMNIBAR -------- */\n#vomnibar {\n animation: show 200ms cubic-bezier(0, 0, 0.2, 1) forwards;\n background: #282828;\n border: none;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n}\n\n/* Animate Slide in */\n@keyframes show {\n 0% {\n opacity: 0;\n transform: translateY(50px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n#vomnibar .vomnibarSearchArea,\n#vomnibar input {\n background: transparent;\n border: none;\n box-shadow: none;\n color: #ebdbb2;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n}\n\n#vomnibar .vomnibarSearchArea {\n padding: 2px 30px;\n}\n\n#vomnibar input {\n padding: 2px}\n\n#vomnibar ul {\n background: #282828;\n border-top: 1px solid #3c3836;\n margin: 0;\n padding: 2px;\n}\n\n#vomnibar li {\n border-bottom: 1px solid #3c3836;\n padding: 2px;\n}\n\n#vomnibar li .vomnibarTopHalf,\n#vomnibar li .vomnibarBottomHalf {\n padding: 2px 0;\n}\n\n#vomnibar li .vomnibarSource {\n color: #83a598;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n}\n\n#vomnibar li em,\n#vomnibar li .vomnibarTitle {\n color: #83a598;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n}\n\n#vomnibar li .vomnibarUrl {\n color: #ebdbb2;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n}\n\n#vomnibar li .vomnibarMatch {\n color: #b8bb26;\n font-weight: normal;\n}\n\n#vomnibar li .vomnibarTitle .vomnibarMatch {\n color: #83a598;\n}\n\n#vomnibar li.vomnibarSelected {\n background-color: #3c3836;\n}\n\n/* -------- HUD -------- */\ndiv.vimiumHUD {\n background: #282828;\n border: 1px solid #3c3836;\n box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);\n}\n\ndiv.vimiumHUD span#hud-find-input,\ndiv.vimiumHUD .vimiumHUDSearchAreaInner {\n color: #ebdbb2;\n font-family: tewi, Source Code Pro, sans;\n font-size: 13;\n font-weight: normal;\n}\n\ndiv.vimiumHUD .hud-find {\n background-color: transparent;\n border: none;\n}\ndiv.vimiumHUD {\n width: auto;\n left: 207px;\n}\ndiv.vimiumHUD .vimiumHUDSearchArea {\n background-color: transparent;\n}", "exclusionRules": [ { diff --git a/home/bin/executable_linux-add-nonsteam-games b/home/dot_local/bin/executable_linux-add-nonsteam-games similarity index 100% rename from home/bin/executable_linux-add-nonsteam-games rename to home/dot_local/bin/executable_linux-add-nonsteam-games diff --git a/home/bin/executable_linux-mount-engi b/home/dot_local/bin/executable_linux-mount-engi similarity index 87% rename from home/bin/executable_linux-mount-engi rename to home/dot_local/bin/executable_linux-mount-engi index fec04a8a..e2645725 100644 --- a/home/bin/executable_linux-mount-engi +++ b/home/dot_local/bin/executable_linux-mount-engi @@ -1,12 +1,12 @@ #!/usr/bin/env bash -engi_path="$HOME/mnt/engi" +engi_path="/mnt/engi" if mountpoint -q "$engi_path"; then echo "engi already mounted" exit 0 else - sudo mount -t cifs -o rw,uid=$(id -u $(whoami)),gid=$(id -g $(whoami)),vers=3.0,credentials=/home/tstarr/.smb //torus/private ~/mnt/engi 2>/dev/null + sudo mount -t cifs -o rw,uid=$(id -u $(whoami)),gid=$(id -g $(whoami)),vers=3.0,credentials=/home/tstarr/.smb //torus/private "$engi_path" 2>/dev/null fi # Check drive mounted correctly diff --git a/home/dot_path b/home/dot_path index 1ed81769..20170d5c 100644 --- a/home/dot_path +++ b/home/dot_path @@ -1,9 +1,6 @@ #!/usr/bin/env bash # https://github.com/starr-dusT/dotfiles -# Add `~/bin` to the `$PATH` -export PATH="$HOME/bin:$PATH"; - if ! [[ "$PATH" =~ "$HOME/.local/bin:$HOME/bin:" ]]; then PATH="$HOME/.local/bin:$HOME/bin:$PATH"; fi diff --git a/justfile b/justfile new file mode 100644 index 00000000..4e8410aa --- /dev/null +++ b/justfile @@ -0,0 +1,9 @@ +[working-directory: 'provision'] +update: + cd ~/.local/share/chezmoi/provision + sudo nixos-rebuild switch --impure --flake .#$(hostname) + +[working-directory: 'provision'] +build-wsl: + cd ~/.local/share/chezmoi/provision + sudo nix run .#nixosConfigurations.wsl.config.system.build.tarballBuilder diff --git a/provision/hosts.json b/provision/hosts.json index e26f8eb5..95ca0648 100644 --- a/provision/hosts.json +++ b/provision/hosts.json @@ -21,7 +21,7 @@ }, "wsl": { "role": "wsl", - "user": "user" + "user": "dev" }, "htpc-bako": { "role": "htpc", diff --git a/provision/hosts/bulwark/configuration.nix b/provision/hosts/bulwark/configuration.nix index f24e1fa0..2a758d3b 100644 --- a/provision/hosts/bulwark/configuration.nix +++ b/provision/hosts/bulwark/configuration.nix @@ -14,6 +14,7 @@ # Modules modules = { + extra.enable = true; desktop = { enable = true; gnome.enable = true; @@ -23,11 +24,7 @@ }; gaming = { emulation.enable = true; - steam.enable = true; - }; - programs = { - chezmoi.apply = true; - kitty.enable = true; + pc.enable = true; }; services = { samba-client.enable = true; diff --git a/provision/hosts/default/default.nix b/provision/hosts/default/default.nix index 91659a5d..2c65560a 100644 --- a/provision/hosts/default/default.nix +++ b/provision/hosts/default/default.nix @@ -30,6 +30,13 @@ inputs.agenix.packages.x86_64-linux.default ]; + # Define user account. + users.users.${user} = { + isNormalUser = true; + extraGroups = [ "dialout" "wheel" "docker" "libvirtd" ]; + shell = pkgs.bash; + }; + # Did you read the comment? system.stateVersion = "23.11"; @@ -38,12 +45,6 @@ home.homeDirectory = "/home/${user}"; programs.home-manager.enable = true; - programs.direnv = { - enable = true; - enableBashIntegration = true; - nix-direnv.enable = true; - }; - # Did you read the comment? home.stateVersion = "23.11"; }; diff --git a/provision/hosts/default/physical/configuration.nix b/provision/hosts/default/physical/configuration.nix index 7bfeae00..3434637e 100644 --- a/provision/hosts/default/physical/configuration.nix +++ b/provision/hosts/default/physical/configuration.nix @@ -6,13 +6,6 @@ boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; - # Define user account. - users.users.${user} = { - isNormalUser = true; - extraGroups = [ "dialout" "wheel" "docker" "libvirtd" ]; - shell = pkgs.bash; - }; - home-manager.users.${user} = { programs.vscode = { enable = true; diff --git a/provision/hosts/htpc/configuration.nix b/provision/hosts/htpc/configuration.nix index e0ff1614..4f5357e1 100644 --- a/provision/hosts/htpc/configuration.nix +++ b/provision/hosts/htpc/configuration.nix @@ -10,14 +10,11 @@ # Modules modules = { + base-plus.enable = true; desktop = { enable = true; gnome.enable = true; }; - programs = { - chezmoi.apply = true; - kitty.enable = true; - }; services = { samba-client.enable = true; ssh.enable = true; diff --git a/provision/hosts/kestrel/configuration.nix b/provision/hosts/kestrel/configuration.nix index 6614d566..5a323653 100644 --- a/provision/hosts/kestrel/configuration.nix +++ b/provision/hosts/kestrel/configuration.nix @@ -16,6 +16,7 @@ # Nvidia options services.xserver.videoDrivers = ["nvidia"]; hardware.nvidia = { + package = config.boot.kernelPackages.nvidiaPackages.latest; modesetting.enable = true; open = true; powerManagement.enable = true; @@ -31,6 +32,7 @@ # Modules modules = { + base-plus.enable = true; desktop = { enable = true; gnome.enable = true; @@ -38,17 +40,14 @@ devel = { engineering.enable = true; notes.enable = true; + programming.enable = true; }; gaming = { emulation.enable = true; minecraft.enable = true; - steam.enable = true; + pc.enable = true; }; programs = { - beancount.enable = true; - borg.enable = true; - chezmoi.apply = true; - kitty.enable = true; virt-manager.enable = true; }; services = { diff --git a/provision/hosts/osprey/configuration.nix b/provision/hosts/osprey/configuration.nix index 65ab7512..d8e94ab5 100644 --- a/provision/hosts/osprey/configuration.nix +++ b/provision/hosts/osprey/configuration.nix @@ -28,14 +28,17 @@ # Modules modules = { + base-plus.enable = true; desktop = { enable = true; gnome.enable = true; }; + devel = { + engineering.enable = true; + programming.enable = true; + }; programs = { appgate-sdp.enable = true; - chezmoi.apply = true; - kitty.enable = true; virt-manager.enable = true; }; services = { diff --git a/provision/hosts/shivan/configuration.nix b/provision/hosts/shivan/configuration.nix index 0323cc89..437b524b 100644 --- a/provision/hosts/shivan/configuration.nix +++ b/provision/hosts/shivan/configuration.nix @@ -14,6 +14,7 @@ # Modules modules = { + base-plus.enable = true; desktop = { enable = true; gnome.enable = true; @@ -22,10 +23,9 @@ devel = { engineering.enable = true; notes.enable = true; + programming.enable = true; }; programs = { - kitty.enable = true; - chezmoi.apply = true; virt-manager.enable = false; }; services = { diff --git a/provision/hosts/torus/configuration.nix b/provision/hosts/torus/configuration.nix index 9ea2893e..2237d13d 100644 --- a/provision/hosts/torus/configuration.nix +++ b/provision/hosts/torus/configuration.nix @@ -95,10 +95,7 @@ # Modules modules = { - programs = { - chezmoi.apply = true; - borg.enable = true; - }; + base-plus.enable = true; services = { ssh.enable = true; syncthing = { diff --git a/provision/hosts/wsl/certs/DoDInteroperabilityRootCA2.crt b/provision/hosts/wsl/certs/DoDInteroperabilityRootCA2.crt new file mode 100644 index 00000000..7b7f5d67 --- /dev/null +++ b/provision/hosts/wsl/certs/DoDInteroperabilityRootCA2.crt @@ -0,0 +1,24 @@ +-----BEGIN CERTIFICATE----- +MIID8zCCAtugAwIBAgIBATANBgkqhkiG9w0BAQsFADBsMQswCQYDVQQGEwJVUzEY +MBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsT +A1BLSTEnMCUGA1UEAxMeRG9EIEludGVyb3BlcmFiaWxpdHkgUm9vdCBDQSAyMB4X +DTEwMTEyOTE0MjUxMFoXDTMwMTEyNDE0MjUxMFowbDELMAkGA1UEBhMCVVMxGDAW +BgNVBAoTD1UuUy4gR292ZXJubWVudDEMMAoGA1UECxMDRG9EMQwwCgYDVQQLEwNQ +S0kxJzAlBgNVBAMTHkRvRCBJbnRlcm9wZXJhYmlsaXR5IFJvb3QgQ0EgMjCCASIw +DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPfG0IOT5guDKegoO7ZK4KyMnrRV +w98YfuKzc3K0aKFm2Jhj6r6PXsAOEa1/0vOlJS/ufqPYkI1LIWDT3z+FG/xDF72s +zdH+4C3+vUYfPphWiN8HTJIEtAXVFeCapMNR0wp42Dz8XBzlzSNJl1A+sbS2olNS +NAkxA4wT5+lNw/sD3AKjWtVta68WK9RO/nugQTjtS68mNbWciWkO6SXNsU0zr45t +ZZEo5dz9cuj4pjEzkv/wAqNQToHB+DTrlSkJpdqrYGH96rlPSjGKl2b4wwDS0oaj +QkPTu3knLm+1smXlS41JrxCx0lt1dxB04xbyJGd4DLb2Ng9C7/+jwLvGXrUCAwEA +AaOBnzCBnDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4E +FgQU//iuE4uSK3mSQaN2XCyBnprFnHgwWgYIKwYBBQUHAQsETjBMMEoGCCsGAQUF +BzAFhj5odHRwOi8vY3JsLmRpc2EubWlsL2lzc3VlZGJ5L0RPRElOVEVST1BFUkFC +SUxJVFlST09UQ0EyX0lCLnA3YzANBgkqhkiG9w0BAQsFAAOCAQEAVSKLL/dezOY4 +MizE80RLGcjgtMW8TUsJP6sPP7LgtPig3thXED8/LNK/NDeAU03jWRzJgIW+o40U +pU9QWIqstkzCVuzh8512O73hUCCz7C6Tt+dPGfb4UsKHSFPiimI0R1TWET1RP5ej +pjWC8s4hC73OJbsU9Ycc7fGSu/V+VEdIbcOwwq3CWA14DA8fYKWlmQTwCfMv4kuY +uRgA7HqUS/o2CumHH0e5OSmRY3WiJOEEMpgzSV3nP5jkFvO4uVRqIrwdLTdLE5GW +FG6FKBEl19XSCmtf+1yQFoZK1JFAlQjHdFAmRLET4kU5q2XrRziBxvOL/4ZKhMfk +eCdEiBMPng== +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/certs/DoDRootCA3.crt b/provision/hosts/wsl/certs/DoDRootCA3.crt new file mode 100644 index 00000000..9d438a3f --- /dev/null +++ b/provision/hosts/wsl/certs/DoDRootCA3.crt @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDczCCAlugAwIBAgIBATANBgkqhkiG9w0BAQsFADBbMQswCQYDVQQGEwJVUzEY +MBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsT +A1BLSTEWMBQGA1UEAxMNRG9EIFJvb3QgQ0EgMzAeFw0xMjAzMjAxODQ2NDFaFw0y +OTEyMzAxODQ2NDFaMFsxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9VLlMuIEdvdmVy +bm1lbnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMDUEtJMRYwFAYDVQQDEw1Eb0Qg +Um9vdCBDQSAzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqewUcoro +S3Cj2hADhKb7pzYNKjpSFr8wFVKGBUcgz6qmzXXEZG7v8WAjywpmQK60yGgqAFFo +STfpWTJNlbxDJ+lAjToQzhS8Qxih+d7M54V2c14YGiNbvT8f8u2NGcwD0UCkj6cg +AkwnWnk29qM3IY4AWgYWytNVlm8xKbtyDsviSFHy1DekNdZv7hezsQarCxmG6CNt +MRsoeGXF3mJSvMF96+6gXVQE+7LLK7IjVJGCTPC/unRAOwwERYBnXMXrolfDGn8K +Lb1/udzBmbDIB+QMhjaUOiUv8n3mlzwblLSXWQbJOuQL2erp/DtzNG/955jk86HC +kF8c9T8u1xnTfwIDAQABo0IwQDAdBgNVHQ4EFgQUbIqUonexgHIdgXoWqvLczmbu +RcAwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL +BQADggEBAJ9xpMC2ltKAQ6BI6R92BPnFPK1mGFhjm8O26GiKhVpCZhK00uaLiH+H +9Jj1qMYJyR/wLB/sgrj0pUc4wTMr30x+mr4LC7HLD3xQKBDPio2i6bqshtfUsZNf +Io+WBbRODHWRfdPy55TClBR2T48MqxCHWDKFB3WGEgte6lO0CshMhJIf6+hBhjy6 +9E5BStFsWEdBw4Za8u7p8pgnguouNtb4Bl6C8aBSk0QJutKpGVpYo6hdIG1PZPgw +hxuQE0iBzcqQxw3B1Jg/jvIOV2gzEo6ZCbHw5PYQ9DbySb3qozjIVkEjg5rfoRs1 +fOs/QbP1b0s6Xq5vk3aY0vGZnUXEjnI= +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/certs/DoDRootCA4.crt b/provision/hosts/wsl/certs/DoDRootCA4.crt new file mode 100644 index 00000000..f21626f1 --- /dev/null +++ b/provision/hosts/wsl/certs/DoDRootCA4.crt @@ -0,0 +1,13 @@ +-----BEGIN CERTIFICATE----- +MIIB6zCCAY+gAwIBAgIBATAMBggqhkjOPQQDAgUAMFsxCzAJBgNVBAYTAlVTMRgw +FgYDVQQKEw9VLlMuIEdvdmVybm1lbnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMD +UEtJMRYwFAYDVQQDEw1Eb0QgUm9vdCBDQSA0MB4XDTEyMDczMDE5NDgyM1oXDTMy +MDcyNTE5NDgyM1owWzELMAkGA1UEBhMCVVMxGDAWBgNVBAoTD1UuUy4gR292ZXJu +bWVudDEMMAoGA1UECxMDRG9EMQwwCgYDVQQLEwNQS0kxFjAUBgNVBAMTDURvRCBS +b290IENBIDQwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAAR2yNhDyw8H0iwPKtA4 +8YLNQlXn3B1agLcIkUtU1k+yZoU0lo0uPvTgSpF8zM2GnxHgUqFmgsbLkCPsX1/1 +8DxFo0IwQDAdBgNVHQ4EFgQUvcG5a030HewwkL9ic8CEM/JxJIUwDgYDVR0PAQH/ +BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDAYIKoZIzj0EAwIFAANIADBFAiEA6GGK +99yqCaUH0kSeggNaRFNHhCOZz1zT3kpe1rs1NUYCIHYPuMR8FjV/1BLtiD2AEWtk +B0xFZd9Trl8B7fFD0vW3 +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/certs/DoDRootCA5.crt b/provision/hosts/wsl/certs/DoDRootCA5.crt new file mode 100644 index 00000000..8616f83a --- /dev/null +++ b/provision/hosts/wsl/certs/DoDRootCA5.crt @@ -0,0 +1,14 @@ +-----BEGIN CERTIFICATE----- +MIICJDCCAaqgAwIBAgIBDzAKBggqhkjOPQQDAzBbMQswCQYDVQQGEwJVUzEYMBYG +A1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsTA1BL +STEWMBQGA1UEAxMNRG9EIFJvb3QgQ0EgNTAeFw0xNjA2MTQxNzE3MjdaFw00MTA2 +MTQxNzE3MjdaMFsxCzAJBgNVBAYTAlVTMRgwFgYDVQQKEw9VLlMuIEdvdmVybm1l +bnQxDDAKBgNVBAsTA0RvRDEMMAoGA1UECxMDUEtJMRYwFAYDVQQDEw1Eb0QgUm9v +dCBDQSA1MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAENmLeC07Ax9cpRTp/HJnmKiF2 +sQDdjEf/wLG0+s46TlL7p+02LRweHJCNl6orpuLTc3N8XBzQZ/QKKdOQhOtR5fFe +HMDShoTFbdEkSQ7sF4nkaMjeGlwaBtA4GTMpARqBo0IwQDAdBgNVHQ4EFgQUhsAV +Qvtxdtw+LRFbIRBENcrB3BQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB +Af8wCgYIKoZIzj0EAwMDaAAwZQIwQQbk3t5iNJ3fuKoW2W2iOB85IlfJcIQfkw9X +fgUvpUszzRXqV9XSKx+bjXzOarbMAjEAt4HS4TuTzxFk3AsvF9Jt1dgF5FByYmXc +pDzKYaUGmsn77cQwyXuJ4KW+Y1XmnBHj +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/certs/DoDRootCA6.crt b/provision/hosts/wsl/certs/DoDRootCA6.crt new file mode 100644 index 00000000..0754ba57 --- /dev/null +++ b/provision/hosts/wsl/certs/DoDRootCA6.crt @@ -0,0 +1,32 @@ +-----BEGIN CERTIFICATE----- +MIIFdTCCA12gAwIBAgIBATANBgkqhkiG9w0BAQwFADBbMQswCQYDVQQGEwJVUzEY +MBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsT +A1BLSTEWMBQGA1UEAxMNRG9EIFJvb3QgQ0EgNjAgFw0yMzAxMjQxNjM2MTdaGA8y +MDUzMDEyNDE2MzYxN1owWzELMAkGA1UEBhMCVVMxGDAWBgNVBAoTD1UuUy4gR292 +ZXJubWVudDEMMAoGA1UECxMDRG9EMQwwCgYDVQQLEwNQS0kxFjAUBgNVBAMTDURv +RCBSb290IENBIDYwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC8qBu+ +0w51OkG8fw3ReHS/itcp9AEFC4ETwumtfwlS+tmxBU3ulJPATIHC/TCOg6Tksvij +vwt8RJdmgOUQj1u/+PEo6C7tgBgM5t0RR3kYCFI2j1tRObJ4XVFEaLlKJF9kytCe +g78cZ/vlG55tUCTlhAVa09FB+p9YlX5TNjvvE577gB+veOIOQdF2uijeDqcN9ui8 +axzuBJwLI5oju1CysBrQZ/yeObMN9/IIsvFT2ANdEVZ6QdChTtwmhdtAxFezlaio +JB4984TE5aN4K76Qea9vzmjQ1Pmn23tGczVNwpyRY7hOz5v7SanwZQTJ7xm6RUkT +LuHjFdVwf0x085t4DjhoXZ4WYkZqT0YGNHBngl3r0nMUSBxpbQ8lmOfh+D5irUrB +xUYPYBesrtC/L0sxQBzOMqUYbMupNz3lDilZPcueo9fNdyB4Fau932rW13/j9C8K +tzbAgYAPzmuuwRMxdS3JXB8r3Ztc/MIlsXxbXbqJMdUgLZ0zGVoS0Vp8Wvxt7eKI +r94GfQHavb2PX+3tG2BnOoJ4FgNrEbS2817nh61Lw80FHI7hbMmfYIaVXfkdquHG +OOj6ruCVXIjEInWv7Si6YfvzV+vhPub8fm4TnypKKqp+7USKHGx/hyIh/QDQvhrm +McYDAGN4JpIyxSWg+Ajqb7b+HQ8d+H7/NmnpsQIDAQABo0IwQDAdBgNVHQ4EFgQU +E088u9tdRSmllHC22qyeTOIvwQswDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF +MAMBAf8wDQYJKoZIhvcNAQEMBQADggIBALac2eECg9Y3IQkM+2p7o6sh8DgXg4gl +2QM9pjooxYP9DrGfmakijvXIzfVNyH3kcziRT78q9Q+gI5Y6LLgsOSdYEPM10P6R +dQwapC776B4iVAnPwl/YQel6/mNGl2wNUoHC5XY/fpAkfMaAmHbTZM7qqdHIC7ht +vyTnAwaXxZEFrdWKx+SNFfDY3wJTsuP5+u+G5Gz/dG4Kgi/tXhS/9rhdpUMhFs7U +DIM5ccGRbHNwspX43JytVb61Tm0TmKggrdQ7dRSW/IFtjucjRbD5+cD8NXk1zhD+ +2wVhZnKe/WMTv/YHRno1fwyehb+3PFyiuLEmqXEfxVD5B4fXqkhSl3BY10wSpvCp +vYt8G7CA0l0S2eLdrYUbbaWBwC3XtboLFDxdvvEJ3e9Ary5k4+hHhdtiYPaNv7HV +Vg7J8R8Pm9MCTk7A54K/dLXZwt6qQLI+NRQurFYMZD6/o40+puaugO/c4i93AtFg +T5OZGqPeI+TQ5f8wrLuUnoxo1qIyH/0xT2m4C8fqM07wi6UZcoeF61cIHSLEzg58 +dsRNzH8ZGLP6i/r5v2Fvys8RSn5XKcO6OmYhUtYRoH2YWNn5hHd1ZzkXNA1XsHkb +YbtC5WKGy20xlU9SgvPfz+cNrdFtyWN7lAyMywMEA7KqmtQt8pJePcjbxzwdqoft +NKrk3ucpMoHF +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/nipr.crt b/provision/hosts/wsl/certs/DoDWCFInterCA1.crt old mode 100755 new mode 100644 similarity index 99% rename from provision/hosts/wsl/nipr.crt rename to provision/hosts/wsl/certs/DoDWCFInterCA1.crt index 78bb06f4..7144ce39 --- a/provision/hosts/wsl/nipr.crt +++ b/provision/hosts/wsl/certs/DoDWCFInterCA1.crt @@ -134,4 +134,4 @@ E7tazITXHYTTS4wR7RGcVw3cpkGIo9MAGcddpixLn+Z/tl19KJ7MeWuUTQSq5d2q ZUWqUQxUgTp2VsUOOfYAULJ2d/wqT8jF3r+F4qJsfcOg2wCIb/z2U4j3VoW5kziC ZZJksTK6GMMgm06pStX8i4olRvZjAm1vpI+cVtUgW3IAnV3QUmtAmEa+ZdzhvbOW 2r4J+eT3gE2g5puGx0zZkEsJaTtjcXNOEO3DQ9umJ5Ry ------END CERTIFICATE----- \ No newline at end of file +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/certs/USDoDCCEBInteroperabilityRootCA2.crt b/provision/hosts/wsl/certs/USDoDCCEBInteroperabilityRootCA2.crt new file mode 100644 index 00000000..957d7bd7 --- /dev/null +++ b/provision/hosts/wsl/certs/USDoDCCEBInteroperabilityRootCA2.crt @@ -0,0 +1,24 @@ +-----BEGIN CERTIFICATE----- +MIIECTCCAvGgAwIBAgIBATANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJVUzEY +MBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAKBgNVBAsT +A1BLSTEvMC0GA1UEAxMmVVMgRG9EIENDRUIgSW50ZXJvcGVyYWJpbGl0eSBSb290 +IENBIDIwHhcNMTYwODIzMTM1NzEwWhcNMzAxMjMwMTM1NzEwWjB0MQswCQYDVQQG +EwJVUzEYMBYGA1UEChMPVS5TLiBHb3Zlcm5tZW50MQwwCgYDVQQLEwNEb0QxDDAK +BgNVBAsTA1BLSTEvMC0GA1UEAxMmVVMgRG9EIENDRUIgSW50ZXJvcGVyYWJpbGl0 +eSBSb290IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDEBAkc +ethMFW/YO2VBtoh6N/PUwHgSXg79AcQJhhPTmdMD4rteA4xVXc76CXKU4vEJmrvB +7gxBKNkLj92NDYuoOBeiZiL4DzeyqBFn34ILFUUaYFh+r+tav/UBB2lqBza2QO4/ +GSyX+ejQq1e/F420qlpEiOiS3p+1wdoS5DqQzXEw7oyxEViSEMd3j94YBpg6oPwW +z0MWe7mrqUBlhmcONra6kpDCIEGpm4i6TBvnopxCXTGnYU4W1vtyD/t1qkHc1rfr +cQxD7a92voLGTs2cBTSOr3+M+Xc21rR/vrwMYQbFNC9ZFtKlzAmjQhYjT+OiaQAA +7QlyuzQ1c92z1NGbAgMBAAGjgaUwgaIwHQYDVR0OBBYEFBYrkdriFwyWq1x93n1I +8l2oAKznMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MGAGCCsGAQUF +BwELBFQwUjBQBggrBgEFBQcwBYZEaHR0cDovL2NybC5kaXNhLm1pbC9pc3N1ZWRi +eS9VU0RPRENDRUJJTlRFUk9QRVJBQklMSVRZUk9PVENBMl9JQi5wN2MwDQYJKoZI +hvcNAQELBQADggEBAD6mu+82pWm1Td6gtGTyV2Na1Uh1lPjc1z1C+/qUFnZ7DSVd +AG0j+4cAmZpNlLJGXEjn8Xp34Wtv+VxjezR99XCKZNTA56iG3MLzr8/TBeGvnuYL +KtjKtHzLd+MQYkkYE/869VK+JTqtxJIjpi/pyMVLAE/GBTHTCxAzDpnQdOOb2Pth +2FPPQc3knFrsF1dug+vETecP7nhsstW3e8hsyUEmwOJULYqEpwRRs6UzeO7aRC1e ++m41f5oPInQ4quIVeZxQh6WU6EB7Jh21yfehn3CfKwyIxsu4fu/HlyjhADcYBh9+ +pON87weV0sB/QsvFHoOSqQYrWAp4F7li0Y7hjVg= +-----END CERTIFICATE----- diff --git a/provision/hosts/wsl/configuration.nix b/provision/hosts/wsl/configuration.nix index d07a885c..18d21a9f 100644 --- a/provision/hosts/wsl/configuration.nix +++ b/provision/hosts/wsl/configuration.nix @@ -40,24 +40,32 @@ in # Don't allow emergency mode, because we don't have a console. systemd.enableEmergencyMode = false; + # Enable docker + virtualisation.docker.enable = true; + environment.systemPackages = with pkgs; [ firefox wget + openssl ]; # Add DoD CA certs to trusted source security.pki.certificateFiles = [ - ./nipr.crt + ./certs/DoDWCFInterCA1.crt + ./certs/DoDRootCA3.crt + ./certs/DoDRootCA4.crt + ./certs/DoDRootCA5.crt + ./certs/DoDRootCA6.crt + ./certs/DoDInteroperabilityRootCA2.crt + ./certs/USDoDCCEBInteroperabilityRootCA2.crt ]; # Modules modules = { + devel.programming.enable = true; programs = { - chezmoi.apply = true; git.keys = false; }; - system = { - terminal.enable = true; - }; + services.ssh.enable = true; }; } diff --git a/provision/hosts/wsl/default.nix b/provision/hosts/wsl/default.nix index b11c2c7a..805ea5f7 100644 --- a/provision/hosts/wsl/default.nix +++ b/provision/hosts/wsl/default.nix @@ -4,7 +4,7 @@ let hostname = specialArgs.hostname; in { inherit system; - specialArgs = { inherit user inputs nixos-wsl home-manager; }; + specialArgs = { inherit user hostname inputs nixos-wsl home-manager; }; modules = [ ../default # shared by all configs ./configuration.nix # wsl specific diff --git a/provision/modules/base/default.nix b/provision/modules/base/default.nix new file mode 100644 index 00000000..aa064c8e --- /dev/null +++ b/provision/modules/base/default.nix @@ -0,0 +1,10 @@ +{ ... }: +{ + imports = [ + ./terminal.nix + ./plus + ../programs/chezmoi.nix + ../programs/git.nix + ../programs/nvim.nix + ]; +} diff --git a/provision/modules/base/plus/default.nix b/provision/modules/base/plus/default.nix new file mode 100644 index 00000000..2afac545 --- /dev/null +++ b/provision/modules/base/plus/default.nix @@ -0,0 +1,9 @@ +{ lib, ... }: +{ + imports = [ + ../../programs/beancount.nix + ../../programs/borg.nix + ../../programs/yt-dlp.nix + ]; + options.modules.base-plus.enable = lib.mkEnableOption "base-plus"; +} diff --git a/provision/modules/base/terminal.nix b/provision/modules/base/terminal.nix new file mode 100644 index 00000000..b01e0f46 --- /dev/null +++ b/provision/modules/base/terminal.nix @@ -0,0 +1,23 @@ +{ config, lib, pkgs, user, ... }: +{ + environment.systemPackages = with pkgs; [ + bash # GNU Bourne-Again SHell, a command language interpreter for Unix-like operating systems + bash-completion # Provides programmable completion for the bash shell + tmux # Terminal multiplexer, allowing multiple terminal sessions within a single window + killall # Command-line utility to terminate processes by name + pciutils # Utilities for inspecting and manipulating devices connected to the PCI bus + pinentry-curses # Simple curses-based passphrase entry dialog for GnuPG + unzip # Command-line utility for extracting files from ZIP archives + vim # Text editor that is highly configurable and widely used, especially in the Unix environment + + sesh # Smart session manager for the terminal + zoxide # Fast cd command that learns your habits + ripgrep # Line-oriented search tool that recursively searches directories for a regex pattern + fzf # Command-line fuzzy finder for Unix-like operating systems + nix-search-cli # Command-line utility for searching the Nix package repository + trash-cli # Command-line interface to the freedesktop.org Trash + + btop # Terminal-based resource monitor, providing an interactive view of system resources + nnn # Terminal file manager with a focus on performance and ease of use + ]; +} diff --git a/provision/modules/default.nix b/provision/modules/default.nix index 0490f1a8..ffdbcc6e 100644 --- a/provision/modules/default.nix +++ b/provision/modules/default.nix @@ -1,6 +1,7 @@ { ... }: { imports = [ + ./base ./desktop ./devel ./gaming diff --git a/provision/modules/desktop/default.nix b/provision/modules/desktop/default.nix index 6c3b8748..f94b5460 100644 --- a/provision/modules/desktop/default.nix +++ b/provision/modules/desktop/default.nix @@ -7,6 +7,9 @@ in { ./keyd.nix ./gnome.nix ./peripherals.nix + ../programs/chrome.nix + ../programs/firefox.nix + ../programs/kitty.nix ]; options.modules.desktop.enable = lib.mkEnableOption "desktop"; diff --git a/provision/modules/desktop/gnome.nix b/provision/modules/desktop/gnome.nix index 8b54b1fb..56d86da3 100644 --- a/provision/modules/desktop/gnome.nix +++ b/provision/modules/desktop/gnome.nix @@ -63,6 +63,7 @@ in { # Enable sound and handle conflict (https://github.com/Jovian-Experiments/Jovian-NixOS/issues/99) services.pulseaudio.enable = lib.mkForce false; + services.gvfs.enable = true; xdg.mime = { enable = true; diff --git a/provision/modules/devel/default.nix b/provision/modules/devel/default.nix index 7e5d079c..e664320e 100644 --- a/provision/modules/devel/default.nix +++ b/provision/modules/devel/default.nix @@ -3,5 +3,6 @@ imports = [ ./engineering.nix ./notes.nix + ./programming.nix ]; } diff --git a/provision/modules/devel/programming.nix b/provision/modules/devel/programming.nix new file mode 100644 index 00000000..3ca48281 --- /dev/null +++ b/provision/modules/devel/programming.nix @@ -0,0 +1,15 @@ +{ config, lib, pkgs, user, ... }: + +let cfg = config.modules.devel.programming; +in { + options.modules.devel.programming.enable = lib.mkEnableOption "programming"; + config = lib.mkIf cfg.enable { + environment.systemPackages = with pkgs; [ + nodejs # JavaScript runtime built on Chrome's V8 JavaScript engine + cargo # Package manager and build system for Rust + docker-compose # Docker CLI plugin to define and run multi-container applications with Docker + distrobox # Use any linux distribution inside your terminal + just # Hand way to save and run project-specific commands + ]; + }; +} diff --git a/provision/modules/gaming/default.nix b/provision/modules/gaming/default.nix index 59f24668..15a036d9 100644 --- a/provision/modules/gaming/default.nix +++ b/provision/modules/gaming/default.nix @@ -3,6 +3,6 @@ imports = [ ./emulation.nix ./minecraft.nix - ./steam.nix + ./pc.nix ]; } diff --git a/provision/modules/gaming/emulation.nix b/provision/modules/gaming/emulation.nix index fecef161..e6b2c5fa 100644 --- a/provision/modules/gaming/emulation.nix +++ b/provision/modules/gaming/emulation.nix @@ -12,12 +12,13 @@ in { options.modules.gaming.emulation.enable = lib.mkEnableOption "emulation"; config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ - ryujinx # Fuck Nintendo + ryubing dolphin-emu # GameCube and Wii emulator ppsspp # PSP emulator mgba # Game Boy Advance emulator rpcs3 # PS3 emulator/debugger retroarchWithCores # frontend for emulators and specific cores + openmw # Open-source open-world RPG game engine that supports playing Morrowind ]; }; } diff --git a/provision/modules/gaming/steam.nix b/provision/modules/gaming/pc.nix similarity index 88% rename from provision/modules/gaming/steam.nix rename to provision/modules/gaming/pc.nix index eae1ff26..a390e8be 100644 --- a/provision/modules/gaming/steam.nix +++ b/provision/modules/gaming/pc.nix @@ -1,8 +1,8 @@ { config, lib, pkgs, user, ... }: -let cfg = config.modules.gaming.steam; +let cfg = config.modules.gaming.pc; in { - options.modules.gaming.steam.enable = lib.mkEnableOption "steam"; + options.modules.gaming.pc.enable = lib.mkEnableOption "pc"; config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ gamescope # Utility for running games using Valve's Steam Play compatibility layer with improved performance and compatibility diff --git a/provision/modules/programs/base-terminal.nix b/provision/modules/programs/base-terminal.nix deleted file mode 100644 index 0719e2bb..00000000 --- a/provision/modules/programs/base-terminal.nix +++ /dev/null @@ -1,40 +0,0 @@ -{ config, lib, pkgs, user, ... }: - -let cfg = config.modules.programs.base-terminal; -in { - options.modules.programs.base-terminal = with lib; { - enable = lib.mkOption { - type = with types; bool; - default = true; - }; - }; - - config = lib.mkIf cfg.enable { - environment.systemPackages = with pkgs; [ - killall # Command-line utility to terminate processes by name - pciutils # Utilities for inspecting and manipulating devices connected to the PCI bus - btop # Terminal-based resource monitor, providing an interactive view of system resources - nix-search-cli # Command-line utility for searching the Nix package repository - rbw # Command-line interface to the Bitwarden password manager - pinentry-curses # Simple curses-based passphrase entry dialog for GnuPG - bash # GNU Bourne-Again SHell, a command language interpreter for Unix-like operating systems - bash-completion # Provides programmable completion for the bash shell - tmux # Terminal multiplexer, allowing multiple terminal sessions within a single window - thefuck # Corrects errors in previous console commands - nnn # Terminal file manager with a focus on performance and ease of use - advcpmv # Advanced version of the Unix utilities cp and mv - unzip # Command-line utility for extracting files from ZIP archives - trash-cli # Command-line interface to the freedesktop.org Trash - vim # Text editor that is highly configurable and widely used, especially in the Unix environment - nodejs # JavaScript runtime built on Chrome's V8 JavaScript engine - ripgrep # Line-oriented search tool that recursively searches directories for a regex pattern - cargo # Package manager and build system for Rust - docker-compose # Docker CLI plugin to define and run multi-container applications with Docker - sesh # Smart session manager for the terminal - zoxide # Fast cd command that learns your habits - fzf # Command-line fuzzy finder for Unix-like operating systems - distrobox # Use any linux distribution inside your terminal - just # Hand way to save and run project-specific commands - ]; - }; -} diff --git a/provision/modules/programs/beancount.nix b/provision/modules/programs/beancount.nix index 818af851..8f55ff43 100644 --- a/provision/modules/programs/beancount.nix +++ b/provision/modules/programs/beancount.nix @@ -1,8 +1,7 @@ { config, lib, pkgs, user, ... }: -let cfg = config.modules.programs.beancount; +let cfg = config.modules.base-plus; in { - options.modules.programs.beancount.enable = lib.mkEnableOption "beancount"; config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ fava # Web interface for the double-entry bookkeeping software Beancount diff --git a/provision/modules/programs/borg.nix b/provision/modules/programs/borg.nix index fed73519..94a9693d 100644 --- a/provision/modules/programs/borg.nix +++ b/provision/modules/programs/borg.nix @@ -1,8 +1,7 @@ { config, pkgs, user, lib, ... }: -let cfg = config.modules.programs.borg; +let cfg = config.modules.base-plus; in { - options.modules.programs.borg.enable = lib.mkEnableOption "borg"; config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ borgbackup # Deduplicating backup program @@ -21,6 +20,7 @@ in { rm /tmp/docker_images '') ]; + services.borgmatic.enable = true; }; } diff --git a/provision/modules/programs/chezmoi.nix b/provision/modules/programs/chezmoi.nix index 46e1eb41..92e325de 100644 --- a/provision/modules/programs/chezmoi.nix +++ b/provision/modules/programs/chezmoi.nix @@ -3,20 +3,17 @@ let cfg = config.modules.programs.chezmoi; in { options.modules.programs.chezmoi = with lib; { - enable = lib.mkOption { + apply = lib.mkOption { type = with types; bool; default = true; }; - apply = lib.mkOption { - type = with types; bool; - default = false; - }; }; - config = lib.mkIf cfg.enable { + config = { environment.systemPackages = with pkgs; [ chezmoi # Manage your dotfiles across multiple machines, securely ]; + home-manager.users.${user} = lib.mkIf cfg.apply { home.activation.chezmoi = home-manager.lib.hm.dag.entryAfter [ "installPackages" ] '' _saved_path=$PATH diff --git a/provision/modules/programs/chrome/default.nix b/provision/modules/programs/chrome.nix similarity index 74% rename from provision/modules/programs/chrome/default.nix rename to provision/modules/programs/chrome.nix index 1fa61e76..bc78fdc7 100644 --- a/provision/modules/programs/chrome/default.nix +++ b/provision/modules/programs/chrome.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, user, ... }: -let cfg1 = config.modules.desktop; - cfg2 = config.modules.programs.chrome; +let cfg = config.modules.programs.chrome; in { options.modules.programs.chrome = with lib; { enable = lib.mkOption { @@ -10,7 +9,7 @@ in { }; }; - config = lib.mkIf (cfg1.enable && cfg2.enable) { + config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ google-chrome # Web browser developed by Google ]; @@ -41,27 +40,20 @@ in { # Install extensions "ExtensionInstallForcelist" = [ "ihennfdbghdiflogeancnalflhgmanop" # Gruvbox theme - "fkeaekngjflipcockcnpobkpbbfbhmdn" # Copy as Markdown - "pcmpcfapbekmbjjkdalcgopdkipoggdi" # MarkDownload "nngceckbapebfimnlniiiahkandclblb" # Bitwarden - "icpgjfneehieebagbmdbhnlpiopdcmna" # New Tab Redirect "hkgfoiooedgoejojocmhlaklaeopbecg" # Picture-in-Picture (by Google) "dbepggeogbaibhgnhhndojpepiihcmeb" # Vimium + "beakmhbijpdhipnjhnclmhgjlddhidpe" # Linkding + "icpgjfneehieebagbmdbhnlpiopdcmna" # New Tab Redirect ]; # Setup bookmarks - "BookmarkBarEnabled" = true; + "BookmarkBarEnabled" = false; "ShowAppsShortcutInBookmarkBar" = false; - "ManagedBookmarks" = import ./bookmarks.nix; + "HomepageLocation" = "https://link.tstarr.us"; + "HomepageIsNewTabPage" = false; + "ShowHomeButton" = true; }; }; - - # Host blank webpage for default new-tab - networking.firewall.allowedTCPPorts = [ 8080 ]; - services.static-web-server = { - enable = true; - listen = "[::]:8080"; - root = ../../../../resources/blank; - }; }; } diff --git a/provision/modules/programs/chrome/bookmarks.nix b/provision/modules/programs/chrome/bookmarks.nix deleted file mode 100644 index bce6dd17..00000000 --- a/provision/modules/programs/chrome/bookmarks.nix +++ /dev/null @@ -1,43 +0,0 @@ -[ - { "toplevel_name" = "Bookmarks"; } - { "name" = "Daily"; "children" = [ - { "url" = "https://lc.tstarr.us"; name = "Chisme Mattermost"; } - { "url" = "https://rss.tstarr.us"; name = "Miniflux"; } - { "url" = "https://cloud.tstarr.us"; name = "Nextcloud"; } - { "url" = "https://git.tstarr.us"; name = "Gitea"; } - { "url" = "https://media.tstarr.us/web/index.html#!/home.html"; name = "Jellyfin"; } - { "url" = "https://home.tstarr.us"; name = "Home Assistant"; } - { "url" = "https://www.youtube.com/feed/subscriptions"; name = "Youtube"; } - { "url" = "https://gmail.com/"; name = "Mail"; } - { "url" = "https://github.com/"; name = "GitHub"; } - { "url" = "https://www.google.com/"; name = "Google"; } - { "url" = "https://www.icloud.com/"; name = "iCloud"; } - ]; } - { "name" = "Games"; "children" = [ - { "url" = "https://www.dotabuff.com/"; name = "DOTABUFF"; } - { "url" = "https://myrient.erista.me/"; name = "Myrient"; } - { "url" = "https://www.protondb.com/"; name = "ProtonDB"; } - { "url" = "https://r-roms.github.io/"; name = "Roms Megathread"; } - { "url" = "https://vimm.net/"; name = "Vimm's Lair: Preserving the Classics"; } - ]; } - { "name" = "Homelab"; "children" = [ - { "url" = "http://localhost:8384"; name = "Syncthing"; } - { "url" = "https://github.com/starr-dusT/dotfiles"; name = "Dotfiles"; } - { "url" = "https://rssbridge.tstarr.us"; name = "RSSBridge"; } - ]; } - { "name" = "Nix"; "children" = [ - { "url" = "https://nixos.org/nix/manual/"; name = "nix-manual"; } - { "url" = "https://nixos.org/nixpkgs/manual/"; name = "nixpkgs-manual"; } - { "url" = "https://nixos.org/nixos/manual/"; name = "nixos-manual"; } - { "url" = "https://nixos.org/nixos/options.html"; name = "nixos-options"; } - { "url" = "https://discourse.nixos.org/"; name = "nixos-discourse"; } - { "url" = "https://old.reddit.com/r/nixos/"; name = "nixos-reddit"; } - { "url" = "https://nixos.wiki/"; name = "nixos-wiki"; } - ]; } - { "name" = "Work"; "children" = [ - { url = "https://webmail.apps.mil/owa"; name = "WebMail";} - { url = "https://dod.teams.microsoft.us/"; name = "Teams";} - { url = "https://usaf-my.dps.mil/"; name = "OneDrive";} - ]; } - -] diff --git a/provision/modules/programs/default.nix b/provision/modules/programs/default.nix index c3beaee1..721b01e4 100644 --- a/provision/modules/programs/default.nix +++ b/provision/modules/programs/default.nix @@ -2,16 +2,6 @@ { imports = [ ./appgate-sdp.nix - ./base-terminal.nix - ./beancount.nix - ./borg.nix - ./chrome - ./firefox - ./git.nix - ./chezmoi.nix - ./kitty.nix - ./nvim.nix ./virt-manager.nix - ./yt-dlp.nix ]; } diff --git a/provision/modules/programs/firefox/default.nix b/provision/modules/programs/firefox.nix similarity index 85% rename from provision/modules/programs/firefox/default.nix rename to provision/modules/programs/firefox.nix index 10def893..9ec8e21d 100644 --- a/provision/modules/programs/firefox/default.nix +++ b/provision/modules/programs/firefox.nix @@ -1,7 +1,6 @@ { config, lib, pkgs, user, ... }: -let cfg1 = config.modules.desktop; - cfg2 = config.modules.programs.firefox; +let cfg = config.modules.programs.firefox; in { options.modules.programs.firefox = with lib; { enable = lib.mkOption { @@ -10,7 +9,7 @@ in { }; }; - config = lib.mkIf (cfg1.enable && cfg2.enable) { + config = lib.mkIf cfg.enable { home-manager.users.${user} = { programs.firefox = { enable = true; @@ -22,7 +21,6 @@ in { }; }; profiles.default = { - bookmarks = import ./bookmarks.nix; isDefault = true; name = "default"; settings = { diff --git a/provision/modules/programs/firefox/bookmarks.nix b/provision/modules/programs/firefox/bookmarks.nix deleted file mode 100644 index d93b3804..00000000 --- a/provision/modules/programs/firefox/bookmarks.nix +++ /dev/null @@ -1,9 +0,0 @@ -[ - { name = "Managed Bookmarks"; toolbar = true; bookmarks = [ - { name = "Bookmarks"; bookmarks = [ - { url = "https://webmail.apps.mil/owa"; name = "WebMail";} - { url = "https://dod.teams.microsoft.us/"; name = "Teams";} - { url = "https://usaf-my.dps.mil/"; name = "OneDrive";} - ]; } - ]; } -] diff --git a/provision/modules/programs/git.nix b/provision/modules/programs/git.nix index e2612d50..8de77862 100644 --- a/provision/modules/programs/git.nix +++ b/provision/modules/programs/git.nix @@ -3,17 +3,13 @@ let cfg = config.modules.programs.git; in { options.modules.programs.git = with lib; { - enable = lib.mkOption { - type = with types; bool; - default = true; - }; keys = lib.mkOption { type = with types; bool; default = true; }; }; - config = lib.mkIf cfg.enable { + config = { environment.systemPackages = with pkgs; [ git # Version control system for tracking changes in source code during software development git-annex # Manages files with git, without checking the file contents into git diff --git a/provision/modules/programs/kitty.nix b/provision/modules/programs/kitty.nix index dc438879..0a8bbb0f 100644 --- a/provision/modules/programs/kitty.nix +++ b/provision/modules/programs/kitty.nix @@ -1,8 +1,7 @@ { config, lib, pkgs, user, inputs, home-manager, ... }: -let cfg = config.modules.programs.kitty; +let cfg = config.modules.desktop; in { - options.modules.programs.kitty.enable = lib.mkEnableOption "kitty"; config = lib.mkIf cfg.enable { home-manager.users.${user} = { home.packages = with pkgs; [ diff --git a/provision/modules/programs/nvim.nix b/provision/modules/programs/nvim.nix index b3227727..57030628 100644 --- a/provision/modules/programs/nvim.nix +++ b/provision/modules/programs/nvim.nix @@ -1,29 +1,7 @@ -{ config, lib, pkgs, user, home-manager, ... }: - -let cfg = config.modules.programs.nvim; -in { - options.modules.programs.nvim = with lib; { - enable = lib.mkOption { - type = with types; bool; - default = true; - }; - }; - - config = lib.mkIf cfg.enable { - environment.systemPackages = with pkgs; [ - neovim # Fork of Vim aiming to improve extensibility and usability - pyright # Latest version of the Pyright package, a static type checker for Python - ]; - }; +{ config, lib, pkgs, user, ... }: +{ + environment.systemPackages = with pkgs; [ + neovim # Fork of Vim aiming to improve extensibility and usability + pyright # Latest version of the Pyright package, a static type checker for Python + ]; } - - - - - - - - - - - diff --git a/provision/modules/programs/virt-manager.nix b/provision/modules/programs/virt-manager.nix index d0a39f39..9c27f4ad 100644 --- a/provision/modules/programs/virt-manager.nix +++ b/provision/modules/programs/virt-manager.nix @@ -7,7 +7,9 @@ in { environment.systemPackages = with pkgs; [ virt-manager # Desktop application for managing virtual machines through libvirt ]; + virtualisation.libvirtd.enable = true; + virtualisation.libvirtd.qemu.swtpm.enable = true; programs.dconf.enable = true; }; } diff --git a/provision/modules/programs/yt-dlp.nix b/provision/modules/programs/yt-dlp.nix index ea6943f6..dd6ca632 100644 --- a/provision/modules/programs/yt-dlp.nix +++ b/provision/modules/programs/yt-dlp.nix @@ -1,14 +1,7 @@ { config, lib, pkgs, user, ... }: -let cfg = config.modules.programs.yt-dlp; +let cfg = config.modules.base-plus; in { - options.modules.programs.yt-dlp = with lib; { - enable = lib.mkOption { - type = with types; bool; - default = true; - }; - }; - config = lib.mkIf cfg.enable { environment.systemPackages = with pkgs; [ yt-dlp # Command-line tool to download videos diff --git a/provision/overlays/default.nix b/provision/overlays/default.nix index e676ab3a..d1adb681 100644 --- a/provision/overlays/default.nix +++ b/provision/overlays/default.nix @@ -1,8 +1,6 @@ final: prev: { - advcpmv = final.callPackage ../pkgs/advcpmv.nix {}; ftw = final.callPackage ../pkgs/ftw.nix {}; gnome-set-panel-monitor = final.callPackage ../pkgs/gnome-set-panel-monitor.nix {}; stacks-in-gnome = final.callPackage ../pkgs/stacks-in-gnome.nix {}; pySVS = final.callPackage ../pkgs/pySVS.nix {}; - ryujinx = final.callPackage ../pkgs/ryujinx/default.nix {}; } diff --git a/provision/pkgs/advcpmv.nix b/provision/pkgs/advcpmv.nix deleted file mode 100644 index da0de469..00000000 --- a/provision/pkgs/advcpmv.nix +++ /dev/null @@ -1,31 +0,0 @@ -{ stdenv, fetchurl, fetchpatch }: - -let - advcpmv_owner = "jarun"; - advcpmv_version = "0.9"; - coreutils_version = "9.1"; - coreutils_upstream = "coreutils"; - patch_rev = "69d2f9d3c72ec149fc7e06f5154af27db857ebb5"; -in -stdenv.mkDerivation rec { - name = "advcpmv"; - version = advcpmv_version; - - src = fetchurl { - name = "source-${name}-${coreutils_version}.tar.xz"; - url = "ftp://ftp.gnu.org/gnu/${coreutils_upstream}/${coreutils_upstream}-${coreutils_version}.tar.xz"; - sha256 = "sha256-YaH0ENeLp+fzelpPUObRMgrKMzdUhKMlXt3xejhYBCM="; - }; - - patches = [ - (fetchpatch { - url = "https://raw.githubusercontent.com/${advcpmv_owner}/${name}/${patch_rev}/${name}-${advcpmv_version}-${coreutils_version}.patch"; - sha256 = "sha256-d+SRT/R4xmfHLAdOr7m4R3WFiW64P5ZH6iqDvErYCyg="; - }) - ]; - - installPhase = '' - install -D "src/cp" "$out/bin/cpg" - install -D "src/mv" "$out/bin/mvg" - ''; -} diff --git a/provision/pkgs/ryujinx/default.nix b/provision/pkgs/ryujinx/default.nix deleted file mode 100644 index 1fd69e83..00000000 --- a/provision/pkgs/ryujinx/default.nix +++ /dev/null @@ -1,129 +0,0 @@ -{ lib -, buildDotnetModule -, dotnetCorePackages -, fetchFromGitHub -, libX11 -, libgdiplus -, ffmpeg -, openal -, libsoundio -, sndio -, pulseaudio -, vulkan-loader -, glew -, libGL -, libICE -, libSM -, libXcursor -, libXext -, libXi -, libXrandr -, udev -, SDL2 -, SDL2_mixer -, fontconfig -}: - -buildDotnetModule rec { - pname = "ryujinx"; - version = "3513"; # commit number - - src = fetchFromGitHub { - owner = "GreemDev"; - repo = "Ryujinx"; - rev = "6be88380433e04ea8898645ffc0111e1a31eafb1"; - hash = "sha256-t0qqshf2x+wogHtoxj9bthU03h29wvhrFCTUw8C2DDo="; - }; - - enableParallelBuilding = false; - - dotnet-sdk = dotnetCorePackages.sdk_8_0; - dotnet-runtime = dotnetCorePackages.runtime_8_0; - - nugetDeps = ./deps.nix; - - runtimeDeps = [ - libX11 - libgdiplus - SDL2_mixer - openal - libsoundio - sndio - pulseaudio - vulkan-loader - ffmpeg - udev - - # Avalonia UI - glew - libICE - libSM - libXcursor - libXext - libXi - libXrandr - - # Headless executable - libGL - SDL2 - fontconfig - ]; - - projectFile = "Ryujinx.sln"; - testProjectFile = "src/Ryujinx.Tests/Ryujinx.Tests.csproj"; - doCheck = true; - - dotnetFlags = [ - "/p:ExtraDefineConstants=DISABLE_UPDATER%2CFORCE_EXTERNAL_BASE_DIR" - ]; - - executables = [ - "Ryujinx.Headless.SDL2" - "Ryujinx" - ]; - - makeWrapperArgs = [ - # Without this Ryujinx fails to start on wayland. See https://github.com/Ryujinx/Ryujinx/issues/2714 - "--set SDL_VIDEODRIVER x11" - ]; - - preInstall = '' - # workaround for https://github.com/Ryujinx/Ryujinx/issues/2349 - mkdir -p $out/lib/sndio-6 - ln -s ${sndio}/lib/libsndio.so $out/lib/sndio-6/libsndio.so.6 - ''; - - preFixup = '' - mkdir -p $out/share/{applications,icons/hicolor/scalable/apps,mime/packages} - pushd ${src}/distribution/linux - - install -D ./Ryujinx.desktop $out/share/applications/Ryujinx.desktop - install -D ./Ryujinx.sh $out/bin/Ryujinx.sh - install -D ./mime/Ryujinx.xml $out/share/mime/packages/Ryujinx.xml - install -D ../misc/Logo.svg $out/share/icons/hicolor/scalable/apps/Ryujinx.svg - - substituteInPlace $out/share/applications/Ryujinx.desktop \ - --replace "Ryujinx.sh %f" "$out/bin/Ryujinx.sh %f" - - ln -s $out/bin/Ryujinx $out/bin/ryujinx - - popd - ''; - - meta = with lib; { - homepage = "https://ryujinx.org/"; - changelog = "https://github.com/Ryujinx/Ryujinx/wiki/Changelog"; - description = "Experimental Nintendo Switch Emulator written in C#"; - longDescription = '' - Ryujinx is an open-source Nintendo Switch emulator, created by gdkchan, - written in C#. This emulator aims at providing excellent accuracy and - performance, a user-friendly interface and consistent builds. It was - written from scratch and development on the project began in September - 2017. - ''; - license = licenses.mit; - maintainers = with maintainers; [ starr-dusT jk artemist ]; - platforms = [ "x86_64-linux" "aarch64-linux" ]; - mainProgram = "Ryujinx"; - }; -} diff --git a/provision/pkgs/ryujinx/deps.nix b/provision/pkgs/ryujinx/deps.nix deleted file mode 100644 index 54ef82b4..00000000 --- a/provision/pkgs/ryujinx/deps.nix +++ /dev/null @@ -1,261 +0,0 @@ -# This file was automatically generated by passthru.fetch-deps. -# Please dont edit it manually, your changes might get overwritten! - -{ fetchNuGet }: [ - (fetchNuGet { pname = "Avalonia"; version = "11.0.10"; hash = "sha256-FuGl5admJ9AeRNrg/faGfqx8pwxGxdkmbnth9Jxhelc="; }) - (fetchNuGet { pname = "Avalonia.Angle.Windows.Natives"; version = "2.1.0.2023020321"; hash = "sha256-TWop9cvak6cMv2vrA/GlpuYBxS8Fuj5UmupGIV7Q5Ks="; }) - (fetchNuGet { pname = "Avalonia.BuildServices"; version = "0.0.29"; hash = "sha256-WPHRMNowRnYSCh88DWNBCltWsLPyOfzXGzBqLYE7tRY="; }) - (fetchNuGet { pname = "Avalonia.Controls.ColorPicker"; version = "11.0.10"; hash = "sha256-G0ooIjNRW5YHKvQ6qPxe5gaE3HPwGfiCQUo34PSxXGg="; }) - (fetchNuGet { pname = "Avalonia.Controls.ColorPicker"; version = "11.0.4"; hash = "sha256-Jp0j/58RF9Qooc7ATtq80FtX3TVLhi54JfgrbKdiDes="; }) - (fetchNuGet { pname = "Avalonia.Controls.DataGrid"; version = "11.0.10"; hash = "sha256-0v4evkV0jbLffwfQG/QO/RQbHXlCBmFv8A2pBZjS5Y0="; }) - (fetchNuGet { pname = "Avalonia.Controls.ItemsRepeater"; version = "11.0.4"; hash = "sha256-P8MfWKkDQrsk6x/vraNxxdYSMHytS8U3fMY2o8b49dw="; }) - (fetchNuGet { pname = "Avalonia.Desktop"; version = "11.0.10"; hash = "sha256-fIty7TfiTC+OX9gCH4tA8Fs9dF4+G7Mhs9XnZadUR2g="; }) - (fetchNuGet { pname = "Avalonia.Diagnostics"; version = "11.0.10"; hash = "sha256-itnN+LIZ2S+1CjD0ZS/woKtpgWbC/srMYzbYfX3a8LA="; }) - (fetchNuGet { pname = "Avalonia.FreeDesktop"; version = "11.0.10"; hash = "sha256-uVNOOVTQIqQ2pDgSsz5saI7+fMvps40vJlMp1/XdyaE="; }) - (fetchNuGet { pname = "Projektanker.Icons.Avalonia"; version = "9.4.0"; hash = "sha256-SVzkayPUk/7WXQW2Wn3ri4ia92WvJoXTrPmcT8C+J8U="; }) - (fetchNuGet { pname = "Projektanker.Icons.Avalonia.FontAwesome"; version = "9.4.0"; hash = "sha256-NscqtIdfn4vWrZbPeJuBq+w6ysAIOLXm3FI8TYUJv4M="; }) - (fetchNuGet { pname = "Projektanker.Icons.Avalonia.MaterialDesign"; version = "9.4.0"; hash = "sha256-OTXZAbTsIWjJ7CduyuW57RoExC0eHYIwk9yq3TEGEXE="; }) - (fetchNuGet { pname = "Avalonia.Markup.Xaml.Loader"; version = "11.0.10"; hash = "sha256-Xv6L8U34QEiH6r3SQWLwuVFk9N9REmCUHa9hEbv2m24="; }) - (fetchNuGet { pname = "Avalonia.Native"; version = "11.0.10"; hash = "sha256-P9j01FDXDpixo8wBVH3XK0Am6UBhG52HDrzt1ZqD8Ro="; }) - (fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "11.0.10"; hash = "sha256-qtvlczTg2yUZWyyqXkkboB8lK9aYv+STbfDvSKb55Vw="; }) - (fetchNuGet { pname = "Avalonia.Remote.Protocol"; version = "11.0.4"; hash = "sha256-13qXDjlWElmwQ0sb00+ny9gOgKuDOHKvALuQB6EZxCQ="; }) - (fetchNuGet { pname = "Avalonia.Skia"; version = "11.0.0"; hash = "sha256-A01nrs3Ij1eTo6tPmu7++T1K+Wo/H/9LvpeuOUGbQeU="; }) - (fetchNuGet { pname = "Avalonia.Skia"; version = "11.0.10"; hash = "sha256-1SU17j43Fiw4LbEEgqx10zE/iIVPfb8G1JVbfD2RhXA="; }) - (fetchNuGet { pname = "Avalonia.Skia"; version = "11.0.4"; hash = "sha256-1XfPTcAaNj1926uYkvo7P62++ds5M2gHvkv1hRzBVfs="; }) - (fetchNuGet { pname = "Avalonia.Svg"; version = "11.0.0.18"; hash = "sha256-U4bafxxxFE0tKmKVxguxH+doFrTHlM6DjFP8wz6Xm9U="; }) - (fetchNuGet { pname = "Avalonia.Svg.Skia"; version = "11.0.0.18"; hash = "sha256-M4AQkL42efqOSck4Lf7C1naIRjEPMlnxi3OVC8zLJaQ="; }) - (fetchNuGet { pname = "Avalonia.Themes.Simple"; version = "11.0.10"; hash = "sha256-54fc2g1yvM7pPRaF062lSjXaQDe2i61xQRM8m81vWm8="; }) - (fetchNuGet { pname = "Avalonia.Win32"; version = "11.0.10"; hash = "sha256-+o228ElrBJBxBkZKGbo3x8/52wKpnAk/x6Yon5pyA74="; }) - (fetchNuGet { pname = "Avalonia.X11"; version = "11.0.10"; hash = "sha256-/CRivMxpcbW1FnIuwZbF2ucdcbn4TCyjKzLXgdGtCfQ="; }) - (fetchNuGet { pname = "CommandLineParser"; version = "2.9.1"; hash = "sha256-ApU9y1yX60daSjPk3KYDBeJ7XZByKW8hse9NRZGcjeo="; }) - (fetchNuGet { pname = "Concentus"; version = "2.2.0"; hash = "sha256-7wbB76WoTd2CISIODGhmEiPIrydI0dqDMZGf4gdkogM="; }) - (fetchNuGet { pname = "DiscordRichPresence"; version = "1.2.1.24"; hash = "sha256-oRNrlF1/yK0QvrW2+48RsmSg9h9/pDIfA56/bpoHXFU="; }) - (fetchNuGet { pname = "DynamicData"; version = "9.0.4"; hash = "sha256-3pyiJeWRwfaT7p1ArsoR13aI78Jo13aHOEw3BelTS9g="; }) - (fetchNuGet { pname = "ExCSS"; version = "4.2.3"; hash = "sha256-M/H6P5p7qqdFz/fgAI2MMBWQ7neN/GIieYSSxxjsM9I="; }) - (fetchNuGet { pname = "FluentAvaloniaUI"; version = "2.0.5"; hash = "sha256-EaJ6qR2yn+7p8lf62yx2vL3sGhnPOfbP5jBjR+pGY7o="; }) - (fetchNuGet { pname = "FSharp.Core"; version = "7.0.200"; hash = "sha256-680VgvYbZbztPQosO17r5y8vxg/Y/4Vmr5K3iLIJKMo="; }) - (fetchNuGet { pname = "Gommon"; version = "2.6.5"; hash = "sha256-JpQs3FLEt3MThpmKmCkyCc/pXPwRPPGei92ONsOhzHo="; }) - (fetchNuGet { pname = "GtkSharp.Dependencies"; version = "1.1.1"; hash = "sha256-/IpSj5JnUTREfQsdA3XW+eqNhqApTds65DQoNpjl3jk="; }) - (fetchNuGet { pname = "HarfBuzzSharp"; version = "2.8.2.3"; hash = "sha256-4tbdgUabPjlkBm3aUFeocj4Fdslmms2olDFpzOLyqoQ="; }) - (fetchNuGet { pname = "HarfBuzzSharp"; version = "7.3.0"; hash = "sha256-LlPQO/NYgIMWicvLOtWsQzCp512QpIImYDP9/n2rDOc="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "2.8.2.3"; hash = "sha256-3xwVfNfKTkuLdnT+e3bfG9tNTdEmar7ByzY+NTlUKLg="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Linux"; version = "7.3.0"; hash = "sha256-AEHjgqX0o+Fob0SeZ6EikGKoEe6rRxess5fVJ31UL0U="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "2.8.2.3"; hash = "sha256-ZohUEaovj/sRB4rjuJIOq6S9eim3m+qMlpHIebNDTRQ="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.macOS"; version = "7.3.0"; hash = "sha256-6oFcdKb17UX5wyAUeCCKXGvzkf0w3MNdZOVMvs54tqw="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.WebAssembly"; version = "2.8.2.3"; hash = "sha256-ZsiBGpXfODHUHPgU/50k9QR/j6Klo7rsB0SUt8zYcBA="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.WebAssembly"; version = "7.3.0"; hash = "sha256-9VI0xCavuuIIStuQ7ipBfWu5HrAt+Kk/F2j57C1llTU="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "2.8.2.3"; hash = "sha256-5GSzM5IUoOwK+zJg0d74WlT3n1VZly8pKlyjiqVocCI="; }) - (fetchNuGet { pname = "HarfBuzzSharp.NativeAssets.Win32"; version = "7.3.0"; hash = "sha256-WnB7l73hneU9Kpbm8S9zEYbZHjFre24vWz0vl8+v28M="; }) - (fetchNuGet { pname = "Humanizer"; version = "2.14.1"; hash = "sha256-1wGwf5KAmDeiH0Dz8KcTdZw+UMkiNsjKOIOt/VJnnqE="; }) - (fetchNuGet { pname = "Humanizer.Core"; version = "2.14.1"; hash = "sha256-EXvojddPu+9JKgOG9NSQgUTfWq1RpOYw7adxDPKDJ6o="; }) - (fetchNuGet { pname = "Humanizer.Core.af"; version = "2.14.1"; hash = "sha256-8CCgI7OweSa53cZWZBXQ8a7VVt/NPP16zHVBZvzU9KQ="; }) - (fetchNuGet { pname = "Humanizer.Core.ar"; version = "2.14.1"; hash = "sha256-JRoP+brQgYBZI8OccH/jaM1Z482ZWBiqU2XL3KsIPw8="; }) - (fetchNuGet { pname = "Humanizer.Core.az"; version = "2.14.1"; hash = "sha256-ubwkbes9zrrisuXTcT4ZgOAiFsUieC6OLd4pgzxsE40="; }) - (fetchNuGet { pname = "Humanizer.Core.bg"; version = "2.14.1"; hash = "sha256-Xv6DP1xxxGVUfP44TZasWpxgQ/DkriljvmIMtHf+nGk="; }) - (fetchNuGet { pname = "Humanizer.Core.bn-BD"; version = "2.14.1"; hash = "sha256-6JpReIc3fkExvJIXzk6fUw56wJ78aTEg1dWQ6o+dQow="; }) - (fetchNuGet { pname = "Humanizer.Core.cs"; version = "2.14.1"; hash = "sha256-MGL86KxSbz0PkDo9+NRj6h1fDjPZXlxAtYNf0Zreg/4="; }) - (fetchNuGet { pname = "Humanizer.Core.da"; version = "2.14.1"; hash = "sha256-Gpw8kJbgz0KQS2mGY5tmrHqpgUO4abD7dSKIy//ONYM="; }) - (fetchNuGet { pname = "Humanizer.Core.de"; version = "2.14.1"; hash = "sha256-Eswv8aEQoxI9MZr2CvWtBUn5X9JRZTWQjRzHJkGj80g="; }) - (fetchNuGet { pname = "Humanizer.Core.el"; version = "2.14.1"; hash = "sha256-wCK2Uy/AV6FxPUSUM0NMbV14pAP+ss25AaVAHMQIeJA="; }) - (fetchNuGet { pname = "Humanizer.Core.es"; version = "2.14.1"; hash = "sha256-iEHiQXKwg0ABDxh//HSrzwaVOlilQBFI96+GYzzTMwQ="; }) - (fetchNuGet { pname = "Humanizer.Core.fa"; version = "2.14.1"; hash = "sha256-2Js7k3nvwJvxAjq3yoLn7PUY2S8+vXfgESwU4SbvjaA="; }) - (fetchNuGet { pname = "Humanizer.Core.fi-FI"; version = "2.14.1"; hash = "sha256-jOWo43r3dhiBsV9cCoDfqK/YqWj5LejZsnfkG6mlkpA="; }) - (fetchNuGet { pname = "Humanizer.Core.fr"; version = "2.14.1"; hash = "sha256-WCbA+f4B3g/ml7KrkHkzpU2Fj38HtWc/ujoVY5F3lk4="; }) - (fetchNuGet { pname = "Humanizer.Core.fr-BE"; version = "2.14.1"; hash = "sha256-GydVmoEy+lwEQ1nM39QXSRhYNchqM47p7qhUEimN4Cw="; }) - (fetchNuGet { pname = "Humanizer.Core.he"; version = "2.14.1"; hash = "sha256-MMf3qjJ+yzxjMxOR7wMWf+eErxWLqpsdWKFhjNCOsyM="; }) - (fetchNuGet { pname = "Humanizer.Core.hr"; version = "2.14.1"; hash = "sha256-kBv2I9ns6L6D4XfXfyZS1VM6+YwF4yUkCmCA5zqvsok="; }) - (fetchNuGet { pname = "Humanizer.Core.hu"; version = "2.14.1"; hash = "sha256-vRje+kxqOsl1JCXAE0yDKvauUumzuEhNcnhNsdIdgVM="; }) - (fetchNuGet { pname = "Humanizer.Core.hy"; version = "2.14.1"; hash = "sha256-UL7PsK4msT5c96lk70/bVAxN63B71l8VOFtvuJQH9a0="; }) - (fetchNuGet { pname = "Humanizer.Core.id"; version = "2.14.1"; hash = "sha256-nIl64gCuZh4D527qI2hfQRvzt1mTJUCDGMIZwpS3C/A="; }) - (fetchNuGet { pname = "Humanizer.Core.is"; version = "2.14.1"; hash = "sha256-38vUQ1aVtlhK15kP9ZlDO0Nl0DcOA5iHx6F2SPN1gYM="; }) - (fetchNuGet { pname = "Humanizer.Core.it"; version = "2.14.1"; hash = "sha256-4ne0VRNi9OAj3bGCQgCy1BNYKMizoHykJ/lchmCsWdc="; }) - (fetchNuGet { pname = "Humanizer.Core.ja"; version = "2.14.1"; hash = "sha256-oAilMM8J6LumV6qv3gSIBNTm7u2L4vV38cQXtME3PhM="; }) - (fetchNuGet { pname = "Humanizer.Core.ko-KR"; version = "2.14.1"; hash = "sha256-b70HQl2IWVPATtaYGDyJ+Z6ioPtrM53vXzfTCHYgxpQ="; }) - (fetchNuGet { pname = "Humanizer.Core.ku"; version = "2.14.1"; hash = "sha256-8LiEH7MaapMtkHFMj7Y3pG+g0QYuIa5gD3VR9nYQn+k="; }) - (fetchNuGet { pname = "Humanizer.Core.lv"; version = "2.14.1"; hash = "sha256-zyCsE5cD++u5shNIqCQUd+66FkUWOl+NfFrs2JduCaQ="; }) - (fetchNuGet { pname = "Humanizer.Core.ms-MY"; version = "2.14.1"; hash = "sha256-pSdZLUi9oWo78nBh2DJunPhDR7THdZSZP0msCVbPsrY="; }) - (fetchNuGet { pname = "Humanizer.Core.mt"; version = "2.14.1"; hash = "sha256-mkX2reEvNpx9w6gtZw+6bkrnj3Di1qgVDMr9q0IeKCw="; }) - (fetchNuGet { pname = "Humanizer.Core.nb"; version = "2.14.1"; hash = "sha256-QvYJHqjO/SrelWYgtm8Sc7axs7J8wbJE+GbTgVw5LYs="; }) - (fetchNuGet { pname = "Humanizer.Core.nb-NO"; version = "2.14.1"; hash = "sha256-YW8y2XkmHjwqf2fztNB3rsn3+CgslF1TclITwp0fA9g="; }) - (fetchNuGet { pname = "Humanizer.Core.nl"; version = "2.14.1"; hash = "sha256-bQM7aXNQMBY+65NfMVQz/xYz9Ad2JC+ryXoB4lcYgmA="; }) - (fetchNuGet { pname = "Humanizer.Core.pl"; version = "2.14.1"; hash = "sha256-IrPxHI4uQvBeMM9/8PaNueKwVkbN+1zFQlNWRjNfXEA="; }) - (fetchNuGet { pname = "Humanizer.Core.pt"; version = "2.14.1"; hash = "sha256-XrlC15HNJFmDwLpHIUHb3Bec9A79msQCRB9Dvz8w4l0="; }) - (fetchNuGet { pname = "Humanizer.Core.ro"; version = "2.14.1"; hash = "sha256-llXtfq4Tr5V2Q4dVD7J0IKITtpiWrFs50DAtJhcSuRI="; }) - (fetchNuGet { pname = "Humanizer.Core.ru"; version = "2.14.1"; hash = "sha256-lD0dB3mkbFfGExwVWZk6fv24MyQQ8Cdv5OrleuZeChg="; }) - (fetchNuGet { pname = "Humanizer.Core.sk"; version = "2.14.1"; hash = "sha256-EmyE+wssZwY6tAuEiFXGn5/yzVMZe7QEuTjOcByOXaA="; }) - (fetchNuGet { pname = "Humanizer.Core.sl"; version = "2.14.1"; hash = "sha256-sWWxh7KZ8Y3Ps6GbBOHbU2GMsNZfkM+BOnUChf3fz4s="; }) - (fetchNuGet { pname = "Humanizer.Core.sr"; version = "2.14.1"; hash = "sha256-/bA3LULRFn5WYmCscr5R5vaFRjeHC0xjNiF7PXEJ8r0="; }) - (fetchNuGet { pname = "Humanizer.Core.sr-Latn"; version = "2.14.1"; hash = "sha256-43+o6oj0UNRJKiFoh57MGPSzlsWAq0eRtzlCrewDmVM="; }) - (fetchNuGet { pname = "Humanizer.Core.sv"; version = "2.14.1"; hash = "sha256-9lXrHveKDs1y/W3Qxd+MVcohhKEU7zNPx21GBVPp/rA="; }) - (fetchNuGet { pname = "Humanizer.Core.th-TH"; version = "2.14.1"; hash = "sha256-ldCsXINSvL2xom0SCtVQy+qX1IN5//EUoyIOwXiJ3k8="; }) - (fetchNuGet { pname = "Humanizer.Core.tr"; version = "2.14.1"; hash = "sha256-VZnO1vMXiR7egKEKJ6lBsj7eNgxhFzakFWsYYRW4u2U="; }) - (fetchNuGet { pname = "Humanizer.Core.uk"; version = "2.14.1"; hash = "sha256-rdvleUrKbj3c06A0O2MkgAZLtXLro9SPB1YqAGE1Vyg="; }) - (fetchNuGet { pname = "Humanizer.Core.uz-Cyrl-UZ"; version = "2.14.1"; hash = "sha256-Qso1Iz9MTLs63x4F00kK31TZAN4AoFaFsuVzM+1z38k="; }) - (fetchNuGet { pname = "Humanizer.Core.uz-Latn-UZ"; version = "2.14.1"; hash = "sha256-sVnkZTuEaHfMJIAZmSCqsspnKkYxK9eVBQZnAAqHNW4="; }) - (fetchNuGet { pname = "Humanizer.Core.vi"; version = "2.14.1"; hash = "sha256-5wDt72+HdNN3mt/iJkxV9LaH13Jc1qr1vB4Lz8ahIPs="; }) - (fetchNuGet { pname = "Humanizer.Core.zh-CN"; version = "2.14.1"; hash = "sha256-Z3qfFWyovcVT4Hqy51lgW2xGwyfI//Yfv90E0Liy1sw="; }) - (fetchNuGet { pname = "Humanizer.Core.zh-Hans"; version = "2.14.1"; hash = "sha256-BTGkMEkQYJKRp858EU7hwNOdsHRT+w6vAMa6H8JIyX4="; }) - (fetchNuGet { pname = "Humanizer.Core.zh-Hant"; version = "2.14.1"; hash = "sha256-N3D1z5aoGwAZ6+ZxrWMtXgacvQcgDG+aLrQQI9uysmM="; }) - (fetchNuGet { pname = "JetBrains.Annotations"; version = "2023.2.0"; hash = "sha256-Um10fSmO+21I7f+lbzzVq5e8GBijJ9amTvOlt362p1s="; }) - (fetchNuGet { pname = "LibHac"; version = "0.19.0"; hash = "sha256-FDEmeGHbX/aCFjFbFk8QwO2rTfFizt9UKb+KFDt23hk="; }) - (fetchNuGet { pname = "MicroCom.CodeGenerator.MSBuild"; version = "0.11.0"; hash = "sha256-TsxziX9V8T3qRrEA3o9wY84ocDcUUUBzvARi5QZW23o="; }) - (fetchNuGet { pname = "MicroCom.Runtime"; version = "0.11.0"; hash = "sha256-VdwpP5fsclvNqJuppaOvwEwv2ofnAI5ZSz2V+UEdLF0="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.Analyzers"; version = "3.0.0"; hash = "sha256-KDbCfsBWSJ5ohEXUKp1s1LX9xA2NPvXE/xVzj68EdC0="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.Analyzers"; version = "3.3.4"; hash = "sha256-qDzTfZBSCvAUu9gzq2k+LOvh6/eRvJ9++VCNck/ZpnE="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.Common"; version = "3.8.0"; hash = "sha256-3G9vSc/gHH7FWgOySLTut1+eEaf3H66qcPOvNPLOx4o="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.Common"; version = "4.9.2"; hash = "sha256-QU/nyiJWpdPQGHBdaOEVc+AghnGHcKBFBX0oyhRZ9CQ="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "3.8.0"; hash = "sha256-i/r3V/No/VzqmJlWxpGoirvlbJDbBPa/ONZtzYrxuc4="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp"; version = "4.9.2"; hash = "sha256-j06Q4A9E65075SBXdXVCMRgeLxA63Rv1vxarydmmVAA="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.CSharp.Scripting"; version = "3.8.0"; hash = "sha256-fA9Qu+vTyMZ9REzxJ4aMg/SHCDRk4q9k4ZGUdynoHnA="; }) - (fetchNuGet { pname = "Microsoft.CodeAnalysis.Scripting.Common"; version = "3.8.0"; hash = "sha256-866jMHp8kbc1FYpKuUWnd7ViU6kGJTAxPcL/IjXrT0I="; }) - (fetchNuGet { pname = "Microsoft.CodeCoverage"; version = "17.9.0"; hash = "sha256-OaGa4+jRPHs+T+p/oekm2Miluqfd2IX8Rt+BmUx8kr4="; }) - (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.3.0"; hash = "sha256-a3dAiPaVuky0wpcHmpTVtAQJNGZ2v91/oArA+dpJgj8="; }) - (fetchNuGet { pname = "Microsoft.CSharp"; version = "4.7.0"; hash = "sha256-Enknv2RsFF68lEPdrf5M+BpV1kHoLTVRApKUwuk/pj0="; }) - (fetchNuGet { pname = "Microsoft.DotNet.PlatformAbstractions"; version = "3.1.6"; hash = "sha256-RfM2qXiqdiamPkXr4IDkNc0IZSF9iTZv4uou/E7zNS0="; }) - (fetchNuGet { pname = "Microsoft.Extensions.DependencyModel"; version = "8.0.0"; hash = "sha256-qkCdwemqdZY/yIW5Xmh7Exv74XuE39T8aHGHCofoVgo="; }) - (fetchNuGet { pname = "Microsoft.IdentityModel.Abstractions"; version = "8.0.1"; hash = "sha256-zPWUKTCfGm4MWcYPU037NzezsFE1g8tEijjQkw5iooI="; }) - (fetchNuGet { pname = "Microsoft.IdentityModel.JsonWebTokens"; version = "8.0.1"; hash = "sha256-Xv9MUnjb66U3xeR9drOcSX5n2DjOCIJZPMNSKjWHo9Y="; }) - (fetchNuGet { pname = "Microsoft.IdentityModel.Logging"; version = "8.0.1"; hash = "sha256-FfwrH/2eLT521Kqw+RBIoVfzlTNyYMqlWP3z+T6Wy2Y="; }) - (fetchNuGet { pname = "Microsoft.IdentityModel.Tokens"; version = "8.0.1"; hash = "sha256-beVbbVQy874HlXkTKarPTT5/r7XR1NGHA/50ywWp7YA="; }) - (fetchNuGet { pname = "Microsoft.IO.RecyclableMemoryStream"; version = "3.0.1"; hash = "sha256-unFg/5EcU/XKJbob4GtQC43Ydgi5VjeBGs7hfhj4EYo="; }) - (fetchNuGet { pname = "Microsoft.NET.Test.Sdk"; version = "17.9.0"; hash = "sha256-q/1AJ7eNlk02wvN76qvjl2xBx5iJ+h5ssiE/4akLmtI="; }) - (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "1.1.0"; hash = "sha256-FeM40ktcObQJk4nMYShB61H/E8B7tIKfl9ObJ0IOcCM="; }) - (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.0.0"; hash = "sha256-IEvBk6wUXSdyCnkj6tHahOJv290tVVT8tyemYcR0Yro="; }) - (fetchNuGet { pname = "Microsoft.NETCore.Platforms"; version = "2.1.2"; hash = "sha256-gYQQO7zsqG+OtN4ywYQyfsiggS2zmxw4+cPXlK+FB5Q="; }) - (fetchNuGet { pname = "Microsoft.NETCore.Targets"; version = "1.1.0"; hash = "sha256-0AqQ2gMS8iNlYkrD+BxtIg7cXMnr9xZHtKAuN4bjfaQ="; }) - (fetchNuGet { pname = "Microsoft.TestPlatform.ObjectModel"; version = "17.9.0"; hash = "sha256-iiXUFzpvT8OWdzMj9FGJDqanwHx40s1TXVY9l3ii+s0="; }) - (fetchNuGet { pname = "Microsoft.TestPlatform.TestHost"; version = "17.9.0"; hash = "sha256-1BZIY1z+C9TROgdTV/tq4zsPy7Q71GQksr/LoMKAzqU="; }) - (fetchNuGet { pname = "Microsoft.Win32.Registry"; version = "4.5.0"; hash = "sha256-WMBXsIb0DgPFPaFkNVxY9b9vcMxPqtgFgijKYMJfV/0="; }) - (fetchNuGet { pname = "MsgPack.Cli"; version = "1.0.1"; hash = "sha256-Gf0Ed9XHH4oFpJIkzhg/xhDVpenunSol65qa8IZeYrY="; }) - (fetchNuGet { pname = "NetCoreServer"; version = "8.0.7"; hash = "sha256-RUYic8uAgJGdhUCrMJQULKlHB6xvw9H1lnNGU1axNZw="; }) - (fetchNuGet { pname = "NETStandard.Library"; version = "2.0.0"; hash = "sha256-Pp7fRylai8JrE1O+9TGfIEJrAOmnWTJRLWE+qJBahK0="; }) - (fetchNuGet { pname = "NETStandard.Library"; version = "2.0.3"; hash = "sha256-Prh2RPebz/s8AzHb2sPHg3Jl8s31inv9k+Qxd293ybo="; }) - (fetchNuGet { pname = "Newtonsoft.Json"; version = "13.0.1"; hash = "sha256-K2tSVW4n4beRPzPu3rlVaBEMdGvWSv/3Q1fxaDh4Mjo="; }) - (fetchNuGet { pname = "NUnit"; version = "3.13.3"; hash = "sha256-Zn+sJIF7ieNqu/t2RwJx6WPFb1jl9UuNHidb/Px0v3E="; }) - (fetchNuGet { pname = "NUnit3TestAdapter"; version = "4.1.0"; hash = "sha256-nDPiYdTFulqozEJrujr8/cqjG7m15Vkd/Frqem0Jr/w="; }) - (fetchNuGet { pname = "OpenTK.Audio.OpenAL"; version = "4.8.2"; hash = "sha256-i5KRiTYTNMB4Y5Qd5xewaYrb9sBbnXMDu2QXbM3RCeU="; }) - (fetchNuGet { pname = "OpenTK.Core"; version = "4.8.2"; hash = "sha256-59S4Vj13y8HtZT6RZTwO6ZZbk1GUNDcYx1rMdv5jr4I="; }) - (fetchNuGet { pname = "OpenTK.Graphics"; version = "4.8.2"; hash = "sha256-DNpXqtM9Oj6wDGYSF2FD4A4ueWG892Wk6uGWffNspo0="; }) - (fetchNuGet { pname = "OpenTK.Mathematics"; version = "4.8.2"; hash = "sha256-TPsts443n6iEajfH2EuYTKtubrWuTLiCrTB1F4FndIo="; }) - (fetchNuGet { pname = "OpenTK.redist.glfw"; version = "3.3.8.39"; hash = "sha256-bg8bGfoDDqmZ/efLFVm8l5etQajIVvOcQ/Nv+yKD4Bc="; }) - (fetchNuGet { pname = "OpenTK.Windowing.GraphicsLibraryFramework"; version = "4.8.2"; hash = "sha256-a1MGtU+27pBNns55g8mOsxXpZxfEr6M62zLkIkkJTIY="; }) - (fetchNuGet { pname = "runtime.any.System.Collections"; version = "4.3.0"; hash = "sha256-4PGZqyWhZ6/HCTF2KddDsbmTTjxs2oW79YfkberDZS8="; }) - (fetchNuGet { pname = "runtime.any.System.Globalization"; version = "4.3.0"; hash = "sha256-PaiITTFI2FfPylTEk7DwzfKeiA/g/aooSU1pDcdwWLU="; }) - (fetchNuGet { pname = "runtime.any.System.IO"; version = "4.3.0"; hash = "sha256-vej7ySRhyvM3pYh/ITMdC25ivSd0WLZAaIQbYj/6HVE="; }) - (fetchNuGet { pname = "runtime.any.System.Reflection"; version = "4.3.0"; hash = "sha256-ns6f++lSA+bi1xXgmW1JkWFb2NaMD+w+YNTfMvyAiQk="; }) - (fetchNuGet { pname = "runtime.any.System.Reflection.Extensions"; version = "4.3.0"; hash = "sha256-Y2AnhOcJwJVYv7Rp6Jz6ma0fpITFqJW+8rsw106K2X8="; }) - (fetchNuGet { pname = "runtime.any.System.Reflection.Primitives"; version = "4.3.0"; hash = "sha256-LkPXtiDQM3BcdYkAm5uSNOiz3uF4J45qpxn5aBiqNXQ="; }) - (fetchNuGet { pname = "runtime.any.System.Resources.ResourceManager"; version = "4.3.0"; hash = "sha256-9EvnmZslLgLLhJ00o5MWaPuJQlbUFcUF8itGQNVkcQ4="; }) - (fetchNuGet { pname = "runtime.any.System.Runtime"; version = "4.3.0"; hash = "sha256-qwhNXBaJ1DtDkuRacgHwnZmOZ1u9q7N8j0cWOLYOELM="; }) - (fetchNuGet { pname = "runtime.any.System.Runtime.Handles"; version = "4.3.0"; hash = "sha256-PQRACwnSUuxgVySO1840KvqCC9F8iI9iTzxNW0RcBS4="; }) - (fetchNuGet { pname = "runtime.any.System.Runtime.InteropServices"; version = "4.3.0"; hash = "sha256-Kaw5PnLYIiqWbsoF3VKJhy7pkpoGsUwn4ZDCKscbbzA="; }) - (fetchNuGet { pname = "runtime.any.System.Text.Encoding"; version = "4.3.0"; hash = "sha256-Q18B9q26MkWZx68exUfQT30+0PGmpFlDgaF0TnaIGCs="; }) - (fetchNuGet { pname = "runtime.any.System.Threading.Tasks"; version = "4.3.0"; hash = "sha256-agdOM0NXupfHbKAQzQT8XgbI9B8hVEh+a/2vqeHctg4="; }) - (fetchNuGet { pname = "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-LXUPLX3DJxsU1Pd3UwjO1PO9NM2elNEDXeu2Mu/vNps="; }) - (fetchNuGet { pname = "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-qeSqaUI80+lqw5MK4vMpmO0CZaqrmYktwp6L+vQAb0I="; }) - (fetchNuGet { pname = "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-SrHqT9wrCBsxILWtaJgGKd6Odmxm8/Mh7Kh0CUkZVzA="; }) - (fetchNuGet { pname = "runtime.native.System"; version = "4.3.0"; hash = "sha256-ZBZaodnjvLXATWpXXakFgcy6P+gjhshFXmglrL5xD5Y="; }) - (fetchNuGet { pname = "runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-Jy01KhtcCl2wjMpZWH+X3fhHcVn+SyllWFY8zWlz/6I="; }) - (fetchNuGet { pname = "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-wyv00gdlqf8ckxEdV7E+Ql9hJIoPcmYEuyeWb5Oz3mM="; }) - (fetchNuGet { pname = "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-zi+b4sCFrA9QBiSGDD7xPV27r3iHGlV99gpyVUjRmc4="; }) - (fetchNuGet { pname = "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-gybQU6mPgaWV3rBG2dbH6tT3tBq8mgze3PROdsuWnX0="; }) - (fetchNuGet { pname = "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-VsP72GVveWnGUvS/vjOQLv1U80H2K8nZ4fDAmI61Hm4="; }) - (fetchNuGet { pname = "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-4yKGa/IrNCKuQ3zaDzILdNPD32bNdy6xr5gdJigyF5g="; }) - (fetchNuGet { pname = "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-HmdJhhRsiVoOOCcUvAwdjpMRiyuSwdcgEv2j9hxi+Zc="; }) - (fetchNuGet { pname = "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl"; version = "4.3.0"; hash = "sha256-pVFUKuPPIx0edQKjzRon3zKq8zhzHEzko/lc01V/jdw="; }) - (fetchNuGet { pname = "runtime.unix.System.Diagnostics.Debug"; version = "4.3.0"; hash = "sha256-ReoazscfbGH+R6s6jkg5sIEHWNEvjEoHtIsMbpc7+tI="; }) - (fetchNuGet { pname = "runtime.unix.System.Private.Uri"; version = "4.3.0"; hash = "sha256-c5tXWhE/fYbJVl9rXs0uHh3pTsg44YD1dJvyOA0WoMs="; }) - (fetchNuGet { pname = "runtime.unix.System.Runtime.Extensions"; version = "4.3.0"; hash = "sha256-l8S9gt6dk3qYG6HYonHtdlYtBKyPb29uQ6NDjmrt3V4="; }) - (fetchNuGet { pname = "Ryujinx.AtkSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-mK1zXkd6bdo7YqOm/rcI8MTniugvs5Kjw+esGmHYJxE="; }) - (fetchNuGet { pname = "Ryujinx.Audio.OpenAL.Dependencies"; version = "1.21.0.1"; hash = "sha256-NHGzMcYduuYJjduIlf8M8zSQQuJcXAEaMNmKIqAgs3w="; }) - (fetchNuGet { pname = "Ryujinx.CairoSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-+gV4Vlkd0jMZ6yGCz1/KoiE32/O26gHOZiHXmZ292rE="; }) - (fetchNuGet { pname = "Ryujinx.GdkSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-r1UK7YzhMOJ3Z8eWuUyTf0nGQ0Bdlic8Qri170ilEbs="; }) - (fetchNuGet { pname = "Ryujinx.GioSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-sbfdn16UoQtcU9gAgvP2kjBUbYi9nKy09bmhvn9IGtU="; }) - (fetchNuGet { pname = "Ryujinx.GLibSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-zZv0B4BvKuRdse8oqSbb4P6FFq79w4M+MCk8EqqLVWk="; }) - (fetchNuGet { pname = "Ryujinx.Graphics.Nvdec.Dependencies"; version = "5.0.3-build14"; hash = "sha256-+ff+tlWggY+qZTBJroOOphRpOjBDg5cQgwGtVOTiqRQ="; }) - (fetchNuGet { pname = "Ryujinx.Graphics.Vulkan.Dependencies.MoltenVK"; version = "1.2.0"; hash = "sha256-vdDw6YGoyQzv6ustyXP6v7YWUIKEXaZOyUKAaVbRauI="; }) - (fetchNuGet { pname = "Ryujinx.GtkSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-2duc6+KLuctobfwqeuewxRLZnXn83QomF4rN0hEoMTc="; }) - (fetchNuGet { pname = "Ryujinx.PangoSharp"; version = "3.24.24.59-ryujinx"; hash = "sha256-gGAK/aEfTUAxEihjlBOtHlhPZZFAwCasgUB/Umapva0="; }) - (fetchNuGet { pname = "Ryujinx.SDL2-CS"; version = "2.30.0-build32"; hash = "sha256-KrrlDq0pXcunnOhJL12dt1CAdNbaupbDlnza5gXuVKE="; }) - (fetchNuGet { pname = "securifybv.PropertyStore"; version = "0.1.0"; hash = "sha256-jTPT9E2LyElgJq4HMavkdwT8tA9uklnJv00mlIx66+g="; }) - (fetchNuGet { pname = "securifybv.ShellLink"; version = "0.1.0"; hash = "sha256-Am+ZednCVJUDgB7TePyY3CTxKDQ6Lr8M8KiCVAJoouw="; }) - (fetchNuGet { pname = "shaderc.net"; version = "0.1.0"; hash = "sha256-+K7ObC9ucilwWY+Tlf9KcrAVoTFS65V6Di7JDWDSZTg="; }) - (fetchNuGet { pname = "SharpZipLib"; version = "1.4.2"; hash = "sha256-/giVqikworG2XKqfN9uLyjUSXr35zBuZ2FX2r8X/WUY="; }) - (fetchNuGet { pname = "ShimSkiaSharp"; version = "1.0.0.18"; hash = "sha256-72NV+OuW8bCfI/EOXwgS6dleLZnomLJTYeQPPmfhuu8="; }) - (fetchNuGet { pname = "Silk.NET.Core"; version = "2.21.0"; hash = "sha256-D4ZUCm1Gf/EiRWrSwSLrdXT6U54icY2E/vrvCD/bRHw="; }) - (fetchNuGet { pname = "Silk.NET.Vulkan"; version = "2.21.0"; hash = "sha256-Xnxl13+ziJ1+jNxMFSrEuh6NvL1FBrYmJ/d3HQXpgzY="; }) - (fetchNuGet { pname = "Silk.NET.Vulkan.Extensions.EXT"; version = "2.21.0"; hash = "sha256-udELG0ppCOP9eT2yl/sI9MgKOVOuK0py9znmoaBGDpk="; }) - (fetchNuGet { pname = "Silk.NET.Vulkan.Extensions.KHR"; version = "2.21.0"; hash = "sha256-KyiGHW6CNkXE3EdHk3ufwTVG7oLvSyHwx+MmIJhsiBk="; }) - (fetchNuGet { pname = "SkiaSharp"; version = "2.88.3"; hash = "sha256-WyMAjnQt8ZsuWpGLI89l/f4bHvv+cg7FdTAL7CtJBvs="; }) - (fetchNuGet { pname = "SkiaSharp"; version = "2.88.6"; hash = "sha256-y0wzgwdQXtgl5boCz/EgLWbK3SwC0cFVRUbBxOUPQXc="; }) - (fetchNuGet { pname = "SkiaSharp"; version = "2.88.7"; hash = "sha256-Ip3afwTr4QOqtwOUKqK6g/9Ug4dMSebTci5K29Jc3Dg="; }) - (fetchNuGet { pname = "SkiaSharp.HarfBuzz"; version = "2.88.6"; hash = "sha256-gpHiTuHfiXgbkBkzipXb8EXIatefsod75nyrFdPcwcA="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.3"; hash = "sha256-eExWAAURgnwwm2fRwsK/rf+TeOAPs2n02XZzC0zeUjU="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.Linux"; version = "2.88.7"; hash = "sha256-QdQRN1IBjqohmI8U+6WJRPgOsh8a9soN2UvVObs1H1w="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.3"; hash = "sha256-8G4swiLMr6XS3kjfO/YC1PyoVdfSq7nxZthZZ+KTKqQ="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.6"; hash = "sha256-7hOMjlYTOiNPLNwfLFUjTcdgiGEtmYUI1EubiRiC6bo="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.macOS"; version = "2.88.7"; hash = "sha256-WgPldXSqPMm0TrdUWAyjge5rcRhd9G3/Ix/v/2NQvBc="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.3"; hash = "sha256-/SkV2pIZnt0ziSKB7gt7U2Rltk2Id+zOzbmqgfWUtvA="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.WebAssembly"; version = "2.88.7"; hash = "sha256-oIjFF+Rv+g8AKyNaaVAgnHX3eeP/l8K2sgHs9bRyUMw="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.3"; hash = "sha256-2PhMTwRHitT13KCKiZltKIFieAvNY4jBmVZ2ndVynA8="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.6"; hash = "sha256-ljD4QmAO2/vwA6I8GIUNkONpOzmGsOVJJy9vPDnjVfA="; }) - (fetchNuGet { pname = "SkiaSharp.NativeAssets.Win32"; version = "2.88.7"; hash = "sha256-+7RxCAr+ne9MZWdXKKpV4ZbHW0k6hLD20ZFWWOCiNYU="; }) - (fetchNuGet { pname = "SPB"; version = "0.0.4-build32"; hash = "sha256-GUzbV5rLWtXTpiddYrKnWWLujG38vBDCO4xRStwAaDo="; }) - (fetchNuGet { pname = "Svg.Custom"; version = "1.0.0.18"; hash = "sha256-RguRPwBM/KCogaiOgjELlvuqN1Tr+b3HA4Odz1rXBgU="; }) - (fetchNuGet { pname = "Svg.Model"; version = "1.0.0.18"; hash = "sha256-CXZC45txfcd8MuRmDENw2ujlGk74YaUPNs7dXq+Zcg8="; }) - (fetchNuGet { pname = "Svg.Skia"; version = "1.0.0.18"; hash = "sha256-o5VnCaAGX4LuwNyl7QM0KOg2gNfkD5uNMNthxB7w0m4="; }) - (fetchNuGet { pname = "System.Buffers"; version = "4.5.1"; hash = "sha256-wws90sfi9M7kuCPWkv1CEYMJtCqx9QB/kj0ymlsNaxI="; }) - (fetchNuGet { pname = "System.CodeDom"; version = "4.4.0"; hash = "sha256-L1xyspJ8pDJNVPYKl+FMGf4Zwm0tlqtAyQCNW6pT6/0="; }) - (fetchNuGet { pname = "System.CodeDom"; version = "8.0.0"; hash = "sha256-uwVhi3xcvX7eiOGQi7dRETk3Qx1EfHsUfchZsEto338="; }) - (fetchNuGet { pname = "System.Collections"; version = "4.3.0"; hash = "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc="; }) - (fetchNuGet { pname = "System.Collections.Immutable"; version = "5.0.0"; hash = "sha256-GdwSIjLMM0uVfE56VUSLVNgpW0B//oCeSFj8/hSlbM8="; }) - (fetchNuGet { pname = "System.Collections.Immutable"; version = "8.0.0"; hash = "sha256-F7OVjKNwpqbUh8lTidbqJWYi476nsq9n+6k0+QVRo3w="; }) - (fetchNuGet { pname = "System.ComponentModel.Annotations"; version = "4.5.0"; hash = "sha256-15yE2NoT9vmL9oGCaxHClQR1jLW1j1ef5hHMg55xRso="; }) - (fetchNuGet { pname = "System.Diagnostics.Debug"; version = "4.3.0"; hash = "sha256-fkA79SjPbSeiEcrbbUsb70u9B7wqbsdM9s1LnoKj0gM="; }) - (fetchNuGet { pname = "System.Dynamic.Runtime"; version = "4.3.0"; hash = "sha256-k75gjOYimIQtLBD5NDzwwi3ZMUBPRW3jmc3evDMMJbU="; }) - (fetchNuGet { pname = "System.Globalization"; version = "4.3.0"; hash = "sha256-caL0pRmFSEsaoeZeWN5BTQtGrAtaQPwFi8YOZPZG5rI="; }) - (fetchNuGet { pname = "System.IO"; version = "4.3.0"; hash = "sha256-ruynQHekFP5wPrDiVyhNiRIXeZ/I9NpjK5pU+HPDiRY="; }) - (fetchNuGet { pname = "System.IO.Hashing"; version = "8.0.0"; hash = "sha256-szOGt0TNBo6dEdC3gf6H+e9YW3Nw0woa6UnCGGGK5cE="; }) - (fetchNuGet { pname = "System.IO.Pipelines"; version = "6.0.0"; hash = "sha256-xfjF4UqTMJpf8KsBWUyJlJkzPTOO/H5MW023yTYNQSA="; }) - (fetchNuGet { pname = "System.Linq"; version = "4.3.0"; hash = "sha256-R5uiSL3l6a3XrXSSL6jz+q/PcyVQzEAByiuXZNSqD/A="; }) - (fetchNuGet { pname = "System.Linq.Expressions"; version = "4.3.0"; hash = "sha256-+3pvhZY7rip8HCbfdULzjlC9FPZFpYoQxhkcuFm2wk8="; }) - (fetchNuGet { pname = "System.Management"; version = "8.0.0"; hash = "sha256-HwpfDb++q7/vxR6q57mGFgl5U0vxy+oRJ6orFKORfP0="; }) - (fetchNuGet { pname = "System.Memory"; version = "4.5.4"; hash = "sha256-3sCEfzO4gj5CYGctl9ZXQRRhwAraMQfse7yzKoRe65E="; }) - (fetchNuGet { pname = "System.Memory"; version = "4.5.5"; hash = "sha256-EPQ9o1Kin7KzGI5O3U3PUQAZTItSbk9h/i4rViN3WiI="; }) - (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.3.0"; hash = "sha256-eog2Sp8CAntRlyp2Aar1tpAwDrojGFZ5LIdqsmuIchY="; }) - (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.4.0"; hash = "sha256-auXQK2flL/JpnB/rEcAcUm4vYMCYMEMiWOCAlIaqu2U="; }) - (fetchNuGet { pname = "System.Numerics.Vectors"; version = "4.5.0"; hash = "sha256-qdSTIFgf2htPS+YhLGjAGiLN8igCYJnCCo6r78+Q+c8="; }) - (fetchNuGet { pname = "System.ObjectModel"; version = "4.3.0"; hash = "sha256-gtmRkWP2Kwr3nHtDh0yYtce38z1wrGzb6fjm4v8wN6Q="; }) - (fetchNuGet { pname = "System.Private.Uri"; version = "4.3.0"; hash = "sha256-fVfgcoP4AVN1E5wHZbKBIOPYZ/xBeSIdsNF+bdukIRM="; }) - (fetchNuGet { pname = "System.Reactive"; version = "6.0.1"; hash = "sha256-Lo5UMqp8DsbVSUxa2UpClR1GoYzqQQcSxkfyFqB/d4Q="; }) - (fetchNuGet { pname = "System.Reflection"; version = "4.3.0"; hash = "sha256-NQSZRpZLvtPWDlvmMIdGxcVuyUnw92ZURo0hXsEshXY="; }) - (fetchNuGet { pname = "System.Reflection.Emit"; version = "4.3.0"; hash = "sha256-5LhkDmhy2FkSxulXR+bsTtMzdU3VyyuZzsxp7/DwyIU="; }) - (fetchNuGet { pname = "System.Reflection.Emit.ILGeneration"; version = "4.3.0"; hash = "sha256-mKRknEHNls4gkRwrEgi39B+vSaAz/Gt3IALtS98xNnA="; }) - (fetchNuGet { pname = "System.Reflection.Emit.Lightweight"; version = "4.3.0"; hash = "sha256-rKx4a9yZKcajloSZHr4CKTVJ6Vjh95ni+zszPxWjh2I="; }) - (fetchNuGet { pname = "System.Reflection.Extensions"; version = "4.3.0"; hash = "sha256-mMOCYzUenjd4rWIfq7zIX9PFYk/daUyF0A8l1hbydAk="; }) - (fetchNuGet { pname = "System.Reflection.Metadata"; version = "1.6.0"; hash = "sha256-JJfgaPav7UfEh4yRAQdGhLZF1brr0tUWPl6qmfNWq/E="; }) - (fetchNuGet { pname = "System.Reflection.Metadata"; version = "5.0.0"; hash = "sha256-Wo+MiqhcP9dQ6NuFGrQTw6hpbJORFwp+TBNTq2yhGp8="; }) - (fetchNuGet { pname = "System.Reflection.Metadata"; version = "8.0.0"; hash = "sha256-dQGC30JauIDWNWXMrSNOJncVa1umR1sijazYwUDdSIE="; }) - (fetchNuGet { pname = "System.Reflection.Primitives"; version = "4.3.0"; hash = "sha256-5ogwWB4vlQTl3jjk1xjniG2ozbFIjZTL9ug0usZQuBM="; }) - (fetchNuGet { pname = "System.Reflection.TypeExtensions"; version = "4.3.0"; hash = "sha256-4U4/XNQAnddgQIHIJq3P2T80hN0oPdU2uCeghsDTWng="; }) - (fetchNuGet { pname = "System.Resources.ResourceManager"; version = "4.3.0"; hash = "sha256-idiOD93xbbrbwwSnD4mORA9RYi/D/U48eRUsn/WnWGo="; }) - (fetchNuGet { pname = "System.Runtime"; version = "4.3.0"; hash = "sha256-51813WXpBIsuA6fUtE5XaRQjcWdQ2/lmEokJt97u0Rg="; }) - (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "4.7.1"; hash = "sha256-UvyoDV8O0oY3HPG1GbA56YVdvwTGEfjYR5gW1O7IK4U="; }) - (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "5.0.0"; hash = "sha256-neARSpLPUzPxEKhJRwoBzhPxK+cKIitLx7WBYncsYgo="; }) - (fetchNuGet { pname = "System.Runtime.CompilerServices.Unsafe"; version = "6.0.0"; hash = "sha256-bEG1PnDp7uKYz/OgLOWs3RWwQSVYm+AnPwVmAmcgp2I="; }) - (fetchNuGet { pname = "System.Runtime.Extensions"; version = "4.3.0"; hash = "sha256-wLDHmozr84v1W2zYCWYxxj0FR0JDYHSVRaRuDm0bd/o="; }) - (fetchNuGet { pname = "System.Runtime.Handles"; version = "4.3.0"; hash = "sha256-KJ5aXoGpB56Y6+iepBkdpx/AfaJDAitx4vrkLqR7gms="; }) - (fetchNuGet { pname = "System.Runtime.InteropServices"; version = "4.3.0"; hash = "sha256-8sDH+WUJfCR+7e4nfpftj/+lstEiZixWUBueR2zmHgI="; }) - (fetchNuGet { pname = "System.Security.AccessControl"; version = "4.5.0"; hash = "sha256-AFsKPb/nTk2/mqH/PYpaoI8PLsiKKimaXf+7Mb5VfPM="; }) - (fetchNuGet { pname = "System.Security.Principal.Windows"; version = "4.5.0"; hash = "sha256-BkUYNguz0e4NJp1kkW7aJBn3dyH9STwB5N8XqnlCsmY="; }) - (fetchNuGet { pname = "System.Text.Encoding"; version = "4.3.0"; hash = "sha256-GctHVGLZAa/rqkBNhsBGnsiWdKyv6VDubYpGkuOkBLg="; }) - (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "4.5.1"; hash = "sha256-PIhkv59IXjyiuefdhKxS9hQfEwO9YWRuNudpo53HQfw="; }) - (fetchNuGet { pname = "System.Text.Encoding.CodePages"; version = "8.0.0"; hash = "sha256-fjCLQc1PRW0Ix5IZldg0XKv+J1DqPSfu9pjMyNBp7dE="; }) - (fetchNuGet { pname = "System.Text.Encodings.Web"; version = "8.0.0"; hash = "sha256-IUQkQkV9po1LC0QsqrilqwNzPvnc+4eVvq+hCvq8fvE="; }) - (fetchNuGet { pname = "System.Text.Json"; version = "8.0.4"; hash = "sha256-g5oT7fbXxQ9Iah1nMCr4UUX/a2l+EVjJyTrw3FTbIaI="; }) - (fetchNuGet { pname = "System.Threading"; version = "4.3.0"; hash = "sha256-ZDQ3dR4pzVwmaqBg4hacZaVenQ/3yAF/uV7BXZXjiWc="; }) - (fetchNuGet { pname = "System.Threading.Tasks"; version = "4.3.0"; hash = "sha256-Z5rXfJ1EXp3G32IKZGiZ6koMjRu0n8C1NGrwpdIen4w="; }) - (fetchNuGet { pname = "System.Threading.Tasks.Extensions"; version = "4.5.4"; hash = "sha256-owSpY8wHlsUXn5xrfYAiu847L6fAKethlvYx97Ri1ng="; }) - (fetchNuGet { pname = "Tmds.DBus.Protocol"; version = "0.15.0"; hash = "sha256-4gk2vXDjKFaBh82gTkwg3c/5GRjiH+bvM5elfDSbKTU="; }) - (fetchNuGet { pname = "UnicornEngine.Unicorn"; version = "2.0.2-rc1-fb78016"; hash = "sha256-NrJ4/o4FmCt2zoB1fWAzqdonvpYhTFsWwh3h0lxZg+Q="; }) -] diff --git a/provision/readme.md b/provision/readme.md index 776cb771..485a80fe 100644 --- a/provision/readme.md +++ b/provision/readme.md @@ -32,4 +32,4 @@ Perform additional setup found in [additional-setup](additional-setup.md) ## Update -`nixos-rebuild` command is aliased to `nu` assuming the machine's flake output is named the same at the hostname of the machine. +`nixos-rebuild` command is built into the `justfile` with this folder, assuming the machine's flake output is named the same at the hostname of the machine.