feat: Add more stuff
This commit is contained in:
@@ -3,19 +3,36 @@
|
||||
{
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
|
||||
settings = {
|
||||
window = {
|
||||
padding = { x = 4; y = 8; };
|
||||
decorations = "full";
|
||||
opacity = 1;
|
||||
startup_mode = "Windowed";
|
||||
title = "Alacritty";
|
||||
dynamic_title = true;
|
||||
decorations_theme_variant = "None";
|
||||
};
|
||||
|
||||
env = {
|
||||
"TERM" = "alacritty";
|
||||
TERM = "xterm-256color";
|
||||
};
|
||||
|
||||
terminal.shell.program = "zsh";
|
||||
|
||||
font = {
|
||||
size = 12;
|
||||
size = 14;
|
||||
normal.family = font;
|
||||
bold.family = font;
|
||||
italic.family = font;
|
||||
};
|
||||
|
||||
cursor = {
|
||||
style = "Block";
|
||||
};
|
||||
|
||||
live_config_reload = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
12
home-manager/configs/firefox.nix
Normal file
12
home-manager/configs/firefox.nix
Normal file
@@ -0,0 +1,12 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
package = pkgs.firefox.override {
|
||||
cfg = {
|
||||
# Gnome shell native connector
|
||||
enableGnomeExtensions = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -20,6 +20,9 @@
|
||||
user = {
|
||||
signingKey = "~/.ssh/id_ed25519.pub";
|
||||
};
|
||||
pull = {
|
||||
rebase = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -7,14 +7,26 @@
|
||||
autosuggestion.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
|
||||
initExtraFirst = ''
|
||||
[[ "$TERM" == "linux" ]] && return
|
||||
'';
|
||||
|
||||
initExtra = ''
|
||||
source <(nh completions --shell zsh)
|
||||
eval "$(zoxide init zsh)"
|
||||
[[ -z "$TERM" ]] && exec tmux
|
||||
'';
|
||||
|
||||
shellAliases = {
|
||||
update = "sudo nixos-rebuild switch --flake ~/.dotfiles && home-manager switch --flake ~/.dotfiles";
|
||||
".." = "cd ..";
|
||||
ls = "exa";
|
||||
vim = "nvim";
|
||||
grep = "rg";
|
||||
du = "dust";
|
||||
rm = "rip";
|
||||
cp = "xcp";
|
||||
update-os = "nh os switch ~/.dotfiles";
|
||||
update-home = "nh home switch ~/.dotfiles";
|
||||
};
|
||||
|
||||
history = {
|
||||
|
||||
189
home-manager/dotfiles/bottom/bottom.toml
Normal file
189
home-manager/dotfiles/bottom/bottom.toml
Normal file
@@ -0,0 +1,189 @@
|
||||
# This is a default config file for bottom. All of the settings are commented
|
||||
# out by default; if you wish to change them uncomment and modify as you see
|
||||
# fit.
|
||||
|
||||
# This group of options represents a command-line flag/option. Flags explicitly
|
||||
# added when running (ie: btm -a) will override this config file if an option
|
||||
# is also set here.
|
||||
|
||||
[flags]
|
||||
# Whether to hide the average cpu entry.
|
||||
#hide_avg_cpu = false
|
||||
# Whether to use dot markers rather than braille.
|
||||
#dot_marker = false
|
||||
# The update rate of the application.
|
||||
rate = "250ms"
|
||||
# Whether to put the CPU legend to the left.
|
||||
#left_legend = false
|
||||
# Whether to set CPU% on a process to be based on the total CPU or just current usage.
|
||||
#current_usage = false
|
||||
# Whether to set CPU% on a process to be based on the total CPU or per-core CPU% (not divided by the number of cpus).
|
||||
#unnormalized_cpu = false
|
||||
# Whether to group processes with the same name together by default.
|
||||
group_processes = true
|
||||
# Whether to make process searching case sensitive by default.
|
||||
#case_sensitive = false
|
||||
# Whether to make process searching look for matching the entire word by default.
|
||||
#whole_word = false
|
||||
# Whether to make process searching use regex by default.
|
||||
#regex = false
|
||||
# Defaults to Celsius. Temperature is one of:
|
||||
#temperature_type = "k"
|
||||
#temperature_type = "f"
|
||||
temperature_type = "c"
|
||||
#temperature_type = "kelvin"
|
||||
#temperature_type = "fahrenheit"
|
||||
#temperature_type = "celsius"
|
||||
# The default time interval (in milliseconds).
|
||||
#default_time_value = "60s"
|
||||
# The time delta on each zoom in/out action (in milliseconds).
|
||||
#time_delta = 15000
|
||||
# Hides the time scale.
|
||||
#hide_time = false
|
||||
# Override layout default widget
|
||||
#default_widget_type = "proc"
|
||||
#default_widget_count = 1
|
||||
# Expand selected widget upon starting the app
|
||||
#expanded_on_startup = true
|
||||
# Use basic mode
|
||||
#basic = false
|
||||
# Use the old network legend style
|
||||
#use_old_network_legend = false
|
||||
# Remove space in tables
|
||||
#hide_table_gap = false
|
||||
# Show the battery widgets
|
||||
battery = true
|
||||
# Disable mouse clicks
|
||||
#disable_click = false
|
||||
# Built-in themes. Valid values are "default", "default-light", "gruvbox", "gruvbox-light", "nord", "nord-light"
|
||||
#color = "default"
|
||||
# Show memory values in the processes widget as values by default
|
||||
mem_as_value = true
|
||||
# Show tree mode by default in the processes widget.
|
||||
#tree = false
|
||||
# Shows an indicator in table widgets tracking where in the list you are.
|
||||
#show_table_scroll_position = false
|
||||
# Show processes as their commands by default in the process widget.
|
||||
#process_command = false
|
||||
# Displays the network widget with binary prefixes.
|
||||
#network_use_binary_prefix = false
|
||||
# Displays the network widget using bytes.
|
||||
network_use_bytes = true
|
||||
# Displays the network widget with a log scale.
|
||||
#network_use_log = false
|
||||
# Hides advanced options to stop a process on Unix-like systems.
|
||||
#disable_advanced_kill = false
|
||||
# Shows GPU(s) memory
|
||||
enable_gpu_memory = true
|
||||
# Shows cache and buffer memory
|
||||
enable_cache_memory = true
|
||||
# How much data is stored at once in terms of time.
|
||||
#retention = "10m"
|
||||
|
||||
# These are flags around the process widget.
|
||||
|
||||
#[processes]
|
||||
#columns = ["PID", "Name", "CPU%", "Mem%", "R/s", "W/s", "T.Read", "T.Write", "User", "State"]
|
||||
|
||||
# These are all the components that support custom theming. Note that colour support
|
||||
# will depend on terminal support.
|
||||
|
||||
#[colors] # Uncomment if you want to use custom colors
|
||||
# Represents the colour of table headers (processes, CPU, disks, temperature).
|
||||
#table_header_color="LightBlue"
|
||||
# Represents the colour of the label each widget has.
|
||||
#widget_title_color="Gray"
|
||||
# Represents the average CPU color.
|
||||
#avg_cpu_color="Red"
|
||||
# Represents the colour the core will use in the CPU legend and graph.
|
||||
#cpu_core_colors=["LightMagenta", "LightYellow", "LightCyan", "LightGreen", "LightBlue", "LightRed", "Cyan", "Green", "Blue", "Red"]
|
||||
# Represents the colour RAM will use in the memory legend and graph.
|
||||
#ram_color="LightMagenta"
|
||||
# Represents the colour SWAP will use in the memory legend and graph.
|
||||
#swap_color="LightYellow"
|
||||
# Represents the colour ARC will use in the memory legend and graph.
|
||||
#arc_color="LightCyan"
|
||||
# Represents the colour the GPU will use in the memory legend and graph.
|
||||
#gpu_core_colors=["LightGreen", "LightBlue", "LightRed", "Cyan", "Green", "Blue", "Red"]
|
||||
# Represents the colour rx will use in the network legend and graph.
|
||||
#rx_color="LightCyan"
|
||||
# Represents the colour tx will use in the network legend and graph.
|
||||
#tx_color="LightGreen"
|
||||
# Represents the colour of the border of unselected widgets.
|
||||
#border_color="Gray"
|
||||
# Represents the colour of the border of selected widgets.
|
||||
#highlighted_border_color="LightBlue"
|
||||
# Represents the colour of most text.
|
||||
#text_color="Gray"
|
||||
# Represents the colour of text that is selected.
|
||||
#selected_text_color="Black"
|
||||
# Represents the background colour of text that is selected.
|
||||
#selected_bg_color="LightBlue"
|
||||
# Represents the colour of the lines and text of the graph.
|
||||
#graph_color="Gray"
|
||||
# Represents the colours of the battery based on charge
|
||||
#high_battery_color="green"
|
||||
#medium_battery_color="yellow"
|
||||
#low_battery_color="red"
|
||||
|
||||
# Layout - layouts follow a pattern like this:
|
||||
# [[row]] represents a row in the application.
|
||||
# [[row.child]] represents either a widget or a column.
|
||||
# [[row.child.child]] represents a widget.
|
||||
#
|
||||
# All widgets must have the type value set to one of ["cpu", "mem", "proc", "net", "temp", "disk", "empty"].
|
||||
# All layout components have a ratio value - if this is not set, then it defaults to 1.
|
||||
# The default widget layout:
|
||||
#[[row]]
|
||||
# ratio=30
|
||||
# [[row.child]]
|
||||
# type="cpu"
|
||||
#[[row]]
|
||||
# ratio=40
|
||||
# [[row.child]]
|
||||
# ratio=4
|
||||
# type="mem"
|
||||
# [[row.child]]
|
||||
# ratio=3
|
||||
# [[row.child.child]]
|
||||
# type="temp"
|
||||
# [[row.child.child]]
|
||||
# type="disk"
|
||||
#[[row]]
|
||||
# ratio=30
|
||||
# [[row.child]]
|
||||
# type="net"
|
||||
# [[row.child]]
|
||||
# type="proc"
|
||||
# default=true
|
||||
|
||||
|
||||
# Filters - you can hide specific temperature sensors, network interfaces, and disks using filters. This is admittedly
|
||||
# a bit hard to use as of now, and there is a planned in-app interface for managing this in the future:
|
||||
#[disk_filter]
|
||||
#is_list_ignored = true
|
||||
#list = ["/dev/sda\\d+", "/dev/nvme0n1p2"]
|
||||
#regex = true
|
||||
#case_sensitive = false
|
||||
#whole_word = false
|
||||
|
||||
#[mount_filter]
|
||||
#is_list_ignored = true
|
||||
#list = ["/mnt/.*", "/boot"]
|
||||
#regex = true
|
||||
#case_sensitive = false
|
||||
#whole_word = false
|
||||
|
||||
#[temp_filter]
|
||||
#is_list_ignored = true
|
||||
#list = ["cpu", "wifi"]
|
||||
#regex = false
|
||||
#case_sensitive = false
|
||||
#whole_word = false
|
||||
|
||||
#[net_filter]
|
||||
#is_list_ignored = true
|
||||
#list = ["virbr0.*"]
|
||||
#regex = true
|
||||
#case_sensitive = false
|
||||
#whole_word = false
|
||||
55
home-manager/dotfiles/tmux/tmux.conf
Normal file
55
home-manager/dotfiles/tmux/tmux.conf
Normal file
@@ -0,0 +1,55 @@
|
||||
set-option -sa terminal-overrides ",xterm*:Tc"
|
||||
set -g mouse on
|
||||
|
||||
# Vim style pane selection
|
||||
bind h select-pane -L
|
||||
bind j select-pane -D
|
||||
bind k select-pane -U
|
||||
bind l select-pane -R
|
||||
|
||||
# Start windows and panes at 1, not 0
|
||||
set -g base-index 1
|
||||
set -g pane-base-index 1
|
||||
set-window-option -g pane-base-index 1
|
||||
set-option -g renumber-windows on
|
||||
|
||||
# Use Alt-arrow keys without prefix key to switch panes
|
||||
bind -n M-Left select-pane -L
|
||||
bind -n M-Right select-pane -R
|
||||
bind -n M-Up select-pane -U
|
||||
bind -n M-Down select-pane -D
|
||||
|
||||
# Shift arrow to switch windows
|
||||
bind -n S-Left previous-window
|
||||
bind -n S-Right next-window
|
||||
|
||||
# Shift Alt vim keys to switch windows
|
||||
bind -n M-H previous-window
|
||||
bind -n M-L next-window
|
||||
|
||||
set -g @catppuccin_flavour 'mocha'
|
||||
set -g @tokyo-night-tmux_show_datetime 0
|
||||
set -g @tokyo-night-tmux_show_path 1
|
||||
set -g @tokyo-night-tmux_path_format relative
|
||||
set -g @tokyo-night-tmux_window_id_style dsquare
|
||||
set -g @tokyo-night-tmux_window_id_style dsquare
|
||||
set -g @tokyo-night-tmux_show_git 0
|
||||
|
||||
set -g @plugin 'tmux-plugins/tpm'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'christoomey/vim-tmux-navigator'
|
||||
set -g @plugin 'dreamsofcode-io/catppuccin-tmux'
|
||||
set -g @plugin 'tmux-plugins/tmux-yank'
|
||||
|
||||
run '~/.tmux/plugins/tpm/tpm'
|
||||
|
||||
# set vi-mode
|
||||
set-window-option -g mode-keys vi
|
||||
# keybindings
|
||||
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
||||
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
|
||||
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
||||
|
||||
bind '"' split-window -v -c "#{pane_current_path}"
|
||||
bind % split-window -h -c "#{pane_current_path}"
|
||||
bind c new-window -c "#{pane_current_path}"
|
||||
@@ -24,6 +24,7 @@ in
|
||||
# Custom import for username and email
|
||||
(import ./configs/git.nix { inherit pkgs config lib; userEmail = email; userName = fullName; })
|
||||
|
||||
./configs/firefox.nix
|
||||
./configs/ssh.nix
|
||||
./configs/nvim.nix
|
||||
./configs/starship.nix
|
||||
@@ -41,6 +42,8 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
fonts.fontconfig.enable = true;
|
||||
|
||||
home = {
|
||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||
stateVersion = "24.05";
|
||||
@@ -52,7 +55,15 @@ in
|
||||
NIXOS_OZONE_WL = "1";
|
||||
};
|
||||
|
||||
file = {
|
||||
"${config.xdg.configHome}/tmux".source = ./dotfiles/tmux;
|
||||
"${config.xdg.configHome}/bottom".source = ./dotfiles/bottom;
|
||||
};
|
||||
|
||||
packages = with pkgs; [
|
||||
nh
|
||||
bottom
|
||||
lazygit
|
||||
neofetch
|
||||
mission-center
|
||||
discord
|
||||
@@ -60,8 +71,12 @@ in
|
||||
ripgrep
|
||||
rm-improved
|
||||
dust
|
||||
firefox
|
||||
gh
|
||||
zoxide
|
||||
xcp
|
||||
unzip
|
||||
|
||||
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
|
||||
];
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user