mirror of
https://github.com/nmasur/dotfiles
synced 2024-12-25 06:34:52 +00:00
add macos applications
This commit is contained in:
parent
404426c480
commit
b48c9aef12
@ -1,15 +1,6 @@
|
||||
{ config, lib, pkgs, ... }: {
|
||||
|
||||
imports = [
|
||||
../modules/hardware
|
||||
../modules/system
|
||||
../modules/graphical
|
||||
../modules/shell
|
||||
../modules/gaming
|
||||
../modules/applications
|
||||
../modules/editor
|
||||
../modules/mail/himalaya.nix
|
||||
];
|
||||
imports = [ ../modules/shell ../modules/editor ../modules/mail/himalaya.nix ];
|
||||
|
||||
options = with lib; {
|
||||
dotfilesPath = mkOption {
|
||||
|
@ -18,6 +18,11 @@ nixpkgs.lib.nixosSystem {
|
||||
}
|
||||
./hardware-configuration.nix
|
||||
../common.nix
|
||||
../../modules/hardware
|
||||
../../modules/system
|
||||
../../modules/graphical
|
||||
../../modules/gaming
|
||||
../../modules/applications
|
||||
../../modules/services/keybase.nix
|
||||
../../modules/services/gnupg.nix
|
||||
../../modules/services/mullvad.nix
|
||||
|
@ -8,11 +8,15 @@ darwin.lib.darwinSystem {
|
||||
globals
|
||||
home-manager.darwinModules.home-manager
|
||||
{
|
||||
networking.hostName = "desktop";
|
||||
gui.enable = true;
|
||||
gui.compositor.enable = true;
|
||||
nixpkgs.overlays = [ nur.overlay ];
|
||||
}
|
||||
../common.nix
|
||||
../../modules/darwin
|
||||
../../modules/applications/1password.nix
|
||||
../../modules/applications/alacritty.nix
|
||||
../../modules/applications/discord.nix
|
||||
../../modules/applications/firefox.nix
|
||||
../../modules/applications/obsidian.nix
|
||||
];
|
||||
}
|
||||
|
@ -6,4 +6,5 @@
|
||||
home.packages = with pkgs; [ _1password-gui ];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
||||
|
@ -7,6 +7,7 @@
|
||||
./discord.nix
|
||||
./firefox.nix
|
||||
./media.nix
|
||||
./obsidian.nix
|
||||
./qbittorrent.nix
|
||||
./nautilus.nix
|
||||
];
|
||||
|
10
modules/applications/obsidian.nix
Normal file
10
modules/applications/obsidian.nix
Normal file
@ -0,0 +1,10 @@
|
||||
{ config, pkgs, lib, ... }: {
|
||||
|
||||
config = lib.mkIf config.gui.enable {
|
||||
unfreePackages = [ "obsidian" ];
|
||||
home-manager.users.${config.user} = {
|
||||
home.packages = with pkgs; [ obsidian ];
|
||||
};
|
||||
};
|
||||
|
||||
}
|
94
modules/darwin/utilities.nix
Normal file
94
modules/darwin/utilities.nix
Normal file
@ -0,0 +1,94 @@
|
||||
{ pkgs, ... }: {
|
||||
|
||||
home-manager.users.${config.user} = {
|
||||
|
||||
programs.tmux = {
|
||||
enable = true;
|
||||
baseIndex = 1; # Start windows and panes at 1
|
||||
escapeTime = 0; # Wait time after escape is input
|
||||
historyLimit = 100000;
|
||||
keyMode = "vi";
|
||||
newSession = true; # Automatically spawn new session
|
||||
plugins = [ ];
|
||||
resizeAmount = 10;
|
||||
shell = "${pkgs.fish}/bin/fish";
|
||||
terminal = "screen-256color";
|
||||
extraConfig = ''
|
||||
# Horizontal and vertical splits
|
||||
bind \\ split-window -h -c '#{pane_current_path}'
|
||||
bind - split-window -v -c '#{pane_current_path}'
|
||||
|
||||
# Move between panes with vi keys
|
||||
bind h select-pane -L
|
||||
bind j select-pane -D
|
||||
bind K select-pane -U
|
||||
bind l select-pane -R
|
||||
|
||||
# Split out pane
|
||||
bind b break-pane
|
||||
|
||||
# Synchronize panes
|
||||
bind S set-window-option synchronize-panes
|
||||
|
||||
# Copy mode works as Vim
|
||||
bind Escape copy-mode
|
||||
bind k copy-mode
|
||||
bind C-[ copy-mode
|
||||
|
||||
# Use v to trigger selection
|
||||
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
||||
|
||||
# Use y to yank current selection
|
||||
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
||||
|
||||
# Enable mouse mode
|
||||
set -g mouse on
|
||||
|
||||
# Status bar
|
||||
set -g status-interval 60 # Seconds between refreshes
|
||||
set -g renumber-windows on
|
||||
set-option -g status-position bottom
|
||||
'';
|
||||
};
|
||||
|
||||
home.packages = [
|
||||
visidata # CSV inspector
|
||||
dos2unix # Convert Windows text files
|
||||
inetutils # Includes telnet
|
||||
youtube-dl # Convert web videos
|
||||
pandoc # Convert text documents
|
||||
mpd # TUI slideshows
|
||||
awscli2
|
||||
awslogs
|
||||
kubectl
|
||||
k9s
|
||||
noti # Create notifications programmatically
|
||||
];
|
||||
|
||||
fonts.fonts = with pkgs;
|
||||
[ (nerdfonts.override { fonts = [ "fira-mono" ]; }) ];
|
||||
|
||||
};
|
||||
|
||||
homebrew = {
|
||||
enable = true;
|
||||
autoUpdate = false; # Don't update during rebuild
|
||||
cleanup = "zap"; # Uninstall all programs not declared
|
||||
taps = [
|
||||
"homebrew/cask-drivers" # Used for Logitech G-Hub
|
||||
];
|
||||
brews = [
|
||||
"trash" # Delete to trash instead of rm
|
||||
];
|
||||
casks = [
|
||||
"scroll-reverser" # Different scroll style for mouse vs. trackpad
|
||||
"meetingbar" # Show meetings in menu bar
|
||||
"gitify" # Git notifications in menu bar
|
||||
"hammerspoon" # MacOS custom automation scripting
|
||||
"logitech-g-hub" # Mouse and keyboard management
|
||||
];
|
||||
global.brewfile = true;
|
||||
global.nolock = true;
|
||||
};
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user