rearrange and refactor multiple modules

This commit is contained in:
Yan Lin 2026-02-11 20:08:30 +01:00
parent 622265bd6e
commit be7cee9208
13 changed files with 233 additions and 456 deletions

View file

@ -9,17 +9,13 @@
../../modules/ssh.nix
../../modules/git.nix
../../modules/lazygit.nix
../../modules/rsync.nix
../../modules/btop.nix
../../modules/firefox/home.nix
../../modules/ghostty.nix
../../modules/syncthing.nix
../../modules/claude-code.nix
../../modules/tex.nix
../../modules/media/tool.nix
../../modules/font/home.nix
../../modules/aerospace.nix
../../modules/peripheral/home.nix
];
nixpkgs.config.allowUnfree = true;
@ -154,26 +150,20 @@
home.packages = with pkgs; [
texlive.combined.scheme-full
# Network and file transfer
lftp
httpie
gnumake
# Network diagnostic tools
bind # DNS utilities (dig, nslookup, mdig)
inetutils # Network utilities (telnet)
netcat-gnu # Network connection utility
curl # HTTP client
wget # Web downloader
bandwhich # Terminal bandwidth utilization tool
# Command-line utilities
ncdu
delta
fastfetch
coreutils # GNU core utilities (base64, etc.)
duti # Set default applications for file types (macOS)
rsync
];
# Startup applications via launchd agents
@ -317,4 +307,78 @@
run ${pkgs.duti}/bin/duti -s com.colliderli.iina .ogg all
run ${pkgs.duti}/bin/duti -s com.colliderli.iina .opus all
'';
home.file.".config/linearmouse/linearmouse.json".text = builtins.toJSON {
"$schema" = "https://app.linearmouse.org/schema/0.10.0";
schemes = [{
"if" = {
device.category = "mouse";
};
scrolling.reverse.vertical = true;
pointer = {
acceleration = 0;
speed = 0.6;
};
}];
};
home.file.".aerospace.toml".text = ''
# Make all new windows floating by default
[[on-window-detected]]
run = ['layout floating']
[mode.main.binding]
alt-enter = 'layout floating tiling'
alt-f = 'fullscreen'
alt-q = 'close'
# Window focus (vim-style)
alt-h = 'focus left'
alt-j = 'focus down'
alt-k = 'focus up'
alt-l = 'focus right'
# Move windows
alt-shift-h = 'move left'
alt-shift-j = 'move down'
alt-shift-k = 'move up'
alt-shift-l = 'move right'
# Resize
alt-minus = 'resize smart -50'
alt-equal = 'resize smart +50'
# Workspaces
alt-1 = 'workspace 1'
alt-2 = 'workspace 2'
alt-3 = 'workspace 3'
alt-4 = 'workspace 4'
alt-5 = 'workspace 5'
alt-6 = 'workspace 6'
alt-7 = 'workspace 7'
alt-8 = 'workspace 8'
alt-9 = 'workspace 9'
alt-0 = 'workspace 10'
# Focus monitor
alt-comma = 'focus-monitor prev'
alt-period = 'focus-monitor next'
# Move window to monitor
alt-shift-comma = 'move-node-to-monitor prev'
alt-shift-period = 'move-node-to-monitor next'
# Move window to workspace
alt-shift-1 = ['move-node-to-workspace 1', 'workspace 1']
alt-shift-2 = ['move-node-to-workspace 2', 'workspace 2']
alt-shift-3 = ['move-node-to-workspace 3', 'workspace 3']
alt-shift-4 = ['move-node-to-workspace 4', 'workspace 4']
alt-shift-5 = ['move-node-to-workspace 5', 'workspace 5']
alt-shift-6 = ['move-node-to-workspace 6', 'workspace 6']
alt-shift-7 = ['move-node-to-workspace 7', 'workspace 7']
alt-shift-8 = ['move-node-to-workspace 8', 'workspace 8']
alt-shift-9 = ['move-node-to-workspace 9', 'workspace 9']
alt-shift-0 = ['move-node-to-workspace 10', 'workspace 10']
'';
}