Reorganized
This commit is contained in:
1 parent
c3c61ce654
commit
760815da50
145 files changed
-1444
No files matched your search
@@ -0,0 +1,12 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
./emulators/pcsx2.nix
|
||||
./emulators/retroarch.nix
|
||||
./emulators/ryujinx.nix
|
||||
./launchers/es-de.nix
|
||||
./launchers/modrinth.nix
|
||||
./launchers/steam.nix
|
||||
];
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.pcsx2;
|
||||
in
|
||||
{
|
||||
options.modules.pcsx2 = {
|
||||
enable = mkEnableOption "pcsx2";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
pcsx2
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.retroarch;
|
||||
in
|
||||
{
|
||||
options.modules.retroarch = {
|
||||
enable = mkEnableOption "RetroArch";
|
||||
};
|
||||
|
||||
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; [
|
||||
# retroarch-full
|
||||
retroarch-free
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.ryujinx;
|
||||
in
|
||||
{
|
||||
options.modules.ryujinx = {
|
||||
enable = mkEnableOption "ryujinx";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
ryubing
|
||||
];
|
||||
|
||||
# TODO: Make more general
|
||||
wayland.windowManager.river.settings.rule-add."-app-id"."'Ryujinx'" = "fullscreen";
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
system,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.es-de;
|
||||
in
|
||||
{
|
||||
options.modules.es-de = {
|
||||
enable = mkEnableOption "Emulation Station Desktop Edition";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
home.packages = with pkgs; [
|
||||
emulationstation-de
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
ESDE_APPDATA_DIR = "$HOME/.config/ES-DE";
|
||||
};
|
||||
|
||||
# TODO: Remove exception once no longer required by es-de
|
||||
nixpkgs.config.permittedInsecurePackages = [
|
||||
"freeimage-3.18.0-unstable-2024-04-18"
|
||||
];
|
||||
|
||||
# TODO: Remove once emulationstation-de fixes the issue
|
||||
# TODO: If not fixed, at least pin the specific commit properly
|
||||
# nixpkgs.overlays =
|
||||
# let
|
||||
# pkgs-stable = import (fetchTarball {
|
||||
# url = "https://github.com/NixOS/nixpkgs/archive/nixos-24.11.tar.gz";
|
||||
# sha256 = "1wr1xzkw7v8biqqjcr867gbpqf3kibkgly36lcnhw0glvkr1i986";
|
||||
# }) { inherit system; };
|
||||
# in
|
||||
# [
|
||||
# (final: prev: {
|
||||
# libgit2 = pkgs-stable.libgit2;
|
||||
# })
|
||||
# ];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
{
|
||||
lib,
|
||||
config,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
let
|
||||
cfg = config.modules.modrinth;
|
||||
in
|
||||
{
|
||||
options.modules.modrinth = {
|
||||
enable = mkEnableOption "modrinth";
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
modules.unfree.allowedPackages = [
|
||||
"modrinth-app"
|
||||
"modrinth-app-unwrapped"
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
modrinth-app
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
|
||||
with lib;
|
||||
{
|
||||
options.modules.steam = {
|
||||
enable = mkEnableOption "steam";
|
||||
};
|
||||
|
||||
config = mkIf config.modules.steam.enable {
|
||||
# Steam must be installed systemwide as of time of writing
|
||||
};
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
{
|
||||
steam =
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
modules.unfree.allowedPackages = [
|
||||
"steam"
|
||||
"steam-original"
|
||||
"steam-unwrapped"
|
||||
];
|
||||
|
||||
programs.steam.enable = true;
|
||||
|
||||
# Make steam create desktop entries in a subfolder
|
||||
programs.steam.package = pkgs.steam.override {
|
||||
extraBwrapArgs = [
|
||||
"--bind $HOME/.local/share/applications/Steam $HOME/.local/share/applications"
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in new issue
Block a user