Merge branch 'flake-parts' into 'master'
Module-based ricing See merge request bertof/nix-dotfiles!1
This commit is contained in:
commit
4d65b238a4
52 changed files with 848 additions and 1277 deletions
|
|
@ -1,8 +1,10 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex rec {
|
||||
inherit (pkgs.rice.colorPalette) normal bright primary;
|
||||
dim = pkgs.rice.colorPalette.dark;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rec {
|
||||
inherit (rice.colorPalette) normal bright primary;
|
||||
dim = rice.colorPalette.dark;
|
||||
cursor = {
|
||||
cursor = normal.white;
|
||||
text = normal.black;
|
||||
|
|
@ -23,7 +25,7 @@ let
|
|||
in
|
||||
{
|
||||
# Include fonts packages
|
||||
home.packages = [ pkgs.rice.font.monospace.package ];
|
||||
home.packages = [ rice.font.monospace.package ];
|
||||
programs.alacritty = {
|
||||
enable = true;
|
||||
settings = {
|
||||
|
|
@ -41,10 +43,10 @@ in
|
|||
};
|
||||
scrolling.history = 3000;
|
||||
font = {
|
||||
normal.family = pkgs.rice.font.monospace.name;
|
||||
inherit (pkgs.rice.font.monospace) size;
|
||||
normal.family = rice.font.monospace.name;
|
||||
inherit (rice.font.monospace) size;
|
||||
};
|
||||
window.opacity = pkgs.rice.opacity;
|
||||
window.opacity = rice.opacity;
|
||||
mouse = {
|
||||
# hide_when_typing = true;
|
||||
hints.modifiers = "Control";
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
# inherit (pkgs) calibre;
|
||||
inherit (pkgs.unstable_pkgs) mangal;
|
||||
inherit (pkgs) mangal;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = [ (pkgs.unstable_pkgs.blender.override { cudaSupport = true; }) ];
|
||||
home.packages = [ (pkgs.blender.override { cudaSupport = true; }) ];
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,84 +0,0 @@
|
|||
{ pkgs, lib, ... }:
|
||||
let
|
||||
xsetroot = "${pkgs.xorg.xsetroot}/bin/xsetroot";
|
||||
monitorPages = [
|
||||
"Ⅰ"
|
||||
"Ⅱ"
|
||||
"Ⅲ"
|
||||
"Ⅳ"
|
||||
"Ⅴ"
|
||||
"Ⅵ"
|
||||
"Ⅶ"
|
||||
"Ⅷ"
|
||||
"Ⅸ"
|
||||
"Ⅹ"
|
||||
];
|
||||
monitorPagesString = lib.strings.concatStringsSep " " monitorPages;
|
||||
monitorSetupScript = pkgs.writeShellScript "monitorSetupScript" ''
|
||||
for monitor in $(bspc query -M --names); do
|
||||
bspc monitor $monitor -d ${monitorPagesString}
|
||||
done
|
||||
${pkgs.autorandr}/bin/autorandr -c || true
|
||||
systemctl --user restart polybar # Restart polybar
|
||||
systemctl --user restart kdeconnect-indicator # Restart polybar
|
||||
'';
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
imports = [
|
||||
./picom.nix
|
||||
./polybar.nix
|
||||
./sxhkd.nix
|
||||
./update_background.nix
|
||||
./xidlehook.nix
|
||||
./dunst.nix
|
||||
];
|
||||
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
arandr
|
||||
blueman
|
||||
dmenu
|
||||
keyboard-switch
|
||||
;
|
||||
};
|
||||
|
||||
xsession.windowManager.bspwm = {
|
||||
enable = true;
|
||||
settings = {
|
||||
border_width = 1;
|
||||
border_radius = 8;
|
||||
window_gap = 2;
|
||||
split_ratio = 0.5;
|
||||
top_padding = 0;
|
||||
bottom_padding = 0;
|
||||
right_padding = 0;
|
||||
left_padding = 0;
|
||||
borderless_monocle = true;
|
||||
gapless_monocle = false;
|
||||
normal_border_color = strPalette.normal.blue;
|
||||
focused_border_color = strPalette.bright.red;
|
||||
};
|
||||
# monitors = builtins.foldl' (acc: monitor: acc // { ${monitor} = monitorPages; }) { } monitors;
|
||||
rules = {
|
||||
"*" = {
|
||||
follow = true;
|
||||
};
|
||||
"Zathura" = {
|
||||
state = "tiled";
|
||||
};
|
||||
"Yad" = {
|
||||
state = "floating";
|
||||
};
|
||||
};
|
||||
startupPrograms = [
|
||||
"${monitorSetupScript}" # Setup monitors
|
||||
"${xsetroot} -solid black -cursor_name left_ptr" # Set cursor
|
||||
"${pkgs.update-background}/bin/update-background" # Set background
|
||||
];
|
||||
};
|
||||
services = {
|
||||
network-manager-applet.enable = true;
|
||||
blueman-applet.enable = true;
|
||||
};
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{ pkgs, lib, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
fmtString = str: "'${str}'";
|
||||
in
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = builtins.attrValues { inherit (pkgs.unstable_pkgs.jetbrains) datagrip jdk; };
|
||||
home.packages = builtins.attrValues { inherit (pkgs.jetbrains) datagrip jdk; };
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
pkgs.k9s
|
||||
pkgs.awscli2
|
||||
pkgs.lens
|
||||
pkgs.unstable_pkgs.kubevirt
|
||||
pkgs.kubevirt
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,26 +1,24 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
strPalette = nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRGBHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs) dunst;
|
||||
inherit (pkgs.rice.font.normal) package;
|
||||
inherit (rice.font.normal) package;
|
||||
};
|
||||
services.dunst = {
|
||||
enable = true;
|
||||
iconTheme = {
|
||||
package = pkgs.qogir-icon-theme;
|
||||
name = "Qogir";
|
||||
};
|
||||
iconTheme = { package = pkgs.qogir-icon-theme; name = "Qogir"; };
|
||||
settings = {
|
||||
global = {
|
||||
browser = "${pkgs.xdg-utils}/bin/xdg-open";
|
||||
corner_radius = 10;
|
||||
dmenu = "${pkgs.rofi}/bin/rofi -dmenu -p dunst:";
|
||||
follow = "keyboard";
|
||||
font = "${pkgs.rice.font.normal.name} 10";
|
||||
font = "${rice.font.normal.name} 10";
|
||||
frame_color = strPalette.normal.blue;
|
||||
frame_width = 1;
|
||||
height = 320;
|
||||
|
|
@ -28,7 +26,7 @@ in
|
|||
notification_limit = 10;
|
||||
offset = "7x7";
|
||||
separator_color = strPalette.normal.blue;
|
||||
transparency = 100 - nix-rice.float.round (pkgs.rice.opacity * 100);
|
||||
transparency = 100 - nix-rice.float.round (rice.opacity * 100);
|
||||
width = "(0, 320)";
|
||||
};
|
||||
urgency_low = {
|
||||
|
|
|
|||
|
|
@ -1,8 +1,6 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
fonts.fontconfig = {
|
||||
enable = true;
|
||||
};
|
||||
fonts.fontconfig.enable = true;
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
dejavu_fonts
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
{
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = pkgs.rice.font.normal;
|
||||
font = nixosConfig.nix-rice.rice.font.normal;
|
||||
iconTheme = {
|
||||
package = pkgs.qogir-icon-theme;
|
||||
name = "Qogir-dark";
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
};
|
||||
programs.helix = {
|
||||
enable = true;
|
||||
package = pkgs.unstable_pkgs.helix;
|
||||
languages.language = [
|
||||
{
|
||||
name = "nix";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
{ nixosConfig, pkgs, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = palette.toRgbaShortHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
|
||||
imports = [
|
||||
./kitty.nix
|
||||
./nautilus.nix
|
||||
|
|
@ -26,7 +29,7 @@
|
|||
swaylock
|
||||
swww
|
||||
# walker
|
||||
way-lockscreen
|
||||
wl-lockscreen
|
||||
waybar
|
||||
wl-clipboard
|
||||
wl-clipedit
|
||||
|
|
@ -50,259 +53,255 @@
|
|||
};
|
||||
|
||||
xdg.configFile."hypr/hyprland.conf" = {
|
||||
text =
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbaShortHex pkgs.rice.colorPalette;
|
||||
in
|
||||
''
|
||||
#
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
#
|
||||
text = ''
|
||||
#
|
||||
# Please note not all available settings / options are set here.
|
||||
# For a full list, see the wiki
|
||||
#
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# monitor=name,resolution,position,scale
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=Unknown-1,disable
|
||||
${
|
||||
if nixosConfig.networking.hostName == "thor" then
|
||||
''
|
||||
monitor=DP-3,preferred,1080x420,auto
|
||||
monitor=HDMI-A-1,preferred,0x0,auto,transform,3
|
||||
''
|
||||
else if nixosConfig.networking.hostName == "odin" then
|
||||
''
|
||||
monitor=eDP-1,preferred,320x1440,1
|
||||
monitor=DP-1,preferred,0x0,1
|
||||
''
|
||||
else
|
||||
""
|
||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
||||
# monitor=name,resolution,position,scale
|
||||
monitor=,preferred,auto,auto
|
||||
monitor=Unknown-1,disable
|
||||
${
|
||||
if nixosConfig.networking.hostName == "thor" then
|
||||
''
|
||||
monitor=DP-3,preferred,1080x420,auto
|
||||
monitor=HDMI-A-1,preferred,0x0,auto,transform,3
|
||||
''
|
||||
else if nixosConfig.networking.hostName == "odin" then
|
||||
''
|
||||
monitor=eDP-1,preferred,320x1440,1
|
||||
monitor=DP-1,preferred,0x0,1
|
||||
''
|
||||
else
|
||||
""
|
||||
}
|
||||
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
exec-once = ${
|
||||
if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true"
|
||||
} & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"}
|
||||
kb_variant = ,,colemak
|
||||
kb_model =
|
||||
kb_options = grp:menu_toggle,compose:rctrl
|
||||
kb_rules =
|
||||
numlock_by_default = true
|
||||
|
||||
follow_mouse = 2
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
$LAPTOP_KEYBOARD_ENABLED = true
|
||||
device {
|
||||
name = at-translated-set-2-keyboard
|
||||
enabled = $LAPTOP_KEYBOARD_ENABLED
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard-2
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 1
|
||||
gaps_out = 2
|
||||
border_size = 2
|
||||
col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg
|
||||
col.inactive_border = rgba(${strPalette.bright.black})
|
||||
|
||||
layout = dwindle
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
}
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
# Execute your favorite apps at launch
|
||||
exec-once = ${
|
||||
if nixosConfig.networking.hostName == "thor" then "xrandr --output DP-2 --primary" else "true"
|
||||
} & swww init & nm-applet & blueman-applet & systemctl --user start hyprland-login.target
|
||||
rounding = 10
|
||||
|
||||
# Source a file (multi-file configs)
|
||||
# source = ~/.config/hypr/myColors.conf
|
||||
|
||||
# Some default env vars.
|
||||
env = XCURSOR_SIZE,24
|
||||
|
||||
# For all categories, see https://wiki.hyprland.org/Configuring/Variables/
|
||||
input {
|
||||
kb_layout = ${if nixosConfig.networking.hostName == "thor" then "us,it,us" else "it,us,us"}
|
||||
kb_variant = ,,colemak
|
||||
kb_model =
|
||||
kb_options = grp:menu_toggle,compose:rctrl
|
||||
kb_rules =
|
||||
numlock_by_default = true
|
||||
|
||||
follow_mouse = 2
|
||||
|
||||
touchpad {
|
||||
natural_scroll = yes
|
||||
}
|
||||
|
||||
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||||
}
|
||||
|
||||
$LAPTOP_KEYBOARD_ENABLED = true
|
||||
device {
|
||||
name = at-translated-set-2-keyboard
|
||||
enabled = $LAPTOP_KEYBOARD_ENABLED
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
device {
|
||||
name=keychron-k1-max-keyboard-2
|
||||
kb_layout=us
|
||||
}
|
||||
|
||||
general {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
|
||||
gaps_in = 1
|
||||
gaps_out = 2
|
||||
border_size = 2
|
||||
col.active_border = rgba(${strPalette.normal.yellow}) rgba(${strPalette.normal.red}) 45deg
|
||||
col.inactive_border = rgba(${strPalette.bright.black})
|
||||
|
||||
layout = dwindle
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
new_optimizations = true
|
||||
}
|
||||
|
||||
misc {
|
||||
disable_hyprland_logo = true
|
||||
}
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
|
||||
decoration {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
animations {
|
||||
enabled = yes
|
||||
|
||||
rounding = 10
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 3
|
||||
passes = 1
|
||||
new_optimizations = true
|
||||
}
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
|
||||
drop_shadow = yes
|
||||
shadow_range = 4
|
||||
shadow_render_power = 3
|
||||
col.shadow = rgba(1a1a1aee)
|
||||
}
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = yes
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
new_status = master
|
||||
}
|
||||
|
||||
bezier = myBezier, 0.05, 0.9, 0.1, 1.05
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = true
|
||||
}
|
||||
|
||||
animation = windows, 1, 7, myBezier
|
||||
animation = windowsOut, 1, 7, default, popin 80%
|
||||
animation = border, 1, 10, default
|
||||
animation = borderangle, 1, 8, default
|
||||
animation = fade, 1, 7, default
|
||||
animation = workspaces, 1, 6, default
|
||||
}
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
# device:epic-mouse-v1 {
|
||||
# sensitivity = -0.5
|
||||
# }
|
||||
|
||||
dwindle {
|
||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
||||
pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||
preserve_split = yes # you probably want this
|
||||
}
|
||||
|
||||
master {
|
||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
||||
new_status = master
|
||||
}
|
||||
|
||||
gestures {
|
||||
# See https://wiki.hyprland.org/Configuring/Variables/ for more
|
||||
workspace_swipe = true
|
||||
}
|
||||
|
||||
# Example per-device config
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more
|
||||
# device:epic-mouse-v1 {
|
||||
# sensitivity = -0.5
|
||||
# }
|
||||
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
# Example windowrule v1
|
||||
# windowrule = float, ^(kitty)$
|
||||
# Example windowrule v2
|
||||
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
|
||||
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
||||
|
||||
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# $mainMod = SUPER
|
||||
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
|
||||
# $mainMod = SUPER
|
||||
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = SUPER, RETURN, exec, kitty
|
||||
bind = SUPER, W, killactive,
|
||||
bind = SUPER, M, exec, way-lockscreen
|
||||
bind = SUPER_ALT_L, Q, exit,
|
||||
bind = SUPER, E, exec, nautilus
|
||||
bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq
|
||||
bind = SUPER_SHIFT, E, exec, nemo
|
||||
bind = SUPER, V, togglefloating,
|
||||
bind = SUPER, SPACE, exec, sirula
|
||||
bind = SUPER, F, fullscreen,
|
||||
bind = SUPER, P, pseudo, # dwindle
|
||||
bind = SUPER, J, togglesplit, # dwindle
|
||||
bind = SUPER ALT, E, exec, wofi-emoji
|
||||
bind = SUPER ALT, P, exec, wl-clipedit
|
||||
bind = SUPER, B, exec, wl-update-background
|
||||
bind = ,Print, exec, grimblast copy
|
||||
bind = SHIFT, Print, exec, grimblast copy area
|
||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
||||
bind = SUPER, RETURN, exec, kitty
|
||||
bind = SUPER, W, killactive,
|
||||
bind = SUPER, M, exec, wl-lockscreen
|
||||
bind = SUPER_ALT_L, Q, exit,
|
||||
bind = SUPER, E, exec, nautilus
|
||||
bind = SUPER, L, exec, env -u WAYLAND_DISPLAY logseq
|
||||
bind = SUPER_SHIFT, E, exec, nemo
|
||||
bind = SUPER, V, togglefloating,
|
||||
bind = SUPER, SPACE, exec, sirula
|
||||
bind = SUPER, F, fullscreen,
|
||||
bind = SUPER, P, pseudo, # dwindle
|
||||
bind = SUPER, J, togglesplit, # dwindle
|
||||
bind = SUPER ALT, E, exec, wofi-emoji
|
||||
bind = SUPER ALT, P, exec, wl-clipedit
|
||||
bind = SUPER, B, exec, wl-update-background
|
||||
bind = ,Print, exec, grimblast copy
|
||||
bind = SHIFT, Print, exec, grimblast copy area
|
||||
|
||||
|
||||
# Move focus to relative position
|
||||
bind = SUPER, left, movefocus, l
|
||||
bind = SUPER, right, movefocus, r
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER, down, movefocus, d
|
||||
# Move focus to relative position
|
||||
bind = SUPER, left, movefocus, l
|
||||
bind = SUPER, right, movefocus, r
|
||||
bind = SUPER, up, movefocus, u
|
||||
bind = SUPER, down, movefocus, d
|
||||
|
||||
# Move window to relative position
|
||||
bind = SUPER_SHIFT, left, movewindow, l
|
||||
bind = SUPER_SHIFT, right, movewindow, r
|
||||
bind = SUPER_SHIFT, up, movewindow, u
|
||||
bind = SUPER_SHIFT, down, movewindow, d
|
||||
# Move window to relative position
|
||||
bind = SUPER_SHIFT, left, movewindow, l
|
||||
bind = SUPER_SHIFT, right, movewindow, r
|
||||
bind = SUPER_SHIFT, up, movewindow, u
|
||||
bind = SUPER_SHIFT, down, movewindow, d
|
||||
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
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
|
||||
# Switch workspaces with mainMod + [0-9]
|
||||
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
|
||||
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = SUPER SHIFT, 1, movetoworkspace, 1
|
||||
bind = SUPER SHIFT, 2, movetoworkspace, 2
|
||||
bind = SUPER SHIFT, 3, movetoworkspace, 3
|
||||
bind = SUPER SHIFT, 4, movetoworkspace, 4
|
||||
bind = SUPER SHIFT, 5, movetoworkspace, 5
|
||||
bind = SUPER SHIFT, 6, movetoworkspace, 6
|
||||
bind = SUPER SHIFT, 7, movetoworkspace, 7
|
||||
bind = SUPER SHIFT, 8, movetoworkspace, 8
|
||||
bind = SUPER SHIFT, 9, movetoworkspace, 9
|
||||
bind = SUPER SHIFT, 0, movetoworkspace, 10
|
||||
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||||
bind = SUPER SHIFT, 1, movetoworkspace, 1
|
||||
bind = SUPER SHIFT, 2, movetoworkspace, 2
|
||||
bind = SUPER SHIFT, 3, movetoworkspace, 3
|
||||
bind = SUPER SHIFT, 4, movetoworkspace, 4
|
||||
bind = SUPER SHIFT, 5, movetoworkspace, 5
|
||||
bind = SUPER SHIFT, 6, movetoworkspace, 6
|
||||
bind = SUPER SHIFT, 7, movetoworkspace, 7
|
||||
bind = SUPER SHIFT, 8, movetoworkspace, 8
|
||||
bind = SUPER SHIFT, 9, movetoworkspace, 9
|
||||
bind = SUPER SHIFT, 0, movetoworkspace, 10
|
||||
|
||||
# Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9]
|
||||
bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0
|
||||
bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1
|
||||
bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2
|
||||
bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3
|
||||
bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4
|
||||
bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5
|
||||
bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6
|
||||
bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7
|
||||
bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8
|
||||
bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9
|
||||
# Move workspace to monitor with mainMod + SHIFT + CTRL + [0-9]
|
||||
bind = SUPER SHIFT CTRL, 1, movecurrentworkspacetomonitor, 0
|
||||
bind = SUPER SHIFT CTRL, 2, movecurrentworkspacetomonitor, 1
|
||||
bind = SUPER SHIFT CTRL, 3, movecurrentworkspacetomonitor, 2
|
||||
bind = SUPER SHIFT CTRL, 4, movecurrentworkspacetomonitor, 3
|
||||
bind = SUPER SHIFT CTRL, 5, movecurrentworkspacetomonitor, 4
|
||||
bind = SUPER SHIFT CTRL, 6, movecurrentworkspacetomonitor, 5
|
||||
bind = SUPER SHIFT CTRL, 7, movecurrentworkspacetomonitor, 6
|
||||
bind = SUPER SHIFT CTRL, 8, movecurrentworkspacetomonitor, 7
|
||||
bind = SUPER SHIFT CTRL, 9, movecurrentworkspacetomonitor, 8
|
||||
bind = SUPER SHIFT CTRL, 0, movecurrentworkspacetomonitor, 9
|
||||
|
||||
bind = ALT, Tab, cyclenext
|
||||
bind = ALT SHIFT, Tab, cyclenext, prev
|
||||
bind = ALT, Tab, cyclenext
|
||||
bind = ALT SHIFT, Tab, cyclenext, prev
|
||||
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = SUPER, mouse_down, workspace, e+1
|
||||
bind = SUPER, mouse_up, workspace, e-1
|
||||
# Scroll through existing workspaces with mainMod + scroll
|
||||
bind = SUPER, mouse_down, workspace, e+1
|
||||
bind = SUPER, mouse_up, workspace, e-1
|
||||
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = SUPER, mouse:272, movewindow
|
||||
bindm = SUPER, mouse:273, resizewindow
|
||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||
bindm = SUPER, mouse:272, movewindow
|
||||
bindm = SUPER, mouse:273, resizewindow
|
||||
|
||||
bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+
|
||||
bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-
|
||||
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
|
||||
bindel=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+
|
||||
bindel=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%-
|
||||
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
||||
bind = SUPER ALT, M, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle
|
||||
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = SUPER ALT, Right, exec, playerctl next
|
||||
bind = SUPER ALT, Down, exec, playerctl play-pause
|
||||
bind = SUPER ALT, Left, exec, playerctl previous
|
||||
bind = , XF86AudioNext, exec, playerctl next
|
||||
bind = , XF86AudioPlay, exec, playerctl play-pause
|
||||
bind = , XF86AudioPrev, exec, playerctl previous
|
||||
bind = SUPER ALT, Right, exec, playerctl next
|
||||
bind = SUPER ALT, Down, exec, playerctl play-pause
|
||||
bind = SUPER ALT, Left, exec, playerctl previous
|
||||
|
||||
bind = , XF86PowerOff, exec, wlogout
|
||||
bind = , XF86PowerOff, exec, wlogout
|
||||
|
||||
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
||||
bind = , XF86MonBrightnessDown, exec, brillo -U 10
|
||||
'';
|
||||
bind = , XF86MonBrightnessUp, exec, brillo -A 10
|
||||
bind = , XF86MonBrightnessDown, exec, brillo -U 10
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ in
|
|||
{
|
||||
# TODO: switch to module on next release
|
||||
|
||||
home.packages = [ pkgs.unstable_pkgs.joshuto ];
|
||||
home.packages = [ pkgs.joshuto ];
|
||||
home.shellAliases."fm" = "joshuto --change-directory";
|
||||
|
||||
xdg.configFile = {
|
||||
|
|
|
|||
|
|
@ -1,5 +1,7 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
themeBuilder =
|
||||
palette: with palette; ''
|
||||
set-face global value rgb:${normal.magenta},default
|
||||
|
|
@ -275,7 +277,7 @@ in
|
|||
|
||||
# THEME FILE
|
||||
xdg.configFile."kak/colors/nord.kak".text = themeBuilder (
|
||||
pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette
|
||||
palette.toRgbShortHex rice.colorPalette
|
||||
);
|
||||
|
||||
xdg.configFile."kak-lsp/kak-lsp.toml".text = ''
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette)
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex {
|
||||
inherit (rice.colorPalette)
|
||||
background
|
||||
foreground
|
||||
color0
|
||||
|
|
@ -31,7 +33,7 @@ in
|
|||
enable_audio_bell = false;
|
||||
visual_bell_duration = toString 0.1;
|
||||
update_check_interval = 0;
|
||||
background_opacity = toString pkgs.rice.opacity;
|
||||
background_opacity = toString rice.opacity;
|
||||
close_on_child_death = "yes";
|
||||
clipboard_control = "write-clipboard write-primary read-clipboard read-primary";
|
||||
disable_ligatures = "never";
|
||||
|
|
@ -44,6 +46,6 @@ in
|
|||
"ctrl+shift+up" = "previous_window";
|
||||
"ctrl+shift+down" = "next_window";
|
||||
};
|
||||
font = pkgs.rice.font.monospace;
|
||||
font = rice.font.monospace;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbShortHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbShortHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.mangohud = {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
programs.nix-index = {
|
||||
enable = true;
|
||||
# package = pkgs.unstable_pkgs.nix-index;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -4,9 +4,9 @@
|
|||
, lib
|
||||
, ...
|
||||
}:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.rice) colorPalette opacity;
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
inherit (nixosConfig.nix-rice.rice) colorPalette opacity;
|
||||
alpha = 255 * opacity;
|
||||
grep = "${pkgs.gnugrep}/bin/grep";
|
||||
cut = "${pkgs.coreutils}/bin/cut";
|
||||
|
|
@ -62,27 +62,27 @@ let
|
|||
}"
|
||||
zsh -c 'rofi -show menu -modi "menu:rofi-power-menu --choices=shutdown/reboot/hibernate/logout"'
|
||||
'';
|
||||
colors = nix-rice.palette.toARGBHex rec {
|
||||
colors = palette.toARGBHex rec {
|
||||
normal = {
|
||||
foreground = nix-rice.color.darken 10 colorPalette.foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
foreground = color.darken 10 colorPalette.foreground;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.normal.blue;
|
||||
};
|
||||
|
||||
active = {
|
||||
inherit (colorPalette) foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.normal.yellow;
|
||||
};
|
||||
|
||||
selected = {
|
||||
inherit (colorPalette) foreground;
|
||||
background = nix-rice.color.setAlphaRgba alpha colorPalette.background;
|
||||
background = color.setAlphaRgba alpha colorPalette.background;
|
||||
underline = colorPalette.bright.red;
|
||||
};
|
||||
|
||||
inherit (colorPalette.normal) green red yellow;
|
||||
inherit (nix-rice.color) transparent;
|
||||
inherit (color) transparent;
|
||||
orange = colorPalette.bright.red;
|
||||
alert = orange;
|
||||
};
|
||||
|
|
@ -110,29 +110,22 @@ let
|
|||
bottom.size = 0;
|
||||
};
|
||||
font = [
|
||||
"${pkgs.rice.font.monospace.name}:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
"${rice.font.monospace.name}:size=${toString rice.font.monospace.size};2"
|
||||
# "Font Awesome 6 Free:size=14;0"
|
||||
# "Noto Color Emoji:size=2;2"
|
||||
"Noto Sans Symbols2:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
"Material Design Icons:size=${toString pkgs.rice.font.monospace.size};2"
|
||||
# "EmojiOne Color:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK JP:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK KR:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK CN:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans CJK HK:size=${toString pkgs.rice.font.monospace.size};0"
|
||||
"Noto Sans Symbols2:size=${toString rice.font.monospace.size};2"
|
||||
"Material Design Icons:size=${toString rice.font.monospace.size};2"
|
||||
# "EmojiOne Color:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK JP:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK KR:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK CN:size=${toString rice.font.monospace.size};0"
|
||||
"Noto Sans CJK HK:size=${toString rice.font.monospace.size};0"
|
||||
];
|
||||
enable-ipc = true;
|
||||
wm-restack = "bspwm";
|
||||
};
|
||||
|
||||
ramp = [
|
||||
"▂"
|
||||
"▃"
|
||||
"▄"
|
||||
"▅"
|
||||
"▆"
|
||||
"▇"
|
||||
];
|
||||
ramp = [ "▂" "▃" "▄" "▅" "▆" "▇" ];
|
||||
in
|
||||
{
|
||||
home.packages = builtins.attrValues {
|
||||
|
|
@ -140,7 +133,7 @@ in
|
|||
# emojione
|
||||
# noto-fonts-emoji
|
||||
# font-awesome
|
||||
inherit (pkgs.rice.font.monospace) package;
|
||||
inherit (rice.font.monospace) package;
|
||||
};
|
||||
services.polybar = {
|
||||
enable = true;
|
||||
|
|
|
|||
|
|
@ -14,44 +14,42 @@ in
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
ardour
|
||||
breeze-icons
|
||||
carla
|
||||
mixxx
|
||||
rnnoise
|
||||
#mamba
|
||||
# zrythm
|
||||
|
||||
# Plugins
|
||||
aeolus
|
||||
artyFX
|
||||
autotalent
|
||||
boops
|
||||
calf
|
||||
cardinal
|
||||
fluidsynth
|
||||
geonkick
|
||||
giada
|
||||
lsp-plugins
|
||||
samplv1
|
||||
sfizz
|
||||
surge
|
||||
surge-XT
|
||||
talentedhack
|
||||
vocproc
|
||||
x42-plugins
|
||||
zita-at1
|
||||
zyn-fusion
|
||||
zynaddsubfx
|
||||
# helm
|
||||
# noise-repellent
|
||||
# speech-denoiser
|
||||
# stochas
|
||||
# sunvox
|
||||
# tunefish
|
||||
# zrythm
|
||||
#mamba
|
||||
aeolus
|
||||
ardour
|
||||
artyFX
|
||||
autotalent
|
||||
boops
|
||||
breeze-icons
|
||||
calf
|
||||
cardinal
|
||||
carla
|
||||
fluidsynth
|
||||
geonkick
|
||||
giada
|
||||
lsp-plugins
|
||||
mixxx
|
||||
rnnoise
|
||||
samplv1
|
||||
sfizz
|
||||
surge
|
||||
surge-XT
|
||||
talentedhack
|
||||
vital
|
||||
vocproc
|
||||
x42-plugins
|
||||
zita-at1
|
||||
zyn-fusion
|
||||
zynaddsubfx
|
||||
;
|
||||
|
||||
inherit (pkgs.unstable_pkgs) vital;
|
||||
};
|
||||
|
||||
home.sessionVariables = variables;
|
||||
|
|
|
|||
|
|
@ -2,6 +2,6 @@
|
|||
{
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs) python3;
|
||||
inherit (pkgs.unstable_pkgs.jetbrains) pycharm-professional jdk;
|
||||
inherit (pkgs.jetbrains) pycharm-professional jdk;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
in
|
||||
{
|
||||
|
||||
home.packages = builtins.attrValues {
|
||||
|
|
@ -14,7 +18,7 @@
|
|||
programs.rofi = {
|
||||
enable = true;
|
||||
location = "center";
|
||||
font = "${pkgs.rice.font.monospace.name} ${toString pkgs.rice.font.monospace.size}";
|
||||
font = "${rice.font.monospace.name} ${toString rice.font.monospace.size}";
|
||||
plugins = [ pkgs.rofi-calc ];
|
||||
extraConfig = {
|
||||
modi = "drun,run,ssh,window,calc";
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@
|
|||
events = [
|
||||
{
|
||||
event = "before-sleep";
|
||||
command = "${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
}
|
||||
{
|
||||
event = "lock";
|
||||
command = "${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
}
|
||||
];
|
||||
timeouts = [
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
}
|
||||
{
|
||||
timeout = 120;
|
||||
command = "${pkgs.brillo}/bin/brillo -e -S 0; ${pkgs.way-lockscreen}/bin/way-lockscreen";
|
||||
command = "${pkgs.brillo}/bin/brillo -e -S 0; ${pkgs.wl-lockscreen}/bin/wl-lockscreen";
|
||||
resumeCommand = "${pkgs.brillo}/bin/brillo -e -S 100";
|
||||
}
|
||||
];
|
||||
|
|
|
|||
|
|
@ -1,131 +0,0 @@
|
|||
{ pkgs, lib, ... }:
|
||||
{
|
||||
imports = [
|
||||
# ./alacritty.nix
|
||||
./kitty.nix
|
||||
# ./nautilus.nix
|
||||
./nemo.nix
|
||||
./terminator.nix
|
||||
# ./thunar.nix
|
||||
./yazi.nix
|
||||
];
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
bc# required by bsp-layout
|
||||
bsp-layout
|
||||
clipedit
|
||||
lockscreen
|
||||
terminator
|
||||
;
|
||||
};
|
||||
services.sxhkd =
|
||||
let
|
||||
primaryTerminal = "kitty";
|
||||
secondaryTerminal = "terminator";
|
||||
fileManager =
|
||||
let
|
||||
ya = pkgs.writeShellScript "ya" ''
|
||||
tmp="$(mktemp -t "yazi-cwd.XXXXX")"
|
||||
yazi --cwd-file="$tmp"
|
||||
if cwd="$(cat -- "$tmp")" && [ -n "$cwd" ] && [ "$cwd" != "$PWD" ]; then
|
||||
cd -- "$cwd"
|
||||
fi
|
||||
rm -f -- "$tmp"
|
||||
'';
|
||||
in
|
||||
"kitty -e bash ${ya}";
|
||||
secondaryFileManager = "nemo";
|
||||
emojiChooser = "rofimoji --skin-tone light -a copy";
|
||||
windowSwitcher = "rofi -show window";
|
||||
|
||||
arandr = "${pkgs.arandr}/bin/arandr";
|
||||
passwordChoser = "rofi-rbw";
|
||||
notify = "${pkgs.libnotify}/bin/notify-send";
|
||||
pamixer = "${pkgs.pamixer}/bin/pamixer";
|
||||
playerctl = "${pkgs.playerctl}/bin/playerctl";
|
||||
xbacklight = "${pkgs.xorg.xbacklight}/bin/xbacklight";
|
||||
resetBspwm = pkgs.writeShellScript "resetBspwm" ''
|
||||
bspc wm -r
|
||||
for p in {top,bottom,left,right}; do bspc config -m any ''${p}_padding 0; done # Reset padding
|
||||
systemctl --user restart polybar # Restart polybar
|
||||
${notify} "BSPWM restarted"
|
||||
'';
|
||||
moveAllNodesToPrimary = pkgs.writeShellScript "moveAllNodesToPrimary" ''
|
||||
comm -23 <(bspc query -N | sort) <(bspc query -m primary -N | sort) | while read n; do bspc node $n -m primary; done
|
||||
'';
|
||||
notifyVolume = pkgs.writeShellScript "notifyVolume" ''
|
||||
PATH=$PATH:"${
|
||||
lib.makeBinPath [
|
||||
pkgs.coreutils
|
||||
pkgs.pamixer
|
||||
]
|
||||
}"
|
||||
sink=`pamixer --get-default-sink | tail -n 1| sed -E 's/.+"(.+)"$/\1/'`
|
||||
muted=`pamixer --get-mute`
|
||||
volume=`pamixer --get-volume`
|
||||
if [[ $muted == "true" ]]; then
|
||||
${notify} -r 1 -h "int:value:0" "Muted" "$sink"
|
||||
else
|
||||
${notify} -r 1 -h "int:value:$volume" "Volume $volume%" "$sink"
|
||||
fi
|
||||
'';
|
||||
notifyBrightness = pkgs.writeShellScript "notifyBrightness" ''
|
||||
level=`printf "%.0f" $(${xbacklight} -get)`
|
||||
${notify} -r 2 -h "int:value:$level" "Luminosità $level"
|
||||
'';
|
||||
powermenu = pkgs.writeShellScript "powermenu" ''
|
||||
PATH=$PATH:"${
|
||||
lib.makeBinPath [
|
||||
pkgs.rofi
|
||||
pkgs.rofi-power-menu
|
||||
]
|
||||
}"
|
||||
rofi -show menu -modi "menu:rofi-power-menu --choices=shutdown/reboot/hibernate/logout"
|
||||
'';
|
||||
in
|
||||
{
|
||||
enable = true;
|
||||
keybindings = {
|
||||
"{,shift+}Print" = "${pkgs.gnome-screenshot}/bin/gnome-screenshot {-i,-a}";
|
||||
"XF86Audio{LowerVolume,Mute,RaiseVolume}" = "${pamixer} {-d 2 -u,-t,-i 2 -u} && ${notifyVolume}";
|
||||
"XF86Audio{Next,Play,Prev}" = "${playerctl} {next,play-pause,previous}";
|
||||
"XF86MonBrightness{Up,Down}" = "${xbacklight} -{inc,dec} 10 && ${notifyBrightness}";
|
||||
"XF86PowerOff" = toString powermenu;
|
||||
"alt + Tab" = windowSwitcher;
|
||||
"button10" = windowSwitcher;
|
||||
"super + Escape" = "pkill -USR1 -x sxhkd";
|
||||
"super + alt + e" = emojiChooser;
|
||||
"super + alt + i" = passwordChoser;
|
||||
"super + alt + m" = "lockscreen";
|
||||
"super + alt + o" = "${moveAllNodesToPrimary}";
|
||||
"super + alt + p" = "${arandr}";
|
||||
"super + alt + r" = "${resetBspwm}";
|
||||
"super + alt + shift + {h,j,k,l}" = "bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}";
|
||||
"super + alt + {Right,Down,Left}" = "${playerctl} {next,play-pause,previous}";
|
||||
"super + alt + {h,j,k,l}" = "bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}";
|
||||
"super + b" = "${pkgs.update-background}/bin/update-background";
|
||||
"super + bracket{left,right}" = "bspc desktop -f {prev,next}.local";
|
||||
"super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel";
|
||||
"super + ctrl + space" = "bspc node -p cancel";
|
||||
"super + ctrl + {1-9}" = "bspc node -o 0.{1-9}";
|
||||
"super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}";
|
||||
"super + e {_,+shift}" = "{${fileManager},${secondaryFileManager}}";
|
||||
"super + g" = "bspc node -s biggest";
|
||||
"super + m" = "bspc desktop -l next";
|
||||
"super + n {_, + shift}" = "bsp-layout {next, previous}";
|
||||
"super + shift + ctrl + d" = "rofi -show ssh";
|
||||
"super + shift + p" = "clipedit";
|
||||
"super + shift + {a,d}" = "bspc node @/ -C {forward,backward}";
|
||||
"super + shift + {h,j,k,l}" = ''dir={west,south,north,east}; bspc node -s "$dir.local" --follow || bspc node -m "$dir" --follow'';
|
||||
"super + {Left,Down,Up,Right}" = "bspc node -v {-20 0,0 20,0 -20,20 0}";
|
||||
"super + {_,shift + } Return" = "{${primaryTerminal} , ${secondaryTerminal}}";
|
||||
"super + {_,shift + } c" = "bspc node -f {next,prev}.local";
|
||||
"super + {_,shift + } space" = "rofi -show {drun,run}";
|
||||
"super + {_,shift + } w" = "bspc node -{c,k}";
|
||||
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} 'focused:^{1-9,10}'";
|
||||
"super + {h,j,k,l}" = "dir={west,south,north,east}; bspc node -f $dir || bspc monitor -f $dir";
|
||||
"super + {o,i}" = "bspc wm -h off;bspc node {older,newer} -f;bspc wm -h on";
|
||||
"super + {t,shift + t,s,f}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
@ -1,11 +1,13 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette) normal bright dark;
|
||||
inherit (pkgs.rice.colorPalette.primary) background foreground;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex {
|
||||
inherit (rice.colorPalette) normal bright dark;
|
||||
inherit (rice.colorPalette.primary) background foreground;
|
||||
};
|
||||
opacity = toString pkgs.rice.opacity;
|
||||
font = pkgs.rice.font.monospace;
|
||||
opacity = toString rice.opacity;
|
||||
font = rice.font.monospace;
|
||||
colorString =
|
||||
normal: bright:
|
||||
builtins.concatStringsSep ":" [
|
||||
|
|
|
|||
|
|
@ -1,7 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRGBHex pkgs.rice.colorPalette;
|
||||
font = pkgs.rice.font.normal;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRGBHex rice.colorPalette;
|
||||
font = rice.font.normal;
|
||||
in
|
||||
{
|
||||
services.twmn = {
|
||||
|
|
@ -17,7 +19,7 @@ in
|
|||
animation.bounce.enable = false;
|
||||
color = strPalette.primary.background;
|
||||
height = 32;
|
||||
opacity = pkgs.lib.nix-rice.float.round (pkgs.rice.opacity * 100);
|
||||
opacity = float.round (rice.opacity * 100);
|
||||
offset = {
|
||||
x = -20;
|
||||
y = 50;
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
inherit (pkgs.rice) colorPalette;
|
||||
inherit (pkgs.lib) nix-rice;
|
||||
inherit (nixosConfig.nix-rice.rice) colorPalette font;
|
||||
alpha = 0.9;
|
||||
custom = nix-rice.palette.toRGBHex {
|
||||
custom = palette.toRGBHex {
|
||||
inherit (colorPalette.primary) background foreground;
|
||||
alpha_background = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
alpha_background = color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
primary_accent = colorPalette.normal.blue;
|
||||
secondary_accent = colorPalette.normal.cyan;
|
||||
tertiary_accent = colorPalette.primary.yellow;
|
||||
palette = {
|
||||
primary_background_rgba = colorPalette.primary.background;
|
||||
tertiary_background_hex = nix-rice.color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
tertiary_background_hex = color.setAlphaRgba alpha colorPalette.primary.background;
|
||||
};
|
||||
};
|
||||
swaync-client = "${pkgs.swaynotificationcenter}/bin/swaync-client";
|
||||
|
|
@ -184,7 +184,7 @@ in
|
|||
* {
|
||||
border: none;
|
||||
border-radius: 0px;
|
||||
font-family: ${pkgs.rice.font.monospace.name};
|
||||
font-family: ${font.monospace.name};
|
||||
font-size: 10px;
|
||||
min-height: 0;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,5 @@
|
|||
{ pkgs, ... }:
|
||||
let
|
||||
update_time = "10m";
|
||||
backgrounds_directory = "$HOME/Immagini/Sfondi/1080+/1440+";
|
||||
update_script = pkgs.writeShellScriptBin "wl-update-background" ''
|
||||
set -e
|
||||
if [ $# -eq 0 ]; then
|
||||
image=`${pkgs.findutils}/bin/find ${backgrounds_directory} -type f | ${pkgs.gnugrep}/bin/grep -v "/\." | ${pkgs.coreutils}/bin/shuf -n 1`
|
||||
else
|
||||
image="$1"
|
||||
fi
|
||||
echo "image: $image"
|
||||
${pkgs.swww}/bin/swww img "$image"
|
||||
'';
|
||||
in
|
||||
{
|
||||
home.packages = [ update_script ];
|
||||
{ pkgs, ... }: {
|
||||
home.packages = [ pkgs.wl-update-background ];
|
||||
|
||||
systemd.user.services."wl-update-background" = {
|
||||
Unit = {
|
||||
|
|
@ -29,7 +14,7 @@ in
|
|||
Service = {
|
||||
Type = "oneshot";
|
||||
IOSchedulingClass = "idle";
|
||||
ExecStart = "${update_script}/bin/wl-update-background";
|
||||
ExecStart = "${pkgs.wl-update-background}/bin/wl-update-background";
|
||||
};
|
||||
};
|
||||
|
||||
|
|
@ -38,7 +23,7 @@ in
|
|||
Description = "Set random desktop background using swww";
|
||||
};
|
||||
Timer = {
|
||||
OnUnitActiveSec = update_time;
|
||||
OnUnitActiveSec = "10m";
|
||||
};
|
||||
Install = {
|
||||
WantedBy = [ "timers.target" ];
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex {
|
||||
inherit (pkgs.rice.colorPalette) normal bright primary;
|
||||
};
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
home.file.".Xresources" = {
|
||||
|
|
@ -30,8 +30,8 @@ in
|
|||
*.color14: ${strPalette.bright.cyan}
|
||||
*.color15: ${strPalette.bright.white}
|
||||
|
||||
xterm*faceName: ${pkgs.rice.font.monospace.name}
|
||||
xterm*faceSize: ${toString pkgs.rice.font.monospace.size}
|
||||
xterm*faceName: ${rice.font.monospace.name}
|
||||
xterm*faceSize: ${toString rice.font.monospace.size}
|
||||
'';
|
||||
onChange = "${pkgs.xorg.xrdb}/bin/xrdb -merge ~/.Xresources ";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@
|
|||
enable = true;
|
||||
enableBashIntegration = true;
|
||||
enableZshIntegration = true;
|
||||
package = pkgs.unstable_pkgs.yazi;
|
||||
settings = {
|
||||
manager = {
|
||||
sort_by = "natural";
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
inherit (nixosConfig.nix-rice) rice;
|
||||
strPalette = palette.toRgbHex rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.zathura = {
|
||||
|
|
@ -11,7 +13,7 @@ in
|
|||
options = {
|
||||
# completion-bg = strPalette.bright.black;
|
||||
# default-bg = strPalette.normal.black;
|
||||
font = "${pkgs.rice.font.normal.name} 10";
|
||||
font = "${rice.font.normal.name} 10";
|
||||
# inputbar-bg = strPalette.bright.black;
|
||||
# inputbar-fg = strPalette.normal.cyan;
|
||||
page-padding = 10;
|
||||
|
|
@ -59,6 +61,5 @@ in
|
|||
# recolor = true;
|
||||
recolor-keephue = true; # keep original color
|
||||
};
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,12 +1,10 @@
|
|||
{ pkgs, ... }:
|
||||
{ nixosConfig, ... }:
|
||||
with nixosConfig.nix-rice.lib;
|
||||
let
|
||||
strPalette = pkgs.lib.nix-rice.palette.toRgbHex pkgs.rice.colorPalette;
|
||||
strPalette = palette.toRgbHex nixosConfig.nix-rice.rice.colorPalette;
|
||||
in
|
||||
{
|
||||
programs.zellij = {
|
||||
enable = true;
|
||||
package = pkgs.unstable_pkgs.zellij;
|
||||
};
|
||||
programs.zellij.enable = true;
|
||||
|
||||
home.shellAliases = {
|
||||
"ze" = "zellij";
|
||||
|
|
|
|||
|
|
@ -1,5 +1,4 @@
|
|||
{ pkgs
|
||||
, config
|
||||
{ config
|
||||
, lib
|
||||
, ...
|
||||
}:
|
||||
|
|
@ -26,7 +25,6 @@
|
|||
};
|
||||
|
||||
services.garage = {
|
||||
package = pkgs.unstable_pkgs.garage;
|
||||
enable = true;
|
||||
settings = {
|
||||
replication_mode = 1;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@
|
|||
{
|
||||
programs.hyprland = {
|
||||
enable = true;
|
||||
# package = pkgs.unstable_pkgs.hyprland;
|
||||
# enableNvidiaPatches = builtins.elem "nvidia" config.services.xserver.videoDrivers; # removed in 24.x
|
||||
xwayland.enable = true;
|
||||
};
|
||||
|
|
|
|||
62
modules/nixos/rice.nix
Normal file
62
modules/nixos/rice.nix
Normal file
|
|
@ -0,0 +1,62 @@
|
|||
{ pkgs, config, ... }:
|
||||
with config.nix-rice.lib;
|
||||
let
|
||||
theme = kitty-themes.getThemeByName "Nightfox";
|
||||
inherit (config.nix-rice) rice;
|
||||
in
|
||||
{
|
||||
nix-rice.config = {
|
||||
colorPalette = rec {
|
||||
normal = palette.defaultPalette // {
|
||||
black = theme.color0;
|
||||
red = theme.color1;
|
||||
green = theme.color2;
|
||||
yellow = theme.color3;
|
||||
blue = theme.color4;
|
||||
magenta = theme.color5;
|
||||
cyan = theme.color6;
|
||||
white = theme.color7;
|
||||
};
|
||||
bright = palette.brighten 10 normal // {
|
||||
black = theme.color8;
|
||||
red = theme.color9;
|
||||
green = theme.color10;
|
||||
yellow = theme.color11;
|
||||
blue = theme.color12;
|
||||
magenta = theme.color13;
|
||||
cyan = theme.color14;
|
||||
white = theme.color15;
|
||||
};
|
||||
dark = palette.darken 10 normal;
|
||||
primary = {
|
||||
inherit (theme) background foreground;
|
||||
bright_foreground = color.brighten 10 theme.foreground;
|
||||
dim_foreground = color.darken 10 theme.foreground;
|
||||
};
|
||||
} // theme;
|
||||
font = {
|
||||
normal = {
|
||||
name = "Cantarell";
|
||||
package = pkgs.cantarell-fonts;
|
||||
size = 10;
|
||||
};
|
||||
monospace = {
|
||||
name = "CaskaydiaCove Nerd Font";
|
||||
package = pkgs.nerdfonts.override { fonts = [ "CascadiaCode" ]; };
|
||||
# name = "FiraCode Nerd Font Mono";
|
||||
# package = pkgs.nerdfonts.override { fonts = [ "FiraCode" ]; };
|
||||
size = 10;
|
||||
};
|
||||
};
|
||||
opacity = 0.95;
|
||||
};
|
||||
|
||||
nixpkgs.overlays = [
|
||||
(_self: super: {
|
||||
wl-lockscreen = super.wl-lockscreen.override {
|
||||
strPalette = palette.toRgbaShortHex rice.colorPalette;
|
||||
font = rice.font.normal;
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue