update flake
This commit is contained in:
parent
802f1b5c27
commit
9a3e5cfc47
28 changed files with 98 additions and 83 deletions
BIN
files/aero-drop.tar.gz
Normal file
BIN
files/aero-drop.tar.gz
Normal file
Binary file not shown.
40
flake.lock
40
flake.lock
|
@ -59,11 +59,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726357542,
|
"lastModified": 1729027341,
|
||||||
"narHash": "sha256-p4OrJL2weh0TRtaeu1fmNYP6+TOp/W2qdaIJxxQay4c=",
|
"narHash": "sha256-IqWD7bA9iJVifvJlB4vs2KUXVhN+d9lECWdNB4jJ0tE=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "home-manager",
|
"repo": "home-manager",
|
||||||
"rev": "e524c57b1fa55d6ca9d8354c6ce1e538d2a1f47f",
|
"rev": "2a4fd1cfd8ed5648583dadef86966a8231024221",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -74,11 +74,11 @@
|
||||||
},
|
},
|
||||||
"nixos-hardware": {
|
"nixos-hardware": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1725885300,
|
"lastModified": 1728729581,
|
||||||
"narHash": "sha256-5RLEnou1/GJQl+Wd+Bxaj7QY7FFQ9wjnFq1VNEaxTmc=",
|
"narHash": "sha256-oazkQ/z7r43YkDLLQdMg8oIB3CwWNb+2ZrYOxtLEWTQ=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixos-hardware",
|
"repo": "nixos-hardware",
|
||||||
"rev": "166dee4f88a7e3ba1b7a243edb1aca822f00680e",
|
"rev": "a8dd1b21995964b115b1e3ec639dd6ce24ab9806",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -90,11 +90,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs": {
|
"nixpkgs": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1726062873,
|
"lastModified": 1728888510,
|
||||||
"narHash": "sha256-IiA3jfbR7K/B5+9byVi9BZGWTD4VSbWe8VLpp9B/iYk=",
|
"narHash": "sha256-nsNdSldaAyu6PE3YUA+YQLqUDJh+gRbBooMMekZJwvI=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "4f807e8940284ad7925ebd0a0993d2a1791acb2f",
|
"rev": "a3c0b3b21515f74fd2665903d4ce6bc4dc81c77c",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
@ -120,27 +120,11 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"nur": {
|
|
||||||
"locked": {
|
|
||||||
"lastModified": 1726387027,
|
|
||||||
"narHash": "sha256-5nC1vhaMB0avDLa38UEUNgvl189xQ4tI3olDoGb//XY=",
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"rev": "87e71e19db7075e0ce696387d85d73000e6a6f2e",
|
|
||||||
"type": "github"
|
|
||||||
},
|
|
||||||
"original": {
|
|
||||||
"owner": "nix-community",
|
|
||||||
"repo": "NUR",
|
|
||||||
"type": "github"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixos-hardware": "nixos-hardware",
|
"nixos-hardware": "nixos-hardware",
|
||||||
"nixpkgs": "nixpkgs",
|
"nixpkgs": "nixpkgs",
|
||||||
"nur": "nur",
|
|
||||||
"zed": "zed"
|
"zed": "zed"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -169,11 +153,11 @@
|
||||||
"nixpkgs": "nixpkgs_2"
|
"nixpkgs": "nixpkgs_2"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1727466124,
|
"lastModified": 1729060364,
|
||||||
"narHash": "sha256-jMEIkl6rJFBHyhr020Aw2VI27Q5ac3LHEYHBDMCcfpw=",
|
"narHash": "sha256-27GHWnUg29ps6qU/LR7JCsrzaJQdi7X72315h32Vcz8=",
|
||||||
"owner": "zed-industries",
|
"owner": "zed-industries",
|
||||||
"repo": "zed",
|
"repo": "zed",
|
||||||
"rev": "d5f67406b0b7eb9ffd261b79467d17c1dc28a041",
|
"rev": "f944ebc4cbc6deb55cfbd6b0466631ea8d3e56a7",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
@ -9,8 +9,6 @@
|
||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
|
|
||||||
nur.url = "github:nix-community/NUR";
|
|
||||||
|
|
||||||
nixos-hardware.url = "github:nixos/nixos-hardware/master";
|
nixos-hardware.url = "github:nixos/nixos-hardware/master";
|
||||||
|
|
||||||
zed.url = "github:zed-industries/zed";
|
zed.url = "github:zed-industries/zed";
|
||||||
|
|
|
@ -9,9 +9,11 @@
|
||||||
primary = "DisplayPort-1";
|
primary = "DisplayPort-1";
|
||||||
secondary = "HDMI-A-0";
|
secondary = "HDMI-A-0";
|
||||||
};
|
};
|
||||||
user = config.chuj.system.user;
|
inherit (config.chuj.system) user;
|
||||||
in {
|
in {
|
||||||
hardware.amdgpu.amdvlk.enable = true;
|
# omfg please
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/348903
|
||||||
|
# hardware.amdgpu.amdvlk.enable = true;
|
||||||
boot = {
|
boot = {
|
||||||
loader = {
|
loader = {
|
||||||
timeout = 2;
|
timeout = 2;
|
||||||
|
@ -34,7 +36,6 @@
|
||||||
|
|
||||||
home-manager.users.${user}.home.packages = with pkgs; [
|
home-manager.users.${user}.home.packages = with pkgs; [
|
||||||
pamixer
|
pamixer
|
||||||
kicad
|
|
||||||
sqlitebrowser
|
sqlitebrowser
|
||||||
obs-studio
|
obs-studio
|
||||||
yt-dlp
|
yt-dlp
|
||||||
|
@ -42,11 +43,10 @@
|
||||||
cloc
|
cloc
|
||||||
viu
|
viu
|
||||||
qbittorrent
|
qbittorrent
|
||||||
jetbrains.idea-community-bin
|
# jetbrains.idea-community-bin
|
||||||
zed-editor
|
zed-editor
|
||||||
mumble
|
mumble
|
||||||
blender
|
blender
|
||||||
|
|
||||||
godot_4
|
godot_4
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,7 @@ in {
|
||||||
unfocused_hollow = false;
|
unfocused_hollow = false;
|
||||||
};
|
};
|
||||||
colors = {
|
colors = {
|
||||||
|
# todo: make some sort of theme.nix with a bunch of colors
|
||||||
primary = {
|
primary = {
|
||||||
foreground = "#e4e4ef";
|
foreground = "#e4e4ef";
|
||||||
background = "#181818";
|
background = "#181818";
|
||||||
|
|
|
@ -5,6 +5,7 @@
|
||||||
in {
|
in {
|
||||||
options.chuj.stuff.autorandr = {
|
options.chuj.stuff.autorandr = {
|
||||||
enable = mkEnableOption "autorandr";
|
enable = mkEnableOption "autorandr";
|
||||||
|
# TODO: proper types for these maybe idk
|
||||||
fingerprint = mkOption {
|
fingerprint = mkOption {
|
||||||
type = types.attrs;
|
type = types.attrs;
|
||||||
default = null;
|
default = null;
|
||||||
|
@ -14,7 +15,7 @@ in {
|
||||||
default = null;
|
default = null;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${user} = {
|
home-manager.users.${user} = {
|
||||||
programs.autorandr = {
|
programs.autorandr = {
|
||||||
|
|
|
@ -23,6 +23,7 @@ in {
|
||||||
monitor = if cfg.output != null then cfg.output else 0;
|
monitor = if cfg.output != null then cfg.output else 0;
|
||||||
origin = "bottom-${cfg.side}";
|
origin = "bottom-${cfg.side}";
|
||||||
frame_width = 1;
|
frame_width = 1;
|
||||||
|
# todo: theme.nix
|
||||||
background = "#333333";
|
background = "#333333";
|
||||||
foreground = "#feeeee";
|
foreground = "#feeeee";
|
||||||
font = "JetBrains Mono NL 10";
|
font = "JetBrains Mono NL 10";
|
||||||
|
|
|
@ -10,6 +10,7 @@ in {
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${user}.programs.firefox = {
|
home-manager.users.${user}.programs.firefox = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
package = pkgs.firefox-bin;
|
||||||
policies = {
|
policies = {
|
||||||
DisableTelemetry = true;
|
DisableTelemetry = true;
|
||||||
DisableFirefoxStudies = true;
|
DisableFirefoxStudies = true;
|
||||||
|
|
|
@ -25,6 +25,7 @@ in {
|
||||||
home-manager.users.${user}.programs.fish = {
|
home-manager.users.${user}.programs.fish = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
|
# todo: move some to abbrs
|
||||||
shellAliases = mergeAttrs {
|
shellAliases = mergeAttrs {
|
||||||
"ls" = "${pkgs.eza}/bin/eza -lhs type";
|
"ls" = "${pkgs.eza}/bin/eza -lhs type";
|
||||||
"cp" = "cp -v";
|
"cp" = "cp -v";
|
||||||
|
@ -39,7 +40,7 @@ in {
|
||||||
"rebuild" = "ulimit -n 4096 && sudo nixos-rebuild switch --flake ~/nix#${hostname} -v";
|
"rebuild" = "ulimit -n 4096 && sudo nixos-rebuild switch --flake ~/nix#${hostname} -v";
|
||||||
} cfg.extraAliases;
|
} cfg.extraAliases;
|
||||||
|
|
||||||
shellAbbrs = { # mkif xclip in pkgs
|
shellAbbrs = { # todo: mkif xclip in pkgs
|
||||||
"2clip" = "xclip -selection clipboard";
|
"2clip" = "xclip -selection clipboard";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -11,6 +11,8 @@ in {
|
||||||
services.flameshot = {
|
services.flameshot = {
|
||||||
enable = true;
|
enable = true;
|
||||||
settings = {
|
settings = {
|
||||||
|
# todo: add some shit (userColors, ui colors, check the other stuff)
|
||||||
|
# https://github.com/flameshot-org/flameshot/blob/master/flameshot.example.ini
|
||||||
General = {
|
General = {
|
||||||
disabledTrayIcon = true;
|
disabledTrayIcon = true;
|
||||||
showStartupLaunchMessage = false;
|
showStartupLaunchMessage = false;
|
||||||
|
|
|
@ -16,17 +16,18 @@ in {
|
||||||
exe = mkOption { type = types.str; };
|
exe = mkOption { type = types.str; };
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
default = [];
|
default = [];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs.steam.enable = cfg.steam;
|
programs.steam.enable = cfg.steam;
|
||||||
|
|
||||||
home-manager.users.${user}.home.packages = with pkgs; ([
|
home-manager.users.${user}.home.packages = with pkgs; ([
|
||||||
wineWowPackages.stable
|
wineWowPackages.stable
|
||||||
winetricks
|
winetricks
|
||||||
protontricks
|
# vvv this shit doesn't build xd
|
||||||
|
# protontricks
|
||||||
] ++ forEach cfg.scripts (s:
|
] ++ forEach cfg.scripts (s:
|
||||||
(pkgs.writeShellScriptBin s.name ''
|
(pkgs.writeShellScriptBin s.name ''
|
||||||
cd ~/games/${s.name}
|
cd ~/games/${s.name}
|
||||||
|
|
|
@ -7,7 +7,7 @@ in {
|
||||||
enable = mkEnableOption "git";
|
enable = mkEnableOption "git";
|
||||||
};
|
};
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = [ pkgs.git ];
|
environment.systemPackages = [ pkgs.git pkgs.codeberg-cli ];
|
||||||
home-manager.users.${user}.programs.git = {
|
home-manager.users.${user}.programs.git = {
|
||||||
enable = true;
|
enable = true;
|
||||||
userName = "krizej";
|
userName = "krizej";
|
||||||
|
|
|
@ -42,7 +42,7 @@ in {
|
||||||
default = {};
|
default = {};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = let
|
config = let
|
||||||
HOME = config.home-manager.users.${user}.home.homeDirectory;
|
HOME = config.home-manager.users.${user}.home.homeDirectory;
|
||||||
in mkIf cfg.enable {
|
in mkIf cfg.enable {
|
||||||
|
@ -70,7 +70,7 @@ in {
|
||||||
criteria = [
|
criteria = [
|
||||||
{ class = "zenity"; }
|
{ class = "zenity"; }
|
||||||
{ class = "fceux"; }
|
{ class = "fceux"; }
|
||||||
{ title = "Friends List"; }
|
{ title = "Friends List"; } # steam
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -80,6 +80,7 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
fonts = {
|
fonts = {
|
||||||
|
# todo: include font in theme.nix?
|
||||||
names = [ "JetBrains Mono NL" ];
|
names = [ "JetBrains Mono NL" ];
|
||||||
size = 10.0;
|
size = 10.0;
|
||||||
};
|
};
|
||||||
|
@ -88,7 +89,7 @@ in {
|
||||||
|
|
||||||
workspaceOutputAssign = lib.mapAttrsToList
|
workspaceOutputAssign = lib.mapAttrsToList
|
||||||
(workspace: output: { inherit workspace output; })
|
(workspace: output: { inherit workspace output; })
|
||||||
cfg.workspaceOutput;
|
cfg.workspaceOutput;
|
||||||
|
|
||||||
focus = {
|
focus = {
|
||||||
followMouse = true;
|
followMouse = true;
|
||||||
|
@ -111,7 +112,7 @@ in {
|
||||||
while true; do
|
while true; do
|
||||||
sleep 1 &
|
sleep 1 &
|
||||||
wait
|
wait
|
||||||
|
|
||||||
status=$(mpc status | sed -n 2p | cut -d' ' -f1)
|
status=$(mpc status | sed -n 2p | cut -d' ' -f1)
|
||||||
title=$(basename "$(mpc current -f '%file%')" .mp3)
|
title=$(basename "$(mpc current -f '%file%')" .mp3)
|
||||||
echo "$status $title" > /tmp/i3-mpd-status-stuff
|
echo "$status $title" > /tmp/i3-mpd-status-stuff
|
||||||
|
@ -137,10 +138,21 @@ in {
|
||||||
floating.modifier = "Mod4";
|
floating.modifier = "Mod4";
|
||||||
|
|
||||||
keybindings = with config.chuj.stuff.i3.mediaKeys; let
|
keybindings = with config.chuj.stuff.i3.mediaKeys; let
|
||||||
|
killall = "${pkgs.killall}/bin/killall";
|
||||||
mod = modifier;
|
mod = modifier;
|
||||||
execns = "exec --no-startup-id";
|
execns = "exec --no-startup-id";
|
||||||
|
i3-msg = "";
|
||||||
|
terminal = "";
|
||||||
|
flameshot = "";
|
||||||
|
firefox = "";
|
||||||
|
dmenu_run = "";
|
||||||
|
xkill = "";
|
||||||
|
pamixer = "";
|
||||||
|
i3custom-window-actions = "";
|
||||||
|
dunstify = "";
|
||||||
|
mpc = "";
|
||||||
|
in let
|
||||||
cmd_and_center = cmd: "${execns} i3-msg '${cmd}' && i3custom-center-mouse-on-focus";
|
cmd_and_center = cmd: "${execns} i3-msg '${cmd}' && i3custom-center-mouse-on-focus";
|
||||||
killall = "${pkgs.killall}/bin/killall";
|
|
||||||
update_mpdstatus = "${killall} -USR1 mpdstatus && sleep 0.05"; # hack as fack xd
|
update_mpdstatus = "${killall} -USR1 mpdstatus && sleep 0.05"; # hack as fack xd
|
||||||
update_i3status = "${killall} -USR1 i3status";
|
update_i3status = "${killall} -USR1 i3status";
|
||||||
in mergeAttrs {
|
in mergeAttrs {
|
||||||
|
@ -161,7 +173,6 @@ in {
|
||||||
"${mod}+r" = "mode resize";
|
"${mod}+r" = "mode resize";
|
||||||
"${mod}+Shift+q" = cmd_and_center "kill";
|
"${mod}+Shift+q" = cmd_and_center "kill";
|
||||||
"${mod}+Shift+r" = "restart";
|
"${mod}+Shift+r" = "restart";
|
||||||
"${mod}+Shift+e" = "${execns} i3-nagbar -t warning -m 'exit?' -b 'yes' 'i3-msg exit'";
|
|
||||||
# Mouse bindings
|
# Mouse bindings
|
||||||
"--border button3" = "${execns} i3custom-window-actions";
|
"--border button3" = "${execns} i3custom-window-actions";
|
||||||
|
|
||||||
|
@ -204,21 +215,22 @@ in {
|
||||||
"${mod}+Shift+0" = cmd_and_center "move container to workspace number 10";
|
"${mod}+Shift+0" = cmd_and_center "move container to workspace number 10";
|
||||||
} (optionalAttrs config.chuj.stuff.mpd.enable {
|
} (optionalAttrs config.chuj.stuff.mpd.enable {
|
||||||
# MPD controls
|
# MPD controls
|
||||||
"Ctrl+${musicMenu}" = "exec mpdfdial.sh && ${update_mpdstatus} && ${update_i3status}";
|
"Ctrl+${musicMenu}" = "${execns} mpdfdial.sh && ${update_mpdstatus} && ${update_i3status}";
|
||||||
"Ctrl+${musicPrev}" = "exec mpc prev && ${update_mpdstatus} && ${update_i3status}";
|
"Ctrl+${musicPrev}" = "${execns} mpc prev && ${update_mpdstatus} && ${update_i3status}";
|
||||||
"Ctrl+${musicPlay}" = "exec mpc toggle && ${update_mpdstatus} && ${update_i3status}";
|
"Ctrl+${musicPlay}" = "${execns} mpc toggle && ${update_mpdstatus} && ${update_i3status}";
|
||||||
"Ctrl+${musicNext}" = "exec mpc next && ${update_mpdstatus} && ${update_i3status}";
|
"Ctrl+${musicNext}" = "${execns} mpc next && ${update_mpdstatus} && ${update_i3status}";
|
||||||
"Ctrl+Shift+${musicPrev}" = "exec mpc seek -3";
|
"Ctrl+Shift+${musicPrev}" = "${execns} mpc seek -3";
|
||||||
"Ctrl+Shift+${musicPlay}" = "exec mpc clear && ${update_mpdstatus} && ${update_i3status}";
|
"Ctrl+Shift+${musicPlay}" = "${execns} mpc clear && ${update_mpdstatus} && ${update_i3status}";
|
||||||
"Ctrl+Shift+${musicNext}" = "exec mpc seek +3";
|
"Ctrl+Shift+${musicNext}" = "${execns} mpc seek +3";
|
||||||
"Ctrl+Shift+${audioDown}" = ''exec mpc volume -5 && dunstify "mpc $(mpc volume)" -r 420'';
|
"Ctrl+Shift+${audioDown}" = ''${execns} mpc volume -5 && dunstify "mpc $(mpc volume)" -r 420'';
|
||||||
"Ctrl+Shift+${audioUp}" = ''exec mpc volume +5 && dunstify "mpc $(mpc volume)" -r 420'';
|
"Ctrl+Shift+${audioUp}" = ''${execns} mpc volume +5 && dunstify "mpc $(mpc volume)" -r 420'';
|
||||||
});
|
});
|
||||||
|
|
||||||
bars = [
|
bars = [
|
||||||
{
|
{
|
||||||
inherit fonts;
|
inherit fonts;
|
||||||
trayOutput = "primary";
|
trayOutput = "primary";
|
||||||
|
# todo: getexe
|
||||||
statusCommand = "${pkgs.i3status}/bin/i3status";
|
statusCommand = "${pkgs.i3status}/bin/i3status";
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
@ -232,6 +244,7 @@ in {
|
||||||
general = {
|
general = {
|
||||||
interval = 1;
|
interval = 1;
|
||||||
colors = true;
|
colors = true;
|
||||||
|
# todo: theme.nix?
|
||||||
color_good = "#91d956";
|
color_good = "#91d956";
|
||||||
color_bad = "#f43841";
|
color_bad = "#f43841";
|
||||||
color_degraded = "#ffdd33";
|
color_degraded = "#ffdd33";
|
||||||
|
@ -300,16 +313,21 @@ in {
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; let
|
||||||
(pkgs.writeShellScriptBin "i3custom-center-mouse-on-focus" ''
|
xdotool = "";
|
||||||
|
yad = "";
|
||||||
|
i3gtk = "";
|
||||||
|
i3-msg = "";
|
||||||
|
in [
|
||||||
|
(writeShellScriptBin "i3custom-center-mouse-on-focus" ''
|
||||||
eval $(xdotool getwindowfocus getwindowgeometry --shell)
|
eval $(xdotool getwindowfocus getwindowgeometry --shell)
|
||||||
MX=$(($X + $WIDTH / 2))
|
MX=$(($X + $WIDTH / 2))
|
||||||
MY=$(($Y + $HEIGHT / 2))
|
MY=$(($Y + $HEIGHT / 2))
|
||||||
xdotool mousemove $MX $MY
|
xdotool mousemove $MX $MY
|
||||||
'')
|
'')
|
||||||
|
|
||||||
(pkgs.writeShellScriptBin "i3custom-window-actions" ''
|
(writeShellScriptBin "i3custom-window-actions" ''
|
||||||
${pkgs.yad}/bin/yad --splash --mouse \
|
${yad}/bin/yad --splash --mouse \
|
||||||
--title="i3 window actions" \
|
--title="i3 window actions" \
|
||||||
--gtkrc="${HOME}/.config/i3/i3gtk.css" \
|
--gtkrc="${HOME}/.config/i3/i3gtk.css" \
|
||||||
--text="i3 window actions" \
|
--text="i3 window actions" \
|
||||||
|
@ -322,11 +340,12 @@ in {
|
||||||
esac
|
esac
|
||||||
'')
|
'')
|
||||||
|
|
||||||
(pkgs.writeShellScriptBin "i3custom-floating-toggle" ''
|
(writeShellScriptBin "i3custom-floating-toggle" ''
|
||||||
i3-msg "mark --add _; [con_mark=f] floating disable, border pixel 1, mark --add --toggle _; [con_mark=_] floating enable, border normal; mark --add --toggle f;"
|
i3-msg "mark --add _; [con_mark=f] floating disable, border pixel 1, mark --add --toggle _; [con_mark=_] floating enable, border normal; mark --add --toggle f;"
|
||||||
'')
|
'')
|
||||||
];
|
];
|
||||||
|
|
||||||
|
# todo: remove
|
||||||
home.file = {
|
home.file = {
|
||||||
".config/i3/i3gtk.css".source = ../../files/i3gtk.css;
|
".config/i3/i3gtk.css".source = ../../files/i3gtk.css;
|
||||||
};
|
};
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
options.chuj.stuff.mpd = {
|
options.chuj.stuff.mpd = {
|
||||||
enable = mkEnableOption "mpd";
|
enable = mkEnableOption "mpd";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${user} = {
|
home-manager.users.${user} = {
|
||||||
services.mpd = {
|
services.mpd = {
|
||||||
|
@ -25,6 +25,7 @@ in {
|
||||||
cut = "${pkgs.coreutils}/bin/cut";
|
cut = "${pkgs.coreutils}/bin/cut";
|
||||||
in [
|
in [
|
||||||
pkgs.mpc-cli
|
pkgs.mpc-cli
|
||||||
|
# todo: dmenu for this if i3
|
||||||
(pkgs.writeShellScriptBin "mpdfdial.sh" ''
|
(pkgs.writeShellScriptBin "mpdfdial.sh" ''
|
||||||
path=$(${yad} --file --directory | ${cut} -d "/" -f5-)
|
path=$(${yad} --file --directory | ${cut} -d "/" -f5-)
|
||||||
|
|
||||||
|
|
|
@ -6,12 +6,12 @@ in {
|
||||||
options.chuj.stuff.other-desktop-programs = {
|
options.chuj.stuff.other-desktop-programs = {
|
||||||
enable = mkEnableOption "other-desktop-programs";
|
enable = mkEnableOption "other-desktop-programs";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
home-manager.users.${user}.home.packages = with pkgs; [
|
home-manager.users.${user}.home.packages = with pkgs; [
|
||||||
pavucontrol
|
pavucontrol
|
||||||
|
|
||||||
# element-desktop
|
# element-desktop
|
||||||
schildichat-desktop
|
schildichat-desktop
|
||||||
discord
|
discord
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
options.chuj.stuff.other-dev-programs = {
|
options.chuj.stuff.other-dev-programs = {
|
||||||
enable = mkEnableOption "other-dev-programs";
|
enable = mkEnableOption "other-dev-programs";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
cmake
|
cmake
|
||||||
|
|
|
@ -5,7 +5,7 @@ in {
|
||||||
options.chuj.stuff.printing = {
|
options.chuj.stuff.printing = {
|
||||||
enable = mkEnableOption "printing";
|
enable = mkEnableOption "printing";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.printing = {
|
services.printing = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
|
@ -5,7 +5,7 @@ in {
|
||||||
options.chuj.stuff.sddm = {
|
options.chuj.stuff.sddm = {
|
||||||
enable = mkEnableOption "sddm";
|
enable = mkEnableOption "sddm";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.displayManager = {
|
services.displayManager = {
|
||||||
# ah fuck this
|
# ah fuck this
|
||||||
|
|
|
@ -29,12 +29,8 @@ in {
|
||||||
name = elemAt (splitString "@" host) 1;
|
name = elemAt (splitString "@" host) 1;
|
||||||
value = {
|
value = {
|
||||||
user = elemAt (splitString "@" host) 0;
|
user = elemAt (splitString "@" host) 0;
|
||||||
|
|
||||||
identityFile = "~/.ssh/keys/${hostcfg.file}";
|
identityFile = "~/.ssh/keys/${hostcfg.file}";
|
||||||
|
setEnv = hostcfg.env or {};
|
||||||
setEnv = if hasAttr "env" hostcfg
|
|
||||||
then hostcfg.env
|
|
||||||
else {};
|
|
||||||
};
|
};
|
||||||
}) cfg.keys;
|
}) cfg.keys;
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,9 +5,8 @@
|
||||||
in {
|
in {
|
||||||
options.chuj.stuff.theme = {
|
options.chuj.stuff.theme = {
|
||||||
enable = mkEnableOption "theme";
|
enable = mkEnableOption "theme";
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
fonts = {
|
fonts = {
|
||||||
enableDefaultPackages = true;
|
enableDefaultPackages = true;
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
options.chuj.stuff.thunar = {
|
options.chuj.stuff.thunar = {
|
||||||
enable = mkEnableOption "thunar";
|
enable = mkEnableOption "thunar";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
programs = {
|
programs = {
|
||||||
dconf.enable = true;
|
dconf.enable = true;
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
options.chuj.stuff.vim = {
|
options.chuj.stuff.vim = {
|
||||||
enable = mkEnableOption "vim";
|
enable = mkEnableOption "vim";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
environment.systemPackages = [ pkgs.vim ];
|
environment.systemPackages = [ pkgs.vim ];
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
options.chuj.xdg = {
|
options.chuj.xdg = {
|
||||||
enable = mkEnableOption "xdg";
|
enable = mkEnableOption "xdg";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = let
|
config = let
|
||||||
hmCfg = config.home-manager.users.${user};
|
hmCfg = config.home-manager.users.${user};
|
||||||
HOME = hmCfg.home.homeDirectory;
|
HOME = hmCfg.home.homeDirectory;
|
||||||
|
@ -66,6 +66,7 @@ in {
|
||||||
];
|
];
|
||||||
|
|
||||||
xdg.configFile = {
|
xdg.configFile = {
|
||||||
|
# todo: XDG_CACHE_HOME Not found
|
||||||
"python/pythonrc".text = ''
|
"python/pythonrc".text = ''
|
||||||
import os
|
import os
|
||||||
import atexit
|
import atexit
|
||||||
|
|
|
@ -6,7 +6,7 @@ in {
|
||||||
enable = mkEnableOption "xserver";
|
enable = mkEnableOption "xserver";
|
||||||
libinput = mkEnableOption "libinput";
|
libinput = mkEnableOption "libinput";
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services = {
|
services = {
|
||||||
xserver = {
|
xserver = {
|
||||||
|
@ -14,7 +14,9 @@ in {
|
||||||
xkb.layout = "pl";
|
xkb.layout = "pl";
|
||||||
# autoRepeatDelay = 180;
|
# autoRepeatDelay = 180;
|
||||||
# autoRepeatInterval = 50;
|
# autoRepeatInterval = 50;
|
||||||
# ^ this doesn't work
|
# fixme: ^ this doesn't work
|
||||||
|
|
||||||
|
# todo: getexe (or fix the above
|
||||||
displayManager.sessionCommands = ''
|
displayManager.sessionCommands = ''
|
||||||
${pkgs.xorg.xset}/bin/xset r rate 180 50
|
${pkgs.xorg.xset}/bin/xset r rate 180 50
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -34,7 +34,7 @@ in {
|
||||||
time.timeZone = "Europe/Warsaw";
|
time.timeZone = "Europe/Warsaw";
|
||||||
hardware.pulseaudio.enable = true;
|
hardware.pulseaudio.enable = true;
|
||||||
services.pipewire.enable = false;
|
services.pipewire.enable = false;
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
nameservers = [ "9.9.9.9" ];
|
nameservers = [ "9.9.9.9" ];
|
||||||
networkmanager = {
|
networkmanager = {
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
flameshot = prevPkgs.flameshot.overrideAttrs (_: { patches = [ ../files/flameshot-0x0-upload.patch ]; });
|
flameshot = prevPkgs.flameshot.overrideAttrs (_: { patches = [ ../files/flameshot-0x0-upload.patch ]; });
|
||||||
schildichat-web = callPackage ./schildi/schildichat-web.nix {};
|
schildichat-web = callPackage ./schildi/schildichat-web.nix {};
|
||||||
schildichat-desktop = callPackage ./schildi/schildichat-desktop.nix {};
|
schildichat-desktop = callPackage ./schildi/schildichat-desktop.nix {};
|
||||||
vkquake_ = prevPkgs.vkquake.overrideAttrs (prev: {
|
vkquake = prevPkgs.vkquake.overrideAttrs (prev: {
|
||||||
version = "1.31.1";
|
version = "1.31.1";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
inherit (prev.src) owner repo;
|
inherit (prev.src) owner repo;
|
||||||
|
@ -17,9 +17,10 @@
|
||||||
sha256 = "sha256-rOzQMeSmnHZl4v0uWWqwp1yfnUqIuP18ogRn4DimKt4=";
|
sha256 = "sha256-rOzQMeSmnHZl4v0uWWqwp1yfnUqIuP18ogRn4DimKt4=";
|
||||||
};
|
};
|
||||||
sourceRoot = null;
|
sourceRoot = null;
|
||||||
|
buildInputs = prev.buildInputs ++ [ pkgs.vulkan-headers ];
|
||||||
nativeBuildInputs = prev.nativeBuildInputs ++ [ pkgs.glslang ];
|
nativeBuildInputs = prev.nativeBuildInputs ++ [ pkgs.glslang ];
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
cd Quake
|
cd ../Quake
|
||||||
make -j6 DO_USERDIRS=1 prefix=$out bindir=$out/bin
|
make -j6 DO_USERDIRS=1 prefix=$out bindir=$out/bin
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
|
@ -8,7 +8,8 @@ stdenv.mkDerivation rec {
|
||||||
version = "1";
|
version = "1";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://gitgud.io/wackyideas/aerothemeplasma/-/raw/master/Icons%20and%20cursors/aero-drop.tar.gz?ref_type=heads&inline=false";
|
# todo: find out how to extract local tar file
|
||||||
|
url = "https://gitgud.io/wackyideas/aerothemeplasma/-/raw/master/misc/cursors/aero-drop.tar.gz?ref_type=heads&inline=false";
|
||||||
hash = "sha256-4IY6ZE/nSLJ3HGfzEp2rxBah8Z9lUNQdGncRTjv2Jtg=";
|
hash = "sha256-4IY6ZE/nSLJ3HGfzEp2rxBah8Z9lUNQdGncRTjv2Jtg=";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
i have a slight idea of what i'm doing
|
i have a slight idea of what i'm doing
|
||||||
|
|
||||||
|
todo:
|
||||||
|
- remove hardcoded binary names
|
||||||
|
- investigate firefox config
|
||||||
|
- theme.nix
|
||||||
|
- all the remaining individual todos
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue