2025-08-18 14:25:38 -05:00
2025-01-27 23:22:17 -05:00
2022-02-08 13:33:55 -06:00
2024-02-14 03:22:09 -05:00
2025-01-27 20:11:53 -05:00
2025-01-27 20:11:53 -05:00
2024-02-16 04:28:16 -05:00
2025-01-27 20:11:53 -05:00
2025-01-27 20:11:53 -05:00
2025-01-27 20:11:53 -05:00
2022-02-18 16:07:35 -06:00
2025-06-17 15:51:28 -05:00
2024-02-11 23:01:45 +00:00
2025-08-18 14:25:38 -05:00
2025-08-18 14:25:38 -05:00
2025-03-18 21:28:13 -05:00
2025-01-27 20:11:53 -05:00
2025-01-27 20:11:53 -05:00

artix-checkupdates-web

Notification system and web frontend for Artix packages with pending operations. Notifications can be sent via Apprise or IRC. Web interface shows all packages with pending operations and publishes prometheus metrics.

configuration

create config/config.json:

Variable Description
apprise The URL of the Apprise instance for sending notifications
maintainers Array of maintainer names as strings or objects containing the name of the maintainer and a list of channels to send notifications to
cron The cron schedule for when the application should check for pending operations via artix-checkupdates
syncfreq How often (in days) should the application sync package ownership from Gitea
port What port to run the webserver on (defaults to 8080)
savePath Location of auxiliary save data (defaults to config/data.db)
db Location of the SQLite DB (defaults to config/packages.db)
irc-framework The options to feed into irc-framework
ircClient Auxilary config data for the IRC bot. For now, it takes ircClient.channel and optionally ircClient.channel_key

Note that the IRC bot needs to be exempt from excess flooding. The following command permanently voices a bot on Libera.chat:

/msg ChanServ FLAGS #example artix-update-bot +V

If the channel is intended only for the bot to broadcast, consider setting the channel mode to "moderated":

/mode +m #example

How to run

npm install
npm exec tsc
node distribution/index.mjs

Docker Setup

Image : ghcr.io/corysanin/artix-checkupdates-web:latest

mount a folder to /usr/notifier/config.

Include a config.json as described above.

Include artools-pkg.conf:

GIT_TOKEN='YOUR-GITEA-TOKEN-HERE'

Include artix-checkupdates.conf:

ARTIX_MIRROR=https://example.com/%s/os/x86_64
ARCH_MIRROR=https://example.com/%s/os/x86_64
ARTIX_REPOS=system-goblins,world-goblins,galaxy-goblins,lib32-goblins,system-gremlins,world-gremlins,galaxy-gremlins,lib32-gremlins,system,world,galaxy,lib32
ARCH_REPOS=core-staging,extra-staging,multilib-staging,core-testing,extra-testing,multilib-testing,core,extra,multilib
Description
Notification system and web frontend for Artix packages with pending operations
https://checkupdates.artixlinux.org
Readme MIT 1.6 MiB
Languages
TypeScript 81%
EJS 7.8%
SCSS 5.7%
Dockerfile 3.3%
CSS 2.2%