diff --git a/pkgs/by-name/lx/lx-music-desktop/electron-version.patch b/pkgs/by-name/lx/lx-music-desktop/electron-version.patch new file mode 100644 index 000000000000..946df5bfc3fd --- /dev/null +++ b/pkgs/by-name/lx/lx-music-desktop/electron-version.patch @@ -0,0 +1,339 @@ +diff --git a/package-lock.json b/package-lock.json +index bc450db..83dff09 100644 +--- a/package-lock.json ++++ b/package-lock.json +@@ -59,12 +59,12 @@ + "css-loader": "^7.1.2", + "css-minimizer-webpack-plugin": "^7.0.2", + "del": "^6.1.1", +- "electron": "37.6.1", +- "electron-builder": "^26.3.2", ++ "electron": "40.0.0", ++ "electron-builder": "^26.4.0", + "electron-debug": "^3.2.0", + "electron-devtools-installer": "github:lyswhut/electron-devtools-installer#64596d615c1fc891eefd8aef1dfcb2c87aaadf03", + "electron-to-chromium": "^1.5.262", +- "electron-updater": "6.7.2", ++ "electron-updater": "6.7.3", + "eslint": "^8.57.1", + "eslint-config-standard": "^17.1.0", + "eslint-config-standard-with-typescript": "^43.0.1", +@@ -2059,9 +2059,9 @@ + } + }, + "node_modules/@electron/universal/node_modules/fs-extra": { +- "version": "11.3.2", +- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.2.tgz", +- "integrity": "sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==", ++ "version": "11.3.3", ++ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", ++ "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "dev": true, + "license": "MIT", + "dependencies": { +@@ -2119,9 +2119,9 @@ + } + }, + "node_modules/@electron/windows-sign/node_modules/fs-extra": { +- "version": "11.3.2", +- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.2.tgz", +- "integrity": "sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==", ++ "version": "11.3.3", ++ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.3.tgz", ++ "integrity": "sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==", + "dev": true, + "license": "MIT", + "optional": true, +@@ -4189,9 +4189,9 @@ + "license": "MIT" + }, + "node_modules/app-builder-lib": { +- "version": "26.3.2", +- "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.3.2.tgz", +- "integrity": "sha512-ZG4wzxbmmiLUm+W0wXMlMI0LHXK/fsR+Rf21SUs7avujGQ7ZCFLgmIvvWaQ69u1EFnSkYZ2sefKqk1yW/HXeuw==", ++ "version": "26.4.0", ++ "resolved": "https://registry.npmjs.org/app-builder-lib/-/app-builder-lib-26.4.0.tgz", ++ "integrity": "sha512-Uas6hNe99KzP3xPWxh5LGlH8kWIVjZixzmMJHNB9+6hPyDpjc7NQMkVgi16rQDdpCFy22ZU5sp8ow7tvjeMgYQ==", + "dev": true, + "license": "MIT", + "dependencies": { +@@ -4205,7 +4205,7 @@ + "@malept/flatpak-bundler": "^0.4.0", + "@types/fs-extra": "9.0.13", + "async-exit-hook": "^2.0.1", +- "builder-util": "26.3.1", ++ "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chromium-pickle-js": "^0.2.0", + "ci-info": "4.3.1", +@@ -4213,7 +4213,7 @@ + "dotenv": "^16.4.5", + "dotenv-expand": "^11.0.6", + "ejs": "^3.1.8", +- "electron-publish": "26.3.1", ++ "electron-publish": "26.3.4", + "fs-extra": "^10.1.0", + "hosted-git-info": "^4.1.0", + "isbinaryfile": "^5.0.0", +@@ -4224,7 +4224,7 @@ + "minimatch": "^10.0.3", + "plist": "3.1.0", + "resedit": "^1.7.0", +- "semver": "7.7.2", ++ "semver": "~7.7.3", + "tar": "^6.1.12", + "temp-file": "^3.4.0", + "tiny-async-pool": "1.3.0", +@@ -4234,8 +4234,8 @@ + "node": ">=14.0.0" + }, + "peerDependencies": { +- "dmg-builder": "26.3.2", +- "electron-builder-squirrel-windows": "26.3.2" ++ "dmg-builder": "26.4.0", ++ "electron-builder-squirrel-windows": "26.4.0" + } + }, + "node_modules/app-builder-lib/node_modules/fs-extra": { +@@ -4994,9 +4994,9 @@ + } + }, + "node_modules/builder-util": { +- "version": "26.3.1", +- "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.3.1.tgz", +- "integrity": "sha512-pplZEYBx1g15qvIOshpR1WTwjAwQM4ukhGgSNdYPnbuM6wLePq3+njy1sGfekCrJmUP+2xfuwuT9zEoUWfX5zQ==", ++ "version": "26.3.4", ++ "resolved": "https://registry.npmjs.org/builder-util/-/builder-util-26.3.4.tgz", ++ "integrity": "sha512-aRn88mYMktHxzdqDMF6Ayj0rKoX+ZogJ75Ck7RrIqbY/ad0HBvnS2xA4uHfzrGr5D2aLL3vU6OBEH4p0KMV2XQ==", + "dev": true, + "license": "MIT", + "dependencies": { +@@ -5005,7 +5005,6 @@ + "app-builder-bin": "5.0.0-alpha.12", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", +- "ci-info": "^4.2.0", + "cross-spawn": "^7.0.6", + "debug": "^4.3.4", + "fs-extra": "^10.1.0", +@@ -5198,9 +5197,9 @@ + } + }, + "node_modules/cacache/node_modules/tar": { +- "version": "7.5.2", +- "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", +- "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", ++ "version": "7.5.7", ++ "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.7.tgz", ++ "integrity": "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { +@@ -6665,14 +6664,14 @@ + } + }, + "node_modules/dmg-builder": { +- "version": "26.3.2", +- "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.3.2.tgz", +- "integrity": "sha512-UM7/WRmESXnKXBShmKJ+xiEQ3U82/zb/tyaCKGn4Y4cf+WynLzQPeBToZtrIXTs3ZPyJQBIf+btkoCzVVnhO4g==", ++ "version": "26.4.0", ++ "resolved": "https://registry.npmjs.org/dmg-builder/-/dmg-builder-26.4.0.tgz", ++ "integrity": "sha512-ce4Ogns4VMeisIuCSK0C62umG0lFy012jd8LMZ6w/veHUeX4fqfDrGe+HTWALAEwK6JwKP+dhPvizhArSOsFbg==", + "dev": true, + "license": "MIT", + "dependencies": { +- "app-builder-lib": "26.3.2", +- "builder-util": "26.3.1", ++ "app-builder-lib": "26.4.0", ++ "builder-util": "26.3.4", + "fs-extra": "^10.1.0", + "iconv-lite": "^0.6.2", + "js-yaml": "^4.1.0" +@@ -6966,15 +6965,15 @@ + } + }, + "node_modules/electron": { +- "version": "37.6.1", +- "resolved": "https://registry.npmjs.org/electron/-/electron-37.6.1.tgz", +- "integrity": "sha512-aHtJVNjqf0lk7dlPoc1X+fMBpZtLn+XGvP6IYc3gooTwsD1D/Ic2SBRC9SnIk6LkWTsDaSF9jgH1d9Q7eABy/Q==", ++ "version": "40.0.0", ++ "resolved": "https://registry.npmjs.org/electron/-/electron-40.0.0.tgz", ++ "integrity": "sha512-UyBy5yJ0/wm4gNugCtNPjvddjAknMTuXR2aCHioXicH7aKRKGDBPp4xqTEi/doVcB3R+MN3wfU9o8d/9pwgK2A==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "@electron/get": "^2.0.0", +- "@types/node": "^22.7.7", ++ "@types/node": "^24.9.0", + "extract-zip": "^2.0.1" + }, + "bin": { +@@ -6985,18 +6984,18 @@ + } + }, + "node_modules/electron-builder": { +- "version": "26.3.2", +- "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.3.2.tgz", +- "integrity": "sha512-Lbfw8KHx1gxmg0tRFKb67hdvqzaz+ha4Ab5l6iQWo3o2yoVImiiJeifs8PSM5evo3BQWCLKtSQaSdZxg1ldIdg==", ++ "version": "26.4.0", ++ "resolved": "https://registry.npmjs.org/electron-builder/-/electron-builder-26.4.0.tgz", ++ "integrity": "sha512-FCUqvdq2AULL+Db2SUGgjOYTbrgkPxZtCjqIZGnjH9p29pTWyesQqBIfvQBKa6ewqde87aWl49n/WyI/NyUBog==", + "dev": true, + "license": "MIT", + "dependencies": { +- "app-builder-lib": "26.3.2", +- "builder-util": "26.3.1", ++ "app-builder-lib": "26.4.0", ++ "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "ci-info": "^4.2.0", +- "dmg-builder": "26.3.2", ++ "dmg-builder": "26.4.0", + "fs-extra": "^10.1.0", + "lazy-val": "^1.0.5", + "simple-update-notifier": "2.0.0", +@@ -7011,15 +7010,15 @@ + } + }, + "node_modules/electron-builder-squirrel-windows": { +- "version": "26.3.2", +- "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.3.2.tgz", +- "integrity": "sha512-SgvOmoulc1Ezmmi2aIh7//Fs9/Yr6B9L55MeBLy3A5Fn1dUnOF7Px4xNBFiw+fEFxrFCej3cCo2JqGOcBi31Pg==", ++ "version": "26.4.0", ++ "resolved": "https://registry.npmjs.org/electron-builder-squirrel-windows/-/electron-builder-squirrel-windows-26.4.0.tgz", ++ "integrity": "sha512-7dvalY38xBzWNaoOJ4sqy2aGIEpl2S1gLPkkB0MHu1Hu5xKQ82il1mKSFlXs6fLpXUso/NmyjdHGlSHDRoG8/w==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { +- "app-builder-lib": "26.3.2", +- "builder-util": "26.3.1", ++ "app-builder-lib": "26.4.0", ++ "builder-util": "26.3.4", + "electron-winstaller": "5.4.0" + } + }, +@@ -7142,14 +7141,14 @@ + } + }, + "node_modules/electron-publish": { +- "version": "26.3.1", +- "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.3.1.tgz", +- "integrity": "sha512-XYGYL/fpQULLW9slTVPelaUOGlKfOTmV2Uda3K+qzFzvNnkGJCj7L0nLVvMuj5cgxpAX+3BhO5HOUb4rv6jikA==", ++ "version": "26.3.4", ++ "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-26.3.4.tgz", ++ "integrity": "sha512-5/ouDPb73SkKuay2EXisPG60LTFTMNHWo2WLrK5GDphnWK9UC+yzYrzVeydj078Yk4WUXi0+TaaZsNd6Zt5k/A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/fs-extra": "^9.0.11", +- "builder-util": "26.3.1", ++ "builder-util": "26.3.4", + "builder-util-runtime": "9.5.1", + "chalk": "^4.1.2", + "form-data": "^4.0.0", +@@ -7204,9 +7203,9 @@ + "license": "ISC" + }, + "node_modules/electron-updater": { +- "version": "6.7.2", +- "resolved": "https://registry.npmjs.org/electron-updater/-/electron-updater-6.7.2.tgz", +- "integrity": "sha512-URw19f7afuB5HQOdxhu5wdnWE+w/lTGsXJ3RdObSJXIkW0i9r3ZUWrd1CjggTrD0qzEuxBODe4VFPM8OBg4qEA==", ++ "version": "6.7.3", ++ "resolved": "https://registry.npmjs.org/electron-updater/-/electron-updater-6.7.3.tgz", ++ "integrity": "sha512-EgkT8Z9noqXKbwc3u5FkJA+r48jwZ5DTUiOkJMOTEEH//n5Am6wfQGz7nvSFEA2oIAMv9jRzn5JKTyWeSKOPgg==", + "dev": true, + "license": "MIT", + "dependencies": { +@@ -7216,7 +7215,7 @@ + "lazy-val": "^1.0.5", + "lodash.escaperegexp": "^4.1.2", + "lodash.isequal": "^4.5.0", +- "semver": "7.7.2", ++ "semver": "~7.7.3", + "tiny-typed-emitter": "^2.1.0" + } + }, +@@ -7297,15 +7296,22 @@ + } + }, + "node_modules/electron/node_modules/@types/node": { +- "version": "22.17.0", +- "resolved": "https://registry.npmjs.org/@types/node/-/node-22.17.0.tgz", +- "integrity": "sha512-bbAKTCqX5aNVryi7qXVMi+OkB3w/OyblodicMbvE38blyAz7GxXf6XYhklokijuPwwVg9sDLKRxt0ZHXQwZVfQ==", ++ "version": "24.10.9", ++ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.9.tgz", ++ "integrity": "sha512-ne4A0IpG3+2ETuREInjPNhUGis1SFjv1d5asp8MzEAGtOZeTeHVDOYqOgqfhvseqg/iXty2hjBf1zAOb7RNiNw==", + "dev": true, + "license": "MIT", + "dependencies": { +- "undici-types": "~6.21.0" ++ "undici-types": "~7.16.0" + } + }, ++ "node_modules/electron/node_modules/undici-types": { ++ "version": "7.16.0", ++ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", ++ "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", ++ "dev": true, ++ "license": "MIT" ++ }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", +@@ -11800,9 +11806,9 @@ + } + }, + "node_modules/node-abi": { +- "version": "4.12.0", +- "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-4.12.0.tgz", +- "integrity": "sha512-bPSN9a/qIEiURzVVO/I7P/8oPeYTSl+vnvVZBXM/8XerKOgA3dMAIUjl+a+lz9VwTowwSKS3EMsgz/vWDXOkuQ==", ++ "version": "4.26.0", ++ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-4.26.0.tgz", ++ "integrity": "sha512-8QwIZqikRvDIkXS2S93LjzhsSPJuIbfaMETWH+Bx8oOT9Sa9UsUtBFQlc3gBNd1+QINjaTloitXr1W3dQLi9Iw==", + "license": "MIT", + "dependencies": { + "semver": "^7.6.3" +@@ -11896,9 +11902,9 @@ + } + }, + "node_modules/node-gyp/node_modules/tar": { +- "version": "7.5.2", +- "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz", +- "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==", ++ "version": "7.5.7", ++ "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.7.tgz", ++ "integrity": "sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ==", + "dev": true, + "license": "BlueOak-1.0.0", + "dependencies": { +@@ -16401,6 +16407,7 @@ + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", ++ "deprecated": "Old versions of tar are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exhorbitant rates) by contacting i@izs.me", + "dev": true, + "license": "ISC", + "dependencies": { +diff --git a/package.json b/package.json +index 3e5c884..96732dd 100644 +--- a/package.json ++++ b/package.json +@@ -133,12 +133,12 @@ + "css-loader": "^7.1.2", + "css-minimizer-webpack-plugin": "^7.0.2", + "del": "^6.1.1", +- "electron": "37.6.1", +- "electron-builder": "^26.3.2", ++ "electron": "40.0.0", ++ "electron-builder": "^26.4.0", + "electron-debug": "^3.2.0", + "electron-devtools-installer": "github:lyswhut/electron-devtools-installer#64596d615c1fc891eefd8aef1dfcb2c87aaadf03", + "electron-to-chromium": "^1.5.262", +- "electron-updater": "6.7.2", ++ "electron-updater": "6.7.3", + "eslint": "^8.57.1", + "eslint-config-standard": "^17.1.0", + "eslint-config-standard-with-typescript": "^43.0.1", diff --git a/pkgs/by-name/lx/lx-music-desktop/package.nix b/pkgs/by-name/lx/lx-music-desktop/package.nix index 7f18f975163a..6b3ae7b625fa 100644 --- a/pkgs/by-name/lx/lx-music-desktop/package.nix +++ b/pkgs/by-name/lx/lx-music-desktop/package.nix @@ -10,22 +10,22 @@ makeWrapper, makeDesktopItem, - electron_37, + electron_40, nodejs_22, commandLineArgs ? "", }: let - electron = electron_37; + electron = electron_40; in -buildNpmPackage rec { +buildNpmPackage (finalAttrs: { pname = "lx-music-desktop"; version = "2.12.0"; src = fetchFromGitHub { owner = "lyswhut"; repo = "lx-music-desktop"; - tag = "v${version}"; + tag = "v${finalAttrs.version}"; hash = "sha256-g4QVpymzoRKIq70aRLXGFmUmIpSiXIZThrp8fumBKTQ="; }; @@ -57,6 +57,7 @@ buildNpmPackage rec { (replaceVars ./electron-builder.patch { electron_version = electron.version; }) + ./electron-version.patch ]; nativeBuildInputs = [ @@ -67,7 +68,7 @@ buildNpmPackage rec { # Npm 11 (nodejs 24) can't resolve all dependencies from the prefetched cache. nodejs = nodejs_22; - npmDepsHash = "sha256-t6I8ch36Yh6N+qZy4/yr/gSyJ3qdyMWss5LbsagEFMQ="; + npmDepsHash = "sha256-BmrY7IXx6Z+sBAemYnOZUBMyLInENMOB6fh/4LoV80w="; makeCacheWritable = true; @@ -123,11 +124,11 @@ buildNpmPackage rec { broken = stdenv.hostPlatform.isDarwin; description = "Music software based on Electron and Vue"; homepage = "https://github.com/lyswhut/lx-music-desktop"; - changelog = "https://github.com/lyswhut/lx-music-desktop/releases/tag/v${version}"; + changelog = "https://github.com/lyswhut/lx-music-desktop/releases/tag/v${finalAttrs.version}"; license = lib.licenses.asl20; platforms = electron.meta.platforms; sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ]; mainProgram = "lx-music-desktop"; maintainers = with lib.maintainers; [ starryreverie ]; }; -} +})