feat: Add more stuff
This commit is contained in:
@@ -3,19 +3,36 @@
|
|||||||
{
|
{
|
||||||
programs.alacritty = {
|
programs.alacritty = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
|
||||||
settings = {
|
settings = {
|
||||||
|
window = {
|
||||||
|
padding = { x = 4; y = 8; };
|
||||||
|
decorations = "full";
|
||||||
|
opacity = 1;
|
||||||
|
startup_mode = "Windowed";
|
||||||
|
title = "Alacritty";
|
||||||
|
dynamic_title = true;
|
||||||
|
decorations_theme_variant = "None";
|
||||||
|
};
|
||||||
|
|
||||||
env = {
|
env = {
|
||||||
"TERM" = "alacritty";
|
TERM = "xterm-256color";
|
||||||
};
|
};
|
||||||
|
|
||||||
terminal.shell.program = "zsh";
|
terminal.shell.program = "zsh";
|
||||||
|
|
||||||
font = {
|
font = {
|
||||||
size = 12;
|
size = 14;
|
||||||
normal.family = font;
|
normal.family = font;
|
||||||
bold.family = font;
|
bold.family = font;
|
||||||
italic.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 = {
|
user = {
|
||||||
signingKey = "~/.ssh/id_ed25519.pub";
|
signingKey = "~/.ssh/id_ed25519.pub";
|
||||||
};
|
};
|
||||||
|
pull = {
|
||||||
|
rebase = true;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,14 +7,26 @@
|
|||||||
autosuggestion.enable = true;
|
autosuggestion.enable = true;
|
||||||
syntaxHighlighting.enable = true;
|
syntaxHighlighting.enable = true;
|
||||||
|
|
||||||
|
initExtraFirst = ''
|
||||||
|
[[ "$TERM" == "linux" ]] && return
|
||||||
|
'';
|
||||||
|
|
||||||
|
initExtra = ''
|
||||||
|
source <(nh completions --shell zsh)
|
||||||
|
eval "$(zoxide init zsh)"
|
||||||
|
[[ -z "$TERM" ]] && exec tmux
|
||||||
|
'';
|
||||||
|
|
||||||
shellAliases = {
|
shellAliases = {
|
||||||
update = "sudo nixos-rebuild switch --flake ~/.dotfiles && home-manager switch --flake ~/.dotfiles";
|
|
||||||
".." = "cd ..";
|
".." = "cd ..";
|
||||||
ls = "exa";
|
ls = "exa";
|
||||||
vim = "nvim";
|
vim = "nvim";
|
||||||
grep = "rg";
|
grep = "rg";
|
||||||
du = "dust";
|
du = "dust";
|
||||||
rm = "rip";
|
rm = "rip";
|
||||||
|
cp = "xcp";
|
||||||
|
update-os = "nh os switch ~/.dotfiles";
|
||||||
|
update-home = "nh home switch ~/.dotfiles";
|
||||||
};
|
};
|
||||||
|
|
||||||
history = {
|
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
|
# Custom import for username and email
|
||||||
(import ./configs/git.nix { inherit pkgs config lib; userEmail = email; userName = fullName; })
|
(import ./configs/git.nix { inherit pkgs config lib; userEmail = email; userName = fullName; })
|
||||||
|
|
||||||
|
./configs/firefox.nix
|
||||||
./configs/ssh.nix
|
./configs/ssh.nix
|
||||||
./configs/nvim.nix
|
./configs/nvim.nix
|
||||||
./configs/starship.nix
|
./configs/starship.nix
|
||||||
@@ -41,6 +42,8 @@ in
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
fonts.fontconfig.enable = true;
|
||||||
|
|
||||||
home = {
|
home = {
|
||||||
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
# https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion
|
||||||
stateVersion = "24.05";
|
stateVersion = "24.05";
|
||||||
@@ -52,7 +55,15 @@ in
|
|||||||
NIXOS_OZONE_WL = "1";
|
NIXOS_OZONE_WL = "1";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
file = {
|
||||||
|
"${config.xdg.configHome}/tmux".source = ./dotfiles/tmux;
|
||||||
|
"${config.xdg.configHome}/bottom".source = ./dotfiles/bottom;
|
||||||
|
};
|
||||||
|
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
|
nh
|
||||||
|
bottom
|
||||||
|
lazygit
|
||||||
neofetch
|
neofetch
|
||||||
mission-center
|
mission-center
|
||||||
discord
|
discord
|
||||||
@@ -60,8 +71,12 @@ in
|
|||||||
ripgrep
|
ripgrep
|
||||||
rm-improved
|
rm-improved
|
||||||
dust
|
dust
|
||||||
firefox
|
|
||||||
gh
|
gh
|
||||||
|
zoxide
|
||||||
|
xcp
|
||||||
|
unzip
|
||||||
|
|
||||||
|
(nerdfonts.override { fonts = [ "JetBrainsMono" ]; })
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -103,10 +103,7 @@
|
|||||||
# List packages installed in system profile. To search, run:
|
# List packages installed in system profile. To search, run:
|
||||||
# $ nix search wget
|
# $ nix search wget
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
neovim
|
|
||||||
git
|
|
||||||
pciutils
|
pciutils
|
||||||
unzip
|
|
||||||
];
|
];
|
||||||
|
|
||||||
programs._1password.enable = true;
|
programs._1password.enable = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user