Compare commits

...

6 Commits

Author SHA1 Message Date
Jan-Bulthuis 74ddbc24bb Start work on devshell configuration 2025-02-08 21:52:42 +01:00
Jan-Bulthuis 512c6066fa Added ente auth 2025-02-08 21:52:28 +01:00
Jan-Bulthuis 798d468706 Modified xfce environment 2025-02-08 21:52:04 +01:00
Jan-Bulthuis dec735c9d6 Added unfree retroarch emulators 2025-02-08 21:51:46 +01:00
Jan-Bulthuis 7776f845cc Added i3 systemwide config 2025-02-02 14:23:37 +01:00
Jan-Bulthuis 6072b9fdd2 Added i3 2025-02-02 14:09:09 +01:00
10 changed files with 168 additions and 7 deletions

View File

@ -67,5 +67,6 @@
}; };
}; };
}; };
devenv = ./shell-modules/default.nix;
}; };
} }

View File

@ -60,7 +60,7 @@ in
fontconfig.enable = true; fontconfig.enable = true;
neovim.enable = true; neovim.enable = true;
systemd-boot.enable = true; systemd-boot.enable = true;
tuigreet.enable = true; tuigreet.enable = true; # TODO: Re-enable
}; };
# TODO: Remove everything below, it is here out of convenience and should be elsewhere # TODO: Remove everything below, it is here out of convenience and should be elsewhere
@ -99,5 +99,39 @@ in
# TODO: Move to USB module # TODO: Move to USB module
# services.gvfs.enable = true; # services.gvfs.enable = true;
services.udisks2.enable = true; services.udisks2.enable = true;
# TODO: Remove?
# Temporarily disable nvidia dgpu
# boot.extraModprobeConfig = ''
# blacklist nouveau
# options nouveau modeset=0
# '';
# services.udev.extraRules = ''
# # Remove NVIDIA USB xHCI Host Controller devices, if present
# ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c0330", ATTR{power/control}="auto", ATTR{remove}="1"
# # Remove NVIDIA USB Type-C UCSI devices, if present
# ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x0c8000", ATTR{power/control}="auto", ATTR{remove}="1"
# # Remove NVIDIA Audio devices, if present
# ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x040300", ATTR{power/control}="auto", ATTR{remove}="1"
# # Remove NVIDIA VGA/3D controller devices
# ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de", ATTR{class}=="0x03[0-9]*", ATTR{power/control}="auto", ATTR{remove}="1"
# '';
# boot.blacklistedKernelModules = [
# "nouveau"
# "nvidia"
# ];
# TODO: Move to module
# Adds gnome as DE
# modules.greetd.enable = lib.mkForce false;
# modules.tuigreet.enable = lib.mkForce false;
# services.xserver = {
# enable = true;
# displayManager.gdm.enable = true;
# desktopManager.gnome.enable = true;
# };
}; };
} }

35
shell-modules/default.nix Normal file
View File

@ -0,0 +1,35 @@
{ pkgs, ... }:
pkgs.mkShell {
packages = with pkgs; [
(python312.withPackages (p: [
p.numpy
p.scikit-learn
p.scipy
p.pandas
p.matplotlib
p.torch-bin
# p.torchvision
]))
libffi
openssl
stdenv.cc.cc
linuxPackages.nvidia_x11
binutils
cudatoolkit
libGLU
libGL
];
LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath (
with pkgs;
[
stdenv.cc.cc
linuxPackages.nvidia_x11
binutils
cudatoolkit
libGLU
libGL
]
);
CUDA_PATH = pkgs.cudatoolkit;
}

View File

@ -15,6 +15,7 @@ in
./background/glpaper/default.nix ./background/glpaper/default.nix
./bar/waybar.nix ./bar/waybar.nix
./lock-screen/waylock.nix ./lock-screen/waylock.nix
./window-manager/i3.nix
./window-manager/river.nix ./window-manager/river.nix
]; ];

View File

@ -0,0 +1,27 @@
{
config,
lib,
pkgs,
...
}:
let
cfg = config.modules.i3;
in
{
options.modules.i3.enable = lib.mkEnableOption "i3";
config = lib.mkIf cfg.enable {
# Set desktop type to x11
# modules.desktop.x11 = true;
modules.rofi.enable = true;
modules.desktop.initScript = ''
i3
'';
xsession.windowManager.i3 = {
enable = true;
};
};
}

View File

@ -36,9 +36,10 @@ in
river river
''; '';
modules.desktop.reloadScript = '' # TODO: Fix this
${pkgs.river}/bin/riverctl background-color 0x${config.theming.colors.bg} # modules.desktop.reloadScript = ''
''; # ${pkgs.river}/bin/riverctl background-color 0x${config.theming.colors.bg}
# '';
# Update background after rebuild # Update background after rebuild
# home.activation = { # home.activation = {
@ -60,7 +61,7 @@ in
# River setup # River setup
wayland.windowManager.river = { wayland.windowManager.river = {
enable = true; enable = true;
xwayland.enable = true; xwayland.enable = false;
settings = settings =
let let
layout = "filtile"; layout = "filtile";

View File

@ -15,8 +15,27 @@ in
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
modules.unfree.allowedPackages = [
"libretro-fbalpha2012"
"libretro-fbneo"
"libretro-fmsx"
"libretro-genesis-plus-gx"
"libretro-mame2000"
"libretro-mame2003"
"libretro-mame2003-plus"
"libretro-mame2010"
"libretro-mame2015"
"libretro-opera"
"libretro-picodrive"
"libretro-snes9x"
"libretro-snes9x2002"
"libretro-snes9x2005"
"libretro-snes9x2005-plus"
"libretro-snes9x2010"
];
home.packages = with pkgs; [ home.packages = with pkgs; [
retroarch-free retroarch-full
]; ];
}; };
} }

View File

@ -4,6 +4,7 @@
imports = [ imports = [
# Import systemwide configuration files. # Import systemwide configuration files.
./docker.nix ./docker.nix
./i3.nix
./keyring.nix ./keyring.nix
./river.nix ./river.nix
./steam.nix ./steam.nix

View File

@ -0,0 +1,30 @@
{
lib,
config,
pkgs,
...
}:
with lib;
let
enabled = any (user: user.modules.i3.enable) (attrValues config.home-manager.users);
in
{
config = mkIf enabled {
modules.tuigreet.enable = mkForce false;
services.xserver = {
layout = "us";
xkbVariant = "";
enable = true;
windowManager.i3.enable = true;
desktopManager = {
xterm.enable = true;
xfce = {
enable = true;
# noDesktop = false;
# enableXfwm = false;
};
};
};
};
}

View File

@ -19,7 +19,9 @@
signal-desktop signal-desktop
prusa-slicer prusa-slicer
freecad-wayland freecad-wayland
inkscape
# appflowy # appflowy
ente-auth
]; ];
# TODO: Move to gpg module # TODO: Move to gpg module
@ -39,6 +41,7 @@
theming.enable = true; theming.enable = true;
# Window manager # Window manager
i3.enable = true;
river.enable = true; river.enable = true;
waylock.enable = true; waylock.enable = true;
waybar.enable = true; waybar.enable = true;
@ -66,7 +69,6 @@
steam.enable = true; steam.enable = true;
modrinth.enable = true; modrinth.enable = true;
es-de.enable = true; es-de.enable = true;
pcsx2.enable = true;
retroarch.enable = true; retroarch.enable = true;
ryujinx.enable = true; ryujinx.enable = true;
@ -107,6 +109,16 @@
tex.enable = true; tex.enable = true;
jupyter.enable = true; jupyter.enable = true;
# python.extraPythonPackages = p: [
# p.numpy
# p.scikit-learn
# p.scipy
# p.pandas
# p.matplotlib
# p.torch
# p.torchvision
# ];
# Enable unfree # Enable unfree
unfree.enable = true; unfree.enable = true;
}; };