mirror of
https://forge.katzen.cafe/schrottkatze/nix-configs.git
synced 2025-11-17 17:19:41 +01:00
Compare commits
No commits in common. "14adf2731ff919f0995461e259ce469e7126dbfd" and "2a5e635c0dd9ac5ab0ee2e48fb7f1c113ca2a289" have entirely different histories.
14adf2731f
...
2a5e635c0d
23 changed files with 372 additions and 341 deletions
|
|
@ -15,7 +15,6 @@
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
../../common.nix
|
../../common.nix
|
||||||
../../modules
|
../../modules
|
||||||
./modules
|
|
||||||
];
|
];
|
||||||
jade = {
|
jade = {
|
||||||
desktop = {
|
desktop = {
|
||||||
|
|
@ -26,6 +25,29 @@
|
||||||
mail.enable = true;
|
mail.enable = true;
|
||||||
gaming.enable = true;
|
gaming.enable = true;
|
||||||
};
|
};
|
||||||
|
input.remapping = {
|
||||||
|
enable = true;
|
||||||
|
devices."AT Translated Set 2 keyboard" = {
|
||||||
|
swapKeys = [
|
||||||
|
["KEY_Y" "KEY_Z"]
|
||||||
|
["KEY_LEFTALT" "KEY_LEFTMETA"]
|
||||||
|
];
|
||||||
|
dual_role = [
|
||||||
|
{
|
||||||
|
input = "KEY_CAPSLOCK";
|
||||||
|
hold = ["KEY_LEFTCTRL"];
|
||||||
|
tap = ["KEY_ESC"];
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
hardware.trackpoint = {
|
||||||
|
enable = true;
|
||||||
|
# device = "MELF0410:00 1FD2:7007";
|
||||||
|
device = "DELL081C:00 044E:121F Mouse";
|
||||||
|
sensitivity = 255;
|
||||||
};
|
};
|
||||||
|
|
||||||
hardware.usb-modeswitch.enable = true;
|
hardware.usb-modeswitch.enable = true;
|
||||||
|
|
@ -59,6 +81,8 @@
|
||||||
hardware.bluetooth.enable = true;
|
hardware.bluetooth.enable = true;
|
||||||
services.blueman.enable = true;
|
services.blueman.enable = true;
|
||||||
|
|
||||||
|
services.xserver.libinput.touchpad.tapping = false;
|
||||||
|
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
pkgs.plantuml
|
pkgs.plantuml
|
||||||
pkgs.mqttui
|
pkgs.mqttui
|
||||||
|
|
|
||||||
|
|
@ -1,5 +0,0 @@
|
||||||
{...}: {
|
|
||||||
imports = [
|
|
||||||
./input.nix
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
{...}: {
|
|
||||||
# key remapping
|
|
||||||
jade.input.remapping = {
|
|
||||||
enable = true;
|
|
||||||
devices."AT Translated Set 2 keyboard" = {
|
|
||||||
swapKeys = [
|
|
||||||
["KEY_Y" "KEY_Z"]
|
|
||||||
["KEY_LEFTALT" "KEY_LEFTMETA"]
|
|
||||||
];
|
|
||||||
dual_role = [
|
|
||||||
{
|
|
||||||
input = "KEY_CAPSLOCK";
|
|
||||||
hold = ["KEY_LEFTCTRL"];
|
|
||||||
tap = ["KEY_ESC"];
|
|
||||||
}
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware.trackpoint = {
|
|
||||||
enable = true;
|
|
||||||
device = "TPPS/2 IBM TrackPoint";
|
|
||||||
sensitivity = 220;
|
|
||||||
};
|
|
||||||
|
|
||||||
services.xserver.libinput.touchpad.tapping = false;
|
|
||||||
}
|
|
||||||
|
|
@ -1,4 +1,10 @@
|
||||||
{pkgs, ...}: {
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
config = {
|
||||||
programs = {
|
programs = {
|
||||||
noisetorch.enable = true;
|
noisetorch.enable = true;
|
||||||
};
|
};
|
||||||
|
|
@ -10,16 +16,24 @@
|
||||||
jack.enable = true;
|
jack.enable = true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
environment.systemPackages = with pkgs; [
|
hardware.pulseaudio.enable = pkgs.lib.mkForce false;
|
||||||
|
sound.mediaKeys.enable = true;
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
home.packages = with pkgs; [
|
||||||
pavucontrol
|
pavucontrol
|
||||||
volumeicon
|
|
||||||
playerctl
|
|
||||||
|
|
||||||
pulseaudioFull
|
pulseaudioFull
|
||||||
easyeffects
|
easyeffects
|
||||||
cava
|
cava
|
||||||
|
volumeicon
|
||||||
|
playerctl
|
||||||
helvum
|
helvum
|
||||||
];
|
];
|
||||||
hardware.pulseaudio.enable = pkgs.lib.mkForce false;
|
xsession.windowManager.i3.config.startup = [
|
||||||
sound.mediaKeys.enable = true;
|
{
|
||||||
|
command = "pkill volumeicon; volumeicon";
|
||||||
|
always = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
42
modules/desktop-environment/compositing.nix
Normal file
42
modules/desktop-environment/compositing.nix
Normal file
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.jade.desktop.compositing;
|
||||||
|
in
|
||||||
|
with lib; {
|
||||||
|
options.jade.desktop.compositing = {
|
||||||
|
enable = mkEnableOption "Enable compositing with picom";
|
||||||
|
};
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
services.picom = {
|
||||||
|
enable = true;
|
||||||
|
backend = "glx";
|
||||||
|
|
||||||
|
shadow = true;
|
||||||
|
shadowOffsets = [(-40) (-30)];
|
||||||
|
shadowOpacity = 0.2;
|
||||||
|
shadowExclude = [
|
||||||
|
"class_g ?= 'Notify-osd'"
|
||||||
|
"_GTK_FRAME_EXTENTS@:c"
|
||||||
|
"!(class_g = 'Rofi' || class_g = 'Dunst')"
|
||||||
|
];
|
||||||
|
|
||||||
|
vSync = true;
|
||||||
|
settings = {
|
||||||
|
"shadow-radius" = 40;
|
||||||
|
# fading rofi
|
||||||
|
"fading" = true;
|
||||||
|
"fade-in-step" = 0.25;
|
||||||
|
"fade-out-step" = 0.2;
|
||||||
|
"fade-delta" = 20;
|
||||||
|
"fade-exclude" = ["class_g != 'Rofi'"];
|
||||||
|
# use damage information
|
||||||
|
"use-damage" = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# }}}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,7 +1,11 @@
|
||||||
{...}: {
|
{...}: {
|
||||||
imports = [
|
imports = [
|
||||||
./audio.nix
|
./audio.nix
|
||||||
|
./compositing.nix
|
||||||
|
./dunst.nix
|
||||||
|
./panels
|
||||||
|
./xmonad
|
||||||
|
./terminal.nix
|
||||||
./flatpak.nix
|
./flatpak.nix
|
||||||
./home
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
19
modules/desktop-environment/dunst.nix
Normal file
19
modules/desktop-environment/dunst.nix
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
{...}: {
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
services.dunst = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
global = {
|
||||||
|
dmenu = "${pkgs.rofi}/bin/rofi -theme gruvbox-dark -dmenu -p dunst";
|
||||||
|
browser = "${pkgs.librewolf}/bin/librewolf";
|
||||||
|
mouse_left_click = "context";
|
||||||
|
mouse_middle_click = "close_current";
|
||||||
|
background = "#282828";
|
||||||
|
foreground = "#ebdbb2";
|
||||||
|
frame_color = "#504945";
|
||||||
|
frame_width = 2;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,28 +0,0 @@
|
||||||
{...}: {
|
|
||||||
services.picom = {
|
|
||||||
enable = true;
|
|
||||||
backend = "glx";
|
|
||||||
|
|
||||||
shadow = true;
|
|
||||||
shadowOffsets = [(-40) (-30)];
|
|
||||||
shadowOpacity = 0.2;
|
|
||||||
shadowExclude = [
|
|
||||||
"class_g ?= 'Notify-osd'"
|
|
||||||
"_GTK_FRAME_EXTENTS@:c"
|
|
||||||
"!(class_g = 'Rofi' || class_g = 'Dunst')"
|
|
||||||
];
|
|
||||||
|
|
||||||
vSync = true;
|
|
||||||
settings = {
|
|
||||||
"shadow-radius" = 40;
|
|
||||||
# fading rofi
|
|
||||||
"fading" = true;
|
|
||||||
"fade-in-step" = 0.25;
|
|
||||||
"fade-out-step" = 0.2;
|
|
||||||
"fade-delta" = 20;
|
|
||||||
"fade-exclude" = ["class_g != 'Rofi'"];
|
|
||||||
# use damage information
|
|
||||||
"use-damage" = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,11 +0,0 @@
|
||||||
{...}: {
|
|
||||||
home-manager.users.jade = {...}: {
|
|
||||||
imports = [
|
|
||||||
./notifications.nix
|
|
||||||
./terminal.nix
|
|
||||||
./compositing.nix
|
|
||||||
./panels
|
|
||||||
./xmonad
|
|
||||||
];
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
services.dunst = {
|
|
||||||
enable = true;
|
|
||||||
settings = {
|
|
||||||
global = {
|
|
||||||
dmenu = "${pkgs.rofi}/bin/rofi -theme gruvbox-dark -dmenu -p dunst";
|
|
||||||
browser = "${pkgs.librewolf}/bin/librewolf";
|
|
||||||
mouse_left_click = "context";
|
|
||||||
mouse_middle_click = "close_current";
|
|
||||||
background = "#282828";
|
|
||||||
foreground = "#ebdbb2";
|
|
||||||
frame_color = "#504945";
|
|
||||||
frame_width = 2;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,146 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
services.polybar = {
|
|
||||||
enable = true;
|
|
||||||
package = pkgs.polybarFull;
|
|
||||||
|
|
||||||
script = "";
|
|
||||||
settings = {
|
|
||||||
colors = {
|
|
||||||
background = "#282828";
|
|
||||||
background-alt = "#3c3836";
|
|
||||||
foreground = "#ebdbb2";
|
|
||||||
primary = "#d65d0e";
|
|
||||||
secondary = "#fe8019";
|
|
||||||
alert = "#cc241d";
|
|
||||||
disabled = "#504945";
|
|
||||||
};
|
|
||||||
"bar/status" = {
|
|
||||||
# Style
|
|
||||||
bottom = true;
|
|
||||||
width = "100%";
|
|
||||||
height = "24px";
|
|
||||||
radius = 0;
|
|
||||||
tray-position = "center";
|
|
||||||
background = "\${colors.background}";
|
|
||||||
foreground = "\${colors.foreground}";
|
|
||||||
line-size = "4px";
|
|
||||||
border-color = "#00000000";
|
|
||||||
padding-left = 0;
|
|
||||||
padding-right = 1;
|
|
||||||
module-margin = 1;
|
|
||||||
separator = "|";
|
|
||||||
separator-foreground = "\${colors.disabled}";
|
|
||||||
font-0 = "FiraCode Nerd Font";
|
|
||||||
modules-left = "xworkspaces xwindow";
|
|
||||||
modules-right = "memory cpu wlan bat0 bat1";
|
|
||||||
cursor-click = "pointer";
|
|
||||||
cursor-scroll = "ns-resize";
|
|
||||||
enable-ipc = true;
|
|
||||||
wm-restack = "generic";
|
|
||||||
override-redirect = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/xworkspaces" = {
|
|
||||||
type = "internal/xworkspaces";
|
|
||||||
label-active = "";
|
|
||||||
label-active-padding = 1;
|
|
||||||
label-occupied = "";
|
|
||||||
label-occupied-padding = 1;
|
|
||||||
label-urgent = "";
|
|
||||||
label-urgent-foreground = "\${colors.alert}";
|
|
||||||
label-urgent-padding = 1;
|
|
||||||
label-empty = "";
|
|
||||||
label-empty-foreground = "\${colors.disabled}";
|
|
||||||
label-empty-padding = 1;
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/xwindow" = {
|
|
||||||
type = "internal/xwindow";
|
|
||||||
label = "%title:0:60:...%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/memory" = {
|
|
||||||
type = "internal/memory";
|
|
||||||
interval = 2;
|
|
||||||
format-prefix = " ";
|
|
||||||
format-prefix-foreground = "\${colors.primary}";
|
|
||||||
label = "%percentage_used:2%%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/cpu" = {
|
|
||||||
type = "internal/cpu";
|
|
||||||
interval = "2";
|
|
||||||
format-prefix = " ";
|
|
||||||
format-prefix-foreground = "\${colors.primary}";
|
|
||||||
label = "%percentage:2%%";
|
|
||||||
};
|
|
||||||
|
|
||||||
"network-base" = {
|
|
||||||
type = "internal/network";
|
|
||||||
interval = 5;
|
|
||||||
format-connected = "<ramp-signal> <label-connected>";
|
|
||||||
format-disconnected = "<label-disconnected>";
|
|
||||||
label-disconnected = "";
|
|
||||||
label-disconnected-foreground = "#d65d0e";
|
|
||||||
ramp.signal = [
|
|
||||||
"%{F#cc241d}"
|
|
||||||
"%{F#d79921}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
"module/wlan" = {
|
|
||||||
"inherit" = "network-base";
|
|
||||||
interface-type = "wireless";
|
|
||||||
label-connected = "%{F#F0C674}%{F-} %local_ip%";
|
|
||||||
};
|
|
||||||
"battery-base" = {
|
|
||||||
type = "internal/battery";
|
|
||||||
poll-interval = 1;
|
|
||||||
time-format = "%H%{F#7c6f64}:%{F#d5c4a1}%M";
|
|
||||||
label-charging = "%{F#98971a} %{F#ebdbb2}%percentage%%%{F#d5c4a1} %time%";
|
|
||||||
format-charging = "<ramp-capacity> <label-charging>";
|
|
||||||
label-discharging = "%{F#ebdbb2}%percentage%%%{F#bdae93} %time%";
|
|
||||||
format-discharging = "<ramp-capacity> <label-discharging>";
|
|
||||||
label-full = "%{F#98971a}%{F#ebdbb2} %percentage%%";
|
|
||||||
format-full = "<label-full>";
|
|
||||||
label-low = "%{F#cc241d}%{F#ebdbb2} %percentage%%";
|
|
||||||
format-low = "<label-low>";
|
|
||||||
ramp.capacity = [
|
|
||||||
"%{F#cc241d}"
|
|
||||||
"%{F#d79921}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
"%{F#98971a}"
|
|
||||||
];
|
|
||||||
};
|
|
||||||
"module/bat0" = {
|
|
||||||
"inherit" = "battery-base";
|
|
||||||
battery = "BAT0";
|
|
||||||
adapter = "ADP1";
|
|
||||||
};
|
|
||||||
"module/bat1" = {
|
|
||||||
"inherit" = "battery-base";
|
|
||||||
battery = "BAT1";
|
|
||||||
adapter = "ADP1";
|
|
||||||
};
|
|
||||||
|
|
||||||
"settings" = {
|
|
||||||
screenchange-reload = true;
|
|
||||||
pseudo-transparency = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
{
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}: let
|
|
||||||
xmobarGhc = pkgs.haskellPackages.ghcWithPackages (pkgs:
|
|
||||||
with pkgs; [
|
|
||||||
xmobar
|
|
||||||
statgrab
|
|
||||||
]);
|
|
||||||
in {
|
|
||||||
home = {
|
|
||||||
packages = [xmobarGhc];
|
|
||||||
file."xmobar.hs" = rec {
|
|
||||||
source = ./xmobar.hs;
|
|
||||||
target = ".config/xmobar/xmobar.hs";
|
|
||||||
onChange = ''
|
|
||||||
${xmobarGhc}/bin/ghc -threaded ${target}
|
|
||||||
${pkgs.busybox}/bin/pkill xmobar
|
|
||||||
${pkgs.haskellPackages.xmonad}/bin/xmonad --restart
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
|
||||||
programs.xmobar = {
|
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
{...}: {
|
|
||||||
programs.kitty = {
|
|
||||||
enable = true;
|
|
||||||
font = {
|
|
||||||
name = "FiraCode Nerd Font";
|
|
||||||
size = 11;
|
|
||||||
};
|
|
||||||
settings = {
|
|
||||||
#adjust_column_width = "70%";
|
|
||||||
color0 = "#282828";
|
|
||||||
color8 = "#928374";
|
|
||||||
color1 = "#cc241d";
|
|
||||||
color9 = "#fb4934";
|
|
||||||
color2 = "#98971a";
|
|
||||||
color10 = "#b8bb26";
|
|
||||||
color3 = "#d79921";
|
|
||||||
color11 = "#fabd2f";
|
|
||||||
color4 = "#458588";
|
|
||||||
color12 = "#83a598";
|
|
||||||
color5 = "#b16286";
|
|
||||||
color13 = "#d3869b";
|
|
||||||
color6 = "#689d6a";
|
|
||||||
color14 = "#8ec07c";
|
|
||||||
color7 = "#a89984";
|
|
||||||
color15 = "#ebdbb2";
|
|
||||||
foreground = "#ebdbb2";
|
|
||||||
background = "#282828";
|
|
||||||
confirm_os_window_close = 0;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
home.sessionVariables = {
|
|
||||||
TERMINAL = "kitty";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
{pkgs, ...}: {
|
|
||||||
imports = [./wallpaper];
|
|
||||||
home.packages = [pkgs.xmonadctl];
|
|
||||||
xsession.windowManager.xmonad = {
|
|
||||||
enable = true;
|
|
||||||
enableContribAndExtras = true;
|
|
||||||
config = ./xmonad.hs;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
{...}: {
|
|
||||||
home.file.wallpaper = {
|
|
||||||
target = "Pictures/wallpaper.jpg";
|
|
||||||
source = ./wallpaper.jpg;
|
|
||||||
onChange = ''
|
|
||||||
feh --bg-fill ~/Pictures/wallpaper.jpg;
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
}
|
|
||||||
150
modules/desktop-environment/panels/polybar.nix
Normal file
150
modules/desktop-environment/panels/polybar.nix
Normal file
|
|
@ -0,0 +1,150 @@
|
||||||
|
{
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
config = {
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
services.polybar = {
|
||||||
|
enable = true;
|
||||||
|
package = pkgs.polybarFull;
|
||||||
|
|
||||||
|
script = "";
|
||||||
|
settings = {
|
||||||
|
colors = {
|
||||||
|
background = "#282828";
|
||||||
|
background-alt = "#3c3836";
|
||||||
|
foreground = "#ebdbb2";
|
||||||
|
primary = "#d65d0e";
|
||||||
|
secondary = "#fe8019";
|
||||||
|
alert = "#cc241d";
|
||||||
|
disabled = "#504945";
|
||||||
|
};
|
||||||
|
"bar/status" = {
|
||||||
|
# Style
|
||||||
|
bottom = true;
|
||||||
|
width = "100%";
|
||||||
|
height = "24px";
|
||||||
|
radius = 0;
|
||||||
|
tray-position = "center";
|
||||||
|
background = "\${colors.background}";
|
||||||
|
foreground = "\${colors.foreground}";
|
||||||
|
line-size = "4px";
|
||||||
|
border-color = "#00000000";
|
||||||
|
padding-left = 0;
|
||||||
|
padding-right = 1;
|
||||||
|
module-margin = 1;
|
||||||
|
separator = "|";
|
||||||
|
separator-foreground = "\${colors.disabled}";
|
||||||
|
font-0 = "FiraCode Nerd Font";
|
||||||
|
modules-left = "xworkspaces xwindow";
|
||||||
|
modules-right = "memory cpu wlan bat0 bat1";
|
||||||
|
cursor-click = "pointer";
|
||||||
|
cursor-scroll = "ns-resize";
|
||||||
|
enable-ipc = true;
|
||||||
|
wm-restack = "generic";
|
||||||
|
override-redirect = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
"module/xworkspaces" = {
|
||||||
|
type = "internal/xworkspaces";
|
||||||
|
label-active = "";
|
||||||
|
label-active-padding = 1;
|
||||||
|
label-occupied = "";
|
||||||
|
label-occupied-padding = 1;
|
||||||
|
label-urgent = "";
|
||||||
|
label-urgent-foreground = "\${colors.alert}";
|
||||||
|
label-urgent-padding = 1;
|
||||||
|
label-empty = "";
|
||||||
|
label-empty-foreground = "\${colors.disabled}";
|
||||||
|
label-empty-padding = 1;
|
||||||
|
};
|
||||||
|
|
||||||
|
"module/xwindow" = {
|
||||||
|
type = "internal/xwindow";
|
||||||
|
label = "%title:0:60:...%";
|
||||||
|
};
|
||||||
|
|
||||||
|
"module/memory" = {
|
||||||
|
type = "internal/memory";
|
||||||
|
interval = 2;
|
||||||
|
format-prefix = " ";
|
||||||
|
format-prefix-foreground = "\${colors.primary}";
|
||||||
|
label = "%percentage_used:2%%";
|
||||||
|
};
|
||||||
|
|
||||||
|
"module/cpu" = {
|
||||||
|
type = "internal/cpu";
|
||||||
|
interval = "2";
|
||||||
|
format-prefix = " ";
|
||||||
|
format-prefix-foreground = "\${colors.primary}";
|
||||||
|
label = "%percentage:2%%";
|
||||||
|
};
|
||||||
|
|
||||||
|
"network-base" = {
|
||||||
|
type = "internal/network";
|
||||||
|
interval = 5;
|
||||||
|
format-connected = "<ramp-signal> <label-connected>";
|
||||||
|
format-disconnected = "<label-disconnected>";
|
||||||
|
label-disconnected = "";
|
||||||
|
label-disconnected-foreground = "#d65d0e";
|
||||||
|
ramp.signal = [
|
||||||
|
"%{F#cc241d}"
|
||||||
|
"%{F#d79921}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
"module/wlan" = {
|
||||||
|
"inherit" = "network-base";
|
||||||
|
interface-type = "wireless";
|
||||||
|
label-connected = "%{F#F0C674}%{F-} %local_ip%";
|
||||||
|
};
|
||||||
|
"battery-base" = {
|
||||||
|
type = "internal/battery";
|
||||||
|
poll-interval = 1;
|
||||||
|
time-format = "%H%{F#7c6f64}:%{F#d5c4a1}%M";
|
||||||
|
label-charging = "%{F#98971a} %{F#ebdbb2}%percentage%%%{F#d5c4a1} %time%";
|
||||||
|
format-charging = "<ramp-capacity> <label-charging>";
|
||||||
|
label-discharging = "%{F#ebdbb2}%percentage%%%{F#bdae93} %time%";
|
||||||
|
format-discharging = "<ramp-capacity> <label-discharging>";
|
||||||
|
label-full = "%{F#98971a}%{F#ebdbb2} %percentage%%";
|
||||||
|
format-full = "<label-full>";
|
||||||
|
label-low = "%{F#cc241d}%{F#ebdbb2} %percentage%%";
|
||||||
|
format-low = "<label-low>";
|
||||||
|
ramp.capacity = [
|
||||||
|
"%{F#cc241d}"
|
||||||
|
"%{F#d79921}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
"%{F#98971a}"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
"module/bat0" = {
|
||||||
|
"inherit" = "battery-base";
|
||||||
|
battery = "BAT0";
|
||||||
|
adapter = "ADP1";
|
||||||
|
};
|
||||||
|
"module/bat1" = {
|
||||||
|
"inherit" = "battery-base";
|
||||||
|
battery = "BAT1";
|
||||||
|
adapter = "ADP1";
|
||||||
|
};
|
||||||
|
|
||||||
|
"settings" = {
|
||||||
|
screenchange-reload = true;
|
||||||
|
pseudo-transparency = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
33
modules/desktop-environment/panels/xmobar/default.nix
Normal file
33
modules/desktop-environment/panels/xmobar/default.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home-manager.users.jade = {
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
xmobarGhc = pkgs.haskellPackages.ghcWithPackages (pkgs:
|
||||||
|
with pkgs; [
|
||||||
|
xmobar
|
||||||
|
statgrab
|
||||||
|
]);
|
||||||
|
in {
|
||||||
|
home = {
|
||||||
|
packages = [xmobarGhc];
|
||||||
|
file."xmobar.hs" = rec {
|
||||||
|
source = ./xmobar.hs;
|
||||||
|
target = ".config/xmobar/xmobar.hs";
|
||||||
|
onChange = ''
|
||||||
|
${xmobarGhc}/bin/ghc -threaded ${target}
|
||||||
|
${pkgs.busybox}/bin/pkill xmobar
|
||||||
|
${pkgs.haskellPackages.xmonad}/bin/xmonad --restart
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
programs.xmobar = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
36
modules/desktop-environment/terminal.nix
Normal file
36
modules/desktop-environment/terminal.nix
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{...}: {
|
||||||
|
environment.sessionVariables = {
|
||||||
|
TERMINAL = "kitty";
|
||||||
|
};
|
||||||
|
home-manager.users.jade = {pkgs, ...}: {
|
||||||
|
programs.kitty = {
|
||||||
|
enable = true;
|
||||||
|
font = {
|
||||||
|
name = "FiraCode Nerd Font";
|
||||||
|
size = 11;
|
||||||
|
};
|
||||||
|
settings = {
|
||||||
|
#adjust_column_width = "70%";
|
||||||
|
color0 = "#282828";
|
||||||
|
color8 = "#928374";
|
||||||
|
color1 = "#cc241d";
|
||||||
|
color9 = "#fb4934";
|
||||||
|
color2 = "#98971a";
|
||||||
|
color10 = "#b8bb26";
|
||||||
|
color3 = "#d79921";
|
||||||
|
color11 = "#fabd2f";
|
||||||
|
color4 = "#458588";
|
||||||
|
color12 = "#83a598";
|
||||||
|
color5 = "#b16286";
|
||||||
|
color13 = "#d3869b";
|
||||||
|
color6 = "#689d6a";
|
||||||
|
color14 = "#8ec07c";
|
||||||
|
color7 = "#a89984";
|
||||||
|
color15 = "#ebdbb2";
|
||||||
|
foreground = "#ebdbb2";
|
||||||
|
background = "#282828";
|
||||||
|
confirm_os_window_close = 0;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
25
modules/desktop-environment/xmonad/default.nix
Normal file
25
modules/desktop-environment/xmonad/default.nix
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home-manager.users.jade = {
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = [pkgs.xmonadctl];
|
||||||
|
xsession.windowManager.xmonad = {
|
||||||
|
enable = true;
|
||||||
|
enableContribAndExtras = true;
|
||||||
|
config = ./xmonad.hs;
|
||||||
|
};
|
||||||
|
home.file.wallpaper = {
|
||||||
|
target = "Pictures/wallpaper.jpg";
|
||||||
|
source = ../../../other/wallpaper.jpg;
|
||||||
|
onChange = ''
|
||||||
|
feh --bg-fill ~/Pictures/wallpaper.jpg;
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -68,10 +68,7 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) =
|
||||||
-- TODO: other media keys
|
-- TODO: other media keys
|
||||||
((0, xF86XK_AudioRaiseVolume), spawn "amixer -D pulse sset Master 10%+"),
|
((0, xF86XK_AudioRaiseVolume), spawn "amixer -D pulse sset Master 10%+"),
|
||||||
((0, xF86XK_AudioLowerVolume), spawn "amixer -D pulse sset Master 10%-"),
|
((0, xF86XK_AudioLowerVolume), spawn "amixer -D pulse sset Master 10%-"),
|
||||||
((0, xF86XK_AudioMute), spawn "amixer -D pulse sset Master toggle"),
|
((0, xF86XK_AudioMute), spawn "amixer -D pulse sset Master toggle")
|
||||||
((0, xF86XK_AudioNext), spawn "playerctl next"),
|
|
||||||
((0, xF86XK_AudioPrev), spawn "playerctl previous"),
|
|
||||||
((0, xF86XK_AudioPause), spawn "playerctl play-pause")
|
|
||||||
]
|
]
|
||||||
++ [ ((m .|. modm, k), windows $ f i)
|
++ [ ((m .|. modm, k), windows $ f i)
|
||||||
| (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9],
|
| (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9],
|
||||||
|
Before Width: | Height: | Size: 8.4 MiB After Width: | Height: | Size: 8.4 MiB |
Loading…
Add table
Add a link
Reference in a new issue