tangled
alpha
login
or
join now
encode42.dev
/
nixos
0
fork
atom
Personal-use NixOS configuration
0
fork
atom
overview
issues
pulls
pipelines
Switch from Pegasus to Lutris
encode42.dev
3 days ago
b0d93f2f
633cf80b
+4
-71
7 changed files
expand all
collapse all
unified
split
homes
shared
desktop
emulators
blastem.nix
pegasus.nix
hosts
prospect
homes
config
games.nix
pegasus.nix
encode42.nix
guest.nix
lib
mkPegasus.nix
-24
homes/shared/desktop/emulators/blastem.nix
···
1
-
storageDirectory:
2
-
3
-
{ pkgs, flakeLib, ... }:
4
-
5
-
# Lock-on cartridges use -o
6
-
# No argument to specify settings path
7
-
8
-
flakeLib.mkPegasus "genesis" {
9
-
inherit storageDirectory;
10
-
11
-
name = "Sega Genesis";
12
-
13
-
extensions = [
14
-
"zip" # zlib
15
-
"md"
16
-
"bin"
17
-
];
18
-
19
-
package = pkgs.blastem;
20
-
launchArgs = [
21
-
"-f"
22
-
"-m gen"
23
-
];
24
-
}
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-7
homes/shared/desktop/pegasus.nix
···
1
-
{ pkgs, ... }:
2
-
3
-
{
4
-
home.packages = with pkgs; [
5
-
pegasus-frontend
6
-
];
7
-
}
···
0
0
0
0
0
0
0
+4
-2
hosts/prospect/homes/config/games.nix
···
1
-
{ pkgs, ... }:
2
3
{
4
-
# TODO: package Vita3k and Gearsystem
0
0
5
6
home.packages = with pkgs; [
7
r2modman
···
1
+
{ flakeRoot, pkgs, ... }:
2
3
{
4
+
imports = [
5
+
(flakeRoot + /homes/shared/desktop/lutris.nix)
6
+
];
7
8
home.packages = with pkgs; [
9
r2modman
-14
hosts/prospect/homes/config/pegasus.nix
···
1
-
{ flakeRoot, ... }:
2
-
3
-
let
4
-
emulatorPath = (flakeRoot + /homes/shared/desktop/emulators);
5
-
6
-
blastemModule = import (emulatorPath + /blastem.nix) /tmp/test;
7
-
in
8
-
{
9
-
imports = [
10
-
(flakeRoot + /homes/shared/desktop/pegasus.nix)
11
-
12
-
blastemModule
13
-
];
14
-
}
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
-1
hosts/prospect/homes/encode42.nix
···
16
(flakeRoot + /homes/shared/desktop/prismlauncher.nix)
17
18
./config/games.nix
19
-
./config/pegasus.nix
20
];
21
}
···
16
(flakeRoot + /homes/shared/desktop/prismlauncher.nix)
17
18
./config/games.nix
0
19
];
20
}
-1
hosts/prospect/homes/guest.nix
···
14
(flakeRoot + /homes/shared/desktop/prismlauncher.nix)
15
16
./config/games.nix
17
-
./config/pegasus.nix
18
];
19
20
dconf.settings = {
···
14
(flakeRoot + /homes/shared/desktop/prismlauncher.nix)
15
16
./config/games.nix
0
17
];
18
19
dconf.settings = {
-22
lib/mkPegasus.nix
···
1
-
{ pkgs, lib, ... }:
2
-
3
-
platform: category:
4
-
5
-
let
6
-
metadataPath = category.storageDirectory + /metadata.txt;
7
-
8
-
extensions = lib.concatStringsSep ", " category.extensions;
9
-
arguments = lib.concatStringsSep " " category.launchArgs;
10
-
11
-
metadata = ''
12
-
collection: ${category.name}
13
-
shortname: ${platform}
14
-
extensions: ${extensions}
15
-
launch: ${lib.getExe category.package} ${arguments} "{file.path}"
16
-
'';
17
-
18
-
metadataFile = pkgs.writeText metadataPath metadata;
19
-
in
20
-
{
21
-
inherit metadataFile;
22
-
}
···
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0