-
-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gb-studio: init at 3.1.0 #268959
gb-studio: init at 3.1.0 #268959
Conversation
|
I don't know how to install desktop file and icons. To do so, I need to override some phase but every phase is needed and is hard to recreate (I wish I could use something like My progress: { lib
, mkYarnPackage
, fetchFromGitHub
, makeDesktopItem
, imagemagick
, nodejs
, yarn
}:
mkYarnPackage rec {
pname = "gb-studio";
version = "3.2.1";
src = fetchFromGitHub {
owner = "chrismaltby";
repo = "gb-studio";
rev = "refs/tags/v${version}";
hash = "sha256-hF8aDTg7v9p0d9AUE2NNhQACgggMEbi5afzK1GqUHx0=";
};
strictDeps = true;
# doDist = false;
nativeBuildInputs = [
imagemagick
nodejs
yarn
];
# installPhase = let
# desktopItem = makeDesktopItem {
# name = pname;
# desktopName = "GB Studio";
# comment = "Visual retro game maker";
# genericName = "GB Studio";
# exec = "${meta.mainProgram} %U";
# icon = pname;
# type = "Application";
# startupNotify = true;
# categories = [ "Development" "Building" "IDE" ];
# };
# in ''
# runHook preInstall
#
# pushd ./deps/gb-studio
# for size in 64 128 256 512 1024; do
# mkdir -p $out/share/icons/hicolor/"$size"x"$size"/
# convert -resize "$size"x"$size" ./src/assets/app/icon/app_icon.png \
# $out/share/icons/hicolor/"$size"x"$size"/${pname}.png
# done
# popd
#
# install -Dm 644 ${desktopItem}/share/applications/*.desktop \
# -t $out/share/applications
#
# runHook postInstall
# '';
meta = {
description = "A quick and easy to use drag and drop retro game creator for your favourite handheld video game system";
homepage = "https://www.gbstudio.dev/";
downloadPage = "https://chrismaltby.itch.io/gb-studio";
changelog = "https://github.com/chrismaltby/gb-studio/releases/tag/v${version}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ashgoldofficial musjj ];
mainProgram = pname;
platforms = lib.platforms.linux;
};
} |
Try the copyDesktopItems hook |
}; | ||
# bash | ||
in '' | ||
mv "$out/bin/${pname}-${version}" "$out/bin/${pname}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mv "$out/bin/${pname}-${version}" "$out/bin/${pname}" |
|
||
src = fetchurl { | ||
url = | ||
"https://github.com/chrismaltby/${pname}/releases/download/v${version}/${pname}-linux.AppImage"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"https://github.com/chrismaltby/${pname}/releases/download/v${version}/${pname}-linux.AppImage"; | |
"https://github.com/chrismaltby/gb-studio/releases/download/v${version}/gb-studio-linux.AppImage"; |
"A quick and easy to use drag and drop retro game creator for your favourite handheld video game system"; | ||
homepage = "https://www.gbstudio.dev/"; | ||
changelog = | ||
"https://github.com/chrismaltby/${pname}/releases/tag/v${version}"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"https://github.com/chrismaltby/${pname}/releases/tag/v${version}"; | |
"https://github.com/chrismaltby/gb-studio/releases/tag/v${version}"; |
|
||
meta = with lib; { | ||
description = | ||
"A quick and easy to use drag and drop retro game creator for your favourite handheld video game system"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"A quick and easy to use drag and drop retro game creator for your favourite handheld video game system"; | |
"Quick and easy to use drag and drop retro game creator for your favourite handheld video game system"; |
cp ${desktopItem}/share/applications/*.desktop $out/share/applications | ||
''; | ||
|
||
meta = with lib; { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
meta = with lib; { | |
meta = { |
tracking issue: #292468
license = licenses.mit; | ||
platforms = [ "x86_64-linux" ]; | ||
sourceProvenance = with sourceTypes; [ binaryBytecode ]; | ||
maintainers = with maintainers; [ musjj ]; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
license = licenses.mit; | |
platforms = [ "x86_64-linux" ]; | |
sourceProvenance = with sourceTypes; [ binaryBytecode ]; | |
maintainers = with maintainers; [ musjj ]; | |
license = lib.licenses.mit; | |
platforms = [ "x86_64-linux" ]; | |
sourceProvenance = with lib.sourceTypes; [ binaryBytecode ]; | |
maintainers = with lib.maintainers; [ musjj ]; |
@@ -3846,6 +3846,8 @@ with pkgs; | |||
|
|||
gams = callPackage ../tools/misc/gams (config.gams or {}); | |||
|
|||
gb-studio = callPackage ../development/tools/gb-studio { }; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
please move this to pkgs/by-name
and remove this line
Closing because of unresponsive author |
since when did we start closing stale PRs? |
Description of changes
GB Studio: A quick and easy to use drag and drop retro game creator for your favourite handheld video game system.
Just a simple wrapper around the pre-built AppImage executable for now. I really wanted to build the package from source, but I gave up after spending two whole days fighting with Yarn, Electron and RPATH.
closes: #185564
Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Priorities
Add a 👍 reaction to pull requests you find important.