feat: setup pico8.
This commit is contained in:
parent
3e86945f58
commit
4b1273232f
5 changed files with 77 additions and 0 deletions
|
|
@ -22,6 +22,7 @@
|
|||
./emacs.nix
|
||||
./zen-browser.nix
|
||||
./lnxlink.nix
|
||||
./pico-8.nix
|
||||
];
|
||||
|
||||
crony.river.enable = lib.mkDefault false;
|
||||
|
|
@ -46,4 +47,5 @@
|
|||
crony.emacs.enable = lib.mkDefault false;
|
||||
crony.zen-browser.enable = lib.mkDefault false;
|
||||
crony.lnxlink.enable = lib.mkDefault false;
|
||||
crony.pico8.enable = lib.mkDefault false;
|
||||
}
|
||||
|
|
|
|||
54
modules/linux/home-manager/pico-8.nix
Normal file
54
modules/linux/home-manager/pico-8.nix
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
{
|
||||
inputs,
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
options.crony.pico8 = with lib; {
|
||||
enable = mkEnableOption "Enable pico-8 and install from inputs.pico-8-src";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.crony.pico8.enable {
|
||||
home.packages = let
|
||||
pico-8-files = pkgs.stdenv.mkDerivation {
|
||||
name = "pico-8-files";
|
||||
src = inputs.pico-8;
|
||||
nativeBuildInputs = with pkgs; [unzip];
|
||||
unpackCmd = "unzip $curSrc";
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp ./pico8 ./pico8.dat ./lexaloffle-pico8.png $out
|
||||
'';
|
||||
};
|
||||
pico-8-bin-wrapped = pkgs.buildFHSEnv {
|
||||
name = "pico-8";
|
||||
targetPkgs = pkgs: (with pkgs; [
|
||||
libX11
|
||||
libXext
|
||||
libXcursor
|
||||
libXinerama
|
||||
libXi
|
||||
libXrandr
|
||||
libXScrnSaver
|
||||
libXxf86vm
|
||||
libxcb
|
||||
libXrender
|
||||
libXfixes
|
||||
libXau
|
||||
libXdmcp
|
||||
alsa-lib
|
||||
udev
|
||||
wget
|
||||
]);
|
||||
runScript = ''bash -c "${pico-8-files}/pico8"'';
|
||||
};
|
||||
pico8DesktopItem = pkgs.makeDesktopItem {
|
||||
name = "pico-8";
|
||||
desktopName = "PICO-8";
|
||||
exec = "${pico-8-bin-wrapped}/bin/pico-8";
|
||||
icon = "${pico-8-files}/lexaloffle-pico8.png";
|
||||
};
|
||||
in [pico-8-bin-wrapped pico8DesktopItem];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue