mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-08 09:01:03 -08:00
build: update Snap packaging to use core22 base for compatibility
This commit is contained in:
1 parent
1fca406486
commit
b449e3796b
4 files changed
+18
-7
No files matched your search
@@ -28,7 +28,7 @@ jobs:
|
||||
arch: arm64
|
||||
# Linux and Windows
|
||||
- os: linux
|
||||
runner: ubuntu-latest
|
||||
runner: ubuntu-22.04
|
||||
- os: windows
|
||||
runner: windows-latest
|
||||
|
||||
|
||||
@@ -67,9 +67,9 @@ Keep SQL-heavy logic here so the worker entry remains a thin dispatcher:
|
||||
3. `DatabaseWorkerClient` lazily starts one long-lived `worker_threads` worker
|
||||
and correlates requests with a generated `requestId`.
|
||||
4. The worker executes SQLite work and sends back either:
|
||||
1. `ready`
|
||||
2. `event`
|
||||
3. `response`
|
||||
1. `ready`
|
||||
2. `event`
|
||||
3. `response`
|
||||
5. The main process resolves the IPC request and forwards worker events back to
|
||||
the originating renderer process.
|
||||
|
||||
@@ -166,9 +166,9 @@ events.
|
||||
5. `dbDeletePlaylist(playlistId, operationId?)`
|
||||
6. `dbDeleteAllPlaylists(operationId?)`
|
||||
7. `dbCancelOperation(operationId)`
|
||||
3. legacy compatibility:
|
||||
1. `onDbSaveContentProgress(callback)`
|
||||
2. `removeDbSaveContentProgress()`
|
||||
8. legacy compatibility:
|
||||
1. `onDbSaveContentProgress(callback)`
|
||||
2. `removeDbSaveContentProgress()`
|
||||
|
||||
`DatabaseService.saveXtreamContent(...)` now generates an `operationId`,
|
||||
subscribes to `onDbOperationEvent`, filters by that `operationId`, and only
|
||||
@@ -333,6 +333,10 @@ The script checks:
|
||||
1. `epg-parser.worker.js`
|
||||
2. `database.worker.js`
|
||||
3. `better-sqlite3` in one approved unpacked node_modules location
|
||||
4. Snap packaging compatibility settings for `better-sqlite3`:
|
||||
- `snap.base = core22`
|
||||
- Snap launch args keep the X11 fallback
|
||||
- Snap builds stay aligned with the Ubuntu 22.04 Linux CI environment
|
||||
|
||||
### Development rebuild rule
|
||||
|
||||
|
||||
@@ -97,6 +97,7 @@
|
||||
},
|
||||
"afterPack": "./tools/packaging/linux-after-pack.cjs",
|
||||
"snap": {
|
||||
"base": "core22",
|
||||
"confinement": "strict",
|
||||
"grade": "stable",
|
||||
"summary": "IPTV application for M3U playlists, Xtream Codes API, and Stalker portals",
|
||||
|
||||
@@ -410,6 +410,12 @@ function verifyFlatpakPermissions(errors) {
|
||||
}
|
||||
|
||||
function verifySnapPackagingConfig(errors) {
|
||||
if (snapConfigInspection.config?.base !== 'core22') {
|
||||
errors.push(
|
||||
`Snap config in ${snapConfigInspection.sourcePath} must set base to core22 so packaged native modules stay compatible with the Snap runtime glibc.`
|
||||
);
|
||||
}
|
||||
|
||||
const snapExecutableArgs = Array.isArray(
|
||||
snapConfigInspection.config?.executableArgs
|
||||
)
|
||||
|
||||
Reference in new issue
Block a user