mirror of
https://codeberg.org/hyperreal/home-manager
synced 2024-11-25 11:23:43 +01:00
Update
This commit is contained in:
parent
475c8f2201
commit
63057f73af
@ -88,7 +88,7 @@ zplug load
|
||||
# ENVIRONMENT VARS
|
||||
# -----------------------------------------------------------------------------
|
||||
export SHELL=/usr/bin/zsh
|
||||
export DOOMDIR="${HOME}/nextcloud/doom"
|
||||
export DOOMDIR="${HOME}/shared/doom"
|
||||
export LS_COLORS=$(vivid generate catppuccin-mocha)
|
||||
export PAGER="less -X"
|
||||
export MANWIDTH="88"
|
||||
@ -147,3 +147,6 @@ add-zsh-hook -Uz chpwd() { print -Pn "\e]2;%m:%2~\a" }
|
||||
|
||||
# starship.rs
|
||||
eval "$(starship init zsh)"
|
||||
|
||||
# direnv
|
||||
eval "$(direnv hook zsh)"
|
||||
|
214
home-new.nix
Normal file
214
home-new.nix
Normal file
@ -0,0 +1,214 @@
|
||||
{ config, pkgs, ... }:
|
||||
|
||||
{
|
||||
# Home Manager needs a bit of information about you and the paths it should
|
||||
# manage.
|
||||
home.username = "jas";
|
||||
home.homeDirectory = "/home/jas";
|
||||
|
||||
home.stateVersion = "24.05"; # Please read the comment before changing.
|
||||
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
home.packages = with pkgs; [
|
||||
arp-scan
|
||||
autossh
|
||||
bat
|
||||
catppuccin-kde
|
||||
diskonaut
|
||||
doggo
|
||||
dust
|
||||
fblog
|
||||
fd
|
||||
gcc
|
||||
glances
|
||||
glow
|
||||
gum
|
||||
html-tidy
|
||||
hyfetch
|
||||
hyperfine
|
||||
just
|
||||
kdePackages.kasts
|
||||
kdePackages.yakuake
|
||||
kdePackages.tokodon
|
||||
kdePackages.kpeople
|
||||
kdePackages.kbackup
|
||||
kdePackages.kontrast
|
||||
lagrange
|
||||
lsd
|
||||
nmap
|
||||
nodejs
|
||||
nodePackages.js-beautify
|
||||
nodePackages.npm
|
||||
nodePackages.prettier
|
||||
procs
|
||||
ripgrep
|
||||
rustscan
|
||||
starship
|
||||
stylelint
|
||||
tealdeer
|
||||
vivid
|
||||
wl-clipboard
|
||||
wthrr
|
||||
yazi
|
||||
zellij
|
||||
];
|
||||
|
||||
# Home Manager is pretty good at managing dotfiles. The primary way to manage
|
||||
# plain files is through 'home.file'.
|
||||
home.file = {
|
||||
# # Building this configuration will create a copy of 'dotfiles/screenrc' in
|
||||
# # the Nix store. Activating the configuration will then make '~/.screenrc' a
|
||||
# # symlink to the Nix store copy.
|
||||
# ".screenrc".source = dotfiles/screenrc;
|
||||
".justfile".source = dotfiles/just/.justfile;
|
||||
".zshrc".source = dotfiles/zsh/.zshrc;
|
||||
".zshrc.d".source = dotfiles/zsh/.zshrc.d;
|
||||
".zpath".source = dotfiles/zsh/.zpath;
|
||||
".zshenv".source = dotfiles/zsh/.zshenv;
|
||||
".config/zellij".source = dotfiles/config/.config/zellij;
|
||||
".config/starship.toml".source = dotfiles/config/.config/starship.toml;
|
||||
};
|
||||
|
||||
# Let Home Manager install and manage itself.
|
||||
programs.home-manager.enable = true;
|
||||
|
||||
# borgmatic config
|
||||
programs.borgmatic = {
|
||||
enable = true;
|
||||
backups = {
|
||||
home = {
|
||||
location = {
|
||||
sourceDirectories = [
|
||||
"/home/jas/.config"
|
||||
"/home/jas/.config-pt"
|
||||
"/home/jas/.face"
|
||||
"/home/jas/.face.icon"
|
||||
"/home/jas/.icons"
|
||||
"/home/jas/.librewolf"
|
||||
"/home/jas/.local/share/color-schemes"
|
||||
"/home/jas/.local/share/direnv"
|
||||
"/home/jas/.local/share/dolphin"
|
||||
"/home/jas/.local/share/klipper"
|
||||
"/home/jas/.local/share/konsole"
|
||||
"/home/jas/.local/share/Trash"
|
||||
"/home/jas/.mozilla"
|
||||
"/home/jas/.shellmarks"
|
||||
"/home/jas/.ssh"
|
||||
"/home/jas/.zsh_history"
|
||||
"/home/jas/dashy"
|
||||
"/home/jas/shared"
|
||||
];
|
||||
repositories = [ "/mnt/backup/moonshadow-home" ];
|
||||
};
|
||||
excludeHomeManagerSymlinks = true;
|
||||
storage.encryptionPasscommand = "${pkgs.password-store}/bin/pass borg-repo";
|
||||
retention = {
|
||||
keepDaily = 7;
|
||||
keepWeekly = 4;
|
||||
keepMonthly = 12;
|
||||
keepYearly = 4;
|
||||
};
|
||||
consistency = {
|
||||
checks = [
|
||||
{
|
||||
name = "repository";
|
||||
frequency = "2 weeks";
|
||||
}
|
||||
{
|
||||
name = "archives";
|
||||
frequency = "4 weeks";
|
||||
}
|
||||
{
|
||||
name = "data";
|
||||
frequency = "6 weeks";
|
||||
}
|
||||
{
|
||||
name = "extract";
|
||||
frequency = "6 weeks";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
# git config
|
||||
programs.git = {
|
||||
enable = true;
|
||||
diff-so-fancy = {
|
||||
enable = true;
|
||||
pagerOpts = ["--tabs=4" "-RFX"];
|
||||
};
|
||||
userName = "Jeffrey Serio";
|
||||
userEmail = "hyperreal@moonshadow.dev";
|
||||
extraConfig = {
|
||||
core = {
|
||||
editor = "emacsclient";
|
||||
};
|
||||
init = {
|
||||
defaultBranch = "main";
|
||||
};
|
||||
pull = {
|
||||
rebase = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# ssh config
|
||||
programs.ssh.enable = true;
|
||||
programs.ssh.matchBlocks = {
|
||||
"nixos.tail7dd4a.ts.net" = {
|
||||
hostname = "nixos.tail7dd4a.ts.net";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"aux-vm" = {
|
||||
hostname = "10.0.0.26";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"bttracker.nirn.quest" = {
|
||||
hostname = "bttracker.nirn.quest";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"hyperreal.coffee" = {
|
||||
hostname = "hyperreal.coffee";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"qbittorrent" = {
|
||||
hostname = "10.0.0.82";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"truenas" = {
|
||||
hostname = "10.0.0.81";
|
||||
user = "admin";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
|
||||
services.kdeconnect = {
|
||||
enable = true;
|
||||
indicator = true;
|
||||
};
|
||||
|
||||
xdg.userDirs = {
|
||||
enable = true;
|
||||
createDirectories = true;
|
||||
desktop = "/home/jas/desktop";
|
||||
documents = "/home/jas/shared/documents";
|
||||
download = "/home/jas/downloads";
|
||||
pictures = "/home/jas/shared/pictures";
|
||||
publicShare = "/home/jas/shared";
|
||||
}
|
||||
}
|
45
home.nix
45
home.nix
@ -11,7 +11,6 @@
|
||||
# The home.packages option allows you to install Nix packages into your
|
||||
# environment.
|
||||
home.packages = with pkgs; [
|
||||
ansible
|
||||
arp-scan
|
||||
autossh
|
||||
bat
|
||||
@ -21,13 +20,8 @@
|
||||
fblog
|
||||
fd
|
||||
gcc
|
||||
glances
|
||||
glow
|
||||
go
|
||||
gomodifytags
|
||||
gopls
|
||||
gore
|
||||
gotests
|
||||
gotools
|
||||
gum
|
||||
html-tidy
|
||||
hyfetch
|
||||
@ -42,10 +36,8 @@
|
||||
nodePackages.prettier
|
||||
procs
|
||||
ripgrep
|
||||
rustc
|
||||
rustscan
|
||||
starship
|
||||
stow
|
||||
stylelint
|
||||
tealdeer
|
||||
vivid
|
||||
@ -98,21 +90,11 @@
|
||||
# ssh config
|
||||
programs.ssh.enable = true;
|
||||
programs.ssh.matchBlocks = {
|
||||
"hyperreal.coffee" = {
|
||||
hostname = "hyperreal.coffee";
|
||||
"nixos.tail7dd4a.ts.net" = {
|
||||
hostname = "nixos.tail7dd4a.ts.net";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"homelab" = {
|
||||
hostname = "10.0.0.240";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"truenas" = {
|
||||
hostname = "10.0.0.81";
|
||||
user = "admin";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"aux-vm" = {
|
||||
hostname = "10.0.0.26";
|
||||
user = "jas";
|
||||
@ -123,5 +105,26 @@
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"hyperreal.coffee" = {
|
||||
hostname = "hyperreal.coffee";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"qbittorrent" = {
|
||||
hostname = "10.0.0.82";
|
||||
user = "jas";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
"truenas" = {
|
||||
hostname = "10.0.0.81";
|
||||
user = "admin";
|
||||
identityFile = "~/.ssh/id_ed25519";
|
||||
};
|
||||
};
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
enableZshIntegration = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user