Compare commits
7 commits
56eea3887a
...
186d04dbcf
Author | SHA1 | Date | |
---|---|---|---|
186d04dbcf | |||
5045ba142a | |||
ad9d929e95 | |||
e723c2f526 | |||
3343df51cc | |||
4a2ddb2f65 | |||
2610f38b75 |
7 changed files with 226 additions and 213 deletions
|
@ -55,8 +55,12 @@
|
|||
}
|
||||
)
|
||||
];
|
||||
fructose.modules = [
|
||||
({pkgs, lib, ...}:{
|
||||
fructose.modules = [
|
||||
({
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
nixpkgs.overlays = [
|
||||
(final: prev: {
|
||||
gts = final.callPackage ./gts.nix {};
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
podman = {
|
||||
enable = true;
|
||||
dockerCompat = true;
|
||||
defaultNetwork.settings.dns_enabled = (config.networking.hostName == "glucose"); # TODO: fix this stupid shit ssometime -e
|
||||
defaultNetwork.settings.dns_enabled = config.networking.hostName == "glucose"; # TODO: fix this stupid shit ssometime -e
|
||||
};
|
||||
oci-containers.backend = "podman";
|
||||
};
|
||||
|
|
|
@ -29,12 +29,12 @@
|
|||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
mutableExtensionsDir = false; # turning this one makes it not build.
|
||||
mutableExtensionsDir = false; # turning this one makes it not build.
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
rust-lang.rust-analyzer
|
||||
tuttieee.emacs-mcx
|
||||
tamasfe.even-better-toml
|
||||
# vadimcn.vscode-lldb# currently doesn't work
|
||||
# vadimcn.vscode-lldb# currently doesn't work
|
||||
jnoortheen.nix-ide
|
||||
mkhl.direnv
|
||||
matthewpi.caddyfile-support
|
||||
|
|
|
@ -80,6 +80,7 @@ in
|
|||
boot.kernelModules = [
|
||||
"usbmon"
|
||||
"v4l2loopback"
|
||||
"snd-aloop"
|
||||
];
|
||||
boot.extraModulePackages = [];
|
||||
}
|
||||
|
|
|
@ -7,5 +7,14 @@
|
|||
services.udev.packages = [pkgs.android-udev-rules];
|
||||
}
|
||||
)
|
||||
({
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
programs.droidcam.enable = true;
|
||||
environment.systemPackages = [pkgs.droidcam];
|
||||
})
|
||||
];
|
||||
}
|
||||
|
|
413
sway.mod.nix
413
sway.mod.nix
|
@ -24,217 +24,216 @@
|
|||
pkgs,
|
||||
config,
|
||||
...
|
||||
}:
|
||||
{
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
}: {
|
||||
wayland.windowManager.sway = {
|
||||
enable = true;
|
||||
systemd.enable = true;
|
||||
|
||||
package = pkgs.sway;
|
||||
package = pkgs.sway;
|
||||
|
||||
config = {
|
||||
modifier = "Mod4";
|
||||
fonts = lib.mkDefault {
|
||||
names = ["pango"];
|
||||
style = "monospace";
|
||||
size = 8.0;
|
||||
};
|
||||
terminal = "terminator";
|
||||
|
||||
keybindings = let
|
||||
mod = config.wayland.windowManager.sway.config.modifier;
|
||||
term = config.wayland.windowManager.sway.config.terminal;
|
||||
rofi = "rofi";
|
||||
in {
|
||||
"${mod}+Return" = "exec ${term}"; # opens a terminal window
|
||||
"${mod}+Shift+q" = "kill"; # kills the active window
|
||||
|
||||
"${mod}+s" = ''exec --no-startup-id ${rofi} -run-command "/bin/sh -i -c '{cmd}'" -show combi''; # opens rofi
|
||||
"${mod}+Tab" = "exec --no-startup-id ${rofi} -show window";
|
||||
|
||||
# "${mod}+p" = ''mode "resize"'';
|
||||
"${mod}+o" = "exec swaylock"; # locks the session, requiring password to unlock.
|
||||
|
||||
### move focus
|
||||
"${mod}+Left" = "focus left";
|
||||
"${mod}+Down" = "focus down";
|
||||
"${mod}+Up" = "focus up";
|
||||
"${mod}+Right" = "focus right";
|
||||
|
||||
### move windows
|
||||
"${mod}+Shift+Left" = "move left";
|
||||
"${mod}+Shift+Down" = "move down";
|
||||
"${mod}+Shift+Up" = "move up";
|
||||
"${mod}+Shift+Right" = "move right";
|
||||
|
||||
"${mod}+Shift+m" = "split h"; # Horizontal split
|
||||
"${mod}+Shift+v" = "split v"; # Vertical Split
|
||||
|
||||
"${mod}+t" = "fullscreen toggle"; # fullscreen
|
||||
|
||||
"${mod}+r" = "layout stacking";
|
||||
"${mod}+w" = "layout tabbed";
|
||||
"${mod}+e" = "layout toggle split";
|
||||
|
||||
"${mod}+Shift+Space" = "floating toggle";
|
||||
"${mod}+Space" = "focus mode_toggle"; # change focus between tiling and floating
|
||||
|
||||
"${mod}+a" = "focus parent";
|
||||
"${mod}+Shift+a" = "focus child";
|
||||
|
||||
"${mod}+Shift+d" = "reload";
|
||||
|
||||
### moves user around
|
||||
"${mod}+1" = "workspace number 1";
|
||||
"${mod}+2" = "workspace number 2";
|
||||
"${mod}+3" = "workspace number 3";
|
||||
"${mod}+4" = "workspace number 4";
|
||||
"${mod}+5" = "workspace number 5";
|
||||
"${mod}+6" = "workspace number 6";
|
||||
"${mod}+7" = "workspace number 7";
|
||||
"${mod}+8" = "workspace number 8";
|
||||
"${mod}+9" = "workspace number 9";
|
||||
"${mod}+0" = "workspace number 10";
|
||||
|
||||
### moves containers around
|
||||
"${mod}+Shift+1" = "move container to workspace number 1";
|
||||
"${mod}+Shift+2" = "move container to workspace number 2";
|
||||
"${mod}+Shift+3" = "move container to workspace number 3";
|
||||
"${mod}+Shift+4" = "move container to workspace number 4";
|
||||
"${mod}+Shift+5" = "move container to workspace number 5";
|
||||
"${mod}+Shift+6" = "move container to workspace number 6";
|
||||
"${mod}+Shift+7" = "move container to workspace number 7";
|
||||
"${mod}+Shift+8" = "move container to workspace number 8";
|
||||
"${mod}+Shift+9" = "move container to workspace number 9";
|
||||
"${mod}+Shift+0" = "move container to workspace number 10";
|
||||
};
|
||||
|
||||
### TODO : Resize mode and automatic floating
|
||||
assigns = {
|
||||
"1:说" = [{title = "^Signal$|Discord$|FluffyChat$";}];
|
||||
"2:main" = [{title = "VSCodium$";}];
|
||||
"3:browsing" = [{title = "LibreWolf$";}];
|
||||
"4:misc" = [];
|
||||
"5:5" = [];
|
||||
"6:6" = [];
|
||||
"7:7" = [];
|
||||
"8:8" = [];
|
||||
"9:9" = [];
|
||||
"0:audio" = [{title = "pwvucontrol$|noisetorch$";}];
|
||||
};
|
||||
|
||||
/*
|
||||
# commented out as they're automagically handled by stylix
|
||||
colors = {
|
||||
# should probably use a let ... in ... here
|
||||
background = "#212121";
|
||||
focused = {
|
||||
border = "#2b83a6";
|
||||
background = "#2b83a6";
|
||||
text = "#ffffff";
|
||||
indicator = "#dddddd";
|
||||
childBorder = "#2b83a6";
|
||||
};
|
||||
focusedInactive = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
indicator = "#292d2e";
|
||||
childBorder = "#5a5a5a";
|
||||
};
|
||||
unfocused = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
indicator = "#292d2e";
|
||||
childBorder = "#5a5a5a";
|
||||
};
|
||||
urgent = {
|
||||
border = "#d64e4e";
|
||||
background = "#d64e4e";
|
||||
text = "#ffffff";
|
||||
indicator = "#d64e4e";
|
||||
childBorder = "#d64e4e";
|
||||
};
|
||||
placeholder = {
|
||||
border = "#212121";
|
||||
background = "#0c0c0c";
|
||||
text = "#ffffff";
|
||||
indicator = "#212121";
|
||||
childBorder = "#262626";
|
||||
};
|
||||
};
|
||||
*/
|
||||
|
||||
bars = [
|
||||
{
|
||||
statusCommand = "\${pkgs.swayrbar}/bin/swayrbar";
|
||||
position = "bottom";
|
||||
trayOutput = "primary";
|
||||
# separatorSymbol = "·";
|
||||
workspaceButtons = true;
|
||||
workspaceNumbers = false;
|
||||
|
||||
colors = {
|
||||
# again, should probably use a let ... in ... statement here.
|
||||
background = "#212121";
|
||||
statusline = "#dddddd";
|
||||
separator = "#666666";
|
||||
focusedWorkspace = {
|
||||
border = "#2b83a6";
|
||||
background = "#2b83a6";
|
||||
text = "#ffffff";
|
||||
};
|
||||
activeWorkspace = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#ffffff";
|
||||
};
|
||||
inactiveWorkspace = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
};
|
||||
urgentWorkspace = {
|
||||
border = "#d64e4e";
|
||||
background = "#d64e4e";
|
||||
text = "#ffffff";
|
||||
};
|
||||
bindingMode = {
|
||||
border = "#229c56";
|
||||
background = "#229c56";
|
||||
text = "#ffffff";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
output = {
|
||||
DP-3 = {
|
||||
mode = "3440x1440@144.000Hz";
|
||||
};
|
||||
};
|
||||
|
||||
input = {
|
||||
"10429:2335:UGTABLET_11.6_inch_PenDisplay" = {
|
||||
map_to_output = ''"UGD Artist 12 pro 0x19201012"'';
|
||||
};
|
||||
"type:keyboard" = {
|
||||
xkb_layout = "ro,us(colemak_dh)";
|
||||
xkb_options = "grp:rctrl_toggle";
|
||||
};
|
||||
};
|
||||
|
||||
gaps = {
|
||||
smartGaps = true;
|
||||
inner = 8;
|
||||
outer = 2;
|
||||
};
|
||||
|
||||
workspaceAutoBackAndForth = true;
|
||||
workspaceLayout = "tabbed";
|
||||
config = {
|
||||
modifier = "Mod4";
|
||||
fonts = lib.mkDefault {
|
||||
names = ["pango"];
|
||||
style = "monospace";
|
||||
size = 8.0;
|
||||
};
|
||||
terminal = "terminator";
|
||||
|
||||
keybindings = let
|
||||
mod = config.wayland.windowManager.sway.config.modifier;
|
||||
term = config.wayland.windowManager.sway.config.terminal;
|
||||
rofi = "rofi";
|
||||
in {
|
||||
"${mod}+Return" = "exec ${term}"; # opens a terminal window
|
||||
"${mod}+Shift+q" = "kill"; # kills the active window
|
||||
|
||||
"${mod}+s" = ''exec --no-startup-id ${rofi} -run-command "/bin/sh -i -c '{cmd}'" -show combi''; # opens rofi
|
||||
"${mod}+Tab" = "exec --no-startup-id ${rofi} -show window";
|
||||
|
||||
# "${mod}+p" = ''mode "resize"'';
|
||||
"${mod}+o" = "exec swaylock"; # locks the session, requiring password to unlock.
|
||||
|
||||
### move focus
|
||||
"${mod}+Left" = "focus left";
|
||||
"${mod}+Down" = "focus down";
|
||||
"${mod}+Up" = "focus up";
|
||||
"${mod}+Right" = "focus right";
|
||||
|
||||
### move windows
|
||||
"${mod}+Shift+Left" = "move left";
|
||||
"${mod}+Shift+Down" = "move down";
|
||||
"${mod}+Shift+Up" = "move up";
|
||||
"${mod}+Shift+Right" = "move right";
|
||||
|
||||
"${mod}+Shift+m" = "split h"; # Horizontal split
|
||||
"${mod}+Shift+v" = "split v"; # Vertical Split
|
||||
|
||||
"${mod}+t" = "fullscreen toggle"; # fullscreen
|
||||
|
||||
"${mod}+r" = "layout stacking";
|
||||
"${mod}+w" = "layout tabbed";
|
||||
"${mod}+e" = "layout toggle split";
|
||||
|
||||
"${mod}+Shift+Space" = "floating toggle";
|
||||
"${mod}+Space" = "focus mode_toggle"; # change focus between tiling and floating
|
||||
|
||||
"${mod}+a" = "focus parent";
|
||||
"${mod}+Shift+a" = "focus child";
|
||||
|
||||
"${mod}+Shift+d" = "reload";
|
||||
|
||||
### moves user around
|
||||
"${mod}+1" = "workspace number 1";
|
||||
"${mod}+2" = "workspace number 2";
|
||||
"${mod}+3" = "workspace number 3";
|
||||
"${mod}+4" = "workspace number 4";
|
||||
"${mod}+5" = "workspace number 5";
|
||||
"${mod}+6" = "workspace number 6";
|
||||
"${mod}+7" = "workspace number 7";
|
||||
"${mod}+8" = "workspace number 8";
|
||||
"${mod}+9" = "workspace number 9";
|
||||
"${mod}+0" = "workspace number 10";
|
||||
|
||||
### moves containers around
|
||||
"${mod}+Shift+1" = "move container to workspace number 1";
|
||||
"${mod}+Shift+2" = "move container to workspace number 2";
|
||||
"${mod}+Shift+3" = "move container to workspace number 3";
|
||||
"${mod}+Shift+4" = "move container to workspace number 4";
|
||||
"${mod}+Shift+5" = "move container to workspace number 5";
|
||||
"${mod}+Shift+6" = "move container to workspace number 6";
|
||||
"${mod}+Shift+7" = "move container to workspace number 7";
|
||||
"${mod}+Shift+8" = "move container to workspace number 8";
|
||||
"${mod}+Shift+9" = "move container to workspace number 9";
|
||||
"${mod}+Shift+0" = "move container to workspace number 10";
|
||||
};
|
||||
|
||||
### TODO : Resize mode and automatic floating
|
||||
assigns = {
|
||||
"1:说" = [{title = "^Signal$|Discord$|FluffyChat$";}];
|
||||
"2:main" = [{title = "VSCodium$";}];
|
||||
"3:browsing" = [{title = "LibreWolf$";}];
|
||||
"4:misc" = [];
|
||||
"5:5" = [];
|
||||
"6:6" = [];
|
||||
"7:7" = [];
|
||||
"8:8" = [];
|
||||
"9:9" = [];
|
||||
"0:audio" = [{title = "pwvucontrol$|noisetorch$";}];
|
||||
};
|
||||
|
||||
/*
|
||||
# commented out as they're automagically handled by stylix
|
||||
colors = {
|
||||
# should probably use a let ... in ... here
|
||||
background = "#212121";
|
||||
focused = {
|
||||
border = "#2b83a6";
|
||||
background = "#2b83a6";
|
||||
text = "#ffffff";
|
||||
indicator = "#dddddd";
|
||||
childBorder = "#2b83a6";
|
||||
};
|
||||
focusedInactive = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
indicator = "#292d2e";
|
||||
childBorder = "#5a5a5a";
|
||||
};
|
||||
unfocused = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
indicator = "#292d2e";
|
||||
childBorder = "#5a5a5a";
|
||||
};
|
||||
urgent = {
|
||||
border = "#d64e4e";
|
||||
background = "#d64e4e";
|
||||
text = "#ffffff";
|
||||
indicator = "#d64e4e";
|
||||
childBorder = "#d64e4e";
|
||||
};
|
||||
placeholder = {
|
||||
border = "#212121";
|
||||
background = "#0c0c0c";
|
||||
text = "#ffffff";
|
||||
indicator = "#212121";
|
||||
childBorder = "#262626";
|
||||
};
|
||||
};
|
||||
*/
|
||||
|
||||
bars = [
|
||||
{
|
||||
statusCommand = "\${pkgs.swayrbar}/bin/swayrbar";
|
||||
position = "bottom";
|
||||
trayOutput = "primary";
|
||||
# separatorSymbol = "·";
|
||||
workspaceButtons = true;
|
||||
workspaceNumbers = false;
|
||||
|
||||
colors = {
|
||||
# again, should probably use a let ... in ... statement here.
|
||||
background = "#212121";
|
||||
statusline = "#dddddd";
|
||||
separator = "#666666";
|
||||
focusedWorkspace = {
|
||||
border = "#2b83a6";
|
||||
background = "#2b83a6";
|
||||
text = "#ffffff";
|
||||
};
|
||||
activeWorkspace = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#ffffff";
|
||||
};
|
||||
inactiveWorkspace = {
|
||||
border = "#212121";
|
||||
background = "#212121";
|
||||
text = "#86888c";
|
||||
};
|
||||
urgentWorkspace = {
|
||||
border = "#d64e4e";
|
||||
background = "#d64e4e";
|
||||
text = "#ffffff";
|
||||
};
|
||||
bindingMode = {
|
||||
border = "#229c56";
|
||||
background = "#229c56";
|
||||
text = "#ffffff";
|
||||
};
|
||||
};
|
||||
}
|
||||
];
|
||||
output = {
|
||||
DP-3 = {
|
||||
mode = "3440x1440@144.000Hz";
|
||||
};
|
||||
};
|
||||
|
||||
input = {
|
||||
"10429:2335:UGTABLET_11.6_inch_PenDisplay" = {
|
||||
map_to_output = ''"UGD Artist 12 pro 0x19201012"'';
|
||||
};
|
||||
"type:keyboard" = {
|
||||
xkb_layout = "ro,us(colemak_dh)";
|
||||
xkb_options = "grp:rctrl_toggle";
|
||||
};
|
||||
};
|
||||
|
||||
gaps = {
|
||||
smartGaps = true;
|
||||
inner = 8;
|
||||
outer = 2;
|
||||
};
|
||||
|
||||
workspaceAutoBackAndForth = true;
|
||||
workspaceLayout = "tabbed";
|
||||
};
|
||||
}
|
||||
};
|
||||
}
|
||||
)
|
||||
];
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
systeme
|
||||
xstring
|
||||
tikzfill # dependency of tcolorbox
|
||||
pdfcol #
|
||||
pdfcol #
|
||||
pdfcolfoot # dependencies of tcolorbox
|
||||
tcolorbox # fancy color environments !!!
|
||||
;
|
||||
|
|
Loading…
Reference in a new issue