diff options
| author | andromeda <andromeda@lenovo> | 2025-12-30 00:21:26 +0100 |
|---|---|---|
| committer | andromeda <andromeda@lenovo> | 2025-12-30 00:21:26 +0100 |
| commit | abab971ba65b74ba4928c674c96244da8d9ef92b (patch) | |
| tree | 17711dda6a5f6ca40acd5ca982b27b0425ec393c /users/andromeda | |
modularise, combine
Diffstat (limited to 'users/andromeda')
| -rw-r--r-- | users/andromeda/home.nix | 270 | ||||
| -rw-r--r-- | users/andromeda/nix-wallpaper-gear.png | bin | 0 -> 7844869 bytes | |||
| -rw-r--r-- | users/andromeda/stylix.nix | 35 |
3 files changed, 305 insertions, 0 deletions
diff --git a/users/andromeda/home.nix b/users/andromeda/home.nix new file mode 100644 index 0000000..86aea14 --- /dev/null +++ b/users/andromeda/home.nix @@ -0,0 +1,270 @@ +{ + config, + lib, + machine, + pkgs, + ... +}: let + background-path = ".config/sway/background.png"; + sway_config = builtins.toFile "sway_config" '' + set $mod Mod4 + set $left h + set $down j + set $up k + set $right l + set $term alacritty + set $menu wmenu-run + set $screenshot grim -g "$(slurp)" + floating_modifier $mod normal + + workspace_layout stacking + output * bg ${config.home.homeDirectory}/${background-path} fill + + # launch programs + bindsym $mod+Shift+Return exec $term + bindsym $mod+Shift+d exec $menu + bindsym $mod+Shift+a exec anki + bindsym $mod+Shift+q exec librewolf + bindsym $mod+Shift+s exec $screenshot + + bindsym $mod+Shift+c kill + + bindsym $mod+Shift+r reload + + bindsym $mod+Shift+Alt+q exit + + bindsym $mod+$left focus left + bindsym $mod+$down focus down + bindsym $mod+$up focus up + bindsym $mod+$right focus right + + bindsym $mod+Shift+$left move left + bindsym $mod+Shift+$down move down + bindsym $mod+Shift+$up move up + bindsym $mod+Shift+$right move right + + bindsym $mod+1 workspace number 1 + bindsym $mod+2 workspace number 2 + bindsym $mod+3 workspace number 3 + bindsym $mod+4 workspace number 4 + bindsym $mod+5 workspace number 5 + bindsym $mod+6 workspace number 6 + bindsym $mod+7 workspace number 7 + bindsym $mod+8 workspace number 8 + bindsym $mod+9 workspace number 9 + bindsym $mod+0 workspace number 0 + + bindsym $mod+Shift+1 move container to workspace number 1 + bindsym $mod+Shift+2 move container to workspace number 2 + bindsym $mod+Shift+3 move container to workspace number 3 + bindsym $mod+Shift+4 move container to workspace number 4 + bindsym $mod+Shift+5 move container to workspace number 5 + bindsym $mod+Shift+6 move container to workspace number 6 + bindsym $mod+Shift+7 move container to workspace number 7 + bindsym $mod+Shift+8 move container to workspace number 8 + bindsym $mod+Shift+9 move container to workspace number 9 + bindsym $mod+Shift+0 move container to workspace number 0 + + bindsym $mod+f fullscreen + bindsym $mod+Shift+space floating toggle + bindsym $mod+Shift+minus move scratchpad + bindsym $mod+minus scratchpad show + + bindsym --locked XF86AudioMute exec pactl set-sink-mute \@DEFAULT_SINK@ toggle + bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume \@DEFAULT_SINK@ -5% + bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume \@DEFAULT_SINK@ +5% + bindsym --locked XF86AudioMicMute exec pact set-source-mute \@DEFAULT_SOURCE@ toggle + bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- + bindsym --locked XF86MonbrightnessUp exec brightnessctl set 5%+ + + default_border none + font pango:monospace 0.001 + titlebar_border_thickness 0 + titlebar_padding 0 + ''; +in { + imports = [./stylix.nix]; + xdg.configFile."shell".source = lib.getExe pkgs.brush; + xdg.configFile."sway/config".source = lib.mkForce sway_config; + # xdg.configFile.${background-path}.source = ./nix-wallpaper-gear.png; + wayland.windowManager.sway.enable = true; + home = { + username = "andromeda"; + homeDirectory = "/home/${config.home.username}"; + stateVersion = "26.05"; + packages = [ + pkgs.acpi + pkgs.alacritty + pkgs.anki + pkgs.brightnessctl + pkgs.brush + pkgs.dust + pkgs.fluffychat + pkgs.fzf + pkgs.glow + pkgs.grim + pkgs.jmtpfs + pkgs.nix-output-monitor + pkgs.ranger + pkgs.rip2 + pkgs.ripgrep + pkgs.slurp + pkgs.tree + pkgs.zoxide + ]; + file.${background-path}.source = ./nix-wallpaper-gear.png; + }; + programs = { + alacritty.enable = true; + bash = { + enable = true; + shellAliases = { + neofetch = "fastfetch"; + ls = lib.mkForce "lsd"; + ll = lib.mkForce "lsd -l"; + l = "lsd -la"; + cd = "z"; + gg = "git log --oneline --abbrev-commit --all --graph --decorate --color"; + md = "glow"; + }; + bashrcExtra = '' + PS1="\u@\h:\w$" + eval "$(zoxide init bash)" + ''; + }; + btop = { + enable = true; + settings = { + theme_background = false; + vim_keys = true; + rounded_corners = false; + graph_symbol = "braille"; + update_ms = 150; + proc_sorting = "cpu lazy"; + proc_gradient = false; + proc_left = true; + cpu_single_graph = true; + cpu_bottom = true; + clock_format = "/user@/host:/uptime@%H:%M"; + background_update = true; + mem_graphs = false; + mem_below_net = true; + show_swap = false; + only_physical = true; + show_io_stat = true; + io_mode = false; + io_graph_combined = false; + }; + }; + fastfetch.enable = true; + git = { + enable = true; + settings = { + user = { + name = config.home.username; + email = "${config.home.username}@${machine.hostname}"; + }; + init.defaultBranch = "master"; + http.postBuffer = 524288000; + }; + }; + gh.enable = true; + home-manager.enable = true; + librewolf = { + enable = true; + package = pkgs.librewolf.override { + cfg.enableTridactylNative = true; + }; + profiles.${config.home.username}.extensions.packages = [ + pkgs.nur.repos.rycee.firefox-addons.tridactyl + ]; + }; + lsd.enable = true; + nvf = { + enable = true; + settings.vim = { + autocomplete.nvim-cmp.enable = false; + formatter.conform-nvim = { + enable = true; + setupOpts.format_on_save = { + lsp_format = "fallback"; + timeout_ms = 5000; + }; + }; + lsp.otter-nvim.enable = true; + git.enable = true; + keymaps = [ + { + key = "<Down>"; + mode = ["i" "n" "v" "c"]; + action = "<NOP>"; + } + { + key = "<Up>"; + mode = ["i" "n" "v" "c"]; + action = "<NOP>"; + } + { + key = "<Left>"; + mode = ["i" "n" "v" "c"]; + action = "<NOP>"; + } + { + key = "<Right>"; + mode = ["i" "n" "v" "c"]; + action = "<NOP>"; + } + { + key = "jj"; + mode = ["i"]; + action = "<Esc>"; + } + { + key = "kk"; + mode = ["i"]; + action = "<Esc>"; + } + { + key = "jk"; + mode = ["i"]; + action = "<Esc>"; + } + { + key = "kj"; + mode = ["i"]; + action = "<Esc>"; + } + { + key = "<Esc>"; + mode = ["i"]; + action = "<Nop>"; + } + ]; + languages = { + nix = { + enable = true; + format.enable = true; + lsp.enable = true; + }; + haskell = { + enable = true; + lsp.enable = true; + }; + }; + lineNumberMode = "relative"; + options = { + tabstop = 2; + shiftwidth = 2; + expandtab = true; + smarttab = true; + foldmethod = "indent"; + number = true; + colorcolumn = "80"; + }; + statusline.lualine.enable = true; + syntaxHighlighting = true; + }; + }; + ssh.enable = true; + }; +} diff --git a/users/andromeda/nix-wallpaper-gear.png b/users/andromeda/nix-wallpaper-gear.png Binary files differnew file mode 100644 index 0000000..a04e524 --- /dev/null +++ b/users/andromeda/nix-wallpaper-gear.png diff --git a/users/andromeda/stylix.nix b/users/andromeda/stylix.nix new file mode 100644 index 0000000..208d2cc --- /dev/null +++ b/users/andromeda/stylix.nix @@ -0,0 +1,35 @@ +{ + pkgs, + config, + ... +}: { + stylix = { + enable = true; + # rebecca has lavener bkg + # tube has dark gray bkg + # silk-light is light theme + base16Scheme = "${pkgs.base16-schemes}/share/themes/gruvbox-material-dark-hard.yaml"; + polarity = "dark"; + image = ./nix-wallpaper-gear.png; + fonts = { + monospace = { + package = pkgs.miracode; + name = "Miracode"; + }; + serif = config.stylix.fonts.sansSerif; + emoji = { + package = pkgs.noto-fonts-color-emoji; + name = "Noto Color Emoji"; + }; + sizes = { + applications = 12; + terminal = 10; + }; + }; + cursor = { + package = pkgs.hackneyed; + name = "Hackneyed"; + size = 16; + }; + }; +} |
