Personal-use NixOS configuration
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Start work on Pegasus modules

encode42 070ae136 d5c23ae4

+70
+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 + }
+7
homes/shared/desktop/pegasus.nix
··· 1 + { pkgs, ... }: 2 + 3 + { 4 + home.packages = with pkgs; [ 5 + pegasus-frontend 6 + ]; 7 + }
+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 + }
+2
hosts/prospect/homes/encode42.nix
··· 14 14 (flakeRoot + /homes/encode42/desktop/firefox.nix) 15 15 16 16 (flakeRoot + /homes/shared/desktop/prismlauncher.nix) 17 + 18 + ./config/pegasus.nix 17 19 ]; 18 20 }
+1
lib/default.nix
··· 9 9 inherit nix-jetbrains-plugins pkgs; 10 10 }; 11 11 12 + mkPegasus = import ./mkPegasus.nix { inherit pkgs lib; }; 12 13 mkProxies = import ./mkProxies.nix { inherit lib; }; 13 14 mkShares = import ./mkShares.nix { inherit lib; }; 14 15 mkUserIcon = import ./mkUserIcon.nix;
+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 + }