entirely vibed refactor
This commit is contained in:
parent
cea12431ff
commit
c343c52ab7
78 changed files with 884 additions and 1099 deletions
18
home/modules/programs/chromium.nix
Normal file
18
home/modules/programs/chromium.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
commandLineArgs = [
|
||||
"--enable-features=TouchpadOverscrollHistoryNavigation,VaapiVideoDecoder"
|
||||
];
|
||||
extensions = [
|
||||
{ id = "ddkjiahejlhfcafbddmgiahcphecmpfh"; }
|
||||
{ id = "nngceckbapebfimnlniiiahkandclblb"; }
|
||||
{ id = "mdjildafknihdffpkfmmpnpoiajfjnjd"; }
|
||||
{ id = "mnjggcdmjocbbbhaepdhchncahnbgone"; }
|
||||
{ id = "ijcpiojgefnkmcadacmacogglhjdjphj"; }
|
||||
{ id = "kbmfpngjjgdllneeigpgjifpgocmfgmb"; }
|
||||
{ id = "einpaelgookohagofgnnkcfjbkkgepnp"; }
|
||||
];
|
||||
};
|
||||
}
|
||||
8
home/modules/programs/direnv.nix
Normal file
8
home/modules/programs/direnv.nix
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
silent = true;
|
||||
nix-direnv.enable = true;
|
||||
};
|
||||
}
|
||||
4
home/modules/programs/discord.nix
Normal file
4
home/modules/programs/discord.nix
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.discord.enable = true;
|
||||
}
|
||||
10
home/modules/programs/fish.nix
Normal file
10
home/modules/programs/fish.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.fish = {
|
||||
enable = false;
|
||||
interactiveShellInit = ''
|
||||
set fish_greeting
|
||||
'';
|
||||
preferAbbrs = true;
|
||||
};
|
||||
}
|
||||
15
home/modules/programs/foot.nix
Normal file
15
home/modules/programs/foot.nix
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.foot = {
|
||||
enable = true;
|
||||
server.enable = true;
|
||||
settings = {
|
||||
main = {
|
||||
app-id = "footclient";
|
||||
workers = 32;
|
||||
};
|
||||
bell.system = "no";
|
||||
scrollback.lines = 100000;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
home/modules/programs/git.nix
Normal file
14
home/modules/programs/git.nix
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.git = {
|
||||
enable = true;
|
||||
settings = {
|
||||
user = {
|
||||
name = "alisceon";
|
||||
email = "alisceon@protonmail.com";
|
||||
};
|
||||
push.autoSetupRemote = true;
|
||||
init.defaultBranch = "main";
|
||||
};
|
||||
};
|
||||
}
|
||||
11
home/modules/programs/kitty.nix
Normal file
11
home/modules/programs/kitty.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
confirm_os_window_close = 0;
|
||||
enable_audio_bell = false;
|
||||
window_padding_width = 2;
|
||||
};
|
||||
};
|
||||
}
|
||||
7
home/modules/programs/nushell.nix
Normal file
7
home/modules/programs/nushell.nix
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.nushell = {
|
||||
enable = false;
|
||||
configFile.source = ../../conf/config.nu;
|
||||
};
|
||||
}
|
||||
12
home/modules/programs/rofi.nix
Normal file
12
home/modules/programs/rofi.nix
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
commands = import ../../../lib/commands.nix { inherit pkgs; };
|
||||
inherit (commands) term;
|
||||
in
|
||||
{
|
||||
programs.rofi = {
|
||||
enable = true;
|
||||
package = pkgs.rofi-unwrapped;
|
||||
terminal = term;
|
||||
};
|
||||
}
|
||||
71
home/modules/programs/ssh.nix
Normal file
71
home/modules/programs/ssh.nix
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.ssh = {
|
||||
enable = true;
|
||||
enableDefaultConfig = false;
|
||||
matchBlocks = {
|
||||
"*" = {
|
||||
forwardAgent = false;
|
||||
addKeysToAgent = "no";
|
||||
compression = false;
|
||||
serverAliveInterval = 0;
|
||||
serverAliveCountMax = 3;
|
||||
hashKnownHosts = false;
|
||||
userKnownHostsFile = "~/.ssh/known_hosts";
|
||||
controlMaster = "no";
|
||||
controlPath = "~/.ssh/master-%r@%n:%p";
|
||||
controlPersist = "no";
|
||||
};
|
||||
"alisceon-core" = {
|
||||
hostname = "core.alisceon.com";
|
||||
user = "opc";
|
||||
};
|
||||
"blogbox-2" = {
|
||||
hostname = "10.1.0.11";
|
||||
proxyJump = "alisceon-core";
|
||||
user = "opc";
|
||||
};
|
||||
"blogbox-1" = {
|
||||
hostname = "10.1.0.247";
|
||||
proxyJump = "alisceon-core";
|
||||
user = "opc";
|
||||
};
|
||||
"filurbox" = {
|
||||
hostname = "oci.malice.zone";
|
||||
user = "opc";
|
||||
};
|
||||
"dnspi" = {
|
||||
hostname = "10.40.0.2";
|
||||
user = "pi";
|
||||
};
|
||||
"nuc".hostname = "nuc.home.the.malice.zone";
|
||||
"tsla-exporter-bridge" = {
|
||||
hostname = "alma02.lab.the.malice.zone";
|
||||
user = "root";
|
||||
};
|
||||
"tsla-runner-boi" = {
|
||||
hostname = "alma03.lab.the.malice.zone";
|
||||
user = "root";
|
||||
};
|
||||
"tsla-nixos".hostname = "tesla-nixos.lab.the.malice.zone";
|
||||
"tsla-backups" = {
|
||||
hostname = "backups.lab.the.malice.zone";
|
||||
user = "root";
|
||||
};
|
||||
"tsla-books" = {
|
||||
hostname = "books.lab.the.malice.zone";
|
||||
user = "root";
|
||||
};
|
||||
"tower" = {
|
||||
forwardAgent = true;
|
||||
addKeysToAgent = "yes";
|
||||
hostname = "tower.home.the.malice.zone";
|
||||
};
|
||||
"electra" = {
|
||||
forwardAgent = true;
|
||||
addKeysToAgent = "yes";
|
||||
hostname = "electra.home.the.malice.zone";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
10
home/modules/programs/swaylock.nix
Normal file
10
home/modules/programs/swaylock.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.swaylock = {
|
||||
enable = true;
|
||||
settings = {
|
||||
ignore-empty-password = true;
|
||||
indicator-caps-lock = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
44
home/modules/programs/vscode.nix
Normal file
44
home/modules/programs/vscode.nix
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium.fhsWithPackages (
|
||||
ps: with ps; [ git ]
|
||||
);
|
||||
profiles.default = {
|
||||
userSettings = {
|
||||
"python.languageServer" = "None";
|
||||
"python.pyrefly.displayTypeErrors" = "force-on";
|
||||
"explorer.confirmDelete" = false;
|
||||
"explorer.confirmDragAndDrop" = false;
|
||||
"explorer.confirmPasteNative" = false;
|
||||
"git.confirmSync" = false;
|
||||
};
|
||||
extensions = [
|
||||
pkgs.vscode-extensions.ms-python.python
|
||||
pkgs.vscode-extensions.ms-python.debugpy
|
||||
pkgs.vscode-extensions.ms-vscode.cpptools
|
||||
pkgs.vscode-extensions.jnoortheen.nix-ide
|
||||
] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
|
||||
{
|
||||
name = "xonsh";
|
||||
publisher = "jnoortheen";
|
||||
version = "0.3.3";
|
||||
hash = "sha256-EdAjVzqvbiSm/hL/SeJIlfY1QocpQPyzv4RV84t4bbg=";
|
||||
}
|
||||
{
|
||||
name = "pyrefly";
|
||||
publisher = "meta";
|
||||
version = "0.52.0";
|
||||
hash = "sha256-vheW8D2jy3aTpAR/jsgw8Khj1z08GGmRaeYvL+UOXSI=";
|
||||
}
|
||||
{
|
||||
name = "chatgpt";
|
||||
publisher = "openai";
|
||||
version = "0.5.74";
|
||||
hash = "sha256-yR9oR3w4AkoWaQDPwSaQtrKL6IcXANaMfFiw6K/b5o0=";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
104
home/modules/programs/waybar.nix
Normal file
104
home/modules/programs/waybar.nix
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
commands = import ../../../lib/commands.nix { inherit pkgs; };
|
||||
inherit (commands) uwsm term;
|
||||
in
|
||||
{
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
systemd = {
|
||||
enable = true;
|
||||
target = "graphical-session.target";
|
||||
};
|
||||
settings.mainBar = {
|
||||
layer = "bottom";
|
||||
position = "top";
|
||||
height = 28;
|
||||
spacing = 0;
|
||||
modules-left = [ "sway/workspaces" ];
|
||||
modules-center = [ "sway/window" ];
|
||||
modules-right = [
|
||||
"tray"
|
||||
"idle_inhibitor"
|
||||
"network"
|
||||
"bluetooth"
|
||||
"pulseaudio"
|
||||
"battery"
|
||||
"sway/language"
|
||||
"clock"
|
||||
];
|
||||
"sway/workspaces" = {
|
||||
on-click = "activate";
|
||||
sort-by-number = true;
|
||||
format = "{value}";
|
||||
};
|
||||
"sway/window".max-length = 64;
|
||||
tray = {
|
||||
icon-size = 24;
|
||||
spacing = 8;
|
||||
};
|
||||
idle_inhibitor = {
|
||||
format = "| {icon}";
|
||||
start-activated = true;
|
||||
format-icons = {
|
||||
activated = "🫨";
|
||||
deactivated = "😴";
|
||||
};
|
||||
};
|
||||
"sway/language" = {
|
||||
format = "| {flag}";
|
||||
tooltip-format = "{long}";
|
||||
};
|
||||
clock = {
|
||||
interval = 60;
|
||||
tooltip = true;
|
||||
format = "| {:%H:%M} ";
|
||||
tooltip-format = "{:%Y-%m-%d}";
|
||||
};
|
||||
battery = {
|
||||
interval = 60;
|
||||
format = "| {icon}{capacity}%";
|
||||
format-charging = "| {icon}⚡{capacity}%";
|
||||
format-plugged = "| {icon}🔌{capacity}%";
|
||||
states = {
|
||||
critical = 10;
|
||||
warning = 20;
|
||||
good = 100;
|
||||
full = 100;
|
||||
over = 101;
|
||||
};
|
||||
format-icons = [ "🪫" "🪫" "🔋" "🔋" "🔋" ];
|
||||
};
|
||||
network = {
|
||||
tooltip-format = "{ifname} = {ipaddr}/{cidr}";
|
||||
format-wifi = "| ᯤ";
|
||||
format-ethernet = "| ⇄";
|
||||
format-linked = "| 🔗";
|
||||
format-disconnected = "| ⛓️💥";
|
||||
interval = 15;
|
||||
on-click = "${uwsm} ${term} -e nmtui";
|
||||
};
|
||||
bluetooth = {
|
||||
format-connected = "| ᛒ";
|
||||
format-on = "| ᚧ";
|
||||
format-disabled = "";
|
||||
format-no-controller = "";
|
||||
interval = 15;
|
||||
on-click = "${uwsm} ${term} -e bluetui";
|
||||
};
|
||||
pulseaudio = {
|
||||
format = "| 🔊{volume}%";
|
||||
format-muted = "| 🔈0%";
|
||||
format-bluetooth = "| 🎧{volume}%";
|
||||
on-click = "${uwsm} pavucontrol";
|
||||
};
|
||||
};
|
||||
style = ''
|
||||
button {
|
||||
box-shadow: inset 0 -8px transparent;
|
||||
border: none;
|
||||
border-radius: 0;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue