refactor
This commit is contained in:
parent
de4de77a87
commit
b4cf61bc23
25 changed files with 287 additions and 100 deletions
|
|
@ -1,11 +1,52 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./modules/cava.nix
|
||||
./modules/dunst.nix
|
||||
./modules/fish.nix
|
||||
./modules/ghostty.nix
|
||||
./modules/i3.nix
|
||||
./modules/lazygit.nix
|
||||
./modules/nvim.nix
|
||||
./modules/picom.nix
|
||||
./modules/polybar.nix
|
||||
./modules/rofi.nix
|
||||
./modules/starship.nix
|
||||
./modules/systemd.nix
|
||||
./modules/zellij.nix
|
||||
];
|
||||
|
||||
home.username = "cobray";
|
||||
home.homeDirectory = "/home/cobray";
|
||||
home.enableNixpkgsReleaseCheck = false;
|
||||
programs.home-manager.enable = true;
|
||||
home.packages = with pkgs; [
|
||||
];
|
||||
home.stateVersion = "24.11";
|
||||
programs.home-manager.enable = true;
|
||||
home.enableNixpkgsReleaseCheck = false;
|
||||
|
||||
home.packages = with pkgs; [
|
||||
coreutils
|
||||
gnused
|
||||
gnugrep
|
||||
findutils
|
||||
htop
|
||||
btop
|
||||
nvtop
|
||||
arandr
|
||||
nitrogen
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"user-dirs.dirs".source = lib.mkIf (builtins.pathExists "${config.home.homeDirectory}/.config/user-dirs.dirs")
|
||||
(config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/user-dirs.dirs");
|
||||
"user-dirs.locale".source = lib.mkIf (builtins.pathExists "${config.home.homeDirectory}/.config/user-dirs.locale")
|
||||
(config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/user-dirs.locale");
|
||||
"mimeapps.list".source = lib.mkIf (builtins.pathExists "${config.home.homeDirectory}/.config/mimeapps.list")
|
||||
(config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/mimeapps.list");
|
||||
"systemd".source = lib.mkIf (builtins.pathExists "${config.home.homeDirectory}/.config/systemd")
|
||||
(config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/systemd");
|
||||
"systemd".recursive = true;
|
||||
"environment.d".source = lib.mkIf (builtins.pathExists "${config.home.homeDirectory}/.config/environment.d")
|
||||
(config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/environment.d");
|
||||
"environment.d".recursive = true;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
14
home-manager/modules/cava.nix
Normal file
14
home-manager/modules/cava.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
cava
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"cava" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/cava";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
13
home-manager/modules/dunst.nix
Normal file
13
home-manager/modules/dunst.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
dunst
|
||||
];
|
||||
xdg.configFile = {
|
||||
"dunst" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/dunst";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
33
home-manager/modules/fish.nix
Normal file
33
home-manager/modules/fish.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
xdg.configFile = {
|
||||
"fish/config.fish".source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/config.fish";
|
||||
"fish/fish_plugins".source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/fish_plugins";
|
||||
"fish/fish_variables".source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/fish_variables";
|
||||
"fish/themes" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/themes";
|
||||
recursive = true;
|
||||
};
|
||||
"fish/functions" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/functions";
|
||||
recursive = true;
|
||||
};
|
||||
"fish/completions" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/completions";
|
||||
recursive = true;
|
||||
};
|
||||
"fish/conf.d" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/fish/conf.d";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
home.packages = with pkgs; [
|
||||
starship
|
||||
fzf
|
||||
bat
|
||||
eza
|
||||
fd
|
||||
ripgrep
|
||||
];
|
||||
}
|
||||
10
home-manager/modules/ghostty.nix
Normal file
10
home-manager/modules/ghostty.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
xdg.configFile = {
|
||||
"ghostty" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/ghostty";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
18
home-manager/modules/i3.nix
Normal file
18
home-manager/modules/i3.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
dmenu
|
||||
i3status
|
||||
i3lock
|
||||
i3blocks
|
||||
feh
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"i3" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/i3";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/modules/lazygit.nix
Normal file
14
home-manager/modules/lazygit.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
lazygit
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"lazygit" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/lazygit";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
19
home-manager/modules/nvim.nix
Normal file
19
home-manager/modules/nvim.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
neovim
|
||||
ripgrep
|
||||
fd
|
||||
nodejs
|
||||
gcc
|
||||
];
|
||||
|
||||
xdg.configFile."nvim" = {
|
||||
source = builtins.fetchGit {
|
||||
url = "https://github.com/alsaiduq-lab/dotfiles.git";
|
||||
ref = "dev";
|
||||
}
|
||||
recursive = true;
|
||||
};
|
||||
}
|
||||
14
home-manager/modules/picom.nix
Normal file
14
home-manager/modules/picom.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
picom
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"picom" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/picom";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/modules/polybar.nix
Normal file
14
home-manager/modules/polybar.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
polybar
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"polybar" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/polybar";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/modules/rofi.nix
Normal file
14
home-manager/modules/rofi.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
rofi
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"rofi" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/rofi";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
8
home-manager/modules/starship.nix
Normal file
8
home-manager/modules/starship.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
starship
|
||||
];
|
||||
xdg.configFile."starship.toml".source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/starship.toml";
|
||||
}
|
||||
36
home-manager/modules/systemd.nix
Normal file
36
home-manager/modules/systemd.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
{
|
||||
environment.systemPackages = with pkgs; [
|
||||
autossh
|
||||
];
|
||||
|
||||
systemd.services.autossh-redbot = {
|
||||
description = "Persistent SSH Tunnel to server";
|
||||
after = [ "network-online.target" ];
|
||||
wants = [ "network-online.target" ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
User = "cobray";
|
||||
Group = "cobray";
|
||||
Restart = "always";
|
||||
RestartSec = 30;
|
||||
EnvironmentFile = "/home/cobray/.secrets/autossh-redbot.conf";
|
||||
Environment = [
|
||||
"AUTOSSH_GATETIME=0"
|
||||
"AUTOSSH_POLL=60"
|
||||
"AUTOSSH_FIRST_POLL=30"
|
||||
"AUTOSSH_PORT=0"
|
||||
];
|
||||
ExecStart = ''
|
||||
${pkgs.autossh}/bin/autossh -M 0 -N \
|
||||
-o "ServerAliveInterval 60" \
|
||||
-o "ServerAliveCountMax 3" \
|
||||
-o "ExitOnForwardFailure=yes" \
|
||||
-o "ConnectTimeout=10" \
|
||||
-R "0.0.0.0:$REMOTE_PORT:localhost:$LOCAL_PORT" \
|
||||
root@$REMOTE_HOST
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home-manager/modules/zellij.nix
Normal file
14
home-manager/modules/zellij.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, lib, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
zellij
|
||||
];
|
||||
|
||||
xdg.configFile = {
|
||||
"zellij" = {
|
||||
source = config.lib.file.mkOutOfStoreSymlink "${config.home.homeDirectory}/.config/zellij";
|
||||
recursive = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue