I might be getting closer
Some checks failed
/ check (push) Failing after 9s

This commit is contained in:
Daniel Flanagan 2025-02-16 11:17:59 -06:00
parent 0bc0ba43a2
commit a59d571b31
10 changed files with 169 additions and 192 deletions

View file

@ -15,8 +15,6 @@ rec {
"x86_64-linux"
];
forSystems = nixpkgs: nixpkgs.lib.genAttrs systems;
pkgsFor =
nixpkgs: system:
(import nixpkgs { inherit system; }).extend (builtins.trace forSelfOverlay forSelfOverlay);
pkgsFor = nixpkgs: system: (import nixpkgs { inherit system; }).extend forSelfOverlay;
genPkgs = nixpkgs: func: (forSystems nixpkgs (system: func (pkgsFor nixpkgs system)));
}

View file

@ -14,20 +14,19 @@ in
{
imports = with homeManagerModules; [
slippi.homeManagerModules.default
# nix-colors.homeManagerModules.default
# fish
# helix
# git
# jujutsu
# zellij
# htop
# linux
# sshconfig
# senpai
# iex
# helix
# cargo
# desktop
fish
helix
git
jujutsu
zellij
htop
linux
sshconfig
senpai
iex
helix
cargo
desktop
/*
broot
@ -39,7 +38,9 @@ in
options = {
lyte = {
shell = {
enable = lib.mkEnableOption "Enable home-manager shell configuration for the user";
enable =
lib.mkEnableOption builtins.trace "looked at lyte options"
"Enable home-manager shell configuration for the user";
};
desktop = {
enable = lib.mkEnableOption "Enable home-manager desktop configuration for the user";

View file

@ -15,21 +15,20 @@
{
imports = with self.outputs.nixosModules; [
(modulesPath + "/installer/scan/not-detected.nix")
# home-manager.nixosModules.home-manager
home-manager.nixosModules.home-manager
sops-nix.nixosModules.sops
disko.nixosModules.disko
slippi.nixosModules.default
# deno-netlify-ddns-client
# shell-defaults-and-applications
# desktop
# wifi
# printing
# podman
# virtual-machines
# postgres
# gaming
# daniel
deno-netlify-ddns-client
shell-defaults-and-applications
desktop
gnome
wifi
printing
podman
virtual-machines
postgres
gaming
];
config = {
@ -61,27 +60,27 @@
# TODO: for each non-system user on the machine?
# home-manager = {
#
# useGlobalPkgs = lib.mkDefault true;
# backupFileExtension = lib.mkDefault "hm-backup";
# sharedModules = with self.outputs.homeManagerModules; [
# default
# ];
# useGlobalPkgs = lib.mkDefault true;
# backupFileExtension = lib.mkDefault "hm-backup";
# users = {
# root = {
# home.stateVersion = lib.mkDefault config.system.stateVersion;
# # imports = with self.outputs.homeManagerModules; [
# # ];
# sharedModules = with self.outputs.homeManagerModules; [
# default
# ];
# users = {
# root = {
# home.stateVersion = lib.mkDefault config.system.stateVersion;
# # imports = with self.outputs.homeManagerModules; [
# # ];
# };
# daniel = {
# home.stateVersion = lib.mkDefault config.system.stateVersion;
# imports = with self.outputs.homeManagerModules; [
# daniel
# ];
# };
# };
# daniel = {
# home.stateVersion = lib.mkDefault config.system.stateVersion;
# imports = with self.outputs.homeManagerModules; [
# daniel
# ];
# };
# };
# };
systemd.services.nix-daemon.environment.TMPDIR = lib.mkDefault "/var/tmp"; # TODO: why did I do this again?
@ -188,5 +187,11 @@
];
packages = [ ];
};
home-manager.users.daniel = {
home.stateVersion = lib.mkDefault config.system.stateVersion;
imports = with self.outputs.homeManagerModules; [
default
];
};
};
}

View file

@ -11,7 +11,6 @@ inputs: {
gnome = import ./gnome.nix;
laptop = import ./laptop.nix;
plasma6 = import ./plasma.nix;
lutris = import ./lutris.nix;
gaming = import ./gaming.nix;
pipewire = import ./pipewire.nix;
podman = import ./podman.nix;
@ -20,7 +19,6 @@ inputs: {
desktop = import ./desktop.nix;
printing = import ./printing.nix;
wifi = import ./wifi.nix;
steam = import ./steam.nix;
remote-disk-key-entry-on-boot =
{

View file

@ -9,9 +9,6 @@ let
cfg = config.lyte.desktop;
in
{
imports = with nixosModules; [
gnome
];
options = {
lyte = {
desktop = {
@ -20,7 +17,7 @@ in
};
};
config = lib.mkIf cfg.enable {
# services.xserver.desktopManager.gnome.enable = true;
services.xserver.desktopManager.gnome.enable = true;
fonts.packages = [
(

View file

@ -1,15 +1,69 @@
{ self, pkgs, ... }:
{
imports = with self.outputs.nixosModules; [
lutris # TODO: use the flatpak?
steam # TODO: use the flatpak?
];
options,
pkgs,
...
}:
{
programs.gamescope.enable = true;
services.pipewire = {
alsa.support32Bit = true;
};
programs.steam = {
extest.enable = true;
gamescopeSession.enable = true;
extraPackages = with pkgs; [
gamescope
];
extraCompatPackages = with pkgs; [
proton-ge-bin
];
localNetworkGameTransfers.openFirewall = true;
remotePlay.openFirewall = true;
};
hardware =
(
if builtins.hasAttr "graphics" options.hardware then
{
graphics = {
enable = true;
enable32Bit = true;
};
}
else
{
opengl = {
enable = true;
driSupport32Bit = true;
};
}
)
// {
steam-hardware.enable = true;
};
services.udev.packages = with pkgs; [ steam ];
environment = {
systemPackages = with pkgs; [
dualsensectl # for interfacing with dualsense controllers programmatically
wineWowPackages.waylandFull
lutris
winetricks
ludusavi
# ludusavi uses rclone
rclone
];
};
# remote play ports - should be unnecessary due to programs.steam.remotePlay.openFirewall = true;
/*
networking.firewall.allowedUDPPortRanges = [ { from = 27031; to = 27036; } ];
networking.firewall.allowedTCPPortRanges = [ { from = 27036; to = 27037; } ];
*/
}

View file

@ -2,63 +2,50 @@
pkgs,
lib,
config,
options,
...
}:
let
cfg = config.lyte.desktop;
in
{
imports = with nixosModules; [
gnome
];
options = {
lyte = {
desktop = {
enable = lib.mkEnableOption "Enable my default desktop configuration and applications";
};
};
};
config = lib.mkIf cfg.enable {
# services.xserver.desktopManager.gnome.enable = true;
fonts.packages = [
(
# allow nixpkgs 24.11 and unstable to both work
if builtins.hasAttr "nerd-fonts" pkgs then
(pkgs.nerd-fonts.symbols-only)
else
(pkgs.nerdfonts.override { fonts = [ "NerdFontsSymbolsOnly" ]; })
)
pkgs.iosevkaLyteTerm
];
xdg.portal.enable = true;
hardware =
if builtins.hasAttr "graphics" options.hardware then
config = lib.mkIf config.services.postgresql.enable {
# this is really just for development usage
services.postgresql = {
# enable = true;
ensureDatabases = [ "daniel" ];
ensureUsers = [
{
graphics = {
enable = true;
# enable32Bit = true;
/*
driSupport32Bit = true;
driSupport = true;
*/
};
name = "daniel";
ensureDBOwnership = true;
}
else
{
opengl = {
enable = true;
# driSupport32Bit = true;
driSupport = true;
};
};
];
# enableTCPIP = true;
services.flatpak.enable = true;
programs.appimage.binfmt = true;
services.printing.enable = true;
programs.virt-manager.enable = config.virtualisation.libvirtd.enable;
package = pkgs.postgresql_15;
authentication = pkgs.lib.mkOverride 10 ''
#type database DBuser auth-method
local all postgres peer map=superuser_map
local all daniel peer map=superuser_map
local sameuser all peer map=superuser_map
# lan ipv4
host all all 10.0.0.0/24 trust
host all all 127.0.0.1/32 trust
# tailnet ipv4
host all all 100.64.0.0/10 trust
'';
identMap = ''
# ArbitraryMapName systemUser DBUser
superuser_map root postgres
superuser_map postgres postgres
superuser_map daniel postgres
superuser_map /^(.*)$ \1 # Let other names login as themselves
'';
};
environment.systemPackages = with pkgs; [
pgcli
];
};
}

View file

@ -17,12 +17,6 @@ in
};
config = lib.mkIf cfg.enable {
programs.eza = {
enable = true;
};
config.lyte.shell.enable = lib.mkDefault true;
programs.nix-index.enable = true;
programs.command-not-found.enable = false;
users = {

View file

@ -6,60 +6,5 @@
...
}:
{
config = lib.mkIf config.programs.steam.enable {
programs.gamescope.enable = true;
services.pipewire = {
alsa.support32Bit = true;
};
programs.steam = {
extest.enable = true;
gamescopeSession.enable = true;
extraPackages = with pkgs; [
gamescope
];
extraCompatPackages = with pkgs; [
proton-ge-bin
];
localNetworkGameTransfers.openFirewall = true;
remotePlay.openFirewall = true;
};
hardware =
(
if builtins.hasAttr "graphics" options.hardware then
{
graphics = {
enable = true;
enable32Bit = true;
};
}
else
{
opengl = {
enable = true;
driSupport32Bit = true;
};
}
)
// {
steam-hardware.enable = true;
};
services.udev.packages = with pkgs; [ steam ];
environment.systemPackages = with pkgs; [
dualsensectl # for interfacing with dualsense controllers programmatically
];
# remote play ports - should be unnecessary due to programs.steam.remotePlay.openFirewall = true;
/*
networking.firewall.allowedUDPPortRanges = [ { from = 27031; to = 27036; } ];
networking.firewall.allowedTCPPortRanges = [ { from = 27036; to = 27037; } ];
*/
};
config = lib.mkIf config.programs.steam.enable { };
}

