Define imv keys, switch to btop, put stateful data in per-system config
This commit is contained in:
parent
0d212ce643
commit
a589e07a6c
|
@ -6,6 +6,7 @@
|
|||
./filesystems
|
||||
./firewall
|
||||
./hardware
|
||||
./users
|
||||
../../modules/system
|
||||
];
|
||||
|
||||
|
@ -17,4 +18,5 @@
|
|||
environment.sessionVariables.NIXOS_OZONE_WL = "1";
|
||||
|
||||
networking.hostName = "tower";
|
||||
system.stateVersion = "24.05";
|
||||
}
|
||||
|
|
4
hosts/tower/users/default.nix
Normal file
4
hosts/tower/users/default.nix
Normal file
|
@ -0,0 +1,4 @@
|
|||
{ ... }:
|
||||
{
|
||||
imports = [ ./jimbo ];
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
{ ... }:
|
||||
{
|
||||
home-manager.users.jimbo = {
|
||||
home.stateVersion = "24.05";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -13,4 +13,6 @@
|
|||
# Imports
|
||||
nur.nixosModules.nur
|
||||
];
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
}
|
||||
|
|
|
@ -9,9 +9,6 @@
|
|||
".assets/lockscreen" = {
|
||||
source = ./assets/lockscreen;
|
||||
};
|
||||
".icons/default" = {
|
||||
source = "${pkgs.simp1e-cursors}/share/icons/Simp1e-Dark";
|
||||
};
|
||||
".alsoftrc" = {
|
||||
text = ''drivers=pulse'';
|
||||
};
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
imports = [
|
||||
./easyeffects
|
||||
./foot
|
||||
./imv
|
||||
./librewolf
|
||||
./mangohud
|
||||
./mpv
|
||||
|
|
12
modules/home/programs/gui/imv/default.nix
Normal file
12
modules/home/programs/gui/imv/default.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.imv = {
|
||||
enable = true;
|
||||
settings.binds = {
|
||||
h = "prev";
|
||||
j = "zoom -5";
|
||||
k = "zoom 5";
|
||||
l = "next";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -7,6 +7,7 @@
|
|||
|
||||
home.packages = with pkgs; [
|
||||
ffmpeg
|
||||
ffmpegthumbnailer
|
||||
puddletag
|
||||
pulsemixer
|
||||
];
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
dolphin-emu
|
||||
cemu
|
||||
ryujinx
|
||||
lime3ds
|
||||
duckstation
|
||||
pcsx2
|
||||
lime3ds
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,7 +1,4 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
openarena
|
||||
xash3d
|
||||
];
|
||||
home.packages = with pkgs; [ xash3d ];
|
||||
}
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
{
|
||||
home.packages = with pkgs; [
|
||||
libreoffice
|
||||
ffmpegthumbnailer
|
||||
imv
|
||||
bc
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
gotop
|
||||
p7zip
|
||||
vimv
|
||||
dua
|
||||
|
|
11
modules/home/programs/terminal/btop/default.nix
Normal file
11
modules/home/programs/terminal/btop/default.nix
Normal file
|
@ -0,0 +1,11 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.btop = {
|
||||
enable = true;
|
||||
settings = {
|
||||
vim_keys = true;
|
||||
rounded_corners = false;
|
||||
theme_background = false;
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,6 +1,7 @@
|
|||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./btop
|
||||
./fastfetch
|
||||
./git
|
||||
./ncmpcpp
|
||||
|
|
9
modules/home/settings/cursor/default.nix
Normal file
9
modules/home/settings/cursor/default.nix
Normal file
|
@ -0,0 +1,9 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
home.pointerCursor = {
|
||||
gtk.enable = true;
|
||||
name = "Simp1e-Dark";
|
||||
package = pkgs.simp1e-cursors;
|
||||
size = 24;
|
||||
};
|
||||
}
|
|
@ -1,10 +1,10 @@
|
|||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./cursor
|
||||
./dconf
|
||||
./fonts
|
||||
./gtk
|
||||
./nix
|
||||
./xdg
|
||||
];
|
||||
}
|
||||
|
|
11
modules/home/settings/gtk/bookmarks/default.nix
Normal file
11
modules/home/settings/gtk/bookmarks/default.nix
Normal file
|
@ -0,0 +1,11 @@
|
|||
{ pkgs, config, ... }:
|
||||
{
|
||||
gtk.gtk3.bookmarks = [
|
||||
"file:///home/${config.home.username}/Keepers"
|
||||
"file:///home/${config.home.username}/Downloads"
|
||||
"file:///home/${config.home.username}/Documents"
|
||||
"file:///home/${config.home.username}/Videos"
|
||||
"file:///home/${config.home.username}/Pictures/Screenshots"
|
||||
"file:///etc/nixos"
|
||||
];
|
||||
}
|
20
modules/home/settings/gtk/css/default.nix
Normal file
20
modules/home/settings/gtk/css/default.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ ... }:
|
||||
{
|
||||
gtk = {
|
||||
# Disable shadows
|
||||
gtk3.extraCss = ''
|
||||
* { outline-width: 0px; }
|
||||
decoration { box-shadow: none; }
|
||||
'';
|
||||
|
||||
# Prevent GTK4 rounding
|
||||
gtk4.extraCss = ''
|
||||
window {
|
||||
border-top-left-radius:0;
|
||||
border-top-right-radius:0;
|
||||
border-bottom-left-radius:0;
|
||||
border-bottom-right-radius:0;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,5 +1,10 @@
|
|||
{ pkgs, config, ... }:
|
||||
{
|
||||
imports = [
|
||||
./bookmarks
|
||||
./css
|
||||
];
|
||||
|
||||
gtk = {
|
||||
enable = true;
|
||||
font = {
|
||||
|
@ -25,36 +30,5 @@
|
|||
color = "${config.look.colors.folder}";
|
||||
};
|
||||
};
|
||||
cursorTheme = {
|
||||
package = pkgs.simp1e-cursors;
|
||||
name = "Simp1e-Dark";
|
||||
};
|
||||
|
||||
gtk3 = {
|
||||
bookmarks = [
|
||||
"file:///home/jimbo/Keepers"
|
||||
"file:///home/jimbo/Downloads"
|
||||
"file:///home/jimbo/Documents"
|
||||
"file:///home/jimbo/Videos"
|
||||
"file:///home/jimbo/Pictures/Screenshots"
|
||||
"file:///etc/nixos"
|
||||
];
|
||||
|
||||
# Disable shadows
|
||||
extraCss = ''
|
||||
* { outline-width: 0px; }
|
||||
decoration { box-shadow: none; }
|
||||
'';
|
||||
};
|
||||
|
||||
# Stop gtk4 from being rounded
|
||||
gtk4.extraCss = ''
|
||||
window {
|
||||
border-top-left-radius:0;
|
||||
border-top-right-radius:0;
|
||||
border-bottom-left-radius:0;
|
||||
border-bottom-right-radius:0;
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{ ... }:
|
||||
{
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
home.stateVersion = "24.05";
|
||||
}
|
|
@ -143,10 +143,15 @@
|
|||
${primeMod}+f { maximize-column; }
|
||||
${primeMod}+Shift+f { fullscreen-window; }
|
||||
|
||||
// Niri specific
|
||||
// Column functions
|
||||
${primeMod}+r { switch-preset-column-width; }
|
||||
${primeMod}+Shift+r { reset-window-height; }
|
||||
${primeMod}+Shift+c { center-column; }
|
||||
|
||||
// Move these into scratchpads if or when they get supported
|
||||
${primeMod}+Shift+Backslash { spawn "sh" "-c" "foot btop"; }
|
||||
${primeMod}+Shift+m { spawn "sh" "-c" "foot ncmpcpp"; }
|
||||
${primeMod}+Shift+v { spawn "sh" "-c" "foot pulsemixer"; }
|
||||
}
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
startup = [
|
||||
# Scratchpads
|
||||
{ command = "foot -a gotop -T Gotop gotop"; }
|
||||
{ command = "foot -a btop -T Gotop btop"; }
|
||||
{ command = "foot -a music -T Music ncmpcpp"; }
|
||||
{ command = "foot -a sound -T Sound pulsemixer"; }
|
||||
|
||||
|
|
|
@ -160,7 +160,7 @@
|
|||
"${primeMod}+shift+a" = ''focus child'';
|
||||
|
||||
# Scratchpads
|
||||
"Shift+Ctrl+Backslash" = ''[app_id="gotop"] scratchpad show, move position center, resize set 1216 888'';
|
||||
"${primeMod}+Shift+Backslash" = ''[app_id="btop"] scratchpad show, move position center, resize set 1216 888'';
|
||||
"${primeMod}+Shift+m" = ''[app_id="music"] scratchpad show, move position center, resize set 1006 657'';
|
||||
"${primeMod}+Shift+v" = ''[app_id="sound"] scratchpad show, move position center, resize set 1000 800'';
|
||||
};
|
||||
|
|
|
@ -10,10 +10,10 @@
|
|||
# Scratchpads
|
||||
{
|
||||
criteria = { con_mark = "scratchpad"; };
|
||||
command = ''floating enable, sticky enable, move scratchpad, mark borderless'';
|
||||
command = ''floating enable, sticky enable, move scratchpad, mark giveborder'';
|
||||
}
|
||||
{
|
||||
criteria = { app_id = "gotop"; };
|
||||
criteria = { app_id = "btop"; };
|
||||
command = ''mark scratchpad'';
|
||||
}
|
||||
{
|
||||
|
@ -27,35 +27,31 @@
|
|||
|
||||
# Give apps that don't have them borders
|
||||
{
|
||||
criteria = { con_mark = "borderless"; };
|
||||
criteria = { con_mark = "giveborder"; };
|
||||
command = ''border pixel ${config.look.border.string}'';
|
||||
}
|
||||
{
|
||||
criteria = { app_id = "com.github.wwmm.easyeffects"; };
|
||||
command = ''mark borderless'';
|
||||
command = ''mark giveborder'';
|
||||
}
|
||||
{
|
||||
criteria = { class = "steam"; };
|
||||
command = ''mark borderless'';
|
||||
command = ''mark giveborder'';
|
||||
}
|
||||
{
|
||||
criteria = { app_id = "swappy"; };
|
||||
command = ''mark borderless'';
|
||||
command = ''mark giveborder'';
|
||||
}
|
||||
{
|
||||
criteria = { app_id = "virt-manager"; };
|
||||
command = ''mark borderless'';
|
||||
command = ''mark giveborder'';
|
||||
}
|
||||
{
|
||||
criteria = { window_role = "pop-up"; };
|
||||
command = ''mark borderless'';
|
||||
command = ''mark giveborder'';
|
||||
}
|
||||
|
||||
# Floating or fullscreen rules
|
||||
{
|
||||
criteria = { app_id = "float"; };
|
||||
command = ''floating enable'';
|
||||
}
|
||||
# Misc
|
||||
{
|
||||
criteria = { title = "^GlobalShot"; };
|
||||
command = ''floating enable, fullscreen enable global'';
|
||||
|
|
|
@ -9,6 +9,4 @@
|
|||
./settings
|
||||
../extras
|
||||
];
|
||||
|
||||
system.stateVersion = "24.05";
|
||||
}
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
{ ... }:
|
||||
{
|
||||
imports = [
|
||||
./displaymanager
|
||||
./gnome-keyring
|
||||
./greetd
|
||||
./gvfs
|
||||
./keyd
|
||||
./libvirtd
|
||||
|
|
14
modules/system/services/general/displaymanager/default.nix
Normal file
14
modules/system/services/general/displaymanager/default.nix
Normal file
|
@ -0,0 +1,14 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.greetd = {
|
||||
enable = config.system.desktop.enable;
|
||||
restart = true;
|
||||
settings = {
|
||||
terminal = {
|
||||
vt = 2;
|
||||
switch = true;
|
||||
};
|
||||
default_session.command = "${pkgs.greetd.tuigreet}/bin/tuigreet";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.greetd = {
|
||||
enable = config.system.desktop.enable;
|
||||
restart = true;
|
||||
settings = {
|
||||
terminal = {
|
||||
vt = 2;
|
||||
switch = true;
|
||||
};
|
||||
default_session.command = "${pkgs.greetd.tuigreet}/bin/tuigreet";
|
||||
};
|
||||
};
|
||||
|
||||
environment.etc."greetd/environments".text = let
|
||||
initScript = ''
|
||||
if ${pkgs.pciutils}/bin/lspci -k | grep "in use: nvidia" &> /dev/null; then
|
||||
export LIBVA_DRIVER_NAME=nvidia
|
||||
export GBM_BACKEND=nvidia-drm
|
||||
export __GLX_VENDOR_LIBRARY_NAME=nvidia
|
||||
else
|
||||
:
|
||||
fi
|
||||
'';
|
||||
in ''
|
||||
${pkgs.writeScript "startsway" ''
|
||||
${initScript}
|
||||
export QT_QPA_PLATFORM="wayland;xcb"
|
||||
export XDG_CURRENT_DESKTOP=sway
|
||||
sway --unsupported-gpu
|
||||
''}
|
||||
${pkgs.writeScript "startniri" ''
|
||||
${initScript}
|
||||
export QT_QPA_PLATFORM=wayland
|
||||
export XDG_CURRENT_DESKTOP=niri
|
||||
niri-session
|
||||
''}
|
||||
'';
|
||||
}
|
|
@ -4,15 +4,13 @@
|
|||
./autoupgrade
|
||||
];
|
||||
|
||||
nix = {
|
||||
settings = {
|
||||
nix.settings = {
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
auto-optimise-store = true;
|
||||
};
|
||||
};
|
||||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue