From 239960683b6c7f1347e1798b0e179a8a46628728 Mon Sep 17 00:00:00 2001 From: Youwes09 Date: Sun, 17 May 2026 00:12:06 -0500 Subject: [PATCH 1/4] Chore: Bump for 0.9.4 --- PKGBUILD | 2 +- flake.nix | 2 +- io.github.moku_project.Moku.yml | 4 +- packaging/cargo-sources.json | 100 ++++++++++++++++---------------- src-tauri/Cargo.lock | 42 +++++++------- src-tauri/Cargo.toml | 2 +- src-tauri/tauri.conf.json | 2 +- 7 files changed, 77 insertions(+), 77 deletions(-) diff --git a/PKGBUILD b/PKGBUILD index cfbaa67..07cae7b 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -1,5 +1,5 @@ pkgname=moku -pkgver=0.9.3 +pkgver=0.9.4 pkgrel=1 pkgdesc="Native Linux manga reader frontend for Suwayomi-Server" arch=('x86_64') diff --git a/flake.nix b/flake.nix index 1f388e5..657837e 100644 --- a/flake.nix +++ b/flake.nix @@ -22,7 +22,7 @@ perSystem = { system, lib, ... }: let - version = "0.9.3"; + version = "0.9.4"; pkgs = import inputs.nixpkgs { inherit system; diff --git a/io.github.moku_project.Moku.yml b/io.github.moku_project.Moku.yml index 9a76a81..542b1a6 100644 --- a/io.github.moku_project.Moku.yml +++ b/io.github.moku_project.Moku.yml @@ -179,11 +179,11 @@ modules: sources: - type: git url: https://github.com/moku-project/Moku.git - tag: v0.9.3 + tag: v0.9.4 commit: 9f8bf6ffc11e0808acc735132e1aeff8b3bf1e09 - type: file path: packaging/frontend-dist.tar.gz - sha256: c690eb3cb24e89fec3f4e92f7a4a82d9a465b58f6680a332c1e44f1361ac96af + sha256: 7db288b4b54277aa82b6ec5b21fc31a1e71f8246c50a74777500083b806c1fa5 - packaging/cargo-sources.json - type: inline dest: src-tauri/.cargo diff --git a/packaging/cargo-sources.json b/packaging/cargo-sources.json index e1b086e..b9d9e42 100644 --- a/packaging/cargo-sources.json +++ b/packaging/cargo-sources.json @@ -3024,14 +3024,14 @@ { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/openssl/openssl-0.10.79.crate", - "sha256": "bf0b434746ee2832f4f0baf10137e1cabb18cbe6912c69e2e33263c45250f542", - "dest": "cargo/vendor/openssl-0.10.79" + "url": "https://static.crates.io/crates/openssl/openssl-0.10.80.crate", + "sha256": "a45fa2aa886c42762255da344f0a0d313e254066c46aad76f300c3d3da62d967", + "dest": "cargo/vendor/openssl-0.10.80" }, { "type": "inline", - "contents": "{\"package\": \"bf0b434746ee2832f4f0baf10137e1cabb18cbe6912c69e2e33263c45250f542\", \"files\": {}}", - "dest": "cargo/vendor/openssl-0.10.79", + "contents": "{\"package\": \"a45fa2aa886c42762255da344f0a0d313e254066c46aad76f300c3d3da62d967\", \"files\": {}}", + "dest": "cargo/vendor/openssl-0.10.80", "dest-filename": ".cargo-checksum.json" }, { @@ -3063,14 +3063,14 @@ { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/openssl-sys/openssl-sys-0.9.115.crate", - "sha256": "158fe5b292746440aa6e7a7e690e55aeb72d41505e2804c23c6973ad0e9c9781", - "dest": "cargo/vendor/openssl-sys-0.9.115" + "url": "https://static.crates.io/crates/openssl-sys/openssl-sys-0.9.116.crate", + "sha256": "f28a22dc7140cda5f096e5e7724a6962ca81a7f8bfd2979f9b18c11af56318c4", + "dest": "cargo/vendor/openssl-sys-0.9.116" }, { "type": "inline", - "contents": "{\"package\": \"158fe5b292746440aa6e7a7e690e55aeb72d41505e2804c23c6973ad0e9c9781\", \"files\": {}}", - "dest": "cargo/vendor/openssl-sys-0.9.115", + "contents": "{\"package\": \"f28a22dc7140cda5f096e5e7724a6962ca81a7f8bfd2979f9b18c11af56318c4\", \"files\": {}}", + "dest": "cargo/vendor/openssl-sys-0.9.116", "dest-filename": ".cargo-checksum.json" }, { @@ -4688,66 +4688,66 @@ { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri/tauri-2.11.1.crate", - "sha256": "b93bd86d231f0a8138f11a02a584769fe4b703dc36ae133d783228dbc4801405", - "dest": "cargo/vendor/tauri-2.11.1" + "url": "https://static.crates.io/crates/tauri/tauri-2.11.2.crate", + "sha256": "437404997acf375d85f1177afa7e11bb971f274ed6a7b83a2a3e339015f4cc28", + "dest": "cargo/vendor/tauri-2.11.2" }, { "type": "inline", - "contents": "{\"package\": \"b93bd86d231f0a8138f11a02a584769fe4b703dc36ae133d783228dbc4801405\", \"files\": {}}", - "dest": "cargo/vendor/tauri-2.11.1", + "contents": "{\"package\": \"437404997acf375d85f1177afa7e11bb971f274ed6a7b83a2a3e339015f4cc28\", \"files\": {}}", + "dest": "cargo/vendor/tauri-2.11.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-build/tauri-build-2.6.1.crate", - "sha256": "3a318b234cc2dea65f575467bafcfb76286bce228ebc3778e337d61d03213007", - "dest": "cargo/vendor/tauri-build-2.6.1" + "url": "https://static.crates.io/crates/tauri-build/tauri-build-2.6.2.crate", + "sha256": "4aa1f9055fc23919a54e4e125052bed16ed04aef0487086e758fe01a67b451c7", + "dest": "cargo/vendor/tauri-build-2.6.2" }, { "type": "inline", - "contents": "{\"package\": \"3a318b234cc2dea65f575467bafcfb76286bce228ebc3778e337d61d03213007\", \"files\": {}}", - "dest": "cargo/vendor/tauri-build-2.6.1", + "contents": "{\"package\": \"4aa1f9055fc23919a54e4e125052bed16ed04aef0487086e758fe01a67b451c7\", \"files\": {}}", + "dest": "cargo/vendor/tauri-build-2.6.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-codegen/tauri-codegen-2.6.1.crate", - "sha256": "6bd11644962add2549a60b7e7c6800f17d7020156e02f516021d8103e80cc528", - "dest": "cargo/vendor/tauri-codegen-2.6.1" + "url": "https://static.crates.io/crates/tauri-codegen/tauri-codegen-2.6.2.crate", + "sha256": "e4a0319528a025a38c4078e7dae2c446f4e63620ddb0659a643ede1cb38f90e9", + "dest": "cargo/vendor/tauri-codegen-2.6.2" }, { "type": "inline", - "contents": "{\"package\": \"6bd11644962add2549a60b7e7c6800f17d7020156e02f516021d8103e80cc528\", \"files\": {}}", - "dest": "cargo/vendor/tauri-codegen-2.6.1", + "contents": "{\"package\": \"e4a0319528a025a38c4078e7dae2c446f4e63620ddb0659a643ede1cb38f90e9\", \"files\": {}}", + "dest": "cargo/vendor/tauri-codegen-2.6.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-macros/tauri-macros-2.6.1.crate", - "sha256": "fed9d3742a37a355d2e47c9af924e9fbc112abb76f9835d35d4780e318419502", - "dest": "cargo/vendor/tauri-macros-2.6.1" + "url": "https://static.crates.io/crates/tauri-macros/tauri-macros-2.6.2.crate", + "sha256": "ae6cb4e3896c21d2f6da5b31251d2faea0153bba56ed0e970f918115dbee4924", + "dest": "cargo/vendor/tauri-macros-2.6.2" }, { "type": "inline", - "contents": "{\"package\": \"fed9d3742a37a355d2e47c9af924e9fbc112abb76f9835d35d4780e318419502\", \"files\": {}}", - "dest": "cargo/vendor/tauri-macros-2.6.1", + "contents": "{\"package\": \"ae6cb4e3896c21d2f6da5b31251d2faea0153bba56ed0e970f918115dbee4924\", \"files\": {}}", + "dest": "cargo/vendor/tauri-macros-2.6.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-plugin/tauri-plugin-2.6.1.crate", - "sha256": "eefb2c18e8a605c23edb48fc56bb77381199e1a1e7f6ff0c9b970afe7b3cb8ee", - "dest": "cargo/vendor/tauri-plugin-2.6.1" + "url": "https://static.crates.io/crates/tauri-plugin/tauri-plugin-2.6.2.crate", + "sha256": "e126abc9e84e35cdfd01596140a73a1850cdb0df0a23acf0185776c30b469a6e", + "dest": "cargo/vendor/tauri-plugin-2.6.2" }, { "type": "inline", - "contents": "{\"package\": \"eefb2c18e8a605c23edb48fc56bb77381199e1a1e7f6ff0c9b970afe7b3cb8ee\", \"files\": {}}", - "dest": "cargo/vendor/tauri-plugin-2.6.1", + "contents": "{\"package\": \"e126abc9e84e35cdfd01596140a73a1850cdb0df0a23acf0185776c30b469a6e\", \"files\": {}}", + "dest": "cargo/vendor/tauri-plugin-2.6.2", "dest-filename": ".cargo-checksum.json" }, { @@ -4862,40 +4862,40 @@ { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-runtime/tauri-runtime-2.11.1.crate", - "sha256": "8fef478ba1d2ac21c2d528740b24d0cb315e1e8b1111aae53fafac34804371fc", - "dest": "cargo/vendor/tauri-runtime-2.11.1" + "url": "https://static.crates.io/crates/tauri-runtime/tauri-runtime-2.11.2.crate", + "sha256": "48222d7116c8807eaa6fe2f372e023fae125084e61e6eca6d70b7961cdf129ef", + "dest": "cargo/vendor/tauri-runtime-2.11.2" }, { "type": "inline", - "contents": "{\"package\": \"8fef478ba1d2ac21c2d528740b24d0cb315e1e8b1111aae53fafac34804371fc\", \"files\": {}}", - "dest": "cargo/vendor/tauri-runtime-2.11.1", + "contents": "{\"package\": \"48222d7116c8807eaa6fe2f372e023fae125084e61e6eca6d70b7961cdf129ef\", \"files\": {}}", + "dest": "cargo/vendor/tauri-runtime-2.11.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-runtime-wry/tauri-runtime-wry-2.11.1.crate", - "sha256": "a3989df2ae1c476404fe0a2e8ffc4cfbde97e51efd613c2bb5355fbc9ab52cf0", - "dest": "cargo/vendor/tauri-runtime-wry-2.11.1" + "url": "https://static.crates.io/crates/tauri-runtime-wry/tauri-runtime-wry-2.11.2.crate", + "sha256": "b83849ee63ecb27a8e8d0fe51915ca215076914aca43f96db1179f0f415f6cd9", + "dest": "cargo/vendor/tauri-runtime-wry-2.11.2" }, { "type": "inline", - "contents": "{\"package\": \"a3989df2ae1c476404fe0a2e8ffc4cfbde97e51efd613c2bb5355fbc9ab52cf0\", \"files\": {}}", - "dest": "cargo/vendor/tauri-runtime-wry-2.11.1", + "contents": "{\"package\": \"b83849ee63ecb27a8e8d0fe51915ca215076914aca43f96db1179f0f415f6cd9\", \"files\": {}}", + "dest": "cargo/vendor/tauri-runtime-wry-2.11.2", "dest-filename": ".cargo-checksum.json" }, { "type": "archive", "archive-type": "tar-gzip", - "url": "https://static.crates.io/crates/tauri-utils/tauri-utils-2.9.1.crate", - "sha256": "d57200389a2f82b4b0a40ae29ca19b6978116e8f4d4e974c3234ce40c0ffbdec", - "dest": "cargo/vendor/tauri-utils-2.9.1" + "url": "https://static.crates.io/crates/tauri-utils/tauri-utils-2.9.2.crate", + "sha256": "092379df9a707631978e6c56b1bc2401d387f01e2d4a3c123360d167bbb9aa95", + "dest": "cargo/vendor/tauri-utils-2.9.2" }, { "type": "inline", - "contents": "{\"package\": \"d57200389a2f82b4b0a40ae29ca19b6978116e8f4d4e974c3234ce40c0ffbdec\", \"files\": {}}", - "dest": "cargo/vendor/tauri-utils-2.9.1", + "contents": "{\"package\": \"092379df9a707631978e6c56b1bc2401d387f01e2d4a3c123360d167bbb9aa95\", \"files\": {}}", + "dest": "cargo/vendor/tauri-utils-2.9.2", "dest-filename": ".cargo-checksum.json" }, { diff --git a/src-tauri/Cargo.lock b/src-tauri/Cargo.lock index abac972..6ec754c 100644 --- a/src-tauri/Cargo.lock +++ b/src-tauri/Cargo.lock @@ -2005,7 +2005,7 @@ dependencies = [ [[package]] name = "moku" -version = "0.9.3" +version = "0.9.4" dependencies = [ "dirs 5.0.1", "reqwest 0.12.28", @@ -2379,9 +2379,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.79" +version = "0.10.80" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf0b434746ee2832f4f0baf10137e1cabb18cbe6912c69e2e33263c45250f542" +checksum = "a45fa2aa886c42762255da344f0a0d313e254066c46aad76f300c3d3da62d967" dependencies = [ "bitflags 2.11.1", "cfg-if", @@ -2410,9 +2410,9 @@ checksum = "7c87def4c32ab89d880effc9e097653c8da5d6ef28e6b539d313baaacfbafcbe" [[package]] name = "openssl-sys" -version = "0.9.115" +version = "0.9.116" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "158fe5b292746440aa6e7a7e690e55aeb72d41505e2804c23c6973ad0e9c9781" +checksum = "f28a22dc7140cda5f096e5e7724a6962ca81a7f8bfd2979f9b18c11af56318c4" dependencies = [ "cc", "libc", @@ -3811,9 +3811,9 @@ checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1" [[package]] name = "tauri" -version = "2.11.1" +version = "2.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b93bd86d231f0a8138f11a02a584769fe4b703dc36ae133d783228dbc4801405" +checksum = "437404997acf375d85f1177afa7e11bb971f274ed6a7b83a2a3e339015f4cc28" dependencies = [ "anyhow", "bytes", @@ -3862,9 +3862,9 @@ dependencies = [ [[package]] name = "tauri-build" -version = "2.6.1" +version = "2.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a318b234cc2dea65f575467bafcfb76286bce228ebc3778e337d61d03213007" +checksum = "4aa1f9055fc23919a54e4e125052bed16ed04aef0487086e758fe01a67b451c7" dependencies = [ "anyhow", "cargo_toml", @@ -3883,9 +3883,9 @@ dependencies = [ [[package]] name = "tauri-codegen" -version = "2.6.1" +version = "2.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bd11644962add2549a60b7e7c6800f17d7020156e02f516021d8103e80cc528" +checksum = "e4a0319528a025a38c4078e7dae2c446f4e63620ddb0659a643ede1cb38f90e9" dependencies = [ "base64 0.22.1", "brotli", @@ -3910,9 +3910,9 @@ dependencies = [ [[package]] name = "tauri-macros" -version = "2.6.1" +version = "2.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed9d3742a37a355d2e47c9af924e9fbc112abb76f9835d35d4780e318419502" +checksum = "ae6cb4e3896c21d2f6da5b31251d2faea0153bba56ed0e970f918115dbee4924" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -3924,9 +3924,9 @@ dependencies = [ [[package]] name = "tauri-plugin" -version = "2.6.1" +version = "2.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eefb2c18e8a605c23edb48fc56bb77381199e1a1e7f6ff0c9b970afe7b3cb8ee" +checksum = "e126abc9e84e35cdfd01596140a73a1850cdb0df0a23acf0185776c30b469a6e" dependencies = [ "anyhow", "glob", @@ -4088,9 +4088,9 @@ dependencies = [ [[package]] name = "tauri-runtime" -version = "2.11.1" +version = "2.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fef478ba1d2ac21c2d528740b24d0cb315e1e8b1111aae53fafac34804371fc" +checksum = "48222d7116c8807eaa6fe2f372e023fae125084e61e6eca6d70b7961cdf129ef" dependencies = [ "cookie", "dpi", @@ -4113,9 +4113,9 @@ dependencies = [ [[package]] name = "tauri-runtime-wry" -version = "2.11.1" +version = "2.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3989df2ae1c476404fe0a2e8ffc4cfbde97e51efd613c2bb5355fbc9ab52cf0" +checksum = "b83849ee63ecb27a8e8d0fe51915ca215076914aca43f96db1179f0f415f6cd9" dependencies = [ "gtk", "http", @@ -4139,9 +4139,9 @@ dependencies = [ [[package]] name = "tauri-utils" -version = "2.9.1" +version = "2.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d57200389a2f82b4b0a40ae29ca19b6978116e8f4d4e974c3234ce40c0ffbdec" +checksum = "092379df9a707631978e6c56b1bc2401d387f01e2d4a3c123360d167bbb9aa95" dependencies = [ "anyhow", "brotli", diff --git a/src-tauri/Cargo.toml b/src-tauri/Cargo.toml index 91a6d2e..e4b555d 100644 --- a/src-tauri/Cargo.toml +++ b/src-tauri/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "moku" -version = "0.9.3" +version = "0.9.4" edition = "2021" [lib] diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json index 76c06e7..18a2d48 100644 --- a/src-tauri/tauri.conf.json +++ b/src-tauri/tauri.conf.json @@ -1,7 +1,7 @@ { "$schema": "https://schema.tauri.app/config/2", "productName": "Moku", - "version": "0.9.3", + "version": "0.9.4", "identifier": "io.github.MokuProject.Moku", "build": { "frontendDist": "../dist", From f161fc08a221e1f592d122be583f98b997c52c3b Mon Sep 17 00:00:00 2001 From: Youwes09 Date: Sun, 17 May 2026 00:14:22 -0500 Subject: [PATCH 2/4] Chore: Post-Bump 0.9.4 --- PKGBUILD | 2 +- io.github.moku_project.Moku.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/PKGBUILD b/PKGBUILD index 07cae7b..ee52792 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -22,7 +22,7 @@ source=( "Suwayomi-Server-v2.1.2087.jar::https://github.com/Suwayomi/Suwayomi-Server-preview/releases/download/v2.1.2087/Suwayomi-Server-v2.1.2087.jar" ) sha256sums=( - '4e7e48ea3332f66c840f2b633c7b3f49b535b144f1b6cfc8d63ead24fcab3684' + 'fc1c8268b812e70e56460c8930ca8ae83bcd30eea5903ddfef4e30a3a9a5c1cc' 'f589a422674252394c13b289a9c8be691905bf583efb7f4d5f1501ae5e91e6b3' ) diff --git a/io.github.moku_project.Moku.yml b/io.github.moku_project.Moku.yml index 542b1a6..6bb36a3 100644 --- a/io.github.moku_project.Moku.yml +++ b/io.github.moku_project.Moku.yml @@ -180,7 +180,7 @@ modules: - type: git url: https://github.com/moku-project/Moku.git tag: v0.9.4 - commit: 9f8bf6ffc11e0808acc735132e1aeff8b3bf1e09 + commit: 239960683b6c7f1347e1798b0e179a8a46628728 - type: file path: packaging/frontend-dist.tar.gz sha256: 7db288b4b54277aa82b6ec5b21fc31a1e71f8246c50a74777500083b806c1fa5 From 8aaaf2451ad7eeed27b851a63a0de1b575120e30 Mon Sep 17 00:00:00 2001 From: Youwes09 Date: Sun, 17 May 2026 16:27:57 -0500 Subject: [PATCH 3/4] Fix: Added ServerBinary Off & Flatpak Patches --- io.github.moku_project.Moku.yml | 81 +++++++++++++++++-- src-tauri/src/commands/server.rs | 8 +- src-tauri/src/server/conf.rs | 19 +++-- src/App.svelte | 5 +- .../settings/sections/GeneralSettings.svelte | 4 + src/types/settings.ts | 4 +- 6 files changed, 101 insertions(+), 20 deletions(-) diff --git a/io.github.moku_project.Moku.yml b/io.github.moku_project.Moku.yml index 6bb36a3..9a3e20e 100644 --- a/io.github.moku_project.Moku.yml +++ b/io.github.moku_project.Moku.yml @@ -32,6 +32,77 @@ build-options: CARGO_HOME: /run/build/moku/cargo modules: + - name: intltool + buildsystem: autotools + sources: + - type: archive + url: https://launchpad.net/intltool/trunk/0.51.0/+download/intltool-0.51.0.tar.gz + sha256: 67c74d94196b153b774ab9f89b2fa6c6ba79352407037c8c14d5aeb334e959cd + + - name: libdbusmenu + buildsystem: autotools + build-options: + cflags: -Wno-error + env: + HAVE_VALGRIND_FALSE: '#' + HAVE_VALGRIND_TRUE: '' + config-opts: + - --with-gtk=3 + - --disable-static + - --disable-dumper + - --disable-tests + - --disable-gtk-doc + - --disable-vala + - --disable-introspection + cleanup: + - /include + - /libexec + - /lib/pkgconfig + - /lib/*.la + - /share/doc + - /share/libdbusmenu + - /share/gtk-doc + - /share/gir-1.0 + sources: + - type: archive + url: https://launchpad.net/libdbusmenu/16.04/16.04.0/+download/libdbusmenu-16.04.0.tar.gz + sha256: b9cc4a2acd74509435892823607d966d424bd9ad5d0b00938f27240a1bfa878a + + - name: libayatana-ido + buildsystem: cmake-ninja + config-opts: + - -DENABLE_TESTS=OFF + - -DGSETTINGS_COMPILE=OFF + sources: + - type: git + url: https://github.com/AyatanaIndicators/ayatana-ido.git + tag: 0.10.3 + + - name: libayatana-indicator + buildsystem: cmake-ninja + config-opts: + - -DENABLE_TESTS=OFF + - -DGSETTINGS_COMPILE=OFF + sources: + - type: git + url: https://github.com/AyatanaIndicators/libayatana-indicator.git + tag: 0.9.4 + + - name: libayatana-appindicator + buildsystem: cmake-ninja + config-opts: + - -DENABLE_TESTS=OFF + - -DENABLE_BINDINGS_MONO=OFF + - -DENABLE_BINDINGS_VALA=OFF + - -DGSETTINGS_COMPILE=OFF + sources: + - type: git + url: https://github.com/AyatanaIndicators/libayatana-appindicator.git + tag: 0.5.93 + - type: shell + commands: + - sed -i '/add_subdirectory(docs)/d' CMakeLists.txt + - name: openjdk buildsystem: simple build-commands: @@ -52,9 +123,6 @@ modules: - type: inline dest-filename: catch_abort.c contents: | - // Linux only: - // Attempts to catch SIGTRAP and exit the thread instead of bringing down the whole process - #define _GNU_SOURCE #include #include @@ -117,19 +185,16 @@ modules: DATA_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/Tachidesk" mkdir -p "$DATA_DIR" - # Seed conf on first run if [ ! -f "$DATA_DIR/server.conf" ]; then cp /app/tachidesk/default-conf/server.conf "$DATA_DIR/server.conf" fi - # Force-patch the three keys that cause JCEF/GUI crashes every launch. sed -i \ -e 's|server\.webUIEnabled.*|server.webUIEnabled = false|' \ -e 's|server\.initialOpenInBrowserEnabled.*|server.initialOpenInBrowserEnabled = false|' \ -e 's|server\.systemTrayEnabled.*|server.systemTrayEnabled = false|' \ "$DATA_DIR/server.conf" - # Append keys if absent grep -q 'server\.webUIEnabled' "$DATA_DIR/server.conf" || echo 'server.webUIEnabled = true' >> "$DATA_DIR/server.conf" grep -q 'server\.initialOpenInBrowserEnabled' "$DATA_DIR/server.conf" || echo 'server.initialOpenInBrowserEnabled = false' >> "$DATA_DIR/server.conf" grep -q 'server\.systemTrayEnabled' "$DATA_DIR/server.conf" || echo 'server.systemTrayEnabled = false' >> "$DATA_DIR/server.conf" @@ -166,10 +231,10 @@ modules: CARGO_HOME: /run/build/moku/cargo XDG_DATA_HOME: /run/build/moku/xdg-data TAURI_SKIP_DEVSERVER_CHECK: 'true' - PKG_CONFIG_PATH: /usr/lib/pkgconfig:/usr/share/pkgconfig + PKG_CONFIG_PATH: /usr/lib/pkgconfig:/usr/share/pkgconfig:/app/lib/pkgconfig build-commands: - tar -xzf frontend-dist.tar.gz - - . /usr/lib/sdk/rust-stable/enable.sh && PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig cargo build --release --manifest-path src-tauri/Cargo.toml + - . /usr/lib/sdk/rust-stable/enable.sh && PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig:/app/lib/pkgconfig cargo build --release --manifest-path src-tauri/Cargo.toml - install -Dm755 src-tauri/target/release/moku /app/bin/moku - install -Dm644 packaging/io.github.moku_project.Moku.desktop /app/share/applications/io.github.moku_project.Moku.desktop - install -Dm644 src-tauri/icons/32x32.png /app/share/icons/hicolor/32x32/apps/io.github.moku_project.Moku.png diff --git a/src-tauri/src/commands/server.rs b/src-tauri/src/commands/server.rs index 0dd3341..f999322 100644 --- a/src-tauri/src/commands/server.rs +++ b/src-tauri/src/commands/server.rs @@ -3,7 +3,7 @@ use crate::ServerState; use tauri::Manager; #[tauri::command] -pub fn spawn_server(binary: String, app: tauri::AppHandle) -> Result<(), SpawnError> { +pub fn spawn_server(binary: String, web_ui_enabled: bool, app: tauri::AppHandle) -> Result<(), SpawnError> { { let state = app.state::(); if state.0.lock().unwrap().is_some() { @@ -22,10 +22,10 @@ pub fn spawn_server(binary: String, app: tauri::AppHandle) -> Result<(), SpawnEr server::do_log( &mut log, - &format!("[spawn_server] binary={:?} data_dir={:?}", binary, data_dir), + &format!("[spawn_server] binary={:?} web_ui_enabled={} data_dir={:?}", binary, web_ui_enabled, data_dir), ); - server::conf::seed_server_conf(&data_dir); + server::conf::seed_server_conf(&data_dir, web_ui_enabled); let mut invocation = server::resolve::resolve_server_binary(&binary, &app, &mut log).map_err(|e| { @@ -77,4 +77,4 @@ pub fn spawn_server(binary: String, app: tauri::AppHandle) -> Result<(), SpawnEr pub fn kill_server(app: tauri::AppHandle) -> Result<(), String> { server::kill_tachidesk(&app); Ok(()) -} +} \ No newline at end of file diff --git a/src-tauri/src/server/conf.rs b/src-tauri/src/server/conf.rs index 2e27e51..570bf12 100644 --- a/src-tauri/src/server/conf.rs +++ b/src-tauri/src/server/conf.rs @@ -2,7 +2,7 @@ use std::path::PathBuf; const DEFAULT_SERVER_CONF: &str = r#"server.ip = "127.0.0.1" server.port = 4567 -server.webUIEnabled = true +server.webUIEnabled = false server.initialOpenInBrowserEnabled = false server.systemTrayEnabled = false server.webUIInterface = "browser" @@ -17,7 +17,7 @@ server.maxSourcesInParallel = 6 server.extensionRepos = [] "#; -pub fn seed_server_conf(data_dir: &PathBuf) { +pub fn seed_server_conf(data_dir: &PathBuf, web_ui_enabled: bool) { let conf_path = data_dir.join("server.conf"); if !conf_path.exists() { @@ -25,7 +25,12 @@ pub fn seed_server_conf(data_dir: &PathBuf) { eprintln!("Could not create Suwayomi data dir: {e}"); return; } - if let Err(e) = std::fs::write(&conf_path, DEFAULT_SERVER_CONF) { + let initial = patch_conf_key( + DEFAULT_SERVER_CONF.to_string(), + "server.webUIEnabled", + if web_ui_enabled { "true" } else { "false" }, + ); + if let Err(e) = std::fs::write(&conf_path, initial) { eprintln!("Could not write server.conf: {e}"); } return; @@ -37,7 +42,11 @@ pub fn seed_server_conf(data_dir: &PathBuf) { let patched = patch_conf_key( patch_conf_key( - patch_conf_key(contents, "server.webUIEnabled", "true"), + patch_conf_key( + contents, + "server.webUIEnabled", + if web_ui_enabled { "true" } else { "false" }, + ), "server.initialOpenInBrowserEnabled", "false", ), @@ -70,4 +79,4 @@ fn patch_conf_key(text: String, key: &str, value: &str) -> String { out.push_str(&replacement); out.push('\n'); out -} +} \ No newline at end of file diff --git a/src/App.svelte b/src/App.svelte index 291fb5e..a8f8ec8 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -138,7 +138,10 @@ startProbe(); if (store.settings.autoStartServer) { - invoke("spawn_server", { binary: store.settings.serverBinary }).catch((err: any) => { + invoke("spawn_server", { + binary: store.settings.serverBinary, + webUiEnabled: store.settings.suwayomiWebUI ?? false, + }).catch((err: any) => { if (err?.kind === "NotConfigured") boot.notConfigured = true; else console.warn("Could not start server:", err); }); diff --git a/src/features/settings/sections/GeneralSettings.svelte b/src/features/settings/sections/GeneralSettings.svelte index 491eb24..bc09eca 100644 --- a/src/features/settings/sections/GeneralSettings.svelte +++ b/src/features/settings/sections/GeneralSettings.svelte @@ -51,6 +51,10 @@
Auto-start serverLaunch tachidesk-server when Moku opens
+ diff --git a/src/types/settings.ts b/src/types/settings.ts index 0cc2ca3..3dc7f2b 100644 --- a/src/types/settings.ts +++ b/src/types/settings.ts @@ -92,7 +92,7 @@ export interface Settings { discordRpc: boolean; chapterSortDir: ChapterSortDir; chapterSortMode: ChapterSortMode; chapterPageSize: number; uiZoom: number; compactSidebar: boolean; gpuAcceleration: boolean; - serverUrl: string; serverBinary: string; autoStartServer: boolean; + serverUrl: string; serverBinary: string; autoStartServer: boolean; suwayomiWebUI: boolean; preferredExtensionLang: string; keybinds: Keybinds; idleTimeoutMin?: number; splashCards?: boolean; storageLimitGb: number | null; markReadOnNext: boolean; readerDebounceMs: number; @@ -143,7 +143,7 @@ export const DEFAULT_SETTINGS: Settings = { discordRpc: false, chapterSortDir: "desc", chapterSortMode: "source", chapterPageSize: 25, uiZoom: 1.0, compactSidebar: false, gpuAcceleration: true, - serverUrl: "http://localhost:4567", serverBinary: "", autoStartServer: true, + serverUrl: "http://localhost:4567", serverBinary: "", autoStartServer: true, suwayomiWebUI: false, preferredExtensionLang: "en", keybinds: DEFAULT_KEYBINDS, idleTimeoutMin: 5, splashCards: true, storageLimitGb: null, markReadOnNext: true, readerDebounceMs: 120, autoBookmark: true, From 5e591411e4c448e7d0b1894e418361ee43972e1f Mon Sep 17 00:00:00 2001 From: Youwes09 Date: Sun, 17 May 2026 16:50:40 -0500 Subject: [PATCH 4/4] Chore: Patch PKGBUILD for AUR (V1) --- PKGBUILD | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/PKGBUILD b/PKGBUILD index ee52792..22b3bc2 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -13,18 +13,25 @@ depends=( ) makedepends=( 'rust' - 'cargo' - 'nodejs' - 'pnpm' + 'nodejs-pnpm' ) +optdepends=( + 'discord: Discord rich presence' +) +options=('!strip') source=( "$pkgname-$pkgver.tar.gz::https://github.com/moku-project/Moku/archive/refs/tags/v$pkgver.tar.gz" "Suwayomi-Server-v2.1.2087.jar::https://github.com/Suwayomi/Suwayomi-Server-preview/releases/download/v2.1.2087/Suwayomi-Server-v2.1.2087.jar" ) +noextract=("Suwayomi-Server-v2.1.2087.jar") sha256sums=( 'fc1c8268b812e70e56460c8930ca8ae83bcd30eea5903ddfef4e30a3a9a5c1cc' 'f589a422674252394c13b289a9c8be691905bf583efb7f4d5f1501ae5e91e6b3' ) +b2sums=( + 'SKIP' + 'SKIP' +) prepare() { cd "Moku-$pkgver" @@ -52,7 +59,7 @@ package() { cat > "$pkgdir/usr/lib/moku/tachidesk/default-conf/server.conf" << 'CONF' server.ip = "127.0.0.1" server.port = 4567 -server.webUIEnabled = true +server.webUIEnabled = false server.initialOpenInBrowserEnabled = false server.systemTrayEnabled = false server.downloadAsCbz = true