@sebastienrousseau/dotfiles 0.2.481 → 0.2.499
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/ARCHITECTURE.md +29 -196
- package/docs/COMPLIANCE.md +10 -10
- package/docs/COPYRIGHT +3 -4
- package/docs/OPERATIONS.md +38 -65
- package/docs/PLAN.md +3 -3
- package/docs/PR_DESCRIPTION.md +85 -84
- package/docs/ROADMAP.md +11 -11
- package/docs/ROADMAP_legacy.md +556 -0
- package/docs/SECURITY_CHECKLIST.md +1 -1
- package/docs/TASK.md +4 -4
- package/docs/WALKTHROUGH.md +33 -152
- package/package.json +17 -5
- package/scripts/backup.sh +142 -0
- package/scripts/banner.sh +20 -0
- package/scripts/benchmark.sh +20 -0
- package/scripts/build.sh +41 -0
- package/scripts/clean.sh +31 -0
- package/scripts/compile.sh +54 -0
- package/scripts/copy.sh +108 -0
- package/scripts/{tools/detect-collisions.py → detect-collisions.py} +1 -1
- package/scripts/doctor.sh +79 -0
- package/scripts/dotfiles.sh +63 -0
- package/scripts/download.sh +35 -0
- package/scripts/help.sh +57 -0
- package/scripts/lock-configs.sh +57 -0
- package/scripts/package.sh +46 -0
- package/scripts/ssh.sh +55 -0
- package/scripts/teleport.sh +23 -0
- package/scripts/{tests/test-aliases.sh → test-aliases.sh} +3 -3
- package/scripts/test_smoke.sh +88 -0
- package/scripts/unpack.sh +28 -0
- package/scripts/{diagnostics/verify_state.sh → verify_state.sh} +21 -21
- package/templates/projects/go/README.md +0 -4
- package/templates/projects/node/README.md +0 -4
- package/templates/projects/python/README.md +0 -4
- package/templates/projects/python/pyproject.toml +0 -15
- package/CHANGELOG.md +0 -285
- package/LICENSE +0 -1283
- package/README.md +0 -315
- package/docs/ALIASES.md +0 -128
- package/docs/FEATURES.md +0 -166
- package/docs/FONTS.md +0 -147
- package/docs/INSTALL.md +0 -119
- package/docs/KEYS.md +0 -40
- package/docs/KEY_ROTATION.md +0 -219
- package/docs/LEGACY_ROADMAP.md +0 -142
- package/docs/NEOVIM_IDE_GUIDE.md +0 -52
- package/docs/README.md +0 -269
- package/docs/REPO_AUDIT.md +0 -23
- package/docs/SCREENSHOTS.md +0 -116
- package/docs/SECRETS.md +0 -76
- package/docs/SECURITY.md +0 -30
- package/docs/TESTING.md +0 -190
- package/docs/TOOLS.md +0 -146
- package/docs/TROUBLESHOOTING.md +0 -112
- package/docs/UTILS.md +0 -105
- package/docs/WSL2_NIX_TROUBLESHOOTING.md +0 -723
- package/docs/adr/ADR-001-ci-cd-pipeline.md +0 -101
- package/docs/adr/ADR-002-shell-performance.md +0 -121
- package/docs/adr/ADR-003-security-first.md +0 -140
- package/docs/adr/ADR-004-cli-architecture.md +0 -157
- package/docs/adr/ADR-005-chezmoi-choice.md +0 -89
- package/docs/adr/ADR-006-shell-selection.md +0 -115
- package/docs/adr/README.md +0 -33
- package/docs/themes/README.md +0 -20
- package/dot_config/aider/aider.conf.yml +0 -32
- package/dot_config/alacritty/alacritty.toml.tmpl +0 -483
- package/dot_config/ansible/ansible.cfg.tmpl +0 -11
- package/dot_config/atuin/config.toml +0 -23
- package/dot_config/bat/config +0 -8
- package/dot_config/brave-flags.conf.tmpl +0 -7
- package/dot_config/btop/btop.conf +0 -16
- package/dot_config/btop/themes/tokyonight.theme +0 -34
- package/dot_config/bun/bunfig.toml.tmpl +0 -33
- package/dot_config/claude/mcp_servers.json +0 -49
- package/dot_config/clippy.toml +0 -55
- package/dot_config/containers/containers.conf +0 -14
- package/dot_config/curl/dot_curlrc +0 -18
- package/dot_config/dlv/config.yml +0 -39
- package/dot_config/docker/config.json.tmpl +0 -15
- package/dot_config/dotfiles/boot/README.md +0 -11
- package/dot_config/dotfiles/grub/README.md +0 -11
- package/dot_config/dotfiles/lock/README.md +0 -11
- package/dot_config/dotfiles/versions.env.tmpl +0 -19
- package/dot_config/duf/duf.conf +0 -6
- package/dot_config/duti/defaults.duti +0 -5
- package/dot_config/emoji/emoji.txt +0 -34
- package/dot_config/fastfetch/config.jsonc +0 -28
- package/dot_config/firefox/user.js +0 -8
- package/dot_config/flatpak/flatpak.list +0 -4
- package/dot_config/fontconfig/fonts.conf.tmpl +0 -44
- package/dot_config/gem/gemrc +0 -9
- package/dot_config/gh/config.yml +0 -12
- package/dot_config/ghostty/config.tmpl +0 -661
- package/dot_config/git/attributes +0 -12
- package/dot_config/git/config.tmpl +0 -77
- package/dot_config/git/ignore +0 -27
- package/dot_config/gnupg/gpg-agent.conf.tmpl +0 -11
- package/dot_config/go/aliases.sh +0 -61
- package/dot_config/go/env.sh +0 -24
- package/dot_config/go/golangci.yml +0 -118
- package/dot_config/go/gopls.json +0 -30
- package/dot_config/goose/config.yaml +0 -29
- package/dot_config/gtk-3.0/gtk.css.tmpl +0 -305
- package/dot_config/gtk-3.0/settings.ini.tmpl +0 -66
- package/dot_config/gtk-4.0/gtk.css.tmpl +0 -309
- package/dot_config/gtk-4.0/settings.ini.tmpl +0 -21
- package/dot_config/htop/htoprc +0 -20
- package/dot_config/ice/README.md +0 -13
- package/dot_config/inputrc +0 -2
- package/dot_config/ipython/profile_default/ipython_config.py.tmpl +0 -5
- package/dot_config/just/justfile +0 -104
- package/dot_config/k9s/config.yaml.tmpl +0 -65
- package/dot_config/k9s/skins/catppuccin-mocha.yaml +0 -116
- package/dot_config/karabiner/karabiner.json +0 -14
- package/dot_config/kitty/kitty.conf.tmpl +0 -517
- package/dot_config/lazydocker/config.yml +0 -186
- package/dot_config/lazygit/config.yml +0 -23
- package/dot_config/lsd/config.yaml +0 -19
- package/dot_config/mas/masapps.txt +0 -5
- package/dot_config/minikube/config.json +0 -13
- package/dot_config/mise/config.toml +0 -41
- package/dot_config/mongosh/mongoshrc.js +0 -67
- package/dot_config/mycli/myclirc +0 -67
- package/dot_config/nano/nanorc +0 -28
- package/dot_config/ncdu/config +0 -12
- package/dot_config/nvim/init.lua +0 -4
- package/dot_config/nvim/lazy-lock.json +0 -27
- package/dot_config/nvim/lua/config/autocmds.lua +0 -63
- package/dot_config/nvim/lua/config/keymaps.lua +0 -87
- package/dot_config/nvim/lua/config/lazy.lua +0 -34
- package/dot_config/nvim/lua/config/options.lua +0 -48
- package/dot_config/nvim/lua/plugins/coding.lua +0 -234
- package/dot_config/nvim/lua/plugins/dap.lua +0 -201
- package/dot_config/nvim/lua/plugins/editor.lua +0 -59
- package/dot_config/nvim/lua/plugins/git.lua +0 -9
- package/dot_config/nvim/lua/plugins/lsp.lua +0 -221
- package/dot_config/nvim/lua/plugins/markdown.lua +0 -17
- package/dot_config/nvim/lua/plugins/rust.lua +0 -33
- package/dot_config/nvim/lua/plugins/sessions.lua +0 -32
- package/dot_config/nvim/lua/plugins/ui.lua +0 -537
- package/dot_config/nvim/snippets/all.lua +0 -9
- package/dot_config/nvim/snippets/python.lua +0 -16
- package/dot_config/pip/pip.conf.tmpl +0 -32
- package/dot_config/pypoetry/config.toml.tmpl +0 -6
- package/dot_config/pyrightconfig.json.tmpl +0 -5
- package/dot_config/raycast/README.md +0 -13
- package/dot_config/redis/redisclirc +0 -41
- package/dot_config/shell/00-container-detect.sh +0 -53
- package/dot_config/shell/00-core-paths.sh.tmpl +0 -95
- package/dot_config/shell/05-core-safety.sh.tmpl +0 -13
- package/dot_config/shell/40-ls-colors.sh.tmpl +0 -31
- package/dot_config/shell/50-logic-functions.sh.tmpl +0 -10
- package/dot_config/shell/90-theme-switch.sh +0 -70
- package/dot_config/shell/90-ux-aliases.sh.tmpl +0 -35
- package/dot_config/shell/91-ux-aliases-lazy.sh.tmpl +0 -23
- package/dot_config/shell/Brewfile +0 -207
- package/dot_config/shell/Brewfile.cask +0 -92
- package/dot_config/shell/Brewfile.cli +0 -119
- package/dot_config/shell/README.md +0 -267
- package/dot_config/shell/custom/context_suggest.zsh +0 -68
- package/dot_config/shell/custom/error_analysis.zsh +0 -45
- package/dot_config/sops/dot_sops.yaml +0 -23
- package/dot_config/starship.toml.tmpl +0 -124
- package/dot_config/task/Taskfile.yml +0 -86
- package/dot_config/tflint/tflint.hcl.tmpl +0 -9
- package/dot_config/tmux/tmux.conf.tmpl +0 -181
- package/dot_config/topgrade/topgrade.toml.tmpl +0 -42
- package/dot_config/vscode/extensions.txt +0 -11
- package/dot_config/vscode/settings.json.tmpl +0 -123
- package/dot_config/waybar/style.css +0 -8
- package/dot_config/wezterm/wezterm.lua.tmpl +0 -236
- package/dot_config/wget/wgetrc +0 -12
- package/dot_config/yarn/yarnrc.yml.tmpl +0 -36
- package/dot_config/yazi/yazi.toml +0 -40
- package/dot_config/zellij/config.kdl +0 -79
- package/dot_config/zsh/dot_zprofile +0 -13
- package/dot_config/zsh/dot_zshenv +0 -6
- package/dot_config/zsh/dot_zshrc.tmpl +0 -199
- package/dot_config/zsh/rc.d/05-ssh-agent.zsh +0 -5
- package/dot_config/zsh/rc.d/10-env.zsh.tmpl +0 -28
- package/dot_config/zsh/rc.d/20-zinit.zsh.tmpl +0 -22
- package/dot_config/zsh/rc.d/30-options.zsh.tmpl +0 -123
- package/dot_config/zsh/rc.d/40-bell.zsh.tmpl +0 -20
- package/dot_config/zsh/rc.d/50-login-fortune.zsh.tmpl +0 -9
- package/dot_local/bin/executable_ai_core +0 -130
- package/dot_local/bin/executable_b64 +0 -59
- package/dot_local/bin/executable_dot +0 -178
- package/dot_local/bin/executable_dot_completion +0 -55
- package/dot_local/bin/executable_epoch +0 -62
- package/dot_local/bin/executable_extract +0 -108
- package/dot_local/bin/executable_git-ai-commit +0 -160
- package/dot_local/bin/executable_git-ai-diff +0 -154
- package/dot_local/bin/executable_hash +0 -123
- package/dot_local/bin/executable_hex +0 -79
- package/dot_local/bin/executable_ip +0 -37
- package/dot_local/bin/executable_jsonv +0 -54
- package/dot_local/bin/executable_jwt +0 -78
- package/dot_local/bin/executable_kill-port +0 -59
- package/dot_local/bin/executable_lorem +0 -103
- package/dot_local/bin/executable_regex +0 -96
- package/dot_local/bin/executable_tmux-sessionizer +0 -187
- package/dot_local/bin/executable_tour +0 -137
- package/dot_local/bin/executable_update +0 -108
- package/dot_local/bin/executable_uuid +0 -57
- package/dot_local/bin/executable_yamlv +0 -39
- package/dot_local/bin/executable_zig-install +0 -89
- package/dot_local/bin/voice_ops +0 -7
- package/dot_local/share/bash-completion/completions/dot +0 -54
- package/dot_local/share/zsh/completions/.keep +0 -0
- package/install.sh +0 -255
- package/scripts/ci/validate-ci-config.sh +0 -222
- package/scripts/demo/record.sh +0 -41
- package/scripts/diagnostics/benchmark.sh +0 -201
- package/scripts/diagnostics/doctor.sh +0 -115
- package/scripts/diagnostics/drift-dashboard.sh +0 -26
- package/scripts/diagnostics/health.sh +0 -356
- package/scripts/diagnostics/history-analysis.sh +0 -77
- package/scripts/diagnostics/security-score.sh +0 -392
- package/scripts/dot/commands/appearance.sh +0 -63
- package/scripts/dot/commands/core.sh +0 -130
- package/scripts/dot/commands/diagnostics.sh +0 -100
- package/scripts/dot/commands/meta.sh +0 -117
- package/scripts/dot/commands/restore.sh +0 -209
- package/scripts/dot/commands/secrets.sh +0 -81
- package/scripts/dot/commands/security.sh +0 -73
- package/scripts/dot/commands/tools.sh +0 -228
- package/scripts/dot/lib/utils.sh +0 -72
- package/scripts/fonts/install-nerd-fonts.sh +0 -59
- package/scripts/fonts/patch-fonts.sh +0 -34
- package/scripts/ops/chezmoi-apply.sh +0 -42
- package/scripts/ops/chezmoi-diff.sh +0 -14
- package/scripts/ops/chezmoi-remove.sh +0 -43
- package/scripts/ops/chezmoi-update.sh +0 -16
- package/scripts/ops/heal.sh +0 -466
- package/scripts/ops/health-check.sh +0 -380
- package/scripts/ops/rollback.sh +0 -531
- package/scripts/ops/teleport.sh +0 -32
- package/scripts/secrets/age-init.sh +0 -69
- package/scripts/secrets/create-secrets-file.sh +0 -44
- package/scripts/secrets/encrypt-ssh-key.sh +0 -42
- package/scripts/security/backup.sh +0 -17
- package/scripts/security/dns-doh.sh +0 -29
- package/scripts/security/encryption-check.sh +0 -39
- package/scripts/security/enforce-policies.sh +0 -339
- package/scripts/security/firewall.sh +0 -34
- package/scripts/security/lock-configs.sh +0 -57
- package/scripts/security/lock-screen.sh +0 -33
- package/scripts/security/manage-secrets.sh +0 -415
- package/scripts/security/telemetry-kill.sh +0 -28
- package/scripts/security/usb-safety.sh +0 -29
- package/scripts/tests/README.md +0 -241
- package/scripts/tests/benchmark.sh +0 -91
- package/scripts/tests/framework/assertions.sh +0 -283
- package/scripts/tests/framework/mocks.sh +0 -201
- package/scripts/tests/framework/test_runner.sh +0 -189
- package/scripts/tests/integration/test_install.sh +0 -237
- package/scripts/tests/performance/benchmark_runner.sh +0 -156
- package/scripts/tests/performance/regression_check.sh +0 -73
- package/scripts/tests/performance/stress_test.sh +0 -65
- package/scripts/tests/test-docker.sh +0 -48
- package/scripts/tests/unit/test_ai_aliases.sh +0 -158
- package/scripts/tests/unit/test_ai_cli_checks.sh +0 -47
- package/scripts/tests/unit/test_backup.sh +0 -227
- package/scripts/tests/unit/test_case_functions.sh +0 -238
- package/scripts/tests/unit/test_cd_aliases.sh +0 -367
- package/scripts/tests/unit/test_dot_cli.sh +0 -217
- package/scripts/tests/unit/test_encode64.sh +0 -67
- package/scripts/tests/unit/test_environment.sh +0 -78
- package/scripts/tests/unit/test_extract.sh +0 -163
- package/scripts/tests/unit/test_framework_edge_cases.sh +0 -113
- package/scripts/tests/unit/test_genpass.sh +0 -298
- package/scripts/tests/unit/test_install_edge_cases.sh +0 -167
- package/scripts/tests/unit/test_installers.sh +0 -172
- package/scripts/tests/unit/test_keygen.sh +0 -68
- package/scripts/tests/unit/test_logging.sh +0 -96
- package/scripts/tests/unit/test_os_detection_comprehensive.sh +0 -388
- package/scripts/tests/unit/test_package_managers_comprehensive.sh +0 -321
- package/scripts/tests/unit/test_prependpath.sh +0 -66
- package/scripts/tests/unit/test_prependpath_refactored.sh +0 -89
- package/scripts/tests/unit/test_rd.sh +0 -230
- package/scripts/tests/unit/test_security_fixes.sh +0 -130
- package/scripts/tests/unit/test_security_scripts.sh +0 -87
- package/scripts/tests/unit/test_template_validation.sh +0 -238
- package/scripts/tests/unit/test_utility_functions.sh +0 -144
- package/scripts/tests/unit/test_wave1_alias_split.sh +0 -132
- package/scripts/tests/unit/test_wave1_ci_pinning.sh +0 -61
- package/scripts/tests/unit/test_wave1_gitleaks_config.sh +0 -52
- package/scripts/tests/unit/test_wave1_heal_fixes.sh +0 -97
- package/scripts/tests/unit/test_wave1_install_gpg.sh +0 -35
- package/scripts/tests/unit/test_wave1_zshenv_path.sh +0 -89
- package/scripts/tests/unit/test_wave1_zshrc_lazy_hook.sh +0 -115
- package/scripts/tests/unit/test_wave2_dot_new_guard.sh +0 -75
- package/scripts/tests/unit/test_zipf.sh +0 -76
- package/scripts/theme/apply-gnome-theme.sh +0 -297
- package/scripts/theme/install-boot-logo.sh +0 -61
- package/scripts/theme/install-catppuccin-themes.sh +0 -346
- package/scripts/theme/install-cursors.sh +0 -24
- package/scripts/theme/install-file-icons.sh +0 -25
- package/scripts/theme/install-grub-theme.sh +0 -51
- package/scripts/theme/install-lock-icon.sh +0 -29
- package/scripts/theme/switch.sh +0 -250
- package/scripts/theme/wallpaper-rotate.sh +0 -82
- package/scripts/theme/wallpaper-sync.sh +0 -42
- package/scripts/tools/cmatrix.sh +0 -20
- package/scripts/tools/emoji-picker.sh +0 -45
- package/scripts/tools/figlet-banner.sh +0 -17
- package/scripts/tools/log-rotate.sh +0 -29
- package/scripts/tools/lolcat-wrap.sh +0 -18
- package/scripts/tools/pipes.sh +0 -47
- package/scripts/tuning/linux.sh +0 -175
- package/scripts/tuning/macos.sh +0 -46
- package/templates/projects/molecule/README.md +0 -7
- package/templates/projects/molecule/converge.yml +0 -7
- package/templates/projects/molecule/molecule.yml +0 -16
- package/templates/projects/packer/README.md +0 -15
- package/templates/projects/packer/main.pkr.hcl +0 -15
package/scripts/tuning/linux.sh
DELETED
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# Linux System Tuning (opt-in)
|
|
3
|
-
# Managed by chezmoi - https://github.com/sebastienrousseau/dotfiles
|
|
4
|
-
#
|
|
5
|
-
# Usage: DOTFILES_TUNING=1 DOTFILES_PROFILE=laptop ./linux.sh
|
|
6
|
-
# Profiles: laptop, desktop, server
|
|
7
|
-
|
|
8
|
-
set -euo pipefail
|
|
9
|
-
|
|
10
|
-
if [[ "${DOTFILES_TUNING:-0}" != "1" ]]; then
|
|
11
|
-
echo "Tuning is disabled. Re-run with DOTFILES_TUNING=1 to apply."
|
|
12
|
-
exit 0
|
|
13
|
-
fi
|
|
14
|
-
|
|
15
|
-
PROFILE="${DOTFILES_PROFILE:-laptop}"
|
|
16
|
-
|
|
17
|
-
if [[ "$PROFILE" != "laptop" && "$PROFILE" != "desktop" && "$PROFILE" != "server" ]]; then
|
|
18
|
-
echo "DOTFILES_PROFILE must be: laptop, desktop, or server. Got: $PROFILE"
|
|
19
|
-
exit 1
|
|
20
|
-
fi
|
|
21
|
-
|
|
22
|
-
echo "Applying Linux tuning for profile: $PROFILE"
|
|
23
|
-
|
|
24
|
-
apply_sysctl() {
|
|
25
|
-
local key="$1"
|
|
26
|
-
local value="$2"
|
|
27
|
-
if command -v sudo >/dev/null; then
|
|
28
|
-
echo " Setting $key = $value"
|
|
29
|
-
sudo sysctl -w "$key=$value" >/dev/null 2>&1 || echo " Warning: Failed to set $key"
|
|
30
|
-
fi
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
if ! command -v sudo >/dev/null; then
|
|
34
|
-
echo "sudo not available; skipping sysctl tuning."
|
|
35
|
-
exit 0
|
|
36
|
-
fi
|
|
37
|
-
|
|
38
|
-
# =============================================================================
|
|
39
|
-
# File System Tuning
|
|
40
|
-
# =============================================================================
|
|
41
|
-
echo "Configuring file system settings..."
|
|
42
|
-
|
|
43
|
-
# Increase inotify watchers for IDEs and file sync tools
|
|
44
|
-
apply_sysctl "fs.inotify.max_user_watches" "524288"
|
|
45
|
-
apply_sysctl "fs.inotify.max_user_instances" "512"
|
|
46
|
-
|
|
47
|
-
# Increase file descriptor limits
|
|
48
|
-
apply_sysctl "fs.file-max" "2097152"
|
|
49
|
-
|
|
50
|
-
# =============================================================================
|
|
51
|
-
# Memory Tuning - vm.swappiness
|
|
52
|
-
# =============================================================================
|
|
53
|
-
echo "Configuring memory settings..."
|
|
54
|
-
|
|
55
|
-
case "$PROFILE" in
|
|
56
|
-
laptop)
|
|
57
|
-
# Laptop: Balance between RAM and battery (moderate swappiness)
|
|
58
|
-
apply_sysctl "vm.swappiness" "10"
|
|
59
|
-
apply_sysctl "vm.vfs_cache_pressure" "50"
|
|
60
|
-
apply_sysctl "vm.dirty_ratio" "15"
|
|
61
|
-
apply_sysctl "vm.dirty_background_ratio" "5"
|
|
62
|
-
;;
|
|
63
|
-
desktop)
|
|
64
|
-
# Desktop: Prefer RAM over swap (low swappiness, more RAM usage)
|
|
65
|
-
apply_sysctl "vm.swappiness" "5"
|
|
66
|
-
apply_sysctl "vm.vfs_cache_pressure" "50"
|
|
67
|
-
apply_sysctl "vm.dirty_ratio" "20"
|
|
68
|
-
apply_sysctl "vm.dirty_background_ratio" "5"
|
|
69
|
-
;;
|
|
70
|
-
server)
|
|
71
|
-
# Server: Minimal swapping for consistent performance
|
|
72
|
-
apply_sysctl "vm.swappiness" "1"
|
|
73
|
-
apply_sysctl "vm.vfs_cache_pressure" "100"
|
|
74
|
-
apply_sysctl "vm.dirty_ratio" "10"
|
|
75
|
-
apply_sysctl "vm.dirty_background_ratio" "3"
|
|
76
|
-
;;
|
|
77
|
-
esac
|
|
78
|
-
|
|
79
|
-
# =============================================================================
|
|
80
|
-
# Network Tuning - TCP Keepalive
|
|
81
|
-
# =============================================================================
|
|
82
|
-
echo "Configuring TCP keepalive settings..."
|
|
83
|
-
|
|
84
|
-
# TCP keepalive: Detect dead connections faster
|
|
85
|
-
# Default: 7200s (2 hours) - we reduce to 60s for faster detection
|
|
86
|
-
apply_sysctl "net.ipv4.tcp_keepalive_time" "60"
|
|
87
|
-
|
|
88
|
-
# Interval between keepalive probes (default: 75s)
|
|
89
|
-
apply_sysctl "net.ipv4.tcp_keepalive_intvl" "10"
|
|
90
|
-
|
|
91
|
-
# Number of keepalive probes before connection is dropped (default: 9)
|
|
92
|
-
apply_sysctl "net.ipv4.tcp_keepalive_probes" "6"
|
|
93
|
-
|
|
94
|
-
# Enable TCP Fast Open for faster connections
|
|
95
|
-
apply_sysctl "net.ipv4.tcp_fastopen" "3"
|
|
96
|
-
|
|
97
|
-
# Increase TCP buffer sizes for better throughput
|
|
98
|
-
apply_sysctl "net.core.rmem_max" "16777216"
|
|
99
|
-
apply_sysctl "net.core.wmem_max" "16777216"
|
|
100
|
-
apply_sysctl "net.ipv4.tcp_rmem" "4096 87380 16777216"
|
|
101
|
-
apply_sysctl "net.ipv4.tcp_wmem" "4096 65536 16777216"
|
|
102
|
-
|
|
103
|
-
# Connection tracking and queueing
|
|
104
|
-
apply_sysctl "net.core.somaxconn" "4096"
|
|
105
|
-
apply_sysctl "net.core.netdev_max_backlog" "4096"
|
|
106
|
-
|
|
107
|
-
# Reuse TIME_WAIT sockets for new connections
|
|
108
|
-
apply_sysctl "net.ipv4.tcp_tw_reuse" "1"
|
|
109
|
-
|
|
110
|
-
# Reduce FIN timeout for faster connection cleanup
|
|
111
|
-
apply_sysctl "net.ipv4.tcp_fin_timeout" "15"
|
|
112
|
-
|
|
113
|
-
# =============================================================================
|
|
114
|
-
# Security Tuning
|
|
115
|
-
# =============================================================================
|
|
116
|
-
echo "Configuring security settings..."
|
|
117
|
-
|
|
118
|
-
# Disable IP source routing
|
|
119
|
-
apply_sysctl "net.ipv4.conf.all.accept_source_route" "0"
|
|
120
|
-
apply_sysctl "net.ipv4.conf.default.accept_source_route" "0"
|
|
121
|
-
|
|
122
|
-
# Ignore ICMP redirects
|
|
123
|
-
apply_sysctl "net.ipv4.conf.all.accept_redirects" "0"
|
|
124
|
-
apply_sysctl "net.ipv4.conf.default.accept_redirects" "0"
|
|
125
|
-
|
|
126
|
-
# Ignore bogus ICMP errors
|
|
127
|
-
apply_sysctl "net.ipv4.icmp_ignore_bogus_error_responses" "1"
|
|
128
|
-
|
|
129
|
-
# Enable SYN flood protection
|
|
130
|
-
apply_sysctl "net.ipv4.tcp_syncookies" "1"
|
|
131
|
-
|
|
132
|
-
# =============================================================================
|
|
133
|
-
# Persist Settings
|
|
134
|
-
# =============================================================================
|
|
135
|
-
echo "Persisting settings to /etc/sysctl.d/99-dotfiles.conf..."
|
|
136
|
-
|
|
137
|
-
if command -v sudo >/dev/null; then
|
|
138
|
-
sudo tee /etc/sysctl.d/99-dotfiles.conf >/dev/null <<'EOF'
|
|
139
|
-
# Dotfiles system tuning - auto-generated
|
|
140
|
-
# https://github.com/sebastienrousseau/dotfiles
|
|
141
|
-
|
|
142
|
-
# File system
|
|
143
|
-
fs.inotify.max_user_watches = 524288
|
|
144
|
-
fs.inotify.max_user_instances = 512
|
|
145
|
-
fs.file-max = 2097152
|
|
146
|
-
|
|
147
|
-
# Memory (adjust vm.swappiness per profile)
|
|
148
|
-
vm.vfs_cache_pressure = 50
|
|
149
|
-
|
|
150
|
-
# TCP Keepalive
|
|
151
|
-
net.ipv4.tcp_keepalive_time = 60
|
|
152
|
-
net.ipv4.tcp_keepalive_intvl = 10
|
|
153
|
-
net.ipv4.tcp_keepalive_probes = 6
|
|
154
|
-
net.ipv4.tcp_fastopen = 3
|
|
155
|
-
|
|
156
|
-
# TCP Performance
|
|
157
|
-
net.core.rmem_max = 16777216
|
|
158
|
-
net.core.wmem_max = 16777216
|
|
159
|
-
net.core.somaxconn = 4096
|
|
160
|
-
net.core.netdev_max_backlog = 4096
|
|
161
|
-
net.ipv4.tcp_tw_reuse = 1
|
|
162
|
-
net.ipv4.tcp_fin_timeout = 15
|
|
163
|
-
|
|
164
|
-
# Security
|
|
165
|
-
net.ipv4.conf.all.accept_source_route = 0
|
|
166
|
-
net.ipv4.conf.default.accept_source_route = 0
|
|
167
|
-
net.ipv4.conf.all.accept_redirects = 0
|
|
168
|
-
net.ipv4.conf.default.accept_redirects = 0
|
|
169
|
-
net.ipv4.icmp_ignore_bogus_error_responses = 1
|
|
170
|
-
net.ipv4.tcp_syncookies = 1
|
|
171
|
-
EOF
|
|
172
|
-
fi
|
|
173
|
-
|
|
174
|
-
echo "Linux tuning complete for profile: $PROFILE"
|
|
175
|
-
echo "Note: Some settings require a reboot to take full effect."
|
package/scripts/tuning/macos.sh
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# macOS tuning (opt-in)
|
|
3
|
-
|
|
4
|
-
set -euo pipefail
|
|
5
|
-
|
|
6
|
-
if [[ "${DOTFILES_TUNING:-0}" != "1" ]]; then
|
|
7
|
-
echo "Tuning is disabled. Re-run with DOTFILES_TUNING=1 to apply."
|
|
8
|
-
exit 0
|
|
9
|
-
fi
|
|
10
|
-
|
|
11
|
-
if [[ "${DOTFILES_PROFILE:-}" != "laptop" && "${DOTFILES_PROFILE:-}" != "desktop" && "${DOTFILES_PROFILE:-}" != "server" ]]; then
|
|
12
|
-
echo "DOTFILES_PROFILE is not set to a known profile. Aborting."
|
|
13
|
-
exit 1
|
|
14
|
-
fi
|
|
15
|
-
|
|
16
|
-
echo "Applying macOS tuning..."
|
|
17
|
-
|
|
18
|
-
# Faster key repeat (requires logout/login to fully apply)
|
|
19
|
-
defaults write -g InitialKeyRepeat -int 15
|
|
20
|
-
defaults write -g KeyRepeat -int 2
|
|
21
|
-
|
|
22
|
-
# Finder: show all filename extensions
|
|
23
|
-
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
|
|
24
|
-
|
|
25
|
-
# Finder: use list view by default in all Finder windows
|
|
26
|
-
# Four-letter codes for view modes: `icnv`, `clmv`, `glyv`, `Nlsv` (list)
|
|
27
|
-
defaults write com.apple.finder FXPreferredViewStyle -string "Nlsv"
|
|
28
|
-
|
|
29
|
-
# Finder: show path bar
|
|
30
|
-
defaults write com.apple.finder ShowPathbar -bool true
|
|
31
|
-
|
|
32
|
-
# Finder: show status bar
|
|
33
|
-
defaults write com.apple.finder ShowStatusBar -bool true
|
|
34
|
-
|
|
35
|
-
# Finder: keep folders on top when sorting by name
|
|
36
|
-
defaults write com.apple.finder _FXSortFoldersFirst -bool true
|
|
37
|
-
|
|
38
|
-
# Restart Finder to apply changes
|
|
39
|
-
killall Finder >/dev/null 2>&1 || true
|
|
40
|
-
|
|
41
|
-
# Dock: reduce show/hide delay
|
|
42
|
-
defaults write com.apple.dock autohide-delay -float 0
|
|
43
|
-
defaults write com.apple.dock autohide-time-modifier -float 0.2
|
|
44
|
-
killall Dock >/dev/null 2>&1 || true
|
|
45
|
-
|
|
46
|
-
echo "macOS tuning complete."
|