View file

@ -3,7 +3,7 @@
config,
hardware,
diskoConfigurations,
homeConfigurations,
# homeConfigurations,
...
}:
{
@ -37,24 +37,22 @@
defaultSopsFile = ../../secrets/dragon/secrets.yml;
secrets.ddns-pass.mode = "0400";
};
# services.deno-netlify-ddns-client = {
# passwordFile = config.sops.secrets.ddns-pass.path;
# enable = true;
# username = "dragon.h";
# # TODO: router doesn't even do ipv6 yet...
# ipv6 = false;
# };
services.deno-netlify-ddns-client = {
passwordFile = config.sops.secrets.ddns-pass.path;
enable = true;
username = "dragon.h";
# TODO: router doesn't even do ipv6 yet...
ipv6 = false;
};
# networking.wifi.enable = true;
# lyte.desktop.enable = true;
networking.wifi.enable = true;
lyte.desktop.enable = true;
# home-manager.users.daniel = {
# lyte.shell.enable = true;
# lyte.desktop.enable = true;
# slippi-launcher = {
# enable = true;
# isoPath = "${config.users.users.daniel.home}/../games/roms/dolphin/melee.iso";
# launchMeleeOnPlay = false;
# };
# };
home-manager.users.daniel = {
slippi-launcher = {
enable = true;
isoPath = "${config.users.users.daniel.home}/../games/roms/dolphin/melee.iso";
launchMeleeOnPlay = false;
};
};
}