deezer-linux/patches/04-remove-os-information.patch
2025-12-01 17:30:25 +01:00

131 lines
4.3 KiB
Diff

From 3ffa3ccab93f31914779e6e3c24d47e630cd2484 Mon Sep 17 00:00:00 2001
From: josselinonduty <contact@josselinonduty.fr>
Date: Fri, 28 Nov 2025 17:57:21 +0100
Subject: [PATCH] fix: ensure os release is valid; add cli argument to use
exact kernel version
Original patch: Dorian Stoll <dorian.stoll@tmsp.io>
The application sends the kernel version as part of the User-Agent.
However, the Deezer API seems to assume the number to follow semver,
and can get confused when it doesn't. This then leads to some features
like dark mode being reported as unavailable.
e.g: 5.11.0-16-generic works, while 5.15.14-200.fc35.x86_64 doesn't.
The solution is to ignore the actual version and send bogus data that
is known to work.
---
build/main.js | 15 ++++++++++++++-
build/preload.js | 15 ++++++++++++++-
build/renderer.js | 15 ++++++++++++++-
build/titlebar.js | 15 ++++++++++++++-
4 files changed, 56 insertions(+), 4 deletions(-)
diff --git a/build/main.js b/build/main.js
index 307fc24..75182f1 100644
--- a/build/main.js
+++ b/build/main.js
@@ -2,7 +2,20 @@
"use strict";
var __webpack_modules__ = {
857: (module) => {
- module.exports = require("os");
+ var __module_os = require("os");
+ const release = __module_os.release();
+ __module_os.release = () => {
+ if (
+ process.argv.some((arg) => arg === "--keep-kernel") ||
+ "yes" === process.env.DZ_KEEP_KERNEL
+ ) {
+ const matcher = /(\d+\.\d+\.\d+)\.*/;
+ var result = release.match(matcher);
+ return result ? result[1] : "6.4.0";
+ }
+ return "6.4.0";
+ };
+ module.exports = __module_os;
},
944: (module) => {
module.exports = require("macos-version");
diff --git a/build/preload.js b/build/preload.js
index cc6a919..9a90de9 100644
--- a/build/preload.js
+++ b/build/preload.js
@@ -2,7 +2,20 @@
"use strict";
var __webpack_modules__ = {
857: (module) => {
- module.exports = require("os");
+ var __module_os = require("os");
+ const release = __module_os.release();
+ __module_os.release = () => {
+ if (
+ process.argv.some((arg) => arg === "--keep-kernel") ||
+ "yes" === process.env.DZ_KEEP_KERNEL
+ ) {
+ const matcher = /(\d+\.\d+\.\d+)\.*/;
+ var result = release.match(matcher);
+ return result ? result[1] : "6.4.0";
+ }
+ return "6.4.0";
+ };
+ module.exports = __module_os;
},
944: (module) => {
module.exports = require("macos-version");
diff --git a/build/renderer.js b/build/renderer.js
index 6f3c29f..7329ec8 100644
--- a/build/renderer.js
+++ b/build/renderer.js
@@ -2,7 +2,20 @@
"use strict";
var __webpack_modules__ = {
857: (module) => {
- module.exports = require("os");
+ var __module_os = require("os");
+ const release = __module_os.release();
+ __module_os.release = () => {
+ if (
+ process.argv.some((arg) => arg === "--keep-kernel") ||
+ "yes" === process.env.DZ_KEEP_KERNEL
+ ) {
+ const matcher = /(\d+\.\d+\.\d+)\.*/;
+ var result = release.match(matcher);
+ return result ? result[1] : "6.4.0";
+ }
+ return "6.4.0";
+ };
+ module.exports = __module_os;
},
944: (module) => {
module.exports = require("macos-version");
diff --git a/build/titlebar.js b/build/titlebar.js
index c07b3f1..886a825 100644
--- a/build/titlebar.js
+++ b/build/titlebar.js
@@ -2,7 +2,20 @@
"use strict";
var __webpack_modules__ = {
857: (module) => {
- module.exports = require("os");
+ var __module_os = require("os");
+ const release = __module_os.release();
+ __module_os.release = () => {
+ if (
+ process.argv.some((arg) => arg === "--keep-kernel") ||
+ "yes" === process.env.DZ_KEEP_KERNEL
+ ) {
+ const matcher = /(\d+\.\d+\.\d+)\.*/;
+ var result = release.match(matcher);
+ return result ? result[1] : "6.4.0";
+ }
+ return "6.4.0";
+ };
+ module.exports = __module_os;
},
944: (module) => {
module.exports = require("macos-version");
--
2.48.1