treewide: remove unused files
|
@ -5,19 +5,10 @@
|
|||
...
|
||||
}: {
|
||||
imports = map (n: ../../../../home/applications/${n}) [
|
||||
# Terminal
|
||||
"alacritty"
|
||||
|
||||
# Editor
|
||||
"neovim"
|
||||
"vscode"
|
||||
|
||||
# Language
|
||||
"nix"
|
||||
"go"
|
||||
|
||||
# Media
|
||||
"mpv"
|
||||
"nix"
|
||||
];
|
||||
|
||||
# Install MacOS applications to the user Applications folder. Also update Docked applications
|
||||
|
@ -46,15 +37,6 @@
|
|||
programs = let
|
||||
monospace = "JetBrainsMono Nerd Font";
|
||||
in {
|
||||
### VSCode
|
||||
vscode.userSettings.editor.fontFamily = monospace;
|
||||
|
||||
### Alacritty
|
||||
alacritty.settings.font = {
|
||||
normal.family = monospace;
|
||||
bold.family = monospace;
|
||||
bold_italic.family = monospace;
|
||||
italic.family = monospace;
|
||||
};
|
||||
alacritty.settings.font.normal.family = monospace;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,8 +6,18 @@
|
|||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
env.WINIT_X11_SCALE_FACTOR = "1"; # workaround for scaling in X11
|
||||
window.option_as_alt = lib.mkIf pkgs.stdenv.hostPlatform.isDarwin "Both"; # for zellij on macOS
|
||||
import = [
|
||||
"${pkgs.vimPlugins.tokyonight-nvim}/extras/alacritty/tokyonight_night.toml"
|
||||
];
|
||||
|
||||
cursor.style = "beam";
|
||||
font.size = 10;
|
||||
|
||||
# workaround for scaling in X11
|
||||
env.WINIT_X11_SCALE_FACTOR = "1";
|
||||
|
||||
# for zellij on macOS
|
||||
window.option_as_alt = lib.mkIf pkgs.stdenv.hostPlatform.isDarwin "Both";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,50 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
home.packages = [pkgs.blackbox-terminal];
|
||||
|
||||
# classic... dconf
|
||||
dconf.settings."com/raggesilver/BlackBox" = {
|
||||
pretty = false; # "Theme Integration"
|
||||
cursor-shape = lib.hm.gvariant.mkUint32 1; # "line" cursor
|
||||
#show-headerbar = false;
|
||||
terminal-padding = lib.hm.gvariant.mkTuple [
|
||||
(lib.hm.gvariant.mkUint32 12)
|
||||
(lib.hm.gvariant.mkUint32 12)
|
||||
(lib.hm.gvariant.mkUint32 12)
|
||||
(lib.hm.gvariant.mkUint32 12)
|
||||
];
|
||||
};
|
||||
|
||||
# TODO: Tokyo Night
|
||||
# Example:
|
||||
#''
|
||||
# {
|
||||
# "name": "Gruvbox for Tilix",
|
||||
# "comment": "Ported for Trilix Colour Scheme",
|
||||
# "use-theme-colors": false,
|
||||
# "foreground-color": "#ebdbb2",
|
||||
# "background-color": "#282828",
|
||||
# "palette": [
|
||||
# "#282829",
|
||||
# "#cc241d",
|
||||
# "#98971a",
|
||||
# "#d79921",
|
||||
# "#458588",
|
||||
# "#b16286",
|
||||
# "#689d6a",
|
||||
# "#a89984",
|
||||
# "#928374",
|
||||
# "#fb4934",
|
||||
# "#b8bb26",
|
||||
# "#fabd2f",
|
||||
# "#83a598",
|
||||
# "#d3869b",
|
||||
# "#8ec07c",
|
||||
# "#ebdbb2"
|
||||
# ]
|
||||
# }
|
||||
#'';
|
||||
}
|
|
@ -1,75 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
imports = [
|
||||
../common/wm.nix
|
||||
../dunst
|
||||
../picom
|
||||
../polybar
|
||||
../rofi
|
||||
../sxhkd
|
||||
../udiskie
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [flameshot feh];
|
||||
|
||||
xsession = {
|
||||
enable = true;
|
||||
windowManager.bspwm = {
|
||||
enable = true;
|
||||
startupPrograms = [
|
||||
"pgrep -x sxhkd > /dev/null || sxhkd"
|
||||
"pgrep -x feh > /dev/null || feh --no-fehbg --bg-fill ~/.local/share/backgrounds/Minato-Aqua-Dark.png"
|
||||
];
|
||||
monitors = {
|
||||
eDP-1 = ["I" "II" "III" "IV" "V" "VI" "VII" "VIII" "IX" "X"];
|
||||
};
|
||||
settings = {
|
||||
border_width = 2;
|
||||
window_gap = 4;
|
||||
focus_follows_pointer = true;
|
||||
split_ratio = 0.52;
|
||||
borderless_monocle = true;
|
||||
gapless_monocle = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
home.file.".xinitrc".text = ''
|
||||
#!/usr/bin/env bash
|
||||
|
||||
userresources=$HOME/.Xresources
|
||||
usermodmap=$HOME/.Xmodmap
|
||||
sysresources=/etc/X11/xinit/.Xresources
|
||||
sysmodmap=/etc/X11/xinit/.Xmodmap
|
||||
|
||||
# merge in defaults and keymaps
|
||||
if [ -f $sysresources ]; then
|
||||
xrdb -merge $sysresources
|
||||
fi
|
||||
|
||||
if [ -f $sysmodmap ]; then
|
||||
xmodmap $sysmodmap
|
||||
fi
|
||||
|
||||
if [ -f "$userresources" ]; then
|
||||
xrdb -merge "$userresources"
|
||||
|
||||
fi
|
||||
|
||||
if [ -f "$usermodmap" ]; then
|
||||
xmodmap "$usermodmap"
|
||||
fi
|
||||
|
||||
# start some nice programs
|
||||
if [ -d /etc/X11/xinit/xinitrc.d ] ; then
|
||||
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
|
||||
[ -x "$f" ] && . "$f"
|
||||
done
|
||||
unset f
|
||||
fi
|
||||
|
||||
# https://wiki.archlinux.org/title/Cursor_themes#Change_X_shaped_default_cursor
|
||||
xsetroot -cursor_name left_ptr
|
||||
|
||||
exec bspwm
|
||||
'';
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
{
|
||||
programs.chromium = {
|
||||
enable = true;
|
||||
#package = pkgs.ungoogled-chromium;
|
||||
# ungoogled-chrome does not work with extensions for now
|
||||
# https://github.com/nix-community/home-manager/issues/2216
|
||||
# https://github.com/nix-community/home-manager/issues/2585
|
||||
extensions = [
|
||||
{id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";} # ublock origin
|
||||
{id = "mnjggcdmjocbbbhaepdhchncahnbgone";} # sponsorblock
|
||||
{id = "icallnadddjmdinamnolclfjanhfoafe";} # fastforward
|
||||
{id = "dbepggeogbaibhgnhhndojpepiihcmeb";} # vimium
|
||||
{id = "nngceckbapebfimnlniiiahkandclblb";} # bitwarden
|
||||
{id = "gebbhagfogifgggkldgodflihgfeippi";} # return youtube dislike
|
||||
{id = "eimadpbcbfnmbkopoojfekhnkhdbieeh";} # dark reader
|
||||
{id = "njdfdhgcmkocbgbhcioffdbicglldapd";} # localcdn
|
||||
{id = "hipekcciheckooncpjeljhnekcoolahp";} # tabliss
|
||||
{id = "bgfofngpplpmpijncjegfdgilpgamhdk";} # modern scrollbar
|
||||
{id = "ajhmfdgkijocedmfjonnpjfojldioehi";} # privacy pass
|
||||
{id = "hkgfoiooedgoejojocmhlaklaeopbecg";} # picture in picture
|
||||
#{id = "fnaicdffflnofjppbagibeoednhnbjhg";} # floccus bookmark sync
|
||||
#{id = "jaoafjdoijdconemdmodhbfpianehlon";} # skip redirect
|
||||
#{id = "dhdgffkkebhmkfjojejmpbldmpobfkfo";} # tampermonkey
|
||||
#{id = "jinjaccalgkegednnccohejagnlnfdag";} # violentmonkey
|
||||
#{id = "kdbmhfkmnlmbkgbabkdealhhbfhlmmon";} # steamdb
|
||||
#{id = "cmeakgjggjdlcpncigglobpjbkabhmjl";} # steam inventory helper
|
||||
#{id = "mgijmajocgfcbeboacabfgobmjgjcoja";} # google dictionary
|
||||
#{id = "kbfnbcaeplbcioakkpcpgfkobkghlhen";} # grammarly
|
||||
#{id = "ekbmhggedfdlajiikminikhcjffbleac";} # 喵喵折+
|
||||
];
|
||||
};
|
||||
}
|
|
@ -1,31 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
settings = lib.mkMerge [
|
||||
{
|
||||
global = {
|
||||
padding = 10;
|
||||
horizontal_padding = 10;
|
||||
frame_width = 2;
|
||||
font = "Monospace 10";
|
||||
icon_path = "/home/guanranwang/.local/share/icons/dunst";
|
||||
corner_radius = 10;
|
||||
|
||||
max_icon_size = 128; # weird bug, default value (128) not working
|
||||
};
|
||||
}
|
||||
(lib.mkIf (config.myFlake.home-manager.colorScheme == "tokyonight")
|
||||
(builtins.fromTOML (builtins.readFile "${pkgs.vimPlugins.tokyonight-nvim}/extras/dunst/tokyonight_night.dunstrc")))
|
||||
];
|
||||
};
|
||||
|
||||
xdg.dataFile."icons/dunst" = {
|
||||
source = ./dunst;
|
||||
recursive = true;
|
||||
};
|
||||
}
|
Before Width: | Height: | Size: 514 B |
Before Width: | Height: | Size: 603 B |
Before Width: | Height: | Size: 479 B |
Before Width: | Height: | Size: 678 B |
Before Width: | Height: | Size: 358 B |
Before Width: | Height: | Size: 533 B |
Before Width: | Height: | Size: 760 B |
Before Width: | Height: | Size: 380 B |
Before Width: | Height: | Size: 425 B |
|
@ -1,3 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
home.packages = [pkgs.fastfetch];
|
||||
}
|
|
@ -1,15 +1,9 @@
|
|||
{
|
||||
pkgs,
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
{pkgs, ...}: {
|
||||
programs.fish = {
|
||||
enable = true;
|
||||
interactiveShellInit = ''
|
||||
set fish_greeting
|
||||
${lib.strings.optionalString (config.myFlake.home-manager.colorScheme == "tokyonight")
|
||||
"source ${pkgs.vimPlugins.tokyonight-nvim}/extras/fish/tokyonight_night.fish"}
|
||||
source ${pkgs.vimPlugins.tokyonight-nvim}/extras/fish/tokyonight_night.fish
|
||||
'';
|
||||
plugins = [
|
||||
{
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
{
|
||||
programs.foot.enable = true;
|
||||
}
|
|
@ -1,21 +0,0 @@
|
|||
# why is this placed in ./wm
|
||||
{pkgs, ...}: {
|
||||
home.packages =
|
||||
(with pkgs.gnomeExtensions; [
|
||||
# GNOME extensions
|
||||
arcmenu
|
||||
appindicator
|
||||
blur-my-shell
|
||||
caffeine
|
||||
dash-to-panel
|
||||
dash-to-dock
|
||||
gamemode # outdated
|
||||
just-perfection
|
||||
kimpanel
|
||||
])
|
||||
++ (with pkgs.gnome; [
|
||||
gnome-tweaks
|
||||
gnome-software
|
||||
gnome-shell-extensions
|
||||
]);
|
||||
}
|
|
@ -5,15 +5,11 @@
|
|||
}: {
|
||||
programs.go.enable = true;
|
||||
home.packages = with pkgs; [
|
||||
gopls # lsp
|
||||
delve # debugger
|
||||
go-tools # linter and static analysis
|
||||
gopls
|
||||
delve
|
||||
go-tools
|
||||
];
|
||||
### VSCode
|
||||
programs.vscode.extensions = with pkgs.vscode-extensions; [golang.go];
|
||||
|
||||
# Make Go follow XDG
|
||||
# "$HOME/go"...
|
||||
xdg.configFile = {
|
||||
"go/env".text = ''
|
||||
GOPATH=${config.xdg.cacheHome}/go
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.helix = {
|
||||
enable = true;
|
||||
# defaultEditor = true;
|
||||
settings = {
|
||||
theme =
|
||||
lib.mkIf (config.myFlake.home-manager.colorScheme == "tokyonight")
|
||||
"tokyonight";
|
||||
editor = {
|
||||
cursor-shape = {
|
||||
insert = "bar";
|
||||
normal = "block";
|
||||
select = "underline";
|
||||
};
|
||||
statusline.mode = {
|
||||
normal = "--NORMAL--";
|
||||
insert = "--INSERT--";
|
||||
select = "--SELECT--";
|
||||
};
|
||||
soft-wrap.enable = true;
|
||||
indent-guides.render = true;
|
||||
file-picker.hidden = false;
|
||||
};
|
||||
# i still use these keybinds sometimes, even its hard to reach
|
||||
keys.insert = {
|
||||
C-left = "move_prev_word_start";
|
||||
C-right = "move_next_word_end";
|
||||
};
|
||||
keys.normal = {
|
||||
C-left = "move_prev_word_start";
|
||||
C-right = "move_next_word_end";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,41 +0,0 @@
|
|||
{
|
||||
#inputs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
../common/wayland.nix
|
||||
../common/wm.nix
|
||||
../cliphist
|
||||
../dunst
|
||||
../rofi
|
||||
../swayidle
|
||||
../swaylock
|
||||
../swww
|
||||
../udiskie
|
||||
../waybar
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
QT_IM_MODULE = lib.mkForce "wayland"; # use text-input-v2
|
||||
GTK_IM_MODULE = lib.mkForce "wayland"; # use text-input-v3
|
||||
};
|
||||
|
||||
wayland.windowManager.hyprland = {
|
||||
enable = true;
|
||||
#plugins = with inputs.hyprland-plugins.packages.${pkgs.stdenv.hostPlatform.system}; [
|
||||
# csgo-vulkan-fix
|
||||
#];
|
||||
|
||||
extraConfig = ''
|
||||
source = ~/.config/hypr/main.conf
|
||||
source = ~/.config/hypr/keybinds.conf
|
||||
source = ~/.config/hypr/autostart.conf
|
||||
'';
|
||||
};
|
||||
|
||||
xdg.configFile."hypr" = {
|
||||
source = ./hypr;
|
||||
recursive = true;
|
||||
};
|
||||
}
|
|
@ -1,2 +0,0 @@
|
|||
exec-once = swww init
|
||||
exec-once = waybar
|
|
@ -1,2 +0,0 @@
|
|||
preload = /usr/share/backgrounds/odin-dark.jpg
|
||||
wallpaper = eDP-1, /usr/share/backgrounds/odin-dark.jpg
|
|
@ -1,118 +0,0 @@
|
|||
# bind vars
|
||||
$wp = ~/.local/bin/wrapped-swww
|
||||
$dwp = ~/.local/bin/wrapped-mpvpaper
|
||||
$changevolume = ~/.local/bin/wrapped-pamixer
|
||||
$changebrightness = ~/.local/bin/wrapped-brightnessctl
|
||||
$screenshot = ~/.local/bin/screenshot
|
||||
$video_path = ~/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/workshop/content/431960
|
||||
|
||||
# binds
|
||||
bind = SUPER, return, exec, alacritty
|
||||
bind = SUPER, E, exec, xdg-open ~
|
||||
bind = SUPER, W, exec, xdg-open http:
|
||||
bind = CONTROL SHIFT, Escape, exec, gnome-system-monitor
|
||||
|
||||
bind = ALT, R, exec, zenity --width 500 --entry | wl-copy
|
||||
bind = SUPER, Backspace, exec, swaylock
|
||||
|
||||
bind = SUPER, F, fullscreen, 0
|
||||
bind = SUPER SHIFT, F, fullscreen, 1
|
||||
|
||||
bind = SUPER, Q, killactive
|
||||
bind = CONTROL SUPER SHIFT, Q, exec, hyprctl kill
|
||||
bind = SUPER SHIFT, R, exec, pkill waybar; waybar
|
||||
bind = CONTROL ALT, delete, exit,
|
||||
|
||||
# rofi / application launcher
|
||||
bind = SUPER, D, exec, rofi -show drun -show-icons -icon-theme Tela-dracula-dark
|
||||
bind = SUPER SHIFT, D, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
|
||||
bind = SUPER, Period, exec, rofi -modi emoji -show emoji
|
||||
bind = SUPER SHIFT, L, exec, rofi -modi "power-menu:rofi-power-menu --confirm=reboot/shutdown" -show power-menu
|
||||
|
||||
# screenshot
|
||||
bind = ,Print, exec, $screenshot fullscreen
|
||||
bind = SUPER SHIFT, S, exec, $screenshot region
|
||||
bind = ALT SHIFT, S, exec, $screenshot swappy
|
||||
|
||||
# wallpaper switching
|
||||
bind = SHIFT ALT, 1, exec, $wp /usr/share/backgrounds/odin.jpg # pkg: elementary-wallpapers
|
||||
bind = SHIFT ALT, 2, exec, $wp /usr/share/backgrounds/odin-dark.jpg
|
||||
bind = SHIFT ALT, 3, exec, $wp ~/.local/share/backgrounds/Mojave\ Night.jpg
|
||||
bind = SHIFT ALT, 4, exec, $wp ~/.local/share/backgrounds/wallpaper2.jpg
|
||||
bind = SHIFT ALT, 5, exec, $wp ~/.local/share/backgrounds/wallpaper3.jpg
|
||||
bind = SHIFT ALT, 6, exec, $wp ~/.local/share/backgrounds/wallpaper1.png # aur: mint-backgrounds
|
||||
# /usr/share/backgrounds/archlinux/simple.png # archlinux-wallpapers
|
||||
# /usr/share/backgrounds/archlinux/small.png
|
||||
|
||||
# video wallpapers from wallpaper engine
|
||||
bind = SHIFT ALT, 7, exec, $dwp $video_path/2292710588/KleeWP.mp4
|
||||
bind = SHIFT ALT, 8, exec, $dwp $video_path/821372791/灵梦.mp4
|
||||
bind = SHIFT ALT, 9, exec, $dwp $video_path/827148653/Gargantua_BGM.mp4
|
||||
bind = SHIFT ALT, 0, exec, $dwp $video_path/1661372823/EP03.mp4
|
||||
bind = SHIFT ALT, Minus, exec, $dwp $video_path/2855732285/彩虹鸭鸭.mp4
|
||||
bind = SHIFT ALT, Backspace, exec, pkill mpvpaper
|
||||
|
||||
# keyboard fn buttons
|
||||
binde = ,XF86MonBrightnessUp, exec, $changebrightness up
|
||||
binde = ,XF86MonBrightnessDown, exec, $changebrightness down
|
||||
binde = ,XF86AudioRaiseVolume, exec, $changevolume up
|
||||
binde = ,XF86AudioLowerVolume, exec, $changevolume down
|
||||
bind = ,XF86AudioMute, exec, $changevolume mute
|
||||
|
||||
bind = ,XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = ,XF86AudioPrev, exec, playerctl previous
|
||||
bind = ,XF86AudioNext, exec, playerctl next
|
||||
bind = ,XF86AudioStop, exec, playerctl stop
|
||||
bind = ,XF86AudioMedia, exec, playerctl play-pause
|
||||
|
||||
# window mode
|
||||
bind = SUPER, C, pseudo # dwindle
|
||||
bind = SUPER, S, togglesplit # dwindle
|
||||
bind = SUPER, V, togglefloating
|
||||
|
||||
# window size
|
||||
binde = SUPER, Minus, splitratio, -0.1
|
||||
binde = SUPER, Equal, splitratio, 0.1
|
||||
|
||||
# move window focus
|
||||
bind = SUPER, H, movefocus, l
|
||||
bind = SUPER, J, movefocus, d
|
||||
bind = SUPER, K, movefocus, u
|
||||
bind = SUPER, L, movefocus, r
|
||||
|
||||
bind = SUPER, left, movefocus, l
|
||||
bind = SUPER, right, movefocus, r
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER, down, movefocus, d
|
||||
|
||||
bind = SUPER, Tab, cyclenext # change focus to another window
|
||||
bind = SUPER, Tab, bringactivetotop # bring it to the top
|
||||
|
||||
# workspaces binds
|
||||
bind = SUPER, 1, workspace, 1
|
||||
bind = SUPER, 2, workspace, 2
|
||||
bind = SUPER, 3, workspace, 3
|
||||
bind = SUPER, 4, workspace, 4
|
||||
bind = SUPER, 5, workspace, 5
|
||||
bind = SUPER, 6, workspace, 6
|
||||
bind = SUPER, 7, workspace, 7
|
||||
bind = SUPER, 8, workspace, 8
|
||||
bind = SUPER, 9, workspace, 9
|
||||
bind = SUPER, 0, workspace, 10
|
||||
|
||||
bind = SUPER SHIFT, 1, movetoworkspacesilent, 1
|
||||
bind = SUPER SHIFT, 2, movetoworkspacesilent, 2
|
||||
bind = SUPER SHIFT, 3, movetoworkspacesilent, 3
|
||||
bind = SUPER SHIFT, 4, movetoworkspacesilent, 4
|
||||
bind = SUPER SHIFT, 5, movetoworkspacesilent, 5
|
||||
bind = SUPER SHIFT, 6, movetoworkspacesilent, 6
|
||||
bind = SUPER SHIFT, 7, movetoworkspacesilent, 7
|
||||
bind = SUPER SHIFT, 8, movetoworkspacesilent, 8
|
||||
bind = SUPER SHIFT, 9, movetoworkspacesilent, 9
|
||||
bind = SUPER SHIFT, 0, movetoworkspacesilent, 10
|
||||
|
||||
# mouse binds
|
||||
bind = SUPER, mouse_down, workspace, e-1 # scroll wheels
|
||||
bind = SUPER, mouse_up, workspace, e+1
|
||||
bindm = SUPER, mouse:272, movewindow # left click
|
||||
bindm = SUPER, mouse:273, resizewindow # right click
|
|
@ -1,80 +0,0 @@
|
|||
# Display settings
|
||||
monitor = ,preferred, auto, 1
|
||||
monitor = eDP-1, 1920x1080@60, 0x0, 1.25 # laptop screen eDP-1
|
||||
|
||||
# General settings
|
||||
general {
|
||||
gaps_in = 4
|
||||
gaps_out = 8 # dont forget to change waybar margin
|
||||
border_size = 2
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
# Decorations
|
||||
decoration {
|
||||
blur {
|
||||
size = 4
|
||||
passes = 4
|
||||
}
|
||||
rounding = 4
|
||||
shadow_range = 50
|
||||
shadow_render_power = 5
|
||||
col.shadow = 0x88000000
|
||||
col.shadow_inactive = 0x44000000
|
||||
}
|
||||
|
||||
# Animations
|
||||
animations {
|
||||
bezier = easeOutExpo, 0.16, 1, 0.3, 1
|
||||
bezier = easeOutQuint, 0.22, 1, 0.36, 1
|
||||
animation = windows, 1, 6, default, popin
|
||||
animation = fade, 1, 8, default
|
||||
animation = border, 1, 8, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = workspaces, 1, 4, default
|
||||
}
|
||||
|
||||
# Input settings
|
||||
input {
|
||||
accel_profile = flat
|
||||
#force_no_accel = false
|
||||
natural_scroll = true
|
||||
touchpad {
|
||||
natural_scroll = true
|
||||
disable_while_typing = false
|
||||
drag_lock = true
|
||||
}
|
||||
}
|
||||
|
||||
# idk
|
||||
dwindle {
|
||||
pseudotile = true
|
||||
preserve_split = true
|
||||
}
|
||||
|
||||
# Touchpad gestures
|
||||
gestures {
|
||||
workspace_swipe = true # touchpad swipe to switch workspaces
|
||||
workspace_swipe_distance = 600 # doubles gesture distance
|
||||
}
|
||||
|
||||
# XWayland
|
||||
XWayland {
|
||||
#use_nearest_neighbor = false
|
||||
force_zero_scaling = true
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
disable_splash_rendering = true
|
||||
animate_manual_resizes = true
|
||||
}
|
||||
|
||||
# Windows rules
|
||||
windowrule = float, ^(pwvucontrol)$
|
||||
windowrule = float, ^(org.gnome.Calculator)$
|
||||
|
||||
# Layer rules
|
||||
layerrule = blur, notifications
|
||||
layerrule = blur, rofi
|
||||
layerrule = ignorezero, notifications
|
|
@ -1,10 +0,0 @@
|
|||
# i dont actually know how did i get this color scheme
|
||||
|
||||
general {
|
||||
#col.active_border = rgba(60C4F1FF) rgba(9F9BABFF) rgba(A2AECFFF) 45deg
|
||||
#col.active_border = rgba(222222FF)
|
||||
col.active_border = rgba(C0CAF5FF)
|
||||
#col.inactive_border = rgba(60C4F166)
|
||||
#col.inactive_border = rgba(222222FF)
|
||||
col.inactive_border = rgba(414868FF)
|
||||
}
|
|
@ -1,61 +0,0 @@
|
|||
$rosewaterAlpha = f2d5cf
|
||||
$flamingoAlpha = eebebe
|
||||
$pinkAlpha = f4b8e4
|
||||
$mauveAlpha = ca9ee6
|
||||
$redAlpha = e78284
|
||||
$maroonAlpha = ea999c
|
||||
$peachAlpha = ef9f76
|
||||
$yellowAlpha = e5c890
|
||||
$greenAlpha = a6d189
|
||||
$tealAlpha = 81c8be
|
||||
$skyAlpha = 99d1db
|
||||
$sapphireAlpha = 85c1dc
|
||||
$blueAlpha = 8caaee
|
||||
$lavenderAlpha = babbf1
|
||||
|
||||
$textAlpha = c6d0f5
|
||||
$subtext1Alpha = b5bfe2
|
||||
$subtext0Alpha = a5adce
|
||||
|
||||
$overlay2Alpha = 949cbb
|
||||
$overlay1Alpha = 838ba7
|
||||
$overlay0Alpha = 737994
|
||||
|
||||
$surface2Alpha = 626880
|
||||
$surface1Alpha = 51576d
|
||||
$surface0Alpha = 414559
|
||||
|
||||
$baseAlpha = 303446
|
||||
$mantleAlpha = 292c3c
|
||||
$crustAlpha = 232634
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
|
@ -1,61 +0,0 @@
|
|||
$rosewaterAlpha = dc8a78
|
||||
$flamingoAlpha = dd7878
|
||||
$pinkAlpha = ea76cb
|
||||
$mauveAlpha = 8839ef
|
||||
$redAlpha = d20f39
|
||||
$maroonAlpha = e64553
|
||||
$peachAlpha = fe640b
|
||||
$yellowAlpha = df8e1d
|
||||
$greenAlpha = 40a02b
|
||||
$tealAlpha = 179299
|
||||
$skyAlpha = 04a5e5
|
||||
$sapphireAlpha = 209fb5
|
||||
$blueAlpha = 1e66f5
|
||||
$lavenderAlpha = 7287fd
|
||||
|
||||
$textAlpha = 4c4f69
|
||||
$subtext1Alpha = 5c5f77
|
||||
$subtext0Alpha = 6c6f85
|
||||
|
||||
$overlay2Alpha = 7c7f93
|
||||
$overlay1Alpha = 8c8fa1
|
||||
$overlay0Alpha = 9ca0b0
|
||||
|
||||
$surface2Alpha = acb0be
|
||||
$surface1Alpha = bcc0cc
|
||||
$surface0Alpha = ccd0da
|
||||
|
||||
$baseAlpha = eff1f5
|
||||
$mantleAlpha = e6e9ef
|
||||
$crustAlpha = dce0e8
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
|
@ -1,61 +0,0 @@
|
|||
$rosewaterAlpha = f4dbd6
|
||||
$flamingoAlpha = f0c6c6
|
||||
$pinkAlpha = f5bde6
|
||||
$mauveAlpha = c6a0f6
|
||||
$redAlpha = ed8796
|
||||
$maroonAlpha = ee99a0
|
||||
$peachAlpha = f5a97f
|
||||
$yellowAlpha = eed49f
|
||||
$greenAlpha = a6da95
|
||||
$tealAlpha = 8bd5ca
|
||||
$skyAlpha = 91d7e3
|
||||
$sapphireAlpha = 7dc4e4
|
||||
$blueAlpha = 8aadf4
|
||||
$lavenderAlpha = b7bdf8
|
||||
|
||||
$textAlpha = cad3f5
|
||||
$subtext1Alpha = b8c0e0
|
||||
$subtext0Alpha = a5adcb
|
||||
|
||||
$overlay2Alpha = 939ab7
|
||||
$overlay1Alpha = 8087a2
|
||||
$overlay0Alpha = 6e738d
|
||||
|
||||
$surface2Alpha = 5b6078
|
||||
$surface1Alpha = 494d64
|
||||
$surface0Alpha = 363a4f
|
||||
|
||||
$baseAlpha = 24273a
|
||||
$mantleAlpha = 1e2030
|
||||
$crustAlpha = 181926
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
|
@ -1,61 +0,0 @@
|
|||
$rosewaterAlpha = f5e0dc
|
||||
$flamingoAlpha = f2cdcd
|
||||
$pinkAlpha = f5c2e7
|
||||
$mauveAlpha = cba6f7
|
||||
$redAlpha = f38ba8
|
||||
$maroonAlpha = eba0ac
|
||||
$peachAlpha = fab387
|
||||
$yellowAlpha = f9e2af
|
||||
$greenAlpha = a6e3a1
|
||||
$tealAlpha = 94e2d5
|
||||
$skyAlpha = 89dceb
|
||||
$sapphireAlpha = 74c7ec
|
||||
$blueAlpha = 89b4fa
|
||||
$lavenderAlpha = b4befe
|
||||
|
||||
$textAlpha = cdd6f4
|
||||
$subtext1Alpha = bac2de
|
||||
$subtext0Alpha = a6adc8
|
||||
|
||||
$overlay2Alpha = 9399b2
|
||||
$overlay1Alpha = 7f849c
|
||||
$overlay0Alpha = 6c7086
|
||||
|
||||
$surface2Alpha = 585b70
|
||||
$surface1Alpha = 45475a
|
||||
$surface0Alpha = 313244
|
||||
|
||||
$baseAlpha = 1e1e2e
|
||||
$mantleAlpha = 181825
|
||||
$crustAlpha = 11111b
|
||||
|
||||
$rosewater = 0xfff5e0dc
|
||||
$flamingo = 0xfff2cdcd
|
||||
$pink = 0xfff5c2e7
|
||||
$mauve = 0xffcba6f7
|
||||
$red = 0xfff38ba8
|
||||
$maroon = 0xffeba0ac
|
||||
$peach = 0xfffab387
|
||||
$yellow = 0xfff9e2af
|
||||
$green = 0xffa6e3a1
|
||||
$teal = 0xff94e2d5
|
||||
$sky = 0xff89dceb
|
||||
$sapphire = 0xff74c7ec
|
||||
$blue = 0xff89b4fa
|
||||
$lavender = 0xffb4befe
|
||||
|
||||
$text = 0xffcdd6f4
|
||||
$subtext1 = 0xffbac2de
|
||||
$subtext0 = 0xffa6adc8
|
||||
|
||||
$overlay2 = 0xff9399b2
|
||||
$overlay1 = 0xff7f849c
|
||||
$overlay0 = 0xff6c7086
|
||||
|
||||
$surface2 = 0xff585b70
|
||||
$surface1 = 0xff45475a
|
||||
$surface0 = 0xff313244
|
||||
|
||||
$base = 0xff1e1e2e
|
||||
$mantle = 0xff181825
|
||||
$crust = 0xff11111b
|
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
programs.kitty = {
|
||||
enable = true;
|
||||
settings.confirm_os_window_close = 0;
|
||||
};
|
||||
}
|
|
@ -1,36 +0,0 @@
|
|||
_: {
|
||||
programs.librewolf = {
|
||||
enable = true;
|
||||
settings = {
|
||||
# https://codeberg.org/librewolf/settings/src/branch/master/librewolf.cfg
|
||||
# https://github.com/yokoffing/Betterfox/blob/main/librewolf.overrides.cfg
|
||||
|
||||
### Restore disabled functions
|
||||
"browser.cache.disk.enable" = true;
|
||||
"identity.fxaccounts.enabled" = true;
|
||||
"media.eme.enabled" = true;
|
||||
"privacy.donottrackheader.enabled" = false;
|
||||
"privacy.globalprivacycontrol.enabled" = false;
|
||||
"privacy.resistFingerprinting" = false;
|
||||
"privacy.sanitize.sanitizeOnShutdown" = false;
|
||||
"security.OCSP.enabled" = 0;
|
||||
"security.OCSP.require" = false;
|
||||
"security.pki.crlite_mode" = 2;
|
||||
"webgl.disabled" = false;
|
||||
|
||||
### Smooth scrolling
|
||||
"apz.overscroll.enabled" = true;
|
||||
"general.smoothScroll" = true;
|
||||
"general.smoothScroll.msdPhysics.enabled" = true;
|
||||
"general.smoothScroll.msdPhysics.motionBeginSpringConstant" = 600;
|
||||
"mousewheel.default.delta_multiplier_y" = 75;
|
||||
|
||||
### Misc
|
||||
"extensions.activeThemeID" = "firefox-compact-dark@mozilla.org";
|
||||
};
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
MOZ_USE_XINPUT2 = "1";
|
||||
};
|
||||
}
|
|
@ -1,3 +0,0 @@
|
|||
{pkgs, ...}: {
|
||||
home.packages = [pkgs.loupe];
|
||||
}
|
|
@ -23,17 +23,4 @@
|
|||
# for `nh`
|
||||
# yes, i know, weird and long path
|
||||
home.sessionVariables.FLAKE = "/home/guanranwang/Documents/Projects/git-repos/github.com/Guanran928/flake";
|
||||
|
||||
### VSCode
|
||||
programs.vscode = {
|
||||
extensions = [pkgs.vscode-extensions.jnoortheen.nix-ide];
|
||||
userSettings.nix = {
|
||||
enableLanguageServer = true;
|
||||
serverPath = "nil";
|
||||
serverSettings.nil = {
|
||||
formatting.command = ["alejandra"];
|
||||
nix.flake.autoArchive = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,47 +0,0 @@
|
|||
{config, ...}: {
|
||||
services.picom = {
|
||||
enable = true;
|
||||
package = config.nur.repos.guanran928.picom-ft-labs;
|
||||
settings = {
|
||||
# Animations
|
||||
animations = true;
|
||||
animation-for-open-window = "zoom";
|
||||
animation-for-unmap-window = "squeeze";
|
||||
animation-for-transient-window = "slide-down";
|
||||
|
||||
# Blur
|
||||
blur-method = "dual_kawase";
|
||||
blur-strength = 10;
|
||||
blur-background-exclude = [
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
# Corners
|
||||
corner-radius = 12;
|
||||
rounded-corners-exclude = [
|
||||
"class_g = 'Polybar'"
|
||||
];
|
||||
|
||||
# Opacity
|
||||
opacity-rule = [
|
||||
"100:_NET_WM_STATE@:32a = '_NET_WM_STATE_FULLSCREEN'"
|
||||
"90:class_g = 'Polybar'"
|
||||
"90:class_g = 'Rofi'"
|
||||
"90:class_g = 'Alacritty'"
|
||||
];
|
||||
|
||||
# Shadow
|
||||
shadow = true;
|
||||
shadow-exclude = [
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
# Misc
|
||||
backend = "glx";
|
||||
glx-no-rebind-pixmap = true;
|
||||
glx-no-stencil = true;
|
||||
vsync = true;
|
||||
unredir-if-possible = true;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,177 +0,0 @@
|
|||
{
|
||||
services.polybar = {
|
||||
enable = true;
|
||||
script = "polybar bar";
|
||||
config = {
|
||||
colors = {
|
||||
base = "#1e1e2e";
|
||||
mantle = "#181825";
|
||||
crust = "#cc11111b";
|
||||
|
||||
text = "#cdd6f4";
|
||||
subtext0 = "#a6adc8";
|
||||
subtext1 = "#bac2de";
|
||||
|
||||
surface0 = "#313244";
|
||||
surface1 = "#45475a";
|
||||
surface2 = "#585b70";
|
||||
|
||||
overlay0 = "#6c7086";
|
||||
overlay1 = "#7f849c";
|
||||
overlay2 = "#9399b2";
|
||||
|
||||
blue = "#89b4fa";
|
||||
lavender = "#b4befe";
|
||||
sapphire = "#74c7ec";
|
||||
sky = "#89dceb";
|
||||
teal = "#94e2d5";
|
||||
green = "#a6e3a1";
|
||||
yellow = "#f9e2af";
|
||||
peach = "#fab387";
|
||||
maroon = "#eba0ac";
|
||||
red = "#f38ba8";
|
||||
mauve = "#cba6f7";
|
||||
pink = "#f5c2e7";
|
||||
flamingo = "#f2cdcd";
|
||||
rosewater = "#f5e0dc";
|
||||
|
||||
transparent = "#FF00";
|
||||
};
|
||||
|
||||
"bar/main" = {
|
||||
width = "100%";
|
||||
height = 30;
|
||||
offset-y = 0;
|
||||
top = true;
|
||||
fixed-center = true;
|
||||
|
||||
wm-restack = "bspwm";
|
||||
override-redirect = false;
|
||||
|
||||
scroll-up = "next";
|
||||
scroll-down = "prev";
|
||||
|
||||
enable-ipc = true;
|
||||
|
||||
background = "\${colors.crust}";
|
||||
foreground = "\${colors.text}";
|
||||
|
||||
font-0 = "JetBrainsMono Nerd Font:style=Bold:size=10;2";
|
||||
font-1 = "Source Han Sans CN:size=10;2";
|
||||
|
||||
modules-left = "bspwm";
|
||||
modules-center = "title";
|
||||
modules-right = "pulseaudio battery date";
|
||||
|
||||
tray-position = "right";
|
||||
|
||||
cursor-click = "pointer";
|
||||
};
|
||||
|
||||
settings = {
|
||||
screenchange-reload = true;
|
||||
format-padding = 1;
|
||||
};
|
||||
|
||||
"module/nowplaying" = {
|
||||
type = "custom/script";
|
||||
tail = true;
|
||||
interval = 1;
|
||||
format = " <label>";
|
||||
exec = "playerctl metadata --format \"{{ artist }} - {{ title }}\"";
|
||||
};
|
||||
|
||||
"module/battery" = {
|
||||
type = "internal/battery";
|
||||
battery = "BAT0";
|
||||
adapter = "ADP1";
|
||||
full-at = 98;
|
||||
low-at = 30;
|
||||
format-full-prefix = "";
|
||||
format-full = "<label-charging>";
|
||||
format-charging-prefix = "";
|
||||
format-charging = "<label-charging>";
|
||||
label-charging = "%percentage:2%%";
|
||||
label-charging-padding = 1;
|
||||
format-discharging = "<ramp-capacity> <label-discharging>";
|
||||
label-discharging = "%percentage%%";
|
||||
label-discharging-padding = 1;
|
||||
ramp-capacity-0 = "";
|
||||
ramp-capacity-1 = "";
|
||||
ramp-capacity-2 = "";
|
||||
ramp-capacity-3 = "";
|
||||
ramp-capacity-4 = "";
|
||||
ramp-capacity-5 = "";
|
||||
ramp-capacity-5-weight = 2;
|
||||
format-low = "<ramp-capacity> <label-low>";
|
||||
label-low-padding = 1;
|
||||
label-low-foreground = "\${colors.red}";
|
||||
poll-interval = 5;
|
||||
};
|
||||
|
||||
"module/bspwm" = {
|
||||
type = "internal/bspwm";
|
||||
|
||||
format = "<label-state> <label-mode>";
|
||||
|
||||
label-focused = "%name%";
|
||||
label-focused-foreground = "\${colors.text}";
|
||||
label-focused-padding = 1;
|
||||
|
||||
label-occupied = "%name%";
|
||||
label-occupied-foreground = "\${colors.overlay0}";
|
||||
label-occupied-padding = 1;
|
||||
|
||||
label-urgent = "%name%";
|
||||
label-urgent-foreground = "\${colors.red}";
|
||||
label-urgent-padding = 1;
|
||||
|
||||
label-empty = "%name%";
|
||||
label-empty-foreground = "\${colors.surface0}";
|
||||
label-empty-padding = 1;
|
||||
};
|
||||
|
||||
"module/date" = {
|
||||
type = "internal/date";
|
||||
interval = 1;
|
||||
|
||||
time = "%a, %b %d %H:%M";
|
||||
|
||||
format = "<label>";
|
||||
format-padding = 1;
|
||||
format-prefix = "%{T5}%{T-}";
|
||||
label = "%{T1}%time%%{T-}";
|
||||
label-padding = 1;
|
||||
};
|
||||
|
||||
"module/pulseaudio" = {
|
||||
type = "internal/pulseaudio";
|
||||
use-ui-max = false;
|
||||
|
||||
format-volume = "<label-volume>";
|
||||
format-volume-prefix = "%{T4}%{T-}";
|
||||
label-volume = "%{T1}%percentage%%%{T-}";
|
||||
label-volume-padding = 1;
|
||||
|
||||
format-muted = "<label-muted>";
|
||||
format-muted-prefix = "";
|
||||
label-muted = "%{T1}%percentage%%%{T-}";
|
||||
label-muted-padding = 1;
|
||||
|
||||
click-right = "pwvucontrol&";
|
||||
};
|
||||
|
||||
"module/title" = {
|
||||
type = "internal/xwindow";
|
||||
format = "<label>";
|
||||
format-padding = 4;
|
||||
|
||||
label = "%title%";
|
||||
label-maxlen = 50;
|
||||
|
||||
label-empty = "Empty";
|
||||
label-empty-foreground = "#707880";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,20 +1,10 @@
|
|||
{pkgs, ...}: {
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
programs.starship = {
|
||||
enable = true;
|
||||
settings =
|
||||
{
|
||||
#add_newline = false;
|
||||
#line_break.disabled = true;
|
||||
|
||||
#character = {
|
||||
# success_symbol = "[>](bold green)";
|
||||
# error_symbol = "[>](bold red)";
|
||||
# vimcmd_symbol = "[<](bold green)";
|
||||
# vimcmd_replace_one_symbol = "[<](bold purple)";
|
||||
# vimcmd_replace_symbol = "[<](bold purple)";
|
||||
# vimcmd_visual_symbol = "[<](bold yellow)";
|
||||
#};
|
||||
}
|
||||
// (builtins.fromTOML (builtins.readFile "${pkgs.starship}/share/starship/presets/nerd-font-symbols.toml"));
|
||||
settings = lib.importTOML "${pkgs.starship}/share/starship/presets/nerd-font-symbols.toml";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,8 +6,6 @@
|
|||
...
|
||||
}: {
|
||||
imports = [
|
||||
../common/wayland.nix
|
||||
../common/wm.nix
|
||||
../i3status-rust
|
||||
../mako
|
||||
../rofi
|
||||
|
@ -15,6 +13,20 @@
|
|||
../swaylock
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
NIXOS_OZONE_WL = "1"; # let electron applications use wayland
|
||||
};
|
||||
|
||||
home.packages = with pkgs; [
|
||||
wl-clipboard
|
||||
pwvucontrol
|
||||
];
|
||||
|
||||
# remove csd window buttons
|
||||
# https://github.com/localsend/localsend/blob/2457acd8a7412723b174672d174e4853dccd7d99/app/linux/my_application.cc#L45
|
||||
home.sessionVariables.GTK_CSD = 0;
|
||||
dconf.settings."org/gnome/desktop/wm/preferences"."button-layout" = "icon,appmenu:";
|
||||
|
||||
services.cliphist.enable = true;
|
||||
services.udiskie.enable = true;
|
||||
|
||||
|
|
|
@ -1,75 +0,0 @@
|
|||
{
|
||||
services.sxhkd = {
|
||||
enable = true;
|
||||
keybindings = {
|
||||
#
|
||||
# wm independent hotkeys
|
||||
#
|
||||
"super + Return" = "alacritty"; # terminal emulator
|
||||
"super + e" = "xdg-open ~"; # file manager
|
||||
"super + w" = "xdg-open http://"; # browser
|
||||
"super + d" = "rofi -show drun -show-icons -icon-theme Tela-dracula-dark"; # program launcher
|
||||
"super + shift + s" = "flameshot gui"; # flameshot
|
||||
"super + BackSpace" = "betterlockscreen -l";
|
||||
|
||||
#
|
||||
# bspwm hotkeys
|
||||
#
|
||||
"super + shift + r" = "bspc wm -r;pkill -USR1 -x sxhkd"; # reload bspwm
|
||||
"control + alt + Delete" = "bspc quit"; # quit bspwm
|
||||
"super + q" = "bspc node -c"; # close window
|
||||
"super + m" = "bspc desktop -l next"; # wtf is this; # alternate between the tiled and monocle layout
|
||||
"super + y" = "bspc node newest.marked.local -n newest.!automatic.local"; # wtf is this; # send the newest marked node to the newest preselected node
|
||||
"super + g" = "bspc node -s biggest.window"; # wtf is this; # swap the current node and the biggest window
|
||||
|
||||
#
|
||||
# state/flags
|
||||
#
|
||||
"super + {a,shift + a,s,f}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}"; # set the window state
|
||||
"super + ctrl + {m,x,y,z}" = "bspc node -g {marked,locked,sticky,private}"; # huh; # set the node flags
|
||||
|
||||
#
|
||||
# focus/swap
|
||||
#
|
||||
"super + {_,shift + }{h,j,k,l}" = "bspc node -{f,s} {west,south,north,east}"; # focus the node in the given direction
|
||||
"super + {p,b,comma,period}" = "bspc node -f @{parent,brother,first,second}"; # focus the node for the given path jump
|
||||
"super + {_,shift + }c" = "bspc node -f {next,prev}.local.!hidden.window"; # focus the next/previous window in the current desktop
|
||||
"super + bracket{left,right}" = "bspc desktop -f {prev,next}.local"; # focus the next/previous desktop in the current monitor
|
||||
"super + {grave,Tab}" = "bspc {node,desktop} -f last"; # focus the last node/desktop
|
||||
"super + {o,i}" = "bspc wm -h off; bspc node {older,newer} -f; bspc wm -h on"; # focus the older or newer node in the focus history
|
||||
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} '^{1-9,10}'"; # focus or send to the given desktop
|
||||
|
||||
#
|
||||
# preselect
|
||||
#
|
||||
"super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}"; # preselect the direction
|
||||
"super + ctrl + {1-9}" = "bspc node -o 0.{1-9}"; # preselect the ratio
|
||||
"super + ctrl + space" = "bspc node -p cancel"; # cancel the preselection for the focused node
|
||||
"super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel"; # cancel the preselection for the focused desktop
|
||||
|
||||
#
|
||||
# move/resize
|
||||
#
|
||||
"super + alt + {h,j,k,l}" = "bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}"; # expand a window by moving one of its side outward
|
||||
"super + alt + shift + {h,j,k,l}" = "bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}"; # contract a window by moving one of its side inward
|
||||
"super + {Left,Down,Up,Right}" = "bspc node -v {-20 0,0 20,0 -20,20 0}"; # move a floating window
|
||||
|
||||
#
|
||||
# fn keys
|
||||
#
|
||||
### brightness keys
|
||||
"XF86MonBrightnessUp" = "/home/guanranwang/.local/bin/wrapped-brightnessctl up";
|
||||
"XF86MonBrightnessDown" = "/home/guanranwang/.local/bin/wrapped-brightnessctl down";
|
||||
|
||||
### media keys
|
||||
"XF86AudioPrev" = "playerctl previous";
|
||||
"XF86AudioNext" = "playerctl next";
|
||||
"XF86AudioPlay" = "playerctl play-pause";
|
||||
|
||||
### volume keys
|
||||
"XF86AudioRaiseVolume" = "/home/guanranwang/.local/bin/wrapped-pamixer up";
|
||||
"XF86AudioLowerVolume" = "/home/guanranwang/.local/bin/wrapped-pamixer down";
|
||||
"XF86AudioMute" = "/home/guanranwang/.local/bin/wrapped-pamixer mute";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,94 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
pkgs,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
programs.vscode = lib.mkMerge [
|
||||
{
|
||||
enable = true;
|
||||
package = pkgs.vscodium.override {
|
||||
commandLineArgs = ''--password-store="gnome"'';
|
||||
};
|
||||
enableExtensionUpdateCheck = false;
|
||||
enableUpdateCheck = false;
|
||||
keybindings = [
|
||||
{
|
||||
key = "tab";
|
||||
command = "selectNextSuggestion";
|
||||
when = "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus || suggestWidgetVisible && textInputFocus && !suggestWidgetHasFocusedSuggestion";
|
||||
}
|
||||
{
|
||||
key = "shift+tab";
|
||||
command = "selectPrevSuggestion";
|
||||
when = "suggestWidgetMultipleSuggestions && suggestWidgetVisible && textInputFocus || suggestWidgetVisible && textInputFocus && !suggestWidgetHasFocusedSuggestion";
|
||||
}
|
||||
];
|
||||
userSettings = {
|
||||
diffEditor.ignoreTrimWhitespace = false;
|
||||
editor.cursorBlinking = "smooth";
|
||||
editor.cursorSmoothCaretAnimation = "on";
|
||||
editor.fontFamily = lib.mkDefault "Monospace";
|
||||
editor.fontWeight = 600;
|
||||
editor.lineNumbers = "relative";
|
||||
editor.smoothScrolling = true;
|
||||
editor.tabSize = 2;
|
||||
explorer.confirmDragAndDrop = false;
|
||||
explorer.confirmDelete = false;
|
||||
files.autoSave = "onFocusChange";
|
||||
files.trimTrailingWhitespace = true;
|
||||
files.trimFinalNewlines = true;
|
||||
security.workspace.trust.enabled = false;
|
||||
telemetry.telemetryLevel = "off";
|
||||
terminal.integrated.cursorStyle = "line";
|
||||
terminal.integrated.smoothScrolling = true;
|
||||
window.menuBarVisibility = "toggle";
|
||||
workbench.list.smoothScrolling = true;
|
||||
|
||||
# Workaround for VSCode crashing
|
||||
# https://github.com/microsoft/vscode/issues/184124
|
||||
window.titleBarStyle = "custom";
|
||||
workbench.layoutControl.enabled = false;
|
||||
#window.commandCenter = false;
|
||||
|
||||
# Language specific
|
||||
### Nix
|
||||
"[nix]".editor.tabSize = 2;
|
||||
|
||||
# Extensions
|
||||
### GitLens
|
||||
gitlens.showWelcomeOnInstall = false;
|
||||
gitlens.showWhatsNewAfterUpgrades = false;
|
||||
gitlens.plusFeatures.enabled = false;
|
||||
gitlens.telemetry.enabled = false;
|
||||
|
||||
### Material icons
|
||||
workbench.iconTheme = "material-icon-theme";
|
||||
workbench.productIconTheme = "material-product-icons";
|
||||
};
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
### QoL
|
||||
eamodio.gitlens
|
||||
esbenp.prettier-vscode
|
||||
ritwickdey.liveserver
|
||||
vscodevim.vim
|
||||
editorconfig.editorconfig
|
||||
|
||||
### Markup formats
|
||||
redhat.vscode-yaml
|
||||
redhat.vscode-xml
|
||||
tamasfe.even-better-toml
|
||||
#bungcip.better-toml
|
||||
|
||||
### Material icons
|
||||
pkief.material-icon-theme
|
||||
pkief.material-product-icons
|
||||
];
|
||||
}
|
||||
|
||||
(lib.mkIf (config.myFlake.home-manager.colorScheme == "tokyonight") {
|
||||
extensions = [pkgs.vscode-extensions.enkia.tokyo-night];
|
||||
userSettings.workbench.colorTheme = "Tokyo Night";
|
||||
})
|
||||
];
|
||||
}
|
|
@ -1,182 +0,0 @@
|
|||
{
|
||||
programs.waybar = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mainBar = {
|
||||
"layer" = "top";
|
||||
"modules-left" = ["custom/launcher" "sway/workspaces" "gamemode"];
|
||||
"modules-center" = ["sway/window"];
|
||||
"modules-right" = ["tray" "pulseaudio" "battery" "clock"];
|
||||
"custom/launcher" = {"format" = "";};
|
||||
"gamemode" = {
|
||||
"format" = "{glyph} {count}";
|
||||
"glyph" = "";
|
||||
"hide-not-running" = true;
|
||||
"use-icon" = true;
|
||||
"icon-name" = "input-gaming-symbolic";
|
||||
"icon-spacing" = 4;
|
||||
"icon-size" = 20;
|
||||
"tooltip" = true;
|
||||
"tooltip-format" = "Games running = {count}";
|
||||
};
|
||||
"sway/workspaces" = {
|
||||
"format" = "{icon}";
|
||||
"format-icons" = {
|
||||
"1" = "";
|
||||
"2" = "";
|
||||
"3" = "";
|
||||
"4" = "";
|
||||
"5" = "";
|
||||
"urgent" = "";
|
||||
"active" = "";
|
||||
"default" = "";
|
||||
};
|
||||
};
|
||||
"sway/window" = {
|
||||
"format" = "{}";
|
||||
"separate-outputs" = true;
|
||||
};
|
||||
"tray" = {
|
||||
"spacing" = 10;
|
||||
};
|
||||
"pulseaudio" = {
|
||||
"format" = "{volume}% {icon}";
|
||||
"format-bluetooth" = "{volume}% {icon}";
|
||||
"format-muted" = "";
|
||||
"format-icons" = {
|
||||
"headphone" = "";
|
||||
"hands-free" = "";
|
||||
"headset" = "";
|
||||
"phone" = "";
|
||||
"portable" = "";
|
||||
"car" = "";
|
||||
"default" = ["" ""];
|
||||
};
|
||||
"scroll-step" = 5;
|
||||
"on-click" = "pwvucontrol";
|
||||
"ignored-sinks" = ["Easy Effects Sink"];
|
||||
};
|
||||
"battery" = {
|
||||
"bat" = "BAT0";
|
||||
"interval" = 60;
|
||||
"states" = {
|
||||
"warning" = 30;
|
||||
"critical" = 15;
|
||||
};
|
||||
"format" = "{capacity}% {icon}";
|
||||
"format-icons" = ["" "" "" "" ""];
|
||||
"max-length" = 25;
|
||||
};
|
||||
"clock" = {
|
||||
# https://fmt.dev/latest/syntax.html#chrono-specs
|
||||
"format" = "{:%a %b %d %I:%M %p} ";
|
||||
"tooltip-format" = "{calendar}";
|
||||
"calendar" = {
|
||||
"mode" = "month";
|
||||
"mode-mon-col" = 3;
|
||||
"on-scroll" = -1;
|
||||
"format"."today" = "<b><u>{}</u></b>";
|
||||
};
|
||||
"actions" = {
|
||||
"on-click-right" = "mode";
|
||||
"on-scroll-up" = "shift_down";
|
||||
"on-scroll-down" = "shift_up";
|
||||
};
|
||||
};
|
||||
"cava" = {
|
||||
"framerate" = 30;
|
||||
"autosens" = 1;
|
||||
#"sensitivity" = 1;
|
||||
"bars" = 14;
|
||||
"method" = "pipewire";
|
||||
"bar_delimiter" = 0;
|
||||
#"monstercat" = false;
|
||||
#"waves" = false;
|
||||
"format-icons" = ["▁" "▂" "▃" "▄" "▅" "▆" "▇" "█"];
|
||||
"actions"."on-click-right" = "mode";
|
||||
};
|
||||
};
|
||||
};
|
||||
style = ''
|
||||
* {
|
||||
font: bold 14px "JetBrainsMono Nerd Font Propo";
|
||||
}
|
||||
window#waybar {
|
||||
background: transparent;
|
||||
}
|
||||
tooltip {
|
||||
background: #1a1b26;
|
||||
color: #c0caf5;
|
||||
border: 2px solid #c0caf5;
|
||||
border-radius: 5px;
|
||||
}
|
||||
tooltip label {
|
||||
color: #c0caf5;
|
||||
}
|
||||
#custom-launcher,
|
||||
#gamemode,
|
||||
#window,
|
||||
#workspaces,
|
||||
#tray,
|
||||
#pulseaudio,
|
||||
#battery,
|
||||
#clock {
|
||||
text-shadow: 1px 1px 2px black;
|
||||
background: #1a1b26;
|
||||
color: #c0caf5;
|
||||
margin: 10px 4px 4px 4px;
|
||||
padding: 4px 10px;
|
||||
box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.4);
|
||||
border-radius: 5px;
|
||||
}
|
||||
#custom-launcher {
|
||||
margin-left: 10px;
|
||||
}
|
||||
#clock {
|
||||
margin-right: 10px;
|
||||
}
|
||||
#workspaces {
|
||||
padding: 0px;
|
||||
}
|
||||
#workspaces button {
|
||||
text-shadow: 1px 1px 2px black;
|
||||
color: #c0caf5;
|
||||
padding: 0px 4px;
|
||||
border: 2px solid #1a1b26;
|
||||
transition-property: background, color, text-shadow, min-width;
|
||||
transition-duration: .15s;
|
||||
}
|
||||
#workspaces button.focused {
|
||||
text-shadow: none;
|
||||
color: #c0caf5;
|
||||
background: linear-gradient(
|
||||
70deg,
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245),
|
||||
rgb(229, 234, 255),
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245),
|
||||
rgb(192, 202, 245)
|
||||
);
|
||||
background-size: 300% 100%;
|
||||
background-position: 0% 0%;
|
||||
animation: colored-gradient 2s linear infinite;
|
||||
color: #1a1b26;
|
||||
min-width: 36px;
|
||||
}
|
||||
#workspaces button.focused:hover {
|
||||
background: #9fa7cc;
|
||||
}
|
||||
#workspaces button:hover {
|
||||
background: #11111b;
|
||||
}
|
||||
@keyframes colored-gradient {
|
||||
from {background-position: 0% 0%;}
|
||||
to {background-position: 100% 0%;}
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
{
|
||||
programs.wezterm = {
|
||||
enable = true;
|
||||
extraConfig = ''
|
||||
return {
|
||||
color_scheme = "Tokyo Night",
|
||||
default_cursor_style = 'SteadyBar',
|
||||
window_padding = {
|
||||
left = "12px",
|
||||
right = "12px",
|
||||
top = "12px",
|
||||
bottom = "12px",
|
||||
},
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,31 +0,0 @@
|
|||
{
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: {
|
||||
programs.zsh = {
|
||||
enable = true;
|
||||
dotDir = ".config/zsh";
|
||||
initExtra = "zstyle ':fzf-tab:*' fzf-command sk";
|
||||
|
||||
enableAutosuggestions = true;
|
||||
historySubstringSearch.enable = true;
|
||||
syntaxHighlighting.enable = true;
|
||||
plugins = [
|
||||
{
|
||||
name = "fzf-tab";
|
||||
src = "${pkgs.zsh-fzf-tab}/share/fzf-tab";
|
||||
}
|
||||
{
|
||||
name = "sudo";
|
||||
src = "${pkgs.oh-my-zsh}/share/oh-my-zsh/plugins/sudo";
|
||||
}
|
||||
];
|
||||
|
||||
history = {
|
||||
path = "${config.xdg.dataHome}/zsh/zsh_history";
|
||||
save = 1000000;
|
||||
size = 1000000;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -32,14 +32,13 @@
|
|||
|
||||
# Default applications
|
||||
imports = [
|
||||
inputs.self.homeManagerModules.default
|
||||
inputs.nur.hmModules.nur
|
||||
|
||||
./applications/atuin
|
||||
./applications/bash
|
||||
./applications/bat
|
||||
./applications/eza
|
||||
./applications/fastfetch
|
||||
./applications/neovim
|
||||
./applications/fish
|
||||
./applications/git
|
||||
./applications/gpg
|
||||
|
@ -51,7 +50,14 @@
|
|||
|
||||
programs.ripgrep.enable = true;
|
||||
programs.zoxide.enable = true;
|
||||
home.packages = with pkgs; [fd] ++ lib.optionals pkgs.stdenv.hostPlatform.isLinux (with pkgs; [trashy]);
|
||||
home.packages =
|
||||
(with pkgs; [
|
||||
fd
|
||||
fastfetch
|
||||
])
|
||||
++ lib.optionals pkgs.stdenv.hostPlatform.isLinux (with pkgs; [
|
||||
trashy
|
||||
]);
|
||||
|
||||
home.shellAliases = {
|
||||
".." = "cd ..";
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
{lib, ...}: {
|
||||
options.myFlake.home-manager = {
|
||||
colorScheme = lib.mkOption {
|
||||
type = lib.types.enum [null "tokyonight"];
|
||||
default = "tokyonight";
|
||||
description = "Select desired terminal color scheme.";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,6 +0,0 @@
|
|||
{...}: {
|
||||
imports = [
|
||||
./terminal.nix
|
||||
./color-scheme.nix
|
||||
];
|
||||
}
|
|
@ -1,86 +0,0 @@
|
|||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
cfg = config.myFlake.home-manager.terminal;
|
||||
in {
|
||||
# 3 terminals, one module.
|
||||
# -- The Orange Box (wtf)
|
||||
|
||||
# FAQ (for future myself):
|
||||
#
|
||||
# - Q: font?
|
||||
# A: use fontconfig.
|
||||
#
|
||||
# - Q: WezTerm?
|
||||
# A: - I don't use it.
|
||||
# - I don't know Lua.
|
||||
# - extraConfig is probably not enough if you want customize it yourself.
|
||||
#
|
||||
# - Q: which terminal should I use?
|
||||
# A: - Alacritty - rusty
|
||||
# - Foot - fast
|
||||
# - Kitty - feature rich
|
||||
#
|
||||
# - Q: why does kitty's font look bold
|
||||
# A: I dont know, might be related to this: https://sw.kovidgoyal.net/kitty/conf/#opt-kitty.text_composition_strategy
|
||||
|
||||
options = {
|
||||
myFlake.home-manager.terminal = {
|
||||
cursorStyle = lib.mkOption {
|
||||
type = lib.types.enum ["block" "beam" "underline"];
|
||||
default = "beam";
|
||||
example = "block";
|
||||
description = "Select desired terminal cursor style.";
|
||||
};
|
||||
|
||||
fontSize = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 12;
|
||||
example = 8;
|
||||
description = "Select desired terminal font size.";
|
||||
};
|
||||
|
||||
padding = lib.mkOption {
|
||||
type = lib.types.int;
|
||||
default = 0;
|
||||
example = config.myFlake.home-manager.terminal.fontSize;
|
||||
description = "Select desired terminal padding size (in px).";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
programs = {
|
||||
alacritty.settings = {
|
||||
import = [
|
||||
"${pkgs.vimPlugins.tokyonight-nvim}/extras/alacritty/tokyonight_night.toml"
|
||||
];
|
||||
cursor.style = cfg.cursorStyle;
|
||||
font.size = cfg.fontSize;
|
||||
window.padding.x = cfg.padding;
|
||||
window.padding.y = cfg.padding;
|
||||
};
|
||||
|
||||
kitty.settings = {
|
||||
include =
|
||||
lib.mkIf (config.myFlake.home-manager.colorScheme == "tokyonight")
|
||||
"${pkgs.vimPlugins.tokyonight-nvim}/extras/kitty/tokyonight_night.conf";
|
||||
cursor_shape = cfg.cursorStyle;
|
||||
font_size = cfg.fontSize;
|
||||
window_padding_width = builtins.toString (cfg.padding * (3.0 / 4.0)); # px -> pt
|
||||
};
|
||||
|
||||
foot.settings = {
|
||||
main.include =
|
||||
lib.mkIf (config.myFlake.home-manager.colorScheme == "tokyonight")
|
||||
"${pkgs.vimPlugins.tokyonight-nvim}/extras/foot/tokyonight_night.ini";
|
||||
cursor.style = cfg.cursorStyle;
|
||||
main.font = "monospace:size=${builtins.toString cfg.fontSize}";
|
||||
main.pad = "${builtins.toString cfg.padding}x${builtins.toString cfg.padding}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -6,7 +6,7 @@
|
|||
imports = [
|
||||
# OS
|
||||
../../nixos/profiles/laptop
|
||||
../../nixos/profiles/common/opt-in/clash-meta-client
|
||||
../../nixos/profiles/common/opt-in/mihomo
|
||||
../../nixos/profiles/common/opt-in/gaming
|
||||
|
||||
# Hardware
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
../../nixos/profiles/common/core
|
||||
../../nixos/profiles/common/physical
|
||||
../../nixos/profiles/common/mobile
|
||||
../../nixos/profiles/common/opt-in/clash-meta-client
|
||||
../../nixos/profiles/common/opt-in/mihomo
|
||||
|
||||
# Hardware
|
||||
./hardware-configuration.nix
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
{...}: {
|
||||
imports = [
|
||||
../../darwin/profiles/desktop
|
||||
../../darwin/profiles/common/opt-in/clash-meta-client.nix
|
||||
../../darwin/profiles/common/opt-in/mihomo.nix
|
||||
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
|
|
@ -60,7 +60,6 @@
|
|||
sharedModules = [
|
||||
({...}: {
|
||||
imports = [
|
||||
../../home/applications/neovim
|
||||
../../home/applications/nix
|
||||
];
|
||||
})
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
{...}: {
|
||||
imports = [
|
||||
../../darwin/profiles/desktop
|
||||
../../darwin/profiles/common/opt-in/clash-meta-client.nix
|
||||
../../darwin/profiles/common/opt-in/mihomo.nix
|
||||
|
||||
./hardware-configuration.nix
|
||||
];
|
||||
|
|
|
@ -6,33 +6,14 @@
|
|||
./xdg-mime.nix
|
||||
]
|
||||
++ map (n: ../../../../../home/applications/${n}) [
|
||||
# Terminal
|
||||
"alacritty"
|
||||
|
||||
# Editor
|
||||
"neovim"
|
||||
# "helix"
|
||||
# "vscode"
|
||||
|
||||
# Browser
|
||||
"firefox"
|
||||
# "chromium"
|
||||
# "librewolf"
|
||||
|
||||
# Language
|
||||
"nix"
|
||||
"go"
|
||||
|
||||
# Media
|
||||
"loupe"
|
||||
"mpv"
|
||||
|
||||
# WM
|
||||
"sway"
|
||||
|
||||
# Misc
|
||||
"nautilus"
|
||||
"fcitx5"
|
||||
"firefox"
|
||||
"go"
|
||||
"mpv"
|
||||
"nautilus"
|
||||
"nix"
|
||||
"sway"
|
||||
];
|
||||
|
||||
# https://wiki.archlinux.org/title/Fish#Start_X_at_login
|
||||
|
@ -42,12 +23,16 @@
|
|||
end
|
||||
'';
|
||||
|
||||
home.packages = with pkgs.gnome; [
|
||||
home.packages =
|
||||
(with pkgs; [
|
||||
loupe
|
||||
])
|
||||
++ (with pkgs.gnome; [
|
||||
seahorse
|
||||
file-roller
|
||||
gnome-calculator
|
||||
dconf-editor
|
||||
];
|
||||
]);
|
||||
|
||||
services = {
|
||||
ssh-agent.enable = true;
|
||||
|
|
|
@ -7,20 +7,16 @@
|
|||
url = "https://raw.githubusercontent.com/lilydjwg/dotconfig/1b22d4f0740bb5bbd7c65b6c468920775171b207/fontconfig/web-ui-fonts.conf";
|
||||
hash = "sha256-A4DcV6HTW/IRxXN3NaI1GUfoFdalwgFLpCjgbWENdZU=";
|
||||
};
|
||||
"fontconfig/conf.d/10-source-han-for-noto-cjk.conf".source = pkgs.substitute {
|
||||
src = pkgs.fetchurl {
|
||||
"fontconfig/conf.d/10-source-han-for-noto-cjk.conf".source = pkgs.fetchurl {
|
||||
url = "https://raw.githubusercontent.com/lilydjwg/dotconfig/1b22d4f0740bb5bbd7c65b6c468920775171b207/fontconfig/source-han-for-noto-cjk.conf";
|
||||
hash = "sha256-jcdDr5VW1qZXbApgfT5FZgxonpRnLs9AY0QagfdL8ic=";
|
||||
postFetch = ''
|
||||
substitutionInPlace $out \
|
||||
--replace-warn "Source Han Sans" "Source Han Sans VF" \
|
||||
--replace-warn "Source Han Serif" "Source Han Serif VF"
|
||||
'';
|
||||
};
|
||||
substitutions = [
|
||||
"--replace-warn"
|
||||
"Source Han Sans"
|
||||
"Source Han Sans VF"
|
||||
"--replace-warn"
|
||||
"Source Han Serif"
|
||||
"Source Han Serif VF"
|
||||
];
|
||||
};
|
||||
|
||||
"fontconfig/conf.d/10-nerd-font-symbols.conf".source = pkgs.fetchurl {
|
||||
url = "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/${pkgs.nerdfonts.version}/10-nerd-font-symbols.conf";
|
||||
hash = "sha256-XwJMkcDtGlI+LFMrjCl/gicAnoBWnq3p9adrmieNZwU=";
|
||||
|
|
|
@ -21,10 +21,6 @@
|
|||
];
|
||||
|
||||
iconTheme = {
|
||||
#name = "Tela-dracula-dark";
|
||||
#package = pkgs.tela-icon-theme;
|
||||
#name = "Papirus-Dark";
|
||||
#package = pkgs.papirus-icon-theme;
|
||||
name = "Adwaita";
|
||||
package = pkgs.gnome.adwaita-icon-theme;
|
||||
};
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types
|
||||
xdg.mimeApps = {
|
||||
enable = true;
|
||||
|
||||
# Default application associstions
|
||||
defaultApplications =
|
||||
{
|
||||
"inode/directory" = ["org.gnome.Nautilus.desktop"];
|
||||
|
@ -15,7 +13,7 @@
|
|||
"x-scheme-handler/https"
|
||||
"x-scheme-handler/about"
|
||||
"x-scheme-handler/unknown"
|
||||
] (_n: ["librewolf.desktop" "firefox.desktop" "chromium-browser.desktop"])
|
||||
] (_n: ["firefox.desktop"])
|
||||
### Audio player
|
||||
// lib.genAttrs [
|
||||
"audio/aac"
|
||||
|
@ -23,7 +21,7 @@
|
|||
"audio/mpeg"
|
||||
"audio/ogg"
|
||||
"audio/wav"
|
||||
] (_n: ["io.bassi.Amberol.desktop" "mpv.desktop"])
|
||||
] (_n: ["io.bassi.Amberol.desktop"])
|
||||
### Image viewer
|
||||
// lib.genAttrs [
|
||||
"image/gif"
|
||||
|
@ -43,6 +41,6 @@
|
|||
"text/html"
|
||||
"text/javascript"
|
||||
"text/plain"
|
||||
] (_n: ["codium.desktop" "Helix.desktop" "nvim.desktop"]);
|
||||
] (_n: ["nvim.desktop"]);
|
||||
};
|
||||
}
|
||||
|
|
|
@ -8,22 +8,16 @@
|
|||
wl-clipboard,
|
||||
libnotify,
|
||||
fetchurl,
|
||||
substitute,
|
||||
}:
|
||||
makeScript {
|
||||
name = "screenshot";
|
||||
runtimeInputs = [coreutils jq grim slurp swappy wl-clipboard libnotify];
|
||||
file = substitute {
|
||||
src = fetchurl {
|
||||
file = fetchurl {
|
||||
url = "https://raw.githubusercontent.com/nwg-piotr/nwg-shell/c29e8eb4658a2613fb221ead0b101c75f457bcaf/scripts/screenshot";
|
||||
hash = "sha256-Z/fWloz8pLHsvPTPOeBxnbMsGDRTY3G3l/uePQ3ZxjU=";
|
||||
};
|
||||
|
||||
# i dont like using an environment variable
|
||||
substitutions = [
|
||||
"--replace-warn"
|
||||
"DIR=\${SCREENSHOT_DIR:=$HOME/Screenshots}"
|
||||
"DIR=$HOME/Pictures/Screenshots"
|
||||
];
|
||||
postFetch = ''
|
||||
substituteInPlace $out \
|
||||
--replace-warn "DIR=\''${SCREENSHOT_DIR:=$HOME/Screenshots}" "DIR=$HOME/Pictures/Screenshots"
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|