format all code with alejandra
This commit is contained in:
parent
fa0cda2673
commit
4f0d45e4d5
89 changed files with 1605 additions and 1298 deletions
|
|
@ -1,14 +1,18 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
inherit (lib)
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(lib)
|
||||
mkEnableOption
|
||||
mkIf
|
||||
;
|
||||
;
|
||||
|
||||
cfg = config.my.home.x.cursor;
|
||||
in
|
||||
{
|
||||
options.my.home.x.cursor.enable = (mkEnableOption "X cursor") // { default = config.my.home.x.enable; };
|
||||
in {
|
||||
options.my.home.x.cursor.enable = (mkEnableOption "X cursor") // {default = config.my.home.x.enable;};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
xsession.pointerCursor = {
|
||||
|
|
|
|||
|
|
@ -1,10 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
inherit (lib)
|
||||
mkEnableOption
|
||||
;
|
||||
in
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(lib)
|
||||
mkEnableOption
|
||||
;
|
||||
in {
|
||||
imports = [
|
||||
./cursor.nix
|
||||
./i3.nix
|
||||
|
|
|
|||
101
home/x/i3.nix
101
home/x/i3.nix
|
|
@ -1,9 +1,14 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
inherit (lib)
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(lib)
|
||||
mkIf
|
||||
mkOptionDefault
|
||||
;
|
||||
;
|
||||
|
||||
isEnabled = config.my.home.x.enable;
|
||||
|
||||
|
|
@ -20,14 +25,13 @@ let
|
|||
logoutMode = "[L]ogout, [S]uspend, [P]oweroff, [R]eboot";
|
||||
|
||||
i3Theme = config.my.theme.i3Theme;
|
||||
in
|
||||
{
|
||||
in {
|
||||
config = mkIf isEnabled {
|
||||
my.home = {
|
||||
flameshot.enable = true;
|
||||
};
|
||||
|
||||
home.packages = [ pkgs.betterlockscreen ];
|
||||
home.packages = [pkgs.betterlockscreen];
|
||||
|
||||
xsession.windowManager.i3 = {
|
||||
enable = true;
|
||||
|
|
@ -35,39 +39,38 @@ in
|
|||
config = {
|
||||
inherit modifier;
|
||||
|
||||
bars =
|
||||
let
|
||||
barConfigPath =
|
||||
config.xdg.configFile."i3status-rust/config-top.toml".target;
|
||||
in
|
||||
[
|
||||
{
|
||||
statusCommand = "i3status-rs ${barConfigPath}";
|
||||
position = "top";
|
||||
fonts = {
|
||||
names = [ "DejaVuSansMono" "FontAwesome5Free" ];
|
||||
size = 9.0;
|
||||
};
|
||||
bars = let
|
||||
barConfigPath =
|
||||
config.xdg.configFile."i3status-rust/config-top.toml".target;
|
||||
in [
|
||||
{
|
||||
statusCommand = "i3status-rs ${barConfigPath}";
|
||||
position = "top";
|
||||
fonts = {
|
||||
names = ["DejaVuSansMono" "FontAwesome5Free"];
|
||||
size = 9.0;
|
||||
};
|
||||
|
||||
colors = i3Theme.bar;
|
||||
colors = i3Theme.bar;
|
||||
|
||||
trayOutput = "primary";
|
||||
trayOutput = "primary";
|
||||
|
||||
# disable mouse scroll wheel in bar
|
||||
extraConfig = ''
|
||||
bindsym button4 nop
|
||||
bindsym button5 nop
|
||||
'';
|
||||
}
|
||||
];
|
||||
# disable mouse scroll wheel in bar
|
||||
extraConfig = ''
|
||||
bindsym button4 nop
|
||||
bindsym button5 nop
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
colors = {
|
||||
inherit (i3Theme)
|
||||
inherit
|
||||
(i3Theme)
|
||||
focused
|
||||
focusedInactive
|
||||
unfocused
|
||||
urgent
|
||||
;
|
||||
;
|
||||
};
|
||||
|
||||
focus = {
|
||||
|
|
@ -78,7 +81,7 @@ in
|
|||
workspaceAutoBackAndForth = true;
|
||||
|
||||
fonts = {
|
||||
names = [ "DejaVu Sans Mono" ];
|
||||
names = ["DejaVu Sans Mono"];
|
||||
size = 8.0;
|
||||
};
|
||||
|
||||
|
|
@ -104,40 +107,44 @@ in
|
|||
"${modifier}+d" = "exec ${pkgs.rofi}/bin/rofi -show run";
|
||||
};
|
||||
|
||||
modes =
|
||||
let
|
||||
makeModeBindings = attrs: attrs // {
|
||||
modes = let
|
||||
makeModeBindings = attrs:
|
||||
attrs
|
||||
// {
|
||||
"Escape" = "mode default";
|
||||
"Return" = "mode default";
|
||||
};
|
||||
in
|
||||
mkOptionDefault {
|
||||
"${logoutMode}" = makeModeBindings {
|
||||
"l" = "exec --no-startup-id i3-msg exit, mode default";
|
||||
"s" = "exec --no-startup-id betterlockscreen --suspend, mode default";
|
||||
"p" = "exec --no-startup-id systemctl poweroff, mode default";
|
||||
"r" = "exec --no-startup-id systemctl reboot, mode default";
|
||||
};
|
||||
in
|
||||
mkOptionDefault {
|
||||
"${logoutMode}" = makeModeBindings {
|
||||
"l" = "exec --no-startup-id i3-msg exit, mode default";
|
||||
"s" = "exec --no-startup-id betterlockscreen --suspend, mode default";
|
||||
"p" = "exec --no-startup-id systemctl poweroff, mode default";
|
||||
"r" = "exec --no-startup-id systemctl reboot, mode default";
|
||||
};
|
||||
};
|
||||
|
||||
terminal = myTerminal;
|
||||
|
||||
assigns = {
|
||||
"10" = [
|
||||
{ class = "Slack"; }
|
||||
{ class = "discord"; }
|
||||
{class = "Slack";}
|
||||
{class = "discord";}
|
||||
];
|
||||
};
|
||||
|
||||
window.commands = [
|
||||
{ command = "border pixel 2"; criteria = { class = "Alacritty"; }; }
|
||||
{
|
||||
command = "border pixel 2";
|
||||
criteria = {class = "Alacritty";};
|
||||
}
|
||||
|
||||
# NOTE: should be done with an assign command, but Spotify doesn't set
|
||||
# its class until after initialization, so has to be done this way.
|
||||
#
|
||||
# See https://i3wm.org/docs/userguide.html#assign_workspace
|
||||
{
|
||||
criteria = { class = "Spotify"; };
|
||||
criteria = {class = "Spotify";};
|
||||
command = "move --no-auto-back-and-forth to workspace 8";
|
||||
}
|
||||
];
|
||||
|
|
|
|||
171
home/x/i3bar.nix
171
home/x/i3bar.nix
|
|
@ -1,18 +1,22 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
let
|
||||
inherit (lib)
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}: let
|
||||
inherit
|
||||
(lib)
|
||||
lists
|
||||
mkIf
|
||||
mkOption
|
||||
optional
|
||||
types
|
||||
;
|
||||
;
|
||||
|
||||
isEnabled = config.my.home.x.enable;
|
||||
i3BarTheme = config.my.theme.i3BarTheme;
|
||||
cfg = config.my.home.x.i3bar;
|
||||
in
|
||||
{
|
||||
in {
|
||||
options.my.home.x.i3bar = {
|
||||
temperature.chip = mkOption {
|
||||
type = types.str;
|
||||
|
|
@ -27,17 +31,19 @@ in
|
|||
|
||||
networking.throughput_interfaces = mkOption {
|
||||
type = types.listOf types.str;
|
||||
example = [ "wlp1s0" ];
|
||||
default = [ ];
|
||||
example = ["wlp1s0"];
|
||||
default = [];
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf isEnabled {
|
||||
home.packages = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
inherit
|
||||
(pkgs)
|
||||
# FIXME: is this useful?
|
||||
|
||||
font-awesome
|
||||
;
|
||||
;
|
||||
};
|
||||
|
||||
programs.i3status-rust = {
|
||||
|
|
@ -49,81 +55,86 @@ in
|
|||
theme = i3BarTheme.theme.name;
|
||||
settings = i3BarTheme;
|
||||
|
||||
blocks = [
|
||||
{
|
||||
block = "pomodoro";
|
||||
length = 60;
|
||||
break_length = 10;
|
||||
notifier = "i3nag";
|
||||
}
|
||||
{
|
||||
block = "disk_space";
|
||||
path = "/";
|
||||
alias = "/";
|
||||
info_type = "available";
|
||||
unit = "GB";
|
||||
interval = 60;
|
||||
warning = 20.0;
|
||||
alert = 10.0;
|
||||
}
|
||||
{
|
||||
block = "memory";
|
||||
display_type = "memory";
|
||||
format_mem = "{mem_used;G}/{mem_total;G}";
|
||||
warning_mem = 70.0;
|
||||
critical_mem = 90.0;
|
||||
# don't show swap
|
||||
clickable = false;
|
||||
}
|
||||
{
|
||||
block = "cpu";
|
||||
interval = 1;
|
||||
format = "{barchart}";
|
||||
}
|
||||
{
|
||||
block = "temperature";
|
||||
collapsed = false;
|
||||
interval = 10;
|
||||
format = "{max}";
|
||||
chip = cfg.temperature.chip;
|
||||
inputs = cfg.temperature.inputs;
|
||||
}
|
||||
] ++ (lists.optionals ((builtins.length cfg.networking.throughput_interfaces) != 0)
|
||||
(map
|
||||
(interface:
|
||||
{
|
||||
blocks =
|
||||
[
|
||||
{
|
||||
block = "pomodoro";
|
||||
length = 60;
|
||||
break_length = 10;
|
||||
notifier = "i3nag";
|
||||
}
|
||||
{
|
||||
block = "disk_space";
|
||||
path = "/";
|
||||
alias = "/";
|
||||
info_type = "available";
|
||||
unit = "GB";
|
||||
interval = 60;
|
||||
warning = 20.0;
|
||||
alert = 10.0;
|
||||
}
|
||||
{
|
||||
block = "memory";
|
||||
display_type = "memory";
|
||||
format_mem = "{mem_used;G}/{mem_total;G}";
|
||||
warning_mem = 70.0;
|
||||
critical_mem = 90.0;
|
||||
# don't show swap
|
||||
clickable = false;
|
||||
}
|
||||
{
|
||||
block = "cpu";
|
||||
interval = 1;
|
||||
format = "{barchart}";
|
||||
}
|
||||
{
|
||||
block = "temperature";
|
||||
collapsed = false;
|
||||
interval = 10;
|
||||
format = "{max}";
|
||||
chip = cfg.temperature.chip;
|
||||
inputs = cfg.temperature.inputs;
|
||||
}
|
||||
]
|
||||
++ (
|
||||
lists.optionals ((builtins.length cfg.networking.throughput_interfaces) != 0)
|
||||
(map
|
||||
(interface: {
|
||||
block = "net";
|
||||
device = interface;
|
||||
interval = 1;
|
||||
hide_inactive = true;
|
||||
})
|
||||
|
||||
cfg.networking.throughput_interfaces)
|
||||
) ++ [
|
||||
{
|
||||
block = "networkmanager";
|
||||
primary_only = true;
|
||||
}
|
||||
{
|
||||
block = "sound";
|
||||
driver = "pulseaudio";
|
||||
}
|
||||
] ++ (optional config.my.home.laptop.enable
|
||||
{
|
||||
block = "battery";
|
||||
}
|
||||
) ++ [
|
||||
# {
|
||||
# block = "notify";
|
||||
# }
|
||||
{
|
||||
block = "time";
|
||||
interval = 5;
|
||||
format = "%a %d/%m %T";
|
||||
locale = "fr_FR";
|
||||
timezone = "Europe/Paris";
|
||||
}
|
||||
];
|
||||
cfg.networking.throughput_interfaces)
|
||||
)
|
||||
++ [
|
||||
{
|
||||
block = "networkmanager";
|
||||
primary_only = true;
|
||||
}
|
||||
{
|
||||
block = "sound";
|
||||
driver = "pulseaudio";
|
||||
}
|
||||
]
|
||||
++ (
|
||||
optional config.my.home.laptop.enable
|
||||
{
|
||||
block = "battery";
|
||||
}
|
||||
)
|
||||
++ [
|
||||
# {
|
||||
# block = "notify";
|
||||
# }
|
||||
{
|
||||
block = "time";
|
||||
interval = 5;
|
||||
format = "%a %d/%m %T";
|
||||
locale = "fr_FR";
|
||||
timezone = "Europe/Paris";
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue