refactor
parent
87b6345e10
commit
28e4e017a3
78
capibara.nix
78
capibara.nix
|
@ -5,61 +5,20 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
impermanence = builtins.fetchTarball {
|
|
||||||
url = "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
|
||||||
};
|
|
||||||
home-manager = builtins.fetchTarball {
|
home-manager = builtins.fetchTarball {
|
||||||
url = "https://github.com/nix-community/home-manager/archive/release-21.11.tar.gz";
|
url =
|
||||||
|
"https://github.com/nix-community/home-manager/archive/release-21.11.tar.gz";
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
imports = [ # Include the results of the hardware scan.
|
imports = [
|
||||||
./nixos/hardware-configuration/capibara.nix
|
./nixos/hardware-configuration/capibara.nix
|
||||||
./nixos/common.nix
|
./nixos/common.nix
|
||||||
"${home-manager}/nixos"
|
"${home-manager}/nixos"
|
||||||
"${impermanence}/nixos.nix"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.rilla = import home/capibara.nix;
|
home-manager.users.rilla = import home/capibara.nix;
|
||||||
|
|
||||||
fileSystems = {
|
fileSystems = {
|
||||||
"/" = {
|
|
||||||
device = "tmpfs";
|
|
||||||
fsType = "tmpfs";
|
|
||||||
options = [ "defaults" "size=2G" "mode=755" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/persist/system" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=persist" "compress=zstd" ];
|
|
||||||
neededForBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"/persist/user" = {
|
|
||||||
device = "/dev/mapper/user";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=persist" "compress=zstd" ];
|
|
||||||
neededForBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"/nix" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=nix" "compress=zstd" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/boot" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=boot" "compress=zstd" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/swap" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=swap" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/home/rilla/Music" = {
|
"/home/rilla/Music" = {
|
||||||
device = "narwhal:/music";
|
device = "narwhal:/music";
|
||||||
fsType = "nfs";
|
fsType = "nfs";
|
||||||
|
@ -70,37 +29,6 @@ in {
|
||||||
"x-systemd.idle-timeout=1min"
|
"x-systemd.idle-timeout=1min"
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [{ device = "/swap/swapfile"; }];
|
|
||||||
|
|
||||||
environment.persistence = {
|
|
||||||
"/persist/system" = {
|
|
||||||
directories = [
|
|
||||||
"/var/log"
|
|
||||||
"/var/lib/bluetooth"
|
|
||||||
"/var/lib/systemd/coredump"
|
|
||||||
"/var/lib/docker"
|
|
||||||
];
|
|
||||||
files = [
|
|
||||||
"/etc/machine-id"
|
|
||||||
#"/etc/nix/id_rsa"
|
|
||||||
"/etc/ssh/ssh_host_ed25519_key"
|
|
||||||
"/etc/ssh/ssh_host_ed25519_key.pub"
|
|
||||||
"/etc/ssh/ssh_host_rsa_key"
|
|
||||||
"/etc/ssh/ssh_host_rsa_key.pub"
|
|
||||||
"/etc/wireguard/wg0"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
"/persist/user" = {
|
|
||||||
directories = [
|
|
||||||
"/etc/NetworkManager/system-connections"
|
|
||||||
"/etc/nixos"
|
|
||||||
"/var/lib/libvirt"
|
|
||||||
];
|
|
||||||
files = [ "/etc/wireguard/wg0" ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.variables.NIXOS_CONFIG =
|
environment.variables.NIXOS_CONFIG =
|
||||||
|
|
|
@ -1,212 +1,5 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
let
|
{
|
||||||
impermanence = builtins.fetchTarball {
|
imports = [ ./nixos-common.nix ./desktop-sway ./alacritty ./theming ];
|
||||||
url = "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
|
||||||
};
|
|
||||||
|
|
||||||
in {
|
|
||||||
# Let Home Manager install and manage itself.
|
|
||||||
# programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
# Home Manager needs a bit of information about you and the
|
|
||||||
# paths it should manage.
|
|
||||||
home.username = "rilla";
|
|
||||||
home.homeDirectory = "/home/rilla";
|
|
||||||
|
|
||||||
imports = [
|
|
||||||
"${impermanence}/home-manager.nix"
|
|
||||||
./desktop-sway
|
|
||||||
./alacritty
|
|
||||||
./arduino
|
|
||||||
./barrier
|
|
||||||
./browsers
|
|
||||||
./dav
|
|
||||||
# ./desktop-xmonad/capibara.nix
|
|
||||||
./fonts
|
|
||||||
./git
|
|
||||||
./gotify
|
|
||||||
./gpg
|
|
||||||
./idasen
|
|
||||||
./mail
|
|
||||||
./minidisc
|
|
||||||
./mpd
|
|
||||||
./msg
|
|
||||||
./music
|
|
||||||
./neovim
|
|
||||||
./pass
|
|
||||||
./rss
|
|
||||||
./snapcast
|
|
||||||
./sound
|
|
||||||
./ssh
|
|
||||||
./theming
|
|
||||||
./tmux
|
|
||||||
./vitetris
|
|
||||||
./wallets
|
|
||||||
./zsh
|
|
||||||
];
|
|
||||||
|
|
||||||
home.persistence."/persist/system/${config.home.homeDirectory}" = {
|
|
||||||
directories = [
|
|
||||||
".abook"
|
|
||||||
".bitmonero"
|
|
||||||
".cache"
|
|
||||||
".config/Nextcloud"
|
|
||||||
".config/chromium"
|
|
||||||
".config/whatsapp-for-linux"
|
|
||||||
".gnupg/private-keys-v1.d"
|
|
||||||
".local/share/keyrings"
|
|
||||||
".local/share/mpd"
|
|
||||||
".local/share/webkitgtk"
|
|
||||||
".mozilla"
|
|
||||||
".newsboat"
|
|
||||||
".vdirsyncer"
|
|
||||||
];
|
|
||||||
files = [
|
|
||||||
".gnupg/pubring.kbx"
|
|
||||||
".gnupg/trustdb.gpg"
|
|
||||||
".mailsynclastrun"
|
|
||||||
".ssh/known_hosts"
|
|
||||||
".zsh_history"
|
|
||||||
];
|
|
||||||
allowOther = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.persistence."/persist/user/${config.home.homeDirectory}" = {
|
|
||||||
directories = [
|
|
||||||
".config/Signal"
|
|
||||||
".config/Element"
|
|
||||||
".local/share/TelegramDesktop"
|
|
||||||
".local/share/dino"
|
|
||||||
".local/share/Bisq"
|
|
||||||
".password-store"
|
|
||||||
".walletwasabi"
|
|
||||||
"Calendars"
|
|
||||||
"Contacts"
|
|
||||||
"Documents"
|
|
||||||
"Downloads"
|
|
||||||
"Images"
|
|
||||||
"Maildir"
|
|
||||||
"Monero"
|
|
||||||
"Nextcloud"
|
|
||||||
"code"
|
|
||||||
"configs"
|
|
||||||
"misc"
|
|
||||||
"workspace"
|
|
||||||
];
|
|
||||||
files = [ ];
|
|
||||||
allowOther = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "${pkgs.neovim}/bin/nvim";
|
|
||||||
VISUAL = "${pkgs.neovim}/bin/nvim";
|
|
||||||
BROWSER = "${pkgs.firefox}/bin/firefox";
|
|
||||||
# OPENER = "todo"; # todo
|
|
||||||
TERMINAL = "${pkgs.alacritty}/bin/alacritty";
|
|
||||||
CM_LAUNCHER = "rofi"; # for clipmenu
|
|
||||||
LEDGER_FILE = "${config.home.homeDirectory}/finance/2021.journal";
|
|
||||||
QT_QPA_PLATFORMTHEME = "qt5ct";
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
R
|
|
||||||
acpi
|
|
||||||
android-tools
|
|
||||||
ansible
|
|
||||||
bind.dnsutils
|
|
||||||
calibre
|
|
||||||
docker-compose
|
|
||||||
file
|
|
||||||
gimp
|
|
||||||
gnumake
|
|
||||||
htop
|
|
||||||
jq
|
|
||||||
killall
|
|
||||||
libnotify
|
|
||||||
libreoffice
|
|
||||||
lxqt.pcmanfm-qt
|
|
||||||
mosh
|
|
||||||
mpv
|
|
||||||
neofetch
|
|
||||||
networkmanagerapplet
|
|
||||||
nextcloud-client
|
|
||||||
pandoc
|
|
||||||
pv
|
|
||||||
ripgrep
|
|
||||||
signify
|
|
||||||
sxiv
|
|
||||||
telnet
|
|
||||||
virt-manager
|
|
||||||
wget
|
|
||||||
];
|
|
||||||
|
|
||||||
services.syncthing.enable = true;
|
|
||||||
|
|
||||||
services.kdeconnect.enable = true;
|
|
||||||
|
|
||||||
programs.bat = {
|
|
||||||
enable = true;
|
|
||||||
config = { theme = "gruvbox-dark"; };
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.fzf = {
|
|
||||||
enable = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
# defaultOptions = [
|
|
||||||
# "--preview --preview 'bat --color=always --style=header,grid --line-range :300 {}'"
|
|
||||||
# ];
|
|
||||||
tmux.enableShellIntegration = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.gnome-keyring = {
|
|
||||||
enable = true;
|
|
||||||
components = [ "secrets" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.nextcloud-client = {
|
|
||||||
enable = true;
|
|
||||||
startInBackground = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.mimeApps = {
|
|
||||||
enable = true;
|
|
||||||
defaultApplications = {
|
|
||||||
"x-scheme-handler/http" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/https" = " firefox.desktop";
|
|
||||||
"x-scheme-handler/chrome" = " firefox.desktop";
|
|
||||||
"text/html" = "firefox.desktop";
|
|
||||||
"application/x-extension-htm" = "firefox.desktop";
|
|
||||||
"application/x-extension-html" = "firefox.desktop";
|
|
||||||
"application/x-extension-shtml" = "firefox.desktop";
|
|
||||||
"application/xhtml+xml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xhtml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xht" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
|
||||||
};
|
|
||||||
associations.added = {
|
|
||||||
"x-scheme-handler/http" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/https" = " firefox.desktop";
|
|
||||||
"x-scheme-handler/chrome" = " firefox.desktop";
|
|
||||||
"text/html" = "firefox.desktop";
|
|
||||||
"application/x-extension-htm" = "firefox.desktop";
|
|
||||||
"application/x-extension-html" = "firefox.desktop";
|
|
||||||
"application/x-extension-shtml" = "firefox.desktop";
|
|
||||||
"application/xhtml+xml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xhtml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xht" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
dconf.settings = {
|
|
||||||
"org/virt-manager/virt-manager/connections" = {
|
|
||||||
"autoconnect" = [ "qemu:///system" ];
|
|
||||||
"uris" = [ "qemu:///system" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.stateVersion = "21.11";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,210 @@
|
||||||
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
impermanence = builtins.fetchTarball {
|
||||||
|
url = "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
||||||
|
};
|
||||||
|
|
||||||
|
in {
|
||||||
|
# Let Home Manager install and manage itself.
|
||||||
|
# programs.home-manager.enable = true;
|
||||||
|
|
||||||
|
# Home Manager needs a bit of information about you and the
|
||||||
|
# paths it should manage.
|
||||||
|
home.username = "rilla";
|
||||||
|
home.homeDirectory = "/home/rilla";
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
"${impermanence}/home-manager.nix"
|
||||||
|
./arduino
|
||||||
|
./barrier
|
||||||
|
./browsers
|
||||||
|
./dav
|
||||||
|
./fonts
|
||||||
|
./git
|
||||||
|
./gotify
|
||||||
|
./gpg
|
||||||
|
./idasen
|
||||||
|
./mail
|
||||||
|
./minidisc
|
||||||
|
./mpd
|
||||||
|
./msg
|
||||||
|
./music
|
||||||
|
./neovim
|
||||||
|
./pass
|
||||||
|
./rss
|
||||||
|
./snapcast
|
||||||
|
./sound
|
||||||
|
./ssh
|
||||||
|
./tmux
|
||||||
|
./vitetris
|
||||||
|
./wallets
|
||||||
|
./zsh
|
||||||
|
];
|
||||||
|
|
||||||
|
home.persistence = {
|
||||||
|
"/persist/system/${config.home.homeDirectory}" = {
|
||||||
|
directories = [
|
||||||
|
".abook"
|
||||||
|
".bitmonero"
|
||||||
|
".cache"
|
||||||
|
".config/Nextcloud"
|
||||||
|
".config/chromium"
|
||||||
|
".config/whatsapp-for-linux"
|
||||||
|
".gnupg/private-keys-v1.d"
|
||||||
|
".local/share/keyrings"
|
||||||
|
".local/share/mpd"
|
||||||
|
".local/share/webkitgtk"
|
||||||
|
".mozilla"
|
||||||
|
".newsboat"
|
||||||
|
".vdirsyncer"
|
||||||
|
];
|
||||||
|
files = [
|
||||||
|
".gnupg/pubring.kbx"
|
||||||
|
".gnupg/trustdb.gpg"
|
||||||
|
".mailsynclastrun"
|
||||||
|
".ssh/known_hosts"
|
||||||
|
".zsh_history"
|
||||||
|
];
|
||||||
|
allowOther = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
"/persist/user/${config.home.homeDirectory}" = {
|
||||||
|
directories = [
|
||||||
|
".config/Signal"
|
||||||
|
".config/Element"
|
||||||
|
".local/share/TelegramDesktop"
|
||||||
|
".local/share/dino"
|
||||||
|
".local/share/Bisq"
|
||||||
|
".password-store"
|
||||||
|
".walletwasabi"
|
||||||
|
"Calendars"
|
||||||
|
"Contacts"
|
||||||
|
"Documents"
|
||||||
|
"Downloads"
|
||||||
|
"Images"
|
||||||
|
"Maildir"
|
||||||
|
"Monero"
|
||||||
|
"Nextcloud"
|
||||||
|
"code"
|
||||||
|
"configs"
|
||||||
|
"misc"
|
||||||
|
"workspace"
|
||||||
|
];
|
||||||
|
files = [ ];
|
||||||
|
allowOther = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.sessionVariables = {
|
||||||
|
EDITOR = "${pkgs.neovim}/bin/nvim";
|
||||||
|
VISUAL = "${pkgs.neovim}/bin/nvim";
|
||||||
|
BROWSER = "${pkgs.firefox}/bin/firefox";
|
||||||
|
# OPENER = "todo"; # todo
|
||||||
|
TERMINAL = "${pkgs.alacritty}/bin/alacritty";
|
||||||
|
CM_LAUNCHER = "rofi"; # for clipmenu
|
||||||
|
LEDGER_FILE = "${config.home.homeDirectory}/finance/2021.journal";
|
||||||
|
QT_QPA_PLATFORMTHEME = "qt5ct";
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
R
|
||||||
|
acpi
|
||||||
|
android-tools
|
||||||
|
ansible
|
||||||
|
bind.dnsutils
|
||||||
|
calibre
|
||||||
|
docker-compose
|
||||||
|
file
|
||||||
|
gimp
|
||||||
|
gnumake
|
||||||
|
htop
|
||||||
|
jq
|
||||||
|
killall
|
||||||
|
libnotify
|
||||||
|
libreoffice
|
||||||
|
lxqt.pcmanfm-qt
|
||||||
|
mosh
|
||||||
|
mpv
|
||||||
|
neofetch
|
||||||
|
networkmanagerapplet
|
||||||
|
nextcloud-client
|
||||||
|
pandoc
|
||||||
|
pv
|
||||||
|
ripgrep
|
||||||
|
signify
|
||||||
|
sxiv
|
||||||
|
telnet
|
||||||
|
virt-manager
|
||||||
|
wget
|
||||||
|
];
|
||||||
|
|
||||||
|
services.syncthing.enable = true;
|
||||||
|
|
||||||
|
services.kdeconnect.enable = true;
|
||||||
|
|
||||||
|
programs.bat = {
|
||||||
|
enable = true;
|
||||||
|
config = { theme = "gruvbox-dark"; };
|
||||||
|
};
|
||||||
|
|
||||||
|
programs.fzf = {
|
||||||
|
enable = true;
|
||||||
|
enableZshIntegration = true;
|
||||||
|
# defaultOptions = [
|
||||||
|
# "--preview --preview 'bat --color=always --style=header,grid --line-range :300 {}'"
|
||||||
|
# ];
|
||||||
|
tmux.enableShellIntegration = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.gnome-keyring = {
|
||||||
|
enable = true;
|
||||||
|
components = [ "secrets" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nextcloud-client = {
|
||||||
|
enable = true;
|
||||||
|
startInBackground = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
xdg.mimeApps = {
|
||||||
|
enable = true;
|
||||||
|
defaultApplications = {
|
||||||
|
"x-scheme-handler/http" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/https" = " firefox.desktop";
|
||||||
|
"x-scheme-handler/chrome" = " firefox.desktop";
|
||||||
|
"text/html" = "firefox.desktop";
|
||||||
|
"application/x-extension-htm" = "firefox.desktop";
|
||||||
|
"application/x-extension-html" = "firefox.desktop";
|
||||||
|
"application/x-extension-shtml" = "firefox.desktop";
|
||||||
|
"application/xhtml+xml" = "firefox.desktop";
|
||||||
|
"application/x-extension-xhtml" = "firefox.desktop";
|
||||||
|
"application/x-extension-xht" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
||||||
|
};
|
||||||
|
associations.added = {
|
||||||
|
"x-scheme-handler/http" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/https" = " firefox.desktop";
|
||||||
|
"x-scheme-handler/chrome" = " firefox.desktop";
|
||||||
|
"text/html" = "firefox.desktop";
|
||||||
|
"application/x-extension-htm" = "firefox.desktop";
|
||||||
|
"application/x-extension-html" = "firefox.desktop";
|
||||||
|
"application/x-extension-shtml" = "firefox.desktop";
|
||||||
|
"application/xhtml+xml" = "firefox.desktop";
|
||||||
|
"application/x-extension-xhtml" = "firefox.desktop";
|
||||||
|
"application/x-extension-xht" = "firefox.desktop";
|
||||||
|
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
dconf.settings = {
|
||||||
|
"org/virt-manager/virt-manager/connections" = {
|
||||||
|
"autoconnect" = [ "qemu:///system" ];
|
||||||
|
"uris" = [ "qemu:///system" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
home.stateVersion = "21.11";
|
||||||
|
}
|
206
home/trantor.nix
206
home/trantor.nix
|
@ -1,212 +1,10 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
let
|
{
|
||||||
impermanence = builtins.fetchTarball {
|
|
||||||
url = "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
|
||||||
};
|
|
||||||
|
|
||||||
in {
|
|
||||||
# Let Home Manager install and manage itself.
|
|
||||||
# programs.home-manager.enable = true;
|
|
||||||
|
|
||||||
# Home Manager needs a bit of information about you and the
|
|
||||||
# paths it should manage.
|
|
||||||
home.username = "rilla";
|
|
||||||
home.homeDirectory = "/home/rilla";
|
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
"${impermanence}/home-manager.nix"
|
./nixos-common.nix
|
||||||
# ./desktop-sway
|
|
||||||
./alacritty/trantor.nix
|
./alacritty/trantor.nix
|
||||||
./arduino
|
|
||||||
./barrier
|
|
||||||
./browsers
|
|
||||||
./dav
|
|
||||||
./desktop-xmonad/trantor.nix
|
./desktop-xmonad/trantor.nix
|
||||||
./fonts
|
|
||||||
./git
|
|
||||||
./gotify
|
|
||||||
./gpg
|
|
||||||
./idasen
|
|
||||||
./mail
|
|
||||||
./minidisc
|
|
||||||
./mpd
|
|
||||||
./msg
|
|
||||||
./music
|
|
||||||
./neovim
|
|
||||||
./pass
|
|
||||||
./rss
|
|
||||||
./snapcast
|
|
||||||
./sound
|
|
||||||
./ssh
|
|
||||||
./theming/trantor.nix
|
./theming/trantor.nix
|
||||||
./tmux
|
|
||||||
./vitetris
|
|
||||||
./wallets
|
|
||||||
./zsh
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home.persistence."/persist/system/${config.home.homeDirectory}" = {
|
|
||||||
directories = [
|
|
||||||
".abook"
|
|
||||||
".bitmonero"
|
|
||||||
".cache"
|
|
||||||
".config/Nextcloud"
|
|
||||||
".config/chromium"
|
|
||||||
".config/whatsapp-for-linux"
|
|
||||||
".gnupg/private-keys-v1.d"
|
|
||||||
".local/share/keyrings"
|
|
||||||
".local/share/mpd"
|
|
||||||
".local/share/webkitgtk"
|
|
||||||
".mozilla"
|
|
||||||
".newsboat"
|
|
||||||
".vdirsyncer"
|
|
||||||
];
|
|
||||||
files = [
|
|
||||||
".gnupg/pubring.kbx"
|
|
||||||
".gnupg/trustdb.gpg"
|
|
||||||
".mailsynclastrun"
|
|
||||||
".ssh/known_hosts"
|
|
||||||
".zsh_history"
|
|
||||||
];
|
|
||||||
allowOther = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.persistence."/persist/user/${config.home.homeDirectory}" = {
|
|
||||||
directories = [
|
|
||||||
".config/Signal"
|
|
||||||
".config/Element"
|
|
||||||
".local/share/TelegramDesktop"
|
|
||||||
".local/share/dino"
|
|
||||||
".local/share/Bisq"
|
|
||||||
".password-store"
|
|
||||||
".walletwasabi"
|
|
||||||
"Calendars"
|
|
||||||
"Contacts"
|
|
||||||
"Documents"
|
|
||||||
"Downloads"
|
|
||||||
"Images"
|
|
||||||
"Maildir"
|
|
||||||
"Monero"
|
|
||||||
"Nextcloud"
|
|
||||||
"code"
|
|
||||||
"configs"
|
|
||||||
"misc"
|
|
||||||
"workspace"
|
|
||||||
];
|
|
||||||
files = [ ];
|
|
||||||
allowOther = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
home.sessionVariables = {
|
|
||||||
EDITOR = "${pkgs.neovim}/bin/nvim";
|
|
||||||
VISUAL = "${pkgs.neovim}/bin/nvim";
|
|
||||||
BROWSER = "${pkgs.firefox}/bin/firefox";
|
|
||||||
# OPENER = "todo"; # todo
|
|
||||||
TERMINAL = "${pkgs.alacritty}/bin/alacritty";
|
|
||||||
CM_LAUNCHER = "rofi"; # for clipmenu
|
|
||||||
LEDGER_FILE = "${config.home.homeDirectory}/finance/2021.journal";
|
|
||||||
QT_QPA_PLATFORMTHEME = "qt5ct";
|
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
|
||||||
R
|
|
||||||
acpi
|
|
||||||
android-tools
|
|
||||||
ansible
|
|
||||||
bind.dnsutils
|
|
||||||
calibre
|
|
||||||
docker-compose
|
|
||||||
file
|
|
||||||
gimp
|
|
||||||
gnumake
|
|
||||||
htop
|
|
||||||
jq
|
|
||||||
killall
|
|
||||||
libnotify
|
|
||||||
libreoffice
|
|
||||||
lxqt.pcmanfm-qt
|
|
||||||
mosh
|
|
||||||
mpv
|
|
||||||
neofetch
|
|
||||||
networkmanagerapplet
|
|
||||||
nextcloud-client
|
|
||||||
pandoc
|
|
||||||
pv
|
|
||||||
ripgrep
|
|
||||||
signify
|
|
||||||
sxiv
|
|
||||||
telnet
|
|
||||||
virt-manager
|
|
||||||
wget
|
|
||||||
];
|
|
||||||
|
|
||||||
services.syncthing.enable = true;
|
|
||||||
|
|
||||||
services.kdeconnect.enable = true;
|
|
||||||
|
|
||||||
programs.bat = {
|
|
||||||
enable = true;
|
|
||||||
config = { theme = "gruvbox-dark"; };
|
|
||||||
};
|
|
||||||
|
|
||||||
programs.fzf = {
|
|
||||||
enable = true;
|
|
||||||
enableZshIntegration = true;
|
|
||||||
# defaultOptions = [
|
|
||||||
# "--preview --preview 'bat --color=always --style=header,grid --line-range :300 {}'"
|
|
||||||
# ];
|
|
||||||
tmux.enableShellIntegration = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.gnome-keyring = {
|
|
||||||
enable = true;
|
|
||||||
components = [ "secrets" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
services.nextcloud-client = {
|
|
||||||
enable = true;
|
|
||||||
startInBackground = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
xdg.mimeApps = {
|
|
||||||
enable = true;
|
|
||||||
defaultApplications = {
|
|
||||||
"x-scheme-handler/http" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/https" = " firefox.desktop";
|
|
||||||
"x-scheme-handler/chrome" = " firefox.desktop";
|
|
||||||
"text/html" = "firefox.desktop";
|
|
||||||
"application/x-extension-htm" = "firefox.desktop";
|
|
||||||
"application/x-extension-html" = "firefox.desktop";
|
|
||||||
"application/x-extension-shtml" = "firefox.desktop";
|
|
||||||
"application/xhtml+xml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xhtml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xht" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
|
||||||
};
|
|
||||||
associations.added = {
|
|
||||||
"x-scheme-handler/http" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/https" = " firefox.desktop";
|
|
||||||
"x-scheme-handler/chrome" = " firefox.desktop";
|
|
||||||
"text/html" = "firefox.desktop";
|
|
||||||
"application/x-extension-htm" = "firefox.desktop";
|
|
||||||
"application/x-extension-html" = "firefox.desktop";
|
|
||||||
"application/x-extension-shtml" = "firefox.desktop";
|
|
||||||
"application/xhtml+xml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xhtml" = "firefox.desktop";
|
|
||||||
"application/x-extension-xht" = "firefox.desktop";
|
|
||||||
"x-scheme-handler/tg" = "userapp-Telegram Desktop.desktop";
|
|
||||||
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
dconf.settings = {
|
|
||||||
"org/virt-manager/virt-manager/connections" = {
|
|
||||||
"autoconnect" = [ "qemu:///system" ];
|
|
||||||
"uris" = [ "qemu:///system" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
home.stateVersion = "21.11";
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,12 @@
|
||||||
{ config, pkgs, ... }:
|
{ config, pkgs, ... }:
|
||||||
|
|
||||||
{
|
let
|
||||||
|
impermanence = builtins.fetchTarball {
|
||||||
|
url = "https://github.com/nix-community/impermanence/archive/master.tar.gz";
|
||||||
|
};
|
||||||
|
in {
|
||||||
|
imports = [ "${impermanence}/nixos.nix" ];
|
||||||
|
|
||||||
nixpkgs.config = {
|
nixpkgs.config = {
|
||||||
packageOverrides = pkgs: {
|
packageOverrides = pkgs: {
|
||||||
nur = import (builtins.fetchTarball
|
nur = import (builtins.fetchTarball
|
||||||
|
@ -206,6 +212,76 @@
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
|
fileSystems = {
|
||||||
|
"/" = {
|
||||||
|
device = "tmpfs";
|
||||||
|
fsType = "tmpfs";
|
||||||
|
options = [ "defaults" "size=2G" "mode=755" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/persist/system" = {
|
||||||
|
device = "/dev/mapper/system";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=persist" "compress=zstd" ];
|
||||||
|
neededForBoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
"/persist/user" = {
|
||||||
|
device = "/dev/mapper/user";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=persist" "compress=zstd" ];
|
||||||
|
neededForBoot = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
"/nix" = {
|
||||||
|
device = "/dev/mapper/system";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=nix" "compress=zstd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/boot" = {
|
||||||
|
device = "/dev/mapper/system";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=boot" "compress=zstd" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
"/swap" = {
|
||||||
|
device = "/dev/mapper/system";
|
||||||
|
fsType = "btrfs";
|
||||||
|
options = [ "subvol=swap" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
swapDevices = [{ device = "/swap/swapfile"; }];
|
||||||
|
|
||||||
|
environment.persistence = {
|
||||||
|
"/persist/system" = {
|
||||||
|
directories = [
|
||||||
|
"/var/log"
|
||||||
|
"/var/lib/bluetooth"
|
||||||
|
"/var/lib/systemd/coredump"
|
||||||
|
"/var/lib/docker"
|
||||||
|
];
|
||||||
|
files = [
|
||||||
|
"/etc/machine-id"
|
||||||
|
#"/etc/nix/id_rsa"
|
||||||
|
"/etc/ssh/ssh_host_ed25519_key"
|
||||||
|
"/etc/ssh/ssh_host_ed25519_key.pub"
|
||||||
|
"/etc/ssh/ssh_host_rsa_key"
|
||||||
|
"/etc/ssh/ssh_host_rsa_key.pub"
|
||||||
|
"/etc/wireguard/wg0"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"/persist/user" = {
|
||||||
|
directories = [
|
||||||
|
"/etc/NetworkManager/system-connections"
|
||||||
|
"/etc/nixos"
|
||||||
|
"/var/lib/libvirt"
|
||||||
|
];
|
||||||
|
files = [ "/etc/wireguard/wg0" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
# Open ports in the firewall.
|
# Open ports in the firewall.
|
||||||
# networking.firewall.allowedTCPPorts = [ ... ];
|
# networking.firewall.allowedTCPPorts = [ ... ];
|
||||||
#
|
#
|
||||||
|
|
88
trantor.nix
88
trantor.nix
|
@ -13,104 +13,34 @@ let
|
||||||
"https://github.com/nix-community/home-manager/archive/release-21.11.tar.gz";
|
"https://github.com/nix-community/home-manager/archive/release-21.11.tar.gz";
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
imports = [ # Include the results of the hardware scan.
|
imports = [
|
||||||
./nixos/hardware-configuration/trantor.nix
|
./nixos/hardware-configuration/trantor.nix
|
||||||
./nixos/common.nix
|
./nixos/common.nix
|
||||||
"${home-manager}/nixos"
|
"${home-manager}/nixos"
|
||||||
"${impermanence}/nixos.nix"
|
|
||||||
];
|
];
|
||||||
|
|
||||||
home-manager.users.rilla = import home/trantor.nix;
|
home-manager.users.rilla = import home/trantor.nix;
|
||||||
|
|
||||||
fileSystems = {
|
fileSystems = {
|
||||||
"/" = {
|
|
||||||
device = "tmpfs";
|
|
||||||
fsType = "tmpfs";
|
|
||||||
options = [ "defaults" "size=2G" "mode=755" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/persist/system" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=persist" "compress=zstd" ];
|
|
||||||
neededForBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"/persist/user" = {
|
|
||||||
device = "/dev/mapper/user";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=persist" "compress=zstd" ];
|
|
||||||
neededForBoot = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
"/nix" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=nix" "compress=zstd" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/boot" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=boot" "compress=zstd" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/boot/efi" = {
|
"/boot/efi" = {
|
||||||
device = "/dev/disk/by-uuid/0BFA-9A66";
|
device = "/dev/disk/by-uuid/0BFA-9A66";
|
||||||
fsType = "vfat";
|
fsType = "vfat";
|
||||||
};
|
};
|
||||||
|
|
||||||
"/swap" = {
|
|
||||||
device = "/dev/mapper/system";
|
|
||||||
fsType = "btrfs";
|
|
||||||
options = [ "subvol=swap" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
"/home/rilla/music" = {
|
"/home/rilla/music" = {
|
||||||
device = "narwhal:/music";
|
device = "narwhal:/music";
|
||||||
fsType = "nfs";
|
fsType = "nfs";
|
||||||
options = [
|
options =
|
||||||
"nfsvers=4"
|
[ "nfsvers=4" "x-systemd.automount" "x-systemd.idle-timeout=1min" ];
|
||||||
"x-systemd.automount"
|
|
||||||
"x-systemd.idle-timeout=1min"
|
|
||||||
];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# "/home/rilla/calibre" = {
|
"/home/rilla/calibre" = {
|
||||||
# device = "narwhal:/calibre";
|
device = "narwhal:/calibre";
|
||||||
# fsType = "nfs";
|
fsType = "nfs";
|
||||||
# options = [
|
options =
|
||||||
# "nfsvers=4"
|
[ "nfsvers=4" "x-systemd.automount" "x-systemd.idle-timeout=1min" ];
|
||||||
# "noauto"
|
|
||||||
# "x-systemd.automount"
|
|
||||||
# "x-systemd.idle-timeout=1min"
|
|
||||||
# ];
|
|
||||||
# };
|
|
||||||
};
|
|
||||||
|
|
||||||
swapDevices = [{ device = "/swap/swapfile"; }];
|
|
||||||
|
|
||||||
environment.persistence = {
|
|
||||||
"/persist/system" = {
|
|
||||||
directories = [
|
|
||||||
"/var/log"
|
|
||||||
"/var/lib/bluetooth"
|
|
||||||
"/var/lib/systemd/coredump"
|
|
||||||
"/var/lib/docker"
|
|
||||||
];
|
|
||||||
files = [
|
|
||||||
"/etc/machine-id"
|
|
||||||
"/etc/ssh/ssh_host_ed25519_key"
|
|
||||||
"/etc/ssh/ssh_host_ed25519_key.pub"
|
|
||||||
"/etc/ssh/ssh_host_rsa_key"
|
|
||||||
"/etc/ssh/ssh_host_rsa_key.pub"
|
|
||||||
# "/etc/wireguard/wg0"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
"/persist/user" = {
|
|
||||||
directories =
|
|
||||||
[ "/etc/NetworkManager/system-connections" "/var/lib/libvirt" ];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.variables.NIXOS_CONFIG =
|
environment.variables.NIXOS_CONFIG =
|
||||||
|
|
Loading…
Reference in New Issue