{ pkgs, ... }: let nurSrc = builtins.fetchTarball { url = "https://github.com/nix-community/NUR/archive/1076bf182a065b1a037caaaa9edee751148582e3.tar.gz"; sha256 = "sha256:1dizlmwzl6319s9cfbd770ydlj0kf0k3yz5rzw4xni8lnh691hx7"; }; in { imports = [ ./common.nix ./icewm.nix ]; programs.bash.profileExtra = '' function mklink { if [ ! -L "$2" ]; then ln -sfv "$1" "$2" fi } mklink /Z/lx/Downloads ~/Downloads mklink /Z/lx/app/openssh ~/.ssh mkdir -p ~/.gnupg mklink /Z/lx/app/gnupg/pubring.kbx ~/.gnupg/pubring.kbx mklink /Z/lx/app/gnupg/trustdb.gpg ~/.gnupg/trustdb.gpg mklink /Z/lx/app/gnupg/private-keys-v1.d ~/.gnupg/private-keys-v1.d mklink /Z/lx/app/cargo ~/.cargo mklink /Z/lx/app/arduino/Arduino ~/Arduino mklink /Z/lx/app/arduino/.arduino15 ~/.arduino15 mkdir -p ~/.local/share/Steam mklink /Z/lx/app/steam/.steam ~/.steam mklink /Z/lx/app/steam/Steam ~/.local/share/Steam mklink /Z/lx/app/element ~/.config/Element ''; programs.bash.shellAliases.z = "cd /Z/lx"; nixpkgs.config.packageOverrides = pkgs: { nur = import nurSrc { inherit pkgs; }; }; home.file = { ".config/qutebrowser/quickmarks".source = ../qutebrowser/quickmarks; ".gtk-bookmarks".text = '' file:///Z/lx lx ''; }; programs.firefox.enable = true; programs.firefox.profiles.default = { isDefault = true; extensions = with pkgs.nur.repos.rycee.firefox-addons; [ #pkgs.nur.repos.rycee.firefox-addons."10ten-ja-reader" ublock-origin privacy-badger startpage-private-search ]; settings = { "extensions.autoDisableScopes" = 0; "extensions.enabledScopes" = 15; }; }; home.homeDirectory = "/home/lx"; xdg.userDirs.download = "/home/lx/Downloads"; gtk.gtk3.bookmarks = [ "file:///Z/lx" ]; services.gpg-agent.enable = true; services.gpg-agent.enableSshSupport = false; services.gpg-agent.pinentryFlavor = "qt"; services.gpg-agent.extraConfig = "no-allow-external-cache"; programs.keychain = { enable = true; enableBashIntegration = true; keys = [ "/Z/lx/app/openssh/id_ed25519" ]; }; services.syncthing.extraOptions = [ "--home=/Z/lx/app/syncthing" ]; }