nixpkgs/pkgs/games/heroic/package.json
Aidan Gauland 1abe038db9
heroic: Repackage from source and wrap in FHS
* Instead of using the prebuilt AppImage, build from source and wrap with
  Electron from nixpkgs.

* Wrap in FHS user environment with buildFHSUserEnvBubblewrap.

* Correct meta.description to mention GOG support.

* Simplify meta attribute

* Update maintainers.
  Taking over sole maintainership from wolfanguakang.

* Use gogdl and legendary-gl from nixpkgs
2022-10-04 08:25:54 +13:00

245 lines
7.4 KiB
JSON

{
"name": "heroic",
"version": "2.4.0",
"private": true,
"main": "public/main.js",
"homepage": "./",
"license": "GPL-3.0-only",
"description": "An Open Source Launcher for GOG and Epic Games",
"repository": {
"type": "Github",
"url": "https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher"
},
"author": {
"name": "Heroic Games Launcher",
"email": "heroicgameslauncher@protonmail.com"
},
"build": {
"appId": "com.electron.heroic",
"productName": "Heroic",
"files": [
"build/**/*",
"node_modules/**/*",
"!build/bin/*",
"build/bin/legendary.LICENSE"
],
"asarUnpack": [
"build/icon.png",
"build/icon.icns",
"build/win_icon.ico",
"build/icon-dark.png",
"build/icon-light.png"
],
"directories": {
"buildResources": "public"
},
"protocols": [
{
"name": "heroic",
"schemes": [
"heroic"
]
}
],
"win": {
"artifactName": "Heroic_Setup_${version}.${ext}",
"icon": "build/win_icon.ico",
"asarUnpack": [
"build/bin/win32/legendary.exe",
"build/bin/win32/gogdl.exe"
],
"files": [
"build/bin/win32/*"
]
},
"mac": {
"target": "dmg",
"category": "public.app-category.games",
"icon": "build/icon.icns",
"asarUnpack": [
"build/bin/darwin/legendary",
"build/bin/darwin/gogdl"
],
"files": [
"build/bin/darwin/*"
]
},
"dmg": {
"background": "public/dmg.png",
"window": {
"width": "600",
"height": "500"
},
"contents": [
{
"x": 10,
"y": 215,
"type": "file"
},
{
"x": 420,
"y": 215,
"type": "link",
"path": "/Applications"
}
]
},
"linux": {
"category": "Game",
"icon": "build/icon.icns",
"description": "An Open Source Launcher for GOG and Epic Games",
"desktop": {
"Name": "Heroic Games Launcher",
"Comment[de]": "Ein Open Source Spielelauncher for GOG und Epic Games"
},
"asarUnpack": [
"build/bin/linux/legendary",
"build/bin/linux/gogdl"
],
"files": [
"build/bin/linux/*"
]
},
"deb": {
"packageCategory": "games",
"depends": [
"gawk",
"curl"
]
},
"pacman": {
"packageCategory": "games",
"depends": [
"gawk",
"curl"
]
},
"rpm": {
"packageCategory": "games",
"depends": [
"gawk",
"curl"
]
}
},
"dependencies": {
"@emotion/react": "^11.9.0",
"@emotion/styled": "^11.8.1",
"@fontsource/cabin": "^4.5.5",
"@fontsource/rubik": "^4.5.6",
"@fortawesome/fontawesome-svg-core": "^6.1.1",
"@fortawesome/free-brands-svg-icons": "^6.1.1",
"@fortawesome/free-regular-svg-icons": "^6.1.1",
"@fortawesome/free-solid-svg-icons": "^6.1.1",
"@fortawesome/react-fontawesome": "^0.1.18",
"@mui/icons-material": "^5.6.2",
"@mui/material": "^5.6.2",
"@node-steam/vdf": "^2.2.0",
"axios": "^0.26.1",
"check-disk-space": "^3.3.1",
"classnames": "^2.3.1",
"crc": "^4.1.1",
"discord-rich-presence-typescript": "^0.0.8",
"electron-store": "^8.0.1",
"electron-updater": "^5.0.1",
"filesize": "^8.0.7",
"font-list": "^1.4.5",
"fs-extra": "^10.1.0",
"fuse.js": "^6.6.2",
"graceful-fs": "^4.2.10",
"heroic-wine-downloader": "^1.2.3",
"i18next": "^21.6.16",
"i18next-fs-backend": "^1.1.4",
"i18next-http-backend": "^1.4.0",
"ini": "^3.0.0",
"plist": "^3.0.5",
"react": "17",
"react-dom": "17",
"react-i18next": "^11.16.7",
"react-router-dom": "^6.3.0",
"react-scripts": "^5.0.1",
"shlex": "^2.1.2",
"simple-keyboard": "^3.4.136",
"source-map-support": "^0.5.21",
"steam-shortcut-editor": "^3.1.1",
"systeminformation": "^5.12.3",
"tslib": "^2.4.0"
},
"scripts": {
"start": "DISABLE_ESLINT_PLUGIN=true nf start -p 3000 && electron-start",
"electron-start": "ELECTRON_IS_DEV=1 node public/start-react",
"electron": "yarn build-electron && electron . --trace-warnings",
"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:ci": "jest --runInBand --silent",
"eject": "react-scripts eject",
"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": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js -p always --mac",
"release:win": "yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js -p always --win nsis portable",
"dist:linux": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --linux",
"dist:mac": "GH_TOKEN='${{ secrets.WORKFLOW_TOKEN }}' yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --mac",
"dist:win": "yarn build-electron && yarn build && electron-builder -c.extraMetadata.main=build/main.js --win",
"lint": "eslint -c .eslintrc --ext .tsx,ts ./src && eslint -c .eslintrc --ext .ts ./electron",
"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",
"flatpak-test": "yarn dist:linux appimage && cd flatpak && flatpak-builder build local.heroic.yml --install --force-clean --user",
"i18n": "i18next",
"prepare": "husky install",
"prettier": "prettier --check .",
"prettier-fix": "prettier --write ."
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"devDependencies": {
"@testing-library/dom": "^7.31.0",
"@testing-library/jest-dom": "^5.16.4",
"@testing-library/react": "^13.1.1",
"@testing-library/user-event": "^14.1.1",
"@types/classnames": "^2.3.1",
"@types/i18next-fs-backend": "^1.1.2",
"@types/ini": "^1.3.31",
"@types/jest": "^27.4.1",
"@types/node": "^17.0.25",
"@types/plist": "^3.0.2",
"@types/react": "^18.0.6",
"@types/react-dom": "^18.0.2",
"@types/react-router-dom": "^5.3.3",
"@types/tmp": "^0.2.3",
"@typescript-eslint/eslint-plugin": "^5.20.0",
"@typescript-eslint/parser": "^5.20.0",
"electron": "^20.0.1",
"electron-builder": "^23.1.0",
"electron-devtools-installer": "^3.2.0",
"eslint": "^8.13.0",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-react": "^7.29.4",
"foreman": "^3.0.1",
"husky": "^7.0.4",
"i18next-parser": "^6.3.0",
"prettier": "^2.6.2",
"pretty-quick": "^3.1.3",
"tmp": "^0.2.1",
"ts-jest": "^27.1.4",
"typescript": "^4.6.3"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version"
]
}
}