nix-managed-macbook/programs/default.nix

213 lines
4.1 KiB
Nix
Raw Normal View History

2024-10-22 18:53:09 +05:30
{
inputs,
config,
pkgs,
flake.lock: Update Flake lock file updates: • Updated input 'home-manager': 'github:nix-community/home-manager/5f6aa268e419d053c3d5025da740e390b12ac936?narHash=sha256-C73gLFnEh8ZI0uDijUgCDWCd21T6I6tsaWgIBHcfAXg%3D' (2025-01-01) → 'github:nix-community/home-manager/fc52a210b60f2f52c74eac41a8647c1573d2071d?narHash=sha256-TY0jUwR3EW0fnS0X5wXMAVy6h4Z7Y6a3m%2BYq%2B%2BC9AyE%3D' (2025-01-13) • Updated input 'nix-darwin': 'github:LnL7/nix-darwin/53a0c2fe6ed46ab33fc4a221c9f907a7b4c8a91c?narHash=sha256-rTpBl3xmKYDQTRWF8CRk/r1FoKPDVwqLHGoU7tfECvY%3D' (2024-12-28) → 'github:LnL7/nix-darwin/6ace2f2d12bdf74235d5cbf9fbd34a71c9716685?narHash=sha256-mG9lRZBcPiAGiVJ9B97BJoIGQcSBWIVlBiN30QYCtG0%3D' (2025-01-11) • Updated input 'nix-vscode-extensions': 'github:nix-community/nix-vscode-extensions/adf374ae7e5237a3aa03e88503644732ea15045d?narHash=sha256-UMLwX1WiR2cjJndlKHm4WXQ8fBKJPMMSUsk%2BYjsjTl8%3D' (2024-12-29) → 'github:nix-community/nix-vscode-extensions/44474e2ca975af013f1594abd6c922f2c8dba022?narHash=sha256-6232F8et5z7XTxK0RuX6bocT6yYGJhlmlHbFdZuHcP0%3D' (2025-01-13) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/69b9a8c860bdbb977adfa9c5e817ccb717884182?narHash=sha256-5zJyv66q68QZJZsXtmjDBazGnF0id593VSy%2B8eSckoo%3D' (2024-12-31) → 'github:nixos/nixpkgs/ef56e777fedaa4da8c66a150081523c5de1e0171?narHash=sha256-a3MMEY7i/wdF0gb7WFNTn6onzaiMOvwj7OerRVenA8o%3D' (2025-01-13) • Updated input 'nixpkgs-stable': 'github:nixos/nixpkgs/42f30f55ec9d396b67c456683b4409cd7d07fc7b?narHash=sha256-YJwQfdSFep6IFrhZGEjug/HuCauGntDAesjCS5mxTis%3D' (2024-12-25) → 'github:nixos/nixpkgs/1e7a8f391f1a490460760065fa0630b5520f9cf8?narHash=sha256-HB/FA0%2B1gpSs8%2B/boEavrGJH%2BEq08/R2wWNph1sM1Dg%3D' (2024-12-30)
2025-01-13 22:36:24 +05:30
pkgs-ghostty,
# nixd,
2024-10-22 18:53:09 +05:30
...
}:
2022-09-27 13:08:52 +05:30
2022-10-15 22:10:18 +05:30
let
2024-10-18 17:41:54 +05:30
leanHaskellBinary = pkgs.haskell.lib.compose.overrideCabal (old: {
isLibrary = false;
doHaddock = false;
enableLibraryProfiling = false;
enableSharedLibraries = false;
enableSeparateBinOutput = true;
});
2024-10-22 18:53:09 +05:30
opaComplete = name: pkgs.haskellPackages.generateOptparseApplicativeCompletions [ name ];
2022-10-15 22:10:18 +05:30
nixPackages = with pkgs; [
config.nix.package
niv
nix
2023-11-20 13:03:25 +05:30
nix-tree
2024-10-18 17:41:54 +05:30
nixfmt-rfc-style
2024-02-06 22:04:23 +05:30
nvd
2024-08-30 12:18:11 +05:30
nixd
2022-10-15 22:10:18 +05:30
statix
2023-10-06 19:05:40 +05:30
cachix
2024-08-25 15:27:46 +05:30
nix-output-monitor
2025-05-12 11:46:20 +05:30
nix-forecast
2022-10-15 22:10:18 +05:30
];
networkingPackages = with pkgs; [
curl
dig
httpie
openssh
mosh
];
2024-10-22 18:53:09 +05:30
cmdLineUtilPackages = with pkgs; [
bash
broot
coreutils-full
fd
glow
2024-10-22 18:53:09 +05:30
gnugrep
less
ranger
tree
unixtools.watch
];
2022-10-15 22:10:18 +05:30
miscPackages = with pkgs; [
2024-10-08 17:27:54 +05:30
as-tree
2023-11-20 19:38:27 +05:30
binutils
2024-09-07 10:34:54 +05:30
brotli
2023-04-27 19:32:40 +05:30
cabal2nix
2024-10-18 17:41:54 +05:30
(opaComplete "cabal-plan" (leanHaskellBinary haskellPackages.cabal-plan))
2022-09-27 13:08:52 +05:30
cloc
difftastic
2022-09-27 13:08:52 +05:30
dua
entr
2024-01-31 23:03:01 +05:30
hyperfine
2024-09-07 10:34:54 +05:30
git-absorb
2022-09-27 13:08:52 +05:30
graphviz-nox
2022-12-10 15:38:45 +05:30
iterm2
2024-11-01 20:12:20 +05:30
jless
2022-12-07 11:32:44 +05:30
just
mas
2022-09-27 13:08:52 +05:30
micro
2024-05-02 19:05:26 +05:30
fastfetch
2022-10-05 23:16:17 +05:30
proselint
2022-09-27 17:58:53 +05:30
shellcheck
2022-11-27 23:25:08 +05:30
typos
2024-12-30 12:20:36 +05:30
typos-lsp
2024-11-01 20:12:20 +05:30
xmlformat
2022-10-15 22:10:18 +05:30
];
fonts = with pkgs; [
2022-09-27 13:08:52 +05:30
fira-mono
inconsolata
jetbrains-mono
nanum-gothic-coding
roboto-mono
source-code-pro
2022-10-14 14:51:28 +05:30
(pkgs.callPackage ../packages/dm-mono.nix { dm-mono-src = "${inputs.dm-mono-font}"; })
monaspace
nerd-fonts.iosevka
2024-10-22 18:53:09 +05:30
];
in
{
imports = [
./fish.nix
./git.nix
./starship.nix
2025-05-12 11:46:46 +05:30
# ./vscode.nix
2024-11-26 20:33:25 +05:30
./zed.nix
2022-09-27 13:08:52 +05:30
];
2022-10-15 22:10:18 +05:30
home.packages = nixPackages ++ networkingPackages ++ cmdLineUtilPackages ++ miscPackages ++ fonts;
2022-09-27 13:08:52 +05:30
2023-11-24 16:35:04 +05:30
programs = {
2025-01-07 09:34:37 +05:30
tmux = {
enable = true;
2025-02-12 17:15:03 +05:30
prefix = "C-a";
2025-01-07 09:34:37 +05:30
clock24 = true;
historyLimit = 100000000;
mouse = true;
shell = "/etc/profiles/per-user/abhinav/bin/fish";
terminal = "tmux-256color";
2025-02-12 17:15:03 +05:30
plugins = with pkgs; [ tmuxPlugins.better-mouse-mode ];
2025-01-07 09:34:37 +05:30
extraConfig = ''
set -g status off
'';
};
2023-11-24 16:35:04 +05:30
htop = {
enable = true;
settings = {
hide_kernel_threads = true;
hide_threads = true;
hide_userland_threads = true;
highlight_base_name = true;
show_program_path = false;
sort_direction = false;
sort_key = "PERCENT_CPU";
tree_view = true;
};
2022-09-27 13:08:52 +05:30
};
2024-09-07 12:38:30 +05:30
eza = {
enable = true;
git = true;
};
2022-09-27 13:08:52 +05:30
2023-11-24 16:35:04 +05:30
direnv = {
enable = true;
2024-10-22 18:53:09 +05:30
nix-direnv = {
enable = true;
};
2023-11-24 16:35:04 +05:30
};
2022-09-27 13:08:52 +05:30
2023-11-24 16:35:04 +05:30
nix-index = {
enable = true;
enableFishIntegration = true;
};
2022-09-27 13:08:52 +05:30
2023-11-24 16:35:04 +05:30
bat = {
enable = true;
config = {
italic-text = "always";
paging = "always";
tabs = "2";
theme = "DarkNeon";
};
2022-09-27 13:08:52 +05:30
};
2023-11-24 16:35:04 +05:30
fzf = {
enable = true;
enableFishIntegration = true;
fileWidgetCommand = "fd --type f --no-ignore";
2024-10-22 18:53:09 +05:30
historyWidgetOptions = [
"--reverse"
"--sort"
"--exact"
];
2023-11-24 16:35:04 +05:30
};
2022-09-27 13:08:52 +05:30
2023-11-24 16:35:04 +05:30
micro = {
enable = true;
settings = {
autoindent = true;
colorcolumn = 100;
colorscheme = "gruvbox";
diffgutter = true;
hlsearch = true;
mkparents = true;
savecursor = true;
softwrap = true;
tabsize = 2;
tabstospaces = true;
# plugins
manipulator = true;
};
2022-09-27 13:08:52 +05:30
};
2023-06-11 10:43:58 +05:30
2023-11-24 16:35:04 +05:30
zoxide.enable = true;
2025-01-02 13:00:19 +05:30
ghostty = {
enable = true;
flake.lock: Update Flake lock file updates: • Updated input 'home-manager': 'github:nix-community/home-manager/5f6aa268e419d053c3d5025da740e390b12ac936?narHash=sha256-C73gLFnEh8ZI0uDijUgCDWCd21T6I6tsaWgIBHcfAXg%3D' (2025-01-01) → 'github:nix-community/home-manager/fc52a210b60f2f52c74eac41a8647c1573d2071d?narHash=sha256-TY0jUwR3EW0fnS0X5wXMAVy6h4Z7Y6a3m%2BYq%2B%2BC9AyE%3D' (2025-01-13) • Updated input 'nix-darwin': 'github:LnL7/nix-darwin/53a0c2fe6ed46ab33fc4a221c9f907a7b4c8a91c?narHash=sha256-rTpBl3xmKYDQTRWF8CRk/r1FoKPDVwqLHGoU7tfECvY%3D' (2024-12-28) → 'github:LnL7/nix-darwin/6ace2f2d12bdf74235d5cbf9fbd34a71c9716685?narHash=sha256-mG9lRZBcPiAGiVJ9B97BJoIGQcSBWIVlBiN30QYCtG0%3D' (2025-01-11) • Updated input 'nix-vscode-extensions': 'github:nix-community/nix-vscode-extensions/adf374ae7e5237a3aa03e88503644732ea15045d?narHash=sha256-UMLwX1WiR2cjJndlKHm4WXQ8fBKJPMMSUsk%2BYjsjTl8%3D' (2024-12-29) → 'github:nix-community/nix-vscode-extensions/44474e2ca975af013f1594abd6c922f2c8dba022?narHash=sha256-6232F8et5z7XTxK0RuX6bocT6yYGJhlmlHbFdZuHcP0%3D' (2025-01-13) • Updated input 'nixpkgs': 'github:nixos/nixpkgs/69b9a8c860bdbb977adfa9c5e817ccb717884182?narHash=sha256-5zJyv66q68QZJZsXtmjDBazGnF0id593VSy%2B8eSckoo%3D' (2024-12-31) → 'github:nixos/nixpkgs/ef56e777fedaa4da8c66a150081523c5de1e0171?narHash=sha256-a3MMEY7i/wdF0gb7WFNTn6onzaiMOvwj7OerRVenA8o%3D' (2025-01-13) • Updated input 'nixpkgs-stable': 'github:nixos/nixpkgs/42f30f55ec9d396b67c456683b4409cd7d07fc7b?narHash=sha256-YJwQfdSFep6IFrhZGEjug/HuCauGntDAesjCS5mxTis%3D' (2024-12-25) → 'github:nixos/nixpkgs/1e7a8f391f1a490460760065fa0630b5520f9cf8?narHash=sha256-HB/FA0%2B1gpSs8%2B/boEavrGJH%2BEq08/R2wWNph1sM1Dg%3D' (2024-12-30)
2025-01-13 22:36:24 +05:30
package = pkgs-ghostty.ghostty;
2025-01-02 13:00:19 +05:30
enableFishIntegration = true;
enableBashIntegration = true;
installBatSyntax = false;
settings = {
background-opacity = 0.95;
2025-01-07 09:34:37 +05:30
command = "/etc/profiles/per-user/abhinav/bin/tmux new";
2025-01-02 13:00:19 +05:30
copy-on-select = true;
font-family = "PragmataPro Mono";
font-size = 14;
macos-titlebar-style = "hidden";
2025-01-07 09:34:37 +05:30
minimum-contrast = 1.05;
mouse-hide-while-typing = true;
2025-01-02 13:00:19 +05:30
quick-terminal-position = "right";
quit-after-last-window-closed = false;
scrollback-limit = 100000000;
shell-integration = "detect";
theme = "ayu";
keybind = [
"global:cmd+shift+a=toggle_quick_terminal"
];
};
};
2023-11-24 16:35:04 +05:30
};
2022-09-27 13:08:52 +05:30
}