feat: a bunch of misc updates

This commit is contained in:
Zhongheng Liu 2025-02-07 18:18:23 +02:00
commit bb120b4e3d
Signed by: steven
GPG key ID: 805A28B071DAD84B
18 changed files with 256 additions and 121 deletions

View file

@ -1,7 +1,4 @@
{ config
, pkgs
, ...
}: {
{ config, pkgs, ... }: {
imports = [
./hypr
./shells
@ -13,11 +10,13 @@
./ags
./xdg.nix
./stylix.nix
#./dwl
./scripts
./programs
./packages
];
#services.pass-secret-service.enable = true;
nixpkgs = {
# You can add overlays here
overlays = [
@ -59,6 +58,7 @@
kdenlive
obsidian
heroic
rustdesk
];
myAutostartCommands = [
#"${pkgs.clash-verge-rev}/bin/clash-verge"
@ -67,22 +67,23 @@
programs = {
obs-studio = {
enable = true;
plugins = with pkgs.obs-studio-plugins; [ wlrobs input-overlay ];
plugins = with pkgs.obs-studio-plugins; [ wlrobs input-overlay droidcam-obs ];
};
home-manager.enable = true;
firefox = {
enable = true;
package = with pkgs; (firefox-devedition.override {
nativeMessagingHosts = [
(passff-host.overrideAttrs (_old: {
dontStrip = true;
patchPhase = ''
sed -i 's#COMMAND = "pass"#COMMAND = "${
pass.withExtensions (ext: with ext; [pass-otp pass-import])
}/bin/pass"#' src/passff.py'';
}))
];
});
package = with pkgs;
(firefox-devedition.override {
nativeMessagingHosts = [
(passff-host.overrideAttrs (_old: {
dontStrip = true;
patchPhase = ''
sed -i 's#COMMAND = "pass"#COMMAND = "${
pass.withExtensions (ext: with ext; [ pass-otp pass-import ])
}/bin/pass"#' src/passff.py'';
}))
];
});
};
thunderbird = {
enable = true;

View file

@ -1,10 +1,8 @@
{ config
, pkgs
, ...
}:
{ config, pkgs, inputs, ... }:
let
terminalCmd = config.defaultApplications.terminal;
screenshotLocation = "/home/${config.myUserName}/Screenshots/$(date '+%Y-%m-%d-%H-%M-%S').png";
screenshotLocation =
"/home/${config.myUserName}/Screenshots/$(date '+%Y-%m-%d-%H-%M-%S').png";
in
[
"$mod SHIFT, L, exec, ${pkgs.wlogout}/bin/wlogout"
@ -17,7 +15,7 @@ in
"$mod, S, togglespecialworkspace"
"$mod SHIFT, S, movetoworkspace, special"
"$mod, Tab, hyprexpo:expo, toggle"
"alt, Tab, exec, ${inputs.hyprswitch.packages.x86_64-linux.default}/bin/hyprswitch gui --mod-key alt --key Tab --close mod-key-release --reverse-key=key=grave && hyprswitch dispatch"
# keysyms for util functions
# Example volume button that allows press and hold, volume limited to 150%
@ -30,11 +28,10 @@ in
"$mod SHIFT, Return, exec, ${terminalCmd} --title=floats ${config.myShells.defaultShell}"
# cmdline utilities
/*
NOTE Replaced by network manager applet
nmtui interface is no longer needed
TODO Fix floating window rule
*/
/* NOTE Replaced by network manager applet
nmtui interface is no longer needed
TODO Fix floating window rule
*/
# "$mod, N, exec, [float] ${terminalCmd} ${pkgs.networkmanager}/bin/nmtui"
#"$mod, M, exec, [float] ${terminalCmd} ${pkgs.zenith}/bin/zenith"
@ -43,35 +40,29 @@ in
"$mod, J, movefocus, d"
"$mod, K, movefocus, u"
"$mod, L, movefocus, r"
]
++ (
if config.services.mpd.enable then [ "$mod, M, exec, ${terminalCmd} --title=ncmpc ${pkgs.ncmpcpp}/bin/ncmpcpp" ] else [ ]
)
++ (
if config.services.swaync.enable
then [ "$mod, N, exec, ${pkgs.swaynotificationcenter}/bin/swaync-client -t" ]
else [ ]
)
++ (
] ++ (if config.services.mpd.enable then
[ "$mod, M, exec, ${terminalCmd} --title=ncmpc ${pkgs.ncmpcpp}/bin/ncmpcpp" ]
else
[ ]) ++ (if config.services.swaync.enable then
[ "$mod, N, exec, ${pkgs.swaynotificationcenter}/bin/swaync-client -t" ]
else
[ ]) ++ (
# workspaces
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
builtins.concatLists (builtins.genList
(x:
let
ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
in
[
let ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
in [
"$mod, ${ws}, workspace, ${toString (x + 1)}"
"$mod SHIFT, ${ws}, movetoworkspace, ${toString (x + 1)}"
]) 10)
# workspaces
# binds $mod + [shift +] {1..10} to [move to] workspace {1..10}
/*
builtins.concatLists (builtins.genList (x:
let ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
in [
"$mod M, ${ws}, workspace, ${toString (x + 10 + 1)}"
"$mod SHIFT M, ${ws}, movetoworkspace, ${toString (x + 10 + 1)}"
]) 10)
*/
/* builtins.concatLists (builtins.genList (x:
let ws = let c = (x + 1) / 10; in builtins.toString (x + 1 - (c * 10));
in [
"$mod M, ${ws}, workspace, ${toString (x + 10 + 1)}"
"$mod SHIFT M, ${ws}, movetoworkspace, ${toString (x + 10 + 1)}"
]) 10)
*/
)

View file

@ -8,7 +8,7 @@
package = pkgs.hyprland;
plugins = with pkgs.hyprlandPlugins;
[
hyprexpo
# hyprexpo
# hyprfocus
# hycov
];
@ -40,8 +40,11 @@
repeat_delay = 250;
accel_profile = "flat";
};
exec-once = config.myAutostartCommands
++ (import ./hypr_autostart.nix { inherit config; inherit pkgs; });
exec-once = config.myAutostartCommands ++ (import ./hypr_autostart.nix {
inherit config;
inherit pkgs;
inherit inputs;
});
misc = {
disable_hyprland_logo = true;
disable_splash_rendering = true;
@ -53,6 +56,7 @@
bind = import ./binds.nix {
inherit config;
inherit pkgs;
inherit inputs;
};
bindm = [
# mouse movements

View file

@ -1,4 +1,4 @@
{ config, pkgs }:
{ config, pkgs, inputs }:
let
term = config.defaultApplications.terminal;
shell = config.myShells.defaultShell;
@ -7,4 +7,6 @@ in
"${term} --title=autorun ${shell}"
"${pkgs.mpris-notifier}/bin/mpris-notifier"
"${pkgs.mpd-discord-rpc}/bin/mpd-discord-rpc"
"${pkgs.easyeffects}/bin/easyeffects --gapplication-service"
"${inputs.hyprswitch.packages.x86_64-linux.default}/bin/hyprswitch init --show-title --size-factor 5.5 --workspaces-per-row 5"
]

View file

@ -23,6 +23,7 @@
./devicons.nix
./tagbar.nix
./wrapping.nix
./twilight.nix
];
enable = true;
enableMan = true;

View file

@ -0,0 +1,6 @@
{ ... }: {
plugins = {
zen-mode = { enable = true; };
twilight = { enable = true; };
};
}

View file

@ -8,5 +8,6 @@
./pentesting.nix
./dev.nix
./gaming.nix
./hypr.nix
];
}

View file

@ -0,0 +1,4 @@
{ inputs, ... }:
{
home.packages = [ inputs.hyprswitch.packages.x86_64-linux.default ];
}

View file

@ -1,21 +1,22 @@
{ pkgs, ... }: {
home.packages = with pkgs; [
bottom
libnotify
tree
android-file-transfer
mtpfs
usbutils
glow
tmux
ranger
lazygit
home.packages = with pkgs;
[
bottom
libnotify
tree
android-file-transfer
mtpfs
usbutils
glow
tmux
ranger
lazygit
cheat
thefuck
pcmanfm
udiskie
sxiv
transmission_4-gtk
];
cheat
thefuck
pcmanfm
udiskie
sxiv
transmission_4-gtk
];
}

View file

@ -4,6 +4,7 @@
}: {
programs.git = {
enable = true;
lfs.enable = true;
package = pkgs.gitFull;
userName = config.myDisplayName;
userEmail = config.myEmail;

View file

@ -18,7 +18,7 @@ in
};
monospace = {
name = config.desktopFontFullName;
package = pkgs.nerd-fonts.blex-mono;
package = pkgs.nerd-fonts.ubuntu-mono;
};
sizes = {
terminal = 16;