mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-20 04:19:00 +02:00
heroic: 2.4.3 -> 2.5.2
Upstream changes to build system required changes to the postBuild and postInstall phases. Add passthru.updateScript for future updates.
This commit is contained in:
parent
1eb875e811
commit
04ba2aaf83
|
@ -1,6 +1,7 @@
|
||||||
{ lib
|
{ lib
|
||||||
, mkYarnPackage
|
, mkYarnPackage
|
||||||
, fetchFromGitHub
|
, fetchFromGitHub
|
||||||
|
, gitUpdater
|
||||||
, makeWrapper
|
, makeWrapper
|
||||||
, electron
|
, electron
|
||||||
, gogdl
|
, gogdl
|
||||||
|
@ -9,13 +10,13 @@
|
||||||
|
|
||||||
mkYarnPackage rec {
|
mkYarnPackage rec {
|
||||||
pname = "heroic-unwrapped";
|
pname = "heroic-unwrapped";
|
||||||
version = "2.4.3";
|
version = "2.5.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Heroic-Games-Launcher";
|
owner = "Heroic-Games-Launcher";
|
||||||
repo = "HeroicGamesLauncher";
|
repo = "HeroicGamesLauncher";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
sha256 = "sha256-x9zIM2kKi+JgIGIidQYjyjqVGweFJ8DE7IX9gYULQuQ=";
|
sha256 = "sha256-vyZH/uOE7Oph8TuBFM2cUFwM4ed8Ri3fKRUrl9A6zHc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
packageJSON = ./package.json;
|
packageJSON = ./package.json;
|
||||||
|
@ -29,10 +30,11 @@ mkYarnPackage rec {
|
||||||
DISABLE_ESLINT_PLUGIN = "true";
|
DISABLE_ESLINT_PLUGIN = "true";
|
||||||
|
|
||||||
postBuild = let
|
postBuild = let
|
||||||
yarnCmd = "yarn --production --offline --frozen-lockfile --ignore-engines --ignore-scripts --lockfile ${yarnLock}";
|
yarnCmd = "yarn --offline --frozen-lockfile --ignore-engines --ignore-scripts --lockfile ${yarnLock}";
|
||||||
in ''
|
in ''
|
||||||
${yarnCmd} build-electron
|
rm deps/heroic/node_modules
|
||||||
${yarnCmd} build
|
ln -s ../../node_modules deps/heroic/
|
||||||
|
${yarnCmd} vite build
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Disable bundling into a tar archive.
|
# Disable bundling into a tar archive.
|
||||||
|
@ -44,8 +46,8 @@ mkYarnPackage rec {
|
||||||
deps = "$out/libexec/heroic/deps/heroic";
|
deps = "$out/libexec/heroic/deps/heroic";
|
||||||
in ''
|
in ''
|
||||||
rm -rf "${deps}/public/bin" "${deps}/build/bin"
|
rm -rf "${deps}/public/bin" "${deps}/build/bin"
|
||||||
mkdir -p "${deps}/public/bin/linux"
|
mkdir -p "${deps}/build/bin/linux"
|
||||||
ln -s "${gogdl}/bin/gogdl" "${legendary-gl}/bin/legendary" "${deps}/public/bin/linux"
|
ln -s "${gogdl}/bin/gogdl" "${legendary-gl}/bin/legendary" "${deps}/build/bin/linux"
|
||||||
|
|
||||||
makeWrapper "${electron}/bin/electron" "$out/bin/heroic" \
|
makeWrapper "${electron}/bin/electron" "$out/bin/heroic" \
|
||||||
--inherit-argv0 \
|
--inherit-argv0 \
|
||||||
|
@ -59,6 +61,10 @@ mkYarnPackage rec {
|
||||||
ln -s "${deps}/flatpak/com.heroicgameslauncher.hgl.png" "$out/share/icons/hicolor/512x512/apps"
|
ln -s "${deps}/flatpak/com.heroicgameslauncher.hgl.png" "$out/share/icons/hicolor/512x512/apps"
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
passthru.updateScript = gitUpdater {
|
||||||
|
rev-prefix = "v";
|
||||||
|
};
|
||||||
|
|
||||||
meta = with lib; {
|
meta = with lib; {
|
||||||
description = "A Native GOG and Epic Games Launcher for Linux, Windows and Mac";
|
description = "A Native GOG and Epic Games Launcher for Linux, Windows and Mac";
|
||||||
homepage = "https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher";
|
homepage = "https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher";
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
{
|
{
|
||||||
"name": "heroic",
|
"name": "heroic",
|
||||||
"version": "2.4.0",
|
"version": "2.5.2",
|
||||||
"private": true,
|
"private": true,
|
||||||
"main": "public/main.js",
|
"main": "build/electron/main.js",
|
||||||
"homepage": "./",
|
"homepage": "./",
|
||||||
"license": "GPL-3.0-only",
|
"license": "GPL-3.0-only",
|
||||||
"description": "An Open Source Launcher for GOG and Epic Games",
|
"description": "An Open Source Launcher for GOG and Epic Games",
|
||||||
|
@ -30,9 +30,6 @@
|
||||||
"build/icon-dark.png",
|
"build/icon-dark.png",
|
||||||
"build/icon-light.png"
|
"build/icon-light.png"
|
||||||
],
|
],
|
||||||
"directories": {
|
|
||||||
"buildResources": "public"
|
|
||||||
},
|
|
||||||
"protocols": [
|
"protocols": [
|
||||||
{
|
{
|
||||||
"name": "heroic",
|
"name": "heroic",
|
||||||
|
@ -42,7 +39,7 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"win": {
|
"win": {
|
||||||
"artifactName": "Heroic_Setup_${version}.${ext}",
|
"artifactName": "${productName}-${version}-Setup.${ext}",
|
||||||
"icon": "build/win_icon.ico",
|
"icon": "build/win_icon.ico",
|
||||||
"asarUnpack": [
|
"asarUnpack": [
|
||||||
"build/bin/win32/legendary.exe",
|
"build/bin/win32/legendary.exe",
|
||||||
|
@ -52,6 +49,9 @@
|
||||||
"build/bin/win32/*"
|
"build/bin/win32/*"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"portable": {
|
||||||
|
"artifactName": "${productName}-${version}-Portable.${ext}"
|
||||||
|
},
|
||||||
"mac": {
|
"mac": {
|
||||||
"target": "dmg",
|
"target": "dmg",
|
||||||
"category": "public.app-category.games",
|
"category": "public.app-category.games",
|
||||||
|
@ -103,21 +103,18 @@
|
||||||
"deb": {
|
"deb": {
|
||||||
"packageCategory": "games",
|
"packageCategory": "games",
|
||||||
"depends": [
|
"depends": [
|
||||||
"gawk",
|
|
||||||
"curl"
|
"curl"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"pacman": {
|
"pacman": {
|
||||||
"packageCategory": "games",
|
"packageCategory": "games",
|
||||||
"depends": [
|
"depends": [
|
||||||
"gawk",
|
|
||||||
"curl"
|
"curl"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"rpm": {
|
"rpm": {
|
||||||
"packageCategory": "games",
|
"packageCategory": "games",
|
||||||
"depends": [
|
"depends": [
|
||||||
"gawk",
|
|
||||||
"curl"
|
"curl"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -132,9 +129,10 @@
|
||||||
"@fortawesome/free-regular-svg-icons": "^6.1.1",
|
"@fortawesome/free-regular-svg-icons": "^6.1.1",
|
||||||
"@fortawesome/free-solid-svg-icons": "^6.1.1",
|
"@fortawesome/free-solid-svg-icons": "^6.1.1",
|
||||||
"@fortawesome/react-fontawesome": "^0.1.18",
|
"@fortawesome/react-fontawesome": "^0.1.18",
|
||||||
"@mui/icons-material": "^5.6.2",
|
"@mui/icons-material": "^5.10.9",
|
||||||
"@mui/material": "^5.6.2",
|
"@mui/material": "^5.10.12",
|
||||||
"@node-steam/vdf": "^2.2.0",
|
"@node-steam/vdf": "^2.2.0",
|
||||||
|
"@shockpkg/icon-encoder": "^2.1.3",
|
||||||
"axios": "^0.26.1",
|
"axios": "^0.26.1",
|
||||||
"check-disk-space": "^3.3.1",
|
"check-disk-space": "^3.3.1",
|
||||||
"classnames": "^2.3.1",
|
"classnames": "^2.3.1",
|
||||||
|
@ -148,44 +146,40 @@
|
||||||
"fuse.js": "^6.6.2",
|
"fuse.js": "^6.6.2",
|
||||||
"graceful-fs": "^4.2.10",
|
"graceful-fs": "^4.2.10",
|
||||||
"heroic-wine-downloader": "^1.2.3",
|
"heroic-wine-downloader": "^1.2.3",
|
||||||
|
"howlongtobeat": "^1.7.0",
|
||||||
"i18next": "^21.6.16",
|
"i18next": "^21.6.16",
|
||||||
"i18next-fs-backend": "^1.1.4",
|
"i18next-fs-backend": "^1.1.4",
|
||||||
"i18next-http-backend": "^1.4.0",
|
"i18next-http-backend": "^1.4.0",
|
||||||
"ini": "^3.0.0",
|
"ini": "^3.0.0",
|
||||||
"plist": "^3.0.5",
|
"plist": "^3.0.5",
|
||||||
"react": "17",
|
"react": "^18.2.0",
|
||||||
"react-dom": "17",
|
"react-dom": "^18.2.0",
|
||||||
"react-i18next": "^11.16.7",
|
"react-i18next": "^11.16.7",
|
||||||
|
"react-markdown": "^8.0.3",
|
||||||
"react-router-dom": "^6.3.0",
|
"react-router-dom": "^6.3.0",
|
||||||
"react-scripts": "^5.0.1",
|
"recharts": "^2.1.14",
|
||||||
"shlex": "^2.1.2",
|
"shlex": "^2.1.2",
|
||||||
|
"short-uuid": "^4.2.0",
|
||||||
"simple-keyboard": "^3.4.136",
|
"simple-keyboard": "^3.4.136",
|
||||||
"source-map-support": "^0.5.21",
|
"source-map-support": "^0.5.21",
|
||||||
"steam-shortcut-editor": "^3.1.1",
|
"steam-shortcut-editor": "^3.1.1",
|
||||||
"systeminformation": "^5.12.3",
|
"systeminformation": "^5.15.0",
|
||||||
"tslib": "^2.4.0"
|
"tslib": "^2.4.0"
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"start": "DISABLE_ESLINT_PLUGIN=true nf start -p 3000 && electron-start",
|
"start": "vite",
|
||||||
"electron-start": "ELECTRON_IS_DEV=1 node public/start-react",
|
"codecheck": "tsc --noEmit",
|
||||||
"electron": "yarn build-electron && electron . --trace-warnings",
|
"test": "jest",
|
||||||
"react-start": "HOST=localhost BROWSER=none react-scripts start",
|
|
||||||
"react-start:win": "react-scripts start",
|
|
||||||
"build": "react-scripts build",
|
|
||||||
"test": "jest --noStackTrace",
|
|
||||||
"test-watch": "jest --watch --maxWorkers=25%",
|
"test-watch": "jest --watch --maxWorkers=25%",
|
||||||
"test:ci": "jest --runInBand --silent",
|
"test:ci": "jest --runInBand --silent",
|
||||||
"eject": "react-scripts eject",
|
"release:linux": "vite build && electron-builder -p always --linux deb AppImage rpm pacman tar.xz",
|
||||||
"release:linux": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js -p always --linux deb AppImage rpm pacman tar.xz",
|
"release:mac": "vite build && electron-builder -p always --mac",
|
||||||
"release:mac": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js -p always --mac",
|
"release:win": "vite build && electron-builder -p always --win nsis portable",
|
||||||
"release:win": "yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js -p always --win nsis portable",
|
"dist:linux": "vite build && electron-builder --linux",
|
||||||
"dist:linux": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --linux",
|
"dist:mac": "vite build && electron-builder --mac",
|
||||||
"dist:mac": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --mac",
|
"dist:win": "vite build && electron-builder --win",
|
||||||
"dist:win": "yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --win",
|
"lint": "eslint --cache -c .eslintrc --ext .tsx,ts ./src",
|
||||||
"lint": "eslint -c .eslintrc --ext .tsx,ts ./src && eslint -c .eslintrc --ext .ts ./electron",
|
"lint-fix": "eslint --fix -c .eslintrc --ext .tsx,ts ./src",
|
||||||
"lint-fix": "eslint --fix -c .eslintrc --ext .tsx,ts ./src && eslint --fix -c .eslintrc --ext .ts ./electron",
|
|
||||||
"build-electron": "tsc --project electron/tsconfig.json",
|
|
||||||
"watch-electron": "tsc --watch --project electron/tsconfig.json",
|
|
||||||
"dist-flatpak": "cd flatpak && flatpak-builder build local.heroic.yml --install --force-clean --user",
|
"dist-flatpak": "cd flatpak && flatpak-builder build local.heroic.yml --install --force-clean --user",
|
||||||
"flatpak-test": "yarn dist:linux appimage && cd flatpak && flatpak-builder build local.heroic.yml --install --force-clean --user",
|
"flatpak-test": "yarn dist:linux appimage && cd flatpak && flatpak-builder build local.heroic.yml --install --force-clean --user",
|
||||||
"i18n": "i18next",
|
"i18n": "i18next",
|
||||||
|
@ -210,35 +204,31 @@
|
||||||
"@types/jest": "^27.4.1",
|
"@types/jest": "^27.4.1",
|
||||||
"@types/node": "^17.0.25",
|
"@types/node": "^17.0.25",
|
||||||
"@types/plist": "^3.0.2",
|
"@types/plist": "^3.0.2",
|
||||||
"@types/react": "^18.0.6",
|
"@types/react": "^18.0.24",
|
||||||
"@types/react-dom": "^18.0.2",
|
"@types/react-dom": "^18.0.8",
|
||||||
"@types/react-router-dom": "^5.3.3",
|
"@types/react-router-dom": "^5.3.3",
|
||||||
"@types/tmp": "^0.2.3",
|
"@types/tmp": "^0.2.3",
|
||||||
"@typescript-eslint/eslint-plugin": "^5.20.0",
|
"@typescript-eslint/eslint-plugin": "^5.20.0",
|
||||||
"@typescript-eslint/parser": "^5.20.0",
|
"@typescript-eslint/parser": "^5.20.0",
|
||||||
"electron": "^20.0.1",
|
"@vitejs/plugin-react": "^2.2.0",
|
||||||
|
"electron": "^21.2.1",
|
||||||
"electron-builder": "^23.1.0",
|
"electron-builder": "^23.1.0",
|
||||||
"electron-devtools-installer": "^3.2.0",
|
"electron-devtools-installer": "^3.2.0",
|
||||||
"eslint": "^8.13.0",
|
"eslint": "^8.13.0",
|
||||||
"eslint-config-prettier": "^8.5.0",
|
"eslint-config-prettier": "^8.5.0",
|
||||||
|
"eslint-plugin-import": "^2.26.0",
|
||||||
"eslint-plugin-react": "^7.29.4",
|
"eslint-plugin-react": "^7.29.4",
|
||||||
"foreman": "^3.0.1",
|
|
||||||
"husky": "^7.0.4",
|
"husky": "^7.0.4",
|
||||||
"i18next-parser": "^6.3.0",
|
"i18next-parser": "^6.3.0",
|
||||||
|
"jest": "^28.1.3",
|
||||||
"prettier": "^2.6.2",
|
"prettier": "^2.6.2",
|
||||||
"pretty-quick": "^3.1.3",
|
"pretty-quick": "^3.1.3",
|
||||||
|
"sass": "^1.55.0",
|
||||||
"tmp": "^0.2.1",
|
"tmp": "^0.2.1",
|
||||||
"ts-jest": "^27.1.4",
|
"ts-jest": "^28.0.7",
|
||||||
"typescript": "^4.6.3"
|
"typescript": "^4.8.4",
|
||||||
},
|
"vite": "^3.2.2",
|
||||||
"browserslist": {
|
"vite-plugin-electron": "^0.10.2",
|
||||||
"production": [
|
"vite-plugin-svgr": "^2.2.2"
|
||||||
">0.2%",
|
|
||||||
"not dead",
|
|
||||||
"not op_mini all"
|
|
||||||
],
|
|
||||||
"development": [
|
|
||||||
"last 1 chrome version"
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue