From 1d72033564847153e394e8a394ffe87d6d9d845a Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Wed, 2 Apr 2025 17:12:14 -0400 Subject: [PATCH 01/36] maintainers: add kenshineto --- maintainers/maintainer-list.nix | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 04a1e3c0b6d3..f112825695a8 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -13126,6 +13126,14 @@ matrix = "@kenran_:matrix.org"; name = "Johannes Maier"; }; + kenshineto = { + name = "Freya Murphy"; + email = "contact@freyacat.org"; + matrix = "@freya:freya.cat"; + github = "kenshineto"; + githubId = 28487599; + keys = [ { fingerprint = "D9AF 0A42 09B7 C2DE 11A8 84BF ACBC 5536 60D9 993D"; } ]; + }; kentjames = { email = "jameschristopherkent@gmail.com"; github = "KentJames"; From 66ab321a00c88c6b631abf84cb095531599e5250 Mon Sep 17 00:00:00 2001 From: Vincent Laporte Date: Fri, 19 Sep 2025 05:56:49 +0200 Subject: [PATCH 02/36] =?UTF-8?q?ocamlPackages.xtmpl:=200.19.0=20=E2=86=92?= =?UTF-8?q?=201.1.0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ocamlPackages.stog: 1.0.0 → 1.1.0 --- pkgs/applications/misc/stog/default.nix | 9 ++++----- pkgs/development/ocaml-modules/xtmpl/default.nix | 9 +++++---- pkgs/development/ocaml-modules/xtmpl/ppx.nix | 2 -- 3 files changed, 9 insertions(+), 11 deletions(-) diff --git a/pkgs/applications/misc/stog/default.nix b/pkgs/applications/misc/stog/default.nix index e00289353842..2b750ff6cae1 100644 --- a/pkgs/applications/misc/stog/default.nix +++ b/pkgs/applications/misc/stog/default.nix @@ -22,19 +22,18 @@ buildDunePackage rec { pname = "stog"; - version = "1.0.0"; + version = "1.1.0"; minimalOCamlVersion = "4.13"; src = fetchFromGitLab { domain = "framagit.org"; owner = "zoggy"; repo = "stog"; - rev = version; - hash = "sha256-hMb6D6VSq2o2NjycwxZt3mZKy1FR+3afEwbOmTc991g="; + tag = version; + hash = "sha256-seaVco5AoOxjEuw8zYsrA25vcyo1Un3eUJUU9FT57WU="; }; nativeBuildInputs = [ menhir ]; buildInputs = [ - fmt lwt_ppx ocf_ppx ppx_blob @@ -43,11 +42,11 @@ buildDunePackage rec { propagatedBuildInputs = [ dune-build-info dune-site + fmt higlo logs lwt ocf - ppx_blob ptime uri uutf diff --git a/pkgs/development/ocaml-modules/xtmpl/default.nix b/pkgs/development/ocaml-modules/xtmpl/default.nix index 7350e31df8c6..b6ba79499a6b 100644 --- a/pkgs/development/ocaml-modules/xtmpl/default.nix +++ b/pkgs/development/ocaml-modules/xtmpl/default.nix @@ -3,6 +3,7 @@ buildDunePackage, fetchFromGitLab, iri, + logs, re, sedlex, uutf, @@ -10,18 +11,18 @@ buildDunePackage rec { pname = "xtmpl"; - version = "0.19.0"; - duneVersion = "3"; + version = "1.1.0"; src = fetchFromGitLab { domain = "framagit.org"; owner = "zoggy"; repo = "xtmpl"; - rev = version; - sha256 = "sha256:0vwj0aayg60wm98d91fg3hmj90730liljy4cn8771dpxvz8m07bw"; + tag = version; + hash = "sha256-CgVbSjHuRp+5IZdfkxGzaBP8p7pQdXu6S/MMgiPMw3E="; }; propagatedBuildInputs = [ iri + logs re sedlex uutf diff --git a/pkgs/development/ocaml-modules/xtmpl/ppx.nix b/pkgs/development/ocaml-modules/xtmpl/ppx.nix index 39200face2cd..3206c31bac17 100644 --- a/pkgs/development/ocaml-modules/xtmpl/ppx.nix +++ b/pkgs/development/ocaml-modules/xtmpl/ppx.nix @@ -6,8 +6,6 @@ buildDunePackage { pname = "xtmpl_ppx"; - minimalOCamlVersion = "4.11"; - duneVersion = "3"; inherit (xtmpl) src version; From fa3a31258bae321986bebfea40b2c4901468b88d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Tue, 23 Sep 2025 05:21:22 -0700 Subject: [PATCH 03/36] python3Packages.pycaption: 2.2.16 -> 2.2.18 Diff: https://github.com/pbs/pycaption/compare/2.2.16...2.2.18 Changelog: https://github.com/pbs/pycaption/blob/2.2.18/docs/changelog.rst --- .../python-modules/pycaption/default.nix | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/pkgs/development/python-modules/pycaption/default.nix b/pkgs/development/python-modules/pycaption/default.nix index 438fe2ee5bfc..3252fe500917 100644 --- a/pkgs/development/python-modules/pycaption/default.nix +++ b/pkgs/development/python-modules/pycaption/default.nix @@ -1,7 +1,6 @@ { lib, buildPythonPackage, - pythonOlder, fetchFromGitHub, setuptools, beautifulsoup4, @@ -14,17 +13,14 @@ buildPythonPackage rec { pname = "pycaption"; - version = "2.2.16"; - - disabled = pythonOlder "3.8"; - + version = "2.2.18"; pyproject = true; src = fetchFromGitHub { owner = "pbs"; repo = "pycaption"; tag = version; - hash = "sha256-w617mOxvL1alj7jauH4TVsYO0wxMHIFjevdhb4+542s="; + hash = "sha256-7XI7vZiFNIvRD1enXC7SffqGIRMX6lPfcioLPJuszEk="; }; build-system = [ setuptools ]; @@ -44,11 +40,11 @@ buildPythonPackage rec { pytestCheckHook ]; - meta = with lib; { - changelog = "https://github.com/pbs/pycaption/blob/${version}/docs/changelog.rst"; + meta = { + changelog = "https://github.com/pbs/pycaption/blob/${src.tag}/docs/changelog.rst"; description = "Closed caption converter"; homepage = "https://github.com/pbs/pycaption"; - license = licenses.asl20; - maintainers = with maintainers; [ dotlambda ]; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dotlambda ]; }; } From 4ebe462206b9e8f92e04239bebd91b3e04bad860 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Tue, 23 Sep 2025 17:47:04 +0000 Subject: [PATCH 04/36] paretosecurity: 0.3.6 -> 0.3.8 --- pkgs/by-name/pa/paretosecurity/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/pa/paretosecurity/package.nix b/pkgs/by-name/pa/paretosecurity/package.nix index f9660d0e7cae..0a8a9eae63d1 100644 --- a/pkgs/by-name/pa/paretosecurity/package.nix +++ b/pkgs/by-name/pa/paretosecurity/package.nix @@ -17,16 +17,16 @@ buildGoModule (finalAttrs: { webkitgtk_4_1 ]; pname = "paretosecurity"; - version = "0.3.6"; + version = "0.3.8"; src = fetchFromGitHub { owner = "ParetoSecurity"; repo = "agent"; rev = finalAttrs.version; - hash = "sha256-7orZ9+vLUooHOmgw/i1JP6wOFvGaChX+EujtuYipxm0="; + hash = "sha256-pqqcyWFyJX5IJkkLxAafbQu/8yygBsQL1/BAENFdk4g="; }; - vendorHash = "sha256-y9x5RplVOr4mIOPTg86VvFWXkvZ1FTc9Ulc/yXb9/WU="; + vendorHash = "sha256-6OQ9SPr9z+uoGeeJwo3jrr1nMECcHgULMvjn2G4uLx4="; proxyVendor = true; # Skip building the Windows installer From cb2b06430003e39c0a033a3e398f5ca9f51d9af3 Mon Sep 17 00:00:00 2001 From: "R. Ryantm" Date: Wed, 24 Sep 2025 08:42:51 +0000 Subject: [PATCH 05/36] pmix: 5.0.8 -> 5.0.9 --- pkgs/by-name/pm/pmix/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/pm/pmix/package.nix b/pkgs/by-name/pm/pmix/package.nix index c5647b834b25..7c9f41c9874f 100644 --- a/pkgs/by-name/pm/pmix/package.nix +++ b/pkgs/by-name/pm/pmix/package.nix @@ -20,13 +20,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "pmix"; - version = "5.0.8"; + version = "5.0.9"; src = fetchFromGitHub { repo = "openpmix"; owner = "openpmix"; tag = "v${finalAttrs.version}"; - hash = "sha256-oYqDFXycNCYv0YK4VbkW5SQWLq+FTJEyY9rvH50nbYI="; + hash = "sha256-3z3NZPssaKBujulASYEJXwX/dhyCQxmRmjy31kOMpAQ="; fetchSubmodules = true; }; From 516785e5eeee7d3523d9cda0f0d2193c9f7a6eab Mon Sep 17 00:00:00 2001 From: Freya Murphy Date: Wed, 2 Apr 2025 17:12:27 -0400 Subject: [PATCH 06/36] unofficial-homestuck-collection: init at 2.7.2 --- .../0001-disable-git-rev-check.patch | 47 +++++++ .../0002-disable-update-check.patch | 63 ++++++++++ ...make-compatible-with-native-electron.patch | 101 +++++++++++++++ .../electron-builder.yml | 21 ++++ .../package.nix | 117 ++++++++++++++++++ 5 files changed, 349 insertions(+) create mode 100644 pkgs/by-name/un/unofficial-homestuck-collection/0001-disable-git-rev-check.patch create mode 100644 pkgs/by-name/un/unofficial-homestuck-collection/0002-disable-update-check.patch create mode 100644 pkgs/by-name/un/unofficial-homestuck-collection/0003-make-compatible-with-native-electron.patch create mode 100644 pkgs/by-name/un/unofficial-homestuck-collection/electron-builder.yml create mode 100644 pkgs/by-name/un/unofficial-homestuck-collection/package.nix diff --git a/pkgs/by-name/un/unofficial-homestuck-collection/0001-disable-git-rev-check.patch b/pkgs/by-name/un/unofficial-homestuck-collection/0001-disable-git-rev-check.patch new file mode 100644 index 000000000000..a02da277acd4 --- /dev/null +++ b/pkgs/by-name/un/unofficial-homestuck-collection/0001-disable-git-rev-check.patch @@ -0,0 +1,47 @@ +From 9f69077286540c75a245b44f6fd7b7cd03da2d44 Mon Sep 17 00:00:00 2001 +From: Freya Murphy +Date: Sun, 20 Jul 2025 11:53:51 -0400 +Subject: [PATCH 1/3] disable git rev check + +--- + vue.config.js | 21 +++------------------ + 1 file changed, 3 insertions(+), 18 deletions(-) + +diff --git a/vue.config.js b/vue.config.js +index 04b61d3..559b119 100644 +--- a/vue.config.js ++++ b/vue.config.js +@@ -1,27 +1,12 @@ + const webpack = require('webpack') + const { execSync } = require('child_process') + +-const git_branch = execSync('git rev-parse --abbrev-ref HEAD').toString() +- + var build_info = { +- 'process.env.BUILD_BRANCH': JSON.stringify( +- git_branch.trim() +- ), ++ 'process.env.BUILD_BRANCH': "@git_branch@", + 'process.env.BUILD_DATE': JSON.stringify(new Date().toISOString()), + 'process.env.BUILD_PLATFORM': JSON.stringify(process.platform), +- 'process.env.BUILD_GIT_REVISION': JSON.stringify( +- execSync('git rev-parse HEAD').toString().trim() +- ) +-} +- +-try { +- const git_remote = execSync(`git config --get branch.${git_branch.trim()}.remote`).toString() +- const git_remote_url = execSync(`git config --get remote.${git_remote.trim()}.url`).toString() +- +- build_info['process.env.BUILD_GIT_REMOTE'] = JSON.stringify(git_remote_url.trim()) +-} catch (e) { +- build_info['process.env.BUILD_GIT_REMOTE'] = JSON.stringify("(no remote)") +- console.warn("No git remote") ++ 'process.env.BUILD_GIT_REVISION': "@git_revision@", ++ 'process.env.BUILD_GIT_REMOTE': "@git_remote@", + } + + module.exports = { +-- +2.50.1 + diff --git a/pkgs/by-name/un/unofficial-homestuck-collection/0002-disable-update-check.patch b/pkgs/by-name/un/unofficial-homestuck-collection/0002-disable-update-check.patch new file mode 100644 index 000000000000..b36ebdaec5ba --- /dev/null +++ b/pkgs/by-name/un/unofficial-homestuck-collection/0002-disable-update-check.patch @@ -0,0 +1,63 @@ +From 03ab3354eb9acb41c271238e7b9a5e77570809ae Mon Sep 17 00:00:00 2001 +From: Freya Murphy +Date: Sun, 20 Jul 2025 12:06:21 -0400 +Subject: [PATCH 2/3] disable update check + +--- + src/components/SystemPages/Settings.vue | 15 +++++++++------ + src/components/UIElements/Updater.vue | 13 +------------ + 2 files changed, 10 insertions(+), 18 deletions(-) + +diff --git a/src/components/SystemPages/Settings.vue b/src/components/SystemPages/Settings.vue +index 3371358..47c5ea6 100644 +--- a/src/components/SystemPages/Settings.vue ++++ b/src/components/SystemPages/Settings.vue +@@ -598,12 +598,15 @@ export default { + label: "Use system window decorations", + desc: "Use OS-native window decorations instead of the electron title bar. Will restart the application.", + platform_whitelist: ['electron'] +- }, { +- model: "allowSysUpdateNotifs", +- label: "Update notifications", +- desc: "Unless this setting is disabled, the collection will check to see if there's a new version of the app available when it starts up and alert you if there is.", +- platform_whitelist: ['electron'] +- }, { ++ }, ++ // MOD: patch out update notifs ++ // { ++ // model: "allowSysUpdateNotifs", ++ // label: "Update notifications", ++ // desc: "Unless this setting is disabled, the collection will check to see if there's a new version of the app available when it starts up and alert you if there is.", ++ // platform_whitelist: ['electron'] ++ // }, ++ { + model: "useTabbedBrowsing", + label: "Tabbed Browsing", + desc: "By default, the web app only shows one page at a time, like a standard website. This setting re-enables the in-app tab bar, and the app will store your tabs in settings.", +diff --git a/src/components/UIElements/Updater.vue b/src/components/UIElements/Updater.vue +index 6b3f677..d9bae45 100644 +--- a/src/components/UIElements/Updater.vue ++++ b/src/components/UIElements/Updater.vue +@@ -73,18 +73,7 @@ export default { + watch: { + }, + mounted(){ +- const is_flatpak = !!(process.env.container) +- if (this.$localData.settings.allowSysUpdateNotifs && !is_flatpak) { +- const now = new Date() +- const last_checked = new Date(this.$localData.settings.lastCheckedUpdate) +- const one_day = (12 * 60 * 60 * 1000) +- if (last_checked == "Invalid Date" || now - last_checked > one_day) { +- this.doUpdateCheck() +- this.$localData.settings.lastCheckedUpdate = now.toISOString() +- } else { +- this.$logger.info("Skipping update check, already checked", last_checked) +- } +- } ++ // MOD: patch out update check + } + } + +-- +2.50.1 + diff --git a/pkgs/by-name/un/unofficial-homestuck-collection/0003-make-compatible-with-native-electron.patch b/pkgs/by-name/un/unofficial-homestuck-collection/0003-make-compatible-with-native-electron.patch new file mode 100644 index 000000000000..522c201dde15 --- /dev/null +++ b/pkgs/by-name/un/unofficial-homestuck-collection/0003-make-compatible-with-native-electron.patch @@ -0,0 +1,101 @@ +From 6be6ba5922363b478eca447135cd2421f8c598ab Mon Sep 17 00:00:00 2001 +From: Freya Murphy +Date: Sun, 20 Jul 2025 12:01:12 -0400 +Subject: [PATCH 3/3] make compatible with native electron + +--- + src/background.js | 15 +++++---------- + src/components/SystemPages/Settings.vue | 12 +++++++----- + src/components/UIElements/MediaEmbed.vue | 20 ++------------------ + 3 files changed, 14 insertions(+), 33 deletions(-) + +diff --git a/src/background.js b/src/background.js +index d75c5fc..6fa2256 100644 +--- a/src/background.js ++++ b/src/background.js +@@ -314,16 +314,8 @@ if (assetDir === undefined) { + is_first_run = true + } else { + try { +- if (store.has('settings.ruffleFallback') && store.get('settings.ruffleFallback') === true) { +- logger.info("Ruffle fallback enabled, disabling ppapi-level flash player") +- } else { +- // Pick the appropriate flash plugin for the user's platform +- const flashPath = getFlashPath() +- +- if (fs.existsSync(flashPath)) { +- app.commandLine.appendSwitch('ppapi-flash-path', flashPath) +- } else throw Error(`Flash plugin not located at ${flashPath}`) +- } ++ // MOD: always use ruffle ++ logger.info("Ruffle fallback enabled, disabling ppapi-level flash player") + + if (store.has('settings.smoothScrolling') && store.get('settings.smoothScrolling') === false) + app.commandLine.appendSwitch('disable-smooth-scrolling') +@@ -755,6 +747,9 @@ async function createWindow () { + autoHideMenuBar: true, + webPreferences: { + nodeIntegration: process.env.ELECTRON_NODE_INTEGRATION, ++ // MOD: disable isolation to get ++ // collection to work with electron 35 ++ contextIsolation: false, + enableRemoteModule: true, + plugins: true, + webviewTag: true +diff --git a/src/components/SystemPages/Settings.vue b/src/components/SystemPages/Settings.vue +index 47c5ea6..5630625 100644 +--- a/src/components/SystemPages/Settings.vue ++++ b/src/components/SystemPages/Settings.vue +@@ -619,11 +619,13 @@ export default { + label: "Reduce Motion", + desc: "Attempts to reduce the amount of automatic motion in the comic by replacing animated gifs with a manual scrubber, and requiring an explicit click before playing Flash animations.", + platform_whitelist: ['electron'] +- }, { +- model: "ruffleFallback", +- label: "Ruffle flash emulation fallback", +- desc: "If the built-in flash player is non-functional, use the Ruffle Flash emulator in place of Flash." +- } ++ }, ++ // MOD: always use ruffle ++ // { ++ // model: "ruffleFallback", ++ // label: "Ruffle flash emulation fallback", ++ // desc: "If the built-in flash player is non-functional, use the Ruffle Flash emulator in place of Flash." ++ // } + ], + retconList: [ + { +diff --git a/src/components/UIElements/MediaEmbed.vue b/src/components/UIElements/MediaEmbed.vue +index 760fec4..53f34ff 100644 +--- a/src/components/UIElements/MediaEmbed.vue ++++ b/src/components/UIElements/MediaEmbed.vue +@@ -156,24 +156,8 @@ export default { + return ret + }, + ruffleEmbed() { +- // At some point between 2025.3.14 and 2025.4.13 ruffle stopped supporting our old runtime. Damn. --> +- if (this.$localData.settings.ruffleFallback) { +- if (this.$isWebApp) { +- return '