aboutsummaryrefslogtreecommitdiff
path: root/network
diff options
context:
space:
mode:
Diffstat (limited to 'network')
-rw-r--r--network/AdGuardHome/AdGuardHome.SlackBuild2
-rw-r--r--network/AdGuardHome/AdGuardHome.info10
-rw-r--r--network/Electrum/README12
-rw-r--r--network/NetworkManager-ssh/NetworkManager-ssh.SlackBuild2
-rw-r--r--network/NetworkManager-ssh/NetworkManager-ssh.info6
-rw-r--r--network/aardvark-dns/README9
-rw-r--r--network/aardvark-dns/aardvark-dns.SlackBuild131
-rw-r--r--network/aardvark-dns/aardvark-dns.info12
-rw-r--r--network/aardvark-dns/slack-desc19
-rw-r--r--network/abdownloadmanager-bin/ABDownloadManager.desktop10
-rw-r--r--network/abdownloadmanager-bin/abdownloadmanager-bin.SlackBuild35
-rw-r--r--network/abdownloadmanager-bin/abdownloadmanager-bin.info6
-rw-r--r--network/acme.sh/acme.sh.SlackBuild4
-rw-r--r--network/acme.sh/acme.sh.info6
-rw-r--r--network/aerc/aerc.SlackBuild12
-rw-r--r--network/aerc/aerc.info6
-rw-r--r--network/amneziawg-go/README24
-rw-r--r--network/amneziawg-go/amneziawg-go.SlackBuild80
-rw-r--r--network/amneziawg-go/amneziawg-go.info12
-rw-r--r--network/amneziawg-go/slack-desc19
-rw-r--r--network/amneziawg-kernel/README28
-rw-r--r--network/amneziawg-kernel/amneziawg-kernel.SlackBuild106
-rw-r--r--network/amneziawg-kernel/amneziawg-kernel.info10
-rw-r--r--network/amneziawg-kernel/doinst.sh1
-rw-r--r--network/amneziawg-kernel/fix-get_random_u8-absence-in-older-kernels.patch64
-rw-r--r--network/amneziawg-kernel/slack-desc19
-rw-r--r--network/amneziawg-tools/README25
-rw-r--r--network/amneziawg-tools/amneziawg-tools.SlackBuild115
-rw-r--r--network/amneziawg-tools/amneziawg-tools.info10
-rw-r--r--network/amneziawg-tools/slack-desc19
-rw-r--r--network/ani-cli/ani-cli.SlackBuild18
-rw-r--r--network/ani-cli/ani-cli.info6
-rw-r--r--network/ani-cli/changelog21
-rw-r--r--network/anydesk/anydesk.SlackBuild2
-rw-r--r--network/anydesk/anydesk.info6
-rw-r--r--network/asterisk/asterisk.SlackBuild4
-rw-r--r--network/asterisk/asterisk.info10
-rw-r--r--network/asterisk/rc.asterisk.new10
-rw-r--r--network/authbind/authbind.SlackBuild5
-rw-r--r--network/avahi/avahi.SlackBuild59
-rw-r--r--network/avahi/avahi.info6
-rw-r--r--network/avahi/man/man1/avahi-bookmarks.133
-rw-r--r--network/avahi/man/man1/avahi-browse.166
-rw-r--r--network/avahi/man/man1/avahi-discover.1 (renamed from network/avahi/avahi-discover.1)0
-rw-r--r--network/avahi/man/man1/avahi-publish.152
-rw-r--r--network/avahi/man/man1/avahi-resolve.149
-rw-r--r--network/avahi/man/man1/avahi-set-host-name.124
-rw-r--r--network/avahi/man/man1/bssh.1 (renamed from network/avahi/bssh.1)0
-rw-r--r--network/avahi/man/man5/avahi-daemon.conf.5102
-rw-r--r--network/avahi/man/man5/avahi.hosts.516
-rw-r--r--network/avahi/man/man5/avahi.service.541
-rw-r--r--network/avahi/man/man8/avahi-daemon.876
-rw-r--r--network/avahi/man/man8/avahi-dnsconfd.848
-rw-r--r--network/avahi/man/man8/avahi-dnsconfd.action.830
-rw-r--r--network/avahi/patches/CVE-2021-3502.patch148
-rw-r--r--network/avahi/patches/Fetch-build-db-from-upstream-git.patch71
-rw-r--r--network/avahi/patches/Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch50
-rw-r--r--network/avahi/patches/avahi-client-fix-resource-leak.patch22
-rw-r--r--network/avahi/patches/avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch24
-rw-r--r--network/avahi/patches/avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch41
-rw-r--r--network/avahi/patches/avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch29
-rw-r--r--network/avahi/patches/avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch37
-rw-r--r--network/avahi/patches/build-db-Use-the-same-database-format-that-the-C-code-exp.patch106
-rw-r--r--network/avahi/patches/fix-bytestring-decoding-for-proper-display.patch28
-rw-r--r--network/avahi/patches/ipv6_race_condition_fix.patch51
-rw-r--r--network/avahi/patches/man-add-missing-bshell.1-symlink.patch33
-rw-r--r--network/avahi/patches/man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch24
-rw-r--r--network/avahi/patches/series13
-rw-r--r--network/avahi/slack-desc18
-rw-r--r--network/betterbird-bin/betterbird-bin.SlackBuild6
-rw-r--r--network/betterbird-bin/betterbird-bin.info6
-rw-r--r--network/bitcoin-knots/README19
-rw-r--r--network/bitcoin-knots/bitcoin-knots.SlackBuild131
-rw-r--r--network/bitcoin-knots/bitcoin-knots.info10
-rw-r--r--network/bitcoin-knots/bitcoin-qt.desktop10
-rw-r--r--network/bitcoin-knots/doinst.sh3
-rw-r--r--network/bitcoin-knots/slack-desc19
-rw-r--r--network/bitcoin/README3
-rw-r--r--network/bitcoin/bitcoin-qt.desktop2
-rw-r--r--network/bitcoin/bitcoin.SlackBuild13
-rw-r--r--network/bitcoin/bitcoin.info6
-rw-r--r--network/bitcoin/doinst.sh7
-rw-r--r--network/brave-browser/brave-browser.SlackBuild2
-rw-r--r--network/brave-browser/brave-browser.info6
-rw-r--r--network/broadcom-wl/broadcom-wl.SlackBuild3
-rw-r--r--network/broadcom-wl/patches/020-linux615.patch132
-rw-r--r--network/chawan/README7
-rw-r--r--network/chawan/chawan.SlackBuild103
-rw-r--r--network/chawan/chawan.info10
-rw-r--r--network/chawan/slack-desc19
-rw-r--r--network/connman/README25
-rw-r--r--network/connman/README.SBo29
-rw-r--r--network/connman/connman.SlackBuild5
-rw-r--r--network/connman/connman.info6
-rw-r--r--network/connman/slack-desc14
-rw-r--r--network/copyparty/README16
-rw-r--r--network/copyparty/README.SBo31
-rw-r--r--network/copyparty/copyparty.SlackBuild107
-rw-r--r--network/copyparty/copyparty.conf7
-rw-r--r--network/copyparty/copyparty.info10
-rw-r--r--network/copyparty/doinst.sh15
-rw-r--r--network/copyparty/rc.copyparty53
-rw-r--r--network/copyparty/slack-desc19
-rw-r--r--network/darkhttpd/darkhttpd.SlackBuild2
-rw-r--r--network/darkhttpd/darkhttpd.info6
-rw-r--r--network/dino/README9
-rw-r--r--network/dino/dino.SlackBuild15
-rw-r--r--network/dino/dino.info2
-rw-r--r--network/discord/discord.SlackBuild2
-rw-r--r--network/discord/discord.info6
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild4
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.info10
-rw-r--r--network/dnscrypt-proxy/rc.dnscrypt-proxy3
-rw-r--r--network/dnsproxy-bin/config.yaml.dist20
-rw-r--r--network/dnsproxy-bin/dnsproxy-bin.SlackBuild2
-rw-r--r--network/dnsproxy-bin/dnsproxy-bin.info14
-rw-r--r--network/dooble/dooble.SlackBuild11
-rw-r--r--network/dooble/dooble.info6
-rw-r--r--network/dropbear/dropbear.SlackBuild2
-rw-r--r--network/dropbear/dropbear.info6
-rw-r--r--network/dropbox/dropbox.SlackBuild2
-rw-r--r--network/dropbox/dropbox.info6
-rw-r--r--network/edbrowse/README5
-rw-r--r--network/edbrowse/edbrowse.SlackBuild67
-rw-r--r--network/edbrowse/edbrowse.info10
-rw-r--r--network/edbrowse/slack-desc19
-rw-r--r--network/electrs/electrs.SlackBuild4
-rw-r--r--network/electrs/electrs.info6
-rw-r--r--network/electrs/rc.electrs1
-rw-r--r--network/element-desktop-bin/README10
-rw-r--r--network/element-desktop-bin/doinst.sh10
-rw-r--r--network/element-desktop-bin/element-desktop-bin.SlackBuild91
-rw-r--r--network/element-desktop-bin/element-desktop-bin.info10
-rw-r--r--network/element-desktop-bin/slack-desc19
-rw-r--r--network/element-desktop/README14
-rw-r--r--network/element-desktop/autolaunch.patch10
-rw-r--r--network/element-desktop/element-desktop.SlackBuild113
-rw-r--r--network/element-desktop/element-desktop.desktop10
-rw-r--r--network/element-desktop/element-desktop.info16
-rw-r--r--network/element-desktop/slack-desc8
-rw-r--r--network/element-desktop/yarn-offline.patch46
-rw-r--r--network/filezilla/filezilla.SlackBuild2
-rw-r--r--network/filezilla/filezilla.info6
-rw-r--r--network/floorp-bin/floorp-bin.SlackBuild4
-rw-r--r--network/floorp-bin/floorp-bin.info8
-rw-r--r--network/floorp-bin/slack-desc2
-rw-r--r--network/gallery-dl/gallery-dl.SlackBuild2
-rw-r--r--network/gallery-dl/gallery-dl.info6
-rw-r--r--network/grafana/grafana.SlackBuild2
-rw-r--r--network/grafana/grafana.info6
-rw-r--r--network/gui-ufw/gufw-open.diff10
-rw-r--r--network/gui-ufw/gui-ufw.SlackBuild23
-rw-r--r--network/gui-ufw/gui-ufw.info8
-rw-r--r--network/gui-ufw/path-fix.diff16
-rw-r--r--network/gui-ufw/ubuntu-fixes.diff26
-rw-r--r--network/gutenberg/gutenberg.SlackBuild2
-rw-r--r--network/gutenberg/gutenberg.info6
-rw-r--r--network/haproxy/haproxy.SlackBuild5
-rw-r--r--network/haproxy/haproxy.info6
-rw-r--r--network/httpie/httpie.SlackBuild4
-rw-r--r--network/httpie/httpie.info6
-rw-r--r--network/iperf3/iperf3.SlackBuild2
-rw-r--r--network/iperf3/iperf3.info6
-rw-r--r--network/isync/isync.SlackBuild2
-rw-r--r--network/isync/isync.info6
-rw-r--r--network/iwd/README35
-rw-r--r--network/iwd/doinst.sh26
-rw-r--r--network/iwd/iwd.SlackBuild118
-rw-r--r--network/iwd/iwd.info10
-rw-r--r--network/iwd/main.conf5
-rw-r--r--network/iwd/rc.iwd35
-rw-r--r--network/iwd/slack-desc19
-rw-r--r--network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild2
-rw-r--r--network/jitsi-meet-desktop/jitsi-meet-desktop.info6
-rw-r--r--network/k9s/README7
-rw-r--r--network/k9s/k9s.SlackBuild92
-rw-r--r--network/k9s/k9s.info10
-rw-r--r--network/k9s/slack-desc19
-rw-r--r--network/kdrive/kdrive.SlackBuild2
-rw-r--r--network/kdrive/kdrive.info6
-rw-r--r--network/keama/README6
-rw-r--r--network/keama/keama.SlackBuild115
-rw-r--r--network/keama/keama.info10
-rw-r--r--network/keama/slack-desc19
-rw-r--r--network/kismet/kismet.SlackBuild4
-rw-r--r--network/kismet/kismet.info6
-rw-r--r--network/kubectl-bin/kubectl-bin.SlackBuild2
-rw-r--r--network/kubectl-bin/kubectl-bin.info6
-rw-r--r--network/kubectl/kubectl.SlackBuild7
-rw-r--r--network/kubectl/kubectl.info6
-rw-r--r--network/lagrange/lagrange.SlackBuild2
-rw-r--r--network/lagrange/lagrange.info6
-rw-r--r--network/librespeed-cli/librespeed-cli.SlackBuild3
-rw-r--r--network/librespeed-cli/librespeed-cli.info10
-rw-r--r--network/librewolf/README2
-rw-r--r--network/librewolf/doinst.sh11
-rw-r--r--network/librewolf/librewolf.SlackBuild75
-rw-r--r--network/librewolf/librewolf.desktop386
-rw-r--r--network/librewolf/librewolf.info10
-rw-r--r--network/librewolf/librewolf.pngbin0 -> 9394 bytes
-rw-r--r--network/librewolf/slack-desc2
-rw-r--r--network/lighttpd/lighttpd.SlackBuild2
-rw-r--r--network/lighttpd/lighttpd.info6
-rw-r--r--network/llhttp/llhttp.SlackBuild9
-rw-r--r--network/llhttp/llhttp.info8
-rw-r--r--network/mailspring/mailspring.SlackBuild2
-rw-r--r--network/mailspring/mailspring.info6
-rw-r--r--network/mblaze/README8
-rw-r--r--network/mblaze/mblaze.SlackBuild108
-rw-r--r--network/mblaze/mblaze.info10
-rw-r--r--network/mblaze/slack-desc19
-rw-r--r--network/microsoft-edge/microsoft-edge.SlackBuild2
-rw-r--r--network/microsoft-edge/microsoft-edge.info6
-rw-r--r--network/modsecurity-apache/modsecurity-apache.SlackBuild4
-rw-r--r--network/modsecurity-apache/modsecurity-apache.info10
-rw-r--r--network/mullvadvpn-app/mullvadvpn-app.SlackBuild2
-rw-r--r--network/mullvadvpn-app/mullvadvpn-app.info10
-rw-r--r--network/mumble-server/mumble-server.SlackBuild2
-rw-r--r--network/nchat/nchat.SlackBuild2
-rw-r--r--network/nchat/nchat.info6
-rw-r--r--network/ncp/fix-ncp-command.diff53
-rw-r--r--network/ncp/ncp.SlackBuild6
-rw-r--r--network/neomutt/neomutt.SlackBuild15
-rw-r--r--network/neomutt/neomutt.info6
-rw-r--r--network/newsboat/newsboat.SlackBuild2
-rw-r--r--network/newsboat/newsboat.info328
-rw-r--r--network/nextcloud-server/README5
-rw-r--r--network/nextcloud-server/README.SBo34
-rw-r--r--network/nextcloud-server/nextcloud.php-fpm4
-rw-r--r--network/nginx/nginx.SlackBuild6
-rw-r--r--network/nm-tray/README6
-rw-r--r--network/nm-tray/doinst.sh3
-rw-r--r--network/nm-tray/nm-tray.SlackBuild108
-rw-r--r--network/nm-tray/nm-tray.info10
-rw-r--r--network/nm-tray/slack-desc19
-rw-r--r--network/noss/README7
-rw-r--r--network/noss/noss.SlackBuild111
-rw-r--r--network/noss/noss.info10
-rw-r--r--network/noss/slack-desc19
-rw-r--r--network/onedrive/onedrive.SlackBuild2
-rw-r--r--network/onedrive/onedrive.info6
-rw-r--r--network/opensmtpd/opensmtpd.SlackBuild2
-rw-r--r--network/opensmtpd/opensmtpd.info6
-rw-r--r--network/profanity/fix-py_xdecref-macro-usage.patch32
-rw-r--r--network/profanity/profanity.SlackBuild7
-rw-r--r--network/profanity/profanity.info10
-rw-r--r--network/protonmail-bridge/protonmail-bridge.SlackBuild2
-rw-r--r--network/protonmail-bridge/protonmail-bridge.info6
-rw-r--r--network/quark/README24
-rw-r--r--network/quark/config.def.h39
-rw-r--r--network/quark/git2tarxz.sh44
-rw-r--r--network/quark/quark.SlackBuild72
-rw-r--r--network/quark/quark.info10
-rw-r--r--network/quark/slack-desc19
-rw-r--r--network/rclone/rclone.SlackBuild2
-rw-r--r--network/rclone/rclone.info6
-rw-r--r--network/repo/README2
-rw-r--r--network/repo/repo.SlackBuild71
-rw-r--r--network/repo/repo.info10
-rw-r--r--network/repo/slack-desc19
-rw-r--r--network/resilio-sync/resilio-sync.SlackBuild2
-rw-r--r--network/resilio-sync/resilio-sync.info6
-rw-r--r--network/rspamd/rspamd.SlackBuild4
-rw-r--r--network/rspamd/rspamd.info6
-rw-r--r--network/rtorrent/rtorrent.SlackBuild3
-rw-r--r--network/rtorrent/rtorrent.info6
-rw-r--r--network/rustdesk-opt/README3
-rw-r--r--network/rustdesk-opt/rustdesk-opt.SlackBuild4
-rw-r--r--network/rustdesk-opt/rustdesk-opt.info10
-rw-r--r--network/rustdesk/rustdesk.SlackBuild2
-rw-r--r--network/rustdesk/rustdesk.info6
-rw-r--r--network/s/s.SlackBuild2
-rw-r--r--network/s/s.info10
-rw-r--r--network/shadowsocks-rust/shadowsocks-rust.SlackBuild4
-rw-r--r--network/shadowsocks-rust/shadowsocks-rust.info10
-rw-r--r--network/signal-desktop/signal-desktop.SlackBuild2
-rw-r--r--network/signal-desktop/signal-desktop.info6
-rw-r--r--network/slack/slack.SlackBuild4
-rw-r--r--network/slack/slack.info6
-rw-r--r--network/snac2/snac2.SlackBuild2
-rw-r--r--network/snac2/snac2.info6
-rw-r--r--network/spice/spice.SlackBuild9
-rw-r--r--network/spice/spice.info6
-rw-r--r--network/sslh/README45
-rw-r--r--network/sslh/doinst.sh4
-rw-r--r--network/sslh/git2tarxz.sh46
-rw-r--r--network/sslh/rc.sslh16
-rw-r--r--network/sslh/slack-desc8
-rw-r--r--network/sslh/sslh.SlackBuild124
-rw-r--r--network/sslh/sslh.default4
-rw-r--r--network/sslh/sslh.info10
-rw-r--r--network/sslscan/sslscan.SlackBuild8
-rw-r--r--network/sslscan/sslscan.info10
-rw-r--r--network/syncthingtray-bin/syncthingtray-bin.SlackBuild6
-rw-r--r--network/syncthingtray-bin/syncthingtray-bin.info6
-rw-r--r--network/syncthingtray-bin/syncthingtray.desktop2
-rw-r--r--network/tailscale/tailscale.SlackBuild2
-rw-r--r--network/tailscale/tailscale.info10
-rw-r--r--network/teams-for-linux/README22
-rw-r--r--network/teams-for-linux/doinst.sh9
-rw-r--r--network/teams-for-linux/slack-desc19
-rw-r--r--network/teams-for-linux/teams-for-linux.SlackBuild89
-rw-r--r--network/teams-for-linux/teams-for-linux.info10
-rw-r--r--network/teamviewer/teamviewer.SlackBuild2
-rw-r--r--network/teamviewer/teamviewer.info10
-rw-r--r--network/telegram/telegram.SlackBuild2
-rw-r--r--network/telegram/telegram.info6
-rw-r--r--network/teleport-connect/teleport-connect.SlackBuild2
-rw-r--r--network/teleport-connect/teleport-connect.info6
-rw-r--r--network/tgpt/README5
-rw-r--r--network/tgpt/slack-desc19
-rw-r--r--network/tgpt/tgpt.SlackBuild96
-rw-r--r--network/tgpt/tgpt.info10
-rw-r--r--network/tor-browser/tor-browser.SlackBuild2
-rw-r--r--network/tor-browser/tor-browser.info10
-rw-r--r--network/tor/tor.SlackBuild2
-rw-r--r--network/tor/tor.info6
-rw-r--r--network/transgui/transgui.SlackBuild11
-rw-r--r--network/trurl/README3
-rw-r--r--network/trurl/slack-desc19
-rw-r--r--network/trurl/trurl.SlackBuild104
-rw-r--r--network/trurl/trurl.info10
-rw-r--r--network/unbound/root.hints4
-rw-r--r--network/unbound/unbound.SlackBuild4
-rw-r--r--network/unbound/unbound.info6
-rw-r--r--network/uwsgi/uwsgi.SlackBuild2
-rw-r--r--network/uwsgi/uwsgi.info6
-rw-r--r--network/vidtuber/README40
-rw-r--r--network/vidtuber/doinst.sh11
-rw-r--r--network/vidtuber/slack-desc19
-rw-r--r--network/vidtuber/vidtuber.SlackBuild106
-rw-r--r--network/vidtuber/vidtuber.info10
-rw-r--r--network/vivaldi/vivaldi.SlackBuild2
-rw-r--r--network/vivaldi/vivaldi.info10
-rw-r--r--network/warpinator/README18
-rw-r--r--network/warpinator/doinst.sh15
-rw-r--r--network/warpinator/slack-desc19
-rw-r--r--network/warpinator/warpinator.SlackBuild117
-rw-r--r--network/warpinator/warpinator.info10
-rw-r--r--network/waterfox/README13
-rw-r--r--network/waterfox/waterfox.SlackBuild22
-rw-r--r--network/waterfox/waterfox.info6
-rw-r--r--network/webex/doinst.sh38
-rw-r--r--network/webex/webex.SlackBuild4
-rw-r--r--network/webex/webex.info4
-rw-r--r--network/weechat/weechat.SlackBuild3
-rw-r--r--network/weechat/weechat.info6
-rw-r--r--network/whalebird/whalebird.SlackBuild2
-rw-r--r--network/whalebird/whalebird.info6
-rw-r--r--network/wireshark/wireshark.SlackBuild2
-rw-r--r--network/wireshark/wireshark.info6
-rw-r--r--network/wp-cli/wp-cli.SlackBuild2
-rw-r--r--network/wp-cli/wp-cli.info6
-rw-r--r--network/x11vnc/gcc10.patch42
-rw-r--r--network/x11vnc/x11vnc.SlackBuild15
-rw-r--r--network/x11vnc/x11vnc.info6
-rw-r--r--network/yle-dl/yle-dl.SlackBuild2
-rw-r--r--network/yle-dl/yle-dl.info6
-rw-r--r--network/yt-dlp-bin/README26
-rw-r--r--network/yt-dlp-bin/docs/CONTRIBUTING.md779
-rw-r--r--network/yt-dlp-bin/docs/Changelog.md475
-rw-r--r--network/yt-dlp-bin/docs/Collaborators.md70
-rw-r--r--network/yt-dlp-bin/docs/supportedsites.md1836
-rw-r--r--network/yt-dlp-bin/getdocs.sh17
-rw-r--r--network/yt-dlp-bin/slack-desc10
-rw-r--r--network/yt-dlp-bin/yt-dlp-bin.SlackBuild80
-rw-r--r--network/yt-dlp-bin/yt-dlp-bin.info14
-rw-r--r--network/yt-dlp-bin/yt-dlp-bin.info.aarch6410
-rw-r--r--network/yt-dlp/yt-dlp.SlackBuild9
-rw-r--r--network/yt-dlp/yt-dlp.info6
-rw-r--r--network/zabbix_agent2/zabbix_agent2.SlackBuild2
-rw-r--r--network/zabbix_agent2/zabbix_agent2.info6
-rw-r--r--network/zabbix_agentd/zabbix_agentd.SlackBuild2
-rw-r--r--network/zabbix_agentd/zabbix_agentd.info6
-rw-r--r--network/zabbix_frontend/zabbix_frontend.SlackBuild2
-rw-r--r--network/zabbix_frontend/zabbix_frontend.info6
-rw-r--r--network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild2
-rw-r--r--network/zabbix_java_gateway/zabbix_java_gateway.info6
-rw-r--r--network/zabbix_proxy/zabbix_proxy.SlackBuild2
-rw-r--r--network/zabbix_proxy/zabbix_proxy.info6
-rw-r--r--network/zabbix_server/zabbix_server.SlackBuild2
-rw-r--r--network/zabbix_server/zabbix_server.info6
-rw-r--r--network/zdns/zdns.SlackBuild2
-rw-r--r--network/zdns/zdns.info6
-rw-r--r--network/zeek/zeek.SlackBuild6
-rw-r--r--network/zeek/zeek.info8
-rw-r--r--network/zmap/zmap.SlackBuild2
-rw-r--r--network/zmap/zmap.info6
-rw-r--r--network/zoom-linux/zoom-linux.SlackBuild4
-rw-r--r--network/zoom-linux/zoom-linux.info6
390 files changed, 9372 insertions, 1787 deletions
diff --git a/network/AdGuardHome/AdGuardHome.SlackBuild b/network/AdGuardHome/AdGuardHome.SlackBuild
index e3b53ba7d3..3bf7553d22 100644
--- a/network/AdGuardHome/AdGuardHome.SlackBuild
+++ b/network/AdGuardHome/AdGuardHome.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=AdGuardHome
-VERSION=${VERSION:-0.107.61}
+VERSION=${VERSION:-0.107.65}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/AdGuardHome/AdGuardHome.info b/network/AdGuardHome/AdGuardHome.info
index c436ec644f..57db44d8ef 100644
--- a/network/AdGuardHome/AdGuardHome.info
+++ b/network/AdGuardHome/AdGuardHome.info
@@ -1,10 +1,10 @@
PRGNAM="AdGuardHome"
-VERSION="0.107.61"
+VERSION="0.107.65"
HOMEPAGE="https://adguard.com/adguard-home.html"
-DOWNLOAD="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_386.tar.gz"
-MD5SUM="84b1b0e95ab52fcf02aba6f394d7de8d"
-DOWNLOAD_x86_64="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.61/AdGuardHome_linux_amd64.tar.gz"
-MD5SUM_x86_64="5fe8da97a6b12f568044532d9d2ddaa3"
+DOWNLOAD="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.65/AdGuardHome_linux_386.tar.gz"
+MD5SUM="933f95b8e3a170655cff6f4646a45fc0"
+DOWNLOAD_x86_64="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.65/AdGuardHome_linux_amd64.tar.gz"
+MD5SUM_x86_64="a920320c4ac40b19eea0c78cf57eb608"
REQUIRES=""
MAINTAINER="fourtysixandtwo"
EMAIL="fourtysixandtwo@sliderr.net"
diff --git a/network/Electrum/README b/network/Electrum/README
index 17dee0d0d9..337e3ce677 100644
--- a/network/Electrum/README
+++ b/network/Electrum/README
@@ -3,4 +3,14 @@ Electrum is an easy to use Bitcoin client.
There is no waiting time when you start the client, because it does
not download the Bitcoin blockchain.
-zbar is an optional dependency (enables scanning QRCodes).
+Optional dependencies:
+zbar (enables scanning QRCodes)
+python3-trezor (Trezor hardware wallet)
+
+Please Note:
+- Electrum 4.5.8 is the last supported version for Slackware 15.0.
+ Newer versions need at least python version 3.10.
+
+- However, it is possible to use an "AppImage" provided by Electrum at
+ the URL linked below (or in the Electrum.info file). This also
+ works on Slackware 15.0 as an option to run newer versions.
diff --git a/network/NetworkManager-ssh/NetworkManager-ssh.SlackBuild b/network/NetworkManager-ssh/NetworkManager-ssh.SlackBuild
index 9359e9ddae..655961dce4 100644
--- a/network/NetworkManager-ssh/NetworkManager-ssh.SlackBuild
+++ b/network/NetworkManager-ssh/NetworkManager-ssh.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=NetworkManager-ssh
-VERSION=${VERSION:-1.2.13}
+VERSION=${VERSION:-1.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/NetworkManager-ssh/NetworkManager-ssh.info b/network/NetworkManager-ssh/NetworkManager-ssh.info
index c999060e75..1f61d5c164 100644
--- a/network/NetworkManager-ssh/NetworkManager-ssh.info
+++ b/network/NetworkManager-ssh/NetworkManager-ssh.info
@@ -1,8 +1,8 @@
PRGNAM="NetworkManager-ssh"
-VERSION="1.2.13"
+VERSION="1.4.1"
HOMEPAGE="https://github.com/danfruehauf/NetworkManager-ssh"
-DOWNLOAD="https://github.com/danfruehauf/NetworkManager-ssh/archive/1.2.13/NetworkManager-ssh-1.2.13.tar.gz"
-MD5SUM="02061b6888f3a3cf0ceb48f10b9de61a"
+DOWNLOAD="https://github.com/danfruehauf/NetworkManager-ssh/archive/1.4.1/NetworkManager-ssh-1.4.1.tar.gz"
+MD5SUM="8f5fe9a52bf84586e9c4f9028f2da309"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/aardvark-dns/README b/network/aardvark-dns/README
new file mode 100644
index 0000000000..eeb8193bce
--- /dev/null
+++ b/network/aardvark-dns/README
@@ -0,0 +1,9 @@
+aardvark-dns - authoritative dns server for A/AAAA container records
+
+Aardvark is a DNS server Netavark uses to service container DNS
+requests and enable containers to resolve other containers by their
+names or aliases. In CNI, the 'dnsname' plugin provides this
+functionality.
+
+Aardvark is activated by Netavark when containers are running and
+automatically exits when all containers have exited.
diff --git a/network/aardvark-dns/aardvark-dns.SlackBuild b/network/aardvark-dns/aardvark-dns.SlackBuild
new file mode 100644
index 0000000000..15d688d2f3
--- /dev/null
+++ b/network/aardvark-dns/aardvark-dns.SlackBuild
@@ -0,0 +1,131 @@
+#!/bin/bash
+
+# Slackware build script for aardvark-dns
+
+# Copyright 2025 Gustavo B. Schenkel, Porto Alegre/RS, Brazil
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=aardvark-dns
+VERSION=${VERSION:-1.15.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+
+ if [ "$ARCH" = "i586" ]; then
+ if rustc -Vv | grep host | grep i686 > /dev/null ; then
+ ARCH=i686
+ fi
+ fi
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+ TARGET="$ARCH-unknown-linux-gnu"
+ CARGOTARGET="--target $TARGET"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+ TARGET="$ARCH-unknown-linux-gnu"
+ CARGOTARGET="--target $TARGET"
+elif [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ TARGET="$ARCH-unknown-linux-gnu"
+ CARGOTARGET="--target $TARGET"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+ TARGET=""
+ CARGOTARGET=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION-vendor.tar.gz
+
+mkdir -p .cargo
+cat << EOF >> .cargo/config.toml
+[source.crates-io]
+replace-with = 'vendored-sources'
+
+[source.vendored-sources]
+directory = 'vendor'
+EOF
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+export PATH="/opt/rust/bin:$PATH"
+if [ -z "$LD_LIBRARY_PATH" ]; then
+ export LD_LIBRARY_PATH="/opt/rust/lib$LIBDIRSUFFIX"
+else
+ export LD_LIBRARY_PATH="/opt/rust/lib$LIBDIRSUFFIX:$LD_LIBRARY_PATH"
+fi
+
+CARGO_HOME=.cargo \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+cargo build --offline --release $CARGOTARGET
+
+install -D -s -m0755 target/$TARGET/release/$PRGNAM $PKG/usr/libexec/podman/$PRGNAM
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF |
+ cut -f 1 -d : | xargs strip --strip-unneeded 2>/dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md RELEASE_NOTES.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild >$PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc >$PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/aardvark-dns/aardvark-dns.info b/network/aardvark-dns/aardvark-dns.info
new file mode 100644
index 0000000000..270f0ed1a6
--- /dev/null
+++ b/network/aardvark-dns/aardvark-dns.info
@@ -0,0 +1,12 @@
+PRGNAM="aardvark-dns"
+VERSION="1.15.0"
+HOMEPAGE="https://github.com/containers/aardvark-dns"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/containers/aardvark-dns/archive/v1.15.0/aardvark-dns-1.15.0.tar.gz \
+ https://github.com/containers/aardvark-dns/releases/download/v1.15.0/aardvark-dns-v1.15.0-vendor.tar.gz"
+MD5SUM_x86_64="8b6736e872e9eb3603a19168c359ecc4 \
+ 646453e7e34e733544171f9e86a60039"
+REQUIRES="rust-opt"
+MAINTAINER="Gustavo B. Schenkel"
+EMAIL="gustavo.schenkel@gmail.com"
diff --git a/network/aardvark-dns/slack-desc b/network/aardvark-dns/slack-desc
new file mode 100644
index 0000000000..f937cd72a5
--- /dev/null
+++ b/network/aardvark-dns/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+aardvark-dns: aardvark-dns (authoritative dns server for A/AAAA container records)
+aardvark-dns:
+aardvark-dns: Aardvark is a DNS server Netavark uses to service container DNS
+aardvark-dns: requests and enable containers to resolve other containers by their
+aardvark-dns: names or aliases.
+aardvark-dns: Aardvark is activated by Netavark when containers are running and
+aardvark-dns: automatically exits when all containers have exited.
+aardvark-dns:
+aardvark-dns:
+aardvark-dns: https://github.com/containers/aardvark-dns
+aardvark-dns:
diff --git a/network/abdownloadmanager-bin/ABDownloadManager.desktop b/network/abdownloadmanager-bin/ABDownloadManager.desktop
new file mode 100644
index 0000000000..4b76e64b90
--- /dev/null
+++ b/network/abdownloadmanager-bin/ABDownloadManager.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=ABDownloadManager
+Comment=Download Manager that speeds up your downloads
+GenericName=Download Manager
+Exec=/opt/ABDownloadManager/bin/ABDownloadManager
+Icon=ABDownloadManager
+Terminal=false
+Type=Application
+Categories=Network;
+StartupNotify=false
diff --git a/network/abdownloadmanager-bin/abdownloadmanager-bin.SlackBuild b/network/abdownloadmanager-bin/abdownloadmanager-bin.SlackBuild
index 4408ff248d..ffdb24e2e8 100644
--- a/network/abdownloadmanager-bin/abdownloadmanager-bin.SlackBuild
+++ b/network/abdownloadmanager-bin/abdownloadmanager-bin.SlackBuild
@@ -24,8 +24,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM="abdownloadmanager-bin"
-VERSION=${VERSION:-1.5.4}
+VERSION=${VERSION:-1.6.11}
SRCNAM=ABDownloadManager_"$VERSION"_linux_x64
+PKGNAM=ABDownloadManager
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -51,35 +52,18 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-ar x $SRCNAM.deb
-rm debian-binary control.tar.*
-tar -xJf data.tar.xz -C "$PKG" 2>/dev/null || \
-tar --use-compress-program=unzstd -xf data.tar.zst -C "$PKG" 2>/dev/null || \
-tar -xzf data.tar.gz -C "$PKG" 2>/dev/null || \
-{ echo "No valid archive found!"; exit 1; }
-rm data.tar.*
+cd $TMP
+tar -xzf $CWD/$SRCNAM.tar.gz
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp "$PKG"/opt/abdownloadmanager/share/doc/copyright $PKG/usr/doc/$PRGNAM-$VERSION/
-rm -rf "$PKG/opt/abdownloadmanager/share"
+install -d "$PKG/opt/"
+install -d "$PKG/usr/share/"{applications,pixmaps}
+install -m644 "$CWD/$PKGNAM.desktop" "$PKG/usr/share/applications/$PRGNAM.desktop"
-mkdir -p "$PKG"/usr/share/applications
-mkdir -p "$PKG"/usr/share/icons/hicolor/512x512/apps
+cp -R ./$PKGNAM $PKG/opt/
-sed -i "$PKG/opt/abdownloadmanager/lib/abdownloadmanager-ABDownloadManager.desktop" \
- -e 's|AB Download Manager|Network;|' \
- -e 's|Icon=/opt/abdownloadmanager/lib/ABDownloadManager.png|Icon=abdownloadmanager|' \
- -e 's|Comment=ABDownloadManager|Comment=Fast Download Manager|' \
- -e 's|MimeType=|GenericName=Download Manager|'
+mv "$PKG/opt/$PKGNAM/lib/$PKGNAM.png" "$PKG/usr/share/pixmaps/$PKGNAM.png"
-cat "$PKG"/opt/abdownloadmanager/lib/abdownloadmanager-ABDownloadManager.desktop > "$PKG"/usr/share/applications/abdownloadmanager.desktop
-rm "$PKG"/opt/abdownloadmanager/lib/abdownloadmanager-ABDownloadManager.desktop
-chmod 0644 "$PKG"/usr/share/applications/abdownloadmanager.desktop
-
-cp "$PKG"/opt/abdownloadmanager/lib/ABDownloadManager.png \
- "$PKG"/usr/share/icons/hicolor/512x512/apps/abdownloadmanager.png
-rm "$PKG"/opt/abdownloadmanager/lib/ABDownloadManager.png
find "$PKG" -type d -exec chmod 0755 {} +
find "$PKG" -type f -name "*.so" -exec chmod 755 {} +
@@ -87,6 +71,7 @@ find "$PKG" -type f -name "*.so" -exec chmod 755 {} +
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/abdownloadmanager-bin/abdownloadmanager-bin.info b/network/abdownloadmanager-bin/abdownloadmanager-bin.info
index 0b57f07551..33638610c9 100644
--- a/network/abdownloadmanager-bin/abdownloadmanager-bin.info
+++ b/network/abdownloadmanager-bin/abdownloadmanager-bin.info
@@ -1,10 +1,10 @@
PRGNAM="abdownloadmanager-bin"
-VERSION="1.5.4"
+VERSION="1.6.11"
HOMEPAGE="https://abdownloadmanager.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/amir1376/ab-download-manager/releases/download/v1.5.4/ABDownloadManager_1.5.4_linux_x64.deb"
-MD5SUM_x86_64="f03bdeef91dfbb8067560a6f2e651e2c"
+DOWNLOAD_x86_64="https://github.com/amir1376/ab-download-manager/releases/download/v1.6.11/ABDownloadManager_1.6.11_linux_x64.tar.gz"
+MD5SUM_x86_64="c14817f8c81d7ae02c04a4e8d980a598"
REQUIRES=""
MAINTAINER="Ioannis Anagnostakis"
EMAIL="rizitis@gmail.com"
diff --git a/network/acme.sh/acme.sh.SlackBuild b/network/acme.sh/acme.sh.SlackBuild
index a6831a3e51..407220b085 100644
--- a/network/acme.sh/acme.sh.SlackBuild
+++ b/network/acme.sh/acme.sh.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for acme.sh
#
-# Copyright 2019-2023 Corrado Franco (https://corradofranco.it)
+# Copyright 2019-2025 Corrado Franco (https://corradofranco.it)
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=acme.sh
-VERSION=${VERSION:-3.1.0}
+VERSION=${VERSION:-3.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/acme.sh/acme.sh.info b/network/acme.sh/acme.sh.info
index 25c241b885..0e25cfc804 100644
--- a/network/acme.sh/acme.sh.info
+++ b/network/acme.sh/acme.sh.info
@@ -1,8 +1,8 @@
PRGNAM="acme.sh"
-VERSION="3.1.0"
+VERSION="3.1.1"
HOMEPAGE="https://acme.sh/"
-DOWNLOAD="https://github.com/Neilpang/acme.sh/archive/3.1.0/acme.sh-3.1.0.tar.gz"
-MD5SUM="b2f1ed4ccb4667b7fab4c71f60a5f61b"
+DOWNLOAD="https://github.com/Neilpang/acme.sh/archive/3.1.1/acme.sh-3.1.1.tar.gz"
+MD5SUM="c224654440efa25f68e0655b434a312a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/aerc/aerc.SlackBuild b/network/aerc/aerc.SlackBuild
index ec5fa3d2a1..df943eb5db 100644
--- a/network/aerc/aerc.SlackBuild
+++ b/network/aerc/aerc.SlackBuild
@@ -24,16 +24,16 @@
# Changelog:
# v0.17.0: 29/jun/2024 by r1w1s1 - Initial build.
# v0.18.0: 02/jul/2024 by r1w1s1
-# v0.18.2: 09/sep/2024 by r1w1s1
-# v0.19.0: 15/jan/2025 by r1w1s1
-# v0.20.0: 25/jan/2025 by r1w1s1
-# v0.20.1: 01/feb/2025 by r1w1s1
-
+# v0.18.2: 09/sep/2024 by r1w1s1
+# v0.19.0: 15/jan/2025 by r1w1s1
+# v0.20.0: 25/jan/2025 by r1w1s1
+# v0.20.1: 01/feb/2025 by r1w1s1
+# v0.21.0: 28/ago/2025 by r1w1s1
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=aerc
-VERSION=${VERSION:-0.20.1}
+VERSION=${VERSION:-0.21.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/aerc/aerc.info b/network/aerc/aerc.info
index 4b2e16ce29..f6fff05ec7 100644
--- a/network/aerc/aerc.info
+++ b/network/aerc/aerc.info
@@ -1,8 +1,8 @@
PRGNAM="aerc"
-VERSION="0.20.1"
+VERSION="0.21.0"
HOMEPAGE="https://aerc-mail.org/"
-DOWNLOAD="https://git.sr.ht/~rjarry/aerc/archive/0.20.1.tar.gz"
-MD5SUM="99d758f9414cc9157c7312a41fb73e3f"
+DOWNLOAD="https://git.sr.ht/~rjarry/aerc/archive/0.21.0.tar.gz"
+MD5SUM="29121534e00eb130a3f84f197d592bbf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="google-go-lang scdoc"
diff --git a/network/amneziawg-go/README b/network/amneziawg-go/README
new file mode 100644
index 0000000000..bd6ba8071c
--- /dev/null
+++ b/network/amneziawg-go/README
@@ -0,0 +1,24 @@
+AmneziaWG is a contemporary version of the popular VPN protocol,
+WireGuard. It's a fork of WireGuard-Go and offers protection against
+detection by Deep Packet Inspection (DPI) systems. At the same time, it
+retains the simplified architecture and high performance of the
+original.
+
+The progenitor of AmneziaWG, WireGuard, is known for its efficiency, but
+it does have issues with detection due to distinctive packet
+signatures. AmneziaWG addresses this problem by employing advanced
+obfuscation methods, allowing its traffic to blend seamlessly with
+regular internet traffic. As a result, AmneziaWG maintains high
+performance while adding an extra layer of stealth, making it a superb
+choice for those seeking a fast and discreet VPN connection.
+
+Features of AmneziaWG include:
+
+- Availability with AmneziaVPN on all platforms.
+- Low energy consumption.
+- Minimal configuration needed.
+- Undetectable by DPI analysis systems, resistant to blocking.
+- Operates over the UDP network protocol.
+
+This supplies the userspace implementation of AmneziaWG. You may use
+amneziawg-tools to configure your WireGuard tunnels.
diff --git a/network/amneziawg-go/amneziawg-go.SlackBuild b/network/amneziawg-go/amneziawg-go.SlackBuild
new file mode 100644
index 0000000000..56f5e3d955
--- /dev/null
+++ b/network/amneziawg-go/amneziawg-go.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for amneziawg-go
+
+# Copyright 2025 Vladislav 'fsLeg' Borisov, Moscow, Russia
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=amneziawg-go
+VERSION=${VERSION:-0.2.15}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+tar xf $CWD/$PRGNAM-$VERSION-vendored-sources.tar.xz
+chown -R root:root .
+
+GOPATH=$(pwd)/cache \
+GOCACHE=$(pwd)/cache \
+go build -v -mod=vendor
+
+install -Dm755 -t "$PKG/usr/bin" amneziawg-go
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/amneziawg-go/amneziawg-go.info b/network/amneziawg-go/amneziawg-go.info
new file mode 100644
index 0000000000..cb5d45f000
--- /dev/null
+++ b/network/amneziawg-go/amneziawg-go.info
@@ -0,0 +1,12 @@
+PRGNAM="amneziawg-go"
+VERSION="0.2.15"
+HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-go"
+DOWNLOAD="https://github.com/amnezia-vpn/amneziawg-go/archive/v0.2.15/amneziawg-go-0.2.15.tar.gz \
+ https://sbo.t-rg.ws/amneziawg-go-0.2.15-vendored-sources.tar.xz"
+MD5SUM="7cd0e4f0b212af6edf3e1baec17465ba \
+ 21397b970b134555a2d2c7e60e5c9897"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang"
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"
diff --git a/network/amneziawg-go/slack-desc b/network/amneziawg-go/slack-desc
new file mode 100644
index 0000000000..3ce32838a5
--- /dev/null
+++ b/network/amneziawg-go/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+amneziawg-go: amneziawg-go (AmneziaWG VPN protocol)
+amneziawg-go:
+amneziawg-go: AmneziaWG is a contemporary version of the popular VPN protocol,
+amneziawg-go: WireGuard. It's a fork of WireGuard and offers protection against
+amneziawg-go: detection by Deep Packet Inspection (DPI) systems. At the same time,
+amneziawg-go: it retains the simplified architecture and high performance of the
+amneziawg-go: original.
+amneziawg-go:
+amneziawg-go: This supplies the userspace implementation of AmneziaWG.
+amneziawg-go:
+amneziawg-go:
diff --git a/network/amneziawg-kernel/README b/network/amneziawg-kernel/README
new file mode 100644
index 0000000000..8d5512de05
--- /dev/null
+++ b/network/amneziawg-kernel/README
@@ -0,0 +1,28 @@
+AmneziaWG is a contemporary version of the popular VPN protocol,
+WireGuard. It's a fork of WireGuard and offers protection against
+detection by Deep Packet Inspection (DPI) systems. At the same time, it
+retains the simplified architecture and high performance of the
+original.
+
+The progenitor of AmneziaWG, WireGuard, is known for its efficiency, but
+it does have issues with detection due to distinctive packet
+signatures. AmneziaWG addresses this problem by employing advanced
+obfuscation methods, allowing its traffic to blend seamlessly with
+regular internet traffic. As a result, AmneziaWG maintains high
+performance while adding an extra layer of stealth, making it a superb
+choice for those seeking a fast and discreet VPN connection.
+
+Features of AmneziaWG include:
+
+- Availability with AmneziaVPN on all platforms.
+- Low energy consumption.
+- Minimal configuration needed.
+- Undetectable by DPI analysis systems, resistant to blocking.
+- Operates over the UDP network protocol.
+
+This supplies the kernel module for AmneziaWG. You need to install
+amneziawg-tools to configure your WireGuard tunnels.
+
+To build the package for a kernel different from the running one,
+start the script setting the KERNEL variable as in
+ KERNEL=5.15.187 ./amneziawg-kernel.SlackBuild
diff --git a/network/amneziawg-kernel/amneziawg-kernel.SlackBuild b/network/amneziawg-kernel/amneziawg-kernel.SlackBuild
new file mode 100644
index 0000000000..ea1cd4e787
--- /dev/null
+++ b/network/amneziawg-kernel/amneziawg-kernel.SlackBuild
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+# Slackware build script for amneziawg-kernel
+
+# Copyright 2025 Vladislav 'fsLeg' Borisov, Moscow, Russia
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=amneziawg-kernel
+VERSION=${VERSION:-1.0.20241112}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+TARNAM=amneziawg-linux-kernel-module
+KERNEL=${KERNEL:-$(uname -r)}
+KERNELSRCDIR=${KERNELSRCDIR:-/lib/modules/$KERNEL/build}
+PKGVER=${VERSION}_$(echo $KERNEL | tr - _)
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $TARNAM-$VERSION
+tar xvf $CWD/$TARNAM-$VERSION.tar.gz
+cd $TARNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+patch -p1 < $CWD/fix-get_random_u8-absence-in-older-kernels.patch
+
+cd src
+ln -s $(readlink -f $KERNELSRCDIR) kernel
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+KERNELRELEASE=$KERNEL \
+make
+install -Dm644 -t $PKG/lib/modules/$KERNEL/extra amneziawg.ko
+cd ..
+
+find $PKG -name "*.ko" -exec strip --strip-debug "{}" \;
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+sed "s%@KERNEL@%$KERNEL%" $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/amneziawg-kernel/amneziawg-kernel.info b/network/amneziawg-kernel/amneziawg-kernel.info
new file mode 100644
index 0000000000..6cf0505c71
--- /dev/null
+++ b/network/amneziawg-kernel/amneziawg-kernel.info
@@ -0,0 +1,10 @@
+PRGNAM="amneziawg-kernel"
+VERSION="1.0.20241112"
+HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module"
+DOWNLOAD="https://github.com/amnezia-vpn/amneziawg-linux-kernel-module/archive/v1.0.20241112/amneziawg-linux-kernel-module-1.0.20241112.tar.gz"
+MD5SUM="175beebdc865b828a66257146a548264"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"
diff --git a/network/amneziawg-kernel/doinst.sh b/network/amneziawg-kernel/doinst.sh
new file mode 100644
index 0000000000..766ff48186
--- /dev/null
+++ b/network/amneziawg-kernel/doinst.sh
@@ -0,0 +1 @@
+chroot . /sbin/depmod -a @KERNEL@
diff --git a/network/amneziawg-kernel/fix-get_random_u8-absence-in-older-kernels.patch b/network/amneziawg-kernel/fix-get_random_u8-absence-in-older-kernels.patch
new file mode 100644
index 0000000000..d354055272
--- /dev/null
+++ b/network/amneziawg-kernel/fix-get_random_u8-absence-in-older-kernels.patch
@@ -0,0 +1,64 @@
+commit 7e7dfca6b2824e5a14c5b011a4e05aac89d85231
+Author: Iurii Egorov <ye@amnezia.org>
+Date: Fri Nov 15 12:54:46 2024 +0300
+
+ Fix get_random_u8() absence in older kernels
+
+ Signed-off-by: Iurii Egorov <ye@amnezia.org>
+
+diff --git a/src/netlink.c b/src/netlink.c
+index 5043bb3..29049ba 100644
+--- a/src/netlink.c
++++ b/src/netlink.c
+@@ -232,7 +232,7 @@ static inline int parse_ipv6_prefix(const char *prefix_str, struct ipv6_prefix *
+ static inline int generate_ipv6_address_with_prefix(const struct ipv6_prefix *prefix, u8 *addr)
+ {
+ int prefix_bytes, prefix_bits;
+- u8 mask;
++ u8 mask, random_byte;
+
+ if (!prefix || !addr)
+ return -EINVAL;
+@@ -246,9 +246,10 @@ static inline int generate_ipv6_address_with_prefix(const struct ipv6_prefix *pr
+ get_random_bytes(addr + prefix_bytes, 16 - prefix_bytes);
+
+ if (prefix_bits != 0) {
++ get_random_bytes(&random_byte, sizeof(random_byte));
+ mask = (u8)(0xFF << (8 - prefix_bits));
+ addr[prefix_bytes] &= mask;
+- addr[prefix_bytes] |= get_random_u8() & ~mask;
++ addr[prefix_bytes] |= random_byte & ~mask;
+ }
+ }
+
+diff --git a/src/patches/007-random-bytes-fix.patch b/src/patches/007-random-bytes-fix.patch
+new file mode 100644
+index 0000000..d898a79
+--- /dev/null
++++ b/src/patches/007-random-bytes-fix.patch
+@@ -0,0 +1,25 @@
++diff --git netlink.c netlink.c
++index 5043bb3..29049ba 100644
++--- netlink.c
+++++ netlink.c
++@@ -232,7 +232,7 @@ static inline int parse_ipv6_prefix(const char *prefix_str, struct ipv6_prefix *
++ static inline int generate_ipv6_address_with_prefix(const struct ipv6_prefix *prefix, u8 *addr)
++ {
++ int prefix_bytes, prefix_bits;
++- u8 mask;
+++ u8 mask, random_byte;
++
++ if (!prefix || !addr)
++ return -EINVAL;
++@@ -246,9 +246,10 @@ static inline int generate_ipv6_address_with_prefix(const struct ipv6_prefix *pr
++ get_random_bytes(addr + prefix_bytes, 16 - prefix_bytes);
++
++ if (prefix_bits != 0) {
+++ get_random_bytes(&random_byte, sizeof(random_byte));
++ mask = (u8)(0xFF << (8 - prefix_bits));
++ addr[prefix_bytes] &= mask;
++- addr[prefix_bytes] |= get_random_u8() & ~mask;
+++ addr[prefix_bytes] |= random_byte & ~mask;
++ }
++ }
++
diff --git a/network/amneziawg-kernel/slack-desc b/network/amneziawg-kernel/slack-desc
new file mode 100644
index 0000000000..3e6c42d5d9
--- /dev/null
+++ b/network/amneziawg-kernel/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+amneziawg-kernel: amneziawg-kernel (AmneziaWG Linux kernel module)
+amneziawg-kernel:
+amneziawg-kernel: AmneziaWG is a contemporary version of the popular VPN protocol,
+amneziawg-kernel: WireGuard. It's a fork of WireGuard and offers protection against
+amneziawg-kernel: detection by Deep Packet Inspection (DPI) systems. At the same time,
+amneziawg-kernel: it retains the simplified architecture and high performance of the
+amneziawg-kernel: original.
+amneziawg-kernel:
+amneziawg-kernel: This supplies the kernel module for AmneziaWG.
+amneziawg-kernel:
+amneziawg-kernel:
diff --git a/network/amneziawg-tools/README b/network/amneziawg-tools/README
new file mode 100644
index 0000000000..abe282cb07
--- /dev/null
+++ b/network/amneziawg-tools/README
@@ -0,0 +1,25 @@
+AmneziaWG is a contemporary version of the popular VPN protocol,
+WireGuard. It's a fork of WireGuard and offers protection against
+detection by Deep Packet Inspection (DPI) systems. At the same time, it
+retains the simplified architecture and high performance of the
+original.
+
+The progenitor of AmneziaWG, WireGuard, is known for its efficiency, but
+it does have issues with detection due to distinctive packet
+signatures. AmneziaWG addresses this problem by employing advanced
+obfuscation methods, allowing its traffic to blend seamlessly with
+regular internet traffic. As a result, AmneziaWG maintains high
+performance while adding an extra layer of stealth, making it a superb
+choice for those seeking a fast and discreet VPN connection.
+
+Features of AmneziaWG include:
+
+- Availability with AmneziaVPN on all platforms.
+- Low energy consumption.
+- Minimal configuration needed.
+- Undetectable by DPI analysis systems, resistant to blocking.
+- Operates over the UDP network protocol.
+
+This supplies the main userspace tooling for using and configuring
+WireGuard tunnels, namely the awg(8) and awg-quick(8) utilities.
+You need to install amneziawg-kernel or amneziawg-go to use these.
diff --git a/network/amneziawg-tools/amneziawg-tools.SlackBuild b/network/amneziawg-tools/amneziawg-tools.SlackBuild
new file mode 100644
index 0000000000..15207def5c
--- /dev/null
+++ b/network/amneziawg-tools/amneziawg-tools.SlackBuild
@@ -0,0 +1,115 @@
+#!/bin/bash
+
+# Slackware build script for amneziawg-tools
+
+# Copyright 2025 Vladislav 'fsLeg' Borisov, Moscow, Russia
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=amneziawg-tools
+VERSION=${VERSION:-1.0.20250903}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd src
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make
+
+PREFIX=/usr \
+LIBDIR=/usr/lib${LIBDIRSUFFIX} \
+MANDIR=/usr/man \
+WITH_BASHCOMPLETION=yes \
+WITH_WGQUICK=yes \
+WITH_SYSTEMDUNITS=no \
+DESTDIR=$PKG \
+make install
+
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -aR \
+ COPYING README.md contrib/ \
+ $PKG/usr/doc/$PRGNAM-$VERSION/
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/amneziawg-tools/amneziawg-tools.info b/network/amneziawg-tools/amneziawg-tools.info
new file mode 100644
index 0000000000..bb98ee61ca
--- /dev/null
+++ b/network/amneziawg-tools/amneziawg-tools.info
@@ -0,0 +1,10 @@
+PRGNAM="amneziawg-tools"
+VERSION="1.0.20250903"
+HOMEPAGE="https://github.com/amnezia-vpn/amneziawg-tools"
+DOWNLOAD="https://github.com/amnezia-vpn/amneziawg-tools/archive/v1.0.20250903/amneziawg-tools-1.0.20250903.tar.gz"
+MD5SUM="04fbe7ad8488d72b2c71bc3fe7c00ad3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"
diff --git a/network/amneziawg-tools/slack-desc b/network/amneziawg-tools/slack-desc
new file mode 100644
index 0000000000..c65e4f33e2
--- /dev/null
+++ b/network/amneziawg-tools/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+amneziawg-tools: amneziawg-tools (tools for configuring AmneziaWG)
+amneziawg-tools:
+amneziawg-tools: AmneziaWG is a contemporary version of the popular VPN protocol,
+amneziawg-tools: WireGuard. It's a fork of WireGuard and offers protection against
+amneziawg-tools: detection by Deep Packet Inspection (DPI) systems. At the same time,
+amneziawg-tools: it retains the simplified architecture and high performance of the
+amneziawg-tools: original.
+amneziawg-tools:
+amneziawg-tools: This supplies the main userspace tooling for using and configuring
+amneziawg-tools: WireGuard tunnels, including the awg(8) and awg-quick(8) utilities.
+amneziawg-tools:
diff --git a/network/ani-cli/ani-cli.SlackBuild b/network/ani-cli/ani-cli.SlackBuild
index 2bb5f5089c..a4d0327c3c 100644
--- a/network/ani-cli/ani-cli.SlackBuild
+++ b/network/ani-cli/ani-cli.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for ani-cli
-# Copyright 2022-2024 Vijay Marcel
+# Copyright 2022-2025 Vijay Marcel
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,14 +22,26 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Changelog for ani-cli SlackBuild Script
+# ---------------------------------------------------------------------------------------
+
+# 26/11/2022:Added to SBo
+# 09/02/2024: Updated to version 4.8 ani-cli now depends on fzf,aria2 instead of axel
+# and yt-dlp apart from mpv.Thanks to Andrew Clemons for helping me figure out fzf.
+# 04/09/2024: Updated to version 4.9 for x86-64 bit users, fzf is available as a standalone
+# binary upstream. If you don't want to compile fzf from source you can download the binary
+# and place it in /usr/local/bin.ani-cli can find it.
# 20241009 bkw: Modified by SlackBuilds.org, BUILD=2:
# - Bump BUILD for luajit-2.1.x
+# 13/05/2025: updated to version 4.10
+
+# --------------------------------------------------------------------------------------------
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ani-cli
-VERSION=${VERSION:-4.9}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-4.10}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
diff --git a/network/ani-cli/ani-cli.info b/network/ani-cli/ani-cli.info
index 7b2bf53e98..3a5cbee8db 100644
--- a/network/ani-cli/ani-cli.info
+++ b/network/ani-cli/ani-cli.info
@@ -1,8 +1,8 @@
PRGNAM="ani-cli"
-VERSION="4.9"
+VERSION="4.10"
HOMEPAGE="https://github.com/pystardust/ani-cli"
-DOWNLOAD="https://github.com/pystardust/ani-cli/archive/v4.9/ani-cli-4.9.tar.gz"
-MD5SUM="05813a6ec1fa009629dbc52fa5cf8e2a"
+DOWNLOAD="https://github.com/pystardust/ani-cli/archive/v4.10/ani-cli-4.10.tar.gz"
+MD5SUM="05c578bfd5f53bed460d2acbbb61902d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="aria2 yt-dlp fzf mpv"
diff --git a/network/ani-cli/changelog b/network/ani-cli/changelog
deleted file mode 100644
index 78ef5920bf..0000000000
--- a/network/ani-cli/changelog
+++ /dev/null
@@ -1,21 +0,0 @@
-Changelog for ani-cli SlackBuild Script
---------------------------------------------------------------------
-
-26/11/2022:
-
-Added to SBo
-
-09/02/2024:
-
-Updated to version 4.8
-ani-cli now depends on fzf,aria2 instead of axel
-and yt-dlp apart from mpv.Thanks to Andrew Clemons
-for helping me figure out fzf.
-
-04/09/2024:
-
-Updated to version 4.9
-for x86-64 bit users, fzf is available as a standalone
-binary upstream. If you don't want to compile fzf from
-source you can download the binary and place it in
-/usr/local/bin.ani-cli can find it.
diff --git a/network/anydesk/anydesk.SlackBuild b/network/anydesk/anydesk.SlackBuild
index e0823066ba..84c7a95ac3 100644
--- a/network/anydesk/anydesk.SlackBuild
+++ b/network/anydesk/anydesk.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=anydesk
-VERSION=${VERSION:-6.4.2}
+VERSION=${VERSION:-7.0.2}
BUILD=${BUILD:-1}
RPMBUILD=${RPMBUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/anydesk/anydesk.info b/network/anydesk/anydesk.info
index a0c177365b..06a102c231 100644
--- a/network/anydesk/anydesk.info
+++ b/network/anydesk/anydesk.info
@@ -1,10 +1,10 @@
PRGNAM="anydesk"
-VERSION="6.4.2"
+VERSION="7.0.2"
HOMEPAGE="https://anydesk.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://download.anydesk.com/linux/anydesk_6.4.2-1_x86_64.rpm"
-MD5SUM_x86_64="a20d2932352e6e50b6008e34c852630b"
+DOWNLOAD_x86_64="https://download.anydesk.com/linux/anydesk_7.0.2-1_x86_64.rpm"
+MD5SUM_x86_64="b7c4d786e4931ddec4c5910954dc3d07"
REQUIRES="gtkglext lsb-release"
MAINTAINER="Reza Talebi"
EMAIL="reza.talebi.73@outlook.com"
diff --git a/network/asterisk/asterisk.SlackBuild b/network/asterisk/asterisk.SlackBuild
index c6e4c323b5..c1e6c94a60 100644
--- a/network/asterisk/asterisk.SlackBuild
+++ b/network/asterisk/asterisk.SlackBuild
@@ -2,7 +2,7 @@
# Copyright 2006, Alan Hicks, Lizella, GA
# Copyright 2010, 2013, 2015 Mario Preksavec, Zagreb, Croatia
-# Copyright 2018-2020 Chris Walker, Kempner, TX
+# Copyright 2018-2020, 2024, 2025 Chris Walker, Kempner, TX
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=asterisk
-VERSION=${VERSION:-22.2.0}
+VERSION=${VERSION:-22.5.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/asterisk/asterisk.info b/network/asterisk/asterisk.info
index 33d47f29a2..aed2c23dbf 100644
--- a/network/asterisk/asterisk.info
+++ b/network/asterisk/asterisk.info
@@ -1,7 +1,7 @@
PRGNAM="asterisk"
-VERSION="22.2.0"
+VERSION="22.5.1"
HOMEPAGE="https://www.asterisk.org"
-DOWNLOAD="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22.2.0.tar.gz \
+DOWNLOAD="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22.5.1.tar.gz \
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-core-sounds-en-alaw-1.6.1.tar.gz \
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-core-sounds-en-alaw-1.6.1.tar.gz.sha1 \
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-core-sounds-en-g722-1.6.1.tar.gz \
@@ -34,11 +34,11 @@ DOWNLOAD="https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-22.2.0.
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-moh-opsound-ulaw-2.03.tar.gz.sha1 \
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-moh-opsound-wav-2.03.tar.gz \
https://downloads.asterisk.org/pub/telephony/sounds/releases/asterisk-moh-opsound-wav-2.03.tar.gz.sha1 \
- https://raw.githubusercontent.com/asterisk/third-party/master/jansson/2.14/jansson-2.14.tar.bz2 \
+ https://raw.githubusercontent.com/asterisk/third-party/master/jansson/2.14.1/jansson-2.14.1.tar.bz2 \
https://raw.githubusercontent.com/asterisk/third-party/master/libjwt/1.15.3/libjwt-1.15.3.tar.gz \
https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.15.1/pjproject-2.15.1.tar.bz2 \
http://ponce.cc/slackware/sources/repo/imap.tar.Z"
-MD5SUM="d77d0454eff5934959876c2dbe2a2599 \
+MD5SUM="352fa507ec44b51464918023927ebf21 \
d90e24e30d707e2932cf419cfccff25a \
3c071029c1ab648367666d1e384394bb \
e4a9ee348028fc0e47148f783e7f945b \
@@ -71,7 +71,7 @@ MD5SUM="d77d0454eff5934959876c2dbe2a2599 \
c45fcb1b2044f3929a5f36464006e9f6 \
8277e2c693fd056773b1c15e4d52077d \
011fa4dc9fe35dc3d34ed557bb04263f \
- 3f90473d7d54ebd1cb6a2757396641df \
+ de6549ee68afc08275f3a74b9499ade7 \
f417ef3fe6ee14c0befd86e6836dc4c9 \
6b4b34c14d39224d3342d368f5abbad4 \
d9f7fd4e1d93ad9fca1df8717a79d1c5"
diff --git a/network/asterisk/rc.asterisk.new b/network/asterisk/rc.asterisk.new
index b8c5abcc37..4e961fd618 100644
--- a/network/asterisk/rc.asterisk.new
+++ b/network/asterisk/rc.asterisk.new
@@ -55,6 +55,13 @@ asterisk_restart() {
fi
}
+asterisk_reload() {
+ if [ -r /var/run/asterisk/asterisk.pid ]; then
+ echo "Reloading Asterisk /usr/sbin/asterisk -x 'core reload'"
+ /usr/sbin/asterisk -x 'core reload'
+ fi
+}
+
case "$1" in
'start')
asterisk_start
@@ -62,6 +69,9 @@ case "$1" in
'stop')
asterisk_stop
;;
+ 'reload')
+ asterisk_reload
+ ;;
'restart')
asterisk_restart
;;
diff --git a/network/authbind/authbind.SlackBuild b/network/authbind/authbind.SlackBuild
index 419cce58cb..aa22dd2f34 100644
--- a/network/authbind/authbind.SlackBuild
+++ b/network/authbind/authbind.SlackBuild
@@ -12,6 +12,11 @@
# packaging stuff (debian/rules and debian/changelog), which we don't
# use.
+# 20250618 bkw: Addendum to the above: 2.2.0 is the same. The
+# install and install_man targets in the Makefile have changed
+# slightly; all the other changes are in the debian/ dir which
+# we don't use.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=authbind
diff --git a/network/avahi/avahi.SlackBuild b/network/avahi/avahi.SlackBuild
index e81a77cc29..8ef58a1590 100644
--- a/network/avahi/avahi.SlackBuild
+++ b/network/avahi/avahi.SlackBuild
@@ -30,8 +30,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=avahi
-VERSION=${VERSION:-0.8}
-BUILD=${BUILD:-7}
+VERSION=${VERSION:-20240306_709e60f}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,14 +52,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-# Support for mono
-if [ "${MONO:-no}" = "no" ]; then
- MONO="--disable-mono"
-else
- MONO="--enable-mono"
-fi
-MONO="--disable-mono" # mono support not working ATM
-
warn_accounts() {
echo " You must have an avahi user and group to run this script. "
echo " Something like this should suffice for most systems: "
@@ -96,7 +88,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.lz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -108,31 +100,7 @@ find -L . \
# This patch is mine --rworkman
patch -p1 --verbose < $CWD/patches/fixup_avahi-dnsconfd.action.patch
-# Thanks to LFS for this patch
-patch -p1 --verbose < $CWD/patches/ipv6_race_condition_fix.patch
-
-# Thanks to Debian for these patches
-patch -p1 --verbose < $CWD/patches/man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch
-patch -p1 --verbose < $CWD/patches/man-add-missing-bshell.1-symlink.patch
-patch -p1 --verbose < $CWD/patches/Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch
-patch -p1 --verbose < $CWD/patches/avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch
-patch -p1 --verbose < $CWD/patches/fix-bytestring-decoding-for-proper-display.patch
-patch -p1 --verbose < $CWD/patches/avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch
-patch -p1 --verbose < $CWD/patches/Fetch-build-db-from-upstream-git.patch
-patch -p1 --verbose < $CWD/patches/build-db-Use-the-same-database-format-that-the-C-code-exp.patch
-patch -p1 --verbose < $CWD/patches/avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch
-patch -p1 --verbose < $CWD/patches/avahi-client-fix-resource-leak.patch
-patch -p1 --verbose < $CWD/patches/avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch
-patch -p1 --verbose < $CWD/patches/CVE-2021-3502.patch
-
-# Okay, I had to cheat a bit on the manual pages; there's a commit
-# in git that will fix this, so I just built a git checkout, grabbed
-# the built manual pages, and we'll drop them into place so the build
-# will work for this released version...
-cat $CWD/bssh.1 > man/bssh.1
-cat $CWD/avahi-discover.1 > man/avahi-discover.1
-
-autoreconf -vif
+NOCONFIGURE=1 ./autogen.sh
export PYTHON=python3
CFLAGS="$SLKCFLAGS" \
@@ -147,8 +115,10 @@ CXXFLAGS="$SLKCFLAGS" \
--with-systemdsystemunitdir=no \
--enable-tests \
--disable-static \
+ --disable-mono \
--disable-monodoc \
--disable-autoipd \
+ --disable-libsystemd \
--enable-compat-libdns_sd \
--enable-python-dbus \
--enable-glib \
@@ -160,6 +130,7 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-qt4 \
--disable-qt3 \
--enable-core-docs \
+ --disable-manpages \
--with-dbus-sys=/usr/share/dbus-1/system.d \
--with-avahi-user=avahi \
--with-avahi-group=avahi \
@@ -167,8 +138,7 @@ CXXFLAGS="$SLKCFLAGS" \
--with-distro=slackware \
--program-prefix= \
--program-suffix= \
- --build=$ARCH-slackware-linux \
- $MONO
+ --build=$ARCH-slackware-linux
make
make install-strip DESTDIR=$PKG
@@ -179,18 +149,27 @@ rmdir $PKG/run &> /dev/null || true
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la
+mkdir -p $PKG/usr/man/man1 $PKG/usr/man/man5 $PKG/usr/man/man8
+for i in $CWD/man/man1/* ; do cat $i > $PKG/usr/man/man1/$(basename $i) ; done
+for i in $CWD/man/man5/* ; do cat $i > $PKG/usr/man/man5/$(basename $i) ; done
+for i in $CWD/man/man8/* ; do cat $i > $PKG/usr/man/man8/$(basename $i) ; done
find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $(find $PKG/usr/man -type l); do ln -s $(readlink $i).gz $i.gz; rm $i; done
mv $PKG/etc/rc.d/rc.avahidaemon $PKG/etc/rc.d/rc.avahidaemon.new
mv $PKG/etc/rc.d/rc.avahidnsconfd $PKG/etc/rc.d/rc.avahidnsconfd.new
mv $PKG/etc/avahi/avahi-daemon.conf $PKG/etc/avahi/avahi-daemon.conf.new
+# Fix python3 shebangs:
sed -i "s|#!python3|#!/usr/bin/python3|g" $PKG/usr/bin/avahi-{discover,bookmarks}
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
rm -f docs/INSTALL
-cp -a LICENSE docs/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/* $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/usr/doc/$PRGNAM-$VERSION/README $PKG/usr/doc/$PRGNAM-$VERSION/README.too
+cp -a LICENSE* README* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/avahi/avahi.info b/network/avahi/avahi.info
index ced5e61121..22888a7b75 100644
--- a/network/avahi/avahi.info
+++ b/network/avahi/avahi.info
@@ -1,8 +1,8 @@
PRGNAM="avahi"
-VERSION="0.8"
+VERSION="20240306_709e60f"
HOMEPAGE="http://avahi.org/"
-DOWNLOAD="https://github.com/lathiat/avahi/releases/download/v0.8/avahi-0.8.tar.gz"
-MD5SUM="229c6aa30674fc43c202b22c5f8c2be7"
+DOWNLOAD="https://mirrors.slackware.com/slackware/slackware64-current/source/l/avahi/avahi-20240306_709e60f.tar.lz"
+MD5SUM="4f289929948f63b4f92f5c3913ea13ee"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libdaemon"
diff --git a/network/avahi/man/man1/avahi-bookmarks.1 b/network/avahi/man/man1/avahi-bookmarks.1
new file mode 100644
index 0000000000..80b89f1c1b
--- /dev/null
+++ b/network/avahi/man/man1/avahi-bookmarks.1
@@ -0,0 +1,33 @@
+.TH avahi-bookmarks 1 User Manuals
+.SH NAME
+avahi-bookmarks \- Web service showing mDNS/DNS-SD announced HTTP services using the Avahi daemon
+.SH SYNOPSIS
+\fBavahi-bookmarks
+\f1
+.SH DESCRIPTION
+A web service for listing HTTP services that are announced via mDNS/DNS-SD using the Avahi daemon. avahi-bookmarks opens a TCP socket on port 8080 and waits for incoming HTTP connections returning a dynamic web site containing links to all services of type _http._tcp on the LAN. Point your browser to http://localhost:8080/ to make use of avahi-bookmarks.
+.SH OPTIONS
+.TP
+\fB-p | --port=\f1 \fIPORT\f1
+Specify a TCP port number to listen on. If omitted defaults to 8080.
+.TP
+\fB-a | --address=\f1 \fIaddress\f1
+Specify an IP address to listen on. If omitted defaults to 127.0.0.1. Specify 0.0.0.0 if you want to allow remote access.
+.TP
+\fB-H | --host-names\f1
+Create links pointing to mDNS host names instead of resolved IP addresses. This is only compatible with your browser if you run some kind of local NSS module to resolve mDNS host names (e.g. nss-mdns). If both -A and -H are omitted avahi-bookmarks detects whether NSS support is available locally. This option conflicts with -A.
+.TP
+\fB-A | --addresses\f1
+Create links pointing to numeric IP addresses instead of mDNS host names. This will break access to hosts running virtual servers. If both -A and -H are omitted avahi-bookmarks detects whether NSS support is available locally. This option conflicts with -H.
+.TP
+\fB-d | --domain\f1=\fIDOMAIN\f1
+The domain to browse for services in.
+.TP
+\fB-h | --help\f1
+Show help
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-browse(1)\f1, \fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man1/avahi-browse.1 b/network/avahi/man/man1/avahi-browse.1
new file mode 100644
index 0000000000..11d17cb880
--- /dev/null
+++ b/network/avahi/man/man1/avahi-browse.1
@@ -0,0 +1,66 @@
+.TH avahi-browse 1 User Manuals
+.SH NAME
+avahi-browse \- Browse for mDNS/DNS-SD services using the Avahi daemon
+.SH SYNOPSIS
+\fBavahi-browse [\fIoptions\fB] \fIservice-type\fB
+
+avahi-browse [\fIoptions\fB] --all\fB
+
+avahi-browse [\fIoptions\fB] --browse-domains\fB
+
+avahi-browse [\fIoptions\fB] --dump-db\fB
+
+avahi-browse-domains [\fIoptions\fB]
+\f1
+.SH DESCRIPTION
+Browse for mDNS/DNS-SD network services and browsing domains using the Avahi daemon.
+.SH OPTIONS
+Specify a DNS-SD service type (e.g. _http._tcp) to browse for on the command line, or \fB-a\f1 to browse for all available service types. Items that appear on the network are prefixed with "+", items that disappear are prefixed with "-". If \fB--resolve\f1 is passed items that are resolved are prefixed with "=".
+.TP
+\fB-a | --all\f1
+Browse for all service types registered on the LAN, not just the one specified on the command line.
+.TP
+\fB-D | --browse-domains\f1
+Browse for browsing domains instead for services. avahi-browse-domains is equivalent to avahi-browse --browse-domains
+.TP
+\fB-d | --domain=\f1 \fIDOMAIN\f1
+Browse in the specified domain. If omitted avahi-browse will browse in the default browsing domain (usually: local)
+.TP
+\fB-v | --verbose\f1
+Enable verbose mode.
+.TP
+\fB-t | --terminate\f1
+Terminate after dumping a more or less complete list.
+.TP
+\fB-c | --cache\f1
+Terminate after dumping all entries available in the cache.
+.TP
+\fB-l | --ignore-local\f1
+Ignore local services, show only remote services.
+.TP
+\fB-r | --resolve\f1
+Automatically resolve services found.
+.TP
+\fB-f | --no-fail\f1
+Don't fail if the daemon is not found running. Instead, wait until it appears. If it disconnects, try to reconnect.
+.TP
+\fB-p | --parsable\f1
+Make output easily parsable for usage in scripts. If enabled fields are separated by semicolons (;), service names are escaped. It is recommended to combine this with \fB--no-db-lookup\f1.
+.TP
+\fB-k | --no-db-lookup\f1
+Don't lookup services types in service type database.
+.TP
+\fB-b | --dump-db\f1
+Dump the service type database (may be combined with -k)
+.TP
+\fB-h | --help\f1
+Show help.
+.TP
+\fB-V | --version\f1
+Show version information.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-publish(1)\f1, \fBavahi-resolve(1)\f1, \fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/avahi-discover.1 b/network/avahi/man/man1/avahi-discover.1
index 085ff1354e..085ff1354e 100644
--- a/network/avahi/avahi-discover.1
+++ b/network/avahi/man/man1/avahi-discover.1
diff --git a/network/avahi/man/man1/avahi-publish.1 b/network/avahi/man/man1/avahi-publish.1
new file mode 100644
index 0000000000..c6bd857d4b
--- /dev/null
+++ b/network/avahi/man/man1/avahi-publish.1
@@ -0,0 +1,52 @@
+.TH avahi-publish-service 1 User Manuals
+.SH NAME
+avahi-publish-service \- Register an mDNS/DNS-SD service or host name or address mapping using the Avahi daemon
+.SH SYNOPSIS
+\fBavahi-publish -s [\fIoptions\fB] \fIname\fB \fIservice-type\fB \fIport\fB [\fITXT data\fB ...]
+
+avahi-publish-service [\fIoptions\fB] \fIname\fB \fIservice-type\fB \fIport\fB [\fITXT data\fB ...]
+
+avahi-publish -a [\fIoptions\fB] \fIhost name\fB \fIaddress\fB
+
+avahi-publish-address [\fIoptions\fB] \fIhost name\fB \fIaddress\fB
+\f1
+.SH DESCRIPTION
+Register an mDNS/DNS-SD service or host name/address mapping using the Avahi daemon.
+.SH OPTIONS
+When calling in service registration mode, specify a DNS-SD service name (e.g. "Lennart's Files"), a service type (e.g. _http._tcp) and an IP port number for the service, optionally followed by any number of TXT record strings on the command line. When calling in address/host name registration mode specify a fully qualified host name and an address (IPv4 or IPv6).
+.TP
+\fB-s | --service\f1
+Register a service. avahi-publish-service is equivalent to avahi-publish -s.
+.TP
+\fB-a | --address\f1
+Register an address/host name mapping. avahi-publish-address is equivalent to avahi-publish -a.
+.TP
+\fB-v | --verbose\f1
+Enable verbose mode.
+.TP
+\fB-H | --host=\f1 \fIHOSTNAME\f1
+Specify a host name for this service, in case it doesn't reside on the local host. This host name needs to be fully qualified and resolvable using mDNS or unicast DNS.
+.TP
+\fB-d | --domain=\f1 \fIDOMAIN\f1
+Publish the service in the specified domain. If omitted the Avahi daemon will publish it in its default domain (usually .local).
+.TP
+\fB--subtype=\f1 \fISUBTYPE\f1
+Register the service with an additional subtype in addition to the main type. DNS-SD subtypes have the form _anon._sub._ftp._tcp, where _anon is the identifier of the subtype and _ftp._tcp is the main type. You may pass this option multiple times to register the service with multiple subtypes.
+.TP
+\fB-R | --no-reverse\f1
+Do not publish reverse entry with address.
+.TP
+\fB-f | --no-fail\f1
+Don't fail if the daemon is not found running. Instead, wait until it appears. If it disconnects, try to reconnect.
+.TP
+\fB-h | --help\f1
+Show help
+.TP
+\fB-V | --version\f1
+Show version information.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-resolve(1)\f1, \fBavahi-browse(1)\f1, \fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man1/avahi-resolve.1 b/network/avahi/man/man1/avahi-resolve.1
new file mode 100644
index 0000000000..8f5e737790
--- /dev/null
+++ b/network/avahi/man/man1/avahi-resolve.1
@@ -0,0 +1,49 @@
+.TH avahi-resolve 1 User Manuals
+.SH NAME
+avahi-resolve \- Resolve one or more mDNS/DNS host name(s) to IP address(es) (and vice versa) using the Avahi daemon
+.SH SYNOPSIS
+\fBavahi-resolve --name \fIhost-name ...\fB
+
+avahi-resolve-host-name \fIhost-name ...\fB
+
+avahi-resolve --address \fIaddress ...\fB
+
+avahi-resolve-address \fIaddress ...\fB
+\f1
+.SH DESCRIPTION
+Resolve one or more mDNS/DNS host name(s) to IP address(es) (and vice versa) using the Avahi daemon.
+.SH OPTIONS
+When passing -n, specify one or more fully qualified mDNS/DNS host name(s) (e.g. "foo.local") to resolve into IP addresses on the command line.
+
+When passing -a, specify one or more IP addresses to resolve into host names. When \fBenable-wide-area\f1 is set to yes in \fBavahi-daemon.conf(5)\f1, reverse lookups will go over unicast DNS first and fallback to mDNS.
+
+avahi-resolve-host-name is equivalent to avahi-resolve --name.
+
+avahi-resolve-address is equivalent to avahi-resolve --address.
+.TP
+\fB-n | --name\f1
+Translate one or more fully qualified host names into addresses.
+.TP
+\fB-a | --address\f1
+Translate one or more addresses into fully qualified host names.
+.TP
+\fB-v | --verbose\f1
+Enable verbose mode.
+.TP
+\fB-6\f1
+When resolving a host name, look for IPv6 addresses exclusively.
+.TP
+\fB-4\f1
+When resolving a host name, look for IPv4 addresses exclusively.
+.TP
+\fB-h | --help\f1
+Show help.
+.TP
+\fB-V | --version\f1
+Show version information.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-publish-address(1)\f1, \fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man1/avahi-set-host-name.1 b/network/avahi/man/man1/avahi-set-host-name.1
new file mode 100644
index 0000000000..9444083006
--- /dev/null
+++ b/network/avahi/man/man1/avahi-set-host-name.1
@@ -0,0 +1,24 @@
+.TH avahi-set-host-name 1 User Manuals
+.SH NAME
+avahi-set-host-name \- Change mDNS host name
+.SH SYNOPSIS
+\fBavahi-set-host-name \fIhost-name\fB
+\f1
+.SH DESCRIPTION
+Set the mDNS host name of a currently running Avahi daemon. The effect of this operation is not persistent across daemon restarts. This operation is usually privileged.
+.SH OPTIONS
+.TP
+\fB-v | --verbose\f1
+Enable verbose mode.
+.TP
+\fB-h | --help\f1
+Show help.
+.TP
+\fB-V | --version\f1
+Show version information.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/bssh.1 b/network/avahi/man/man1/bssh.1
index 913554eb30..913554eb30 100644
--- a/network/avahi/bssh.1
+++ b/network/avahi/man/man1/bssh.1
diff --git a/network/avahi/man/man5/avahi-daemon.conf.5 b/network/avahi/man/man5/avahi-daemon.conf.5
new file mode 100644
index 0000000000..064921ca5e
--- /dev/null
+++ b/network/avahi/man/man5/avahi-daemon.conf.5
@@ -0,0 +1,102 @@
+.TH avahi-daemon.conf 5 User Manuals
+.SH NAME
+avahi-daemon.conf \- avahi-daemon configuration file
+.SH SYNOPSIS
+\fB/etc/avahi/avahi-daemon.conf
+\f1
+.SH DESCRIPTION
+\fIavahi-daemon.conf\f1 is the configuration file for avahi-daemon.
+.SH SECTION [SERVER]
+.TP
+\fBhost-name=\f1 Set the host name avahi-daemon tries to register on the LAN. If omitted defaults to the system host name as set with the sethostname() system call.
+.TP
+\fBhost-name-from-machine-id=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will use the \fBmachine-id(5)\f1 as name on the LAN. It should be noted that this ID uniquely identifies the host. It should be considered "confidential", and must not be exposed in untrusted environments. Defaults to "no".
+.TP
+\fBdomain-name=\f1 Set the default domain name avahi-daemon tries to register its host name and services on the LAN in. If omitted defaults to ".local".
+.TP
+\fBbrowse-domains=\f1 Set a comma separated list of browsing domains (in addition to the default one and those announced inside the default browsing domain). Please note that the user may specify additional browsing domains on the client side, either by setting $AVAHI_BROWSE_DOMAINS to a list of colon separated domains or by adding them to the XDG config file \fI~/.config/avahi/browse-domains\f1 (separated by newlines).
+.TP
+\fBuse-ipv4=\f1 Takes a boolean value ("yes" or "no"). If set to "no" avahi-daemon will not use IPv4 sockets. Default is "yes".
+.TP
+\fBuse-ipv6=\f1 Takes a boolean value ("yes" or "no"). If set to "no" avahi-daemon will not use IPv6 sockets. Default is "yes".
+.TP
+\fBallow-interfaces=\f1 Set a comma separated list of allowed network interfaces that should be used by the avahi-daemon. Traffic on other interfaces will be ignored. If set to an empty list all local interfaces except loopback and point-to-point will be used.
+.TP
+\fBdeny-interfaces=\f1 Set a comma separated list of network interfaces that should be ignored by avahi-daemon. Other not specified interfaces will be used, unless \fBallow-interfaces=\f1 is set. This option takes precedence over \fBallow-interfaces=\f1.
+.TP
+\fBcheck-response-ttl=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", an additional security check is activated: incoming IP packets will be ignored unless the IP TTL is 255. Earlier mDNS specifications required this check. Since this feature may be incompatible with newer implementations of mDNS it defaults to "no". On the other hand it provides extra security.
+.TP
+\fBuse-iff-running=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon monitors the IFF_RUNNING flag bit which is used by some (modern) network drivers to tell user space if a network cable is plugged in (in case of copper ethernet), or the network card is associated with some kind of network (in case of WLAN). If IFF_RUNNING is set avahi-daemon will automatically announce its services on that network. Unfortunately far too many network drivers do not support this flag or support it in a broken way. Therefore this option defaults to "no".
+.TP
+\fBenable-dbus=\f1 Takes either "yes", "no" or "warn". If set to "yes" avahi-daemon connects to D-Bus, offering an object oriented client API. It is only available if Avahi has been compiled with \fB--enable-dbus\f1 in which case it defaults to "yes". "warn" behaves like "yes", but the daemon starts up even when it fails to connect to a D-Bus daemon. In addition, if the connection to the D-Bus daemon is terminated we try to reconnect. (Unless we are in a chroot() environment where this definitely will fail.)
+.TP
+\fBdisallow-other-stacks=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" no other process is allowed to bind to UDP port 5353. This effectively impedes other mDNS stacks from running on the host. Use this as a security measure to make sure that only Avahi is responsible for mDNS traffic. Please note that we do not recommend running multiple mDNS stacks on the same host simultaneously. This hampers reliability and is a waste of resources. However, to not annoy people this option defaults to "no".
+.TP
+\fBallow-point-to-point=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will make use of interfaces with the POINTOPOINT flag set. This option defaults to "no" as it might make mDNS unreliable due to usually large latencies with such links and opens a potential security hole by allowing mDNS access from Internet connections. Use with care and YMMV!
+.TP
+\fBcache-entries-max=\f1 Takes an unsigned integer specifying how many resource records are cached per interface. Bigger values allow mDNS work correctly in large LANs but also increase memory consumption.
+.TP
+\fBclients-max=\f1 Takes an unsigned integer. The maximum number of concurrent D-Bus clients allowed. If the maximum number is reached further clients will be refused until at least one existing client disconnects.
+.TP
+\fBobjects-per-client-max=\f1 Takes an unsigned integer. The maximum number of objects (entry groups, browsers, resolvers) that may be registered per D-Bus client at a time. If the maximum number is reached further object creation will be refused until at least one object is freed.
+.TP
+\fBentries-per-entry-group-max=\f1 Takes an unsigned integer. The maximum number of entries (resource records) per entry group registered by a D-Bus client at a time. If the maximum number is reached further resource records may not be added to an entry group.
+.TP
+\fBratelimit-interval-usec=\f1 Takes an unsigned integer. Sets the per-interface packet rate-limiting interval parameter. Together with \fBratelimit-burst=\f1 this may be used to control the maximum number of packets Avahi will generated in a specific period of time on an interface.
+.TP
+\fBratelimit-burst=\f1 Takes an unsigned integer. Sets the per-interface packet rate-limiting burst parameter. Together with \fBratelimit-interval-usec=\f1 this may be used to control the maximum number of packets Avahi will generated in a specific period of time on an interface.
+.SH SECTION [WIDE-AREA]
+.TP
+\fBenable-wide-area=\f1 Takes a boolean value ("yes" or "no"). Enable wide-area DNS-SD, aka DNS-SD over unicast DNS. If this is enabled only domains ending in .local will be resolved on mDNS, all other domains are resolved via unicast DNS. When this is enabled, unless explicitly specified reverse lookups will go over unicast DNS and fall back to mDNS if unicast DNS lookups fail. If you want to maintain multiple different multicast DNS domains even with this option enabled we encourage you to use subdomains of .local, such as "kitchen.local". This option defaults to "no".
+.SH SECTION [PUBLISH]
+.TP
+\fBdisable-publishing=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", no record will be published by Avahi, not even address records for the local host. Avahi will be started in a querying-only mode. Use this is a security measure. This option defaults to "no"
+.TP
+\fBdisable-user-service-publishing=\f1 Takes a boolean value ("yes" or "no"). If set to "yes", Avahi will still publish address records and suchlike but will not allow user applications to publish services. Use this is a security measure. This option defaults to "no"
+.TP
+\fBadd-service-cookie=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" an implicit TXT entry will be added to all locally registered services, containing a cookie value which is chosen randomly on daemon startup. This can be used to detect if two services on two different interfaces/protocols are actually identical. Defaults to "no".
+.TP
+\fBpublish-addresses=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register mDNS address records for all local IP addresses. Unless you want to use avahi-daemon exclusively for browsing it's recommended to enable this. If you plan to register local services you need to enable this option. Defaults to "yes".
+.TP
+\fBpublish-hinfo=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register an mDNS HINFO record on all interfaces which contains information about the local operating system and CPU, which might be useful for administrative purposes. This is recommended by the mDNS specification but not required. For the sake of privacy you might choose to disable this feature. Defaults to "no".
+.TP
+\fBpublish-workstation=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will register a service of type "_workstation._tcp" on the local LAN. This might be useful for administrative purposes (i.e. browse for all PCs on the LAN), but is not required or recommended by any specification. Newer MacOS X releases register a service of this type. Defaults to "no".
+.TP
+\fBpublish-domain=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will announce the locally used domain name (see above) for browsing by other hosts. Defaults to "yes".
+.TP
+\fBpublish-dns-servers=\f1 Takes a comma separated list of IP addresses for unicast DNS servers. You can use this to announce unicast DNS servers via mDNS. When used in conjunction with avahi-dnsconfd on the client side this allows DHCP-like configuration of unicast DNS servers.
+.TP
+\fBpublish-resolv-conf-dns-servers=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish the unicast DNS servers specified in \fI/etc/resolv.conf\f1 in addition to those specified with \fBpublish-dns-servers\f1. Send avahi-daemon a SIGHUP to have it reload this file. Defaults to "no".
+.TP
+\fBpublish-aaaa-on-ipv4=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish an IPv6 AAAA record via IPv4, i.e. the local IPv6 addresses can be resolved using an IPv4 transport. Only useful when IPv4 is enabled with \fBuse-ipv4=true\f1. Defaults to "yes".
+.TP
+\fBpublish-a-on-ipv6=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will publish an IPv4 A record via IPv6, i.e. the local IPv4 addresses can be resolved using an IPv6 transport. Only useful when IPv6 is enabled with \fBuse-ipv6=true\f1. Defaults to "no".
+.SH SECTION [REFLECTOR]
+.TP
+\fBenable-reflector=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" avahi-daemon will reflect incoming mDNS requests to all local network interfaces, effectively allowing clients to browse mDNS/DNS-SD services on all networks connected to the gateway. The gateway is somewhat intelligent and should work with all kinds of mDNS traffic, though some functionality is lost (specifically the unicast reply bit, which is used rarely anyway). Make sure to not run multiple reflectors between the same networks, this might cause them to play Ping Pong with mDNS packets. Defaults to "no".
+.TP
+\fBreflect-ipv=\f1 Takes a boolean value ("yes" or "no"). If set to "yes" and \fBenable-reflector\f1 is enabled, avahi-daemon will forward mDNS traffic between IPv4 and IPv6, which is usually not recommended. Defaults to "no".
+.TP
+\fBreflect-filters=\f1 Set a comma separated list of allowed service names to be reflected. Each service that is seen must match an entry in this list to be reflected to other networks. This list can match the type of service or the name of the machine providing the service. Defaults to allowing all services.
+.SH SECTION [RLIMITS]
+This section is used to define system resource limits for the daemon. See \fBsetrlimit(2)\f1 for more information. If any of the options is not specified in the configuration file, avahi-daemon does not change it from the system defaults.
+.TP
+\fBrlimit-as=\f1 Value in bytes for RLIMIT_AS (maximum size of the process's virtual memory). Sensible values are heavily system dependent.
+.TP
+\fBrlimit-core=\f1 Value in bytes for RLIMIT_CORE (maximum core file size). Unless you want to debug avahi-daemon, it is safe to set this to 0.
+.TP
+\fBrlimit-data=\f1 Value in bytes for RLIMIT_DATA (maximum size of the process's data segment). Sensible values are heavily system dependent.
+.TP
+\fBrlimit-fsize=\f1 Value for RLIMIT_FSIZE (maximum size of files the process may create). Since avahi-daemon shouldn't write any files to disk, it is safe to set this to 0.
+.TP
+\fBrlimit-nofile=\f1 Value for RLIMIT_NOFILE (open file descriptors). avahi-daemon shouldn't need more than 15 to 20 open file descriptors concurrently.
+.TP
+\fBrlimit-stack=\f1 Value in bytes for RLIMIT_STACK (maximum size of the process stack). Sensible values are heavily system dependent.
+.TP
+\fBrlimit-nproc=\f1 Value for RLIMIT_NPROC (max number of processes a user can launch). avahi-daemon forks of a helper process on systems where \fBchroot(2)\f1 is available therefore this value should not be set below 2. Note that while the process limit only applies to this process, the total count of processes to reach that limit includes all processes on the system with the same UID, including any containers without UID remapping (such as lxd containers with security.privileged=true). The default configuration of 3 was removed to prevent problems in this scenario.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon(8)\f1, \fBavahi-dnsconfd(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man5/avahi.hosts.5 b/network/avahi/man/man5/avahi.hosts.5
new file mode 100644
index 0000000000..dc4f73fa63
--- /dev/null
+++ b/network/avahi/man/man5/avahi.hosts.5
@@ -0,0 +1,16 @@
+.TH avahi.hosts 5 User Manuals
+.SH NAME
+avahi.hosts \- avahi-daemon static host name file
+.SH SYNOPSIS
+\fB/etc/avahi/hosts
+\f1
+.SH DESCRIPTION
+\fI/etc/avahi/hosts\f1 is a file which may be used to define static host name to IP address mappings for multicast DNS. This is especially useful when publishing DNS-SD services on behalf of other hosts. See \fBavahi.service(5)\f1 for more information.
+
+The file format is similar to the one of \fI/etc/hosts\f1: on each line an IP address and the corresponding host name. The host names should be in FQDN form, i.e. with appended .local suffix.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon(8)\f1, \fBavahi.service(5)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man5/avahi.service.5 b/network/avahi/man/man5/avahi.service.5
new file mode 100644
index 0000000000..f56d7a6794
--- /dev/null
+++ b/network/avahi/man/man5/avahi.service.5
@@ -0,0 +1,41 @@
+.TH avahi.service 5 User Manuals
+.SH NAME
+avahi.service \- avahi-daemon static service file
+.SH SYNOPSIS
+\fB/etc/avahi/services/*.service
+\f1
+.SH DESCRIPTION
+\fI/etc/avahi/services/*.service\f1 are XML fragments containing static DNS-SD service data. Every service file can contain multiple service definitions which share the same name. This is useful for publishing service data for services which implement multiple protocols. (i.e. a printer implementing _ipp._tcp and _printer._tcp)
+.SH XML TAGS
+.TP
+\fB<service-group>\f1 The document tag of avahi service files. Should contain one \fB<name>\f1 and one or more \fB<service>\f1 elements.
+.TP
+\fB<name replace-wildcards="yes|no">\f1 The service name. If \fBreplace-wildcards\f1 is "yes", any occurrence of the string "%h" will be replaced by the local host name. This can be used for service names like "Remote Terminal on %h". If \fBreplace-wildcards\f1 is not specified, defaults to "no".
+.TP
+\fB<service protocol="ipv4|ipv6|any">\f1 Contains the service information for exactly one service type. Should contain one \fB<type>\f1 and one \fB<port>\f1 element. Optionally it may contain one \fB<domain-name>\f1, one \fB<host-name>\f1, any number of \fB<subtype>\f1 and any number of \fB<txt-record>\f1 elements. The attribute \fBprotocol\f1 specifies the protocol to advertise the service on. If \fBany\f1 is used (which is the default), the service will be advertised on both IPv4 and IPv6.
+.TP
+\fB<type>\f1 Contains the DNS-SD service type for this service. e.g. "_http._tcp".
+.TP
+\fB<subtype>\f1 Contains an additional DNS-SD service subtype for this service. e.g. "_anon._sub._ftp._tcp".
+.TP
+\fB<domain-name>\f1 The domain name this service should be registered. If omitted defaults to the default domain of the avahi daemon. (probably .local)
+.TP
+\fB<host-name>\f1 The host name of the host that provides this service. This should be a host that is resolvable by multicast or unicast DNS. Please note that you need to specify a fully-qualified domain name (FQDN) here, i.e. .local is not appended implicitly! The host name doesn't need to be part of the domain specified in \fB<domain-name>\f1. See \fBavahi.hosts(5)\f1 for more information how to publish additional host name mappings.
+.TP
+\fB<port>\f1 The IP port number the service listens on.
+.TP
+\fB<txt-record value-format="text|binary-hex|binary-base64">\f1 DNS-SD TXT record data. If \fBvalue-format\f1 is "text", the value of the TXT record is taken verbatim. If \fBvalue-format\f1 is "binary-hex" then the value of TXT record is decoded by taking pairs of characters after the "=" char and interpreting them as the textual representation of the two-digit hexadecimal number. Both uppercase and lowercase hexadecimal digits are allowed. The 0x or 0X prefix is not allowed. This requires the length of the value to be even. If \fBvalue-format\f1 is "binary-base64" then the value of TXT record is decoded with a base64 decoder. The character set used is A-Za-z0-9+/. This requires the length of the value to be a multiple of 4, with "=" as padding at the end. If \fBvalue-format\f1 is not specified, defaults to "text". Examples (all the values are decoded to the string "value" without quotes):
+
+<txt-record>key=value</txt-record>
+
+<txt-record value-format="text">key=value</txt-record>
+
+<txt-record value-format="binary-hex">key=76616c7565</txt-record>
+
+<txt-record value-format="binary-base64">key=dmFsdWU=</txt-record>
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon(8)\f1, \fBavahi.hosts(5)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man8/avahi-daemon.8 b/network/avahi/man/man8/avahi-daemon.8
new file mode 100644
index 0000000000..bf592f2da6
--- /dev/null
+++ b/network/avahi/man/man8/avahi-daemon.8
@@ -0,0 +1,76 @@
+.TH avahi-daemon 8 User Manuals
+.SH NAME
+avahi-daemon \- The Avahi mDNS/DNS-SD daemon
+.SH SYNOPSIS
+\fBavahi-daemon [\fIoptions\fB]
+
+avahi-daemon --kill\fB
+
+avahi-daemon --reload\fB
+
+avahi-daemon --check\fB
+\f1
+.SH DESCRIPTION
+The Avahi mDNS/DNS-SD daemon implements Apple's Zeroconf architecture (also known as "Rendezvous" or "Bonjour"). The daemon registers local IP addresses and static services using mDNS/DNS-SD and provides two IPC APIs for local programs to make use of the mDNS record cache the avahi-daemon maintains. First there is the so called "simple protocol" which is used exclusively by avahi-dnsconfd (a daemon which configures unicast DNS servers using server info published via mDNS) and nss-mdns (a libc NSS plugin, providing name resolution via mDNS). Finally there is the D-Bus interface which provides a rich object oriented interface to D-Bus enabled applications.
+
+Upon startup avahi-daemon interprets its configuration file \fI/etc/avahi/avahi-daemon.conf\f1 and reads XML fragments from \fI/etc/avahi/services/*.service\f1 which may define static DNS-SD services. If you enable \fBpublish-resolv-conf-dns-servers\f1 in \fIavahi-daemon.conf\f1 the file \fI/etc/resolv.conf\f1 will be read, too.
+.SH OPTIONS
+.TP
+\fB-f | --file=\f1 \fIFILE\f1
+Specify the configuration file to read. (default: /etc/avahi/avahi-daemon.conf)
+.TP
+\fB-D | --daemonize\f1
+Daemonize after startup. Implies \fB--syslog\f1.
+.TP
+\fB-s | --syslog\f1
+Log to syslog instead of STDERR. Implied by \fB--daemonize\f1.
+.TP
+\fB--debug\f1
+Increase verbosity to debug level.
+.TP
+\fB--no-rlimits\f1
+Don't enforce resource limits as specified in the configuration file. (See \fBsetrlimit(2)\f1 for more information)
+.TP
+\fB--no-drop-root\f1
+Don't drop root privileges after startup and don't require daemon to be started as root. We recommend not to use this option.
+.TP
+\fB--no-chroot\f1
+Don't \fBchroot(2)\f1 the daemon. This option is only available when compiled with chroot() support.
+.TP
+\fB--no-proc-title\f1
+Don't change the process name while running. Unless this option is specified avahi-daemon will reflect its current state and the selected host name in the process title.
+.TP
+\fB-k | --kill\f1
+Kill an already running avahi-daemon. (equivalent to sending a SIGTERM)
+.TP
+\fB-r | --reload\f1
+Tell an already running avahi-daemon to reread \fI/etc/resolv.conf\f1 (in case you enabled \fBpublish-resolv-conf-dns-servers\f1 in \fIavahi-daemon.conf\f1) and the files from \fI/etc/avahi/services/\f1. Please note that this will not reload the \fI/etc/avahi/avahi-daemon.conf\f1. (equivalent to sending a SIGHUP)
+.TP
+\fB-c | --check\f1
+Return 0 as return code when avahi-daemon is already running.
+.TP
+\fB-h | --help\f1
+Show help
+.TP
+\fB-v | --version\f1
+Show version information
+.SH FILES
+\fI/etc/avahi/avahi-daemon.conf\f1: the default configuration file for avahi-daemon, see \fBavahi-daemon.conf(5)\f1 for more information.
+
+\fI/etc/avahi/hosts\f1: additional static hostname mappings to publish in mDNS, see \fBavahi.hosts(5)\f1 for more information.
+
+\fI/etc/avahi/services/*.service\f1: static service definitions, see \fBavahi.service(5)\f1 for more information.
+.SH SIGNALS
+\fISIGINT, SIGTERM\f1: avahi-daemon will shutdown. (Same as \fB--kill\f1).
+
+\fISIGHUP\f1: avahi-daemon will reload unicast DNS server data from \fI/etc/resolv.conf\f1 and static service definitions from \fI/etc/avahi/services/\f1. (Same as \fB--reload\f1)
+
+\fISIGUSR1\f1: avahi-daemon will dump local and remote cached resource record data to syslog.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon.conf(5)\f1, \fBavahi.hosts(5)\f1, \fBavahi.service(5)\f1, \fBavahi-dnsconfd(8)\f1, \fBavahi-set-host-name(1)\f1
+
+http://avahi.org/wiki/AvahiAndUnicastDotLocal documents the problems when using Avahi in a unicast DNS zone .local.
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man8/avahi-dnsconfd.8 b/network/avahi/man/man8/avahi-dnsconfd.8
new file mode 100644
index 0000000000..941547597e
--- /dev/null
+++ b/network/avahi/man/man8/avahi-dnsconfd.8
@@ -0,0 +1,48 @@
+.TH avahi-dnsconfd 8 User Manuals
+.SH NAME
+avahi-dnsconfd \- Unicast DNS server from mDNS/DNS-SD configuration daemon
+.SH SYNOPSIS
+\fBavahi-dnsconfd [\fIoptions\fB]
+
+avahi-dnsconfd --kill\fB
+
+avahi-dnsconfd --refresh\fB
+
+avahi-dnsconfd --check\fB
+\f1
+.SH DESCRIPTION
+avahi-dnsconfd connects to a running avahi-daemon and runs the script \fI/etc/avahi/avahi-dnsconfd.action\f1 for each unicast DNS server that is announced on the local LAN. This is useful for configuring unicast DNS servers in a DHCP-like fashion with mDNS.
+.SH OPTIONS
+.TP
+\fB-D | --daemonize\f1
+Daemonize after startup and redirect log messages to syslog.
+.TP
+\fB-s | --syslog\f1
+Log to syslog instead of STDERR. Implied by \fB--daemonize\f1.
+.TP
+\fB-k | --kill\f1
+Kill an already running avahi-dnsconfd. (equivalent to sending a SIGTERM)
+.TP
+\fB-r | --refresh\f1
+Tell an already running avahi-dnsconfd to refresh the DNS server data. (equivalent to sending a SIGHUP)
+.TP
+\fB-c | --check\f1
+Return 0 as return code when avahi-dnsconfd is already running.
+.TP
+\fB-h | --help\f1
+Show help
+.TP
+\fB-v | --version\f1
+Show version information
+.SH FILES
+\fI/etc/avahi/avahi-dnsconfd.action\f1: the script to run when a DNS server is found or removed.
+.SH SIGNALS
+\fISIGINT, SIGTERM\f1: avahi-dnsconfd will shutdown. This is issued by passing --kill to avahi-daemon.
+
+\fISIGHUP\f1: avahi-dnsconfd will refresh the DNS server data.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-daemon(8)\f1, \fBavahi-dnsconfd.action(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/man/man8/avahi-dnsconfd.action.8 b/network/avahi/man/man8/avahi-dnsconfd.action.8
new file mode 100644
index 0000000000..3f2f16a3d0
--- /dev/null
+++ b/network/avahi/man/man8/avahi-dnsconfd.action.8
@@ -0,0 +1,30 @@
+.TH avahi-dnsconfd.action 8 User Manuals
+.SH NAME
+avahi-dnsconfd.action \- avahi-dnsconfd action script
+.SH SYNOPSIS
+\fB/etc/avahi/avahi-dnsconfd.action
+\f1
+.SH DESCRIPTION
+\fIavahi-dnsconfd.action\f1 is the action script that is called whenever a new unicast DNS server is found or removed by avahi-dnsconfd. The default script as shipped with avahi patches \fI/etc/resolv.conf\f1 to reflect the changed unicast DNS server configuration.
+.SH PARAMETERS
+.TP
+\fBargv[1]\f1 Contains the character "+" if the DNS server is new, "-" when it shall be removed from the DNS server list.
+.TP
+\fBargv[2]\f1 The IP address of the DNS server.
+.TP
+\fBargv[3]\f1 Numerical network interface number this DNS server was found on.
+.TP
+\fBargv[4]\f1 Numerical protocol number this DNS server was found on. (usually 2 for IPv4 and 10 for IPv6)
+.SH ENVIRONMENT
+.TP
+\fBAVAHI_INTERFACE\f1 Contains the textual interface name the corresponds with argv[3]. (e.g. "eth0")
+.TP
+\fBAVAHI_INTERFACE_DNS_SERVERS\f1 Contains a list of all DNS servers that avahi-dnsconfd found on the interface \fB$AVAHI_INTERFACE\f1, separated by spaces.
+.TP
+\fBAVAHI_DNS_SERVERS\f1 Contains a list of all DNS server that avahi-dnsconfd found on all interfaces, separated by spaces.
+.SH AUTHORS
+The Avahi Developers <avahi (at) lists (dot) freedesktop (dot) org>; Avahi is available from \fBhttp://avahi.org/\f1
+.SH SEE ALSO
+\fBavahi-dnsconfd(8)\f1, \fBavahi-daemon(8)\f1
+.SH COMMENTS
+This man page was written using \fBxml2man(1)\f1 by Oliver Kurth.
diff --git a/network/avahi/patches/CVE-2021-3502.patch b/network/avahi/patches/CVE-2021-3502.patch
deleted file mode 100644
index 7b0449a2e4..0000000000
--- a/network/avahi/patches/CVE-2021-3502.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From 9d31939e55280a733d930b15ac9e4dda4497680c Mon Sep 17 00:00:00 2001
-From: Tommi Rantala <tommi.t.rantala@nokia.com>
-Date: Mon, 8 Feb 2021 11:04:43 +0200
-Subject: [PATCH] Fix NULL pointer crashes from #175
-
-avahi-daemon is crashing when running "ping .local".
-The crash is due to failing assertion from NULL pointer.
-Add missing NULL pointer checks to fix it.
-
-Introduced in #175 - merge commit 8f75a045709a780c8cf92a6a21e9d35b593bdecd
----
- avahi-core/browse-dns-server.c | 5 ++++-
- avahi-core/browse-domain.c | 5 ++++-
- avahi-core/browse-service-type.c | 3 +++
- avahi-core/browse-service.c | 3 +++
- avahi-core/browse.c | 3 +++
- avahi-core/resolve-address.c | 5 ++++-
- avahi-core/resolve-host-name.c | 5 ++++-
- avahi-core/resolve-service.c | 5 ++++-
- 8 files changed, 29 insertions(+), 5 deletions(-)
-
-diff --git a/avahi-core/browse-dns-server.c b/avahi-core/browse-dns-server.c
-index 049752e9..c2d914fa 100644
---- a/avahi-core/browse-dns-server.c
-+++ b/avahi-core/browse-dns-server.c
-@@ -343,7 +343,10 @@ AvahiSDNSServerBrowser *avahi_s_dns_server_browser_new(
- AvahiSDNSServerBrowser* b;
-
- b = avahi_s_dns_server_browser_prepare(server, interface, protocol, domain, type, aprotocol, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_dns_server_browser_start(b);
-
- return b;
--}
-\ No newline at end of file
-+}
-diff --git a/avahi-core/browse-domain.c b/avahi-core/browse-domain.c
-index f145d56a..06fa70c0 100644
---- a/avahi-core/browse-domain.c
-+++ b/avahi-core/browse-domain.c
-@@ -253,7 +253,10 @@ AvahiSDomainBrowser *avahi_s_domain_browser_new(
- AvahiSDomainBrowser *b;
-
- b = avahi_s_domain_browser_prepare(server, interface, protocol, domain, type, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_domain_browser_start(b);
-
- return b;
--}
-\ No newline at end of file
-+}
-diff --git a/avahi-core/browse-service-type.c b/avahi-core/browse-service-type.c
-index fdd22dcd..b1fc7af8 100644
---- a/avahi-core/browse-service-type.c
-+++ b/avahi-core/browse-service-type.c
-@@ -171,6 +171,9 @@ AvahiSServiceTypeBrowser *avahi_s_service_type_browser_new(
- AvahiSServiceTypeBrowser *b;
-
- b = avahi_s_service_type_browser_prepare(server, interface, protocol, domain, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_service_type_browser_start(b);
-
- return b;
-diff --git a/avahi-core/browse-service.c b/avahi-core/browse-service.c
-index 5531360c..63e0275a 100644
---- a/avahi-core/browse-service.c
-+++ b/avahi-core/browse-service.c
-@@ -184,6 +184,9 @@ AvahiSServiceBrowser *avahi_s_service_browser_new(
- AvahiSServiceBrowser *b;
-
- b = avahi_s_service_browser_prepare(server, interface, protocol, service_type, domain, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_service_browser_start(b);
-
- return b;
-diff --git a/avahi-core/browse.c b/avahi-core/browse.c
-index 2941e579..e8a915e9 100644
---- a/avahi-core/browse.c
-+++ b/avahi-core/browse.c
-@@ -634,6 +634,9 @@ AvahiSRecordBrowser *avahi_s_record_browser_new(
- AvahiSRecordBrowser *b;
-
- b = avahi_s_record_browser_prepare(server, interface, protocol, key, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_record_browser_start_query(b);
-
- return b;
-diff --git a/avahi-core/resolve-address.c b/avahi-core/resolve-address.c
-index ac0b29b1..e61dd242 100644
---- a/avahi-core/resolve-address.c
-+++ b/avahi-core/resolve-address.c
-@@ -286,7 +286,10 @@ AvahiSAddressResolver *avahi_s_address_resolver_new(
- AvahiSAddressResolver *b;
-
- b = avahi_s_address_resolver_prepare(server, interface, protocol, address, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_address_resolver_start(b);
-
- return b;
--}
-\ No newline at end of file
-+}
-diff --git a/avahi-core/resolve-host-name.c b/avahi-core/resolve-host-name.c
-index 808b0e72..4e8e5973 100644
---- a/avahi-core/resolve-host-name.c
-+++ b/avahi-core/resolve-host-name.c
-@@ -318,7 +318,10 @@ AvahiSHostNameResolver *avahi_s_host_name_resolver_new(
- AvahiSHostNameResolver *b;
-
- b = avahi_s_host_name_resolver_prepare(server, interface, protocol, host_name, aprotocol, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_host_name_resolver_start(b);
-
- return b;
--}
-\ No newline at end of file
-+}
-diff --git a/avahi-core/resolve-service.c b/avahi-core/resolve-service.c
-index 66bf3cae..43771763 100644
---- a/avahi-core/resolve-service.c
-+++ b/avahi-core/resolve-service.c
-@@ -519,7 +519,10 @@ AvahiSServiceResolver *avahi_s_service_resolver_new(
- AvahiSServiceResolver *b;
-
- b = avahi_s_service_resolver_prepare(server, interface, protocol, name, type, domain, aprotocol, flags, callback, userdata);
-+ if (!b)
-+ return NULL;
-+
- avahi_s_service_resolver_start(b);
-
- return b;
--}
-\ No newline at end of file
-+}
diff --git a/network/avahi/patches/Fetch-build-db-from-upstream-git.patch b/network/avahi/patches/Fetch-build-db-from-upstream-git.patch
deleted file mode 100644
index eacb6dab5a..0000000000
--- a/network/avahi/patches/Fetch-build-db-from-upstream-git.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-From: Andreas Henriksson <andreas@fatal.se>
-Date: Sat, 26 Oct 2019 15:49:35 +0200
-Subject: Fetch build-db from upstream git
-
-Fetch the build-db file from:
-https://raw.githubusercontent.com/lathiat/avahi/master/service-type-database/build-db
-
-This file is missing dist tarball, likely caused by changes in:
-https://github.com/lathiat/avahi/pull/134
-
-Carry it as a patch for now.
----
- service-type-database/build-db | 49 ++++++++++++++++++++++++++++++++++++++++++
- 1 file changed, 49 insertions(+)
- create mode 100755 service-type-database/build-db
-
-diff --git a/service-type-database/build-db b/service-type-database/build-db
-new file mode 100755
-index 0000000..78ee892
---- /dev/null
-+++ b/service-type-database/build-db
-@@ -0,0 +1,49 @@
-+#!/usr/bin/env python
-+# -*-python-*-
-+# This file is part of avahi.
-+#
-+# avahi is free software; you can redistribute it and/or modify it
-+# under the terms of the GNU Lesser General Public License as
-+# published by the Free Software Foundation; either version 2 of the
-+# License, or (at your option) any later version.
-+#
-+# avahi is distributed in the hope that it will be useful, but WITHOUT
-+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
-+# License for more details.
-+#
-+# You should have received a copy of the GNU Lesser General Public
-+# License along with avahi; if not, write to the Free Software
-+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
-+# USA.
-+
-+try:
-+ import anydbm as dbm
-+except ImportError:
-+ import dbm
-+
-+import sys
-+
-+if len(sys.argv) > 1:
-+ infn = sys.argv[1]
-+else:
-+ infn = "service-types"
-+
-+if len(sys.argv) > 2:
-+ outfn = sys.argv[2]
-+else:
-+ outfn = infn + ".db"
-+
-+db = dbm.open(outfn, "n")
-+
-+for ln in open(infn, "r"):
-+ ln = ln.strip(" \r\n\t")
-+
-+ if ln == "" or ln.startswith("#"):
-+ continue
-+
-+ t, n = ln.split(":", 1)
-+
-+ db[t.strip()] = n.strip()
-+
-+db.close()
diff --git a/network/avahi/patches/Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch b/network/avahi/patches/Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch
deleted file mode 100644
index 076442706a..0000000000
--- a/network/avahi/patches/Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-From: Andreas Henriksson <andreas@fatal.se>
-Date: Thu, 24 Aug 2017 17:52:19 +0200
-Subject: Ship avahi-discover(1), bssh(1) and bvnc(1) also for GTK3
-
-These manpages went missing when you disabled gtk2 builds....
-
-Forwarded: https://github.com/lathiat/avahi/pull/142
-Applied-upstream: 0.9, commit:751be804e891aec5701a059144e2f5cbfc981b36
----
- man/Makefile.am | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/man/Makefile.am b/man/Makefile.am
-index 77a27bd..289b942 100644
---- a/man/Makefile.am
-+++ b/man/Makefile.am
-@@ -56,7 +56,7 @@ man_MANS += \
- avahi-publish.1 \
- avahi-set-host-name.1
-
--if HAVE_GTK
-+if HAVE_GTK2OR3
- man_MANS += \
- bssh.1
- endif
-@@ -64,12 +64,13 @@ endif
- if HAVE_PYTHON
- man_MANS += \
- avahi-bookmarks.1
--if HAVE_GTK
-+endif
-+
-+if HAVE_PYGOBJECT
- man_MANS += \
- avahi-discover.1
- endif
- endif
--endif
-
- if ENABLE_AUTOIPD
- if HAVE_LIBDAEMON
-@@ -134,7 +135,7 @@ EXTRA_DIST = \
- if HAVE_DBUS
-
- BSSH_LN =
--if HAVE_GTK
-+if HAVE_GTK2OR3
- if HAVE_GLIB
- BSSH_LN += $(LN_S) bssh.1 bvnc.1 &&
- BSSH_LN += $(LN_S) bssh.1 bshell.1 &&
diff --git a/network/avahi/patches/avahi-client-fix-resource-leak.patch b/network/avahi/patches/avahi-client-fix-resource-leak.patch
deleted file mode 100644
index 141828a259..0000000000
--- a/network/avahi/patches/avahi-client-fix-resource-leak.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-From 374245ec1418e7e1e57120fcaf0a12ec695f5f6d Mon Sep 17 00:00:00 2001
-From: Michal Sekletar <msekleta@redhat.com>
-Date: Wed, 24 Oct 2018 15:22:19 +0000
-Subject: [PATCH] avahi-client: fix resource leak
-
----
- avahi-client/browser.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/avahi-client/browser.c b/avahi-client/browser.c
-index c978d942..fa4a9a80 100644
---- a/avahi-client/browser.c
-+++ b/avahi-client/browser.c
-@@ -72,6 +72,8 @@ static void parse_domain_file(AvahiDomainBrowser *b) {
- if (avahi_normalize_name(buf, domain, sizeof(domain)))
- b->static_browse_domains = avahi_string_list_add(b->static_browse_domains, domain);
- }
-+
-+ fclose(f);
- }
-
- static void domain_browser_ref(AvahiDomainBrowser *db) {
diff --git a/network/avahi/patches/avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch b/network/avahi/patches/avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch
deleted file mode 100644
index 9984722893..0000000000
--- a/network/avahi/patches/avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 4b48927e8e2c721d103018b4ce39a164b6c2898f Mon Sep 17 00:00:00 2001
-From: Michal Sekletar <msekleta@redhat.com>
-Date: Wed, 24 Oct 2018 15:38:48 +0000
-Subject: [PATCH] chroot: fix bogus assignments in assertions
-
----
- avahi-daemon/chroot.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/avahi-daemon/chroot.c b/avahi-daemon/chroot.c
-index ccd56be0..871b3b34 100644
---- a/avahi-daemon/chroot.c
-+++ b/avahi-daemon/chroot.c
-@@ -188,8 +188,8 @@ static int recv_fd(int fd) {
- return -1;
- }
-
-- assert(h->cmsg_len = CMSG_LEN(sizeof(int)));
-- assert(h->cmsg_level = SOL_SOCKET);
-+ assert(h->cmsg_len == CMSG_LEN(sizeof(int)));
-+ assert(h->cmsg_level == SOL_SOCKET);
- assert(h->cmsg_type == SCM_RIGHTS);
-
- return *((int*)CMSG_DATA(h));
diff --git a/network/avahi/patches/avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch b/network/avahi/patches/avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch
deleted file mode 100644
index 56a92addfc..0000000000
--- a/network/avahi/patches/avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Fri, 24 Apr 2020 11:25:41 +0100
-Subject: avahi-discover: Don't decode unicode strings, only bytestrings
-
-Unicode strings (unicode in Python 2, str or unicode in Python 3) don't
-have a decode method; only bytestrings (str or bytes in Python 2,
-bytes in Python 3) have that. Decode exactly the strings that need
-decoding.
-
-Resolves: https://github.com/lathiat/avahi/issues/275
-Signed-off-by: Simon McVittie <smcv@debian.org>
-Forwarded: https://github.com/lathiat/avahi/pull/282
----
- avahi-python/avahi-discover/avahi-discover.py | 8 +++++---
- 1 file changed, 5 insertions(+), 3 deletions(-)
-
-diff --git a/avahi-python/avahi-discover/avahi-discover.py b/avahi-python/avahi-discover/avahi-discover.py
-index 4a2b575..fddf4a5 100755
---- a/avahi-python/avahi-discover/avahi-discover.py
-+++ b/avahi-python/avahi-discover/avahi-discover.py
-@@ -238,15 +238,17 @@ class Main_window:
- txts+="<b>" + _("TXT") + " <i>%s</i></b> = %s\n" % (k,v)
- else:
- txts = "<b>" + _("TXT Data:") + "</b> <i>" + _("empty") + "</i>"
--
-- txts = txts.decode("utf-8")
-+
-+ if isinstance(txts, bytes): # Python 2
-+ txts = txts.decode("utf-8")
-
- infos = "<b>" + _("Service Type:") + "</b> %s\n"
- infos += "<b>" + _("Service Name:") + "</b> %s\n"
- infos += "<b>" + _("Domain Name:") + "</b> %s\n"
- infos += "<b>" + _("Interface:") + "</b> %s %s\n"
- infos += "<b>" + _("Address:") + "</b> %s/%s:%i\n%s"
-- infos = infos.decode("utf-8")
-+ if isinstance(infos, bytes): # Python 2
-+ infos = infos.decode("utf-8")
- infos = infos % (stype, name, domain, self.siocgifname(interface), self.protoname(protocol), host, address, port, txts.strip())
- self.info_label.set_markup(infos)
-
diff --git a/network/avahi/patches/avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch b/network/avahi/patches/avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch
deleted file mode 100644
index d9ba99f4d8..0000000000
--- a/network/avahi/patches/avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From: traffic-millions <60914101+traffic-millions@users.noreply.github.com>
-Date: Tue, 3 Mar 2020 11:15:48 +0800
-Subject: avahi_dns_packet_consume_uint32: fix potential undefined behavior
-
-avahi_dns_packet_consume_uint32 left shifts uint8_t values by 8, 16 and 24 bits to combine them into a 32-bit value. This produces an undefined behavior warning with gcc -fsanitize when fed input values of 128 or 255 however in testing no actual unexpected behavior occurs in practice and the 32-bit uint32_t is always correctly produced as the final value is immediately stored into a uint32_t and the compiler appears to handle this "correctly".
-
-Cast the intermediate values to uint32_t to prevent this warning and ensure the intended result is explicit.
-
-Closes: #267
-Closes: #268
-Reference: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=19304
-Origin: upstream, 0.9, commit:b897ca43ac100d326d118e5877da710eb7f836f9
----
- avahi-core/dns.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/avahi-core/dns.c b/avahi-core/dns.c
-index 7c38f42..d793b76 100644
---- a/avahi-core/dns.c
-+++ b/avahi-core/dns.c
-@@ -455,7 +455,7 @@ int avahi_dns_packet_consume_uint32(AvahiDnsPacket *p, uint32_t *ret_v) {
- return -1;
-
- d = (uint8_t*) (AVAHI_DNS_PACKET_DATA(p) + p->rindex);
-- *ret_v = (d[0] << 24) | (d[1] << 16) | (d[2] << 8) | d[3];
-+ *ret_v = ((uint32_t)d[0] << 24) | ((uint32_t)d[1] << 16) | ((uint32_t)d[2] << 8) | (uint32_t)d[3];
- p->rindex += sizeof(uint32_t);
-
- return 0;
diff --git a/network/avahi/patches/avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch b/network/avahi/patches/avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch
deleted file mode 100644
index 3e0725a602..0000000000
--- a/network/avahi/patches/avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 447affe29991ee99c6b9732fc5f2c1048a611d3b Mon Sep 17 00:00:00 2001
-From: Riccardo Schirone <sirmy15@gmail.com>
-Date: Fri, 26 Mar 2021 11:50:24 +0100
-Subject: [PATCH] Avoid infinite-loop in avahi-daemon by handling HUP event in
- client_work
-
-If a client fills the input buffer, client_work() disables the
-AVAHI_WATCH_IN event, thus preventing the function from executing the
-`read` syscall the next times it is called. However, if the client then
-terminates the connection, the socket file descriptor receives a HUP
-event, which is not handled, thus the kernel keeps marking the HUP event
-as occurring. While iterating over the file descriptors that triggered
-an event, the client file descriptor will keep having the HUP event and
-the client_work() function is always called with AVAHI_WATCH_HUP but
-without nothing being done, thus entering an infinite loop.
-
-See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=984938
----
- avahi-daemon/simple-protocol.c | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/avahi-daemon/simple-protocol.c b/avahi-daemon/simple-protocol.c
-index 3e0ebb11..6c0274d6 100644
---- a/avahi-daemon/simple-protocol.c
-+++ b/avahi-daemon/simple-protocol.c
-@@ -424,6 +424,11 @@ static void client_work(AvahiWatch *watch, AVAHI_GCC_UNUSED int fd, AvahiWatchEv
- }
- }
-
-+ if (events & AVAHI_WATCH_HUP) {
-+ client_free(c);
-+ return;
-+ }
-+
- c->server->poll_api->watch_update(
- watch,
- (c->outbuf_length > 0 ? AVAHI_WATCH_OUT : 0) |
diff --git a/network/avahi/patches/build-db-Use-the-same-database-format-that-the-C-code-exp.patch b/network/avahi/patches/build-db-Use-the-same-database-format-that-the-C-code-exp.patch
deleted file mode 100644
index 3017043d47..0000000000
--- a/network/avahi/patches/build-db-Use-the-same-database-format-that-the-C-code-exp.patch
+++ /dev/null
@@ -1,106 +0,0 @@
-From: Simon McVittie <smcv@debian.org>
-Date: Thu, 7 May 2020 12:13:56 +0100
-Subject: build-db: Use the same database format that the C code expects
-
-Otherwise, Python 2 anydbm will preferentially choose Berkeley DB format
-(dbhash/bsddb), which is neither GNU gdbm nor traditional Unix (n)dbm.
-
-Signed-off-by: Simon McVittie <smcv@debian.org>
-Fixes: https://github.com/lathiat/avahi/issues/260
----
- configure.ac | 11 ++++++++---
- service-type-database/Makefile.am | 4 ++--
- service-type-database/build-db | 27 +++++++++++++++++++++------
- 3 files changed, 31 insertions(+), 11 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 58db8c7..5aea4e7 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -871,9 +871,14 @@ if test "x$HAVE_PYTHON" = "xyes" ; then
- fi
-
- AM_CHECK_PYMOD(socket,,,[AC_MSG_ERROR(Could not find Python module socket)])
-- if test "x$HAVE_GDBM" = "xyes" || test "x$HAVE_DBM" = "xyes"; then
-- AM_CHECK_PYMOD(anydbm,,,[
-- AM_CHECK_PYMOD(dbm,,,[AC_MSG_ERROR(Could not find Python module dbm)])
-+ if test "x$HAVE_GDBM" = "xyes"; then
-+ AM_CHECK_PYMOD([dbm.gnu], [], [], [
-+ AM_CHECK_PYMOD([gdbm], [], [], [AC_MSG_ERROR(Could not find Python module dbm.gnu or gdbm)])
-+ ])
-+ fi
-+ if test "x$HAVE_DBM" = "xyes"; then
-+ AM_CHECK_PYMOD([dbm.ndbm], [], [], [
-+ AM_CHECK_PYMOD([dbm], [], [], [AC_MSG_ERROR(Could not find Python module dbm.ndbm or dbm)])
- ])
- fi
- fi
-diff --git a/service-type-database/Makefile.am b/service-type-database/Makefile.am
-index f9fa082..0ead0f6 100644
---- a/service-type-database/Makefile.am
-+++ b/service-type-database/Makefile.am
-@@ -28,7 +28,7 @@ noinst_SCRIPTS=build-db
- pkglibdata_DATA+=service-types.db
-
- service-types.db: service-types
-- $(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
-+ $(AM_V_GEN)$(PYTHON) build-db --gnu $< $@.coming && \
- mv $@.coming $@
-
- CLEANFILES = service-types.db
-@@ -44,7 +44,7 @@ service-types.db.pag: service-types.db
- service-types.db.dir: service-types.db
- $(AM_V_GEN)mv service-types.db.coming.dir service-types.db.dir
- service-types.db: service-types build-db
-- $(AM_V_GEN)$(PYTHON) build-db $< $@.coming && \
-+ $(AM_V_GEN)$(PYTHON) build-db --ndbm $< $@.coming && \
- if test -f "$@.coming"; then mv $@.coming $@; fi
-
- CLEANFILES = service-types.db*
-diff --git a/service-type-database/build-db b/service-type-database/build-db
-index 78ee892..6415d27 100755
---- a/service-type-database/build-db
-+++ b/service-type-database/build-db
-@@ -17,13 +17,28 @@
- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- # USA.
-
--try:
-- import anydbm as dbm
--except ImportError:
-- import dbm
--
- import sys
-
-+if sys.argv[1] == '--gnu':
-+ if sys.version_info >= (3,):
-+ import dbm.gnu as chosen_dbm
-+ else:
-+ import gdbm as chosen_dbm
-+
-+ sys.argv[1:] = sys.argv[2:]
-+elif sys.argv[1] == '--ndbm':
-+ if sys.version_info >= (3,):
-+ import dbm.ndbm as chosen_dbm
-+ else:
-+ import dbm as chosen_dbm
-+
-+ sys.argv[1:] = sys.argv[2:]
-+else:
-+ if sys.version_info >= (3,):
-+ import dbm as chosen_dbm
-+ else:
-+ import anydbm as chosen_dbm
-+
- if len(sys.argv) > 1:
- infn = sys.argv[1]
- else:
-@@ -34,7 +49,7 @@ if len(sys.argv) > 2:
- else:
- outfn = infn + ".db"
-
--db = dbm.open(outfn, "n")
-+db = chosen_dbm.open(outfn, "n")
-
- for ln in open(infn, "r"):
- ln = ln.strip(" \r\n\t")
diff --git a/network/avahi/patches/fix-bytestring-decoding-for-proper-display.patch b/network/avahi/patches/fix-bytestring-decoding-for-proper-display.patch
deleted file mode 100644
index bfb826db93..0000000000
--- a/network/avahi/patches/fix-bytestring-decoding-for-proper-display.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From: =?utf-8?q?=C3=89ric_Araujo?= <merwok@netwok.org>
-Date: Sat, 29 Feb 2020 19:14:04 -0500
-Subject: fix bytestring decoding for proper display
-
----
- avahi-python/avahi-discover/avahi-discover.py | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/avahi-python/avahi-discover/avahi-discover.py b/avahi-python/avahi-discover/avahi-discover.py
-index 0db705d..4a2b575 100755
---- a/avahi-python/avahi-discover/avahi-discover.py
-+++ b/avahi-python/avahi-discover/avahi-discover.py
-@@ -238,12 +238,15 @@ class Main_window:
- txts+="<b>" + _("TXT") + " <i>%s</i></b> = %s\n" % (k,v)
- else:
- txts = "<b>" + _("TXT Data:") + "</b> <i>" + _("empty") + "</i>"
-+
-+ txts = txts.decode("utf-8")
-
- infos = "<b>" + _("Service Type:") + "</b> %s\n"
- infos += "<b>" + _("Service Name:") + "</b> %s\n"
- infos += "<b>" + _("Domain Name:") + "</b> %s\n"
- infos += "<b>" + _("Interface:") + "</b> %s %s\n"
- infos += "<b>" + _("Address:") + "</b> %s/%s:%i\n%s"
-+ infos = infos.decode("utf-8")
- infos = infos % (stype, name, domain, self.siocgifname(interface), self.protoname(protocol), host, address, port, txts.strip())
- self.info_label.set_markup(infos)
-
diff --git a/network/avahi/patches/ipv6_race_condition_fix.patch b/network/avahi/patches/ipv6_race_condition_fix.patch
deleted file mode 100644
index 3418b1a11c..0000000000
--- a/network/avahi/patches/ipv6_race_condition_fix.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Submitted By: Douglas R. Reno <renodr at linuxfromscratch dot org>
-Date: 2020-10-19
-Initial Package Version: 0.8
-Upstream Status: PR, not applied
-Origin: Upstream PR (github.com/lathiat/avahi/pull/309)
-Description: Fixes a race condition when multiple NICs are in use
- when IPv6 is enabled. This will exhibit behavior where
- messages about withdrawing address records, registering
- access records, and new hostname announcements are
- spammed to the log every second.
-
-diff -Naurp avahi-0.8.orig/avahi-core/server.c avahi-0.8/avahi-core/server.c
---- avahi-0.8.orig/avahi-core/server.c 2020-02-16 21:41:24.939967558 -0600
-+++ avahi-0.8/avahi-core/server.c 2020-10-19 11:07:22.054861721 -0500
-@@ -193,7 +193,7 @@ static void withdraw_rrset(AvahiServer *
- withdraw_entry(s, e);
- }
-
--static void incoming_probe(AvahiServer *s, AvahiRecord *record, AvahiInterface *i) {
-+static void incoming_probe(AvahiServer *s, AvahiRecord *record, AvahiInterface *i, int from_local_iface) {
- AvahiEntry *e, *n;
- int ours = 0, won = 0, lost = 0;
-
-@@ -210,7 +210,7 @@ static void incoming_probe(AvahiServer *
- if (e->dead)
- continue;
-
-- if ((cmp = avahi_record_lexicographical_compare(e->record, record)) == 0) {
-+ if ((cmp = avahi_record_lexicographical_compare(e->record, record)) == 0 || from_local_iface) {
- ours = 1;
- break;
- } else {
-@@ -639,7 +639,7 @@ static void handle_query_packet(AvahiSer
- if (!avahi_key_is_pattern(record->key)) {
- if (!from_local_iface)
- reflect_probe(s, i, record);
-- incoming_probe(s, record, i);
-+ incoming_probe(s, record, i, from_local_iface);
- }
-
- avahi_record_unref(record);
-@@ -961,8 +961,7 @@ static void dispatch_packet(AvahiServer
- return;
-
- /* We don't want to reflect local traffic, so we check if this packet is generated locally. */
-- if (s->config.enable_reflector)
-- from_local_iface = originates_from_local_iface(s, iface, src_address, port);
-+ from_local_iface = originates_from_local_iface(s, iface, src_address, port);
-
- if (avahi_dns_packet_check_valid_multicast(p) < 0) {
- avahi_log_debug("Received invalid packet.");
diff --git a/network/avahi/patches/man-add-missing-bshell.1-symlink.patch b/network/avahi/patches/man-add-missing-bshell.1-symlink.patch
deleted file mode 100644
index 1bcbbb13e2..0000000000
--- a/network/avahi/patches/man-add-missing-bshell.1-symlink.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From: Michael Biebl <biebl@debian.org>
-Date: Sun, 17 Sep 2017 12:52:39 +0200
-Subject: man: add missing bshell.1 symlink
-
-The bshell binary is missing a symlink to its manual page. It should be
-symlinked to the man page for bssh, just like how the bvnc man page is.
-
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=655190
-Forwarded: https://github.com/lathiat/avahi/pull/148
-Applied-upstream: 0.9, commit:f983df44870b602179b493f9c3d113753b378e27
----
- man/Makefile.am | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/man/Makefile.am b/man/Makefile.am
-index d38267c..77a27bd 100644
---- a/man/Makefile.am
-+++ b/man/Makefile.am
-@@ -137,12 +137,13 @@ BSSH_LN =
- if HAVE_GTK
- if HAVE_GLIB
- BSSH_LN += $(LN_S) bssh.1 bvnc.1 &&
-+BSSH_LN += $(LN_S) bssh.1 bshell.1 &&
- endif
- endif
- install-exec-local:
- mkdir -p $(DESTDIR)/$(mandir)/man1 && \
- cd $(DESTDIR)/$(mandir)/man1 && \
-- rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 && \
-+ rm -f avahi-resolve-host-name.1 avahi-resolve-address.1 avahi-browse-domains.1 avahi-publish-address.1 avahi-publish-service.1 bvnc.1 bshell.1 && \
- $(BSSH_LN) \
- $(LN_S) avahi-resolve.1 avahi-resolve-host-name.1 && \
- $(LN_S) avahi-resolve.1 avahi-resolve-address.1 && \
diff --git a/network/avahi/patches/man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch b/network/avahi/patches/man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch
deleted file mode 100644
index 94d8d9517a..0000000000
--- a/network/avahi/patches/man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From: Michael Biebl <biebl@debian.org>
-Date: Sun, 17 Sep 2017 10:57:47 +0200
-Subject: man: fix reference to avahi-autoipd.action(8) in avahi-autoipd(8)
-
-Forwarded: https://github.com/lathiat/avahi/pull/147
-Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=840833
-Applied-upstream: 0.9, commit:1905a6b878064c6cc9bb96a1fc17ef77c75787c6
----
- man/avahi-autoipd.8.xml.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/man/avahi-autoipd.8.xml.in b/man/avahi-autoipd.8.xml.in
-index 7137c30..23764a5 100644
---- a/man/avahi-autoipd.8.xml.in
-+++ b/man/avahi-autoipd.8.xml.in
-@@ -150,7 +150,7 @@
-
- <section name="See also">
- <p>
-- <manref name="autoipd.action" section="8"/>, <manref name="dhclient" section="8"/>
-+ <manref name="avahi-autoipd.action" section="8"/>, <manref name="dhclient" section="8"/>
- </p>
-
- <p>http://avahi.org/wiki/AvahiAutoipd documents how avahi-autoipd is best packaged and integrated into distributions.</p>
diff --git a/network/avahi/patches/series b/network/avahi/patches/series
deleted file mode 100644
index 1246744108..0000000000
--- a/network/avahi/patches/series
+++ /dev/null
@@ -1,13 +0,0 @@
-avahi-dnsconfd.service-Drop-Also-avahi-daemon.socket.patch
-man-fix-reference-to-avahi-autoipd.action-8-in-avahi-auto.patch
-man-add-missing-bshell.1-symlink.patch
-Ship-avahi-discover-1-bssh-1-and-bvnc-1-also-for-GTK3.patch
-avahi_dns_packet_consume_uint32-fix-potential-undefined-b.patch
-fix-bytestring-decoding-for-proper-display.patch
-avahi-discover-Don-t-decode-unicode-strings-only-bytestri.patch
-Fetch-build-db-from-upstream-git.patch
-build-db-Use-the-same-database-format-that-the-C-code-exp.patch
-avahi-daemon-chroot-fix-bogus-assignments-in-assertions.patch
-avahi-client-fix-resource-leak.patch
-avoid-infinite-loop-in-avahi-daemon-by-handling-hup-event-in-client-work.patch
-CVE-2021-3502.patch
diff --git a/network/avahi/slack-desc b/network/avahi/slack-desc
index 8fb66245a4..7e2b027fe3 100644
--- a/network/avahi/slack-desc
+++ b/network/avahi/slack-desc
@@ -2,18 +2,18 @@
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
-# You must make exactly 11 lines for the formatting to be correct. It's also
+# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-avahi: avahi (service discovery aka zeroconf)
+avahi: avahi (service discovery aka Zeroconf)
avahi:
-avahi: Avahi is an Implementation the DNS Service Discovery and Multicast
-avahi: DNS specifications for Zeroconf Computing. It uses D-BUS for
-avahi: communication between user applications and a system daemon. The
-avahi: daemon is used to coordinate application efforts in caching replies,
-avahi: necessary to minimize the traffic imposed on networks. This kind of
-avahi: technology is already found in Apple MacOS X (branded Rendezvous
-avahi: Bonjour and sometimes Zeroconf) and is very convenient.
+avahi: Avahi is a system which facilitates service discovery on a local
+avahi: network via the mDNS/DNS-SD protocol suite. This enables you to plug
+avahi: your laptop or computer into a network and instantly be able to view
+avahi: other people who you can chat with, find printers to print to, or find
+avahi: files being shared.
+avahi:
+avahi: Homepage: https://avahi.org
avahi:
avahi:
diff --git a/network/betterbird-bin/betterbird-bin.SlackBuild b/network/betterbird-bin/betterbird-bin.SlackBuild
index 42261443cc..db6a0360f6 100644
--- a/network/betterbird-bin/betterbird-bin.SlackBuild
+++ b/network/betterbird-bin/betterbird-bin.SlackBuild
@@ -25,12 +25,12 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=betterbird-bin
-VERSION=${VERSION:-128.6.1esr}
+VERSION=${VERSION:-140.2.0esr}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-UPSTREAM_VERSION=${UPSTREAM_VERSION:-128.6.1esr-bb21}
+UPSTREAM_VERSION=${UPSTREAM_VERSION:-140.2.0esr-bb9}
UPSTREAM_FILENAME=${PRGNAM%%-bin}-${UPSTREAM_VERSION}.en-US.linux-x86_64
ARCH=$(uname -m)
@@ -54,7 +54,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf ${PRGNAM%%-bin}
-tar xvf $CWD/$UPSTREAM_FILENAME.tar.bz2
+tar xvf $CWD/$UPSTREAM_FILENAME.tar.*
cd ${PRGNAM%%-bin}
chown -R root:root .
find -L . \
diff --git a/network/betterbird-bin/betterbird-bin.info b/network/betterbird-bin/betterbird-bin.info
index bf8c97b6de..3e8d706c99 100644
--- a/network/betterbird-bin/betterbird-bin.info
+++ b/network/betterbird-bin/betterbird-bin.info
@@ -1,10 +1,10 @@
PRGNAM="betterbird-bin"
-VERSION="128.6.1esr"
+VERSION="140.2.0esr"
HOMEPAGE="https://www.betterbird.eu"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://www.betterbird.eu/downloads/LinuxArchive/Previous/betterbird-128.6.1esr-bb21.en-US.linux-x86_64.tar.bz2"
-MD5SUM_x86_64="c6594b3baa559fdf11d7b76cfe83b7f9"
+DOWNLOAD_x86_64="https://www.betterbird.eu/downloads/LinuxArchive/betterbird-140.2.0esr-bb9.en-US.linux-x86_64.tar.xz"
+MD5SUM_x86_64="2b2a62a044c476fe34297aa1dc1f8c93"
REQUIRES=""
MAINTAINER="rc_05"
EMAIL="contact@rc-05.com"
diff --git a/network/bitcoin-knots/README b/network/bitcoin-knots/README
new file mode 100644
index 0000000000..f76db0a618
--- /dev/null
+++ b/network/bitcoin-knots/README
@@ -0,0 +1,19 @@
+bitcoin-knots (P2P electronic cash system)
+
+Bitcoin Knots is a specialized version of Bitcoin Core,
+modified and maintained by Luke Dashjr, a Bitcoin Core developer.
+It serves as an alternative client software for the Bitcoin network,
+offering additional features and enhancements not found in the
+standard Bitcoin Core release. Designed to provide advanced users
+with more detailed transaction management tools and improved security
+measures, Bitcoin Knots is fully compatible with the Bitcoin network,
+allowing seamless interaction with nodes running Bitcoin Core.
+
+********************** A few words of Caution **********************
+Due to some of the files having same names and installed in the same
+places, Bitcoin Knots & Bitcoin Core interfere with each other.
+
+Also, While Bitcoin Knots will build and run on 32bit systems,
+it will not run at an efficient level.
+Therefore, 64bit is highly recomended as the optimal system.
+********************************************************************
diff --git a/network/bitcoin-knots/bitcoin-knots.SlackBuild b/network/bitcoin-knots/bitcoin-knots.SlackBuild
new file mode 100644
index 0000000000..b148826d2b
--- /dev/null
+++ b/network/bitcoin-knots/bitcoin-knots.SlackBuild
@@ -0,0 +1,131 @@
+#!/bin/bash
+
+# Slackware build script for bitcoin_knots
+
+# This is glennmcc's modification of nomnombtc's bitcon(core) build script
+# (Used by permission)
+#
+# Copyright 2012-2025 nomnombtc <nomnombtc@arcor.de>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=bitcoin-knots
+VERSION=${VERSION:-20250305}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+SRCNAME=bitcoin-28.1.knots20250305
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+rm -rf $SRCNAME
+
+tar -zxf $CWD/$SRCNAME.tar.gz
+
+cd $SRCNAME
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+./autogen.sh
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --docdir=/usr/doc/$PKGNAM$PRGNAM-$VERSION \
+ --mandir=/usr/man
+make
+make install DESTDIR=$PKG
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | \
+ grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \+
+
+mkdir -p $PKG/usr/share/{applications,pixmaps}
+
+install -m 0644 src/qt/res/icons/bitcoin.png $PKG/usr/share/pixmaps/
+install -m 0644 $CWD/bitcoin-qt.desktop $PKG/usr/share/applications/
+
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PKGNAM$PRGNAM-$VERSION
+cp -a \
+ COPYING doc/{bitcoin-conf,descriptors,files,i2p,{JSON-RPC,REST}-interface,\
+managing-wallets,multisig-tutorial,p2p-bad-ports,psbt,reduce-{memory,traffic},\
+release-notes,tor,zmq}.md share/rpcauth/rpcauth.py \
+ $PKG/usr/doc/$PKGNAM$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PKGNAM$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+
+rm $PKG/usr/lib${LIBDIRSUFFIX}/libbitcoinconsensus.la
+rm $PKG/usr/lib${LIBDIRSUFFIX}/libbitcoinconsensus.a
+
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/bitcoin-knots/bitcoin-knots.info b/network/bitcoin-knots/bitcoin-knots.info
new file mode 100644
index 0000000000..158c963ed0
--- /dev/null
+++ b/network/bitcoin-knots/bitcoin-knots.info
@@ -0,0 +1,10 @@
+PRGNAM="bitcoin-knots"
+VERSION="20250305"
+HOMEPAGE="https://bitcoinknots.org/"
+DOWNLOAD="https://bitcoinknots.org/files/28.x/28.1.knots20250305/bitcoin-28.1.knots20250305.tar.gz"
+MD5SUM="d224762159ffe6306d31b654001a96a6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="glennmcc"
+EMAIL="glennmcc@glennmcc.org"
diff --git a/network/bitcoin-knots/bitcoin-qt.desktop b/network/bitcoin-knots/bitcoin-qt.desktop
new file mode 100644
index 0000000000..e4f1b077ea
--- /dev/null
+++ b/network/bitcoin-knots/bitcoin-qt.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Bitcoin_Knots
+GenericName=Bitcoin QT-Client
+Comment=Bitcoin client to send and receive money
+Exec=/usr/bin/bitcoin-qt
+Icon=bitcoin
+StartupNotify=true
+Terminal=false
+Type=Application
+Categories=Network;P2P
diff --git a/network/bitcoin-knots/doinst.sh b/network/bitcoin-knots/doinst.sh
new file mode 100644
index 0000000000..140e332222
--- /dev/null
+++ b/network/bitcoin-knots/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications
+fi
diff --git a/network/bitcoin-knots/slack-desc b/network/bitcoin-knots/slack-desc
new file mode 100644
index 0000000000..b002d68057
--- /dev/null
+++ b/network/bitcoin-knots/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+bitcoin-knots: bitcoin-knots (P2P electronic cash system)
+bitcoin-knots:
+bitcoin-knots: Description from https://river.com/learn/terms/b/bitcoin-knots/
+bitcoin-knots: Bitcoin Knots is a specialized version of Bitcoin Core,
+bitcoin-knots: modified and maintained by Luke Dashjr, a Bitcoin Core developer.
+bitcoin-knots: It serves as an alternative client software for the
+bitcoin-knots: Bitcoin network, offering additional features and enhancements
+bitcoin-knots: not found in the standard Bitcoin Core release.
+bitcoin-knots:
+bitcoin-knots: Project Website: https://bitcoinknots.org/
+bitcoin-knots:
diff --git a/network/bitcoin/README b/network/bitcoin/README
index 36d38a4e0e..5bf0e15704 100644
--- a/network/bitcoin/README
+++ b/network/bitcoin/README
@@ -9,7 +9,4 @@ of a P2P network to check for double-spending.
Bitcoin Core connects to the Bitcoin peer-to-peer network to
download and fully validate blocks and transactions.
-Please make sure to read the release notes first before upgrading:
-https://bitcoincore.org/en/releases/29.0/
-
zeromq is an optional dependency (autodetected).
diff --git a/network/bitcoin/bitcoin-qt.desktop b/network/bitcoin/bitcoin-qt.desktop
index 858ab28e53..dc91740986 100644
--- a/network/bitcoin/bitcoin-qt.desktop
+++ b/network/bitcoin/bitcoin-qt.desktop
@@ -3,7 +3,7 @@ Name=Bitcoin-Core
GenericName=Bitcoin QT-Client
Comment=Bitcoin client to send and receive money
Exec=/usr/bin/bitcoin-qt
-Icon=bitcoin
+Icon=bitcoin-qt
StartupNotify=true
Terminal=false
Type=Application
diff --git a/network/bitcoin/bitcoin.SlackBuild b/network/bitcoin/bitcoin.SlackBuild
index 572c671bdc..d738e08640 100644
--- a/network/bitcoin/bitcoin.SlackBuild
+++ b/network/bitcoin/bitcoin.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bitcoin
-VERSION=${VERSION:-29.0}
+VERSION=${VERSION:-29.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -111,10 +111,15 @@ cd ..
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
-mkdir -p $PKG/usr/share/{applications,pixmaps}
+install -Dm 0644 src/qt/res/src/bitcoin.svg \
+ $PKG/usr/share/icons/hicolor/scalable/apps/bitcoin-qt.svg
+install -Dm 0644 $CWD/bitcoin-qt.desktop \
+ $PKG/usr/share/applications/bitcoin-qt.desktop
-install -m 0644 src/qt/res/icons/bitcoin.png $PKG/usr/share/pixmaps/
-install -m 0644 $CWD/bitcoin-qt.desktop $PKG/usr/share/applications/
+for i in 16 32 64 128 256; do
+ install -Dm 0644 share/pixmaps/bitcoin${i}.png \
+ $PKG/usr/share/icons/hicolor/${i}x${i}/apps/bitcoin-qt.png
+done
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
diff --git a/network/bitcoin/bitcoin.info b/network/bitcoin/bitcoin.info
index d148721641..79e3ffccfd 100644
--- a/network/bitcoin/bitcoin.info
+++ b/network/bitcoin/bitcoin.info
@@ -1,8 +1,8 @@
PRGNAM="bitcoin"
-VERSION="29.0"
+VERSION="29.1"
HOMEPAGE="https://bitcoincore.org"
-DOWNLOAD="https://bitcoincore.org/bin/bitcoin-core-29.0/bitcoin-29.0.tar.gz"
-MD5SUM="2fc939451a3755f92906cf3e6ee11e32"
+DOWNLOAD="https://bitcoincore.org/bin/bitcoin-core-29.1/bitcoin-29.1.tar.gz"
+MD5SUM="e48c029a5eaf93116e56402697a881e6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cmake-opt"
diff --git a/network/bitcoin/doinst.sh b/network/bitcoin/doinst.sh
index 140e332222..fd1bca3b49 100644
--- a/network/bitcoin/doinst.sh
+++ b/network/bitcoin/doinst.sh
@@ -1,3 +1,8 @@
if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
fi
diff --git a/network/brave-browser/brave-browser.SlackBuild b/network/brave-browser/brave-browser.SlackBuild
index a8557c733a..db5f86690e 100644
--- a/network/brave-browser/brave-browser.SlackBuild
+++ b/network/brave-browser/brave-browser.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=brave-browser
PRCNAM=amd64
-VERSION=${VERSION:-1.78.94}
+VERSION=${VERSION:-1.82.166}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/brave-browser/brave-browser.info b/network/brave-browser/brave-browser.info
index 196215c750..963e3826e1 100644
--- a/network/brave-browser/brave-browser.info
+++ b/network/brave-browser/brave-browser.info
@@ -1,10 +1,10 @@
PRGNAM="brave-browser"
-VERSION="1.78.94"
+VERSION="1.82.166"
HOMEPAGE="https://brave.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/brave/brave-browser/releases/download/v1.78.94/brave-browser_1.78.94_amd64.deb"
-MD5SUM_x86_64="563bc839f2bffbb1991dfb38a757f979"
+DOWNLOAD_x86_64="https://github.com/brave/brave-browser/releases/download/v1.82.166/brave-browser_1.82.166_amd64.deb"
+MD5SUM_x86_64="9977d3067bff53b23a76bd2180332c57"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/broadcom-wl/broadcom-wl.SlackBuild b/network/broadcom-wl/broadcom-wl.SlackBuild
index ecb5b83e49..53b7c31ebc 100644
--- a/network/broadcom-wl/broadcom-wl.SlackBuild
+++ b/network/broadcom-wl/broadcom-wl.SlackBuild
@@ -9,7 +9,7 @@
# https://gitlab.archlinux.org/archlinux/packaging/packages/broadcom-wl-dkms
#
# Copyright 2015-2019 Andreas Voegele <andreas@andreasvoegele.com>
-# Copyright 2022-23 Jay Lanagan (j@lngn.net), Detroit, MI, USA.
+# Copyright 2022-2025 Jay Lanagan (j@lngn.net), Detroit, MI, USA.
#
# Permission to use, copy, modify, and distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
@@ -104,6 +104,7 @@ patch -p1 < $CWD/patches/016-linux601.patch || exit 1
patch -p1 < $CWD/patches/017-linux612.patch || exit 1
patch -p1 < $CWD/patches/018-linux613.patch || exit 1
patch -p1 < $CWD/patches/019-linux614.patch || exit 1
+patch -p1 < $CWD/patches/020-linux615.patch || exit 1
# See https://lkml.org/lkml/2019/3/1/643
sed -i 's/get_ds()/KERNEL_DS/g' src/wl/sys/wl_iw.c
diff --git a/network/broadcom-wl/patches/020-linux615.patch b/network/broadcom-wl/patches/020-linux615.patch
new file mode 100644
index 0000000000..322df20708
--- /dev/null
+++ b/network/broadcom-wl/patches/020-linux615.patch
@@ -0,0 +1,132 @@
+From a0acb522ad849b2e2a3019794a293fdeb717ba03 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Joan=20Bruguera=20Mic=C3=B3?= <joanbrugueram@gmail.com>
+Date: Sun, 23 Feb 2025 14:29:21 +0000
+Subject: [PATCH] Tentative patch for broadcom-wl 6.30.223.271 driver for Linux
+ 6.15-rc1
+
+Due to the fact that the driver is unmaintained, and can't be adapted
+to the current Linux kernel security standards (e.g. IBT), as it has a
+proprietary blob; and this is likely to be an ever-growing security
+risk, I have added a warning when the module is loaded.
+Use at your own risk; no warranty of any kind is provided.
+See also the objtool changes on the Makefile below.
+
+The changes to replace EXTRA_CFLAGS and EXTRA_LDFLAGS with ccflags-y
+and ldflags-y are rel. commit "kbuild: remove EXTRA_*FLAGS support"
+(Masahiro Yamada, 6 Feb 2025), according to which they have been
+deprecated since 2007, so no need to add any fallback for old kernels.
+
+NB: If the package build also contains references to EXTRA_*FLAGS
+(e.g. Arch Linux's broadcom-wl-dkms PKGBUILD), replace those as well!
+---
+ Makefile | 33 ++++++++++++++++++++++++---------
+ src/wl/sys/wl_linux.c | 11 +++++++++++
+ 2 files changed, 35 insertions(+), 9 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index a323a0d..3cca0ca 100644
+--- a/Makefile
++++ b/Makefile
+@@ -117,15 +117,15 @@ GCCVERSION := $(subst $(space),$(empty),$(GCCVERSION))
+ GCCVERSION := $(shell expr `echo $(GCCVERSION)` | cut -b1-3)
+ GE_49 := $(shell expr `echo $(GCCVERSION)` \>= 490)
+
+-EXTRA_CFLAGS :=
++ccflags-y :=
+
+ ifeq ($(APIFINAL),CFG80211)
+- EXTRA_CFLAGS += -DUSE_CFG80211
++ ccflags-y += -DUSE_CFG80211
+ $(info Using CFG80211 API)
+ endif
+
+ ifeq ($(APIFINAL),WEXT)
+- EXTRA_CFLAGS += -DUSE_IW
++ ccflags-y += -DUSE_IW
+ $(info Using Wireless Extension API)
+ endif
+
+@@ -137,15 +137,15 @@ wl-objs += src/wl/sys/wl_linux.o
+ wl-objs += src/wl/sys/wl_iw.o
+ wl-objs += src/wl/sys/wl_cfg80211_hybrid.o
+
+-EXTRA_CFLAGS += -I$(src)/src/include -I$(src)/src/common/include
+-EXTRA_CFLAGS += -I$(src)/src/wl/sys -I$(src)/src/wl/phy -I$(src)/src/wl/ppr/include
+-EXTRA_CFLAGS += -I$(src)/src/shared/bcmwifi/include
+-#EXTRA_CFLAGS += -DBCMDBG_ASSERT -DBCMDBG_ERR
++ccflags-y += -I$(src)/src/include -I$(src)/src/common/include
++ccflags-y += -I$(src)/src/wl/sys -I$(src)/src/wl/phy -I$(src)/src/wl/ppr/include
++ccflags-y += -I$(src)/src/shared/bcmwifi/include
++#ccflags-y += -DBCMDBG_ASSERT -DBCMDBG_ERR
+ ifeq "$(GE_49)" "1"
+-EXTRA_CFLAGS += -Wno-date-time
++ccflags-y += -Wno-date-time
+ endif
+
+-EXTRA_LDFLAGS := $(src)/lib/wlc_hybrid.o_shipped
++ldflags-y := $(src)/lib/wlc_hybrid.o_shipped
+
+ KBASE ?= /lib/modules/`uname -r`
+ KBUILD_DIR ?= $(KBASE)/build
+@@ -155,6 +155,21 @@ MDEST_DIR ?= $(KBASE)/kernel/drivers/net/wireless
+ CROSS_TOOLS = /path/to/tools
+ CROSS_KBUILD_DIR = /path/to/kernel/tree
+
++# Rel. commit "objtool: Always fail on fatal errors" (Josh Poimboeuf, 31 Mar 2025)
++# This is a *ugly* hack to disable objtool during the final processing of wl.o.
++# Since is embeds the proprietary blob (wlc_hybrid.o_shipped), objtool can't
++# process it, as it does not follow the requirements of current kernels,
++# including support for critical security features. As of Linux v6.15+, it causes
++# a build error. Disable it, at your own risk. Note the MIT license applies:
++# THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
++# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
++# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
++# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
++# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
++# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
++# SOFTWARE.
++wl.o: override objtool-enabled =
++
+ all:
+ KBUILD_NOPEDANTIC=1 make -C $(KBUILD_DIR) M=`pwd`
+
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index 5ddbc4d..09a4af5 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -168,6 +168,8 @@ static int wl_set_radio_block(void *data, bool blocked);
+ static void wl_report_radio_state(wl_info_t *wl);
+ #endif
+
++// Rel. commit "modpost: require a MODULE_DESCRIPTION()" (Jeff Johnson, 11 Mar 2025)
++MODULE_DESCRIPTION("Broadcom-wl wireless driver [unmaintained, out-of-tree]");
+ MODULE_LICENSE("MIXED/Proprietary");
+
+ static struct pci_device_id wl_id_table[] =
+@@ -914,6 +916,10 @@ static struct pci_driver wl_pci_driver __refdata = {
+ static int __init
+ wl_module_init(void)
+ {
++ printk(KERN_WARNING "You are using the broadcom-wl driver, which is not "
++ "maintained and is incompatible with Linux kernel security mitigations. "
++ "It is heavily recommended to replace the hardware and remove the driver. "
++ "Proceed at your own risk!");
+ int error = -ENODEV;
+
+ #ifdef BCMDBG
+@@ -2457,7 +2463,12 @@ wl_del_timer(wl_info_t *wl, wl_timer_t *t)
+ ASSERT(t);
+ if (t->set) {
+ t->set = FALSE;
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 15, 0)
++ // Rel. commit "treewide: Switch/rename to timer_delete[_sync]()" (Thomas Gleixner, 5 Apr 2025)
++ if (!timer_delete(&t->timer)) {
++#else
+ if (!del_timer(&t->timer)) {
++#endif
+ #ifdef BCMDBG
+ WL_INFORM(("wl%d: Failed to delete timer %s\n", wl->unit, t->name));
+ #endif
+--
+2.49.0
+
diff --git a/network/chawan/README b/network/chawan/README
new file mode 100644
index 0000000000..935464662f
--- /dev/null
+++ b/network/chawan/README
@@ -0,0 +1,7 @@
+chawan (TUI web browser)
+
+Chawan is a TUI web (and (S)FTP, Gopher, Gemini, ...) browser with
+CSS, inline image and JavaScript support. It uses its own small
+browser engine developed from scratch, which can nevertheless display
+many websites in a manner similar to major graphical browsers. It can
+also be used as a terminal pager.
diff --git a/network/chawan/chawan.SlackBuild b/network/chawan/chawan.SlackBuild
new file mode 100644
index 0000000000..1dce30f528
--- /dev/null
+++ b/network/chawan/chawan.SlackBuild
@@ -0,0 +1,103 @@
+#!/bin/bash
+
+# Slackware build script for chawan
+
+# Copyright 2025 Samuel Young, MO, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=chawan
+VERSION=${VERSION:-0.2.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-v$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+cd $PRGNAM-v$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make
+
+make install DESTDIR=$PKG \
+ PREFIX=/usr \
+ MANPREFIX=/usr/man
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ NEWS README.md todo UNLICENSE doc/*.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/chawan/chawan.info b/network/chawan/chawan.info
new file mode 100644
index 0000000000..485c00681d
--- /dev/null
+++ b/network/chawan/chawan.info
@@ -0,0 +1,10 @@
+PRGNAM="chawan"
+VERSION="0.2.2"
+HOMEPAGE="https://git.sr.ht/~bptato/chawan"
+DOWNLOAD="https://git.sr.ht/~bptato/chawan/archive/v0.2.2.tar.gz"
+MD5SUM="bc68d77405d64537e6e9878bc32f4e12"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="nim"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/chawan/slack-desc b/network/chawan/slack-desc
new file mode 100644
index 0000000000..675a8fe584
--- /dev/null
+++ b/network/chawan/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+chawan: chawan (TUI web browser)
+chawan:
+chawan: Chawan is a TUI web (and (S)FTP, Gopher, Gemini, ...) browser with
+chawan: CSS, inline image and JavaScript support. It uses its own small
+chawan: browser engine developed from scratch, which can nevertheless
+chawan: display many websites in a manner similar to major graphical
+chawan: browsers. It can also be used as a terminal pager.
+chawan:
+chawan:
+chawan: Homepage: https://git.sr.ht/~bptato/chawan
+chawan:
diff --git a/network/connman/README b/network/connman/README
index 31cba91d83..e4107dde59 100644
--- a/network/connman/README
+++ b/network/connman/README
@@ -1,22 +1,17 @@
connman (Connection management daemon)
-Connman provides a daemon for managing Internet connections. The
-Connection Manager is designed to be slim and to use as few resources
-as possible. It is fully modular system that can be extended through
-plug-ins. The plug-in approach allows for easy adaption and
-modification for various use cases. Connman implements DNS resolving
-and caching, DHCP clients for both IPv4 and IPv6, link-local IPv4
-address handling and tethering (IP connection sharing) to clients via
+Connman provides a daemon for managing Internet connections. The
+Connection Manager is designed to be slim and to use as few resources
+as possible. It is fully modular system that can be extended through
+plug-ins. The plug-in approach allows for easy adaption and
+modification for various use cases. Connman implements DNS resolving
+and caching, DHCP clients for both IPv4 and IPv6, link-local IPv4
+address handling and tethering (IP connection sharing) to clients via
USB, ethernet, WiFi, cellular and Bluetooth.
-To run connman on startup, run (as root):
- chmod +x /etc/rc.d/rc.connmand
-then add this to your /etc/rc.d/rc.local:
- if [ -x /etc/rc.d/rc.connmand ]; then
- /etc/rc.d/rc.connmand start
- fi
-Make sure other networking services like NetworkManager or WPA
-Supplicant are not also configured to run on startup.
+Included with this SlackBuild is a README.SBo file which includes
+some details on how to setup connman. This file is also installed
+into the package's documentation directory.
By default, this SlackBuild will build connman with support for iwd,
polkit, and nmcompat (NetworkManager compatibility interfaces). If
diff --git a/network/connman/README.SBo b/network/connman/README.SBo
new file mode 100644
index 0000000000..59a1bb8cad
--- /dev/null
+++ b/network/connman/README.SBo
@@ -0,0 +1,29 @@
+README.SBo (connman)
+
+To start connman at boot, you must first make sure connman's init
+script is executable.
+
+ # Run as root
+ chmod +x /etc/rc.d/rc.connmand
+
+Then you will want to add the following lines to your
+/etc/rc.d/rc.local to run connman on startup.
+
+ # Start connman
+ if [ -x /etc/rc.d/rc.connmand ]; then
+ /etc/rc.d/rc.connmand start
+ fi
+
+After that, you will want to add the following lines to your
+/etc/rc.d/rc.local_shutdown to gracefully stop connman on shutdown.
+If rc.local_shutdown does not already exist, you will want to create
+it and make it executable.
+
+ # Stop connman
+ if [ -x /etc/rc.d/rc.connmand ]; then
+ /etc/rc.d/rc.connmand stop
+ fi
+
+Make sure other networking services like NetworkManager or WPA
+Supplicant are not also configured to run on startup, or else they
+might interfere with connman and cause network issues.
diff --git a/network/connman/connman.SlackBuild b/network/connman/connman.SlackBuild
index 1857a19444..93463433c4 100644
--- a/network/connman/connman.SlackBuild
+++ b/network/connman/connman.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=connman
-VERSION=${VERSION:-1.44}
+VERSION=${VERSION:-1.45}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -69,6 +69,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+cp $CWD/README.SBo .
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -113,7 +114,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS COPYING ChangeLog HACKING README TODO \
+ AUTHORS COPYING ChangeLog HACKING README TODO README.SBo \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/connman/connman.info b/network/connman/connman.info
index a87134b155..c6e570f472 100644
--- a/network/connman/connman.info
+++ b/network/connman/connman.info
@@ -1,8 +1,8 @@
PRGNAM="connman"
-VERSION="1.44"
+VERSION="1.45"
HOMEPAGE="https://git.kernel.org/pub/scm/network/connman/connman.git"
-DOWNLOAD="https://git.kernel.org/pub/scm/network/connman/connman.git/snapshot/connman-1.44.tar.gz"
-MD5SUM="476510aabce64f7fbcdad29941de87bc"
+DOWNLOAD="https://git.kernel.org/pub/scm/network/connman/connman.git/snapshot/connman-1.45.tar.gz"
+MD5SUM="5679ed6e5baf40c86f8b0fe8bd78579a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/connman/slack-desc b/network/connman/slack-desc
index d1039da9af..8358b8656a 100644
--- a/network/connman/slack-desc
+++ b/network/connman/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
connman: connman (Connection management daemon)
connman:
-connman: Connman provides a daemon for managing Internet connections. The
-connman: Connection Manager is designed to be slim and to use as few resources
-connman: as possible. It is fully modular system that can be extended through
-connman: plug-ins. The plug-in approach allows for easy adaption and
-connman: modification for various use cases. Connman implements DNS resolving
-connman: and caching, DHCP clients for both IPv4 and IPv6, link-local IPv4
-connman: address handling and tethering (IP connection sharing) to clients via
+connman: Connman provides a daemon for managing Internet connections. The
+connman: Connection Manager is designed to be slim and to use as few resources
+connman: as possible. It is fully modular system that can be extended through
+connman: plug-ins. The plug-in approach allows for easy adaption and
+connman: modification for various use cases. Connman implements DNS resolving
+connman: and caching, DHCP clients for both IPv4 and IPv6, link-local IPv4
+connman: address handling and tethering (IP connection sharing) to clients via
connman: USB, ethernet, WiFi, cellular and Bluetooth.
connman:
diff --git a/network/copyparty/README b/network/copyparty/README
new file mode 100644
index 0000000000..56f1cb6067
--- /dev/null
+++ b/network/copyparty/README
@@ -0,0 +1,16 @@
+copyparty (Portable file server)
+
+copyparty is a file server with accelerated resumable uploads, dedup,
+WebDAV, FTP, TFTP, zeroconf, media indexer, thumbnails, and more.
+
+The README.SBo file distributed with this SlackBuild includes
+instructions for setting up copyparty to run as an init service. This
+file will also be included in copyparty's documentation directory when
+installed.
+
+copyparty supports the following optional dependencies:
+ - python3-argon2-cffi: Hashed passwords in config
+ - pyftpdlib: FTP
+ - pyOpenSSL: FTP with TLS encryption
+ - mutagen: Faster music tag processing
+ - python3-pyzmq: Sending zeromq messages from event-hooks
diff --git a/network/copyparty/README.SBo b/network/copyparty/README.SBo
new file mode 100644
index 0000000000..7ad31b13f7
--- /dev/null
+++ b/network/copyparty/README.SBo
@@ -0,0 +1,31 @@
+README.SBo (copyparty)
+
+To run copyparty as a service that runs at boot, you must first make
+sure its init script is executable.
+
+ # Run as root
+ chmod +x /etc/rc.d/rc.copyparty
+
+Then you will want to add the following lines to your
+/etc/rc.d/rc.local to run copyparty on startup.
+
+ # Start copyparty
+ if [ -x /etc/rc.d/rc.copyparty ]; then
+ /etc/rc.d/rc.copyparty start
+ fi
+
+After that, you will want to add the following lines to your
+/etc/rc.d/rc.local_shutdown to gracefully stop copyparty on shutdown.
+If rc.local_shutdown does not already exist, you will want to create
+it and make it executable.
+
+ # Stop copyparty
+ if [ -x /etc/rc.d/rc.copyparty ]; then
+ /etc/rc.d/rc.copyparty stop
+ fi
+
+When running copyparty from the SlackBuild's init script, copyparty
+will read configuration from /etc/copyparty.d/copyparty.conf. This
+SlackBuild also installs an example config file into copyparty's
+documentation directory, which you can consult for some guidance on
+writing your own configuration file.
diff --git a/network/copyparty/copyparty.SlackBuild b/network/copyparty/copyparty.SlackBuild
new file mode 100644
index 0000000000..69100461aa
--- /dev/null
+++ b/network/copyparty/copyparty.SlackBuild
@@ -0,0 +1,107 @@
+#!/bin/bash
+
+# Slackware build script for copyparty
+
+# Copyright 2025 Samuel Young, MO, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=copyparty
+VERSION=${VERSION:-1.19.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+cp $CWD/README.SBo .
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])')
+export PYTHONPATH=/opt/python$PYVER/site-packages
+
+python3 -m build --wheel --no-isolation
+python3 -m installer --destdir "$PKG" dist/*.whl
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/etc/rc.d
+install -m 644 $CWD/rc.copyparty $PKG/etc/rc.d/rc.copyparty.new
+mkdir -p $PKG/etc/copyparty.d
+install -m 644 $CWD/copyparty.conf $PKG/etc/copyparty.d/copyparty.conf.new
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md LICENSE README.md SECURITY.md README.SBo docs/changelog.md \
+ docs/example.conf docs/xff.md docs/TODO.md docs/versus.md \
+ docs/synology-dsm.md docs/rclone.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/copyparty/copyparty.conf b/network/copyparty/copyparty.conf
new file mode 100644
index 0000000000..1d90d772bc
--- /dev/null
+++ b/network/copyparty/copyparty.conf
@@ -0,0 +1,7 @@
+## import all *.conf files from the current folder (/etc/copyparty.d)
+% ./
+
+# add additional .conf files to this folder;
+# see example config files for reference:
+# https://github.com/9001/copyparty/blob/hovudstraum/docs/example.conf
+# https://github.com/9001/copyparty/tree/hovudstraum/docs/copyparty.d
diff --git a/network/copyparty/copyparty.info b/network/copyparty/copyparty.info
new file mode 100644
index 0000000000..a823c13760
--- /dev/null
+++ b/network/copyparty/copyparty.info
@@ -0,0 +1,10 @@
+PRGNAM="copyparty"
+VERSION="1.19.8"
+HOMEPAGE="https://github.com/9001/copyparty"
+DOWNLOAD="https://github.com/9001/copyparty/releases/download/v1.19.8/copyparty-1.19.8.tar.gz"
+MD5SUM="fead8dfb661bf576fefb501e4d3dce4a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="python3-build python3-setuptools-opt python3-wheel"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/copyparty/doinst.sh b/network/copyparty/doinst.sh
new file mode 100644
index 0000000000..ce6c16dd79
--- /dev/null
+++ b/network/copyparty/doinst.sh
@@ -0,0 +1,15 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+config etc/rc.d/rc.copyparty.new
+config etc/copyparty.d/copyparty.conf.new
diff --git a/network/copyparty/rc.copyparty b/network/copyparty/rc.copyparty
new file mode 100644
index 0000000000..db8b22b704
--- /dev/null
+++ b/network/copyparty/rc.copyparty
@@ -0,0 +1,53 @@
+#!/bin/sh
+# Start/stop/restart copyparty.
+
+# TODO: This script probably shouldn't run copyparty as root
+
+PIDFILE="/run/copyparty.pid"
+LOGFILE="/var/log/copyparty"
+CONFILE="/etc/copyparty.d/copyparty.conf"
+COPYPARTY_OPTS="-c $CONFILE -lo $LOGFILE --no-ansi"
+
+copyparty_start() {
+ if [ -e "$PIDFILE" ]; then
+ rm -f "$PIDFILE"
+ fi
+ if [ -x /usr/bin/copyparty ]; then
+ echo -n "Starting copyparty: /usr/bin/copyparty $COPYPARTY_OPTS"
+ /usr/bin/copyparty $COPYPARTY_OPTS 2>&1 >/dev/null &
+ echo -n "$!" > "$PIDFILE"
+ fi
+ echo
+}
+
+copyparty_stop() {
+ echo -n "Stopping copyparty... "
+ if [ -e "$PIDFILE" ]; then
+ echo -n "(PID $(cat "$PIDFILE"))"
+ kill -HUP $(cat "$PIDFILE")
+ rm -f "$PIDFILE"
+ else
+ killall --ns $$ -HUP -q copyparty
+ fi
+ echo
+}
+
+copyparty_restart() {
+ copyparty_stop
+ sleep 1
+ copyparty_start
+}
+
+case "$1" in
+'start')
+ copyparty_start
+ ;;
+'stop')
+ copyparty_stop
+ ;;
+'restart')
+ copyparty_restart
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
diff --git a/network/copyparty/slack-desc b/network/copyparty/slack-desc
new file mode 100644
index 0000000000..6ae5c089da
--- /dev/null
+++ b/network/copyparty/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+copyparty: copyparty (Portable file server)
+copyparty:
+copyparty: copyparty is a file server with accelerated resumable uploads, dedup,
+copyparty: WebDAV, FTP, TFTP, zeroconf, media indexer, thumbnails, and more.
+copyparty:
+copyparty:
+copyparty:
+copyparty:
+copyparty:
+copyparty: Homepage: https://github.com/9001/copyparty
+copyparty:
diff --git a/network/darkhttpd/darkhttpd.SlackBuild b/network/darkhttpd/darkhttpd.SlackBuild
index 091b227a4e..efd913a330 100644
--- a/network/darkhttpd/darkhttpd.SlackBuild
+++ b/network/darkhttpd/darkhttpd.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=darkhttpd
-VERSION=${VERSION:-1.16}
+VERSION=${VERSION:-1.17}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/darkhttpd/darkhttpd.info b/network/darkhttpd/darkhttpd.info
index 4b92c2dfcc..db926ba491 100644
--- a/network/darkhttpd/darkhttpd.info
+++ b/network/darkhttpd/darkhttpd.info
@@ -1,8 +1,8 @@
PRGNAM="darkhttpd"
-VERSION="1.16"
+VERSION="1.17"
HOMEPAGE="https://unix4lyfe.org/darkhttpd/"
-DOWNLOAD="https://github.com/emikulic/darkhttpd/archive/v1.16/darkhttpd-1.16.tar.gz"
-MD5SUM="ba8928e866ebcb9691a0cdd3b504b3c3"
+DOWNLOAD="https://github.com/emikulic/darkhttpd/archive/v1.17/darkhttpd-1.17.tar.gz"
+MD5SUM="8d20f63f6ef27fc5af84aa0796a92511"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/dino/README b/network/dino/README
index c02e88b308..353bb8e412 100644
--- a/network/dino/README
+++ b/network/dino/README
@@ -1,7 +1,7 @@
dino is super simple jabber client with support for video calls
Dino is written in vala and is well compatible
-with Conversations Android.
+with Conversations for Android.
Dino does not support neither system tray nor
multiple windows.
@@ -9,3 +9,10 @@ multiple windows.
To switch theme, run it like:
/usr/bin/env GTK_THEME=Adwaita:dark /usr/bin/dino
+
+You can pass VP9=yes if you want to try the VP9 codec
+instead of the default VP8, but be aware that many Intel
+GPUs do not support hardware acceleration of VP9, and
+without hardware acceleration video may stutter or
+freeze.
+
diff --git a/network/dino/dino.SlackBuild b/network/dino/dino.SlackBuild
index 6dd0017744..f49be62d4c 100644
--- a/network/dino/dino.SlackBuild
+++ b/network/dino/dino.SlackBuild
@@ -94,19 +94,14 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} +
-# CFLAGS="$SLKCFLAGS" \
-# ./configure \
-# --with-libsoup3 \
-# --prefix=/usr \
-# --sysconfdir=/etc \
-# --lib-suffix=${LIBDIRSUFFIX} \
-# --build=$ARCH-slackware-linux || exit 1
-#make || exit 1
-# make install DESTDIR=$PKG || exit 1
+VP9=${VP9:-disabled}
PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])')
export PYTHONPATH=/opt/python$PYVER/site-packages
+sed -i 's|call_window.bottom_bar.show_video_device_choices(false);|call_window.bottom_bar.show_video_device_choices(true);|g' main/src/ui/call_window/call_window_controller.vala
+sed -i 's|call_window.bottom_bar.show_audio_device_choices(false);|call_window.bottom_bar.show_audio_device_choices(true);|g' main/src/ui/call_window/call_window_controller.vala
+
mkdir build
cd build
CFLAGS="$SLKCFLAGS" \
@@ -129,7 +124,7 @@ cd build
-Dplugin-rtp-h264=enabled \
-Dplugin-rtp-msdk=enabled \
-Dplugin-rtp-vaapi=enabled \
- -Dplugin-rtp-vp9=enabled \
+ -Dplugin-rtp-vp9=$VP9 \
-Dplugin-rtp-webrtc-audio-processing=enabled
"${NINJA:=ninja}"
diff --git a/network/dino/dino.info b/network/dino/dino.info
index 91035e4f1c..41be3d8d78 100644
--- a/network/dino/dino.info
+++ b/network/dino/dino.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/dino/dino/archive/e23f2d8a6877c4d8137d1377db35cb963
MD5SUM="d57c90a81fa3a59a9922851715180d87"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libsignal-protocol-c libadwaita libsrtp2 libsoup3 webrtc-audio-processing python3-meson-opt libomemo-c"
+REQUIRES="libsignal-protocol-c libadwaita libsrtp2 libsoup3 webrtc-audio-processing python3-meson-opt libomemo-c gstreamer-vaapi"
MAINTAINER="Lockywolf"
EMAIL="for_sbo-dino_2023-05-09@lockywolf.net"
diff --git a/network/discord/discord.SlackBuild b/network/discord/discord.SlackBuild
index d2d0888d38..761b20b0f6 100644
--- a/network/discord/discord.SlackBuild
+++ b/network/discord/discord.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=discord
-VERSION=${VERSION:-0.0.93}
+VERSION=${VERSION:-0.0.109}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/discord/discord.info b/network/discord/discord.info
index 37486d4ff2..9bea9d6ed1 100644
--- a/network/discord/discord.info
+++ b/network/discord/discord.info
@@ -1,10 +1,10 @@
PRGNAM="discord"
-VERSION="0.0.93"
+VERSION="0.0.109"
HOMEPAGE="https://discord.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://dl.discordapp.net/apps/linux/0.0.93/discord-0.0.93.deb"
-MD5SUM_x86_64="90bc9acdae586c3a82e587579ec78e9a"
+DOWNLOAD_x86_64="https://dl.discordapp.net/apps/linux/0.0.109/discord-0.0.109.deb"
+MD5SUM_x86_64="101dc8ddf7d7232f3aaa5368a9dd94a5"
REQUIRES=""
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild b/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
index 78b134b2f1..5374e1d784 100644
--- a/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
+++ b/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
@@ -26,8 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dnscrypt-proxy
-VERSION=${VERSION:-2.1.5}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-2.1.12}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.info b/network/dnscrypt-proxy/dnscrypt-proxy.info
index f4ba8b100e..6451a5e335 100644
--- a/network/dnscrypt-proxy/dnscrypt-proxy.info
+++ b/network/dnscrypt-proxy/dnscrypt-proxy.info
@@ -1,10 +1,10 @@
PRGNAM="dnscrypt-proxy"
-VERSION="2.1.5"
+VERSION="2.1.12"
HOMEPAGE="https://github.com/DNSCrypt/dnscrypt-proxy"
-DOWNLOAD="https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.1.5/dnscrypt-proxy-linux_i386-2.1.5.tar.gz"
-MD5SUM="edbd10c9d3be0e81976203c77902f339"
-DOWNLOAD_x86_64="https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.1.5/dnscrypt-proxy-linux_x86_64-2.1.5.tar.gz"
-MD5SUM_x86_64="8190b0d10841aea11f74caf77dbc2c39"
+DOWNLOAD="https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.1.12/dnscrypt-proxy-linux_i386-2.1.12.tar.gz"
+MD5SUM="bf4c2c4c0e079c267025ab36794db9e0"
+DOWNLOAD_x86_64="https://github.com/DNSCrypt/dnscrypt-proxy/releases/download/2.1.12/dnscrypt-proxy-linux_x86_64-2.1.12.tar.gz"
+MD5SUM_x86_64="dfb9f66733fc4ae8b8ac5638bb6c7574"
REQUIRES=""
MAINTAINER="thnkman"
EMAIL="thnkman@proton.me"
diff --git a/network/dnscrypt-proxy/rc.dnscrypt-proxy b/network/dnscrypt-proxy/rc.dnscrypt-proxy
index 1813fdd562..76b94d2643 100644
--- a/network/dnscrypt-proxy/rc.dnscrypt-proxy
+++ b/network/dnscrypt-proxy/rc.dnscrypt-proxy
@@ -22,7 +22,8 @@ OPTS="-config $CONFDIR/dnscrypt-proxy.toml"
# Start dnscrypt-proxy
start() {
- echo -e "\nStarting $PRGNAM..."
+mkdir -p /var/run/dnscrypt-proxy
+ echo -e "\nStarting $PRGNAM..."
if [ -f "$PIDFILE" ] && kill -0 $(cat "$PIDFILE" 2>/dev/null) 2>/dev/null; then
echo -e "$PRGNAM already up\n"
exit 1
diff --git a/network/dnsproxy-bin/config.yaml.dist b/network/dnsproxy-bin/config.yaml.dist
deleted file mode 100644
index 640a15527c..0000000000
--- a/network/dnsproxy-bin/config.yaml.dist
+++ /dev/null
@@ -1,20 +0,0 @@
-# This is the yaml configuration file for dnsproxy with minimal working
-# configuration, all the options available can be seen with ./dnsproxy --help.
-# To use it within dnsproxy specify the --config-path=/<path-to-config.yaml>
-# option. Any other command-line options specified will override the values
-# from the config file.
----
-bootstrap:
- - "8.8.8.8:53"
-listen-addrs:
- - "0.0.0.0"
-listen-ports:
- - 53
-max-go-routines: 0
-ratelimit: 0
-ratelimit-subnet-len-ipv4: 24
-ratelimit-subnet-len-ipv6: 64
-udp-buf-size: 0
-upstream:
- - "1.1.1.1:53"
-timeout: '10s'
diff --git a/network/dnsproxy-bin/dnsproxy-bin.SlackBuild b/network/dnsproxy-bin/dnsproxy-bin.SlackBuild
index a579ddca70..a6944adb20 100644
--- a/network/dnsproxy-bin/dnsproxy-bin.SlackBuild
+++ b/network/dnsproxy-bin/dnsproxy-bin.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dnsproxy-bin
-VERSION=${VERSION:-0.75.3}
+VERSION=${VERSION:-0.76.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/dnsproxy-bin/dnsproxy-bin.info b/network/dnsproxy-bin/dnsproxy-bin.info
index 51e4369833..c2c2e3f0a0 100644
--- a/network/dnsproxy-bin/dnsproxy-bin.info
+++ b/network/dnsproxy-bin/dnsproxy-bin.info
@@ -1,13 +1,13 @@
PRGNAM="dnsproxy-bin"
-VERSION="0.75.3"
+VERSION="0.76.1"
HOMEPAGE="https://github.com/AdguardTeam/dnsproxy"
-DOWNLOAD="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.75.3/dnsproxy-linux-386-v0.75.3.tar.gz \
- https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.75.3/config.yaml.dist"
-MD5SUM="bea7edd1a4faf4e8687db54513aad63f \
+DOWNLOAD="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.76.1/dnsproxy-linux-386-v0.76.1.tar.gz \
+ https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.76.1/config.yaml.dist"
+MD5SUM="62fae3680910e05df56049dbd69bb091 \
5a8aaaacbc3aeb1af4aac34233f2d14b"
-DOWNLOAD_x86_64="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.75.3/dnsproxy-linux-amd64-v0.75.3.tar.gz \
- https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.75.3/config.yaml.dist"
-MD5SUM_x86_64="60381d146a9bd4b000afab32a15dd302 \
+DOWNLOAD_x86_64="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.76.1/dnsproxy-linux-amd64-v0.76.1.tar.gz \
+ https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.76.1/config.yaml.dist"
+MD5SUM_x86_64="447313b8fd9700365209710d26a4b6ea \
5a8aaaacbc3aeb1af4aac34233f2d14b"
REQUIRES=""
MAINTAINER="fourtysixandtwo"
diff --git a/network/dooble/dooble.SlackBuild b/network/dooble/dooble.SlackBuild
index 9f94a6de82..3c27650aff 100644
--- a/network/dooble/dooble.SlackBuild
+++ b/network/dooble/dooble.SlackBuild
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dooble
-VERSION=${VERSION:-2025.04.07}
+VERSION=${VERSION:-2025.07.18}
DIC_VERSION="dooble-dictionaries-0f1e715b85a47f930deb004fc44fa9e234941604"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -72,9 +72,14 @@ find -L . \
export DOOBLE_DICTIONARIES_DIRECTORY="$DIC_VERSION"/Dictionaries
-QMAKE=$(which qmake)
+# for sudoers with unset qmake in user $PATH ...
+QMAKE=$(which qmake) || true
-"$QMAKE" dooble.pro
+if [ -x "$QMAKE" ]; then
+ "$QMAKE" dooble.pro
+else
+ /usr/lib64/qt5/bin/qmake dooble.pro
+fi
make
mkdir -p "$PKG/usr/bin"
diff --git a/network/dooble/dooble.info b/network/dooble/dooble.info
index 66daa71ad7..698c8dc3dd 100644
--- a/network/dooble/dooble.info
+++ b/network/dooble/dooble.info
@@ -1,9 +1,9 @@
PRGNAM="dooble"
-VERSION="2025.04.07"
+VERSION="2025.07.18"
HOMEPAGE="https://dooble.sourceforge.io"
-DOWNLOAD="https://github.com/textbrowser/dooble/archive/2025.04.07/dooble-2025.04.07.tar.gz \
+DOWNLOAD="https://github.com/textbrowser/dooble/archive/2025.07.18/dooble-2025.07.18.tar.gz \
https://github.com/textbrowser/dooble-dictionaries/archive/0f1e715b85a47f930deb004fc44fa9e234941604/dooble-dictionaries-0f1e715b85a47f930deb004fc44fa9e234941604.tar.gz"
-MD5SUM="fedaf7c3cb44d04e4657c72a46ef5c16 \
+MD5SUM="b1c81a6f76f110dc9e52454ae1541115 \
6467bc2bb6d2665cd4e14cee0e6438f5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/dropbear/dropbear.SlackBuild b/network/dropbear/dropbear.SlackBuild
index fae979e79d..60d478c2ea 100644
--- a/network/dropbear/dropbear.SlackBuild
+++ b/network/dropbear/dropbear.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dropbear
-VERSION=${VERSION:-2025.87}
+VERSION=${VERSION:-2025.88}
SRCVERSION="DROPBEAR_$VERSION"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/dropbear/dropbear.info b/network/dropbear/dropbear.info
index be39da137d..b83b148558 100644
--- a/network/dropbear/dropbear.info
+++ b/network/dropbear/dropbear.info
@@ -1,8 +1,8 @@
PRGNAM="dropbear"
-VERSION="2025.87"
+VERSION="2025.88"
HOMEPAGE="https://github.com/mkj/dropbear"
-DOWNLOAD="https://github.com/mkj/dropbear/archive/DROPBEAR_2025.87/dropbear-DROPBEAR_2025.87.tar.gz"
-MD5SUM="f93e71a22e19b57f0bec5a1864690b5f"
+DOWNLOAD="https://github.com/mkj/dropbear/archive/DROPBEAR_2025.88/dropbear-DROPBEAR_2025.88.tar.gz"
+MD5SUM="327e7deca6ce7c18b1f259dbf40021bd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/dropbox/dropbox.SlackBuild b/network/dropbox/dropbox.SlackBuild
index 83a7f1bace..9f1059a968 100644
--- a/network/dropbox/dropbox.SlackBuild
+++ b/network/dropbox/dropbox.SlackBuild
@@ -31,7 +31,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dropbox
-VERSION=${VERSION:-223.4.4909}
+VERSION=${VERSION:-231.4.5770}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/dropbox/dropbox.info b/network/dropbox/dropbox.info
index 2b9987f7e3..b79dd6ac99 100644
--- a/network/dropbox/dropbox.info
+++ b/network/dropbox/dropbox.info
@@ -1,10 +1,10 @@
PRGNAM="dropbox"
-VERSION="223.4.4909"
+VERSION="231.4.5770"
HOMEPAGE="https://www.dropbox.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-223.4.4909.tar.gz"
-MD5SUM_x86_64="286fdd6aef3a83fb17e84c9a2ce5614b"
+DOWNLOAD_x86_64="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-231.4.5770.tar.gz"
+MD5SUM_x86_64="c16a1c0a905e95d681e42d2693710df7"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/edbrowse/README b/network/edbrowse/README
new file mode 100644
index 0000000000..62d8b7395c
--- /dev/null
+++ b/network/edbrowse/README
@@ -0,0 +1,5 @@
+edbrowse is a text based web browser that uses an ed(1)-like
+interface. The primary motivation for developping such a browser was
+to aid blind users, but many sighted users have found the scripting
+capabilities of this program useful. A user guide is included in
+/usr/doc/edbrowse-*/doc.
diff --git a/network/edbrowse/edbrowse.SlackBuild b/network/edbrowse/edbrowse.SlackBuild
new file mode 100644
index 0000000000..ecfc9050f4
--- /dev/null
+++ b/network/edbrowse/edbrowse.SlackBuild
@@ -0,0 +1,67 @@
+#!/bin/bash
+# Slackware build script for edbrowse
+# Written by Dan-Simon Myrland <dansimon@radiotube.org>
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=edbrowse
+VERSION=${VERSION:-3.8.12}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+case $(uname -m) in
+ x86_64) LIBDIRSUFFIX=64 ;;
+esac
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd src
+make QUICKJS_INCLUDE=/usr/include/quickjs QUICKJS_LIB=/usr/lib${LIBDIRSUFFIX}/quickjs
+install -m 2755 -D $PRGNAM $PKG/usr/bin/$PRGNAM
+strip $PKG/usr/bin/$PRGNAM
+cd ..
+
+mkdir -p $PKG/usr/man/man1
+install -m 0644 -D doc/man-edbrowse-debian.1 $PKG/usr/man/man1/edbrowse.1
+gzip -9 $PKG/usr/man/man1/edbrowse.1
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -ar CHANGES LICENSE README doc $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/edbrowse/edbrowse.info b/network/edbrowse/edbrowse.info
new file mode 100644
index 0000000000..e01e1e29a9
--- /dev/null
+++ b/network/edbrowse/edbrowse.info
@@ -0,0 +1,10 @@
+PRGNAM="edbrowse"
+VERSION="3.8.12"
+HOMEPAGE="http://edbrowse.org"
+DOWNLOAD="https://github.com/edbrowse/edbrowse/archive/v3.8.12/edbrowse-3.8.12.tar.gz"
+MD5SUM="48f77e110cf82f33c6d769c3685a4a1f"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="unixODBC quickjs"
+MAINTAINER="Dan-Simon Myrland"
+EMAIL="dansimon@radiotube.org"
diff --git a/network/edbrowse/slack-desc b/network/edbrowse/slack-desc
new file mode 100644
index 0000000000..cca0a369af
--- /dev/null
+++ b/network/edbrowse/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+edbrowse: edbrowse (a command line editor browser)
+edbrowse:
+edbrowse: edbrowse is a text based web browser that uses an ed(1)-like
+edbrowse: interface. The primary motivation for developping such a browser was
+edbrowse: to aid blind users, but many sighted users have found the scripting
+edbrowse: capabilities of this program useful. A user guide is included in
+edbrowse: /usr/doc/edbrowse-*/doc.
+edbrowse:
+edbrowse:
+edbrowse:
+edbrowse:
diff --git a/network/electrs/electrs.SlackBuild b/network/electrs/electrs.SlackBuild
index 5e1268fcb9..251c0b8ca3 100644
--- a/network/electrs/electrs.SlackBuild
+++ b/network/electrs/electrs.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=electrs
-VERSION=${VERSION:-0.10.5}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-0.10.9}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/electrs/electrs.info b/network/electrs/electrs.info
index 8c3e92de11..99c65eefba 100644
--- a/network/electrs/electrs.info
+++ b/network/electrs/electrs.info
@@ -1,8 +1,8 @@
PRGNAM="electrs"
-VERSION="0.10.5"
+VERSION="0.10.9"
HOMEPAGE="https://github.com/romanz/electrs"
-DOWNLOAD="https://github.com/romanz/electrs/archive/v0.10.5/electrs-0.10.5.tar.gz"
-MD5SUM="785d12a515628d25aefcaeff3d952587"
+DOWNLOAD="https://github.com/romanz/electrs/archive/v0.10.9/electrs-0.10.9.tar.gz"
+MD5SUM="015d484f265e23f0b69b5e10dded3b52"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="rust-opt"
diff --git a/network/electrs/rc.electrs b/network/electrs/rc.electrs
index f915ae69b3..ac1c8cbb45 100644
--- a/network/electrs/rc.electrs
+++ b/network/electrs/rc.electrs
@@ -20,6 +20,7 @@ PIDFILE=/var/run/$PRGNAM/$PRGNAM.pid
# Start electrs
electrs_start() {
+mkdir -p /var/run/electrs
echo -e "\nStarting $PRGNAM..."
if [ -f "$PIDFILE" ] && kill -0 $(cat "$PIDFILE" 2>/dev/null) 2>/dev/null; then
echo -e "$PRGNAM already up\n"
diff --git a/network/element-desktop-bin/README b/network/element-desktop-bin/README
new file mode 100644
index 0000000000..e8b15e4ba5
--- /dev/null
+++ b/network/element-desktop-bin/README
@@ -0,0 +1,10 @@
+Secure and independent communication, connected via Matrix
+
+Choose where your data is kept, or host it yourself, instead of being
+forced to use the app’s own server.
+
+End-to-end encrypted by default
+
+Element is only available as a 64bit program. 32bit is unsupported.
+
+This script repackages a Debian binary.
diff --git a/network/element-desktop-bin/doinst.sh b/network/element-desktop-bin/doinst.sh
new file mode 100644
index 0000000000..a993650058
--- /dev/null
+++ b/network/element-desktop-bin/doinst.sh
@@ -0,0 +1,10 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+# If other icon themes are installed, then add to/modify this as needed
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/element-desktop-bin/element-desktop-bin.SlackBuild b/network/element-desktop-bin/element-desktop-bin.SlackBuild
new file mode 100644
index 0000000000..daf2eb5e43
--- /dev/null
+++ b/network/element-desktop-bin/element-desktop-bin.SlackBuild
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+# Slackware build script for element-desktop-bin
+#
+# Copyright 2022 marav, Paris, FR
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=element-desktop-bin
+DEBNAM=${PRGNAM%-bin}
+VERSION=${VERSION:-1.11.111}
+SRCVERSION=$( echo $VERSION | tr _ - )
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ DEBARCH="i386"
+ echo "This package is currently only available for 64bit."
+ exit 1
+elif [ "$ARCH" = "x86_64" ]; then
+ DEBARCH="amd64"
+else
+ echo "Package for $(uname -m) architecture is not available."
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar p $CWD/${DEBNAM}_${SRCVERSION}_amd64.deb data.tar.xz | tar Jxv
+
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $PKG/usr/share/doc/$DEBNAM/* $PKG/opt/Element/LICENSE* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/element-desktop-bin/element-desktop-bin.info b/network/element-desktop-bin/element-desktop-bin.info
new file mode 100644
index 0000000000..a38590d241
--- /dev/null
+++ b/network/element-desktop-bin/element-desktop-bin.info
@@ -0,0 +1,10 @@
+PRGNAM="element-desktop-bin"
+VERSION="1.11.111"
+HOMEPAGE="https://element.io/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_1.11.111_amd64.deb"
+MD5SUM_x86_64="51ac35bfe10832832bbf95931c5d37be"
+REQUIRES="sqlcipher"
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"
diff --git a/network/element-desktop-bin/slack-desc b/network/element-desktop-bin/slack-desc
new file mode 100644
index 0000000000..dfd5417a8f
--- /dev/null
+++ b/network/element-desktop-bin/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+element-desktop-bin: element-desktop-bin (Secure and independent communication via Matrix)
+element-desktop-bin:
+element-desktop-bin: Element lets you choose where your messages are stored, putting
+element-desktop-bin: you in control of your data.
+element-desktop-bin:
+element-desktop-bin: Secure and end-to-end encrypted. Built on Matrix
+element-desktop-bin:
+element-desktop-bin:
+element-desktop-bin: Homepage: https://element.io/
+element-desktop-bin:
+element-desktop-bin:
diff --git a/network/element-desktop/README b/network/element-desktop/README
index 5ea2012a55..d466cddf29 100644
--- a/network/element-desktop/README
+++ b/network/element-desktop/README
@@ -1,12 +1,12 @@
-Element
+Secure and independent communication, connected via Matrix.
-Secure and independent communication, connected via Matrix
-
-Choose where your data is kept, or host it yourself, instead of being
+Choose where your data is kept, or host it yourself, instead of being
forced to use the app’s own server.
-End-to-end encrypted by default
-
+End-to-end encrypted by default.
-Element is only available as a 64bit program. 32bit is unsupported.
+Element is only available as a 64 bit program. 32 bit is unsupported.
+Warning: vendored-sources.tar.xz is over 800 Mb and the building process
+requires about 5 GB of space. If you're hard-pressed on space, consider
+installing element-desktop-bin instead.
diff --git a/network/element-desktop/autolaunch.patch b/network/element-desktop/autolaunch.patch
new file mode 100644
index 0000000000..e116dca6b8
--- /dev/null
+++ b/network/element-desktop/autolaunch.patch
@@ -0,0 +1,10 @@
+--- a/src/electron-main.ts 2025-07-30 17:41:30.000000000 +0300
++++ b/src/electron-main.ts 2025-08-09 23:51:20.531971598 +0300
+@@ -253,6 +253,7 @@
+ global.launcher = new AutoLaunch({
+ name: global.vectorConfig.brand || "Element",
+ isHidden: true,
++ path: "/usr/bin/element-desktop",
+ mac: {
+ useLaunchAgent: true,
+ },
diff --git a/network/element-desktop/element-desktop.SlackBuild b/network/element-desktop/element-desktop.SlackBuild
index c17f2a1efb..2c6a6407b8 100644
--- a/network/element-desktop/element-desktop.SlackBuild
+++ b/network/element-desktop/element-desktop.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
# Slackware build script for element-desktop
-#
-# Copyright 2022 marav, Paris, FR
+
+# Copyright 2025 Vladislav 'fsLeg' Borisov, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,7 +11,7 @@
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=element-desktop
-VERSION=${VERSION:-1.11.87}
-SRCVERSION=$( echo $VERSION | tr _ - )
+WEBNAM=element-web
+VERSION=${VERSION:-1.11.111}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +39,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -51,24 +48,51 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- DEBARCH="i386"
- echo "This package is currently only available for 64bit."
+if [ "$ARCH" = "i586" -o "$ARCH" = "i686" ]; then
+ echo
+ echo "*************************************************************"
+ echo "Element-desktop relies on Electron which doesn't support"
+ echo "x86 architecture anymore, therefore it can't be built on"
+ echo "an x86 system."
+ echo "*************************************************************"
+ echo
exit 1
-elif [ "$ARCH" = "x86_64" ]; then
- DEBARCH="amd64"
+elif [ "$ARCH" = "x86_64" -o "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
- echo "Package for $(uname -m) architecture is not available."
- exit 1
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
fi
set -e
+export PATH="/opt/rust/bin:$PATH"
+if [ -z "$LD_LIBRARY_PATH" ]; then
+ export LD_LIBRARY_PATH="/opt/rust/lib$LIBDIRSUFFIX"
+else
+ export LD_LIBRARY_PATH="/opt/rust/lib$LIBDIRSUFFIX:$LD_LIBRARY_PATH"
+fi
+
+BASE_TMP_DIR=$TMP/$PRGNAM-$VERSION
+export YARN_YARN_OFFLINE_MIRROR=$BASE_TMP_DIR/vendor
+export YARN_CACHE_FOLDER=$BASE_TMP_DIR/cache
+export npm_config_cache=$YARN_CACHE_FOLDER
+export npm_config_nodedir=/usr
+export XDG_CACHE_HOME=$BASE_TMP_DIR/electron-cache
+export CARGO_HOME=$BASE_TMP_DIR/cargo
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $PKG
-ar p $CWD/${PRGNAM}_${SRCVERSION}_amd64.deb data.tar.xz | tar Jxv
+cd $TMP
+rm -rf $PRGNAM-$VERSION $WEBNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$WEBNAM-$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION-vendored-sources.tar.xz
+cd $WEBNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -76,13 +100,62 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+sed -i 's|yarn |yarn --offline |g' package.json
+yarn install --frozen-lockfile \
+ --ignore-engines \
+ --no-fund \
+ --update-checksums \
+ --offline
+VERSION=$VERSION \
+ yarn --offline build
+yarn --offline cache clean
+
+cd ../$PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# fix autolaunch
+# https://gitlab.archlinux.org/archlinux/packaging/packages/element.io/-/blob/main/autolaunch.patch
+patch -p1 < $CWD/autolaunch.patch
+# use vendored sources and prevent warnings
+patch -p1 < $CWD/yarn-offline.patch
+sed -i 's|yarn |yarn --offline |g' package.json .hak/hakModules/matrix-seshat/package.json
+sed -i 's|cargo build |cargo build --frozen |' .hak/hakModules/matrix-seshat/package.json
+
+mkdir -p deploys
+mv ../$WEBNAM-$VERSION/webapp deploys/element-v$VERSION
+yarn install --frozen-lockfile \
+ --ignore-engines \
+ --no-fund \
+ --update-checksums \
+ --offline
+yarn --offline run fetch --noverify --cfgdir ""
+CRATE_CC_NO_DEFAULTS=1 \
+RUSTFLAGS="-C target-cpu=native" \
+ yarn --offline run build:native
+rm -r .hak/hakModules/matrix-seshat/{.cargo,node_modules,target,vendor}
+yarn --offline run build --publish never
+
+mkdir -p $PKG/usr/{bin,lib$LIBDIRSUFFIX,share/applications}
+mv dist/linux-unpacked $PKG/usr/lib$LIBDIRSUFFIX/element-desktop
+
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+install -Dm644 $CWD/element-desktop.desktop $PKG/usr/share/applications/io.element.Element.desktop
+ln -s /usr/lib$LIBDIRSUFFIX/element-desktop/element-desktop $PKG/usr/bin/
+
+for geometry in 16x16 24x24 32x32 48x48 64x64 96x96 128x128 256x256 512x512; do
+ mkdir -p $PKG/usr/share/icons/hicolor/$geometry/apps
+ magick build/icon.png -resize $geometry $PKG/usr/share/icons/hicolor/$geometry/apps/$PRGNAM.png
+done
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $PKG/usr/share/doc/$PRGNAM/* $PKG/opt/Element/LICENSE* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-rm -rf $PKG/usr/share/doc
+cp -a CHANGELOG.md CONTRIBUTING.md README.md LICENSE-* docs/* $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/element-desktop/element-desktop.desktop b/network/element-desktop/element-desktop.desktop
new file mode 100644
index 0000000000..2a3faebb7f
--- /dev/null
+++ b/network/element-desktop/element-desktop.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Element
+Exec=/usr/bin/element-desktop %U
+Terminal=false
+Type=Application
+Icon=element-desktop
+StartupWMClass=Element
+Comment=Element: the future of secure communication
+MimeType=x-scheme-handler/io.element.desktop;x-scheme-handler/element;
+Categories=Network;InstantMessaging;Chat;
diff --git a/network/element-desktop/element-desktop.info b/network/element-desktop/element-desktop.info
index 704f806494..27bec90d11 100644
--- a/network/element-desktop/element-desktop.info
+++ b/network/element-desktop/element-desktop.info
@@ -1,10 +1,14 @@
PRGNAM="element-desktop"
-VERSION="1.11.87"
+VERSION="1.11.111"
HOMEPAGE="https://element.io/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://packages-old.element.io/debian/pool/main/e/element-desktop/element-desktop_1.11.87_amd64.deb"
-MD5SUM_x86_64="b93b211ee870d0455df4bd0de176e396"
-REQUIRES="sqlcipher"
-MAINTAINER="marav"
-EMAIL="marav8@free.fr"
+DOWNLOAD_x86_64="https://github.com/element-hq/element-desktop/archive/v1.11.111/element-desktop-1.11.111.tar.gz \
+ https://github.com/element-hq/element-web/archive/v1.11.111/element-web-1.11.111.tar.gz \
+ https://sbo.t-rg.ws/element-desktop-1.11.111-vendored-sources.tar.xz"
+MD5SUM_x86_64="06de04356e58168f334501ce02f1ed6b \
+ add9063677de768399e502a17b2c2bbb \
+ f900a4946e215a9afac10214f06fcb23"
+REQUIRES="sqlcipher yarn rust-opt"
+MAINTAINER="Vladislav 'fsLeg' Borisov"
+EMAIL="fsleg@t-rg.ws"
diff --git a/network/element-desktop/slack-desc b/network/element-desktop/slack-desc
index 683fc945ad..1eb0c3198e 100644
--- a/network/element-desktop/slack-desc
+++ b/network/element-desktop/slack-desc
@@ -6,12 +6,12 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-element-desktop: element-desktop (Secure and independent communication via Matrix)
+element-desktop: element-desktop (secure and independent communication via Matrix)
element-desktop:
-element-desktop: Element lets you choose where your messages are stored, putting
-element-desktop: you in control of your data.
+element-desktop: Element lets you choose where your messages are stored, putting you
+element-desktop: in control of your data.
element-desktop:
-element-desktop: Secure and end-to-end encrypted. Built on Matrix
+element-desktop: Secure and end-to-end encrypted. Built on Matrix.
element-desktop:
element-desktop:
element-desktop: Homepage: https://element.io/
diff --git a/network/element-desktop/yarn-offline.patch b/network/element-desktop/yarn-offline.patch
new file mode 100644
index 0000000000..abc34bd8fc
--- /dev/null
+++ b/network/element-desktop/yarn-offline.patch
@@ -0,0 +1,46 @@
+--- a/scripts/hak/fetch.ts 2025-07-30 17:41:30.000000000 +0300
++++ b/scripts/hak/fetch.ts 2025-08-10 20:00:44.506272030 +0300
+@@ -31,7 +31,7 @@
+ });
+
+ console.log("Running yarn install in " + moduleInfo.moduleBuildDir);
+- await hakEnv.spawn("yarn", ["install", "--ignore-scripts"], {
++ await hakEnv.spawn("yarn", ["install", "--offline", "--ignore-scripts"], {
+ cwd: moduleInfo.moduleBuildDir,
+ });
+
+--- a/hak/matrix-seshat/build.ts 2025-08-12 20:56:41.683279350 +0300
++++ b/hak/matrix-seshat/build.ts 2025-08-12 20:35:48.549674868 +0300
+@@ -17,7 +17,7 @@
+ }
+
+ console.log("Running yarn install");
+- await hakEnv.spawn("yarn", ["install"], {
++ await hakEnv.spawn("yarn", ["install", "--offline"], {
+ cwd: moduleInfo.moduleBuildDir,
+ env,
+ shell: true,
+@@ -26,7 +26,7 @@
+ const buildTarget = hakEnv.wantsStaticSqlCipher() ? "build-bundled" : "build";
+
+ console.log("Running yarn build");
+- await hakEnv.spawn("yarn", ["run", buildTarget], {
++ await hakEnv.spawn("yarn", ["--offline", "run", buildTarget], {
+ cwd: moduleInfo.moduleBuildDir,
+ env,
+ shell: true,
+--- a/scripts/hak/link.ts 2025-07-30 17:41:30.000000000 +0300
++++ b/scripts/hak/link.ts 2025-08-12 21:51:22.436370101 +0300
+@@ -38,10 +38,10 @@
+ );
+ }
+
+- await hakEnv.spawn("yarn", ["link"], {
++ await hakEnv.spawn("yarn", ["--offline", "link"], {
+ cwd: moduleInfo.moduleOutDir,
+ });
+- await hakEnv.spawn("yarn", ["link", moduleInfo.name], {
++ await hakEnv.spawn("yarn", ["--offline", "link", moduleInfo.name], {
+ cwd: hakEnv.projectRoot,
+ });
+ }
diff --git a/network/filezilla/filezilla.SlackBuild b/network/filezilla/filezilla.SlackBuild
index c3c126b9f5..63ed6710f9 100644
--- a/network/filezilla/filezilla.SlackBuild
+++ b/network/filezilla/filezilla.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=filezilla
-VERSION=${VERSION:-3.69.1}
+VERSION=${VERSION:-3.69.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/filezilla/filezilla.info b/network/filezilla/filezilla.info
index 0ed492c31a..3c535855dc 100644
--- a/network/filezilla/filezilla.info
+++ b/network/filezilla/filezilla.info
@@ -1,8 +1,8 @@
PRGNAM="filezilla"
-VERSION="3.69.1"
+VERSION="3.69.3"
HOMEPAGE="https://filezilla-project.org/"
-DOWNLOAD="https://sbo-source.s3.ap-southeast-1.amazonaws.com/FileZilla_3.69.1_src.tar.xz"
-MD5SUM="94f7d43e0faf8cccea0a15c4e7199297"
+DOWNLOAD="https://sbo-source.s3.ap-southeast-1.amazonaws.com/FileZilla_3.69.3_src.tar.xz"
+MD5SUM="2464c04a69730cc42cfe645903ada648"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="wxWidgets libfilezilla"
diff --git a/network/floorp-bin/floorp-bin.SlackBuild b/network/floorp-bin/floorp-bin.SlackBuild
index 1e8ceca9d7..9a656ea5cd 100644
--- a/network/floorp-bin/floorp-bin.SlackBuild
+++ b/network/floorp-bin/floorp-bin.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=floorp-bin
SRCNAM=floorp
-VERSION=${VERSION:-11.26.0}
+VERSION=${VERSION:-12.1.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -63,7 +63,7 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.linux-x86_64.tar.bz2 -C $PRGNAM-$VERSION --strip-components=1
+tar xvf $CWD/$SRCNAM-linux-amd64.tar.xz -C $PRGNAM-$VERSION --strip-components=1
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/network/floorp-bin/floorp-bin.info b/network/floorp-bin/floorp-bin.info
index de60394941..eba39cd4a3 100644
--- a/network/floorp-bin/floorp-bin.info
+++ b/network/floorp-bin/floorp-bin.info
@@ -1,10 +1,10 @@
PRGNAM="floorp-bin"
-VERSION="11.26.0"
-HOMEPAGE="https://floorp.app/en/"
+VERSION="12.1.4"
+HOMEPAGE="https://floorp.app"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Floorp-Projects/Floorp/releases/download/v11.26.0/floorp-11.26.0.linux-x86_64.tar.bz2"
-MD5SUM_x86_64="7a8e1ab15755c2db8bf16920233bc5ac"
+DOWNLOAD_x86_64="https://github.com/Floorp-Projects/Floorp/releases/download/v12.1.4/floorp-linux-amd64.tar.xz"
+MD5SUM_x86_64="883b9a43d049d5f1c0ab170dde8803ed"
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
EMAIL="dslackw@gmail.com"
diff --git a/network/floorp-bin/slack-desc b/network/floorp-bin/slack-desc
index 2780861335..6c44010dbe 100644
--- a/network/floorp-bin/slack-desc
+++ b/network/floorp-bin/slack-desc
@@ -11,7 +11,7 @@ floorp-bin:
floorp-bin: Floorp is a fork of Firefox from Japan with a highly customizable
floorp-bin: UI and better privacy and security defaults.
floorp-bin:
-floorp-bin: https://floorp.app/en
+floorp-bin: https://floorp.app
floorp-bin:
floorp-bin:
floorp-bin:
diff --git a/network/gallery-dl/gallery-dl.SlackBuild b/network/gallery-dl/gallery-dl.SlackBuild
index b29466a82a..9a70d9c5cd 100644
--- a/network/gallery-dl/gallery-dl.SlackBuild
+++ b/network/gallery-dl/gallery-dl.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gallery-dl
-VERSION=${VERSION:-1.29.3}
+VERSION=${VERSION:-1.30.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/gallery-dl/gallery-dl.info b/network/gallery-dl/gallery-dl.info
index 43bef7feb6..263e2b2102 100644
--- a/network/gallery-dl/gallery-dl.info
+++ b/network/gallery-dl/gallery-dl.info
@@ -1,8 +1,8 @@
PRGNAM="gallery-dl"
-VERSION="1.29.3"
+VERSION="1.30.6"
HOMEPAGE="https://github.com/mikf/gallery-dl"
-DOWNLOAD="https://github.com/mikf/gallery-dl/archive/v1.29.3/gallery-dl-1.29.3.tar.gz"
-MD5SUM="b801b7f17e843706e241fbc016bb42fd"
+DOWNLOAD="https://github.com/mikf/gallery-dl/archive/v1.30.6/gallery-dl-1.30.6.tar.gz"
+MD5SUM="d4efa924738e6463c518b29a350eee6a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/grafana/grafana.SlackBuild b/network/grafana/grafana.SlackBuild
index ca3955523b..0ff488dfde 100644
--- a/network/grafana/grafana.SlackBuild
+++ b/network/grafana/grafana.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=grafana
-VERSION=${VERSION:-11.6.0}
+VERSION=${VERSION:-11.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/grafana/grafana.info b/network/grafana/grafana.info
index bd129d4993..f97670df6c 100644
--- a/network/grafana/grafana.info
+++ b/network/grafana/grafana.info
@@ -1,10 +1,10 @@
PRGNAM="grafana"
-VERSION="11.6.0"
+VERSION="11.6.1"
HOMEPAGE="https://grafana.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://dl.grafana.com/oss/release/grafana-11.6.0.linux-amd64.tar.gz"
-MD5SUM_x86_64="a46646fd89bd4a714156cc96770763f6"
+DOWNLOAD_x86_64="https://dl.grafana.com/oss/release/grafana-11.6.1.linux-amd64.tar.gz"
+MD5SUM_x86_64="f9aa3936186c75c5966ebdee7276a966"
REQUIRES=""
MAINTAINER="Rodrigo Lira"
EMAIL="eurodrigolira@gmail.com"
diff --git a/network/gui-ufw/gufw-open.diff b/network/gui-ufw/gufw-open.diff
deleted file mode 100644
index e972d8b921..0000000000
--- a/network/gui-ufw/gufw-open.diff
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/bin/gufw
-+++ b/bin/gufw
-@@ -1,3 +1,6 @@
- #!/bin/bash
-+if [ $(loginctl show-session $(loginctl|grep $(whoami) |awk '{print $1}') -p Type) = "Type=wayland" ]; then
-+ xhost +si:localuser:root
-+fi
- c_user=$(whoami)
- pkexec gufw-pkexec $c_user
-
diff --git a/network/gui-ufw/gui-ufw.SlackBuild b/network/gui-ufw/gui-ufw.SlackBuild
index 907e67fdf1..bfd5f5e06a 100644
--- a/network/gui-ufw/gui-ufw.SlackBuild
+++ b/network/gui-ufw/gui-ufw.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for gui-ufw
-# Copyright 2022-23 Jay Lanagan (j@lngn.net), Detroit, MI, USA
+# Copyright 2022-2025 Jay Lanagan (j@lngn.net), Detroit, MI, USA
# Previous script by Skaendo w/ bkw patches, this replaces it.
# All rights reserved.
#
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gui-ufw
-VERSION=${VERSION:-24.04.0}
+VERSION=${VERSION:-26.04.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -47,22 +47,6 @@ fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "aarch64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
set -e
@@ -80,8 +64,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# path & opening app fixes from ubuntu
-patch -p1 < $CWD/gufw-open.diff
-patch -p1 < $CWD/path-fix.diff
+patch -p1 < $CWD/ubuntu-fixes.diff
python3 setup.py install --prefix=/usr --root=$PKG
diff --git a/network/gui-ufw/gui-ufw.info b/network/gui-ufw/gui-ufw.info
index 4a03d79c95..c839f7bb26 100644
--- a/network/gui-ufw/gui-ufw.info
+++ b/network/gui-ufw/gui-ufw.info
@@ -1,10 +1,10 @@
PRGNAM="gui-ufw"
-VERSION="24.04.0"
+VERSION="26.04.0"
HOMEPAGE="https://github.com/costales/gufw"
-DOWNLOAD="https://github.com/costales/gufw/releases/download/24.04/gui-ufw-24.04.0.tar.gz"
-MD5SUM="15cb73e5aac0c5e0d3d8107883de6570"
+DOWNLOAD="https://github.com/costales/gufw/releases/download/26.04/gui-ufw-26.04.0.tar.gz"
+MD5SUM="486d5298f9962cfeedeed3e21f8578c5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python-distutils-extra webkit2gtk ufw"
+REQUIRES="python3-distutils-extra webkit2gtk4.1 ufw"
MAINTAINER="Jay Lanagan"
EMAIL="j@lngn.net"
diff --git a/network/gui-ufw/path-fix.diff b/network/gui-ufw/path-fix.diff
deleted file mode 100644
index 2ebfdb0c21..0000000000
--- a/network/gui-ufw/path-fix.diff
+++ /dev/null
@@ -1,16 +0,0 @@
---- a/bin/gufw-pkexec
-+++ b/bin/gufw-pkexec
-@@ -1,2 +1,11 @@
- #!/bin/bash
--python3 /usr/share/gufw/gufw/gufw.py $1
-+LOCATIONS=`ls -ld /usr/lib*/python*/site-packages/gufw/gufw.py | awk '{print $9}'` # from source
-+LOCATIONS=( "${LOCATIONS[@]}" "/usr/share/gufw/gufw/gufw.py" ) # deb package
-+
-+for ((i = 0; i < ${#LOCATIONS[@]}; i++))
-+do
-+ if [[ -e "${LOCATIONS[${i}]}" ]]; then
-+ python3 ${LOCATIONS[${i}]} $1
-+ fi
-+done
-+
-
diff --git a/network/gui-ufw/ubuntu-fixes.diff b/network/gui-ufw/ubuntu-fixes.diff
new file mode 100644
index 0000000000..1b987d3b0a
--- /dev/null
+++ b/network/gui-ufw/ubuntu-fixes.diff
@@ -0,0 +1,26 @@
+diff -ur a/bin/gufw b/bin/gufw
+--- a/bin/gufw 2025-06-07 03:35:14.000000000 -0400
++++ b/bin/gufw 2025-06-17 05:45:44.018989441 -0400
+@@ -1,3 +1,6 @@
+ #!/bin/bash
++if [ $(loginctl show-session $(loginctl|grep $(whoami) |awk '{print $1}') -p Type) = "Type=wayland" ]; then
++ xhost +si:localuser:root
++fi
+ c_user=$(whoami)
+ pkexec "$(which gufw-pkexec)" $c_user
+diff -ur a/bin/gufw-pkexec b/bin/gufw-pkexec
+--- a/bin/gufw-pkexec 2025-06-07 03:35:14.000000000 -0400
++++ b/bin/gufw-pkexec 2025-06-17 05:45:55.930667352 -0400
+@@ -1,2 +1,11 @@
+ #!/bin/bash
+-python3 /usr/share/gufw/gufw/gufw.py $1
++LOCATIONS=`ls -ld /usr/lib*/python*/site-packages/gufw/gufw.py | awk '{print $9}'` # from source
++LOCATIONS=( "${LOCATIONS[@]}" "/usr/share/gufw/gufw/gufw.py" ) # deb package
++
++for ((i = 0; i < ${#LOCATIONS[@]}; i++))
++do
++ if [[ -e "${LOCATIONS[${i}]}" ]]; then
++ python3 ${LOCATIONS[${i}]} $1
++ fi
++done
++
diff --git a/network/gutenberg/gutenberg.SlackBuild b/network/gutenberg/gutenberg.SlackBuild
index 0f96fcdaa3..4c10fcf792 100644
--- a/network/gutenberg/gutenberg.SlackBuild
+++ b/network/gutenberg/gutenberg.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gutenberg
-VERSION=${VERSION:-0.01}
+VERSION=${VERSION:-1.00}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/gutenberg/gutenberg.info b/network/gutenberg/gutenberg.info
index 9c78c0d2bf..12868e17fb 100644
--- a/network/gutenberg/gutenberg.info
+++ b/network/gutenberg/gutenberg.info
@@ -1,8 +1,8 @@
PRGNAM="gutenberg"
-VERSION="0.01"
+VERSION="1.00"
HOMEPAGE="https://codeberg.org/1-1sam/gutenberg"
-DOWNLOAD="https://cpan.metacpan.org/authors/id/S/SA/SAMYOUNG/EBook-Gutenberg-0.01.tar.gz"
-MD5SUM="c171c6186a7ce43b7ac398078b60611a"
+DOWNLOAD="https://cpan.metacpan.org/authors/id/S/SA/SAMYOUNG/EBook-Gutenberg-1.00.tar.gz"
+MD5SUM="58b9945e715d721d4ebd2aae4203c485"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-Text-CSV_XS"
diff --git a/network/haproxy/haproxy.SlackBuild b/network/haproxy/haproxy.SlackBuild
index 8f00b7d562..14d9bf3743 100644
--- a/network/haproxy/haproxy.SlackBuild
+++ b/network/haproxy/haproxy.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=haproxy
-VERSION=${VERSION:-3.0.10}
+VERSION=${VERSION:-3.2.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -125,7 +125,6 @@ make \
USE_ZLIB=1 \
USE_NS=1 \
USE_PROMEX=1 \
- USE_SYSTEMD= \
$LUAOPT \
EXTRA=""
make install \
@@ -143,7 +142,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
install -D -m 0644 $CWD/rc.$PRGNAM $PKG/etc/rc.d/rc.$PRGNAM.new
-cp -a CONTRIBUTING LICENSE MAINTAINERS README BRANCHES SUBVERS VERDATE VERSION examples \
+cp -a CONTRIBUTING LICENSE MAINTAINERS README.md BRANCHES SUBVERS VERDATE VERSION examples \
$PKG/usr/doc/$PRGNAM-$VERSION
# If there's a CHANGELOG, installing at least part of the recent history
diff --git a/network/haproxy/haproxy.info b/network/haproxy/haproxy.info
index 45f8102235..037d4c535b 100644
--- a/network/haproxy/haproxy.info
+++ b/network/haproxy/haproxy.info
@@ -1,8 +1,8 @@
PRGNAM="haproxy"
-VERSION="3.0.10"
+VERSION="3.2.3"
HOMEPAGE="https://www.haproxy.org/"
-DOWNLOAD="https://www.haproxy.org/download/3.0/src/haproxy-3.0.10.tar.gz"
-MD5SUM="4a73e92dbb7e436c0945af648ac09840"
+DOWNLOAD="https://www.haproxy.org/download/3.2/src/haproxy-3.2.3.tar.gz"
+MD5SUM="403428a4d3ef021758625b7cc8b018e5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/httpie/httpie.SlackBuild b/network/httpie/httpie.SlackBuild
index 5b6c73bef1..f626192610 100644
--- a/network/httpie/httpie.SlackBuild
+++ b/network/httpie/httpie.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for httpie
-# Copyright 2024 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2024-2025 Dimitris Zlatanidis Orestiada, Greece
# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
# Copyright 2023-2024 Juan M. Lasca <juanmlasca@gmail.com>
# All rights reserved.
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=httpie
-VERSION=${VERSION:-3.2.2}
+VERSION=${VERSION:-3.2.4}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/httpie/httpie.info b/network/httpie/httpie.info
index 9be33bd6b4..7fef753020 100644
--- a/network/httpie/httpie.info
+++ b/network/httpie/httpie.info
@@ -1,8 +1,8 @@
PRGNAM="httpie"
-VERSION="3.2.2"
+VERSION="3.2.4"
HOMEPAGE="https://httpie.io"
-DOWNLOAD="https://github.com/httpie/cli/archive/3.2.2/cli-3.2.2.tar.gz"
-MD5SUM="fd08e0001da0781a2f7038ea38ac8d08"
+DOWNLOAD="https://github.com/httpie/cli/archive/3.2.4/cli-3.2.4.tar.gz"
+MD5SUM="37a855dae5f45ce0a4a1cdacc60c861e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-multidict python3-rich python3-defusedxml PySocks requests-toolbelt"
diff --git a/network/iperf3/iperf3.SlackBuild b/network/iperf3/iperf3.SlackBuild
index c1d2d993d9..695e086db4 100644
--- a/network/iperf3/iperf3.SlackBuild
+++ b/network/iperf3/iperf3.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=iperf3
SRCNAM=iperf
-VERSION=${VERSION:-3.16}
+VERSION=${VERSION:-3.19.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/iperf3/iperf3.info b/network/iperf3/iperf3.info
index 28b4422268..8fa1cbaa3a 100644
--- a/network/iperf3/iperf3.info
+++ b/network/iperf3/iperf3.info
@@ -1,8 +1,8 @@
PRGNAM="iperf3"
-VERSION="3.16"
+VERSION="3.19.1"
HOMEPAGE="https://github.com/esnet/iperf"
-DOWNLOAD="https://github.com/esnet/iperf/archive/3.16/iperf-3.16.tar.gz"
-MD5SUM="f084f221e829c5b9abee96c8f819de97"
+DOWNLOAD="https://github.com/esnet/iperf/archive/3.19.1/iperf-3.19.1.tar.gz"
+MD5SUM="be38fbb6d54f54a27e7ec903904479d7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/isync/isync.SlackBuild b/network/isync/isync.SlackBuild
index 667a27ae4f..e043f3d874 100644
--- a/network/isync/isync.SlackBuild
+++ b/network/isync/isync.SlackBuild
@@ -31,7 +31,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=isync
-VERSION=${VERSION:-1.5.0}
+VERSION=${VERSION:-1.5.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/isync/isync.info b/network/isync/isync.info
index 767938b950..27fa1e7add 100644
--- a/network/isync/isync.info
+++ b/network/isync/isync.info
@@ -1,8 +1,8 @@
PRGNAM="isync"
-VERSION="1.5.0"
+VERSION="1.5.1"
HOMEPAGE="http://isync.sourceforge.net"
-DOWNLOAD="http://downloads.sourceforge.net/isync/isync-1.5.0.tar.gz"
-MD5SUM="87738a9f500f3775c6da89c8a54606ff"
+DOWNLOAD="http://downloads.sourceforge.net/isync/isync-1.5.1.tar.gz"
+MD5SUM="05388d7b1b3c2ac89c1a7b179ee25f20"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/iwd/README b/network/iwd/README
new file mode 100644
index 0000000000..5267c4e0d7
--- /dev/null
+++ b/network/iwd/README
@@ -0,0 +1,35 @@
+iwd (iNet Wireless Daemon)
+
+iNet Wireless Daemon (iwd) project aims to provide a comprehensive
+Wi-Fi connectivity solution for Linux based devices. The core goal of
+the project is to optimize resource utilization: storage, runtime
+memory and link-time costs. This is accomplished by not depending on
+any external libraries and utilizes features provided by the Linux
+kernel to the maximum extent possible. The result is a self-contained
+environment that only depends on the Linux kernel and the runtime C
+library.
+
+To run iwd on startup, run (as root):
+ chmod +x /etc/rc.d/rc.iwd
+then add this to your /etc/rc.d/rc.local:
+ if [ -x /etc/rc.d/rc.iwd ]; then
+ /etc/rc.d/rc.iwd start
+ fi
+
+Before running iwd, remove all configuration in /etc/rc.d/rc.inet1.conf
+and ensure no other connection daemon is running.
+e.g. run `netconfig' and choose "loopback"
+
+iwd's command-line client is started as `iwctl'
+An example session:
+
+ $ iwctl
+ [iwd]# station wlan0 scan
+ [iwd]# station wlan0 get-networks
+ ...
+ [iwd]# station wlan0 connect <your-network>
+ [iwd]# exit
+
+
+(iwd can also be used as a backend for NetworkManager but this is
+considered experimental)
diff --git a/network/iwd/doinst.sh b/network/iwd/doinst.sh
new file mode 100644
index 0000000000..f41e03dd9e
--- /dev/null
+++ b/network/iwd/doinst.sh
@@ -0,0 +1,26 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ # If there's no config file by that name, mv it over:
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ # toss the redundant copy
+ rm $NEW
+ fi
+ # Otherwise, we leave the .new copy for the admin to consider...
+}
+
+preserve_perms() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ -e $OLD ]; then
+ cp -a $OLD ${NEW}.incoming
+ cat $NEW > ${NEW}.incoming
+ mv ${NEW}.incoming $NEW
+ fi
+ config $NEW
+}
+
+preserve_perms etc/rc.d/rc.iwd.new
+config etc/iwd/main.conf.new
diff --git a/network/iwd/iwd.SlackBuild b/network/iwd/iwd.SlackBuild
new file mode 100644
index 0000000000..1abef9f0d8
--- /dev/null
+++ b/network/iwd/iwd.SlackBuild
@@ -0,0 +1,118 @@
+#!/bin/bash
+#
+# SlackBuild script for iwd
+#
+# Copyright 2025 Jonny Langley, New Zealand
+
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=iwd
+VERSION=${VERSION:-3.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-systemd-service \
+ --enable-wired \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+mkdir -p $PKG/etc/rc.d $PKG/etc/iwd
+install -m 644 $CWD/rc.iwd $PKG/etc/rc.d/rc.iwd.new
+install -m 644 $CWD/main.conf $PKG/etc/iwd/main.conf.new
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING README TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/iwd/iwd.info b/network/iwd/iwd.info
new file mode 100644
index 0000000000..0f26f81876
--- /dev/null
+++ b/network/iwd/iwd.info
@@ -0,0 +1,10 @@
+PRGNAM="iwd"
+VERSION="3.8"
+HOMEPAGE="https://archive.kernel.org/oldwiki/iwd.wiki.kernel.org/"
+DOWNLOAD="https://mirrors.edge.kernel.org/pub/linux/network/wireless/iwd-3.8.tar.xz"
+MD5SUM="1dac262f1fae66f41cbc05e986f31492"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Jonny Langley"
+EMAIL="jonny@kingslea.school.nz"
diff --git a/network/iwd/main.conf b/network/iwd/main.conf
new file mode 100644
index 0000000000..09121dbc4c
--- /dev/null
+++ b/network/iwd/main.conf
@@ -0,0 +1,5 @@
+[General]
+EnableNetworkConfiguration=true
+
+[Network]
+NameResolvingService=resolvconf
diff --git a/network/iwd/rc.iwd b/network/iwd/rc.iwd
new file mode 100644
index 0000000000..ee61802358
--- /dev/null
+++ b/network/iwd/rc.iwd
@@ -0,0 +1,35 @@
+#!/bin/bash
+#
+# Start/stop/restart iwd.
+
+iwd_start() {
+ if [ -x /usr/libexec/iwd ]; then
+ echo "Starting iwd: /usr/libexec/iwd"
+ /usr/libexec/iwd 2>/dev/null &
+ fi
+}
+
+iwd_stop() {
+ echo "Stopping iwd"
+ killall iwd
+}
+
+iwd_restart() {
+ iwd_stop
+ sleep 1
+ iwd_start
+}
+
+case "$1" in
+'start')
+ iwd_start
+ ;;
+'stop')
+ iwd_stop
+ ;;
+'restart')
+ iwd_restart
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
diff --git a/network/iwd/slack-desc b/network/iwd/slack-desc
new file mode 100644
index 0000000000..589cf0a550
--- /dev/null
+++ b/network/iwd/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+iwd: iwd (iNet Wireless Daemon)
+iwd:
+iwd: iNet Wireless Daemon (iwd) project aims to provide a comprehensive
+iwd: Wi-Fi connectivity solution for Linux based devices. The core goal of
+iwd: the project is to optimize resource utilization: storage, runtime
+iwd: memory and link-time costs. This is accomplished by not depending on
+iwd: any external libraries and utilizes features provided by the Linux
+iwd: kernel to the maximum extent possible. The result is a self-contained
+iwd: environment that only depends on the Linux kernel and the runtime C
+iwd: library.
+iwd: https://git.kernel.org/pub/scm/network/wireless/iwd.git
diff --git a/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild b/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild
index dea30960b2..07b48015c7 100644
--- a/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild
+++ b/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=jitsi-meet-desktop
-VERSION=${VERSION:-2025.4.0}
+VERSION=${VERSION:-2025.9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/jitsi-meet-desktop/jitsi-meet-desktop.info b/network/jitsi-meet-desktop/jitsi-meet-desktop.info
index 6269ec6867..bb776955b1 100644
--- a/network/jitsi-meet-desktop/jitsi-meet-desktop.info
+++ b/network/jitsi-meet-desktop/jitsi-meet-desktop.info
@@ -1,10 +1,10 @@
PRGNAM="jitsi-meet-desktop"
-VERSION="2025.4.0"
+VERSION="2025.9.1"
HOMEPAGE="https://jitsi.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/jitsi/jitsi-meet-electron/releases/download/v2025.4.0/jitsi-meet-x86_64.AppImage"
-MD5SUM_x86_64="537c2511a05006526910dff5c1595cdc"
+DOWNLOAD_x86_64="https://github.com/jitsi/jitsi-meet-electron/releases/download/v2025.9.1/jitsi-meet-x86_64.AppImage"
+MD5SUM_x86_64="45daf33a9dddbe439f3cda8ebde4b22f"
REQUIRES=""
MAINTAINER="Eugene Wissner"
EMAIL="belka@caraus.de"
diff --git a/network/k9s/README b/network/k9s/README
new file mode 100644
index 0000000000..b806bd6aec
--- /dev/null
+++ b/network/k9s/README
@@ -0,0 +1,7 @@
+k9s (TUI Kubernetes cluster manager)
+
+k9s is a terminal user interface for interacting with
+Kubernetes clusters. It provides real-time views of pods,
+containers, logs, and other resources. It allows you to
+navigate, exec into containers, and edit resources using
+a fast and keyboard-driven interface.
diff --git a/network/k9s/k9s.SlackBuild b/network/k9s/k9s.SlackBuild
new file mode 100644
index 0000000000..00fd96573a
--- /dev/null
+++ b/network/k9s/k9s.SlackBuild
@@ -0,0 +1,92 @@
+#!/bin/bash
+#
+# Copyright 2025 Ricardson Williams <r1w1s1@fastmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+# Homepage: https://github.com/derailed/k9s
+# Description: A terminal UI to interact with your Kubernetes clusters.
+# Changelog:
+# v0.50.9: 24-Jul-2025 by r1w1s1 - initial build
+
+cd $(dirname $0); CWD=$(pwd)
+set -euo pipefail
+IFS=$'\n\t'
+
+PRGNAM=k9s
+VERSION=${VERSION:-0.50.9}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=${ARCH:-$(uname -m)}
+PRINT_PACKAGE_NAME=${PRINT_PACKAGE_NAME:-}
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ ! -z "$PRINT_PACKAGE_NAME" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+rm -rf "$PKG"
+mkdir -p "$TMP" "$PKG" "$OUTPUT"
+cd "$TMP"
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+rm -rf ${PRGNAM}-${VERSION}
+tar xvf $CWD/${PRGNAM}-${VERSION}.tar.gz
+cd ${PRGNAM}-${VERSION}
+
+# Build using upstream Makefile
+make build VERSION=v$VERSION
+
+# Install
+mkdir -p $PKG/usr/bin
+install -m 0755 execs/$PRGNAM $PKG/usr/bin/$PRGNAM
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md LICENSE COPYING $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+strip --strip-all $PKG/usr/bin/$PRGNAM
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+
diff --git a/network/k9s/k9s.info b/network/k9s/k9s.info
new file mode 100644
index 0000000000..03697ea2fd
--- /dev/null
+++ b/network/k9s/k9s.info
@@ -0,0 +1,10 @@
+PRGNAM="k9s"
+VERSION="0.50.9"
+HOMEPAGE="https://github.com/derailed/k9s"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/derailed/k9s/archive/v0.50.9/k9s-0.50.9.tar.gz"
+MD5SUM_x86_64="eb6403c606a82efb4bacb32143a01bcd"
+REQUIRES="google-go-lang"
+MAINTAINER="r1w1s1"
+EMAIL="r1w1s1@fastmail.com"
diff --git a/network/k9s/slack-desc b/network/k9s/slack-desc
new file mode 100644
index 0000000000..d3e6593765
--- /dev/null
+++ b/network/k9s/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|'
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+k9s: k9s (TUI Kubernetes cluster manager)
+k9s:
+k9s: k9s its a terminal UI to interact with your Kubernetes clusters.
+k9s: It provides real-time views of pods, containers, logs, and nodes.
+k9s: You can exec into containers, edit resources, and navigate clusters
+k9s: with Vim-style keybindings. A powerful tool for operators and devs.
+k9s:
+k9s:
+k9s:
+k9s:
+k9s: Homepage: https://github.com/derailed/k9s
diff --git a/network/kdrive/kdrive.SlackBuild b/network/kdrive/kdrive.SlackBuild
index 1584654283..ab45e8ba32 100644
--- a/network/kdrive/kdrive.SlackBuild
+++ b/network/kdrive/kdrive.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kdrive
-VERSION=${VERSION:-3.6.4.20240814}
+VERSION=${VERSION:-3.7.2.20250703}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/kdrive/kdrive.info b/network/kdrive/kdrive.info
index c91d54e813..38f3bc355d 100644
--- a/network/kdrive/kdrive.info
+++ b/network/kdrive/kdrive.info
@@ -1,10 +1,10 @@
PRGNAM="kdrive"
-VERSION="3.6.4.20240814"
+VERSION="3.7.2.20250703"
HOMEPAGE="https://kdrive.infomaniak.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://download.storage.infomaniak.com/drive/desktopclient/kDrive-3.6.4.20240814-amd64.AppImage"
-MD5SUM_x86_64="06118e25c455ac72a4d77a4c388b6151"
+DOWNLOAD_x86_64="https://download.storage.infomaniak.com/drive/desktopclient/kDrive-3.7.2.20250703-amd64.AppImage"
+MD5SUM_x86_64="00a19dfec5273114f32b07849dbd34cd"
REQUIRES=""
MAINTAINER="Frederic Galusik"
EMAIL="fredg@zaclys.net"
diff --git a/network/keama/README b/network/keama/README
new file mode 100644
index 0000000000..92b9a18a9a
--- /dev/null
+++ b/network/keama/README
@@ -0,0 +1,6 @@
+keama is an **experimental** tool that works as an assistance tool
+that helps migration from ISC-DHCP (that now reached its End-Of-Life)
+into Kea, which is a modern DHCP implementation.
+
+It is able to read an isc-dhcp configuration and produce a JSON
+configuration in Kea format.
diff --git a/network/keama/keama.SlackBuild b/network/keama/keama.SlackBuild
new file mode 100644
index 0000000000..67ee83f80b
--- /dev/null
+++ b/network/keama/keama.SlackBuild
@@ -0,0 +1,115 @@
+#!/bin/bash
+
+# Slackware build script for keama
+
+# Copyright 2025 Augusto Carvalho, PMS-MG-BR
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=keama
+VERSION=${VERSION:-4.5.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --with-bind-extra-config \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog.md LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+#cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/keama/keama.info b/network/keama/keama.info
new file mode 100644
index 0000000000..7af688752a
--- /dev/null
+++ b/network/keama/keama.info
@@ -0,0 +1,10 @@
+PRGNAM="keama"
+VERSION="4.5.0"
+HOMEPAGE="https://kea.isc.org/"
+DOWNLOAD="https://ftp.isc.org/isc/keama/4.5.0/keama-4.5.0.tar.gz"
+MD5SUM="3b0f966d2465b5b8a7c2fd3dbc5aefa9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Augusto Carvalho"
+EMAIL="augustocsoa@gmail.com"
diff --git a/network/keama/slack-desc b/network/keama/slack-desc
new file mode 100644
index 0000000000..f50fff0a8f
--- /dev/null
+++ b/network/keama/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+keama: keama (Kea migration assistant)
+keama:
+keama: keama is an **experimental** tool that works as an assistance tool
+keama: that helps migration from ISC-DHCP (that now reached its End-Of-Life)
+keama: into Kea, which is a modern DHCP implementation.
+keama:
+keama: It is able to read an isc-dhcp configuration and produce a JSON
+keama: configuration in Kea format.
+keama:
+keama: Homepage: https://kea.isc.org/
+keama:
diff --git a/network/kismet/kismet.SlackBuild b/network/kismet/kismet.SlackBuild
index 3514c0e7d8..50ed76af3b 100644
--- a/network/kismet/kismet.SlackBuild
+++ b/network/kismet/kismet.SlackBuild
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kismet
-VERSION=${VERSION:-20250428}
-COMMITVER="98889e61d0d9a173e1d775156a5faf1a29735f46"
+VERSION=${VERSION:-20250823}
+COMMITVER="cede7466ea35f9e7d954809e284e4af8e95e7234"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/kismet/kismet.info b/network/kismet/kismet.info
index a6b95ab5bb..54cfd1f71a 100644
--- a/network/kismet/kismet.info
+++ b/network/kismet/kismet.info
@@ -1,8 +1,8 @@
PRGNAM="kismet"
-VERSION="20250428"
+VERSION="20250823"
HOMEPAGE="https://kismetwireless.net/"
-DOWNLOAD="https://github.com/kismetwireless/kismet/archive/98889e61d0d9a173e1d775156a5faf1a29735f46/kismet-98889e61d0d9a173e1d775156a5faf1a29735f46.tar.gz"
-MD5SUM="cb46e50dca9cadb9daeecbe553f8f8dd"
+DOWNLOAD="https://github.com/kismetwireless/kismet/archive/cede7466ea35f9e7d954809e284e4af8e95e7234/kismet-cede7466ea35f9e7d954809e284e4af8e95e7234.tar.gz"
+MD5SUM="05b43ef6749e36e31045572224bb15d9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libwebsockets protobuf-c mosquitto rtl-sdr"
diff --git a/network/kubectl-bin/kubectl-bin.SlackBuild b/network/kubectl-bin/kubectl-bin.SlackBuild
index acbff70f50..ec81acc33d 100644
--- a/network/kubectl-bin/kubectl-bin.SlackBuild
+++ b/network/kubectl-bin/kubectl-bin.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kubectl-bin
PRGSOURCE=kubectl
-VERSION=${VERSION:-1.33.0}
+VERSION=${VERSION:-1.33.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/kubectl-bin/kubectl-bin.info b/network/kubectl-bin/kubectl-bin.info
index 3f0030602d..106fbfd96c 100644
--- a/network/kubectl-bin/kubectl-bin.info
+++ b/network/kubectl-bin/kubectl-bin.info
@@ -1,10 +1,10 @@
PRGNAM="kubectl-bin"
-VERSION="1.33.0"
+VERSION="1.33.4"
HOMEPAGE="https://kubernetes.io/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://dl.k8s.io/release/v1.33.0/bin/linux/amd64/kubectl"
-MD5SUM_x86_64="23b9dd98cc4a4c1fce10d66d3113c2ca"
+DOWNLOAD_x86_64="https://dl.k8s.io/release/v1.33.4/bin/linux/amd64/kubectl"
+MD5SUM_x86_64="cb861484bc943b81ca1f028c81d4a228"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/kubectl/kubectl.SlackBuild b/network/kubectl/kubectl.SlackBuild
index b9d1e4d7a8..6cffda28b9 100644
--- a/network/kubectl/kubectl.SlackBuild
+++ b/network/kubectl/kubectl.SlackBuild
@@ -34,6 +34,11 @@
# v1.32.1: 10/Feb/2025 by r1w1s1 - Initial build from sources.
# v1.32.3: 18/Mar/2025 by r1w1s1 - Update version.
# v1.32.4: 23/Apr/2025 by r1w1s1 - Update version.
+# v1.33.0: 13/May/2025 by r1w1s1 - Update version.
+# v1.33.1: 15/May/2025 by r1w1s1 - Update version.
+# v1.33.2: 18/Jun/2025 by r1w1s1 - Update version.
+# v1.33.3: 15/Jul/2025 by r1w1s1 - Update version.
+# v1.33.4: 13/Ago/2025 by r1w1s1 - Update version.
cd $(dirname $0) ; CWD=$(pwd)
@@ -43,7 +48,7 @@ IFS=$'\n\t'
PKGBASE=kubernetes
PRGNAM=kubectl
-VERSION=${VERSION:-1.32.4}
+VERSION=${VERSION:-1.33.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/kubectl/kubectl.info b/network/kubectl/kubectl.info
index a729604007..b0d0a1020a 100644
--- a/network/kubectl/kubectl.info
+++ b/network/kubectl/kubectl.info
@@ -1,10 +1,10 @@
PRGNAM="kubectl"
-VERSION="1.32.4"
+VERSION="1.33.4"
HOMEPAGE="https://kubernetes.io/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/kubernetes/kubernetes/archive/v1.32.4/kubernetes-1.32.4.tar.gz"
-MD5SUM_x86_64="04268d6ff481f3b2e7e0b3300872dc42"
+DOWNLOAD_x86_64="https://github.com/kubernetes/kubernetes/archive/v1.33.4/kubernetes-1.33.4.tar.gz"
+MD5SUM_x86_64="36beb5d95da5ace69284751fa663f5ae"
REQUIRES="google-go-lang"
MAINTAINER="r1w1s1"
EMAIL="r1w1s1@fastmail.com"
diff --git a/network/lagrange/lagrange.SlackBuild b/network/lagrange/lagrange.SlackBuild
index 8278f4f2cd..f9dce3af2d 100644
--- a/network/lagrange/lagrange.SlackBuild
+++ b/network/lagrange/lagrange.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=lagrange
-VERSION=${VERSION:-1.18.4}
+VERSION=${VERSION:-1.18.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/lagrange/lagrange.info b/network/lagrange/lagrange.info
index b1e769b2a9..9f5e22e611 100644
--- a/network/lagrange/lagrange.info
+++ b/network/lagrange/lagrange.info
@@ -1,8 +1,8 @@
PRGNAM="lagrange"
-VERSION="1.18.4"
+VERSION="1.18.5"
HOMEPAGE="https://gmi.skyjake.fi/lagrange/"
-DOWNLOAD="https://git.skyjake.fi/gemini/lagrange/releases/download/v1.18.4/lagrange-1.18.4.tar.gz"
-MD5SUM="cba555c03b35250ee38fa62deadd2a0d"
+DOWNLOAD="https://git.skyjake.fi/gemini/lagrange/releases/download/v1.18.5/lagrange-1.18.5.tar.gz"
+MD5SUM="c166f91cd1b2555e59b158bc6953c095"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/librespeed-cli/librespeed-cli.SlackBuild b/network/librespeed-cli/librespeed-cli.SlackBuild
index ca1000b2d6..879d8314fb 100644
--- a/network/librespeed-cli/librespeed-cli.SlackBuild
+++ b/network/librespeed-cli/librespeed-cli.SlackBuild
@@ -2,6 +2,7 @@
# Slackware build script for librespeed-cli
+# Copyright 2025 Antonio Leal <antonioleal@yahoo.com>
# Copyright 2024 Ivan Kovmir <i@kovmir.eu>
# All rights reserved.
#
@@ -25,7 +26,7 @@
cd "$(dirname "$0")" ; CWD=$(pwd)
PRGNAM=librespeed-cli
-VERSION=${VERSION:-1.0.10}
+VERSION=${VERSION:-1.0.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/librespeed-cli/librespeed-cli.info b/network/librespeed-cli/librespeed-cli.info
index bc2e56a501..83c1fc275e 100644
--- a/network/librespeed-cli/librespeed-cli.info
+++ b/network/librespeed-cli/librespeed-cli.info
@@ -1,10 +1,10 @@
PRGNAM="librespeed-cli"
-VERSION="1.0.10"
+VERSION="1.0.12"
HOMEPAGE="https://github.com/librespeed/speedtest-cli"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/librespeed/speedtest-cli/releases/download/v1.0.10/librespeed-cli_1.0.10_linux_amd64.tar.gz"
-MD5SUM_x86_64="6f4daf4bd1235f24862304e55af40b8c"
+DOWNLOAD_x86_64="https://github.com/librespeed/speedtest-cli/releases/download/v1.0.12/librespeed-cli_1.0.12_linux_amd64.tar.gz"
+MD5SUM_x86_64="3fce3191250a378109cf2b20353ef5b8"
REQUIRES=""
-MAINTAINER="Ivan Kovmir"
-EMAIL="i@kovmir.eu"
+MAINTAINER="Antonio Leal"
+EMAIL="antonioleal@yahoo.com"
diff --git a/network/librewolf/README b/network/librewolf/README
index 76c78d15f1..17044a51be 100644
--- a/network/librewolf/README
+++ b/network/librewolf/README
@@ -8,5 +8,5 @@ settings and patches. LibreWolf also aims to remove all the telemetry,
data collection and annoyances, as well as disabling anti-freedom
features like DRM.
------------------------------------------------------------------------
-This SlackBuild downloads and installs the official AppImage under
+This SlackBuild downloads and installs the official binaries under
'/opt'.
diff --git a/network/librewolf/doinst.sh b/network/librewolf/doinst.sh
index 5fb28930db..91806f4efc 100644
--- a/network/librewolf/doinst.sh
+++ b/network/librewolf/doinst.sh
@@ -1,3 +1,12 @@
if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+ /usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/update-mime-database ]; then
+ /usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+
+if [ -x /usr/bin/gtk-update-icon-cache ] \
+ && [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
fi
diff --git a/network/librewolf/librewolf.SlackBuild b/network/librewolf/librewolf.SlackBuild
index ca2404c7ee..cb388c3305 100644
--- a/network/librewolf/librewolf.SlackBuild
+++ b/network/librewolf/librewolf.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for librewolf
-# Copyright 2022-2023 Ivan Kovmir <i@kovmir.eu>
+# Copyright 2025 Antonio Leal <antonioleal@yahoo.com>
+# Copyright 2022-2024 Ivan Kovmir <i@kovmir.eu>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +26,7 @@
cd "$(dirname "$0")" ; CWD=$(pwd)
PRGNAM=librewolf
-VERSION=${VERSION:-137.0.2}
+VERSION=${VERSION:-142.0_1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -45,34 +46,46 @@ TMP="${TMP:-/tmp/SBo}"
PKG="$TMP/package-$PRGNAM"
OUTPUT="${OUTPUT:-/tmp}"
-APPIMGNAM="LibreWolf.$ARCH.AppImage"
-NAMVER="$PRGNAM-$VERSION"
-
set -e
-rm -rf "$PKG"
-mkdir -p "$TMP" "$PKG" "$OUTPUT"
-mkdir -p "$PKG/install"
-mkdir -p "$PKG/usr/doc/$NAMVER"
-mkdir -p "$PKG/usr/share/applications"
-mkdir -p "$PKG/usr/bin"
-mkdir -p "$PKG/opt"
-chmod 0755 "$CWD/$APPIMGNAM"
-cd "$PKG/opt"
-"$CWD/$APPIMGNAM" --appimage-extract
-mv squashfs-root "$NAMVER"
-
-# Remove empty file.
-rm -f "$PKG/opt/$NAMVER/removed-files"
-
-# Executable and *.desktop file.
-ln -s "../../opt/$NAMVER/AppRun" "$PKG/usr/bin/$PRGNAM"
-ln -s "../../../opt/$NAMVER/io.gitlab.LibreWolf.desktop" "$PKG/usr/share/applications/$PRGNAM.desktop"
-
-cp "$CWD/$PRGNAM.SlackBuild" "$PKG/usr/doc/$NAMVER/$PRGNAM.SlackBuild"
-cp "$CWD/README" "$PKG/usr/doc/$NAMVER/README"
-cp "$CWD/slack-desc" "$PKG/install/slack-desc"
-cp "$CWD/doinst.sh" "$PKG/install/doinst.sh"
-
-cd "$PKG"
-/sbin/makepkg -l y -c n "$OUTPUT/$NAMVER-$ARCH-$BUILD$TAG.$PKGTYPE"
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf ${PRGNAM}
+
+tar xvf ${CWD}/${PRGNAM}-${VERSION/_/-}-linux-x86_64-package.tar.xz
+cd ${PRGNAM}
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+cd ..
+mkdir -p $PKG/opt/
+mv ${PRGNAM} $PKG/opt/
+
+mkdir -p $PKG/usr/bin $PKG/usr/share/applications $PKG/usr/share/pixmaps
+( cd $PKG/usr/bin ; rm -rf librewolf )
+( cd $PKG/usr/bin ; ln -sf ../../opt/librewolf/librewolf librewolf )
+cp $CWD/librewolf.png $PKG/usr/share/pixmaps/librewolf.png
+for i in 16 32 48 64 128; do
+install -Dvm644 $PKG/opt/librewolf/browser/chrome/icons/default/default$i.png \
+ "$PKG/usr/share/icons/hicolor/${i}x${i}/apps/$PRGNAM.png"
+done
+cp $CWD/librewolf.desktop $PKG/usr/share/applications
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+
diff --git a/network/librewolf/librewolf.desktop b/network/librewolf/librewolf.desktop
new file mode 100644
index 0000000000..0e7cb251b7
--- /dev/null
+++ b/network/librewolf/librewolf.desktop
@@ -0,0 +1,386 @@
+[Desktop Entry]
+Version=1.0
+Name=LibreWolf
+Name[ar]=متصفح الويب فَيَرفُكْس
+Name[ast]=Restolador web LibreWolf
+Name[bn]=ফায়ারফক্স ওয়েব ব্রাউজার
+Name[ca]=Navegador web LibreWolf
+Name[cs]=LibreWolf Webový prohlížeč
+Name[da]=LibreWolf - internetbrowser
+Name[el]=Περιηγητής LibreWolf
+Name[es]=Navegador web LibreWolf
+Name[et]=LibreWolfi veebibrauser
+Name[fa]=مرورگر اینترنتی LibreWolf
+Name[fi]=LibreWolf-selain
+Name[fr]=Navigateur Web LibreWolf
+Name[gl]=Navegador web LibreWolf
+Name[he]=דפדפן האינטרנט LibreWolf
+Name[hr]=LibreWolf web preglednik
+Name[hu]=LibreWolf webböngésző
+Name[it]=LibreWolf Browser Web
+Name[ja]=LibreWolf ウェブ・ブラウザ
+Name[ko]=LibreWolf 웹 브라우저
+Name[ku]=Geroka torê LibreWolf
+Name[lt]=LibreWolf interneto naršyklė
+Name[nb]=LibreWolf Nettleser
+Name[nl]=LibreWolf webbrowser
+Name[nn]=LibreWolf Nettlesar
+Name[no]=LibreWolf Nettleser
+Name[pl]=Przeglądarka WWW LibreWolf
+Name[pt]=LibreWolf Navegador Web
+Name[pt_BR]=Navegador Web LibreWolf
+Name[ro]=LibreWolf – Navigator Internet
+Name[ru]=Веб-браузер LibreWolf
+Name[sk]=LibreWolf - internetový prehliadač
+Name[sl]=LibreWolf spletni brskalnik
+Name[sv]=LibreWolf webbläsare
+Name[tr]=LibreWolf Web Tarayıcısı
+Name[ug]=LibreWolf توركۆرگۈ
+Name[uk]=Веб-браузер LibreWolf
+Name[vi]=Trình duyệt web LibreWolf
+Name[zh_CN]=LibreWolf 网络浏览器
+Name[zh_TW]=LibreWolf 網路瀏覽器
+Comment=Browse the World Wide Web
+Comment[ar]=تصفح الشبكة العنكبوتية العالمية
+Comment[ast]=Restola pela Rede
+Comment[bn]=ইন্টারনেট ব্রাউজ করুন
+Comment[ca]=Navegueu per la web
+Comment[cs]=Prohlížení stránek World Wide Webu
+Comment[da]=Surf på internettet
+Comment[de]=Im Internet surfen
+Comment[el]=Μπορείτε να περιηγηθείτε στο διαδίκτυο (Web)
+Comment[es]=Navegue por la web
+Comment[et]=Lehitse veebi
+Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
+Comment[fi]=Selaa Internetin WWW-sivuja
+Comment[fr]=Naviguer sur le Web
+Comment[gl]=Navegar pola rede
+Comment[he]=גלישה ברחבי האינטרנט
+Comment[hr]=Pretražite web
+Comment[hu]=A világháló böngészése
+Comment[it]=Esplora il web
+Comment[ja]=ウェブを閲覧します
+Comment[ko]=웹을 돌아 다닙니다
+Comment[ku]=Li torê bigere
+Comment[lt]=Naršykite internete
+Comment[nb]=Surf på nettet
+Comment[nl]=Verken het internet
+Comment[nn]=Surf på nettet
+Comment[no]=Surf på nettet
+Comment[pl]=Przeglądanie stron WWW
+Comment[pt]=Navegue na Internet
+Comment[pt_BR]=Navegue na Internet
+Comment[ro]=Navigați pe Internet
+Comment[ru]=Доступ в Интернет
+Comment[sk]=Prehliadanie internetu
+Comment[sl]=Brskajte po spletu
+Comment[sv]=Surfa på webben
+Comment[tr]=İnternet'te Gezinin
+Comment[ug]=دۇنيادىكى توربەتلەرنى كۆرگىلى بولىدۇ
+Comment[uk]=Перегляд сторінок Інтернету
+Comment[vi]=Để duyệt các trang web
+Comment[zh_CN]=浏览互联网
+Comment[zh_TW]=瀏覽網際網路
+GenericName=Web Browser
+GenericName[ar]=متصفح ويب
+GenericName[ast]=Restolador Web
+GenericName[bn]=ওয়েব ব্রাউজার
+GenericName[ca]=Navegador web
+GenericName[cs]=Webový prohlížeč
+GenericName[da]=Webbrowser
+GenericName[el]=Περιηγητής διαδικτύου
+GenericName[es]=Navegador web
+GenericName[et]=Veebibrauser
+GenericName[fa]=مرورگر اینترنتی
+GenericName[fi]=WWW-selain
+GenericName[fr]=Navigateur Web
+GenericName[gl]=Navegador Web
+GenericName[he]=דפדפן אינטרנט
+GenericName[hr]=Web preglednik
+GenericName[hu]=Webböngésző
+GenericName[it]=Browser web
+GenericName[ja]=ウェブ・ブラウザ
+GenericName[ko]=웹 브라우저
+GenericName[ku]=Geroka torê
+GenericName[lt]=Interneto naršyklė
+GenericName[nb]=Nettleser
+GenericName[nl]=Webbrowser
+GenericName[nn]=Nettlesar
+GenericName[no]=Nettleser
+GenericName[pl]=Przeglądarka WWW
+GenericName[pt]=Navegador Web
+GenericName[pt_BR]=Navegador Web
+GenericName[ro]=Navigator Internet
+GenericName[ru]=Веб-браузер
+GenericName[sk]=Internetový prehliadač
+GenericName[sl]=Spletni brskalnik
+GenericName[sv]=Webbläsare
+GenericName[tr]=Web Tarayıcı
+GenericName[ug]=توركۆرگۈ
+GenericName[uk]=Веб-браузер
+GenericName[vi]=Trình duyệt Web
+GenericName[zh_CN]=网络浏览器
+GenericName[zh_TW]=網路瀏覽器
+Keywords=Internet;WWW;Browser;Web;Explorer
+Keywords[ar]=انترنت;إنترنت;متصفح;ويب;وب
+Keywords[ast]=Internet;WWW;Restolador;Web;Esplorador
+Keywords[ca]=Internet;WWW;Navegador;Web;Explorador;Explorer
+Keywords[cs]=Internet;WWW;Prohlížeč;Web;Explorer
+Keywords[da]=Internet;Internettet;WWW;Browser;Browse;Web;Surf;Nettet
+Keywords[de]=Internet;WWW;Browser;Web;Explorer;Webseite;Site;surfen;online;browsen
+Keywords[el]=Internet;WWW;Browser;Web;Explorer;Διαδίκτυο;Περιηγητής;LibreWolf;Φιρεφοχ;Ιντερνετ
+Keywords[es]=Explorador;Internet;WWW
+Keywords[fi]=Internet;WWW;Browser;Web;Explorer;selain;Internet-selain;internetselain;verkkoselain;netti;surffaa
+Keywords[fr]=Internet;WWW;Browser;Web;Explorer;Fureteur;Surfer;Navigateur
+Keywords[he]=דפדפן;אינטרנט;רשת;אתרים;אתר;פיירפוקס;מוזילה;
+Keywords[hr]=Internet;WWW;preglednik;Web
+Keywords[hu]=Internet;WWW;Böngésző;Web;Háló;Net;Explorer
+Keywords[it]=Internet;WWW;Browser;Web;Navigatore
+Keywords[is]=Internet;WWW;Vafri;Vefur;Netvafri;Flakk
+Keywords[ja]=Internet;WWW;Web;インターネット;ブラウザ;ウェブ;エクスプローラ
+Keywords[nb]=Internett;WWW;Nettleser;Explorer;Web;Browser;Nettside
+Keywords[nl]=Internet;WWW;Browser;Web;Explorer;Verkenner;Website;Surfen;Online
+Keywords[pt]=Internet;WWW;Browser;Web;Explorador;Navegador
+Keywords[pt_BR]=Internet;WWW;Browser;Web;Explorador;Navegador
+Keywords[ru]=Internet;WWW;Browser;Web;Explorer;интернет;браузер;веб;файрфокс;огнелис
+Keywords[sk]=Internet;WWW;Prehliadač;Web;Explorer
+Keywords[sl]=Internet;WWW;Browser;Web;Explorer;Brskalnik;Splet
+Keywords[tr]=İnternet;WWW;Tarayıcı;Web;Gezgin;Web sitesi;Site;sörf;çevrimiçi;tara
+Keywords[uk]=Internet;WWW;Browser;Web;Explorer;Інтернет;мережа;переглядач;оглядач;браузер;веб;файрфокс;вогнелис;перегляд
+Keywords[vi]=Internet;WWW;Browser;Web;Explorer;Trình duyệt;Trang web
+Keywords[zh_CN]=Internet;WWW;Browser;Web;Explorer;网页;浏览;上网;火狐;LibreWolf;ff;互联网;网站;
+Keywords[zh_TW]=Internet;WWW;Browser;Web;Explorer;網際網路;網路;瀏覽器;上網;網頁;火狐
+Exec=/opt/librewolf/librewolf %u
+Icon=librewolf
+Terminal=false
+X-MultipleArgs=false
+Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json;
+StartupNotify=true
+StartupWMClass=LibreWolf
+Categories=Network;WebBrowser;
+Actions=new-window;new-private-window;profile-manager-window;
+
+[Desktop Action new-window]
+Name=Open a New Window
+Name[ach]=Dirica manyen
+Name[af]=Nuwe venster
+Name[an]=Nueva finestra
+Name[ar]=نافذة جديدة
+Name[as]=নতুন উইন্ডো
+Name[ast]=Ventana nueva
+Name[az]=Yeni Pəncərə
+Name[be]=Новае акно
+Name[bg]=Нов прозорец
+Name[bn_BD]=নতুন উইন্ডো (N)
+Name[bn_IN]=নতুন উইন্ডো
+Name[br]=Prenestr nevez
+Name[brx]=गोदान उइन्ड'(N)
+Name[bs]=Novi prozor
+Name[ca]=Finestra nova
+Name[cak]=K'ak'a' tzuwäch
+Name[cs]=Nové okno
+Name[cy]=Ffenestr Newydd
+Name[da]=Nyt vindue
+Name[de]=Neues Fenster
+Name[dsb]=Nowe wokno
+Name[el]=Νέο παράθυρο
+Name[en_GB]=New Window
+Name[en_US]=New Window
+Name[en_ZA]=New Window
+Name[eo]=Nova fenestro
+Name[es_AR]=Nueva ventana
+Name[es_CL]=Nueva ventana
+Name[es_ES]=Nueva ventana
+Name[es_MX]=Nueva ventana
+Name[et]=Uus aken
+Name[eu]=Leiho berria
+Name[fa]=پنجره جدید
+Name[ff]=Henorde Hesere
+Name[fi]=Uusi ikkuna
+Name[fr]=Nouvelle fenêtre
+Name[fy_NL]=Nij finster
+Name[ga_IE]=Fuinneog Nua
+Name[gd]=Uinneag ùr
+Name[gl]=Nova xanela
+Name[gn]=Ovetã pyahu
+Name[gu_IN]=નવી વિન્ડો
+Name[he]=חלון חדש
+Name[hi_IN]=नया विंडो
+Name[hr]=Novi prozor
+Name[hsb]=Nowe wokno
+Name[hu]=Új ablak
+Name[hy_AM]=Նոր Պատուհան
+Name[id]=Jendela Baru
+Name[is]=Nýr gluggi
+Name[it]=Nuova finestra
+Name[ja]=新しいウィンドウ
+Name[ja_JP-mac]=新規ウインドウ
+Name[ka]=ახალი ფანჯარა
+Name[kk]=Жаңа терезе
+Name[km]=បង្អួចថ្មី
+Name[kn]=ಹೊಸ ಕಿಟಕಿ
+Name[ko]=새 창
+Name[kok]=नवें जनेल
+Name[ks]=نئئ وِنڈو
+Name[lij]=Neuvo barcon
+Name[lo]=ຫນ້າຕ່າງໃຫມ່
+Name[lt]=Naujas langas
+Name[ltg]=Jauns lūgs
+Name[lv]=Jauns logs
+Name[mai]=नव विंडो
+Name[mk]=Нов прозорец
+Name[ml]=പുതിയ ജാലകം
+Name[mr]=नवीन पटल
+Name[ms]=Tetingkap Baru
+Name[my]=ဝင်းဒိုးအသစ်
+Name[nb_NO]=Nytt vindu
+Name[ne_NP]=नयाँ सञ्झ्याल
+Name[nl]=Nieuw venster
+Name[nn_NO]=Nytt vindauge
+Name[or]=ନୂତନ ୱିଣ୍ଡୋ
+Name[pa_IN]=ਨਵੀਂ ਵਿੰਡੋ
+Name[pl]=Nowe okno
+Name[pt_BR]=Nova janela
+Name[pt_PT]=Nova janela
+Name[rm]=Nova fanestra
+Name[ro]=Fereastră nouă
+Name[ru]=Новое окно
+Name[sat]=नावा विंडो (N)
+Name[si]=නව කවුළුවක්
+Name[sk]=Nové okno
+Name[sl]=Novo okno
+Name[son]=Zanfun taaga
+Name[sq]=Dritare e Re
+Name[sr]=Нови прозор
+Name[sv_SE]=Nytt fönster
+Name[ta]=புதிய சாளரம்
+Name[te]=కొత్త విండో
+Name[th]=หน้าต่างใหม่
+Name[tr]=Yeni pencere
+Name[tsz]=Eraatarakua jimpani
+Name[uk]=Нове вікно
+Name[ur]=نیا دریچہ
+Name[uz]=Yangi oyna
+Name[vi]=Cửa sổ mới
+Name[wo]=Palanteer bu bees
+Name[xh]=Ifestile entsha
+Name[zh_CN]=新建窗口
+Name[zh_TW]=開新視窗
+Exec=/opt/librewolf/librewolf --new-window %u
+
+[Desktop Action new-private-window]
+Name=Open a New Private Window
+Name[ach]=Dirica manyen me mung
+Name[af]=Nuwe privaatvenster
+Name[an]=Nueva finestra privada
+Name[ar]=نافذة خاصة جديدة
+Name[as]=নতুন ব্যক্তিগত উইন্ডো
+Name[ast]=Ventana privada nueva
+Name[az]=Yeni Məxfi Pəncərə
+Name[be]=Новае акно адасаблення
+Name[bg]=Нов прозорец за поверително сърфиране
+Name[bn_BD]=নতুন ব্যক্তিগত উইন্ডো
+Name[bn_IN]=নতুন ব্যক্তিগত উইন্ডো
+Name[br]=Prenestr merdeiñ prevez nevez
+Name[brx]=गोदान प्राइभेट उइन्ड'
+Name[bs]=Novi privatni prozor
+Name[ca]=Finestra privada nova
+Name[cak]=K'ak'a' ichinan tzuwäch
+Name[cs]=Nové anonymní okno
+Name[cy]=Ffenestr Breifat Newydd
+Name[da]=Nyt privat vindue
+Name[de]=Neues privates Fenster
+Name[dsb]=Nowe priwatne wokno
+Name[el]=Νέο παράθυρο ιδιωτικής περιήγησης
+Name[en_GB]=New Private Window
+Name[en_US]=New Private Window
+Name[en_ZA]=New Private Window
+Name[eo]=Nova privata fenestro
+Name[es_AR]=Nueva ventana privada
+Name[es_CL]=Nueva ventana privada
+Name[es_ES]=Nueva ventana privada
+Name[es_MX]=Nueva ventana privada
+Name[et]=Uus privaatne aken
+Name[eu]=Leiho pribatu berria
+Name[fa]=پنجره ناشناس جدید
+Name[ff]=Henorde Suturo Hesere
+Name[fi]=Uusi yksityinen ikkuna
+Name[fr]=Nouvelle fenêtre de navigation privée
+Name[fy_NL]=Nij priveefinster
+Name[ga_IE]=Fuinneog Nua Phríobháideach
+Name[gd]=Uinneag phrìobhaideach ùr
+Name[gl]=Nova xanela privada
+Name[gn]=Ovetã ñemi pyahu
+Name[gu_IN]=નવી ખાનગી વિન્ડો
+Name[he]=חלון פרטי חדש
+Name[hi_IN]=नयी निजी विंडो
+Name[hr]=Novi privatni prozor
+Name[hsb]=Nowe priwatne wokno
+Name[hu]=Új privát ablak
+Name[hy_AM]=Սկսել Գաղտնի դիտարկում
+Name[id]=Jendela Mode Pribadi Baru
+Name[is]=Nýr huliðsgluggi
+Name[it]=Nuova finestra anonima
+Name[ja]=新しいプライベートウィンドウ
+Name[ja_JP-mac]=新規プライベートウインドウ
+Name[ka]=ახალი პირადი ფანჯარა
+Name[kk]=Жаңа жекелік терезе
+Name[km]=បង្អួចឯកជនថ្មី
+Name[kn]=ಹೊಸ ಖಾಸಗಿ ಕಿಟಕಿ
+Name[ko]=새 사생활 보호 모드
+Name[kok]=नवो खाजगी विंडो
+Name[ks]=نْو پرایوٹ وینڈو
+Name[lij]=Nêuvo barcón privòu
+Name[lo]=ເປີດຫນ້າຕ່າງສວນຕົວຂື້ນມາໃຫມ່
+Name[lt]=Naujas privataus naršymo langas
+Name[ltg]=Jauns privatais lūgs
+Name[lv]=Jauns privātais logs
+Name[mai]=नया निज विंडो (W)
+Name[mk]=Нов приватен прозорец
+Name[ml]=പുതിയ സ്വകാര്യ ജാലകം
+Name[mr]=नवीन वैयक्तिक पटल
+Name[ms]=Tetingkap Persendirian Baharu
+Name[my]=New Private Window
+Name[nb_NO]=Nytt privat vindu
+Name[ne_NP]=नयाँ निजी सञ्झ्याल
+Name[nl]=Nieuw privévenster
+Name[nn_NO]=Nytt privat vindauge
+Name[or]=ନୂତନ ବ୍ୟକ୍ତିଗତ ୱିଣ୍ଡୋ
+Name[pa_IN]=ਨਵੀਂ ਪ੍ਰਾਈਵੇਟ ਵਿੰਡੋ
+Name[pl]=Nowe okno prywatne
+Name[pt_BR]=Nova janela privativa
+Name[pt_PT]=Nova janela privada
+Name[rm]=Nova fanestra privata
+Name[ro]=Fereastră privată nouă
+Name[ru]=Новое приватное окно
+Name[sat]=नावा निजेराक् विंडो (W )
+Name[si]=නව පුද්ගලික කවුළුව (W)
+Name[sk]=Nové okno v režime Súkromné prehliadanie
+Name[sl]=Novo zasebno okno
+Name[son]=Sutura zanfun taaga
+Name[sq]=Dritare e Re Private
+Name[sr]=Нови приватан прозор
+Name[sv_SE]=Nytt privat fönster
+Name[ta]=புதிய தனிப்பட்ட சாளரம்
+Name[te]=కొత్త ఆంతరంగిక విండో
+Name[th]=หน้าต่างส่วนตัวใหม่
+Name[tr]=Yeni gizli pencere
+Name[tsz]=Juchiiti eraatarakua jimpani
+Name[uk]=Приватне вікно
+Name[ur]=نیا نجی دریچہ
+Name[uz]=Yangi maxfiy oyna
+Name[vi]=Cửa sổ riêng tư mới
+Name[wo]=Panlanteeru biir bu bees
+Name[xh]=Ifestile yangasese entsha
+Name[zh_CN]=新建隐私浏览窗口
+Name[zh_TW]=新增隱私視窗
+Exec=/opt/librewolf/librewolf --private-window %u
+
+[Desktop Action profile-manager-window]
+Name=Open the Profile Manager
+Name[cs]=Správa profilů
+Name[de]=Profilverwaltung öffnen
+Name[es]=Abrir el Gestor de Perfiles
+Name[fr]=Ouvrir le gestionnaire de profils
+Exec=/opt/librewolf/librewolf --ProfileManager %u
diff --git a/network/librewolf/librewolf.info b/network/librewolf/librewolf.info
index 31fe05906c..810f135c03 100644
--- a/network/librewolf/librewolf.info
+++ b/network/librewolf/librewolf.info
@@ -1,10 +1,10 @@
PRGNAM="librewolf"
-VERSION="137.0.2"
+VERSION="142.0_1"
HOMEPAGE="https://librewolf.net/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://gitlab.com/api/v4/projects/24386000/packages/generic/librewolf/137.0.2-1/LibreWolf.x86_64.AppImage"
-MD5SUM_x86_64="62e7b5272080d5d005f8a152b0392fad"
+DOWNLOAD_x86_64="https://gitlab.com/api/v4/projects/44042130/packages/generic/librewolf/142.0-1/librewolf-142.0-1-linux-x86_64-package.tar.xz"
+MD5SUM_x86_64="392022e1f9900427f6048e649e9d64d7"
REQUIRES=""
-MAINTAINER="Ivan Kovmir"
-EMAIL="i@kovmir.eu"
+MAINTAINER="Antonio Leal"
+EMAIL="antonioleal@yahoo.com"
diff --git a/network/librewolf/librewolf.png b/network/librewolf/librewolf.png
new file mode 100644
index 0000000000..76f06ed1c4
--- /dev/null
+++ b/network/librewolf/librewolf.png
Binary files differ
diff --git a/network/librewolf/slack-desc b/network/librewolf/slack-desc
index f6c5fd0cae..d78f37ad0a 100644
--- a/network/librewolf/slack-desc
+++ b/network/librewolf/slack-desc
@@ -15,5 +15,5 @@ librewolf:
librewolf:
librewolf:
librewolf:
-librewolf: https://librewolf.net/
+librewolf:
librewolf:
diff --git a/network/lighttpd/lighttpd.SlackBuild b/network/lighttpd/lighttpd.SlackBuild
index 4888b41c51..a52d3f1c4e 100644
--- a/network/lighttpd/lighttpd.SlackBuild
+++ b/network/lighttpd/lighttpd.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=lighttpd
-VERSION=${VERSION:-1.4.79}
+VERSION=${VERSION:-1.4.80}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/lighttpd/lighttpd.info b/network/lighttpd/lighttpd.info
index dde455e0e3..fff42c6564 100644
--- a/network/lighttpd/lighttpd.info
+++ b/network/lighttpd/lighttpd.info
@@ -1,8 +1,8 @@
PRGNAM="lighttpd"
-VERSION="1.4.79"
+VERSION="1.4.80"
HOMEPAGE="http://www.lighttpd.net/"
-DOWNLOAD="http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.79.tar.xz"
-MD5SUM="c8535ec98814758f116c8b654cb92146"
+DOWNLOAD="http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.80.tar.xz"
+MD5SUM="bad2a95891f06fcc6eafbf83880d7ee0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/llhttp/llhttp.SlackBuild b/network/llhttp/llhttp.SlackBuild
index 6f514f1dfa..d9550ebfb5 100644
--- a/network/llhttp/llhttp.SlackBuild
+++ b/network/llhttp/llhttp.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for llhttp
-# Copyright 2022-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2022-2025 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=llhttp
-VERSION=${VERSION:-9.2.1}
+VERSION=${VERSION:-9.3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,6 +76,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+if [ $(cmake --version |head -1 |cut -f3 -d' ') == "3.21.4" ]; then
+ echo "export PATH for cmake-opt"
+ export PATH="/opt/cmake-opt/bin/:$PATH"
+fi
+
mkdir -p build
cd build
cmake \
diff --git a/network/llhttp/llhttp.info b/network/llhttp/llhttp.info
index 5f45b17894..fc9a615e0a 100644
--- a/network/llhttp/llhttp.info
+++ b/network/llhttp/llhttp.info
@@ -1,10 +1,10 @@
PRGNAM="llhttp"
-VERSION="9.2.1"
+VERSION="9.3.0"
HOMEPAGE="https://github.com/nodejs/llhttp"
-DOWNLOAD="https://github.com/nodejs/llhttp/archive/release/v9.2.1/llhttp-release-v9.2.1.tar.gz"
-MD5SUM="355ecc90e622035e3e1693a96a0c233b"
+DOWNLOAD="https://github.com/nodejs/llhttp/archive/release/v9.3.0/llhttp-release-v9.3.0.tar.gz"
+MD5SUM="7e0386dd9c888344e80f39124043d406"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="cmake-opt"
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/mailspring/mailspring.SlackBuild b/network/mailspring/mailspring.SlackBuild
index da7aab52ef..ac4945eab8 100644
--- a/network/mailspring/mailspring.SlackBuild
+++ b/network/mailspring/mailspring.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mailspring
-VERSION=${VERSION:-1.15.1}
+VERSION=${VERSION:-1.16.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/mailspring/mailspring.info b/network/mailspring/mailspring.info
index ff5b67805b..6df6e4ded3 100644
--- a/network/mailspring/mailspring.info
+++ b/network/mailspring/mailspring.info
@@ -1,10 +1,10 @@
PRGNAM="mailspring"
-VERSION="1.15.1"
+VERSION="1.16.0"
HOMEPAGE="https://getmailspring.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Foundry376/Mailspring/releases/download/1.15.1/mailspring-1.15.1-amd64.deb"
-MD5SUM_x86_64="a61febe2810b8fe355e72be126313f38"
+DOWNLOAD_x86_64="https://github.com/Foundry376/Mailspring/releases/download/1.16.0/mailspring-1.16.0-amd64.deb"
+MD5SUM_x86_64="08a803ac9e77ceba16b741662d89c23b"
REQUIRES=""
MAINTAINER="Muhammad Mahendra Subrata"
EMAIL="mumahendras3@gmail.com"
diff --git a/network/mblaze/README b/network/mblaze/README
new file mode 100644
index 0000000000..9236aacfce
--- /dev/null
+++ b/network/mblaze/README
@@ -0,0 +1,8 @@
+mblaze: UNIX utilities to deal with Maildir
+
+The mblaze message system is a set of Unix utilities to deal with mail
+messages and Maildir folders. It was inspired by MH, the RAND Message
+Handling System, and its command line user interface.
+
+Each utility performs a single function and is designed to be composed
+with others using pipelines and shell scripting.
diff --git a/network/mblaze/mblaze.SlackBuild b/network/mblaze/mblaze.SlackBuild
new file mode 100644
index 0000000000..1835b47854
--- /dev/null
+++ b/network/mblaze/mblaze.SlackBuild
@@ -0,0 +1,108 @@
+#!/bin/bash
+#
+# Slackware build script for mblaze
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+# improves robustness, error handling, and security
+set -euo pipefail
+IFS=$'\n\t'
+
+PRGNAM=mblaze
+VERSION=${VERSION:-1.3}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=${ARCH:-}
+PRINT_PACKAGE_NAME=${PRINT_PACKAGE_NAME:-}
+
+# Automatically determine the architecture
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+# Set compiler flags based on architecture
+if [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+
+# Set compiler flags
+export CFLAGS="$SLKCFLAGS"
+export CXXFLAGS="$SLKCFLAGS"
+
+make || exit 1
+make install PREFIX=/usr DESTDIR="$PKG" || exit 1
+
+# Strip ELF binaries
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mv $PKG/usr/share/man/ $PKG/usr/
+
+find "$PKG/usr/man" -type f -name '*.?' -exec gzip -9 {} \;
+for i in $(find "$PKG/usr/man" -type l); do
+ ln -s "$(readlink "$i").gz" "$i.gz"
+ rm "$i"
+done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION || exit 1
+cp -a *.md COPYING README VERSION $PKG/usr/doc/$PRGNAM-$VERSION
+
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/mblaze/mblaze.info b/network/mblaze/mblaze.info
new file mode 100644
index 0000000000..fc663cfd23
--- /dev/null
+++ b/network/mblaze/mblaze.info
@@ -0,0 +1,10 @@
+PRGNAM="mblaze"
+VERSION="1.3"
+HOMEPAGE="https://git.vuxu.org/mblaze/about/"
+DOWNLOAD="https://git.vuxu.org/mblaze/snapshot/mblaze-1.3.tar.gz"
+MD5SUM="93f65e320ed77e0211628c8c51f6ba22"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="r1w1s1"
+EMAIL="r1w1s1@fastmail.com"
diff --git a/network/mblaze/slack-desc b/network/mblaze/slack-desc
new file mode 100644
index 0000000000..6243824c3c
--- /dev/null
+++ b/network/mblaze/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description. Line
+# up the first '|' above the ':' following the base package name, and the '|' on
+# the right side marks the last column you can put a character in. You must make
+# exactly 11 lines for the formatting to be correct. It's also customary to
+# leave one space after the ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+mblaze: mblaze (a minimalist Unix command line mail client)
+mblaze:
+mblaze: The mblaze message system is a collection of tools for processing
+mblaze: Maildir messages and folders from the command line. It is inspired
+mblaze: by the classic MH mail system and aims to be fast, composable,
+mblaze: and scriptable. Each utility performs a single job and works well
+mblaze: when combined with other Unix tools.
+mblaze:
+mblaze: Homepage: https://git.vuxu.org/mblaze/about/
+mblaze:
+mblaze:
diff --git a/network/microsoft-edge/microsoft-edge.SlackBuild b/network/microsoft-edge/microsoft-edge.SlackBuild
index 296e7775fa..4a05e322a4 100644
--- a/network/microsoft-edge/microsoft-edge.SlackBuild
+++ b/network/microsoft-edge/microsoft-edge.SlackBuild
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=microsoft-edge
BRANCH=stable
-VERSION=${VERSION:-131.0.2903.99}
+VERSION=${VERSION:-140.0.3485.66}
BUILD=${BUILD:-1}
DEBBUILD=${DEBBUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/microsoft-edge/microsoft-edge.info b/network/microsoft-edge/microsoft-edge.info
index 9561c3b4eb..98aed1c660 100644
--- a/network/microsoft-edge/microsoft-edge.info
+++ b/network/microsoft-edge/microsoft-edge.info
@@ -1,10 +1,10 @@
PRGNAM="microsoft-edge"
-VERSION="131.0.2903.99"
+VERSION="140.0.3485.66"
HOMEPAGE="https://www.microsoft.com/edge"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_131.0.2903.99-1_amd64.deb"
-MD5SUM_x86_64="5819941788cfb902729dd410167e411e"
+DOWNLOAD_x86_64="https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_140.0.3485.66-1_amd64.deb"
+MD5SUM_x86_64="03d171e3290b0e2b170e770ef7a2817d"
REQUIRES=""
MAINTAINER="Reza Talebi"
EMAIL="reza.talebi.73@outlook.com"
diff --git a/network/modsecurity-apache/modsecurity-apache.SlackBuild b/network/modsecurity-apache/modsecurity-apache.SlackBuild
index 3813a51da3..e03a9ad0ea 100644
--- a/network/modsecurity-apache/modsecurity-apache.SlackBuild
+++ b/network/modsecurity-apache/modsecurity-apache.SlackBuild
@@ -25,12 +25,12 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=modsecurity-apache
SRCNAM=modsecurity
-VERSION=${VERSION:-2.9.8}
+VERSION=${VERSION:-2.9.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-CRS_VERSION="4.6.0"
+CRS_VERSION="4.17.1"
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
diff --git a/network/modsecurity-apache/modsecurity-apache.info b/network/modsecurity-apache/modsecurity-apache.info
index 22752d20d4..d112b51719 100644
--- a/network/modsecurity-apache/modsecurity-apache.info
+++ b/network/modsecurity-apache/modsecurity-apache.info
@@ -1,10 +1,10 @@
PRGNAM="modsecurity-apache"
-VERSION="2.9.8"
+VERSION="2.9.12"
HOMEPAGE="https://www.modsecurity.org/"
-DOWNLOAD="https://github.com/owasp-modsecurity/ModSecurity/releases/download/v2.9.8/modsecurity-v2.9.8.tar.gz \
- https://github.com/coreruleset/coreruleset/archive/v4.6.0/coreruleset-4.6.0.tar.gz"
-MD5SUM="69ba67a0d1e93404919b276980d88331 \
- 2dfe58af935db7d3c843db9ba6c8794a"
+DOWNLOAD="https://github.com/owasp-modsecurity/ModSecurity/releases/download/v2.9.12/modsecurity-v2.9.12.tar.gz \
+ https://github.com/coreruleset/coreruleset/archive/v4.17.1/coreruleset-4.17.1.tar.gz"
+MD5SUM="0a53077bc36e53d7c9e8b617d7e08f9d \
+ aeba46647a3f630cf4bc18ab11c963fd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/mullvadvpn-app/mullvadvpn-app.SlackBuild b/network/mullvadvpn-app/mullvadvpn-app.SlackBuild
index 58c7a03c25..b88146072d 100644
--- a/network/mullvadvpn-app/mullvadvpn-app.SlackBuild
+++ b/network/mullvadvpn-app/mullvadvpn-app.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mullvadvpn-app
SRCNAM=MullvadVPN
-VERSION=${VERSION:-2025.5}
+VERSION=${VERSION:-2025.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/mullvadvpn-app/mullvadvpn-app.info b/network/mullvadvpn-app/mullvadvpn-app.info
index f7fc6a2cdc..032e74b74d 100644
--- a/network/mullvadvpn-app/mullvadvpn-app.info
+++ b/network/mullvadvpn-app/mullvadvpn-app.info
@@ -1,12 +1,12 @@
PRGNAM="mullvadvpn-app"
-VERSION="2025.5"
+VERSION="2025.9"
HOMEPAGE="https://mullvad.net/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/mullvad/mullvadvpn-app/releases/download/2025.5/MullvadVPN-2025.5_amd64.deb \
- https://github.com/mullvad/mullvadvpn-app/releases/download/2025.5/MullvadVPN-2025.5_arm64.deb"
-MD5SUM_x86_64="825ba2822e2e5afe3985d4dd26ebfe39 \
- c2cb0ef04b5adc793caf0d122ac4db84"
+DOWNLOAD_x86_64="https://github.com/mullvad/mullvadvpn-app/releases/download/2025.9/MullvadVPN-2025.9_amd64.deb \
+ https://github.com/mullvad/mullvadvpn-app/releases/download/2025.9/MullvadVPN-2025.9_arm64.deb"
+MD5SUM_x86_64="0ddeb3405c302e44684990f3e25b8d94 \
+ f4f42e8642aa1921611c4e3f8dd0c722"
REQUIRES=""
MAINTAINER="Jay Lanagan"
EMAIL="j@lngn.net"
diff --git a/network/mumble-server/mumble-server.SlackBuild b/network/mumble-server/mumble-server.SlackBuild
index f90272bd3e..c46e5c0089 100644
--- a/network/mumble-server/mumble-server.SlackBuild
+++ b/network/mumble-server/mumble-server.SlackBuild
@@ -135,7 +135,7 @@ sed \
-e "s,;pidfile=.*,pidfile=/var/run/$PRGNAM/$PRGNAM.pid," \
-e "s,;uname=.*,uname=$MURMUR_USER," \
$PKG/usr/etc/mumble/$PRGNAM.ini > $PKG/etc/$PRGNAM.ini.new
-rm -rf $PKG/$PRGNAM-$VERSION/usr/etc/mumble
+rm -rf $PKG/usr/etc
# Slackware style logrotate
sed \
diff --git a/network/nchat/nchat.SlackBuild b/network/nchat/nchat.SlackBuild
index fdded5456f..08294237dd 100644
--- a/network/nchat/nchat.SlackBuild
+++ b/network/nchat/nchat.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nchat
-VERSION=${VERSION:-5.6.7}
+VERSION=${VERSION:-5.7.24}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/nchat/nchat.info b/network/nchat/nchat.info
index 6f122acdd4..46700bcac5 100644
--- a/network/nchat/nchat.info
+++ b/network/nchat/nchat.info
@@ -1,10 +1,10 @@
PRGNAM="nchat"
-VERSION="5.6.7"
+VERSION="5.7.24"
HOMEPAGE="https://github.com/d99kris/nchat"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/d99kris/nchat/archive/v5.6.7/nchat-5.6.7.tar.gz"
-MD5SUM_x86_64="206b53288fb1ca3cdf6bfa123b50eba9"
+DOWNLOAD_x86_64="https://github.com/d99kris/nchat/archive/v5.7.24/nchat-5.7.24.tar.gz"
+MD5SUM_x86_64="4291d5dcbaa22dcdff92d393e2ba577b"
REQUIRES="google-go-lang"
MAINTAINER="Rodrigo Lira"
EMAIL="eurodrigolira@gmail.com"
diff --git a/network/ncp/fix-ncp-command.diff b/network/ncp/fix-ncp-command.diff
new file mode 100644
index 0000000000..9d3ac54a8b
--- /dev/null
+++ b/network/ncp/fix-ncp-command.diff
@@ -0,0 +1,53 @@
+diff -Naur ncp-1.2.4/ncp.c ncp-1.2.4.patched/ncp.c
+--- ncp-1.2.4/ncp.c 2005-05-13 13:17:53.000000000 -0400
++++ ncp-1.2.4.patched/ncp.c 2025-05-14 05:54:19.123650149 -0400
+@@ -87,7 +87,7 @@
+
+ int v6tcpsock() {
+ int s;
+- if ((s=socket_tcp6())!=-1) {
++ if ((s=socket_tcp6b())!=-1) {
+ if (socket_bind6_reuse(s,(char *)V6any,8002,0)!=-1)
+ if (socket_listen(s,1)!=-1)
+ return s;
+@@ -98,7 +98,7 @@
+
+ int v4tcpsock() {
+ int s;
+- if ((s=socket_tcp4())!=-1) {
++ if ((s=socket_tcp4b())!=-1) {
+ if (socket_bind4_reuse(s,(char *)V6any,8002)!=-1)
+ if (socket_listen(s,1)!=-1)
+ return s;
+@@ -290,7 +290,7 @@
+ }
+
+ for (;;) {
+- s = socket_tcp6();
++ s = socket_tcp6b();
+ if (s==-1)
+ diesys(111,"socket");
+ if (socket_bind6(s,(char *)V6any,0,0) == -1)
+@@ -392,7 +392,7 @@
+ char **newargv;
+
+ carp("server mode. waiting for connection.");
+- s = socket_tcp6();
++ s = socket_tcp6b();
+ if (s == -1)
+ diesys(111,"socket");
+ if (socket_bind6_reuse(s,(char *)V6any,8002,0) == -1)
+@@ -430,11 +430,12 @@
+ diesys(111,"temporary unable to figure out IP address for ",*argv);
+ if (out.len < 16)
+ die(111,"no IP address for ",*argv);
+- s = socket_tcp6();
++ s = socket_tcp6b();
+ if (s==-1)
+ diesys(111,"socket");
+ if (socket_bind6(s,(char *)V6any,0,0) == -1)
+ diesys(111,"bind");
++ ndelay_off(s);
+ if (socket_connect6(s,out.s,8002,0) == -1)
+ diesys(111,"connection to ",*argv);
+ ndelay_off(s);
diff --git a/network/ncp/ncp.SlackBuild b/network/ncp/ncp.SlackBuild
index 4f18477fee..dc6ce8d238 100644
--- a/network/ncp/ncp.SlackBuild
+++ b/network/ncp/ncp.SlackBuild
@@ -6,6 +6,7 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20250514 bkw: BUILD=5, fix ncp command (npush and npoll were already OK).
# 20230706 bkw: BUILD=4, someone updated libowfat and broke my build.
# 20230103 bkw: BUILD=3, how did I miss broken symlinks?
# 20220207 bkw: BUILD=2, libowfat changed its dir structure.
@@ -14,7 +15,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ncp
VERSION=${VERSION:-1.2.4}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -63,6 +64,9 @@ cd $PRGNAM-$VERSION
chown -R root:root .
chmod 644 *
+# Fix from upstream's CVS. The libowfat socket API changed slightly.
+patch -p1 < $CWD/fix-ncp-command.diff
+
# We want symlinks, not hardlinks.
sed -i 's,ln -f,ln -s,' GNUmakefile
diff --git a/network/neomutt/neomutt.SlackBuild b/network/neomutt/neomutt.SlackBuild
index bfa534f23a..d40f4cdfaf 100644
--- a/network/neomutt/neomutt.SlackBuild
+++ b/network/neomutt/neomutt.SlackBuild
@@ -28,14 +28,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=neomutt
-VERSION=${VERSION:-20250113}
+VERSION=${VERSION:-20250905}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
if [ -z ${ARCH:=""} ]; then
case "$( uname -m )" in
- i?86) ARCH=i586 ;;
+ i?86) ARCH=i686 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
@@ -50,14 +50,11 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+if [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=pentium4 -mtune=generic"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -march=x86-64 -mtune=generic -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
@@ -67,7 +64,7 @@ fi
[ ${USELUA:-no} == 'yes' ] && LUA="--lua" || LUA=""
[ ${USENOTMUCH:-no} == 'yes' ] && NOTMUCH="--notmuch" || NOTMUCH=""
-set -eu
+set -euo pipefail
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
diff --git a/network/neomutt/neomutt.info b/network/neomutt/neomutt.info
index 6018bf955b..60a4e9d794 100644
--- a/network/neomutt/neomutt.info
+++ b/network/neomutt/neomutt.info
@@ -1,8 +1,8 @@
PRGNAM="neomutt"
-VERSION="20250113"
+VERSION="20250905"
HOMEPAGE="https://github.com/neomutt/neomutt"
-DOWNLOAD="https://github.com/neomutt/neomutt/archive/20250113/neomutt-20250113.tar.gz"
-MD5SUM="6dc9493283c3f084ce1aed3f49568116"
+DOWNLOAD="https://github.com/neomutt/neomutt/archive/20250905/neomutt-20250905.tar.gz"
+MD5SUM="95aa466aad9d3305ec81b429f0950616"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/newsboat/newsboat.SlackBuild b/network/newsboat/newsboat.SlackBuild
index c65eb1a844..a73e45970e 100644
--- a/network/newsboat/newsboat.SlackBuild
+++ b/network/newsboat/newsboat.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=newsboat
-VERSION=${VERSION:-2.39}
+VERSION=${VERSION:-2.40}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/newsboat/newsboat.info b/network/newsboat/newsboat.info
index 891b4dc20d..bd038f714b 100644
--- a/network/newsboat/newsboat.info
+++ b/network/newsboat/newsboat.info
@@ -1,7 +1,7 @@
PRGNAM="newsboat"
-VERSION="2.39"
+VERSION="2.40"
HOMEPAGE="https://www.newsboat.org/"
-DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
+DOWNLOAD="https://newsboat.org/releases/2.40/newsboat-2.40.tar.xz \
https://static.crates.io/crates/addr2line/addr2line-0.24.2.crate \
https://static.crates.io/crates/adler2/adler2-2.0.0.crate \
https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.3.crate \
@@ -20,9 +20,9 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/async-object-pool/async-object-pool-0.1.5.crate \
https://static.crates.io/crates/async-process/async-process-2.3.0.crate \
https://static.crates.io/crates/async-signal/async-signal-0.2.10.crate \
- https://static.crates.io/crates/async-std/async-std-1.13.0.crate \
+ https://static.crates.io/crates/async-std/async-std-1.13.1.crate \
https://static.crates.io/crates/async-task/async-task-4.7.1.crate \
- https://static.crates.io/crates/async-trait/async-trait-0.1.83.crate \
+ https://static.crates.io/crates/async-trait/async-trait-0.1.88.crate \
https://static.crates.io/crates/atomic-waker/atomic-waker-1.1.2.crate \
https://static.crates.io/crates/autocfg/autocfg-1.4.0.crate \
https://static.crates.io/crates/backtrace/backtrace-0.3.74.crate \
@@ -32,53 +32,52 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/bit-set/bit-set-0.8.0.crate \
https://static.crates.io/crates/bit-vec/bit-vec-0.6.3.crate \
https://static.crates.io/crates/bit-vec/bit-vec-0.8.0.crate \
- https://static.crates.io/crates/bitflags/bitflags-2.9.0.crate \
+ https://static.crates.io/crates/bitflags/bitflags-2.9.1.crate \
https://static.crates.io/crates/block/block-0.1.6.crate \
https://static.crates.io/crates/blocking/blocking-1.6.1.crate \
- https://static.crates.io/crates/bumpalo/bumpalo-3.16.0.crate \
- https://static.crates.io/crates/byteorder/byteorder-1.5.0.crate \
- https://static.crates.io/crates/bytes/bytes-1.9.0.crate \
- https://static.crates.io/crates/cc/cc-1.2.5.crate \
+ https://static.crates.io/crates/bumpalo/bumpalo-3.17.0.crate \
+ https://static.crates.io/crates/bytes/bytes-1.10.1.crate \
+ https://static.crates.io/crates/cc/cc-1.2.17.crate \
https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \
- https://static.crates.io/crates/chrono/chrono-0.4.40.crate \
- https://static.crates.io/crates/clap/clap-4.5.23.crate \
- https://static.crates.io/crates/clap_builder/clap_builder-4.5.23.crate \
+ https://static.crates.io/crates/chrono/chrono-0.4.41.crate \
+ https://static.crates.io/crates/clap/clap-4.5.32.crate \
+ https://static.crates.io/crates/clap_builder/clap_builder-4.5.32.crate \
https://static.crates.io/crates/clap_lex/clap_lex-0.7.4.crate \
- https://static.crates.io/crates/codespan-reporting/codespan-reporting-0.11.1.crate \
+ https://static.crates.io/crates/codespan-reporting/codespan-reporting-0.12.0.crate \
https://static.crates.io/crates/concurrent-queue/concurrent-queue-2.5.0.crate \
https://static.crates.io/crates/core-foundation-sys/core-foundation-sys-0.8.7.crate \
https://static.crates.io/crates/crossbeam-utils/crossbeam-utils-0.8.21.crate \
- https://static.crates.io/crates/crunchy/crunchy-0.2.2.crate \
- https://static.crates.io/crates/curl-sys/curl-sys-0.4.80%2Bcurl-8.12.1.crate \
- https://static.crates.io/crates/cxx-build/cxx-build-1.0.149.crate \
- https://static.crates.io/crates/cxx/cxx-1.0.149.crate \
- https://static.crates.io/crates/cxxbridge-cmd/cxxbridge-cmd-1.0.149.crate \
- https://static.crates.io/crates/cxxbridge-flags/cxxbridge-flags-1.0.149.crate \
- https://static.crates.io/crates/cxxbridge-macro/cxxbridge-macro-1.0.149.crate \
+ https://static.crates.io/crates/crunchy/crunchy-0.2.3.crate \
+ https://static.crates.io/crates/curl-sys/curl-sys-0.4.82%2Bcurl-8.14.1.crate \
+ https://static.crates.io/crates/cxx-build/cxx-build-1.0.158.crate \
+ https://static.crates.io/crates/cxx/cxx-1.0.158.crate \
+ https://static.crates.io/crates/cxxbridge-cmd/cxxbridge-cmd-1.0.158.crate \
+ https://static.crates.io/crates/cxxbridge-flags/cxxbridge-flags-1.0.158.crate \
+ https://static.crates.io/crates/cxxbridge-macro/cxxbridge-macro-1.0.158.crate \
https://static.crates.io/crates/dirs-next/dirs-next-2.0.0.crate \
https://static.crates.io/crates/dirs-sys-next/dirs-sys-next-0.1.2.crate \
https://static.crates.io/crates/displaydoc/displaydoc-0.2.5.crate \
- https://static.crates.io/crates/either/either-1.13.0.crate \
+ https://static.crates.io/crates/either/either-1.15.0.crate \
https://static.crates.io/crates/ena/ena-0.14.3.crate \
- https://static.crates.io/crates/equivalent/equivalent-1.0.1.crate \
+ https://static.crates.io/crates/equivalent/equivalent-1.0.2.crate \
https://static.crates.io/crates/errno/errno-0.3.10.crate \
https://static.crates.io/crates/event-listener-strategy/event-listener-strategy-0.5.3.crate \
https://static.crates.io/crates/event-listener/event-listener-2.5.3.crate \
- https://static.crates.io/crates/event-listener/event-listener-5.3.1.crate \
+ https://static.crates.io/crates/event-listener/event-listener-5.4.0.crate \
https://static.crates.io/crates/fastrand/fastrand-2.3.0.crate \
https://static.crates.io/crates/fixedbitset/fixedbitset-0.4.2.crate \
https://static.crates.io/crates/fnv/fnv-1.0.7.crate \
- https://static.crates.io/crates/foldhash/foldhash-0.1.4.crate \
+ https://static.crates.io/crates/foldhash/foldhash-0.1.5.crate \
https://static.crates.io/crates/form_urlencoded/form_urlencoded-1.2.1.crate \
https://static.crates.io/crates/futures-channel/futures-channel-0.3.31.crate \
https://static.crates.io/crates/futures-core/futures-core-0.3.31.crate \
https://static.crates.io/crates/futures-io/futures-io-0.3.31.crate \
- https://static.crates.io/crates/futures-lite/futures-lite-2.5.0.crate \
+ https://static.crates.io/crates/futures-lite/futures-lite-2.6.0.crate \
https://static.crates.io/crates/futures-macro/futures-macro-0.3.31.crate \
https://static.crates.io/crates/futures-task/futures-task-0.3.31.crate \
https://static.crates.io/crates/futures-util/futures-util-0.3.31.crate \
https://static.crates.io/crates/getrandom/getrandom-0.2.15.crate \
- https://static.crates.io/crates/getrandom/getrandom-0.3.1.crate \
+ https://static.crates.io/crates/getrandom/getrandom-0.3.2.crate \
https://static.crates.io/crates/gettext-rs/gettext-rs-0.7.2.crate \
https://static.crates.io/crates/gettext-sys/gettext-sys-0.22.5.crate \
https://static.crates.io/crates/gimli/gimli-0.31.1.crate \
@@ -87,12 +86,12 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/hermit-abi/hermit-abi-0.4.0.crate \
https://static.crates.io/crates/http-body/http-body-0.4.6.crate \
https://static.crates.io/crates/http/http-0.2.12.crate \
- https://static.crates.io/crates/httparse/httparse-1.9.5.crate \
+ https://static.crates.io/crates/httparse/httparse-1.10.1.crate \
https://static.crates.io/crates/httpdate/httpdate-1.0.3.crate \
https://static.crates.io/crates/httpmock/httpmock-0.7.0.crate \
https://static.crates.io/crates/hyper/hyper-0.14.32.crate \
https://static.crates.io/crates/iana-time-zone-haiku/iana-time-zone-haiku-0.1.2.crate \
- https://static.crates.io/crates/iana-time-zone/iana-time-zone-0.1.61.crate \
+ https://static.crates.io/crates/iana-time-zone/iana-time-zone-0.1.62.crate \
https://static.crates.io/crates/icu_collections/icu_collections-1.5.0.crate \
https://static.crates.io/crates/icu_locid/icu_locid-1.5.0.crate \
https://static.crates.io/crates/icu_locid_transform/icu_locid_transform-1.5.0.crate \
@@ -105,30 +104,30 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/icu_provider_macros/icu_provider_macros-1.5.0.crate \
https://static.crates.io/crates/idna/idna-1.0.3.crate \
https://static.crates.io/crates/idna_adapter/idna_adapter-1.2.0.crate \
- https://static.crates.io/crates/indexmap/indexmap-2.7.0.crate \
+ https://static.crates.io/crates/indexmap/indexmap-2.8.0.crate \
https://static.crates.io/crates/itertools/itertools-0.11.0.crate \
- https://static.crates.io/crates/itoa/itoa-1.0.14.crate \
- https://static.crates.io/crates/js-sys/js-sys-0.3.76.crate \
+ https://static.crates.io/crates/itoa/itoa-1.0.15.crate \
+ https://static.crates.io/crates/js-sys/js-sys-0.3.77.crate \
https://static.crates.io/crates/kv-log-macro/kv-log-macro-1.0.7.crate \
https://static.crates.io/crates/lalrpop-util/lalrpop-util-0.20.2.crate \
https://static.crates.io/crates/lalrpop/lalrpop-0.20.2.crate \
https://static.crates.io/crates/lazy_static/lazy_static-1.5.0.crate \
https://static.crates.io/crates/levenshtein/levenshtein-1.0.5.crate \
- https://static.crates.io/crates/lexopt/lexopt-0.3.0.crate \
- https://static.crates.io/crates/libc/libc-0.2.171.crate \
+ https://static.crates.io/crates/lexopt/lexopt-0.3.1.crate \
+ https://static.crates.io/crates/libc/libc-0.2.174.crate \
https://static.crates.io/crates/libredox/libredox-0.1.3.crate \
- https://static.crates.io/crates/libz-sys/libz-sys-1.1.20.crate \
- https://static.crates.io/crates/link-cplusplus/link-cplusplus-1.0.9.crate \
- https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.4.14.crate \
- https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.9.2.crate \
- https://static.crates.io/crates/litemap/litemap-0.7.4.crate \
+ https://static.crates.io/crates/libz-sys/libz-sys-1.1.22.crate \
+ https://static.crates.io/crates/link-cplusplus/link-cplusplus-1.0.10.crate \
+ https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.4.15.crate \
+ https://static.crates.io/crates/linux-raw-sys/linux-raw-sys-0.9.3.crate \
+ https://static.crates.io/crates/litemap/litemap-0.7.5.crate \
https://static.crates.io/crates/locale_config/locale_config-0.3.0.crate \
https://static.crates.io/crates/lock_api/lock_api-0.4.12.crate \
- https://static.crates.io/crates/log/log-0.4.22.crate \
+ https://static.crates.io/crates/log/log-0.4.27.crate \
https://static.crates.io/crates/malloc_buf/malloc_buf-0.0.6.crate \
https://static.crates.io/crates/md5/md5-0.7.0.crate \
https://static.crates.io/crates/memchr/memchr-2.7.4.crate \
- https://static.crates.io/crates/miniz_oxide/miniz_oxide-0.8.2.crate \
+ https://static.crates.io/crates/miniz_oxide/miniz_oxide-0.8.5.crate \
https://static.crates.io/crates/mio/mio-1.0.3.crate \
https://static.crates.io/crates/natord/natord-1.0.9.crate \
https://static.crates.io/crates/new_debug_unreachable/new_debug_unreachable-1.0.6.crate \
@@ -138,104 +137,104 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/objc/objc-0.2.7.crate \
https://static.crates.io/crates/objc_id/objc_id-0.1.1.crate \
https://static.crates.io/crates/object/object-0.36.7.crate \
- https://static.crates.io/crates/once_cell/once_cell-1.20.2.crate \
+ https://static.crates.io/crates/once_cell/once_cell-1.21.1.crate \
https://static.crates.io/crates/parking/parking-2.2.1.crate \
https://static.crates.io/crates/parking_lot/parking_lot-0.12.3.crate \
https://static.crates.io/crates/parking_lot_core/parking_lot_core-0.9.10.crate \
https://static.crates.io/crates/percent-encoding/percent-encoding-2.3.1.crate \
https://static.crates.io/crates/petgraph/petgraph-0.6.5.crate \
- https://static.crates.io/crates/phf_shared/phf_shared-0.10.0.crate \
+ https://static.crates.io/crates/phf_shared/phf_shared-0.11.3.crate \
https://static.crates.io/crates/pico-args/pico-args-0.5.0.crate \
- https://static.crates.io/crates/pin-project-lite/pin-project-lite-0.2.15.crate \
+ https://static.crates.io/crates/pin-project-lite/pin-project-lite-0.2.16.crate \
https://static.crates.io/crates/pin-utils/pin-utils-0.1.0.crate \
https://static.crates.io/crates/piper/piper-0.2.4.crate \
- https://static.crates.io/crates/pkg-config/pkg-config-0.3.31.crate \
+ https://static.crates.io/crates/pkg-config/pkg-config-0.3.32.crate \
https://static.crates.io/crates/polling/polling-3.7.4.crate \
- https://static.crates.io/crates/ppv-lite86/ppv-lite86-0.2.20.crate \
+ https://static.crates.io/crates/ppv-lite86/ppv-lite86-0.2.21.crate \
https://static.crates.io/crates/precomputed-hash/precomputed-hash-0.1.1.crate \
- https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.92.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.94.crate \
https://static.crates.io/crates/proptest/proptest-1.6.0.crate \
https://static.crates.io/crates/quick-error/quick-error-1.2.3.crate \
- https://static.crates.io/crates/quote/quote-1.0.37.crate \
+ https://static.crates.io/crates/quote/quote-1.0.40.crate \
+ https://static.crates.io/crates/r-efi/r-efi-5.2.0.crate \
https://static.crates.io/crates/rand/rand-0.8.5.crate \
https://static.crates.io/crates/rand_chacha/rand_chacha-0.3.1.crate \
https://static.crates.io/crates/rand_core/rand_core-0.6.4.crate \
https://static.crates.io/crates/rand_xorshift/rand_xorshift-0.3.0.crate \
- https://static.crates.io/crates/redox_syscall/redox_syscall-0.5.8.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.5.10.crate \
https://static.crates.io/crates/redox_users/redox_users-0.4.6.crate \
https://static.crates.io/crates/regex-automata/regex-automata-0.4.9.crate \
https://static.crates.io/crates/regex-syntax/regex-syntax-0.8.5.crate \
https://static.crates.io/crates/regex/regex-1.11.1.crate \
https://static.crates.io/crates/rustc-demangle/rustc-demangle-0.1.24.crate \
- https://static.crates.io/crates/rustix/rustix-0.38.42.crate \
- https://static.crates.io/crates/rustix/rustix-1.0.0.crate \
- https://static.crates.io/crates/rustversion/rustversion-1.0.18.crate \
+ https://static.crates.io/crates/rustix/rustix-0.38.44.crate \
+ https://static.crates.io/crates/rustix/rustix-1.0.3.crate \
+ https://static.crates.io/crates/rustversion/rustversion-1.0.20.crate \
https://static.crates.io/crates/rusty-fork/rusty-fork-0.3.0.crate \
- https://static.crates.io/crates/ryu/ryu-1.0.18.crate \
+ https://static.crates.io/crates/ryu/ryu-1.0.20.crate \
https://static.crates.io/crates/same-file/same-file-1.0.6.crate \
https://static.crates.io/crates/scopeguard/scopeguard-1.2.0.crate \
- https://static.crates.io/crates/scratch/scratch-1.0.7.crate \
+ https://static.crates.io/crates/scratch/scratch-1.0.8.crate \
https://static.crates.io/crates/section_testing/section_testing-0.0.5.crate \
- https://static.crates.io/crates/serde/serde-1.0.216.crate \
- https://static.crates.io/crates/serde_derive/serde_derive-1.0.216.crate \
- https://static.crates.io/crates/serde_json/serde_json-1.0.134.crate \
+ https://static.crates.io/crates/serde/serde-1.0.219.crate \
+ https://static.crates.io/crates/serde_derive/serde_derive-1.0.219.crate \
+ https://static.crates.io/crates/serde_json/serde_json-1.0.140.crate \
https://static.crates.io/crates/serde_regex/serde_regex-1.1.0.crate \
https://static.crates.io/crates/shlex/shlex-1.3.0.crate \
https://static.crates.io/crates/signal-hook-registry/signal-hook-registry-1.4.2.crate \
- https://static.crates.io/crates/similar/similar-2.6.0.crate \
- https://static.crates.io/crates/siphasher/siphasher-0.3.11.crate \
+ https://static.crates.io/crates/similar/similar-2.7.0.crate \
+ https://static.crates.io/crates/siphasher/siphasher-1.0.1.crate \
https://static.crates.io/crates/slab/slab-0.4.9.crate \
- https://static.crates.io/crates/smallvec/smallvec-1.13.2.crate \
+ https://static.crates.io/crates/smallvec/smallvec-1.14.0.crate \
https://static.crates.io/crates/socket2/socket2-0.5.8.crate \
https://static.crates.io/crates/stable_deref_trait/stable_deref_trait-1.2.0.crate \
- https://static.crates.io/crates/string_cache/string_cache-0.8.7.crate \
+ https://static.crates.io/crates/string_cache/string_cache-0.8.8.crate \
https://static.crates.io/crates/strsim/strsim-0.11.1.crate \
https://static.crates.io/crates/syn/syn-1.0.109.crate \
- https://static.crates.io/crates/syn/syn-2.0.91.crate \
+ https://static.crates.io/crates/syn/syn-2.0.100.crate \
https://static.crates.io/crates/synstructure/synstructure-0.13.1.crate \
https://static.crates.io/crates/temp-dir/temp-dir-0.1.14.crate \
- https://static.crates.io/crates/tempfile/tempfile-3.19.1.crate \
+ https://static.crates.io/crates/tempfile/tempfile-3.20.0.crate \
https://static.crates.io/crates/term/term-0.7.0.crate \
https://static.crates.io/crates/termcolor/termcolor-1.4.1.crate \
https://static.crates.io/crates/thiserror-impl/thiserror-impl-1.0.69.crate \
https://static.crates.io/crates/thiserror/thiserror-1.0.69.crate \
https://static.crates.io/crates/tiny-keccak/tiny-keccak-2.0.2.crate \
https://static.crates.io/crates/tinystr/tinystr-0.7.6.crate \
- https://static.crates.io/crates/tokio-macros/tokio-macros-2.4.0.crate \
- https://static.crates.io/crates/tokio/tokio-1.42.0.crate \
+ https://static.crates.io/crates/tokio-macros/tokio-macros-2.5.0.crate \
+ https://static.crates.io/crates/tokio/tokio-1.44.2.crate \
https://static.crates.io/crates/tower-service/tower-service-0.3.3.crate \
https://static.crates.io/crates/tracing-core/tracing-core-0.1.33.crate \
https://static.crates.io/crates/tracing/tracing-0.1.41.crate \
https://static.crates.io/crates/try-lock/try-lock-0.2.5.crate \
https://static.crates.io/crates/unarray/unarray-0.1.4.crate \
- https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.14.crate \
+ https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.18.crate \
https://static.crates.io/crates/unicode-segmentation/unicode-segmentation-1.12.0.crate \
- https://static.crates.io/crates/unicode-width/unicode-width-0.1.14.crate \
- https://static.crates.io/crates/unicode-width/unicode-width-0.2.0.crate \
+ https://static.crates.io/crates/unicode-width/unicode-width-0.2.1.crate \
https://static.crates.io/crates/unicode-xid/unicode-xid-0.2.6.crate \
https://static.crates.io/crates/url/url-2.5.4.crate \
https://static.crates.io/crates/utf16_iter/utf16_iter-1.0.5.crate \
https://static.crates.io/crates/utf8_iter/utf8_iter-1.0.4.crate \
https://static.crates.io/crates/value-bag/value-bag-1.10.0.crate \
https://static.crates.io/crates/vcpkg/vcpkg-0.2.15.crate \
- https://static.crates.io/crates/wait-timeout/wait-timeout-0.2.0.crate \
+ https://static.crates.io/crates/wait-timeout/wait-timeout-0.2.1.crate \
https://static.crates.io/crates/walkdir/walkdir-2.5.0.crate \
https://static.crates.io/crates/want/want-0.3.1.crate \
https://static.crates.io/crates/wasi/wasi-0.11.0%2Bwasi-snapshot-preview1.crate \
- https://static.crates.io/crates/wasi/wasi-0.13.3%2Bwasi-0.2.2.crate \
- https://static.crates.io/crates/wasm-bindgen-backend/wasm-bindgen-backend-0.2.99.crate \
- https://static.crates.io/crates/wasm-bindgen-futures/wasm-bindgen-futures-0.4.49.crate \
- https://static.crates.io/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.99.crate \
- https://static.crates.io/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.99.crate \
- https://static.crates.io/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.99.crate \
- https://static.crates.io/crates/wasm-bindgen/wasm-bindgen-0.2.99.crate \
- https://static.crates.io/crates/web-sys/web-sys-0.3.76.crate \
+ https://static.crates.io/crates/wasi/wasi-0.14.2%2Bwasi-0.2.4.crate \
+ https://static.crates.io/crates/wasm-bindgen-backend/wasm-bindgen-backend-0.2.100.crate \
+ https://static.crates.io/crates/wasm-bindgen-futures/wasm-bindgen-futures-0.4.50.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.100.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.100.crate \
+ https://static.crates.io/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.100.crate \
+ https://static.crates.io/crates/wasm-bindgen/wasm-bindgen-0.2.100.crate \
+ https://static.crates.io/crates/web-sys/web-sys-0.3.77.crate \
https://static.crates.io/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate \
https://static.crates.io/crates/winapi-util/winapi-util-0.1.9.crate \
https://static.crates.io/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate \
https://static.crates.io/crates/winapi/winapi-0.3.9.crate \
https://static.crates.io/crates/windows-core/windows-core-0.52.0.crate \
- https://static.crates.io/crates/windows-link/windows-link-0.1.0.crate \
+ https://static.crates.io/crates/windows-link/windows-link-0.1.1.crate \
https://static.crates.io/crates/windows-sys/windows-sys-0.52.0.crate \
https://static.crates.io/crates/windows-sys/windows-sys-0.59.0.crate \
https://static.crates.io/crates/windows-targets/windows-targets-0.52.6.crate \
@@ -247,19 +246,19 @@ DOWNLOAD="https://newsboat.org/releases/2.39/newsboat-2.39.tar.xz \
https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.52.6.crate \
https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.52.6.crate \
https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.52.6.crate \
- https://static.crates.io/crates/wit-bindgen-rt/wit-bindgen-rt-0.33.0.crate \
+ https://static.crates.io/crates/wit-bindgen-rt/wit-bindgen-rt-0.39.0.crate \
https://static.crates.io/crates/write16/write16-1.0.0.crate \
https://static.crates.io/crates/writeable/writeable-0.5.5.crate \
- https://static.crates.io/crates/xdg/xdg-2.5.2.crate \
+ https://static.crates.io/crates/xdg/xdg-3.0.0.crate \
https://static.crates.io/crates/yoke-derive/yoke-derive-0.7.5.crate \
https://static.crates.io/crates/yoke/yoke-0.7.5.crate \
- https://static.crates.io/crates/zerocopy-derive/zerocopy-derive-0.7.35.crate \
- https://static.crates.io/crates/zerocopy/zerocopy-0.7.35.crate \
- https://static.crates.io/crates/zerofrom-derive/zerofrom-derive-0.1.5.crate \
- https://static.crates.io/crates/zerofrom/zerofrom-0.1.5.crate \
+ https://static.crates.io/crates/zerocopy-derive/zerocopy-derive-0.8.24.crate \
+ https://static.crates.io/crates/zerocopy/zerocopy-0.8.24.crate \
+ https://static.crates.io/crates/zerofrom-derive/zerofrom-derive-0.1.6.crate \
+ https://static.crates.io/crates/zerofrom/zerofrom-0.1.6.crate \
https://static.crates.io/crates/zerovec-derive/zerovec-derive-0.10.3.crate \
https://static.crates.io/crates/zerovec/zerovec-0.10.4.crate"
-MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
+MD5SUM="f8f746681ba811b49d6e7e1270f53ae2 \
fd1d0d5b3ecdfb40979711421742ddf5 \
579e59ba996675f454d456471924ea9d \
03b2d126766ed746706241b4c7487654 \
@@ -278,9 +277,9 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
0c3f460ab4085cfd9fad006f2d5cca51 \
93f3fad9a01ee50ead955dc477957ed4 \
403d5bc2885ecd1f94cf13a79ab2305a \
- 70667c089005ad40d311e18542aa1b88 \
+ 98cb85e7bdc9c1198f088d3cc940e3f8 \
e09416c884027b94479fc254f8d2388e \
- 118e580e29ead42b43eb3dd9eaabac90 \
+ 547a1e81c963fd9746667d988d2eb82f \
6a44afda654777d2930b93366bdfc7f3 \
9e038efbd61e6d7cbc54983abc5b3948 \
68a9f9dcd62800564d5daf5c2f36accd \
@@ -290,53 +289,52 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
fa4e40913159dd05959a52a5dff270fc \
45a867175c81501378699f80724393c0 \
66aebb5faa7f9df11bdeb5c1b1aca9a2 \
- d9b082d835851e4ce1a2be4439c5e5a8 \
+ 66940d1c249bc21e798d0acfc231d8f7 \
ea2d23ceb9f98853a7dffc6c02884464 \
bba35eca663d82c5a9cec2e6a43aeef5 \
- a3c12a0b2ddb55ec1b245f9950e7bdf1 \
- 45339d90b2b3a4f123af5ec459954102 \
- 8dc53ad58daeb79ef49836852ffc2962 \
- 82bee3b99c78fc24c93c8e865a112574 \
+ d383afbd0527ebb38acda5c532ba204e \
+ f5fbc93c70d12ab063028ace80b98677 \
+ a8ecce061119182e0c0927965bc1110b \
74634128440dbc3766bda76fdf0aaa05 \
- 30f45866a995f594221768ef35c8187b \
- 600880619820a3fb4117673df4fbf044 \
- 3a20a1095c43604b03e68c72b5f58a21 \
+ fffeee9da0f15363c41424bed77d30b2 \
+ adde26b73f58c24030176b6ba37e3f5e \
+ 279929c3a5c6568a55689bb6ad4d4599 \
a3ae20980b5ce5831255acfe0d77d1ee \
- faa32da3be14130a4525bb7ba601c62e \
+ 96f65f1baa3e1f1026fb4313c80e16ed \
d1f70680f36b13b74bab20250fb2f26f \
c5229cfccb6a1598e74a837dbc9e2797 \
897be1152015ad66fa30dbdc224af39d \
- 32e5a346cb92729cf6c2d8d0e8202c73 \
- 6b516d870dafeaf5342b1ef27ca45be7 \
- c47bb0bafb8cbeed3bfb893e09ffa275 \
- 66b64c4d7dfcdf7c71d1a05e71cf0f6f \
- 4d647cefa816fba6fabf21ebe4a0d772 \
- 872c965010e19389e1065f874b648ce2 \
- a9f53b68458d83fbe8c43ac79eec2731 \
+ 8ffd68cc680fda2436fb1d7a93af40f9 \
+ 99cec44280518162fcc100ab6690a31c \
+ c95c1f24eed0fc8f24d03b69ed0fcae9 \
+ 7cde5099d4862f2b2079917c60112317 \
+ 4987cb6b1d1e4557de270b37a254aeee \
+ 1c3c38222ea859ccba600e8de86c7135 \
+ a1519a749191c19d8a7c9f745c3038a4 \
3681f813c502d911e9eea940dddd26a5 \
056c8d712ee146347c412b72f4077b2f \
145b7bd67e6356f3510a7d8fa9bb7926 \
- 6d28dbfa9d67ad11061716672a7a1519 \
+ 96c3c9f009928f02773032f341666861 \
805c76d3806e0b52a9837a6b15bfaed9 \
- bdf329a72ecd0605c296f25e53136706 \
+ 8ea35f559a34b5a0ba1b063e001773ca \
97fd3b6f8bd8cc9f0890a599853a4b71 \
f721e0f2dd9dfdaf715b2e4661bb3e4a \
65934957ea79137686ded549467e1329 \
- 1e40728df271c6a0b69f134b9ea5db35 \
+ 9e94dc515cf8f86e8b710a7e4a8ee81f \
b0a1ffd6b0b5fe67e3dac04cd26b3099 \
a1e1c92075e77d61acf61a094a68fa61 \
8dab3b3ec00dc56cffde0b0c410d47b5 \
- 60af5d7fafb6a6d24c93060ddfd01f39 \
+ fc53a85c912427e1af1278d8f9ef2aa4 \
c3e51926c9853b714191ef1bec90e2ce \
a086623c9c2f91f23ae5afee7129c943 \
9a91b575ff300519839e2e765c124427 \
118c724fa4cfcc59ef1bcaa438d997b2 \
- 45af27c35af1feef5833cc3689d23512 \
+ b14e24e0484e95e558aef20a6235d1b4 \
e597e8c43837b595ee5922b605dec5b4 \
591cbad56682180a4160a8feedc6c468 \
f63e8b6601cfe5fe91cb977b3bacd1a2 \
3c67481b4433a3219846e41d09aaeaa9 \
- f9441a42065c31ab748e91da21c3e854 \
+ 9c308e91de3e480dbaf7e0f87a7bb57e \
eee536399391eb1f0f145f5433d58e26 \
ad62d99648af34788886fdf0b50ba45c \
af0a19b2d65a8a745d733aef0337fb02 \
@@ -345,12 +343,12 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
b1fcdccf7b7baaa0cf21701b4aea7e0d \
54cbd8850aebe933b8f1214d8e916d1e \
fb46b88c5cbf8bfe28124af1794f3934 \
- 07a0c4cd63df81c92cbe37421fbffc33 \
+ efa1346b8285d297dddb9173d3548e71 \
580b311bafe0447ebc9ca2e646d9b0e7 \
ee23153b9be20045075dbaf0757d9eec \
e26c3b1f0328a2267ef91021e29dc7f9 \
87b1b7cb12ef4dfe842c212b98263048 \
- 64230e60ed58b0e7a52dfa572b4c4abc \
+ a1855593c5e6a32e8b93244e58b77200 \
a3fdef868df4241e048e44bd24009fbf \
a1d857a2bddf43a7ed8cfa8e7f473144 \
76eae866746161f902ad17df8c2b531d \
@@ -363,30 +361,30 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
3d76b70f45ed54a041eead03741f7bda \
a4add356e295ad0f859ab8a53220ee77 \
7d922f86acce25b03870b18e58d92549 \
- b03ce65007c696ec791adfc8cb0938de \
+ 6c156989786a33e43ff73c41bd3adfca \
d629ca093dfd23b5e9b4262c5f801928 \
- c125f6c48f6f09ad96e234ff25a1c198 \
- 3009dd4cfb903346caa8294d2f4c84e1 \
+ ba82a589ab0348c1be03dfb9dd33e2ad \
+ 1f421f29ba11d889e8b0693f29c62f84 \
e155c3d45440413eec6db44f68a21b69 \
c5c92ada2f3c20c3cf94cd3cef8fd5f7 \
26e51679344f78a68ffc81de75b86a90 \
bb0c20f6e3faaa647d9c463c5501a8e0 \
9d65440ce9b0aae5a467e051862a412d \
- d71093319a2c1efa90475bd45d34fab3 \
- fc050a31a867495269a31769e4c4fb7e \
+ 2073767869c0dddcfb83cbf57612195d \
+ 81e9e7ada2f742ac62b1ca1c9c7f46a0 \
b928626f9e8328e4085fc27cfc640c19 \
- 0af12a5e277bc37fef415940a42d1bf3 \
- d6c6a27e29d9270a2ac318eacdf8e436 \
- 6d16890925497732bdbedd7636c9546f \
- 5b474d0dbc713af45be517c6e5e2ddd0 \
- 108f8097d1c9653c4f8adc2439aa3a70 \
+ ff1ca673b7db4e0571e6a76beba52c00 \
+ b5f8b0f69ec724b6e349a12b1ee69500 \
+ c794e0a278b9d264dc033b1c840dd217 \
+ d17be1af9ab3d9376ad4d5c7a5e5e64c \
+ b73413f331dc2f1279d6b29a4a151bee \
6fa7c4b0da26b511570845e41527bc8f \
eb44c81f81e4aecdbdbafeac9c0fdcab \
- efeb260cf6b2a13607ee12321e39cc8d \
+ 6024116d77633589f38c78bf1716c704 \
7c81e7a61ec172a229d6fdbc553e883d \
65470cdfd1fa2a2de9fdf873a58d72aa \
c0aab5e6eaaa6a2f3c7ed44f123d1c7d \
- 0eedc8dfca4a5dbcc208d7769d2dd61a \
+ eb2283b271af366f081fce4e3cd69988 \
8c5b656fbc77cf40ea254ccea0bb189d \
5a9b94ba54ea1f52f2a496ba982e3282 \
1ac8ee39aea832c035b9ec2b2cd42097 \
@@ -396,104 +394,104 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
b4dcac855af5df71f3383d86c4a96b78 \
fd9aa273ad560dedd00ddcf3dbe808ce \
b0476c408e48108f9a8a74c64372fe53 \
- 2b55f4f5a83a6ed664ff5b60aff9bfb4 \
+ 8a4b224512c4da7e1534c605ebc93d0c \
c98fa41bae9a9421fcf24801356ef5a8 \
c63cc43554a8abcf7b1166626f0e3736 \
fe316e1d51e3dff1e0455d0142dd37e4 \
0ba30a94d7b8865c23e86d4d64e5b91e \
aa64b5603b047aa734216db62286aac8 \
- d3aba74b592cfad9a1a43b22981fb1b2 \
+ f2e257c733d6f9b6106ce4b4922813f8 \
546ba194d53e8483eb0a035235b1b9d0 \
- 33d81093e4a1abbd77e3fd858c2d1783 \
+ f6c8ce4c412ca548e42dfd896c92112e \
07c75fec267864bcbb800ca7709ceae2 \
053ad54a4fa64ed603bb44453dbe652c \
- e7462bc76b29e8a0bb662e334f07c862 \
+ c0cc536bbce6c848a2957222de166961 \
6d61e4633e7f0386f5e2b176b8e692ea \
- 60ddef23e68d8cbb9f9f33b747fe1734 \
+ 24b98ea919f5970d55ff176be1d551b1 \
452ac8d7c004b02e1ec30a9e390f9625 \
- b566bf4833b38514dc848f1cc075a281 \
+ bd7d42af6988ee47f5aecb323dfd8c80 \
fe8631ad13c0a97ebfce62ddc6df83dd \
3181dca31efe33cbed29a45d0ec67848 \
- ec5466d73ce9285f92a1458cdc1b4046 \
+ f6471dc7b34a49fca3f64c3c2cb641a4 \
+ 2535f4ec6c6454ee31eeb69a81fe0163 \
ee7a5f842c39bc47c474196e83b0df5f \
e30085994bbeb4b7f4895d48216d5476 \
a1626b8f4d165b1b60d960862eba4cf0 \
f9e79ef04a0f168cd981aaf93eb25272 \
- 0076e500850fb04f53c509c33b5d0dd8 \
+ 90075d7515c8c6d2a9afbd8891c9f536 \
bee355e36a71b94ea45eedcd3d054ae1 \
15ca0efe66412fae9536d428d93e6a73 \
45c2ac064f6aedb1944b989742218e26 \
83ecafda24e071eea2198d9b440739ce \
b400c455aaf7d3e6a216261f07c4bc93 \
- b6fe2da3c2753b40add9e5cf8c4c1b9b \
- 90020f8878192f30217ecae544f2cb4d \
- ecadbb355654808d1767c7e1d9d621e3 \
+ 8391791c82ccf4f938ee8a58ea1d5e39 \
+ 7c51269b8c6d4efb5d7969b2f9dbe2ac \
+ f78b0c36a0f74a479aa2207667eab643 \
13268e6ab4023043e6dd8e993ce8b88a \
- 56de037d755aeb0b45169991f9567cd7 \
+ dc3cd3d0dc142df381bc6728ef740748 \
2d8d8b377d144f5e32b4f65a69eb0b24 \
f1358be8c98b98837cbd2cf51e75f8b3 \
- bb56e53d09b09eb11536cb69734564de \
+ 77721d9e73553be4beb7b90ea44934da \
b13390ad50aa277e39e4d46f7ed3eb14 \
- 7642e7a4eea8d20d8ca9647ed600fa8c \
- 78491b4b4f7f2704b20c88a48694f0ae \
- 8bb6bc7d7de03421a1fd98bce273f783 \
+ c7251782043416b8adca3bf107f7b667 \
+ 1a4ffa27fc05042873cff99ef4b4405d \
+ d23def43a238240dfaa85ac619e29944 \
155ad50cf49cebeeb1499397ac48de58 \
6c623a8eed8450399ec323a72e96855c \
a77d5770902a4260009320daafd1fff2 \
- 40bccaff1b7f661cbe96ef08d485de28 \
- 6cda2bbb58357a02de1074d4ac9e3ab9 \
+ 5589880087d08bb34ca9f492de374efb \
+ ca8d3b0dc2184709ad94f8724cd1dd4f \
5d8c25fc51ffebca67935516c2325860 \
- 50d5a501f911bb592f0dce2d052c2aa8 \
+ 0b767ffd3525ecf09f950393ddc95fe7 \
37a68fa50dab6314a1e02b5a85844f89 \
5988bad1543264a9f48b542192e7de9a \
- b43bc152495c09f4235e884b4d35c7a0 \
+ d3cbe07a4b75b956104c7648b0531d55 \
fbe5da24bd1beef6125107ee41118187 \
64d9f46e9ba78f68c30c486be3d8b7df \
- 685664285b5efffa9256700c1585d605 \
+ 2d9d714c5511e79a9095de03524343cb \
9b28f25fbaa21872ffe3de6c522071bd \
c38f9267ef51843d189f3ad3eb5298ff \
- a3636652e82028995941284b3d74edfd \
+ 88a270d73d42ce3ec51ba8a7582c69e5 \
53928078ab8d120d5459d86d64bbc1ef \
b83e3c4eee8862b3cd0dc8570da6d0c0 \
a4bb1b92a5b098fdaa5694733ea73e7a \
9c02495b380dc51331dcd8789b26cbfb \
8a7c17cffeba1fdd2c8055eaeefbf948 \
6e593895d17d3b0b70d90138fd43b827 \
- daa11fbc0b4fffdb277888294c6ed7be \
- 2167c89732637e0fdc9e50a4cfaac562 \
+ 23c2d55b2debcd452d1320d9e563c8f4 \
+ add448c325d8b5fbd216034bf664d76c \
efdf8f6fcb26ffb336db4d4437c6d537 \
16954b67421d1ca0099c48bbe2cde06c \
7017e24adcde4f4411e9d9585a71e409 \
6f09120aa341d58ea072539176058a00 \
00dda16f17b456d99fb1cafa9125ed22 \
- f73c8388e6e60cb14972b90323e45ebb \
+ 5a9574684952eb362f96d6421b3b70cf \
f2a271be7934b762ed05523370bf14c5 \
- ddd56057140620e25000e27d3d9174cc \
- 8261fb5df8f4203bdfb771a2eb757a10 \
+ 0841f40cd5e8835010a841b1aa02c8b1 \
41e2f0237e471d10d38bc7794d30f51a \
f850751d66c16ea6155809b0097b7851 \
223c59f6c140e81fb734f455df3b538d \
04ee294e8d343a73ef89ed6f07acd9b1 \
0879c0741c3fd424f86b4bc30806db92 \
e900a384ac7dbb320fe6a7279fbfef89 \
- 6708629acf3d2ecb7404e43255d2df85 \
+ d37681de7eb8a22e94064570778e479a \
f38b27b8c9625110a51293658f1cc014 \
4daa973c57624dc3d88eaa49dd86d3e1 \
e972ea58ec203bfa6c79c1207852298b \
- 03f217a2e69340ae2413bbeb7e7fae4b \
- d34c04f9c9c7e410d8c87cdfb3c32759 \
- 1cd9fd464167ffb07c4b9959f917ee53 \
- 55793eb8147603f062fe683c88e0f6f1 \
- dbac36ff3d7669b4fbe15ae70ad4b8a5 \
- 09e5e23866dd421df94d176aa03bfc61 \
- a99833290756a094b27b7dee2fe25333 \
- d98451ed6f17982e9b16a4fabcf5e68e \
+ 609a0e13a5c1257c16fcecfa3d1b2e84 \
+ 2b6f5bf7082672c9e3550290b0f97edc \
+ 077d896569ed558dc871f827298f7714 \
+ 97837379187cff7de19972e4dc416fb0 \
+ d71786c9742b6771a222c9285ef8d416 \
+ 3c3cb3400101cd793def7061c432b8ec \
+ a91da194698f9923ced32fb4d2c015b1 \
+ c63a57a84e0b51be7a819a7989a7a821 \
db96b50050277bf05a3c68534bbb9586 \
e908e1808f2a480449f8d86281ae24ef \
09de9d01e7331ff3da11f58be8bef0df \
0498c4a11448bfc35dc7bb2caa64c753 \
6fea8456dac26da1a185af6b0318dce1 \
- 3f94ee3f8c04b965b49d9788a79dedd1 \
+ f578d00496ac73c80fe7f90c2a847892 \
2376de634160158ece40c4bc2ab3eb41 \
73b177d6d000daaa8f05790414a887a3 \
9e876a38acd8262d97e9302ecb4e0f72 \
@@ -505,16 +503,16 @@ MD5SUM="28b459486ea05fbf442206cba0fc25a0 \
3f265cbde7668f38c1229043475470a9 \
4e50e886c72204c268c15a3230001d71 \
b95760e9133ba1bb456d0f0cef74c9a4 \
- c203037eeb993e291f47f76fdbb7602d \
+ 4f774fa728b562c8d195457a9ca93a57 \
d35e6e01813d7989bae0f1b30163858a \
7dcbc69fc640a9d311102b36db4550c9 \
- 1613d0f9e24d4b05e81748ea1f355f6c \
+ 463f49176227cd56322b86e9e08ca5ad \
2fa2c30a3507a351b931903efd7455bb \
13617c618a898500b53003631c811260 \
- 8b9abf87faaabfcedea7b9ac6381752d \
- 74ea77ca2056e0f68d6aa6f341c5ee3b \
- 2d5e0f96ff0520560a8ab7706ec9f56a \
- aff1d32a769ae7c121627b3106a07345 \
+ 21c5ff56b2c45eb7bac5facbde5812a4 \
+ 36d82005139571d0641d77a084c69cc0 \
+ e96c794b09413a6385abede6b7df704b \
+ 585acef62e72bfa6bf712a966d968cc3 \
69164390cb1498845fcb02f961b5f794 \
9f91863a5386e15032f83278785b9122"
DOWNLOAD_x86_64=""
diff --git a/network/nextcloud-server/README b/network/nextcloud-server/README
index b1ed11c9bd..10d10eccdd 100644
--- a/network/nextcloud-server/README
+++ b/network/nextcloud-server/README
@@ -2,9 +2,8 @@ Nextcloud is a safe home for all your data - community-driven, free and
open source. Nextcloud gives you access to all your files wherever you
are.
-Optional dependency: it will need php81 from /extra in place of
-Slackware's stock php-7.4.x. php82 or postgresql from SBo can also be
-used as the server's database.
+Dependency: it will need php81 or php82 from /extra in place of
+Slackware's stock php-7.4.x.
SlackBuild defaults
diff --git a/network/nextcloud-server/README.SBo b/network/nextcloud-server/README.SBo
index 22f1bc1edf..a49093cca2 100644
--- a/network/nextcloud-server/README.SBo
+++ b/network/nextcloud-server/README.SBo
@@ -5,8 +5,9 @@ Configuration
<VirtualHost *:80>
Protocols h2 h2c http/1.1
<FilesMatch \.php$>
- # using pool /etc/php-fpm.d/nextcloud.conf, port 9001
- SetHandler proxy:fcgi://127.0.0.1:9001
+ # using pool /etc/php-fpm.d/nextcloud.conf. Port 9002 in SetHandler
+ # must match with the one declared in /etc/php-fpm.d/nextcloud.conf
+ SetHandler proxy:fcgi://127.0.0.1:9002
</FilesMatch>
ServerName nextcloud.localhost
@@ -29,21 +30,40 @@ Configuration
</VirtualHost>
You may need to add nextcloud.localhost to your /etc/hosts.
+The nextcloud pool port is 9002. Be sure that it's not already engaged. In this case
+modify it in your /etc/php-fpm.d/nextcloud.conf and in the VirtualHost definition in
+step (1).
-(2) In /etc/httpd/httpd.conf, be sure that mod_rewrite is enabled uncommenting
-"LoadModule rewrite_module ...".
+(2) Be sure that mod_rewrite and proxy_fcgi_module are enabled by uncommenting the
+following lines in your /etc/httpd/httpd.conf
+
+ LoadModule proxy_fcgi_module lib64/httpd/modules/mod_proxy_fcgi.so
+ LoadModule rewrite_module lib64/httpd/modules/mod_rewrite.so
(3) Adjust the nextcloud pool config file /etc/php-fpm.d/nextcloud.conf to your
-needs then restart php-fpm.
+needs, then restart php-fpm and apache.
-(4) Add the missing indexes to the database
+(4) Only in case you are upgrading a Nextcloud installation, add the missing
+indexes to the database, otherwise proceed to step (5):
sudo -u apache /srv/httpd/htdocs/nextcloud/occ db:add-missing-indices
+If you get the following error
+
+ "The current PHP memory limit is below the recommended value of 512MB."
+
+raise the php memory limit in your /etc/php.ini:
+
+ memory_limit = 512M
+
(5) You need to complete setup by visiting this page:
http://nextcloud.localhost
-(6) Continue the configuration following the instructions at
+or, if you prefer to install Nextcloud from command line, by running the following:
+
+ sudo -u apache /srv/httpd/htdocs/nextcloud/occ maintenance:install
+
+(6) Continue the configuration following the instructions at
https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/
diff --git a/network/nextcloud-server/nextcloud.php-fpm b/network/nextcloud-server/nextcloud.php-fpm
index 7828e8d731..164c0d09f1 100644
--- a/network/nextcloud-server/nextcloud.php-fpm
+++ b/network/nextcloud-server/nextcloud.php-fpm
@@ -45,7 +45,7 @@ group = apache
; (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
-listen = 127.0.0.1:9001
+listen = 127.0.0.1:9002
; Set listen(2) backlog.
; Default Value: 511 (-1 on FreeBSD and OpenBSD)
@@ -273,7 +273,7 @@ pm.max_spare_servers = 3
; (IPv6 and IPv4-mapped) on a specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Default Value: value of the listen option
-;pm.status_listen = 127.0.0.1:9001
+pm.status_listen = 127.0.0.1:9003
; The ping URI to call the monitoring page of FPM. If this value is not set, no
; URI will be recognized as a ping page. This could be used to test from outside
diff --git a/network/nginx/nginx.SlackBuild b/network/nginx/nginx.SlackBuild
index 5715d7842d..9c965e6ae9 100644
--- a/network/nginx/nginx.SlackBuild
+++ b/network/nginx/nginx.SlackBuild
@@ -32,7 +32,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nginx
VERSION=${VERSION:-1.28.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -112,7 +112,9 @@ if [ "$NGINX_DYNAMIC" == "yes" ]; then
ADD_MODULE="--add-dynamic-module=$ADDMODULE
--modules-path=/usr/lib${LIBDIRSUFFIX}/$PRGNAM/modules"
else
- ADD_MODULE="--add-module=$ADDMODULE"
+ for module in $ADDMODULE; do
+ ADD_MODULE="$ADD_MODULE --add-module=$module"
+ done
fi
# Enable gperftools support.
diff --git a/network/nm-tray/README b/network/nm-tray/README
new file mode 100644
index 0000000000..7508aadbe2
--- /dev/null
+++ b/network/nm-tray/README
@@ -0,0 +1,6 @@
+nm-tray (Simple Network Manager frontend written in Qt)
+
+nm-tray is a simple NetworkManager front end with information icon
+residing in system tray (like e.g. nm-applet). It's a pure Qt
+application. For interaction with NetworkManager it uses API
+provided by KF5::NetworkManagerQt -> plain DBus communication.
diff --git a/network/nm-tray/doinst.sh b/network/nm-tray/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/network/nm-tray/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/network/nm-tray/nm-tray.SlackBuild b/network/nm-tray/nm-tray.SlackBuild
new file mode 100644
index 0000000000..e41ed30d0d
--- /dev/null
+++ b/network/nm-tray/nm-tray.SlackBuild
@@ -0,0 +1,108 @@
+#!/bin/bash
+
+# Slackware build script for nm-tray
+
+# Copyright 2025 Ashish Kurian Thomas <akts@disroot.org>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=nm-tray
+VERSION=${VERSION:-0.5.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+DOCS="COPYING README.md"
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INSTALL_SYSCONFDIR=/etc \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/nm-tray/nm-tray.info b/network/nm-tray/nm-tray.info
new file mode 100644
index 0000000000..3ef6661ba5
--- /dev/null
+++ b/network/nm-tray/nm-tray.info
@@ -0,0 +1,10 @@
+PRGNAM="nm-tray"
+VERSION="0.5.0"
+HOMEPAGE="https://github.com/palinek/nm-tray"
+DOWNLOAD="https://github.com/palinek/nm-tray/archive/0.5.0/nm-tray-0.5.0.tar.gz"
+MD5SUM="8451c44dd252a9a55a36f6a79cecc9af"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Ashish Kurian Thomas"
+EMAIL="akts@disroot.org"
diff --git a/network/nm-tray/slack-desc b/network/nm-tray/slack-desc
new file mode 100644
index 0000000000..a9b72e6935
--- /dev/null
+++ b/network/nm-tray/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+nm-tray: nm-tray (Simple Network Manager frontend written in Qt)
+nm-tray:
+nm-tray: nm-tray is a simple NetworkManager front end with information icon
+nm-tray: residing in system tray (like e.g. nm-applet). It's a pure Qt
+nm-tray: application. For interaction with NetworkManager it uses API
+nm-tray: provided by KF5::NetworkManagerQt -> plain DBus communication.
+nm-tray:
+nm-tray: homepage: https://github.com/palinek/nm-tray
+nm-tray:
+nm-tray:
+nm-tray:
diff --git a/network/noss/README b/network/noss/README
new file mode 100644
index 0000000000..097d03715f
--- /dev/null
+++ b/network/noss/README
@@ -0,0 +1,7 @@
+noss (RSS/Atom feed reader and aggregator)
+
+noss is a command-line program for aggregating and reading RSS/Atom
+feeds. noss can fetch feed updates, list posts, read posts from the
+command-line, open posts in a browser, and much more.
+
+perl-JSON-XS is an optional dependency for faster JSON processing.
diff --git a/network/noss/noss.SlackBuild b/network/noss/noss.SlackBuild
new file mode 100644
index 0000000000..1bcb34ab1c
--- /dev/null
+++ b/network/noss/noss.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for noss
+
+# Copyright 2025 Samuel Young, MO, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=noss
+VERSION=${VERSION:-1.08}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=WWW-Noss
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+perl Makefile.PL \
+ PREFIX=/usr \
+ INSTALLDIRS=vendor \
+ INSTALLVENDORMAN1DIR=/usr/man/man1 \
+ INSTALLVENDORMAN3DIR=/usr/man/man3
+make
+make test
+make install DESTDIR=$PKG
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+find $PKG -name perllocal.pod \
+ -o -name ".packlist" \
+ -o -name "*.bs" \
+ | xargs rm -f
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ Changes LICENSE README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/noss/noss.info b/network/noss/noss.info
new file mode 100644
index 0000000000..f1a10a5d2c
--- /dev/null
+++ b/network/noss/noss.info
@@ -0,0 +1,10 @@
+PRGNAM="noss"
+VERSION="1.08"
+HOMEPAGE="https://codeberg.org/1-1sam/noss"
+DOWNLOAD="https://cpan.metacpan.org/authors/id/S/SA/SAMYOUNG/WWW-Noss-1.08.tar.gz"
+MD5SUM="6f1ba0c4919b8b7245fece1a11da2a4a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="perl-DBD-SQLite perl-JSON perl-parallel-forkmanager perl-Time-Piece perl-xml-libxml"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/noss/slack-desc b/network/noss/slack-desc
new file mode 100644
index 0000000000..19ec8d4279
--- /dev/null
+++ b/network/noss/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+noss: noss (RSS/Atom feed reader and aggregator)
+noss:
+noss: noss is a command-line program for aggregating and reading RSS/Atom
+noss: feeds. noss can fetch feed updates, list posts, read posts from the
+noss: command-line, open posts in a browser, and much more.
+noss:
+noss:
+noss:
+noss:
+noss: Homepage: https://codeberg.org/1-1sam/noss
+noss:
diff --git a/network/onedrive/onedrive.SlackBuild b/network/onedrive/onedrive.SlackBuild
index 3d992c5935..7f3892fcc0 100644
--- a/network/onedrive/onedrive.SlackBuild
+++ b/network/onedrive/onedrive.SlackBuild
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=onedrive
-VERSION=${VERSION:-2.5.5}
+VERSION=${VERSION:-2.5.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/onedrive/onedrive.info b/network/onedrive/onedrive.info
index 525ad4541a..5fe691f232 100644
--- a/network/onedrive/onedrive.info
+++ b/network/onedrive/onedrive.info
@@ -1,8 +1,8 @@
PRGNAM="onedrive"
-VERSION="2.5.5"
+VERSION="2.5.6"
HOMEPAGE="https://github.com/abraunegg/onedrive/releases"
-DOWNLOAD="https://github.com/abraunegg/onedrive/archive/v2.5.5/onedrive-2.5.5.tar.gz"
-MD5SUM="0646d327244dd6e3f15c81247630a851"
+DOWNLOAD="https://github.com/abraunegg/onedrive/archive/v2.5.6/onedrive-2.5.6.tar.gz"
+MD5SUM="daf612d487299c84242090bfbf789184"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="dmd"
diff --git a/network/opensmtpd/opensmtpd.SlackBuild b/network/opensmtpd/opensmtpd.SlackBuild
index 8f2e7aca39..9b50e9056d 100644
--- a/network/opensmtpd/opensmtpd.SlackBuild
+++ b/network/opensmtpd/opensmtpd.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=opensmtpd
-VERSION=${VERSION:-7.6.0p1}
+VERSION=${VERSION:-7.7.0p0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/opensmtpd/opensmtpd.info b/network/opensmtpd/opensmtpd.info
index 32149ad8d2..4cd686e63a 100644
--- a/network/opensmtpd/opensmtpd.info
+++ b/network/opensmtpd/opensmtpd.info
@@ -1,8 +1,8 @@
PRGNAM="opensmtpd"
-VERSION="7.6.0p1"
+VERSION="7.7.0p0"
HOMEPAGE="https://opensmtpd.org/"
-DOWNLOAD="https://www.opensmtpd.org/archives/opensmtpd-7.6.0p1.tar.gz"
-MD5SUM="1d2e0336b74eda126e01774991053a47"
+DOWNLOAD="https://www.opensmtpd.org/archives/opensmtpd-7.7.0p0.tar.gz"
+MD5SUM="aa178ba1217d91b34ca2b5bc2296942f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/profanity/fix-py_xdecref-macro-usage.patch b/network/profanity/fix-py_xdecref-macro-usage.patch
new file mode 100644
index 0000000000..13ee455ad6
--- /dev/null
+++ b/network/profanity/fix-py_xdecref-macro-usage.patch
@@ -0,0 +1,32 @@
+Fix the following build issue [1] that was introduced by [2].
+
+ src/plugins/python_plugins.c: In function 'python_env_init':
+ src/plugins/python_plugins.c:98:91: error: 'Py_XDECREF' undeclared
+ (first use in this function); did you mean 'Py_DecRef'?
+
+[1]
+https://github.com/profanity-im/profanity/issues/2043
+
+[2]
+https://github.com/profanity-im/profanity/commit/c0da36c4
+
+--- a/src/plugins/python_plugins.c 2025-07-31 15:18:09
++++ b/src/plugins/python_plugins.c 2025-07-31 15:18:17
+@@ -86,10 +86,16 @@ python_get_version_number(void)
+ return version_number;
+ }
+
++static void
++_unref_module(PyObject* module)
++{
++ Py_XDECREF(module);
++}
++
+ void
+ python_env_init(void)
+ {
+- loaded_modules = g_hash_table_new_full(g_str_hash, g_str_equal, free, (GDestroyNotify)Py_XDECREF);
++ loaded_modules = g_hash_table_new_full(g_str_hash, g_str_equal, free, (GDestroyNotify)_unref_module);
+
+ python_init_prof();
+
diff --git a/network/profanity/profanity.SlackBuild b/network/profanity/profanity.SlackBuild
index 9e458a875a..accb200df9 100644
--- a/network/profanity/profanity.SlackBuild
+++ b/network/profanity/profanity.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=profanity
-VERSION=${VERSION:-0.14.0}
+VERSION=${VERSION:-0.15.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,6 +79,11 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Fix the build error on slackware64-15.0
+patch -p1 --verbose < $CWD/fix-py_xdecref-macro-usage.patch
+
+./bootstrap.sh
+./autogen.sh
CFLAGS="$SLKCFLAGS -fcommon" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/network/profanity/profanity.info b/network/profanity/profanity.info
index 129fd03a60..2bc473bd11 100644
--- a/network/profanity/profanity.info
+++ b/network/profanity/profanity.info
@@ -1,10 +1,10 @@
PRGNAM="profanity"
-VERSION="0.14.0"
+VERSION="0.15.0"
HOMEPAGE="http://www.profanity.im/"
-DOWNLOAD="https://github.com/profanity-im/profanity/releases/download/0.14.0/profanity-0.14.0.tar.gz"
-MD5SUM="ecadfd67f43d96841b68781a7254552a"
+DOWNLOAD="https://github.com/profanity-im/profanity/archive/0.15.0/profanity-0.15.0.tar.gz"
+MD5SUM="9882296143dfa51cf3aa2ab3c486c974"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libstrophe"
-MAINTAINER="Pedro R.M. Júnior"
-EMAIL="pedrormjunior@gmail.com"
+MAINTAINER="Shahab Vahedi"
+EMAIL="list+sbo@vahedi.org"
diff --git a/network/protonmail-bridge/protonmail-bridge.SlackBuild b/network/protonmail-bridge/protonmail-bridge.SlackBuild
index 4d5682aa54..b8da064b7d 100644
--- a/network/protonmail-bridge/protonmail-bridge.SlackBuild
+++ b/network/protonmail-bridge/protonmail-bridge.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=protonmail-bridge
-VERSION=${VERSION:-3.17.0}
+VERSION=${VERSION:-3.21.2}
DEBVERSION=${DEBVERSION:--1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/protonmail-bridge/protonmail-bridge.info b/network/protonmail-bridge/protonmail-bridge.info
index 6b927032c2..7c4adad406 100644
--- a/network/protonmail-bridge/protonmail-bridge.info
+++ b/network/protonmail-bridge/protonmail-bridge.info
@@ -1,10 +1,10 @@
PRGNAM="protonmail-bridge"
-VERSION="3.17.0"
+VERSION="3.21.2"
HOMEPAGE="https://proton.me/mail/bridge"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://proton.me/download/bridge/protonmail-bridge_3.17.0-1_amd64.deb"
-MD5SUM_x86_64="87c27479ef8552ad3b27c6149e23e01c"
+DOWNLOAD_x86_64="https://proton.me/download/bridge/protonmail-bridge_3.21.2-1_amd64.deb"
+MD5SUM_x86_64="921a71cb76181c50a97f7bacabc8b7b6"
REQUIRES=""
MAINTAINER="Erich Ritz"
EMAIL="erich.public@protonmail.com"
diff --git a/network/quark/README b/network/quark/README
new file mode 100644
index 0000000000..5dfc04769f
--- /dev/null
+++ b/network/quark/README
@@ -0,0 +1,24 @@
+quark (simple HTTP server for static content)
+
+quark is an extremely small and simple HTTP GET/HEAD-only web server
+for static content. The goal of this project is to do one thing and do
+it well, namely serving static web directories and doing that right.
+
+If you want to use a custom config.h to build quark, copy config.def.h
+to config.h (in the SlackBuild directory) and edit it. The SlackBuild
+will use the config.h if it exists.
+
+quark does not natively support TLS. You can use a TLS reverse proxy
+such as tlstunnel, hitch, or stunnel to add TLS support to quark.
+
+The package doesn't include a startup script. To start quark on
+boot, edit /etc/rc.d/rc.local and add a section like this:
+
+if [ -x /usr/bin/quark ]; then
+ nohup /usr/bin/quark \
+ -l -p 80 -u apache -g apache -d /var/www/htdocs \
+ 1>/var/log/quark.log 2>&1 &
+fi
+
+The example above starts quark as an apache replacement. You can
+change the command-line arguments as needed, for your purposes.
diff --git a/network/quark/config.def.h b/network/quark/config.def.h
new file mode 100644
index 0000000000..56f62aa62d
--- /dev/null
+++ b/network/quark/config.def.h
@@ -0,0 +1,39 @@
+#ifndef CONFIG_H
+#define CONFIG_H
+
+#define BUFFER_SIZE 4096
+#define FIELD_MAX 200
+
+/* mime-types */
+static const struct {
+ char *ext;
+ char *type;
+} mimes[] = {
+ { "xml", "application/xml; charset=utf-8" },
+ { "xhtml", "application/xhtml+xml; charset=utf-8" },
+ { "html", "text/html; charset=utf-8" },
+ { "htm", "text/html; charset=utf-8" },
+ { "css", "text/css; charset=utf-8" },
+ { "txt", "text/plain; charset=utf-8" },
+ { "md", "text/plain; charset=utf-8" },
+ { "c", "text/plain; charset=utf-8" },
+ { "h", "text/plain; charset=utf-8" },
+ { "gz", "application/x-gtar" },
+ { "tar", "application/tar" },
+ { "pdf", "application/x-pdf" },
+ { "png", "image/png" },
+ { "gif", "image/gif" },
+ { "jpeg", "image/jpg" },
+ { "jpg", "image/jpg" },
+ { "iso", "application/x-iso9660-image" },
+ { "webp", "image/webp" },
+ { "svg", "image/svg+xml; charset=utf-8" },
+ { "flac", "audio/flac" },
+ { "mp3", "audio/mpeg" },
+ { "ogg", "audio/ogg" },
+ { "mp4", "video/mp4" },
+ { "ogv", "video/ogg" },
+ { "webm", "video/webm" },
+};
+
+#endif /* CONFIG_H */
diff --git a/network/quark/git2tarxz.sh b/network/quark/git2tarxz.sh
new file mode 100644
index 0000000000..895c631e48
--- /dev/null
+++ b/network/quark/git2tarxz.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version
+# number.
+
+# Note that this script doesn't need to be run as root. It does
+# need to be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create
+# a tarball of. With no arg, HEAD is used.
+
+PRGNAM=quark
+CLONE_URL=https://git.suckless.org/quark
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/network/quark/quark.SlackBuild b/network/quark/quark.SlackBuild
new file mode 100644
index 0000000000..b5b3369aff
--- /dev/null
+++ b/network/quark/quark.SlackBuild
@@ -0,0 +1,72 @@
+#!/bin/bash
+
+# Slackware build script for quark
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=quark
+VERSION=${VERSION:-20230226_5ad0df9}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+elif [ "$ARCH" = "x86_64" -o "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+else
+ SLKCFLAGS="-O2"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod -h 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod -h 644 {} +
+
+[ -e $CWD/config.h ] && cat $CWD/config.h > config.h
+
+sed -i "s,-Os,$SLKCFLAGS," config.mk
+make
+make install PREFIX=/usr MANPREFIX=/usr/man DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a config.h LICENSE $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/quark/quark.info b/network/quark/quark.info
new file mode 100644
index 0000000000..ddb34efa3d
--- /dev/null
+++ b/network/quark/quark.info
@@ -0,0 +1,10 @@
+PRGNAM="quark"
+VERSION="20230226_5ad0df9"
+HOMEPAGE="https://tools.suckless.org/quark/"
+DOWNLOAD="https://slackware.uk/~urchlay/src/quark-20230226_5ad0df9.tar.xz"
+MD5SUM="0a576fbee2c7dbc0cf99b4fd517ead9b"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/quark/slack-desc b/network/quark/slack-desc
new file mode 100644
index 0000000000..111bfe4fa9
--- /dev/null
+++ b/network/quark/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+quark: quark (simple HTTP server for static content)
+quark:
+quark: quark is an extremely small and simple HTTP GET/HEAD-only web server
+quark: for static content. The goal of this project is to do one thing and do
+quark: it well, namely serving static web directories and doing that right.
+quark:
+quark: quark does not natively support TLS. You can use a TLS reverse proxy
+quark: such as tlstunnel, hitch, or stunnel to add TLS support to quark.
+quark:
+quark:
+quark:
diff --git a/network/rclone/rclone.SlackBuild b/network/rclone/rclone.SlackBuild
index afa0bafa2c..34c876abd6 100644
--- a/network/rclone/rclone.SlackBuild
+++ b/network/rclone/rclone.SlackBuild
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rclone
-VERSION=${VERSION:-1.69.2}
+VERSION=${VERSION:-1.71.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/rclone/rclone.info b/network/rclone/rclone.info
index 62a370c60f..ce838ab504 100644
--- a/network/rclone/rclone.info
+++ b/network/rclone/rclone.info
@@ -1,10 +1,10 @@
PRGNAM="rclone"
-VERSION="1.69.2"
+VERSION="1.71.0"
HOMEPAGE="https://rclone.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/rclone/rclone/releases/download/v1.69.2/rclone-v1.69.2-linux-amd64.deb"
-MD5SUM_x86_64="f87b7270d520e3a119dea8226fd00986"
+DOWNLOAD_x86_64="https://github.com/rclone/rclone/releases/download/v1.71.0/rclone-v1.71.0-linux-amd64.deb"
+MD5SUM_x86_64="8c71fb13559affc14fbb055564285504"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/repo/README b/network/repo/README
new file mode 100644
index 0000000000..cc8fbf7a17
--- /dev/null
+++ b/network/repo/README
@@ -0,0 +1,2 @@
+The Multiple Git Repository Tool from
+the Android Open Source Project
diff --git a/network/repo/repo.SlackBuild b/network/repo/repo.SlackBuild
new file mode 100644
index 0000000000..52bcff6658
--- /dev/null
+++ b/network/repo/repo.SlackBuild
@@ -0,0 +1,71 @@
+#!/bin/bash
+
+# Slackware build script for repo
+
+# Copyright 2025 Isaac David Orozco Delgado (Reisy RedPanda) Costa Rica
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=repo
+VERSION=${VERSION:-2.54}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+ARCHBUILD=${ARCHBUILD:-1}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-$ARCHBUILD-any.pkg.tar.zst
+cd usr
+
+mkdir -p $PKG/usr/bin
+mv bin/repo $PKG/usr/bin
+
+mkdir -p $PKG/usr/man
+mv share/man/man1 $PKG/usr/man/
+
+mkdir -p $PKG/usr/share
+mv share/bash-completion $PKG/usr/share
+
+mkdir -p $PKG/usr/doc
+mv share/doc/repo $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/repo/repo.info b/network/repo/repo.info
new file mode 100644
index 0000000000..e289385131
--- /dev/null
+++ b/network/repo/repo.info
@@ -0,0 +1,10 @@
+PRGNAM="repo"
+VERSION="2.54"
+HOMEPAGE="https://android.googlesource.com/tools/repo"
+DOWNLOAD="https://mirror.moson.org/arch/extra/os/x86_64/repo-2.54-1-any.pkg.tar.zst"
+MD5SUM="1c3e05ac44cdbdd97946235066af6fc1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Isaac David Orozco Delgado (Reisy RedPanda)"
+EMAIL="reisimineredpanda@gmail.com"
diff --git a/network/repo/slack-desc b/network/repo/slack-desc
new file mode 100644
index 0000000000..8f8a803780
--- /dev/null
+++ b/network/repo/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler-------------------------------------------------------------|
+repo: repo (The Multiple Git Repository Tool from the Android Open Source Project)
+repo:
+repo: Tool for download Android source code and relationated projects
+repo: as custom rom's and recovery's code
+repo:
+repo: Example:
+repo: LineageOS
+repo: Team Win Recovery Project (TWRP)
+repo:
+repo: https://android.googlesource.com/tools/repo
+repo:
diff --git a/network/resilio-sync/resilio-sync.SlackBuild b/network/resilio-sync/resilio-sync.SlackBuild
index a435f808fa..470227f9ec 100644
--- a/network/resilio-sync/resilio-sync.SlackBuild
+++ b/network/resilio-sync/resilio-sync.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=resilio-sync
-VERSION=${VERSION:-3.0.3.1065}
+VERSION=${VERSION:-3.1.0.1073}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/resilio-sync/resilio-sync.info b/network/resilio-sync/resilio-sync.info
index 1f47654b45..887647c1ba 100644
--- a/network/resilio-sync/resilio-sync.info
+++ b/network/resilio-sync/resilio-sync.info
@@ -1,10 +1,10 @@
PRGNAM="resilio-sync"
-VERSION="3.0.3.1065"
+VERSION="3.1.0.1073"
HOMEPAGE="https://www.resilio.com/individuals/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://download-cdn.resilio.com/3.0.3.1065/debian/amd64/0/resilio-sync_3.0.3.1065-1_amd64.deb"
-MD5SUM_x86_64="340007e107b647b833d6fc7132bc0c06"
+DOWNLOAD_x86_64="https://download-cdn.resilio.com/3.1.0.1073/packages/deb/resilio-sync_3.1.0.1073-1_amd64.deb"
+MD5SUM_x86_64="befe76b60c2cb2288af9a84ff041d61a"
REQUIRES=""
MAINTAINER="Spycrowsoft"
EMAIL="spycrowsoft [ at ] gmail [ dot ] com"
diff --git a/network/rspamd/rspamd.SlackBuild b/network/rspamd/rspamd.SlackBuild
index f119ab8d30..02d24e01dc 100644
--- a/network/rspamd/rspamd.SlackBuild
+++ b/network/rspamd/rspamd.SlackBuild
@@ -34,8 +34,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rspamd
-VERSION=${VERSION:-3.11.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.12.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/rspamd/rspamd.info b/network/rspamd/rspamd.info
index 01614fef5d..46c3bf826b 100644
--- a/network/rspamd/rspamd.info
+++ b/network/rspamd/rspamd.info
@@ -1,8 +1,8 @@
PRGNAM="rspamd"
-VERSION="3.11.1"
+VERSION="3.12.0"
HOMEPAGE="https://rspamd.com"
-DOWNLOAD="https://github.com/rspamd/rspamd/archive/3.11.1/rspamd-3.11.1.tar.gz"
-MD5SUM="b9dbae75d993d990fb30d1221f2befa4"
+DOWNLOAD="https://github.com/rspamd/rspamd/archive/3.12.0/rspamd-3.12.0.tar.gz"
+MD5SUM="032f7dc1e9c75a2df91ac7f64382b7a1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="luajit redis hyperscan"
diff --git a/network/rtorrent/rtorrent.SlackBuild b/network/rtorrent/rtorrent.SlackBuild
index 13edbed0ca..3a6dd06138 100644
--- a/network/rtorrent/rtorrent.SlackBuild
+++ b/network/rtorrent/rtorrent.SlackBuild
@@ -14,6 +14,7 @@
# Original version had no license; modified version is
# licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20250902 bkw: updated for v0.15.6.
# 20250124 bkw: updated for v0.15.1
# 20241124 bkw: updated for v0.10.0.
# 20240917 bkw:
@@ -23,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rtorrent
-VERSION=${VERSION:-0.15.1}
+VERSION=${VERSION:-0.15.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/rtorrent/rtorrent.info b/network/rtorrent/rtorrent.info
index 7172e8eaa4..93edf258f0 100644
--- a/network/rtorrent/rtorrent.info
+++ b/network/rtorrent/rtorrent.info
@@ -1,8 +1,8 @@
PRGNAM="rtorrent"
-VERSION="0.15.1"
+VERSION="0.15.6"
HOMEPAGE="https://github.com/rakshasa/rtorrent"
-DOWNLOAD="https://github.com/rakshasa/rtorrent/releases/download/v0.15.1/rtorrent-0.15.1.tar.gz"
-MD5SUM="2b2a7f832ad3e0e026ab1bd6d1c15866"
+DOWNLOAD="https://github.com/rakshasa/rtorrent/releases/download/v0.15.6/rtorrent-0.15.6.tar.gz"
+MD5SUM="4482769a0b3a4b1f2d01de1c7b805b34"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libtorrent"
diff --git a/network/rustdesk-opt/README b/network/rustdesk-opt/README
index bf83174d21..085fe9e939 100644
--- a/network/rustdesk-opt/README
+++ b/network/rustdesk-opt/README
@@ -14,6 +14,7 @@ maintainer.
Note: The source files below ending with -deps.tar.gz are optional.
They contain cache files and dependencies that enable offline building.
If they are not present when you run the SlackBuild, the necessary
-files will be automatically downloaded from the internet.
+files will be automatically downloaded from the internet. These files
+are quite large.
This script installs RustDesk into /opt.
diff --git a/network/rustdesk-opt/rustdesk-opt.SlackBuild b/network/rustdesk-opt/rustdesk-opt.SlackBuild
index c246e330fe..a1fa9894c4 100644
--- a/network/rustdesk-opt/rustdesk-opt.SlackBuild
+++ b/network/rustdesk-opt/rustdesk-opt.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for rustdesk-opt
-# Copyright 2024 Olivier Brouckaert <olivier.b@i-services.be>, Brussels, Belgium
+# Copyright 2024-2025 Olivier Brouckaert <olivier.b@i-services.be>, Brussels, Belgium
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rustdesk-opt
SRCNAM=rustdesk
-VERSION=${VERSION:-1.3.9}
+VERSION=${VERSION:-1.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/rustdesk-opt/rustdesk-opt.info b/network/rustdesk-opt/rustdesk-opt.info
index 2f1b9ac0db..11c4640f13 100644
--- a/network/rustdesk-opt/rustdesk-opt.info
+++ b/network/rustdesk-opt/rustdesk-opt.info
@@ -1,18 +1,18 @@
PRGNAM="rustdesk-opt"
-VERSION="1.3.9"
+VERSION="1.4.1"
HOMEPAGE="https://www.rustdesk.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
DOWNLOAD_x86_64="https://github.com/microsoft/vcpkg/archive/2023.04.15/vcpkg-2023.04.15.tar.gz \
- https://github.com/rustdesk/rustdesk/archive/1.3.9/rustdesk-1.3.9.tar.gz \
+ https://github.com/rustdesk/rustdesk/archive/1.4.1/rustdesk-1.4.1.tar.gz \
https://fichiers.i-services.be/SBo/rustdesk/vcpkg-2023.04.15-deps.tar.gz \
- https://fichiers.i-services.be/SBo/rustdesk/rustdesk-1.3.9-deps.tar.gz \
+ https://fichiers.i-services.be/SBo/rustdesk/rustdesk-1.4.1-deps.tar.gz \
https://github.com/microsoft/vcpkg-tool/releases/download/2023-04-07/vcpkg-glibc \
https://raw.githubusercontent.com/c-smile/sciter-sdk/master/bin.lnx/x64/libsciter-gtk.so"
MD5SUM_x86_64="e57e6e2dd75d71fa96829e6c14eeb6e4 \
- d3930a82249bf80d5888d8fb4a9bc1cb \
+ 621663863c75196f2611a1165573390e \
c730d6f700fc0175be13e1d8f9cf4b4f \
- 4b11c203abd2b49ec87231281c96f320 \
+ b49cc0bd1933f10c0f801ebc1444c6de \
7537c79abf08b66875389843c6c2b71a \
91a95f199569afe4fbf9e433853f8f97"
REQUIRES="cmake-opt rust-opt xdotool"
diff --git a/network/rustdesk/rustdesk.SlackBuild b/network/rustdesk/rustdesk.SlackBuild
index eb9d0772e5..4b0573b15f 100644
--- a/network/rustdesk/rustdesk.SlackBuild
+++ b/network/rustdesk/rustdesk.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rustdesk
-VERSION=${VERSION:-1.3.9}
+VERSION=${VERSION:-1.4.0}
BUILD=${BUILD:-1}
RPMBUILD=${RPMBUILD:-0}
TAG=${TAG:-_SBo}
diff --git a/network/rustdesk/rustdesk.info b/network/rustdesk/rustdesk.info
index 12ee2fdcaf..93d83d359a 100644
--- a/network/rustdesk/rustdesk.info
+++ b/network/rustdesk/rustdesk.info
@@ -1,10 +1,10 @@
PRGNAM="rustdesk"
-VERSION="1.3.9"
+VERSION="1.4.0"
HOMEPAGE="https://rustdesk.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/rustdesk/rustdesk/releases/download/1.3.9/rustdesk-1.3.9-0.x86_64.rpm"
-MD5SUM_x86_64="703eab00072cc27a9029c1cb65a47049"
+DOWNLOAD_x86_64="https://github.com/rustdesk/rustdesk/releases/download/1.4.0/rustdesk-1.4.0-0.x86_64.rpm"
+MD5SUM_x86_64="a980d5aff3af18303b761e050bdd3926"
REQUIRES="xdotool"
MAINTAINER="Rodrigo Lira"
EMAIL="eurodrigolira@gmail.com"
diff --git a/network/s/s.SlackBuild b/network/s/s.SlackBuild
index cb835b0aa9..658b04a874 100644
--- a/network/s/s.SlackBuild
+++ b/network/s/s.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=s
-VERSION=${VERSION:-0.7.1}
+VERSION=${VERSION:-0.7.3}
SRCNAM32="s-linux_386"
SRCNAM64="s-linux_amd64"
BUILD=${BUILD:-1}
diff --git a/network/s/s.info b/network/s/s.info
index d141710034..ccbf8d4202 100644
--- a/network/s/s.info
+++ b/network/s/s.info
@@ -1,10 +1,10 @@
PRGNAM="s"
-VERSION="0.7.1"
+VERSION="0.7.3"
HOMEPAGE="https://github.com/zquestz/s"
-DOWNLOAD="https://github.com/zquestz/s/releases/download/v0.7.1/s-linux_386.zip"
-MD5SUM="19131cb54ea5cb024d990d55eb974548"
-DOWNLOAD_x86_64="https://github.com/zquestz/s/releases/download/v0.7.1/s-linux_amd64.zip"
-MD5SUM_x86_64="bb77e43c261361fe6b85119cecd6d583"
+DOWNLOAD="https://github.com/zquestz/s/releases/download/v0.7.3/s-linux_386.zip"
+MD5SUM="3cd16b94ea157cdf5c4e9d3149425fca"
+DOWNLOAD_x86_64="https://github.com/zquestz/s/releases/download/v0.7.3/s-linux_amd64.zip"
+MD5SUM_x86_64="fd6ee6971ce45f111075313d03de723f"
REQUIRES=""
MAINTAINER="Ioannis Anagnostakis"
EMAIL="rizitis@gmail.com"
diff --git a/network/shadowsocks-rust/shadowsocks-rust.SlackBuild b/network/shadowsocks-rust/shadowsocks-rust.SlackBuild
index 3b7f6f6806..5b644fddfb 100644
--- a/network/shadowsocks-rust/shadowsocks-rust.SlackBuild
+++ b/network/shadowsocks-rust/shadowsocks-rust.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=shadowsocks-rust
-VERSION=${VERSION:-1.23.2}
+VERSION=${VERSION:-1.23.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -105,7 +105,7 @@ CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
RUSTFLAGS="-C target-cpu=native" \
CARGO_HOME=".cargo" \
-cargo build --offline --release
+cargo build --frozen --release
make install DESTDIR=$PKG TARGET=release PREFIX=/usr/bin
# Strip binaries and libraries
diff --git a/network/shadowsocks-rust/shadowsocks-rust.info b/network/shadowsocks-rust/shadowsocks-rust.info
index 0c2716d5d4..c70b548c93 100644
--- a/network/shadowsocks-rust/shadowsocks-rust.info
+++ b/network/shadowsocks-rust/shadowsocks-rust.info
@@ -1,10 +1,10 @@
PRGNAM="shadowsocks-rust"
-VERSION="1.23.2"
+VERSION="1.23.5"
HOMEPAGE="https://github.com/shadowsocks/shadowsocks-rust"
-DOWNLOAD="https://github.com/shadowsocks/shadowsocks-rust/archive/v1.23.2/shadowsocks-rust-1.23.2.tar.gz \
- https://sbo.t-rg.ws/shadowsocks-rust-1.23.2-vendored-sources.tar.xz"
-MD5SUM="f978e58cd36f18375f59ada12f3ebf90 \
- 4f209e73a4b710828fb74d3db1dba964"
+DOWNLOAD="https://github.com/shadowsocks/shadowsocks-rust/archive/v1.23.5/shadowsocks-rust-1.23.5.tar.gz \
+ https://sbo.t-rg.ws/shadowsocks-rust-1.23.5-vendored-sources.tar.xz"
+MD5SUM="1848886fe3f9a6f3125e722da610dddc \
+ 0257b8d08ec79faf2e674707aa68dcf2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="rust-opt"
diff --git a/network/signal-desktop/signal-desktop.SlackBuild b/network/signal-desktop/signal-desktop.SlackBuild
index ea2d732394..8de053a7dc 100644
--- a/network/signal-desktop/signal-desktop.SlackBuild
+++ b/network/signal-desktop/signal-desktop.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=signal-desktop
-VERSION=${VERSION:-7.52.0}
+VERSION=${VERSION:-7.66.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/signal-desktop/signal-desktop.info b/network/signal-desktop/signal-desktop.info
index 4b2ea617cb..b5fba2cd86 100644
--- a/network/signal-desktop/signal-desktop.info
+++ b/network/signal-desktop/signal-desktop.info
@@ -1,10 +1,10 @@
PRGNAM="signal-desktop"
-VERSION="7.52.0"
+VERSION="7.66.0"
HOMEPAGE="https://signal.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_7.52.0_amd64.deb"
-MD5SUM_x86_64="7c0da34fc8630484d8fe647d836bd2eb"
+DOWNLOAD_x86_64="https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_7.66.0_amd64.deb"
+MD5SUM_x86_64="3c5b01175a19038509fee911ae230208"
REQUIRES=""
MAINTAINER="ArTourter"
EMAIL="artourter@gmail.com"
diff --git a/network/slack/slack.SlackBuild b/network/slack/slack.SlackBuild
index e32de60752..3526b14a78 100644
--- a/network/slack/slack.SlackBuild
+++ b/network/slack/slack.SlackBuild
@@ -31,11 +31,11 @@ cd $(dirname $0) ; CWD=$(pwd)
# A trick to find the latest slack package details, using snap meta data
# curl -sH Snap-Device-Series:\ 16 https://api.snapcraft.io/v2/snaps/info/slack | json_pp
PRGNAM=slack
-VERSION=${VERSION:-4.43.51}
+VERSION=${VERSION:-4.45.69}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-SNAPREVISION=${SNAPREVISION:-195}
+SNAPREVISION=${SNAPREVISION:-212}
SNAPPKG=JUJH91Ved74jd4ZgJCpzMBtYbPOzTlsD_$SNAPREVISION.snap
if [ -z "$ARCH" ]; then
diff --git a/network/slack/slack.info b/network/slack/slack.info
index 2c5cda01b6..3c0bc862d8 100644
--- a/network/slack/slack.info
+++ b/network/slack/slack.info
@@ -1,10 +1,10 @@
PRGNAM="slack"
-VERSION="4.43.51"
+VERSION="4.45.69"
HOMEPAGE="https://slack.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://api.snapcraft.io/api/v1/snaps/download/JUJH91Ved74jd4ZgJCpzMBtYbPOzTlsD_195.snap"
-MD5SUM_x86_64="a95dab04c2f8923339aea1934f260e7a"
+DOWNLOAD_x86_64="https://api.snapcraft.io/api/v1/snaps/download/JUJH91Ved74jd4ZgJCpzMBtYbPOzTlsD_212.snap"
+MD5SUM_x86_64="8cf167c91b5d6f8e3dafe8b51907883f"
REQUIRES=""
MAINTAINER="Ruari Oedegaard"
EMAIL="sbo@ruari.com"
diff --git a/network/snac2/snac2.SlackBuild b/network/snac2/snac2.SlackBuild
index 0ab1fb73b4..2303a18de3 100644
--- a/network/snac2/snac2.SlackBuild
+++ b/network/snac2/snac2.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=snac2
-VERSION=${VERSION:-2.73}
+VERSION=${VERSION:-2.79}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/snac2/snac2.info b/network/snac2/snac2.info
index 9acb12e9a2..3998b39c8d 100644
--- a/network/snac2/snac2.info
+++ b/network/snac2/snac2.info
@@ -1,8 +1,8 @@
PRGNAM="snac2"
-VERSION="2.73"
+VERSION="2.79"
HOMEPAGE="https://codeberg.org/grunfink/snac2"
-DOWNLOAD="https://codeberg.org/grunfink/snac2/archive/2.73.tar.gz"
-MD5SUM="8f26baa0c632c02ad20bdc6536ca5f68"
+DOWNLOAD="https://codeberg.org/grunfink/snac2/archive/2.79.tar.gz"
+MD5SUM="b597d6eafb059eb3f9cc8e09f3de768d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/spice/spice.SlackBuild b/network/spice/spice.SlackBuild
index 4a95f53261..ce3fa5ef5b 100644
--- a/network/spice/spice.SlackBuild
+++ b/network/spice/spice.SlackBuild
@@ -1,7 +1,8 @@
#!/bin/bash
# Slackware build script for spice
-# Copyright 2013-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+
+# Copyright 2013-2025 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=spice
-VERSION=${VERSION:-0.15.2}
+VERSION=${VERSION:-0.16.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -37,9 +38,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -77,7 +75,6 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
diff --git a/network/spice/spice.info b/network/spice/spice.info
index 1aca0b1790..3fbb3e0ff8 100644
--- a/network/spice/spice.info
+++ b/network/spice/spice.info
@@ -1,8 +1,8 @@
PRGNAM="spice"
-VERSION="0.15.2"
+VERSION="0.16.0"
HOMEPAGE="https://www.spice-space.org"
-DOWNLOAD="https://www.spice-space.org/download/releases/spice-server/spice-0.15.2.tar.bz2"
-MD5SUM="1de1e9157a1e2396884017978e7cf086"
+DOWNLOAD="https://www.spice-space.org/download/releases/spice-server/spice-0.16.0.tar.bz2"
+MD5SUM="435f4b112fdf301152a26dbcfbf2ec22"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="spice-protocol"
diff --git a/network/sslh/README b/network/sslh/README
index 085d021b28..df3f42e0f2 100644
--- a/network/sslh/README
+++ b/network/sslh/README
@@ -1,11 +1,34 @@
-sslh accepts connections on specified ports, and forwards
-them further based on tests performed on the first data
-packet sent by the remote client.
-
-Probes for HTTP, SSL, SSH, OpenVPN, tinc, XMPP are
-implemented, and any other protocol that can be tested using
-a regular expression, can be recognised. A typical use case
-is to allow serving several services on port 443 (e.g. to
-connect to SSH from inside a corporate firewall, which
-almost never block port 443) while still serving HTTPS on
-that port.
+sslh (applicative protocol multiplexer)
+
+sslh accepts connections on specified ports, and forwards them further
+based on tests performed on the first data packet sent by the remote
+client.
+
+Probes for HTTP, SSL, SSH, OpenVPN, tinc, XMPP are implemented.
+Any other protocol that can be tested using a regular expression can
+be recognised. A typical use case is to allow serving several services
+on port 443 (e.g. to connect to SSH from inside a corporate firewall,
+which almost never block port 443) while still serving HTTPS on that
+port.
+
+There's a tutorial on using sslh, here:
+
+https://www.unixmen.com/sslh-a-sslssh-multiplexer-for-linux/
+
+To start sslh as a daemon at boot, add this code to
+/etc/rc.d/rc.local:
+
+[ -x /etc/rc.d/rc.sslh ] && /etc/rc.d/rc.sslh start
+
+Before doing this, it's advisable to have a look at the example config
+files in /etc/sslh/*.cfg. The actual config file is sslh.cfg; the
+others are just examples.
+
+Optional dependencies:
+
+libev - needed for sslh-ev executable. Most people won't need this; see
+the sslh documentation for details. Will be autodetected.
+
+libbsd - allows sslh-fork to change its process title (as shown in
+'ps'), so each forked process shows what protocol and what connection
+it is serving. Autodetected.
diff --git a/network/sslh/doinst.sh b/network/sslh/doinst.sh
index 21de93c717..b8df211d5c 100644
--- a/network/sslh/doinst.sh
+++ b/network/sslh/doinst.sh
@@ -1,14 +1,11 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
- # If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
- # toss the redundant copy
rm $NEW
fi
- # Otherwise, we leave the .new copy for the admin to consider...
}
preserve_perms() {
@@ -24,3 +21,4 @@ preserve_perms() {
preserve_perms etc/rc.d/rc.sslh.new
config etc/sslh/sslh.cfg.new
+config etc/default/sslh.new
diff --git a/network/sslh/git2tarxz.sh b/network/sslh/git2tarxz.sh
new file mode 100644
index 0000000000..3430dbcb6a
--- /dev/null
+++ b/network/sslh/git2tarxz.sh
@@ -0,0 +1,46 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version
+# number.
+
+# Note that this script doesn't need to be run as root. It does
+# need to be able to write to the current directory it's run from.
+
+# Takes one optional argument, which is the commit or tag to create
+# a tarball of. With no arg, HEAD is used.
+
+PRGNAM=sslh
+CLONE_URL=https://github.com/yrutschle/sslh
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+if [ "$1" != "" ]; then
+ git reset --hard "$1" || exit 1
+fi
+
+VERTAG=$( git tag --sort=version:refname | tail -1 | sed 's,^v,,' )
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR $PRGNAM-$VERSION
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=$VERSION"
diff --git a/network/sslh/rc.sslh b/network/sslh/rc.sslh
index 74c95ca56d..e375c67b0b 100644
--- a/network/sslh/rc.sslh
+++ b/network/sslh/rc.sslh
@@ -5,30 +5,34 @@
# Start/stop/restart the sslh daemon.
#
+PATH="/bin:/sbin:/usr/bin:/usr/sbin"
+export PATH
+
NAME="sslh"
-config="/etc/${NAME}/${NAME}.cfg"
pidfile="/var/run/${NAME}.pid"
+source /etc/default/$NAME || exit 1
+
start() {
if [[ -z $(pidof -o %PPID $NAME) ]]; then
rm $pidfile &>/dev/null
fi
if [ ! -f $pidfile ]; then
- echo "Start services: $NAME"
- ${NAME} -F $config >/dev/null 2>&1
+ echo "Starting SSL multiplexer: $NAME $SSLH_OPTS"
+ $NAME $SSLH_OPTS >/dev/null 2>&1
else
- echo "Services $NAME already running."
+ echo "Service $NAME already running."
fi
}
stop() {
if [ -f $pidfile ]; then
- echo "Stop services: $NAME"
+ echo "Stopping $NAME"
kill $(cat $pidfile) >/dev/null 2>&1
rm $pidfile &>/dev/null
else
- echo "Services $NAME is not running."
+ echo "Service $NAME is not running."
fi
}
diff --git a/network/sslh/slack-desc b/network/sslh/slack-desc
index 0c90805d1e..57d4e92926 100644
--- a/network/sslh/slack-desc
+++ b/network/sslh/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-sslh: sslh (Applicative protocol multiplexer)
+sslh: sslh (applicative protocol multiplexer)
sslh:
sslh: sslh accepts connections on specified ports, and forwards them
sslh: further based on tests performed on the first data packet sent by
sslh: the remote client.
sslh:
-sslh: Probes for HTTP, SSL, SSH, OpenVPN, tinc, XMPP are implemented, and
-sslh: any other protocol that can be tested using a regular expression,
+sslh: Probes for HTTP, SSL, SSH, OpenVPN, tinc, XMPP are implemented.
+sslh: Any other protocol that can be tested using a regular expression
sslh: can be recognised.
sslh:
-sslh:
+sslh: This package built @WITHBSD@ libbsd and @WITHEV@ libev.
diff --git a/network/sslh/sslh.SlackBuild b/network/sslh/sslh.SlackBuild
index 0b2eda07c8..bb21aca0af 100644
--- a/network/sslh/sslh.SlackBuild
+++ b/network/sslh/sslh.SlackBuild
@@ -2,14 +2,29 @@
# Slackware build script for sslh
-#
-# Script created by mara <mara@fail.pp.ua>
-#
+# Script originally created by mara <email removed>.
+# Modified, updated, and now maintained by B. Watson <urchlay@slackware.uk>.
+# Original script had no license. Modified version is licensed under
+# the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20250706 bkw: normally I would go with the latest release, but there
+# are some pretty important-looking fixes in the last few git commits.
+# There's not a single line of mara's original script left, other than
+# boilerplate code copied from the SBo template, so I don't feel bad
+# relicensing it.
+
+# 20250719 bkw:
+# - updated for latest git, v2.2.4+20250630_11da63c.
+# - fix almost everything: README, slack-desc, rc script...
+# - allow libev to be optional and autodetected.
+# - document option libbsd dep in README.
+# - add /etc/default/sslh and make the rc.sslh script use it.
+# - make slack-desc reflect optional deps used.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sslh
-VERSION=${VERSION:-1.18}
+VERSION=${VERSION:-2.2.4+20250630_11da63c}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -22,9 +37,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -40,7 +52,7 @@ if [ "$ARCH" = "i586" ]; then
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
+elif [ "$ARCH" = "x86_64" -o "$ARCH" = "aarch64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
@@ -53,43 +65,71 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-v$VERSION
-tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz
-cd $PRGNAM-v$VERSION
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# fix slackware path in manpage
-sed -i 's/init.d/rc.d/' sslh.pod
-sed -i 's+/etc/default+/etc/sslh+' sslh.pod
-make VERSION=\"v$VERSION\"
-
-# install initscripts
-install -Dm 644 $CWD/rc.sslh $PKG/etc/rc.d/rc.sslh.new
-# install example file
-install -Dm 0644 example.cfg $PKG/etc/sslh/sslh.cfg.new
-# manually install to have both ssl-fork and ssl-select
-install -Dm 0755 sslh-fork $PKG/usr/bin/sslh-fork
-install -Dm 0755 sslh-select $PKG/usr/bin/sslh-select
-ln -s sslh-fork $PKG/usr/bin/sslh
-# install manpage
-install -Dm 0644 sslh.8.gz $PKG/usr/man/man8/sslh.8.gz
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# fix slackware paths in manpage
+sed -i 's,init.d/sslh,rc.d/rc.sslh,' sslh.pod
+
+# 20250706 bkw: configure script ignores CFLAGS in the env.
+sed -i "s/-O2/$SLKCFLAGS/" Makefile.in
+
+# 20250706 bkw: -lnsl allows configure to detect libwrap properly.
+LIBS="-lnsl" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+# 20250707 bkw: manual install, since there's 3 binaries and only
+# one gets installed with 'make install'.
+PBIN=$PKG/usr/sbin
+PMAN=$PKG/usr/man/man8
+mkdir -p $PBIN $PMAN
+
+make sslh-fork sslh-select sslh.8.gz
+install -m0644 -oroot -groot sslh.8.gz $PMAN
+make sslh-ev || true # allow this to fail (if optional libev is missing)
+
+for i in ev fork select; do
+ bin=sslh-$i
+ if [ -e $bin ]; then
+ install -s -m0755 -oroot -groot $bin $PBIN
+ ln -s sslh.8.gz $PMAN/$bin.8.gz
+ fi
+done
+
+ln -s sslh-fork $PBIN/sslh
+
+WITHBSD=WITHOUT; WITHEV=WITHOUT
+objdump -p $PKG/usr/sbin/sslh | grep -q 'NEEDED.*libbsd' && WITHBSD=WITH
+[ -e $PKG/usr/sbin/sslh-ev ] && WITHEV=WITH
+
+mkdir -p $PKG/etc/{rc.d,sslh,default}
+cp -a *.cfg $PKG/etc/sslh
+cat basic.cfg > $PKG/etc/sslh/sslh.cfg.new
+cat $CWD/rc.sslh > $PKG/etc/rc.d/rc.sslh.new
+cat $CWD/sslh.default > $PKG/etc/default/sslh.new
+
+# 20250707 bkw: don't need these in a slackware package:
+rm -f doc/README.MacOSX doc/README.Windows.md doc/INSTALL.md
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING ChangeLog README* TODO doc/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
+sed -e "s,@WITHBSD@,$WITHBSD," -e "s,@WITHEV@,$WITHEV," \
+ < $CWD/slack-desc \
+ > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
diff --git a/network/sslh/sslh.default b/network/sslh/sslh.default
new file mode 100644
index 0000000000..55752d9a61
--- /dev/null
+++ b/network/sslh/sslh.default
@@ -0,0 +1,4 @@
+# Default options for the sslh daemon, read by /etc/rc.d/rc.sslh
+# See sslh(8) for the options supported by sslh.
+
+SSLH_OPTS="-F /etc/sslh/sslh.cfg"
diff --git a/network/sslh/sslh.info b/network/sslh/sslh.info
index b5de12942e..06994c78c2 100644
--- a/network/sslh/sslh.info
+++ b/network/sslh/sslh.info
@@ -1,10 +1,10 @@
PRGNAM="sslh"
-VERSION="1.18"
+VERSION="2.2.4+20250630_11da63c"
HOMEPAGE="http://www.rutschle.net/tech/sslh.shtml"
-DOWNLOAD="http://www.rutschle.net/tech/sslh/sslh-v1.18.tar.gz"
-MD5SUM="0e3568d5d234516c634d4df156473298"
+DOWNLOAD="https://slackware.uk/~urchlay/src/sslh-2.2.4+20250630_11da63c.tar.xz"
+MD5SUM="b23c8abe5cf3bf4495e59c30b7d5d4ff"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libconfig"
-MAINTAINER="mara"
-EMAIL="mara@fail.pp.ua"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/sslscan/sslscan.SlackBuild b/network/sslscan/sslscan.SlackBuild
index 99283a16e6..325829f7ee 100644
--- a/network/sslscan/sslscan.SlackBuild
+++ b/network/sslscan/sslscan.SlackBuild
@@ -6,7 +6,7 @@
# Copyright (c) 2014 Andrew Clemons, Wellington, New Zealand
# Copyright (c) 2015 Andrew Clemons, Leimen, Germany
# Copyright (c) 2016-2022 Andrew Clemons, Wellington, New Zealand
-# Copyright (c) 2022-2024 Andrew Clemons, Tokyo, Japan
+# Copyright (c) 2022-2025 Andrew Clemons, Tokyo, Japan
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for
@@ -36,7 +36,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sslscan
-VERSION=${VERSION:-2.1.6}
+VERSION=${VERSION:-2.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -85,7 +85,7 @@ sed -i "s/^GIT_VERSION = .*$/GIT_VERSION = $VERSION/" Makefile
STATIC=${STATIC:-yes}
if [ "$STATIC" = "yes" ] ; then
- OPENSSLVERSION=${OPENSSLVERSION:-openssl-3.0.15}
+ OPENSSLVERSION=${OPENSSLVERSION:-openssl-3.5.2}
tar xf "$CWD/openssl-$OPENSSLVERSION.tar.gz"
mv "openssl-$OPENSSLVERSION" openssl
fi
@@ -116,7 +116,7 @@ find $PKG/usr/man -type f -exec chmod 0644 {} \;
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a Changelog LICENSE README.md TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Changelog LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/sslscan/sslscan.info b/network/sslscan/sslscan.info
index 2f6c5a9e2e..13d9e303a7 100644
--- a/network/sslscan/sslscan.info
+++ b/network/sslscan/sslscan.info
@@ -1,10 +1,10 @@
PRGNAM="sslscan"
-VERSION="2.1.6"
+VERSION="2.2.0"
HOMEPAGE="https://github.com/rbsec/sslscan"
-DOWNLOAD="https://github.com/rbsec/sslscan/archive/2.1.6/sslscan-2.1.6.tar.gz \
- https://github.com/openssl/openssl/archive/openssl-3.0.15/openssl-openssl-3.0.15.tar.gz"
-MD5SUM="98506d9bc0604ccf86b0ccb4e1d076f4 \
- 97f46798530e146aa71c6c5cfa0226f3"
+DOWNLOAD="https://github.com/rbsec/sslscan/archive/2.2.0/sslscan-2.2.0.tar.gz \
+ https://github.com/openssl/openssl/archive/openssl-3.5.2/openssl-openssl-3.5.2.tar.gz"
+MD5SUM="2b3dd774132f74bbebe6e3e53f734c3b \
+ 466b31a51be9fa8f7ed509e62c076941"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/syncthingtray-bin/syncthingtray-bin.SlackBuild b/network/syncthingtray-bin/syncthingtray-bin.SlackBuild
index 7cab246622..8bd6c60212 100644
--- a/network/syncthingtray-bin/syncthingtray-bin.SlackBuild
+++ b/network/syncthingtray-bin/syncthingtray-bin.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=syncthingtray-bin
SRCNAM=syncthingtray
-VERSION=${VERSION:-1.7.5}
+VERSION=${VERSION:-2.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,10 +70,10 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
mkdir -p $PKG/opt/$SRCNAM
-cp $SRCNAM-$VERSION-$ARCH-pc-linux-gnu $PKG/opt/$SRCNAM/$SRCNAM-$VERSION-$ARCH-pc-linux-gnu
+cp $SRCNAM $PKG/opt/$SRCNAM/$SRCNAM
mkdir -p $PKG/usr/bin
-ln -sf ../../opt/$SRCNAM/$SRCNAM-$VERSION-$ARCH-pc-linux-gnu $PKG/usr/bin/$SRCNAM-$ARCH-pc-linux-gnu
+ln -sf ../../opt/$SRCNAM/$SRCNAM $PKG/usr/bin/$SRCNAM
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
diff --git a/network/syncthingtray-bin/syncthingtray-bin.info b/network/syncthingtray-bin/syncthingtray-bin.info
index 162b4f89d8..da3b367077 100644
--- a/network/syncthingtray-bin/syncthingtray-bin.info
+++ b/network/syncthingtray-bin/syncthingtray-bin.info
@@ -1,10 +1,10 @@
PRGNAM="syncthingtray-bin"
-VERSION="1.7.5"
+VERSION="2.0.1"
HOMEPAGE="https://github.com/Martchus/syncthingtray"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Martchus/syncthingtray/releases/download/v1.7.5/syncthingtray-1.7.5-x86_64-pc-linux-gnu.tar.xz"
-MD5SUM_x86_64="fb388295552ec9de7f51b660ad3cca2a"
+DOWNLOAD_x86_64="https://github.com/Martchus/syncthingtray/releases/download/v2.0.1/syncthingtray-2.0.1-x86_64-pc-linux-gnu.tar.xz"
+MD5SUM_x86_64="c17f8f2791defada3a6c81a770d91196"
REQUIRES=""
MAINTAINER="Marco Lavorini"
EMAIL="sbo dot mlavorini at outlook dot com"
diff --git a/network/syncthingtray-bin/syncthingtray.desktop b/network/syncthingtray-bin/syncthingtray.desktop
index 7beae578fc..4630e6d366 100644
--- a/network/syncthingtray-bin/syncthingtray.desktop
+++ b/network/syncthingtray-bin/syncthingtray.desktop
@@ -2,7 +2,7 @@
Name=Syncthingtray
GenericName=Syncthing Tray
Comment=Tray application for Syncthing
-Exec=syncthingtray-x86_64-pc-linux-gnu
+Exec=syncthingtray
Icon=syncthingtray
Terminal=false
Type=Application
diff --git a/network/tailscale/tailscale.SlackBuild b/network/tailscale/tailscale.SlackBuild
index f66db9853d..ab7986ad23 100644
--- a/network/tailscale/tailscale.SlackBuild
+++ b/network/tailscale/tailscale.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tailscale
DAEMON=tailscaled
-VERSION=${VERSION:-1.82.5}
+VERSION=${VERSION:-1.88.1}
ARCHSTR=amd64
BINDIR=$PRGNAM"_"$VERSION"_"$ARCHSTR
BUILD=${BUILD:-1}
diff --git a/network/tailscale/tailscale.info b/network/tailscale/tailscale.info
index 3310390c4f..3940a492f9 100644
--- a/network/tailscale/tailscale.info
+++ b/network/tailscale/tailscale.info
@@ -1,12 +1,12 @@
PRGNAM="tailscale"
-VERSION="1.82.5"
+VERSION="1.88.1"
HOMEPAGE="https://tailscale.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://pkgs.tailscale.com/stable/tailscale_1.82.5_amd64.tgz \
- https://github.com/tailscale/tailscale/archive/refs/tags/v1.82.5/tailscale-1.82.5.tar.gz"
-MD5SUM_x86_64="36f7947c824018704ecb3a1502130409 \
- ec4f07fee262988db19e7e116a226809"
+DOWNLOAD_x86_64="https://pkgs.tailscale.com/stable/tailscale_1.88.1_amd64.tgz \
+ https://github.com/tailscale/tailscale/archive/refs/tags/v1.88.1/tailscale-1.88.1.tar.gz"
+MD5SUM_x86_64="f635cae61c06a9024444ccc2b8b716c1 \
+ d57fbec8dd13a7d7b504f953ca10ecbb"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/teams-for-linux/README b/network/teams-for-linux/README
new file mode 100644
index 0000000000..acb61e03fb
--- /dev/null
+++ b/network/teams-for-linux/README
@@ -0,0 +1,22 @@
+teams-for-linux
+
+Unofficial Microsoft Teams client for Linux using Electron. This app
+wraps the web version of Teams as a standalone desktop application.
+
+Teams for Linux was developed to provide a native-like desktop
+experience by wrapping the web version in an Electron shell.
+
+While we strive to add useful features and improvements, some
+limitations are inherent because the app relies on the Microsoft Teams
+web version. In cases where Microsoft controls the feature set (or
+behavior), issues may be closed with an explanation.
+
+We are not affiliated with Microsoft, and this project is not endorsed
+by them. It is an independent effort to provide a better experience for
+Linux users.
+
+Please report bugs and enhancements in the issues section. We will
+attend them as soon as possible. Please review the open/close issues
+before raising a new one and avoid duplicates. We encourage everyone to
+join our chat room in matrix and ask your questions. That's probably the
+quickest way to find solutions.
diff --git a/network/teams-for-linux/doinst.sh b/network/teams-for-linux/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/teams-for-linux/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/teams-for-linux/slack-desc b/network/teams-for-linux/slack-desc
new file mode 100644
index 0000000000..2eac291377
--- /dev/null
+++ b/network/teams-for-linux/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+teams-for-linux: teams-for-linux (Unofficial Microsoft Teams for Linux client)
+teams-for-linux:
+teams-for-linux: Unofficial Microsoft Teams client for Linux using Electron. This app
+teams-for-linux: wraps the web version of Teams as a standalone desktop application.
+teams-for-linux:
+teams-for-linux: Teams for Linux was developed to provide a native-like desktop
+teams-for-linux: experience by wrapping the web version in an Electron shell.
+teams-for-linux:
+teams-for-linux:
+teams-for-linux:
+teams-for-linux:
diff --git a/network/teams-for-linux/teams-for-linux.SlackBuild b/network/teams-for-linux/teams-for-linux.SlackBuild
new file mode 100644
index 0000000000..8215507e3d
--- /dev/null
+++ b/network/teams-for-linux/teams-for-linux.SlackBuild
@@ -0,0 +1,89 @@
+#!/bin/bash
+
+# Slackware build script for teams-for-linux
+
+# Copyright 2025 - Greg Tourte <artouter@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=teams-for-linux
+VERSION=${VERSION:-2.2.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+# Upstream only has binary support for x86_64 at present.
+if [ "$ARCH" = "x86_64" ]; then
+ DEBARCH="amd64"
+else
+ echo "Sorry, the Signal binary is currently available for x86_64 only."
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar p $CWD/${PRGNAM}_${VERSION}_$DEBARCH.deb data.tar.xz | tar xJv
+chown -R root:root .
+find -L . \
+ -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# create soft link for launcher
+mkdir -p $PKG/usr/bin
+ln -sf ../../opt/teams-for-linux/$PRGNAM $PKG/usr/bin/$PRGNAM
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp $PKG/usr/share/doc/$PRGNAM/* $PKG/opt/teams-for-linux/LICENSE* $PKG/usr/doc/$PRGNAM-$VERSION
+rm -rf $PKG/usr/share/doc
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/teams-for-linux/teams-for-linux.info b/network/teams-for-linux/teams-for-linux.info
new file mode 100644
index 0000000000..a306a069d8
--- /dev/null
+++ b/network/teams-for-linux/teams-for-linux.info
@@ -0,0 +1,10 @@
+PRGNAM="teams-for-linux"
+VERSION="2.2.1"
+HOMEPAGE="https://github.com/IsmaelMartinez/teams-for-linux"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/IsmaelMartinez/teams-for-linux/releases/download/v2.2.1/teams-for-linux_2.2.1_amd64.deb"
+MD5SUM_x86_64="e2db3bc139967a7ed25421cf928b0a49"
+REQUIRES=""
+MAINTAINER="ArTourter"
+EMAIL="artourter@gmail.com"
diff --git a/network/teamviewer/teamviewer.SlackBuild b/network/teamviewer/teamviewer.SlackBuild
index b20d32dfe9..30e3529590 100644
--- a/network/teamviewer/teamviewer.SlackBuild
+++ b/network/teamviewer/teamviewer.SlackBuild
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=teamviewer
-VERSION=${VERSION:-15.64.3}
+VERSION=${VERSION:-15.68.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/teamviewer/teamviewer.info b/network/teamviewer/teamviewer.info
index c2ebd5277d..a4f20f23c8 100644
--- a/network/teamviewer/teamviewer.info
+++ b/network/teamviewer/teamviewer.info
@@ -1,10 +1,10 @@
PRGNAM="teamviewer"
-VERSION="15.64.3"
+VERSION="15.68.5"
HOMEPAGE="https://www.teamviewer.com/"
-DOWNLOAD="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.64.3_i386.deb"
-MD5SUM="3711b3f6c275ae31265930ebd1ad21a0"
-DOWNLOAD_x86_64="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.64.3_amd64.deb"
-MD5SUM_x86_64="47f5dd59c50effbc52bb278742db3485"
+DOWNLOAD="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.68.5_i386.deb"
+MD5SUM="4d32260fe9ac885c0356a1ffd300bdeb"
+DOWNLOAD_x86_64="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.68.5_amd64.deb"
+MD5SUM_x86_64="ac39c5c9bb47769275d9478258b47a79"
REQUIRES="libminizip"
MAINTAINER="ArTourter"
EMAIL="artourter@gmail.com"
diff --git a/network/telegram/telegram.SlackBuild b/network/telegram/telegram.SlackBuild
index 395c6e0f35..b1a065e8b1 100644
--- a/network/telegram/telegram.SlackBuild
+++ b/network/telegram/telegram.SlackBuild
@@ -30,7 +30,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=telegram
SRCNAM=tsetup
SRCDIR=Telegram
-VERSION=${VERSION:-5.14.0}
+VERSION=${VERSION:-6.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/telegram/telegram.info b/network/telegram/telegram.info
index 97f3e95b90..2e3e34c68f 100644
--- a/network/telegram/telegram.info
+++ b/network/telegram/telegram.info
@@ -1,10 +1,10 @@
PRGNAM="telegram"
-VERSION="5.14.0"
+VERSION="6.1.2"
HOMEPAGE="https://telegram.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://updates.tdesktop.com/tlinux/tsetup.5.14.0.tar.xz"
-MD5SUM_x86_64="3db8e542cb2ee59a952b3989c51f1198"
+DOWNLOAD_x86_64="https://updates.tdesktop.com/tlinux/tsetup.6.1.2.tar.xz"
+MD5SUM_x86_64="8ed030032310e09bcf2a99bf0206d9ac"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/teleport-connect/teleport-connect.SlackBuild b/network/teleport-connect/teleport-connect.SlackBuild
index 7dca885a14..42f66a6b71 100644
--- a/network/teleport-connect/teleport-connect.SlackBuild
+++ b/network/teleport-connect/teleport-connect.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=teleport-connect
-VERSION=${VERSION:-17.2.2}
+VERSION=${VERSION:-17.4.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/teleport-connect/teleport-connect.info b/network/teleport-connect/teleport-connect.info
index 5fd0faeccc..aa2e6af90e 100644
--- a/network/teleport-connect/teleport-connect.info
+++ b/network/teleport-connect/teleport-connect.info
@@ -1,10 +1,10 @@
PRGNAM="teleport-connect"
-VERSION="17.2.2"
+VERSION="17.4.8"
HOMEPAGE="https://goteleport.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://cdn.teleport.dev/teleport-connect-17.2.2.x86_64.rpm"
-MD5SUM_x86_64="250eb07c04f2c721deb46b84b622cf8b"
+DOWNLOAD_x86_64="https://cdn.teleport.dev/teleport-connect-17.4.8.x86_64.rpm"
+MD5SUM_x86_64="b01b312fa5be0ebc227451659a10ad68"
REQUIRES=""
MAINTAINER="Rodrigo Lira"
EMAIL="eurodrigolira@gmail.com"
diff --git a/network/tgpt/README b/network/tgpt/README
new file mode 100644
index 0000000000..78c1d248de
--- /dev/null
+++ b/network/tgpt/README
@@ -0,0 +1,5 @@
+tgpt (terminal gpt)
+
+tgpt is a cross-platform command-line interface (CLI) tool
+that allows you to use AI chatbot in your Terminal without
+requiring API keys.
diff --git a/network/tgpt/slack-desc b/network/tgpt/slack-desc
new file mode 100644
index 0000000000..1cf41e7f5d
--- /dev/null
+++ b/network/tgpt/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+tgpt: tgpt (terminal gpt)
+tgpt:
+tgpt: tgpt is a cross-platform command-line interface (CLI) tool
+tgpt: that allows you to use AI chatbot in your Terminal without
+tgpt: requiring API keys.
+tgpt:
+tgpt: Homepage: https://github.com/aandrew-me/tgpt/
+tgpt:
+tgpt:
+tgpt:
+tgpt:
diff --git a/network/tgpt/tgpt.SlackBuild b/network/tgpt/tgpt.SlackBuild
new file mode 100644
index 0000000000..42f3ed777e
--- /dev/null
+++ b/network/tgpt/tgpt.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Slackware build script for tgpt
+
+# Copyright 2025 Rodrigo Lira <eurodrigolira@gmail.com>
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=tgpt
+VERSION=${VERSION:-2.10.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ GOARCH="386"
+elif [ "$ARCH" = "i686" ]; then
+ GOARCH="386"
+elif [ "$ARCH" = "x86_64" ]; then
+ GOARCH="amd64"
+elif [ "$ARCH" = "aarch64" ]; then
+ GOARCH="arm64"
+else
+ GOARCH="$ARCH"
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+CGO_ENABLED=0 \
+GOARCH="$GOARCH" \
+go build -trimpath -ldflags="-s -w" -o tgpt
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/bin
+cp -a $PRGNAM $PKG/usr/bin
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md LICENSE $PKG/usr/doc/$PRGNAM-$VERSION/
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mv install install.sh
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/tgpt/tgpt.info b/network/tgpt/tgpt.info
new file mode 100644
index 0000000000..0a6ecd8df6
--- /dev/null
+++ b/network/tgpt/tgpt.info
@@ -0,0 +1,10 @@
+PRGNAM="tgpt"
+VERSION="2.10.0"
+HOMEPAGE="https://github.com/aandrew-me/tgpt"
+DOWNLOAD="https://github.com/aandrew-me/tgpt/archive/v2.10.0/tgpt-2.10.0.tar.gz"
+MD5SUM="9434ed43e00498e83f75cfdc1fd0f66c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang"
+MAINTAINER="Rodrigo Lira"
+EMAIL="eurodrigolira@gmail.com"
diff --git a/network/tor-browser/tor-browser.SlackBuild b/network/tor-browser/tor-browser.SlackBuild
index 0a2d77a886..c5d08cfd29 100644
--- a/network/tor-browser/tor-browser.SlackBuild
+++ b/network/tor-browser/tor-browser.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tor-browser
-VERSION=${VERSION:-14.5.1}
+VERSION=${VERSION:-14.5.6}
PRGLANG=${PRGLANG:-ALL}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/tor-browser/tor-browser.info b/network/tor-browser/tor-browser.info
index 180efe5f70..d06b79f228 100644
--- a/network/tor-browser/tor-browser.info
+++ b/network/tor-browser/tor-browser.info
@@ -1,10 +1,10 @@
PRGNAM="tor-browser"
-VERSION="14.5.1"
+VERSION="14.5.6"
HOMEPAGE="https://www.torproject.org"
-DOWNLOAD="https://dist.torproject.org/torbrowser/14.5.1/tor-browser-linux-i686-14.5.1.tar.xz"
-MD5SUM="3c6247137b073227df543568cf624b01"
-DOWNLOAD_x86_64="https://www.torproject.org/dist/torbrowser/14.5.1/tor-browser-linux-x86_64-14.5.1.tar.xz"
-MD5SUM_x86_64="d9bb4e6855a542c356f645e169db787d"
+DOWNLOAD="https://dist.torproject.org/torbrowser/14.5.6/tor-browser-linux-i686-14.5.6.tar.xz"
+MD5SUM="07c75124452acd268657bee98dceba52"
+DOWNLOAD_x86_64="https://www.torproject.org/dist/torbrowser/14.5.6/tor-browser-linux-x86_64-14.5.6.tar.xz"
+MD5SUM_x86_64="84a1586354379bfd6e5c33999a087797"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/tor/tor.SlackBuild b/network/tor/tor.SlackBuild
index effdbee18a..b7a2776524 100644
--- a/network/tor/tor.SlackBuild
+++ b/network/tor/tor.SlackBuild
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tor
-VERSION=${VERSION:-0.4.8.13}
+VERSION=${VERSION:-0.4.8.16}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/tor/tor.info b/network/tor/tor.info
index 724d857cf4..f19aea02d6 100644
--- a/network/tor/tor.info
+++ b/network/tor/tor.info
@@ -1,8 +1,8 @@
PRGNAM="tor"
-VERSION="0.4.8.13"
+VERSION="0.4.8.16"
HOMEPAGE="https://www.torproject.org/"
-DOWNLOAD="https://dist.torproject.org/tor-0.4.8.13.tar.gz"
-MD5SUM="dd7a14baeda04f058aa25bf4ce2f999c"
+DOWNLOAD="https://dist.torproject.org/tor-0.4.8.16.tar.gz"
+MD5SUM="52a5e6dc3964c270f6bcdc1355bc5cbf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/transgui/transgui.SlackBuild b/network/transgui/transgui.SlackBuild
index ca7ad023fc..b771a423c1 100644
--- a/network/transgui/transgui.SlackBuild
+++ b/network/transgui/transgui.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for transgui
-# Copyright 2016-2023 Jeremy Brent Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2016-2025 Jeremy Brent Hansen <jebrhansen+SBo@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=transgui
VERSION=${VERSION:-5.18.0}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +38,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -84,6 +81,10 @@ find -L . \
# https://github.com/transmission-remote-gui/transgui/pull/1329
patch -p1 < $CWD/dup-obj-status.patch
+# Change Windows-only code into cross-platform to allow compiling on lazarus 4.0
+# Thanks to Antonio on the notice of the breakage.
+sed -i 's|h <> INVALID_HANDLE_VALUE|h >= 0|' main.pas
+
# Build transgui
lazbuild "transgui.lpi" --lazarusdir=/usr/share/lazarus --widgetset=gtk2
diff --git a/network/trurl/README b/network/trurl/README
new file mode 100644
index 0000000000..de794724d7
--- /dev/null
+++ b/network/trurl/README
@@ -0,0 +1,3 @@
+trurl (Command-line tool for URL parsing and manipulation)
+
+trurl is a command-line tool for parsing and manipulating URLs.
diff --git a/network/trurl/slack-desc b/network/trurl/slack-desc
new file mode 100644
index 0000000000..889b77fa7f
--- /dev/null
+++ b/network/trurl/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+trurl: trurl (Command-line tool for URL parsing and manipulation)
+trurl:
+trurl: trurl is a command-line tool for parsing and manipulating URLs.
+trurl:
+trurl:
+trurl:
+trurl:
+trurl:
+trurl:
+trurl: Homepage: https://curl.se/trurl/
+trurl:
diff --git a/network/trurl/trurl.SlackBuild b/network/trurl/trurl.SlackBuild
new file mode 100644
index 0000000000..4afa38d015
--- /dev/null
+++ b/network/trurl/trurl.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for trurl
+
+# Copyright 2025 Samuel Young, MO, USA
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=trurl
+VERSION=${VERSION:-0.16.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+make \
+ CFLAGS="$SLKCFLAGS"
+make test
+make install \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ MANDIR=/usr/man/man1
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CONTRIBUTING.md COPYING README.md RELEASE-NOTES RELEASE-PROCEDURE.md THANKS \
+ URL-QUIRKS.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/trurl/trurl.info b/network/trurl/trurl.info
new file mode 100644
index 0000000000..696820b755
--- /dev/null
+++ b/network/trurl/trurl.info
@@ -0,0 +1,10 @@
+PRGNAM="trurl"
+VERSION="0.16.1"
+HOMEPAGE="https://curl.se/trurl/"
+DOWNLOAD="https://github.com/curl/trurl/releases/download/trurl-0.16.1/trurl-0.16.1.tar.gz"
+MD5SUM="f656876ec674bfe4708010283258dc3a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/unbound/root.hints b/network/unbound/root.hints
index 0f1b4ed6a7..83bec14729 100644
--- a/network/unbound/root.hints
+++ b/network/unbound/root.hints
@@ -9,8 +9,8 @@
; on server FTP.INTERNIC.NET
; -OR- RS.INTERNIC.NET
;
-; last update: August 14, 2024
-; related version of root zone: 2024081401
+; last update: May 29, 2025
+; related version of root zone: 2025052901
;
; FORMERLY NS.INTERNIC.NET
;
diff --git a/network/unbound/unbound.SlackBuild b/network/unbound/unbound.SlackBuild
index d51de13f82..52a0896bc0 100644
--- a/network/unbound/unbound.SlackBuild
+++ b/network/unbound/unbound.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Unbound
-# Copyright 2024 Badchay <badchay@protonmail.com>
+# Copyright 2025 Badchay <badchay@protonmail.com>
# All rights reserved.
# Copyright 2020 Gerardo Zamudio <gerardo.zamudio@linux.com> Mexico City, Mexico
# All rights reserved.
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=unbound
-VERSION=${VERSION:-1.22.0}
+VERSION=${VERSION:-1.23.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/unbound/unbound.info b/network/unbound/unbound.info
index 9f310f1fe5..19049e6ca9 100644
--- a/network/unbound/unbound.info
+++ b/network/unbound/unbound.info
@@ -1,8 +1,8 @@
PRGNAM="unbound"
-VERSION="1.22.0"
+VERSION="1.23.1"
HOMEPAGE="https://nlnetlabs.nl/projects/unbound/about/"
-DOWNLOAD="https://www.nlnetlabs.nl/downloads/unbound/unbound-1.22.0.tar.gz"
-MD5SUM="be0e5ae64c6619a638c116addd4da670"
+DOWNLOAD="https://www.nlnetlabs.nl/downloads/unbound/unbound-1.23.1.tar.gz"
+MD5SUM="63f13e96ee2b609d6d0aeb119d539210"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/uwsgi/uwsgi.SlackBuild b/network/uwsgi/uwsgi.SlackBuild
index a874202668..564bc49d48 100644
--- a/network/uwsgi/uwsgi.SlackBuild
+++ b/network/uwsgi/uwsgi.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=uwsgi
-VERSION=${VERSION:-2.0.29}
+VERSION=${VERSION:-2.0.30}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/uwsgi/uwsgi.info b/network/uwsgi/uwsgi.info
index cf3c871eb6..0e2014864c 100644
--- a/network/uwsgi/uwsgi.info
+++ b/network/uwsgi/uwsgi.info
@@ -1,8 +1,8 @@
PRGNAM="uwsgi"
-VERSION="2.0.29"
+VERSION="2.0.30"
HOMEPAGE="https://uwsgi-docs.readthedocs.io/"
-DOWNLOAD="https://files.pythonhosted.org/packages/source/u/uwsgi/uwsgi-2.0.29.tar.gz"
-MD5SUM="dbc75f87f8b61152cb47bf01b51a84ca"
+DOWNLOAD="https://files.pythonhosted.org/packages/source/u/uwsgi/uwsgi-2.0.30.tar.gz"
+MD5SUM="e80c7864fa1a2ec9183b365729a870df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/vidtuber/README b/network/vidtuber/README
new file mode 100644
index 0000000000..a5a28bcd4d
--- /dev/null
+++ b/network/vidtuber/README
@@ -0,0 +1,40 @@
+Vidtuber is a simple, cross-platform graphical user interface
+for yt-dlp. It features graphical tools to downloading audio,
+videos, subtitles and more via yt-dlp.
+
+Vidtuber is Free (libre) Software, written in Python3 using the
+wxPython Phoenix toolkit; it works on Linux, MacOs, Windows and
+FreeBSD.
+
+Features:
+--------------
+- No ads
+- Multi-Platform, work on Linux, MacOs, Windows, FreeBsd.
+- Batch processing.
+- Multi languages support.
+- Download using multiple URLs from YouTube to all websites
+ supported by yt-dlp.
+- Precompiled Videos, from best to worst qualities.
+- Download by format and resolution.
+- Download audio and video separately.
+- Download Audio only.
+- Download subtitles only.
+- Download by ID selecting “format codes” and ability to
+ download both separated or merged files.
+- Ability to download entire playlists.
+- Playlists can be indexed to download only the files you are
+ interested in.
+- Ability to enable/disable the SSL certificate.
+- Ability to embed thumbnail in audio file.
+- Can include the origin metadata to files.
+- Ability to set preferred subtitles.
+- Ability to include IDs in filenames.
+- Ability to restrict filenames to only ASCII characters.
+- Ability to set alternative downloaders such as aria2c, avconv,
+ axel, curl, ffmpeg, httpie, wget.
+- Ability to specify a proxy server.
+- Various options provided for geo restriction.
+- Login using authentication is possible (e.g. username/password
+ and video password).
+- Easy and friendly access via cookies.
+- and many more…
diff --git a/network/vidtuber/doinst.sh b/network/vidtuber/doinst.sh
new file mode 100644
index 0000000000..5a0b8c86f3
--- /dev/null
+++ b/network/vidtuber/doinst.sh
@@ -0,0 +1,11 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+if [ -x /usr/bin/update-mime-database ]; then
+ usr/bin/update-mime-database usr/share/mime >/dev/null 2>&1
+fi
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/vidtuber/slack-desc b/network/vidtuber/slack-desc
new file mode 100644
index 0000000000..6b7b8a3b1f
--- /dev/null
+++ b/network/vidtuber/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+vidtuber: vidtuber (GUI for yt-dlp)
+vidtuber:
+vidtuber: Vidtuber is a simple, cross-platform graphical user interface for
+vidtuber: yt-dlp written in wxPython.
+vidtuber:
+vidtuber:
+vidtuber: Homepage: https://github.com/jeanslack/Vidtuber
+vidtuber:
+vidtuber:
+vidtuber:
+vidtuber:
diff --git a/network/vidtuber/vidtuber.SlackBuild b/network/vidtuber/vidtuber.SlackBuild
new file mode 100644
index 0000000000..97a112b5d8
--- /dev/null
+++ b/network/vidtuber/vidtuber.SlackBuild
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+# Slackware build script for vidtuber
+
+# Copyright 2025 Gianluca Pernigotto Verona, Italy
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=vidtuber
+VERSION=${VERSION:-1.1.6}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=Vidtuber
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+PYVER=$(python3 -c 'import sys; print("%d.%d" % sys.version_info[:2])')
+export PYTHONPATH=/opt/python$PYVER/site-packages
+
+python3 -m build --no-isolation
+python3 -m installer --destdir "$PKG" dist/*.whl
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mv $PKG/usr/share/man $PKG/usr/man
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md LICENSE TODO CHANGELOG $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/vidtuber/vidtuber.info b/network/vidtuber/vidtuber.info
new file mode 100644
index 0000000000..fccf7a7c2e
--- /dev/null
+++ b/network/vidtuber/vidtuber.info
@@ -0,0 +1,10 @@
+PRGNAM="vidtuber"
+VERSION="1.1.6"
+HOMEPAGE="https://github.com/jeanslack/Vidtuber"
+DOWNLOAD="https://github.com/jeanslack/Vidtuber/archive/v1.1.6/Vidtuber-1.1.6.tar.gz"
+MD5SUM="26ebeb927ed47504956e418a16fc8f76"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="wxPython4 python3-pubsub python3-hatchling python3-babel yt-dlp"
+MAINTAINER="Gianluca Pernigotto"
+EMAIL="jeanlucperni@gmail.com"
diff --git a/network/vivaldi/vivaldi.SlackBuild b/network/vivaldi/vivaldi.SlackBuild
index b9ad830b41..7a8405c0a5 100644
--- a/network/vivaldi/vivaldi.SlackBuild
+++ b/network/vivaldi/vivaldi.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vivaldi
-VERSION=${VERSION:-7.3.3635.11}
+VERSION=${VERSION:-7.5.3735.74}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/vivaldi/vivaldi.info b/network/vivaldi/vivaldi.info
index 270fb21337..558da5858a 100644
--- a/network/vivaldi/vivaldi.info
+++ b/network/vivaldi/vivaldi.info
@@ -1,12 +1,12 @@
PRGNAM="vivaldi"
-VERSION="7.3.3635.11"
+VERSION="7.5.3735.74"
HOMEPAGE="https://vivaldi.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_7.3.3635.11-1_amd64.deb \
- https://update.vivaldi.com/update/1.0/relnotes/7.3.3635.11.html"
-MD5SUM_x86_64="0cc771e8a1d5286e171c6e1f5c4c9500 \
- 21a6e8236e28ed586dd5a56a30216f7c"
+DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_7.5.3735.74-1_amd64.deb \
+ https://update.vivaldi.com/update/1.0/relnotes/7.5.3735.74.html"
+MD5SUM_x86_64="b52a885fb73de54aa85443ec334f07fe \
+ 2f20151ba3a1e5eb9f8d107ffccea045"
REQUIRES=""
MAINTAINER="Ruari Oedegaard"
EMAIL="sbo@ruari.com"
diff --git a/network/warpinator/README b/network/warpinator/README
new file mode 100644
index 0000000000..7cd0c2a636
--- /dev/null
+++ b/network/warpinator/README
@@ -0,0 +1,18 @@
+Warpinator is an open-source file-sharing application designed to
+facilitate the transfer of files over local networks.
+It was developed by the team behind the Linux distribution Linux Mint
+and is particularly known for its ease of use, making it accessible
+for users who may not be technically inclined.
+
+The application allows users to send files between devices running
+different operating systems, including Linux, Windows, Android and
+macOS.
+
+By default, Warpinator runs without incoming file isolation. It is
+recommended to enable this by setting the CONFIG_SECURITY_LANDLOCK
+module in the kernel.
+
+Theoretically, Warpinator can also be sandboxed using bubblewrap, but
+the maintainer has encountered a DBus connection problem. We encourage
+users who have successfully sandboxed Warpinator with bubblewrap to
+share their solutions.
diff --git a/network/warpinator/doinst.sh b/network/warpinator/doinst.sh
new file mode 100644
index 0000000000..401d987795
--- /dev/null
+++ b/network/warpinator/doinst.sh
@@ -0,0 +1,15 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache -f usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
+if [ -e usr/share/glib-2.0/schemas ]; then
+ if [ -x /usr/bin/glib-compile-schemas ]; then
+ /usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas >/dev/null 2>&1
+ fi
+fi
diff --git a/network/warpinator/slack-desc b/network/warpinator/slack-desc
new file mode 100644
index 0000000000..c1a1afbb5a
--- /dev/null
+++ b/network/warpinator/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+warpinator: warpinator (LAN file sharing)
+warpinator:
+warpinator: Warpinator is an open-source file-sharing application designed to
+warpinator: facilitate the transfer of files over local networks.
+warpinator:
+warpinator: The application allows users to send files between devices running
+warpinator: different operating systems, including Linux, Windows, Android and
+warpinator: macOS.
+warpinator:
+warpinator: Homepage: https://github.com/linuxmint/warpinator
+warpinator:
diff --git a/network/warpinator/warpinator.SlackBuild b/network/warpinator/warpinator.SlackBuild
new file mode 100644
index 0000000000..cd650170bc
--- /dev/null
+++ b/network/warpinator/warpinator.SlackBuild
@@ -0,0 +1,117 @@
+#!/bin/bash
+
+# Slackware build script for Warpinator
+
+# Copyright 2025 Olivier Brouckaert <olivier.b@i-services.be>, Brussels, Belgium
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=warpinator
+VERSION=${VERSION:-1.8.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar -xvzf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+
+chown -R root:root .
+
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/usr/man \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --sysconfdir=/etc \
+ -Dbundle-zeroconf=true \
+ -Dbundle-grpc=true \
+ -Dbundle-landlock=true \
+ --buildtype=release
+ "${NINJA:=ninja}"
+ meson test
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+#rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -exec gzip -9 {} \;
+ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+fi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/warpinator/warpinator.info b/network/warpinator/warpinator.info
new file mode 100644
index 0000000000..0a8b13bcbd
--- /dev/null
+++ b/network/warpinator/warpinator.info
@@ -0,0 +1,10 @@
+PRGNAM="warpinator"
+VERSION="1.8.8"
+HOMEPAGE="https://github.com/linuxmint/warpinator"
+DOWNLOAD="https://github.com/linuxmint/warpinator/archive/1.8.8/warpinator-1.8.8.tar.gz"
+MD5SUM="4bc07c0dfde5d0b8708cbf357a1788f8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="xapp cryptography pynacl python-qrcode python3-async-timeout python3-ifaddr python3-netifaces python3-xapp setproctitle"
+MAINTAINER="Olivier Brouckaert"
+EMAIL="olivier.b@i-services.be"
diff --git a/network/waterfox/README b/network/waterfox/README
index a422495b1e..1c444ef726 100644
--- a/network/waterfox/README
+++ b/network/waterfox/README
@@ -11,14 +11,11 @@ please consider using it.
This package installs to /opt/waterfox
-In Slackware the annoying auto-update message is disable through
-a policies.json installed at /opt/waterfox/distribution.
-But you can remove this policy by passing "AUTOUPDATE=no" to the
-build script like this:
+In Slackware the annoying auto-update message can be disable using
+a policies.json (installed at /opt/waterfox/distribution) by
+passing "POLICIES=yes" to the build script like this:
- AUTOUPDATE=no ./waterfox.SlackBuild
-
-Afterwards you can manually set the permissions to
-/opt/waterfox folder.
+ chmod +x waterfox.SlackBuild
+ POLICIES=yes ./waterfox.SlackBuild
If uninstalling remember to manually remove $HOME/.waterfox
diff --git a/network/waterfox/waterfox.SlackBuild b/network/waterfox/waterfox.SlackBuild
index 4df41aace7..eabf88e69d 100644
--- a/network/waterfox/waterfox.SlackBuild
+++ b/network/waterfox/waterfox.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=waterfox
-VERSION=${VERSION:-6.5.7}
+VERSION=${VERSION:-6.6.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -47,15 +47,15 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
-else
- SLKCFLAGS="-O2"
-fi
+# if [ "$ARCH" = "i586" ]; then
+# SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+# elif [ "$ARCH" = "i686" ]; then
+# SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+# elif [ "$ARCH" = "x86_64" ]; then
+# SLKCFLAGS="-O2 -fPIC"
+# else
+# SLKCFLAGS="-O2"
+# fi
set -e
@@ -77,7 +77,7 @@ cd ..
mkdir -p $PKG/opt/
mv ${PRGNAM} $PKG/opt/
-if [ "${AUTOUPDATE:-yes}" = "yes" ]; then
+if [ "${POLICIES:-no}" = "yes" ]; then
mkdir -p $PKG/opt/waterfox/distribution
cp $CWD/policies.json $PKG/opt/waterfox/distribution
fi
diff --git a/network/waterfox/waterfox.info b/network/waterfox/waterfox.info
index f99977676a..f21fc4002a 100644
--- a/network/waterfox/waterfox.info
+++ b/network/waterfox/waterfox.info
@@ -1,10 +1,10 @@
PRGNAM="waterfox"
-VERSION="6.5.7"
+VERSION="6.6.3"
HOMEPAGE="https://www.waterfox.net/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://cdn1.waterfox.net/waterfox/releases/6.5.7/Linux_x86_64/waterfox-6.5.7.tar.bz2"
-MD5SUM_x86_64="bb42159556bcfa1902e4ffc4752a2df7"
+DOWNLOAD_x86_64="https://cdn1.waterfox.net/waterfox/releases/6.6.3/Linux_x86_64/waterfox-6.6.3.tar.bz2"
+MD5SUM_x86_64="615c8fb8cb8a834ac6828546e9007922"
REQUIRES=""
MAINTAINER="Antonio Leal"
EMAIL="antonioleal@yahoo.com"
diff --git a/network/webex/doinst.sh b/network/webex/doinst.sh
index 5fb28930db..e3302b8046 100644
--- a/network/webex/doinst.sh
+++ b/network/webex/doinst.sh
@@ -1,3 +1,41 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi
+
+# Adopted from control.tar.gz/postinst.
+# Thanks to Eduardo Domínguez.
+function getMaxLibCxx(){
+ local maxVersion=0
+ local path=$1
+
+ if test -f "$path"; then
+ versions=$(strings $path | grep LIBCXX)
+ for version in $versions
+ do
+ versionArr=(${version//./ })
+ versionArrLen=${#versionArr[@]}
+ if [ $versionArrLen == 3 ]
+ then
+ if [ ${versionArr[2]} -gt ${maxVersion} ]
+ then
+ maxVersion=${versionArr[2]}
+ fi
+ fi
+ done
+ fi
+ echo "$maxVersion"
+}
+
+localLib=/usr/lib64/libstdc++.so.6
+local_max_version="$(getMaxLibCxx $localLib)"
+
+packageLib=/opt/Webex/lib/libstdc++.so.6
+deactivatedPackageLib=/opt/Webex/lib/xlibstdc++.so.6
+package_max_version="$(getMaxLibCxx $packageLib)"
+
+if [ ${local_max_version} -ge ${package_max_version} ]
+then
+ if test -f "$packageLib"; then
+ mv -f $packageLib $deactivatedPackageLib
+ fi
+fi
diff --git a/network/webex/webex.SlackBuild b/network/webex/webex.SlackBuild
index 20fd0a2a56..f1e7b320ed 100644
--- a/network/webex/webex.SlackBuild
+++ b/network/webex/webex.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for webex
-# Copyright 2022-2024 Eugene Wissner, Mannheim, Germany
+# Copyright 2022-2025 Eugene Wissner, Mannheim, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=webex
-VERSION=${VERSION:-45.2.0.31755}
+VERSION=${VERSION:-45.6.2.32823}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/webex/webex.info b/network/webex/webex.info
index 2d10590a15..0dd7e5486c 100644
--- a/network/webex/webex.info
+++ b/network/webex/webex.info
@@ -1,10 +1,10 @@
PRGNAM="webex"
-VERSION="45.2.0.31755"
+VERSION="45.6.2.32823"
HOMEPAGE="https://www.webex.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
DOWNLOAD_x86_64="https://binaries.webex.com/WebexDesktop-Ubuntu-Official-Package/Webex.deb"
-MD5SUM_x86_64="0e1e26febfc146357add7eaa2d1ab509"
+MD5SUM_x86_64="2faf7cf432023211f138091195c99a1e"
REQUIRES=""
MAINTAINER="Eugene Wissner"
EMAIL="belka@caraus.de"
diff --git a/network/weechat/weechat.SlackBuild b/network/weechat/weechat.SlackBuild
index 7919e3a559..2460ac30a0 100644
--- a/network/weechat/weechat.SlackBuild
+++ b/network/weechat/weechat.SlackBuild
@@ -23,6 +23,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20250612 bkw: update for v4.6.3.
# 20250122 bkw: update for v4.5.1.
# 20241031 bkw: update for v4.4.3.
# 20241024 bkw: BUILD=2, support lua 5.4.
@@ -53,7 +54,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=weechat
-VERSION=${VERSION:-4.5.1}
+VERSION=${VERSION:-4.6.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/weechat/weechat.info b/network/weechat/weechat.info
index 7362861fe1..6b2c774d15 100644
--- a/network/weechat/weechat.info
+++ b/network/weechat/weechat.info
@@ -1,8 +1,8 @@
PRGNAM="weechat"
-VERSION="4.5.1"
+VERSION="4.6.3"
HOMEPAGE="https://www.weechat.org"
-DOWNLOAD="https://weechat.org/files/src/weechat-4.5.1.tar.xz"
-MD5SUM="27df844a481201f7da0d03fa06d6af86"
+DOWNLOAD="https://weechat.org/files/src/weechat-4.6.3.tar.xz"
+MD5SUM="96dc2d0d883cf61f504144552f30dd31"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="cJSON"
diff --git a/network/whalebird/whalebird.SlackBuild b/network/whalebird/whalebird.SlackBuild
index f2e64f28ed..c2027a4562 100644
--- a/network/whalebird/whalebird.SlackBuild
+++ b/network/whalebird/whalebird.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=whalebird
-VERSION=${VERSION:-6.2.1}
+VERSION=${VERSION:-6.2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/whalebird/whalebird.info b/network/whalebird/whalebird.info
index 5e3b0ff726..4ab156e0a7 100644
--- a/network/whalebird/whalebird.info
+++ b/network/whalebird/whalebird.info
@@ -1,10 +1,10 @@
PRGNAM="whalebird"
-VERSION="6.2.1"
+VERSION="6.2.4"
HOMEPAGE="https://whalebird.social"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/h3poteto/whalebird-desktop/releases/download/v6.2.1/Whalebird-6.2.1-linux-x86_64.rpm"
-MD5SUM_x86_64="d037b06910a815f819789529b394b9c9"
+DOWNLOAD_x86_64="https://github.com/h3poteto/whalebird-desktop/releases/download/v6.2.4/Whalebird-6.2.4-linux-x86_64.rpm"
+MD5SUM_x86_64="08f8d508b36343cd00d468b88294de88"
REQUIRES=""
MAINTAINER="Antonio Leal"
EMAIL="antonioleal@yahoo.com"
diff --git a/network/wireshark/wireshark.SlackBuild b/network/wireshark/wireshark.SlackBuild
index c8f3e754c6..ce3b6c603a 100644
--- a/network/wireshark/wireshark.SlackBuild
+++ b/network/wireshark/wireshark.SlackBuild
@@ -33,7 +33,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wireshark
-VERSION=${VERSION:-4.4.6}
+VERSION=${VERSION:-4.4.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/wireshark/wireshark.info b/network/wireshark/wireshark.info
index e19aef4b90..32b61a24ba 100644
--- a/network/wireshark/wireshark.info
+++ b/network/wireshark/wireshark.info
@@ -1,8 +1,8 @@
PRGNAM="wireshark"
-VERSION="4.4.6"
+VERSION="4.4.9"
HOMEPAGE="https://www.wireshark.org/"
-DOWNLOAD="https://2.na.dl.wireshark.org/src/wireshark-4.4.6.tar.xz"
-MD5SUM="e629127f6981fa1342fa00a82d70cd7f"
+DOWNLOAD="https://2.na.dl.wireshark.org/src/wireshark-4.4.9.tar.xz"
+MD5SUM="388085e96410ca214ea4fe7ef9046b0c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/network/wp-cli/wp-cli.SlackBuild b/network/wp-cli/wp-cli.SlackBuild
index 5aaf260126..58ce6d73fe 100644
--- a/network/wp-cli/wp-cli.SlackBuild
+++ b/network/wp-cli/wp-cli.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wp-cli
-VERSION=${VERSION:-2.11.0}
+VERSION=${VERSION:-2.12.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/wp-cli/wp-cli.info b/network/wp-cli/wp-cli.info
index 414533ec2c..7c672f637f 100644
--- a/network/wp-cli/wp-cli.info
+++ b/network/wp-cli/wp-cli.info
@@ -1,8 +1,8 @@
PRGNAM="wp-cli"
-VERSION="2.11.0"
+VERSION="2.12.0"
HOMEPAGE="http://wp-cli.org/"
-DOWNLOAD="https://github.com/wp-cli/wp-cli/releases/download/v2.11.0/wp-cli-2.11.0.phar"
-MD5SUM="beaae9eba59e9331f4a432208bc5ddfa"
+DOWNLOAD="https://github.com/wp-cli/wp-cli/releases/download/v2.12.0/wp-cli-2.12.0.phar"
+MD5SUM="a592bbf68fc5143bfad5800cb4947253"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="composer"
diff --git a/network/x11vnc/gcc10.patch b/network/x11vnc/gcc10.patch
deleted file mode 100644
index 4934633860..0000000000
--- a/network/x11vnc/gcc10.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From a48b0b1cd887d7f3ae67f525d7d334bd2feffe60 Mon Sep 17 00:00:00 2001
-From: Alexander Tsoy <alexander@tsoy.me>
-Date: Tue, 28 Jan 2020 22:21:01 +0300
-Subject: [PATCH] Fix build with -fno-common
-
-GCC 10 defaults to -fno-common
----
- src/util.c | 3 +++
- src/util.h | 6 +++---
- 2 files changed, 6 insertions(+), 3 deletions(-)
-
-diff --git a/src/util.c b/src/util.c
-index a82a1a4..6a52ebf 100644
---- a/src/util.c
-+++ b/src/util.c
-@@ -47,6 +47,9 @@ int hxl = 0;
- #ifdef LIBVNCSERVER_HAVE_LIBPTHREAD
- MUTEX(x11Mutex);
- MUTEX(scrollMutex);
-+MUTEX(clientMutex);
-+MUTEX(inputMutex);
-+MUTEX(pointerMutex);
- #endif
-
- int nfix(int i, int n);
-diff --git a/src/util.h b/src/util.h
-index 35c1afd..99b5dd1 100644
---- a/src/util.h
-+++ b/src/util.h
-@@ -102,9 +102,9 @@ extern struct timeval _mysleep;
- #ifdef LIBVNCSERVER_HAVE_LIBPTHREAD
- extern MUTEX(x11Mutex);
- extern MUTEX(scrollMutex);
--MUTEX(clientMutex);
--MUTEX(inputMutex);
--MUTEX(pointerMutex);
-+extern MUTEX(clientMutex);
-+extern MUTEX(inputMutex);
-+extern MUTEX(pointerMutex);
- #endif
-
- #define X_INIT INIT_MUTEX(x11Mutex)
diff --git a/network/x11vnc/x11vnc.SlackBuild b/network/x11vnc/x11vnc.SlackBuild
index dca9d17bea..632025fd07 100644
--- a/network/x11vnc/x11vnc.SlackBuild
+++ b/network/x11vnc/x11vnc.SlackBuild
@@ -7,12 +7,12 @@
# Updated for version 0.9.8 22/11/2009
# Updated for version 0.9.10 23/05/2010
# Updated for version 0.9.12 30/04/2011 Thanks to crocket.
-# Maintained 2013-2019 by Christoph Willing
+# Maintained 2013-2025 by Christoph Willing
# Copyright 2009 Pierre Cazenave <pwcazenave {at} gmail [dot] com>
# All rights reserved.
#
-# Copyright 2017-2019 Christoph Willing, Brisbane Australia
+# Copyright 2017-2025 Christoph Willing, Sydney Australia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -35,7 +35,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=x11vnc
-VERSION=${VERSION:-0.9.16}
+VERSION=${VERSION:-0.9.17}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -48,9 +48,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -88,10 +85,8 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-patch -p1 < $CWD/gcc10.patch
-
-autoreconf -i
-CFLAGS="$SLKCFLAGS" \
+autoreconf -fiv
+CFLAGS="$SLKCFLAGS $(pkg-config --cflags-only-I libdrm)" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
diff --git a/network/x11vnc/x11vnc.info b/network/x11vnc/x11vnc.info
index 16119f9dc9..19c419a9d0 100644
--- a/network/x11vnc/x11vnc.info
+++ b/network/x11vnc/x11vnc.info
@@ -1,8 +1,8 @@
PRGNAM="x11vnc"
-VERSION="0.9.16"
+VERSION="0.9.17"
HOMEPAGE="https://github.com/LibVNC/x11vnc"
-DOWNLOAD="https://github.com/LibVNC/x11vnc/archive/0.9.16/x11vnc-0.9.16.tar.gz"
-MD5SUM="64172e8f896389ec963fff93415f0d93"
+DOWNLOAD="https://github.com/LibVNC/x11vnc/archive/0.9.17/x11vnc-0.9.17.tar.gz"
+MD5SUM="689c277b2d5727a54c458e9d670d0c56"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/yle-dl/yle-dl.SlackBuild b/network/yle-dl/yle-dl.SlackBuild
index 989a7b65b8..246aee3ef2 100644
--- a/network/yle-dl/yle-dl.SlackBuild
+++ b/network/yle-dl/yle-dl.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=yle-dl
-VERSION=${VERSION:-20250316}
+VERSION=${VERSION:-20250730}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/yle-dl/yle-dl.info b/network/yle-dl/yle-dl.info
index 37fb1fc757..40a96e3ada 100644
--- a/network/yle-dl/yle-dl.info
+++ b/network/yle-dl/yle-dl.info
@@ -1,8 +1,8 @@
PRGNAM="yle-dl"
-VERSION="20250316"
+VERSION="20250730"
HOMEPAGE="https://aajanki.github.io/yle-dl/"
-DOWNLOAD="https://github.com/aajanki/yle-dl/archive/releases/20250316/yle-dl-releases-20250316.tar.gz"
-MD5SUM="c0822b71dddbc4c6fcc4d17415e4c693"
+DOWNLOAD="https://github.com/aajanki/yle-dl/archive/releases/20250730/yle-dl-releases-20250730.tar.gz"
+MD5SUM="94e4e298b20dcd0eef001c692f068ded"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-lxml python3-configargparse"
diff --git a/network/yt-dlp-bin/README b/network/yt-dlp-bin/README
index 4b7a668b03..f34bbbcdbf 100644
--- a/network/yt-dlp-bin/README
+++ b/network/yt-dlp-bin/README
@@ -1,7 +1,23 @@
-yt-dlp-bin (download videos from youtube)
+yt-dlp-bin (download videos from youtube and other video sites)
-yt-dlp is a youtube-dl fork based on the now inactive youtube-dlc. The
-main focus of this project is adding new features and patches while also
-keeping up to date with the original project.
+yt-dlp is a feature-rich command-line audio/video downloader with
+support for thousands of sites. The project is a fork of youtube-dl,
+based on the now-inactive youtube-dlc.
-* This create a package with binary and docs.
+This is a repackaging of the official yt-dlp_linux binary from the
+yt-dlp developers. Only x86_64 and aarch64 are supported. There is no
+32-bit x86 support.
+
+The file "yt-dlp-bin.info.aarch64" has the download URL for aarch64.
+You can use this as a custom .info file in sbopkg, or just wget the
+URL.
+
+This build conflicts with yt-dlp: only install one or the other of
+yt-dlp and yt-dlp-bin.
+
+The reason this build even exists is that, at some point, yt-dlp will
+drop support for python-3.9 and will stop working on Slackware 15.0.
+The binary release includes its own python interpreter, so it will be
+the only way to run yt-dlp on Slack 15.0. By the time you read this,
+it may have aleady happened: python-3.9 will be officially EOLed in
+October 2025.
diff --git a/network/yt-dlp-bin/docs/CONTRIBUTING.md b/network/yt-dlp-bin/docs/CONTRIBUTING.md
new file mode 100644
index 0000000000..8822907b79
--- /dev/null
+++ b/network/yt-dlp-bin/docs/CONTRIBUTING.md
@@ -0,0 +1,779 @@
+# CONTRIBUTING TO YT-DLP
+
+- [OPENING AN ISSUE](#opening-an-issue)
+ - [Is the description of the issue itself sufficient?](#is-the-description-of-the-issue-itself-sufficient)
+ - [Are you using the latest version?](#are-you-using-the-latest-version)
+ - [Is the issue already documented?](#is-the-issue-already-documented)
+ - [Why are existing options not enough?](#why-are-existing-options-not-enough)
+ - [Have you read and understood the changes, between youtube-dl and yt-dlp](#have-you-read-and-understood-the-changes-between-youtube-dl-and-yt-dlp)
+ - [Is there enough context in your bug report?](#is-there-enough-context-in-your-bug-report)
+ - [Does the issue involve one problem, and one problem only?](#does-the-issue-involve-one-problem-and-one-problem-only)
+ - [Is anyone going to need the feature?](#is-anyone-going-to-need-the-feature)
+ - [Is your question about yt-dlp?](#is-your-question-about-yt-dlp)
+ - [Are you willing to share account details if needed?](#are-you-willing-to-share-account-details-if-needed)
+ - [Is the website primarily used for piracy](#is-the-website-primarily-used-for-piracy)
+- [DEVELOPER INSTRUCTIONS](#developer-instructions)
+ - [Adding new feature or making overarching changes](#adding-new-feature-or-making-overarching-changes)
+ - [Adding support for a new site](#adding-support-for-a-new-site)
+ - [yt-dlp coding conventions](#yt-dlp-coding-conventions)
+ - [Mandatory and optional metafields](#mandatory-and-optional-metafields)
+ - [Provide fallbacks](#provide-fallbacks)
+ - [Regular expressions](#regular-expressions)
+ - [Long lines policy](#long-lines-policy)
+ - [Quotes](#quotes)
+ - [Inline values](#inline-values)
+ - [Collapse fallbacks](#collapse-fallbacks)
+ - [Trailing parentheses](#trailing-parentheses)
+ - [Use convenience conversion and parsing functions](#use-convenience-conversion-and-parsing-functions)
+ - [My pull request is labeled pending-fixes](#my-pull-request-is-labeled-pending-fixes)
+- [EMBEDDING YT-DLP](README.md#embedding-yt-dlp)
+
+
+
+# OPENING AN ISSUE
+
+Bugs and suggestions should be reported at: [yt-dlp/yt-dlp/issues](https://github.com/yt-dlp/yt-dlp/issues). Unless you were prompted to or there is another pertinent reason (e.g. GitHub fails to accept the bug report), please do not send bug reports via personal email. For discussions, join us in our [discord server](https://discord.gg/H5MNcFW63r).
+
+**Please include the full output of yt-dlp when run with `-vU`**, i.e. **add** `-vU` flag to **your command line**, copy the **whole** output and post it in the issue body wrapped in \`\`\` for better formatting. It should look similar to this:
+```
+$ yt-dlp -vU <your command line>
+[debug] Command-line config: ['-vU', 'https://www.example.com/']
+[debug] Encodings: locale cp65001, fs utf-8, pref cp65001, out utf-8, error utf-8, screen utf-8
+[debug] yt-dlp version nightly@... from yt-dlp/yt-dlp-nightly-builds [1a176d874] (win_exe)
+[debug] Python 3.10.11 (CPython AMD64 64bit) - Windows-10-10.0.20348-SP0 (OpenSSL 1.1.1t 7 Feb 2023)
+[debug] exe versions: ffmpeg 7.0.2 (setts), ffprobe 7.0.2
+[debug] Optional libraries: Cryptodome-3.21.0, brotli-1.1.0, certifi-2024.08.30, curl_cffi-0.5.10, mutagen-1.47.0, requests-2.32.3, sqlite3-3.40.1, urllib3-2.2.3, websockets-13.1
+[debug] Proxy map: {}
+[debug] Request Handlers: urllib, requests, websockets, curl_cffi
+[debug] Loaded 1838 extractors
+[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
+Latest version: nightly@... from yt-dlp/yt-dlp-nightly-builds
+yt-dlp is up to date (nightly@... from yt-dlp/yt-dlp-nightly-builds)
+...
+```
+**Do not post screenshots of verbose logs; only plain text is acceptable.**
+
+The output (including the first lines) contains important debugging information. Issues without the full output are often not reproducible and therefore will be closed as `incomplete`.
+
+The templates provided for the Issues, should be completed and **not removed**, this helps aide the resolution of the issue.
+
+Please re-read your issue once again to avoid a couple of common mistakes (you can and should use this as a checklist):
+
+### Is the description of the issue itself sufficient?
+
+We often get issue reports that we cannot really decipher. While in most cases we eventually get the required information after asking back multiple times, this poses an unnecessary drain on our resources.
+
+So please elaborate on what feature you are requesting, or what bug you want to be fixed. Make sure that it's obvious
+
+- What the problem is
+- How it could be fixed
+- How your proposed solution would look like
+
+If your report is shorter than two lines, it is almost certainly missing some of these, which makes it hard for us to respond to it. We're often too polite to close the issue outright, but the missing info makes misinterpretation likely. We often get frustrated by these issues, since the only possible way for us to move forward on them is to ask for clarification over and over.
+
+For bug reports, this means that your report should contain the **complete** output of yt-dlp when called with the `-vU` flag. The error message you get for (most) bugs even says so, but you would not believe how many of our bug reports do not contain this information.
+
+If the error is `ERROR: Unable to extract ...` and you cannot reproduce it from multiple countries, add `--write-pages` and upload the `.dump` files you get [somewhere](https://gist.github.com).
+
+**Site support requests must contain an example URL**. An example URL is a URL you might want to download, like `https://www.youtube.com/watch?v=BaW_jenozKc`. There should be an obvious video present. Except under very special circumstances, the main page of a video service (e.g. `https://www.youtube.com/`) is *not* an example URL.
+
+### Are you using the latest version?
+
+Before reporting any issue, type `yt-dlp -U`. This should report that you're up-to-date. This goes for feature requests as well.
+
+### Is the issue already documented?
+
+Make sure that someone has not already opened the issue you're trying to open. Search at the top of the window or browse the [GitHub Issues](https://github.com/yt-dlp/yt-dlp/search?type=Issues) of this repository. If there is an issue, subscribe to it to be notified when there is any progress. Unless you have something useful to add to the conversation, please refrain from commenting.
+
+Additionally, it is also helpful to see if the issue has already been documented in the [youtube-dl issue tracker](https://github.com/ytdl-org/youtube-dl/issues). If similar issues have already been reported in youtube-dl (but not in our issue tracker), links to them can be included in your issue report here.
+
+### Why are existing options not enough?
+
+Before requesting a new feature, please have a quick peek at [the list of supported options](README.md#usage-and-options). Many feature requests are for features that actually exist already! Please, absolutely do show off your work in the issue report and detail how the existing similar options do *not* solve your problem.
+
+### Have you read and understood the changes, between youtube-dl and yt-dlp
+
+There are many changes between youtube-dl and yt-dlp [(changes to default behavior)](README.md#differences-in-default-behavior), and some of the options available have a different behaviour in yt-dlp, or have been removed all together [(list of changes to options)](README.md#deprecated-options). Make sure you have read and understand the differences in the options and how this may impact your downloads before opening an issue.
+
+### Is there enough context in your bug report?
+
+People want to solve problems, and often think they do us a favor by breaking down their larger problems (e.g. wanting to skip already downloaded files) to a specific request (e.g. requesting us to look whether the file exists before downloading the info page). However, what often happens is that they break down the problem into two steps: One simple, and one impossible (or extremely complicated one).
+
+We are then presented with a very complicated request when the original problem could be solved far easier, e.g. by recording the downloaded video IDs in a separate file. To avoid this, you must include the greater context where it is non-obvious. In particular, every feature request that does not consist of adding support for a new site should contain a use case scenario that explains in what situation the missing feature would be useful.
+
+### Does the issue involve one problem, and one problem only?
+
+Some of our users seem to think there is a limit of issues they can or should open. There is no limit of issues they can or should open. While it may seem appealing to be able to dump all your issues into one ticket, that means that someone who solves one of your issues cannot mark the issue as closed. Typically, reporting a bunch of issues leads to the ticket lingering since nobody wants to attack that behemoth, until someone mercifully splits the issue into multiple ones.
+
+In particular, every site support request issue should only pertain to services at one site (generally under a common domain, but always using the same backend technology). Do not request support for vimeo user videos, White house podcasts, and Google Plus pages in the same issue. Also, make sure that you don't post bug reports alongside feature requests. As a rule of thumb, a feature request does not include outputs of yt-dlp that are not immediately related to the feature at hand. Do not post reports of a network error alongside the request for a new video service.
+
+### Is anyone going to need the feature?
+
+Only post features that you (or an incapacitated friend you can personally talk to) require. Do not post features because they seem like a good idea. If they are really useful, they will be requested by someone who requires them.
+
+### Is your question about yt-dlp?
+
+Some bug reports are completely unrelated to yt-dlp and relate to a different, or even the reporter's own, application. Please make sure that you are actually using yt-dlp. If you are using a UI for yt-dlp, report the bug to the maintainer of the actual application providing the UI. In general, if you are unable to provide the verbose log, you should not be opening the issue here.
+
+If the issue is with `youtube-dl` (the upstream fork of yt-dlp) and not with yt-dlp, the issue should be raised in the youtube-dl project.
+
+### Are you willing to share account details if needed?
+
+The maintainers and potential contributors of the project often do not have an account for the website you are asking support for. So any developer interested in solving your issue may ask you for account details. It is your personal discretion whether you are willing to share the account in order for the developer to try and solve your issue. However, if you are unwilling or unable to provide details, they obviously cannot work on the issue and it cannot be solved unless some developer who both has an account and is willing/able to contribute decides to solve it.
+
+By sharing an account with anyone, you agree to bear all risks associated with it. The maintainers and yt-dlp can't be held responsible for any misuse of the credentials.
+
+While these steps won't necessarily ensure that no misuse of the account takes place, these are still some good practices to follow.
+
+- Look for people with `Member` (maintainers of the project) or `Contributor` (people who have previously contributed code) tag on their messages.
+- Change the password before sharing the account to something random.
+- Change the password after receiving the account back.
+
+### Is the website primarily used for piracy?
+
+We follow [youtube-dl's policy](https://github.com/ytdl-org/youtube-dl#can-you-add-support-for-this-anime-video-site-or-site-which-shows-current-movies-for-free) to not support services that is primarily used for infringing copyright. Additionally, it has been decided to not to support porn sites that specialize in fakes. We also cannot support any service that serves only [DRM protected content](https://en.wikipedia.org/wiki/Digital_rights_management).
+
+
+
+
+# DEVELOPER INSTRUCTIONS
+
+Most users do not need to build yt-dlp and can [download the builds](https://github.com/yt-dlp/yt-dlp/releases), get them via [the other installation methods](README.md#installation) or directly run it using `python -m yt_dlp`.
+
+`yt-dlp` uses [`hatch`](<https://hatch.pypa.io>) as a project management tool.
+You can easily install it using [`pipx`](<https://pipx.pypa.io>) via `pipx install hatch`, or else via `pip` or your package manager of choice. Make sure you are using at least version `1.10.0`, otherwise some functionality might not work as expected.
+
+If you plan on contributing to `yt-dlp`, best practice is to start by running the following command:
+
+```shell
+$ hatch run setup
+```
+
+The above command will install a `pre-commit` hook so that required checks/fixes (linting, formatting) will run automatically before each commit. If any code needs to be linted or formatted, then the commit will be blocked and the necessary changes will be made; you should review all edits and re-commit the fixed version.
+
+After this you can use `hatch shell` to enable a virtual environment that has `yt-dlp` and its development dependencies installed.
+
+In addition, the following script commands can be used to run simple tasks such as linting or testing (without having to run `hatch shell` first):
+* `hatch fmt`: Automatically fix linter violations and apply required code formatting changes
+ * See `hatch fmt --help` for more info
+* `hatch test`: Run extractor or core tests
+ * See `hatch test --help` for more info
+
+See item 6 of [new extractor tutorial](#adding-support-for-a-new-site) for how to run extractor specific test cases.
+
+While it is strongly recommended to use `hatch` for yt-dlp development, if you are unable to do so, alternatively you can manually create a virtual environment and use the following commands:
+
+```shell
+# To only install development dependencies:
+$ python -m devscripts.install_deps --include dev
+
+# Or, for an editable install plus dev dependencies:
+$ python -m pip install -e ".[default,dev]"
+
+# To setup the pre-commit hook:
+$ pre-commit install
+
+# To be used in place of `hatch test`:
+$ python -m devscripts.run_tests
+
+# To be used in place of `hatch fmt`:
+$ ruff check --fix .
+$ autopep8 --in-place .
+
+# To only check code instead of applying fixes:
+$ ruff check .
+$ autopep8 --diff .
+```
+
+If you want to create a build of yt-dlp yourself, you can follow the instructions [here](README.md#compile).
+
+
+## Adding new feature or making overarching changes
+
+Before you start writing code for implementing a new feature, open an issue explaining your feature request and at least one use case. This allows the maintainers to decide whether such a feature is desired for the project in the first place, and will provide an avenue to discuss some implementation details. If you open a pull request for a new feature without discussing with us first, do not be surprised when we ask for large changes to the code, or even reject it outright.
+
+The same applies for changes to the documentation, code style, or overarching changes to the architecture
+
+
+## Adding support for a new site
+
+If you want to add support for a new site, first of all **make sure** this site is **not dedicated to [copyright infringement](#is-the-website-primarily-used-for-piracy)**. yt-dlp does **not support** such sites thus pull requests adding support for them **will be rejected**.
+
+After you have ensured this site is distributing its content legally, you can follow this quick list (assuming your service is called `yourextractor`):
+
+1. [Fork this repository](https://github.com/yt-dlp/yt-dlp/fork)
+1. Check out the source code with:
+
+ ```shell
+ $ git clone git@github.com:YOUR_GITHUB_USERNAME/yt-dlp.git
+ ```
+
+1. Start a new git branch with
+
+ ```shell
+ $ cd yt-dlp
+ $ git checkout -b yourextractor
+ ```
+
+1. Start with this simple template and save it to `yt_dlp/extractor/yourextractor.py`:
+
+ ```python
+ from .common import InfoExtractor
+
+
+ class YourExtractorIE(InfoExtractor):
+ _VALID_URL = r'https?://(?:www\.)?yourextractor\.com/watch/(?P<id>[0-9]+)'
+ _TESTS = [{
+ 'url': 'https://yourextractor.com/watch/42',
+ 'md5': 'TODO: md5 sum of the first 10241 bytes of the video file (use --test)',
+ 'info_dict': {
+ # For videos, only the 'id' and 'ext' fields are required to RUN the test:
+ 'id': '42',
+ 'ext': 'mp4',
+ # Then if the test run fails, it will output the missing/incorrect fields.
+ # Properties can be added as:
+ # * A value, e.g.
+ # 'title': 'Video title goes here',
+ # * MD5 checksum; start the string with 'md5:', e.g.
+ # 'description': 'md5:098f6bcd4621d373cade4e832627b4f6',
+ # * A regular expression; start the string with 're:', e.g.
+ # 'thumbnail': r're:https?://.*\.jpg$',
+ # * A count of elements in a list; start the string with 'count:', e.g.
+ # 'tags': 'count:10',
+ # * Any Python type, e.g.
+ # 'view_count': int,
+ }
+ }]
+
+ def _real_extract(self, url):
+ video_id = self._match_id(url)
+ webpage = self._download_webpage(url, video_id)
+
+ # TODO more code goes here, for example ...
+ title = self._html_search_regex(r'<h1>(.+?)</h1>', webpage, 'title')
+
+ return {
+ 'id': video_id,
+ 'title': title,
+ 'description': self._og_search_description(webpage),
+ 'uploader': self._search_regex(r'<div[^>]+id="uploader"[^>]*>([^<]+)<', webpage, 'uploader', fatal=False),
+ # TODO more properties (see yt_dlp/extractor/common.py)
+ }
+ ```
+1. Add an import in [`yt_dlp/extractor/_extractors.py`](yt_dlp/extractor/_extractors.py). Note that the class name must end with `IE`. Also note that when adding a parenthesized import group, the last import in the group must have a trailing comma in order for this formatting to be respected by our code formatter.
+1. Run `hatch test YourExtractor`. This *may fail* at first, but you can continually re-run it until you're done. Upon failure, it will output the missing fields and/or correct values which you can copy. If you decide to add more than one test, the tests will then be named `YourExtractor`, `YourExtractor_1`, `YourExtractor_2`, etc. Note that tests with an `only_matching` key in the test's dict are not included in the count. You can also run all the tests in one go with `YourExtractor_all`
+1. Make sure you have at least one test for your extractor. Even if all videos covered by the extractor are expected to be inaccessible for automated testing, tests should still be added with a `skip` parameter indicating why the particular test is disabled from running.
+1. Have a look at [`yt_dlp/extractor/common.py`](yt_dlp/extractor/common.py) for possible helper methods and a [detailed description of what your extractor should and may return](yt_dlp/extractor/common.py#L119-L440). Add tests and code for as many as you want.
+1. Make sure your code follows [yt-dlp coding conventions](#yt-dlp-coding-conventions), passes [ruff](https://docs.astral.sh/ruff/tutorial/#getting-started) code checks and is properly formatted:
+
+ ```shell
+ $ hatch fmt --check
+ ```
+
+ You can use `hatch fmt` to automatically fix problems. Rules that the linter/formatter enforces should not be disabled with `# noqa` unless a maintainer requests it. The only exception allowed is for old/printf-style string formatting in GraphQL query templates (use `# noqa: UP031`).
+
+1. Make sure your code works under all [Python](https://www.python.org/) versions supported by yt-dlp, namely CPython >=3.9 and PyPy >=3.11. Backward compatibility is not required for even older versions of Python.
+1. When the tests pass, [add](https://git-scm.com/docs/git-add) the new files, [commit](https://git-scm.com/docs/git-commit) them and [push](https://git-scm.com/docs/git-push) the result, like this:
+
+ ```shell
+ $ git add yt_dlp/extractor/_extractors.py
+ $ git add yt_dlp/extractor/yourextractor.py
+ $ git commit -m '[yourextractor] Add extractor'
+ $ git push origin yourextractor
+ ```
+
+1. Finally, [create a pull request](https://help.github.com/articles/creating-a-pull-request). We'll then review and merge it.
+
+In any case, thank you very much for your contributions!
+
+**Tip:** To test extractors that require login information, create a file `test/local_parameters.json` and add `"usenetrc": true` or your `username`&`password` or `cookiefile`/`cookiesfrombrowser` in it:
+```json
+{
+ "username": "your user name",
+ "password": "your password"
+}
+```
+
+## yt-dlp coding conventions
+
+This section introduces a guide lines for writing idiomatic, robust and future-proof extractor code.
+
+Extractors are very fragile by nature since they depend on the layout of the source data provided by 3rd party media hosters out of your control and this layout tends to change. As an extractor implementer your task is not only to write code that will extract media links and metadata correctly but also to minimize dependency on the source's layout and even to make the code foresee potential future changes and be ready for that. This is important because it will allow the extractor not to break on minor layout changes thus keeping old yt-dlp versions working. Even though this breakage issue may be easily fixed by a new version of yt-dlp, this could take some time, during which the extractor will remain broken.
+
+
+### Mandatory and optional metafields
+
+For extraction to work yt-dlp relies on metadata your extractor extracts and provides to yt-dlp expressed by an [information dictionary](yt_dlp/extractor/common.py#L119-L440) or simply *info dict*. Only the following meta fields in the *info dict* are considered mandatory for a successful extraction process by yt-dlp:
+
+ - `id` (media identifier)
+ - `url` (media download URL) or `formats`
+
+The aforementioned metadata fields are the critical data without which extraction does not make any sense. If any of them fail to be extracted, then the extractor is considered broken. All other metadata extraction should be completely non-fatal.
+
+For pornographic sites, appropriate `age_limit` must also be returned.
+
+The extractor is allowed to return the info dict without url or formats in some special cases if it allows the user to extract useful information with `--ignore-no-formats-error` - e.g. when the video is a live stream that has not started yet.
+
+[Any field](yt_dlp/extractor/common.py#219-L426) apart from the aforementioned ones are considered **optional**. That means that extraction should be **tolerant** to situations when sources for these fields can potentially be unavailable (even if they are always available at the moment) and **future-proof** in order not to break the extraction of general purpose mandatory fields.
+
+#### Example
+
+Say you have some source dictionary `meta` that you've fetched as JSON with HTTP request and it has a key `summary`:
+
+```python
+meta = self._download_json(url, video_id)
+```
+
+Assume at this point `meta`'s layout is:
+
+```python
+{
+ "summary": "some fancy summary text",
+ "user": {
+ "name": "uploader name"
+ },
+ ...
+}
+```
+
+Assume you want to extract `summary` and put it into the resulting info dict as `description`. Since `description` is an optional meta field you should be ready that this key may be missing from the `meta` dict, so that you should extract it like:
+
+```python
+description = meta.get('summary') # correct
+```
+
+and not like:
+
+```python
+description = meta['summary'] # incorrect
+```
+
+The latter will break extraction process with `KeyError` if `summary` disappears from `meta` at some later time but with the former approach extraction will just go ahead with `description` set to `None` which is perfectly fine (remember `None` is equivalent to the absence of data).
+
+
+If the data is nested, do not use `.get` chains, but instead make use of `traverse_obj`.
+
+Considering the above `meta` again, assume you want to extract `["user"]["name"]` and put it in the resulting info dict as `uploader`
+
+```python
+uploader = traverse_obj(meta, ('user', 'name')) # correct
+```
+
+and not like:
+
+```python
+uploader = meta['user']['name'] # incorrect
+```
+or
+```python
+uploader = meta.get('user', {}).get('name') # incorrect
+```
+or
+```python
+uploader = try_get(meta, lambda x: x['user']['name']) # old utility
+```
+
+
+Similarly, you should pass `fatal=False` when extracting optional data from a webpage with `_search_regex`, `_html_search_regex` or similar methods, for instance:
+
+```python
+description = self._search_regex(
+ r'<span[^>]+id="title"[^>]*>([^<]+)<',
+ webpage, 'description', fatal=False)
+```
+
+With `fatal` set to `False` if `_search_regex` fails to extract `description` it will emit a warning and continue extraction.
+
+You can also pass `default=<some fallback value>`, for example:
+
+```python
+description = self._search_regex(
+ r'<span[^>]+id="title"[^>]*>([^<]+)<',
+ webpage, 'description', default=None)
+```
+
+On failure this code will silently continue the extraction with `description` set to `None`. That is useful for metafields that may or may not be present.
+
+
+Another thing to remember is not to try to iterate over `None`
+
+Say you extracted a list of thumbnails into `thumbnail_data` and want to iterate over them
+
+```python
+thumbnail_data = data.get('thumbnails') or []
+thumbnails = [{
+ 'url': item['url'],
+ 'height': item.get('h'),
+} for item in thumbnail_data if item.get('url')] # correct
+```
+
+and not like:
+
+```python
+thumbnail_data = data.get('thumbnails')
+thumbnails = [{
+ 'url': item['url'],
+ 'height': item.get('h'),
+} for item in thumbnail_data] # incorrect
+```
+
+In this case, `thumbnail_data` will be `None` if the field was not found and this will cause the loop `for item in thumbnail_data` to raise a fatal error. Using `or []` avoids this error and results in setting an empty list in `thumbnails` instead.
+
+Alternately, this can be further simplified by using `traverse_obj`
+
+```python
+thumbnails = [{
+ 'url': item['url'],
+ 'height': item.get('h'),
+} for item in traverse_obj(data, ('thumbnails', lambda _, v: v['url']))]
+```
+
+or, even better,
+
+```python
+thumbnails = traverse_obj(data, ('thumbnails', ..., {'url': 'url', 'height': 'h'}))
+```
+
+### Provide fallbacks
+
+When extracting metadata try to do so from multiple sources. For example if `title` is present in several places, try extracting from at least some of them. This makes it more future-proof in case some of the sources become unavailable.
+
+
+#### Example
+
+Say `meta` from the previous example has a `title` and you are about to extract it like:
+
+```python
+title = meta.get('title')
+```
+
+If `title` disappears from `meta` in future due to some changes on the hoster's side the title extraction would fail.
+
+Assume that you have some another source you can extract `title` from, for example `og:title` HTML meta of a `webpage`. In this case you can provide a fallback like:
+
+```python
+title = meta.get('title') or self._og_search_title(webpage)
+```
+
+This code will try to extract from `meta` first and if it fails it will try extracting `og:title` from a `webpage`, making the extractor more robust.
+
+
+### Regular expressions
+
+#### Don't capture groups you don't use
+
+Capturing group must be an indication that it's used somewhere in the code. Any group that is not used must be non capturing.
+
+##### Example
+
+Don't capture id attribute name here since you can't use it for anything anyway.
+
+Correct:
+
+```python
+r'(?:id|ID)=(?P<id>\d+)'
+```
+
+Incorrect:
+```python
+r'(id|ID)=(?P<id>\d+)'
+```
+
+#### Make regular expressions relaxed and flexible
+
+When using regular expressions try to write them fuzzy, relaxed and flexible, skipping insignificant parts that are more likely to change, allowing both single and double quotes for quoted values and so on.
+
+##### Example
+
+Say you need to extract `title` from the following HTML code:
+
+```html
+<span style="position: absolute; left: 910px; width: 90px; float: right; z-index: 9999;" class="title">some fancy title</span>
+```
+
+The code for that task should look similar to:
+
+```python
+title = self._search_regex( # correct
+ r'<span[^>]+class="title"[^>]*>([^<]+)', webpage, 'title')
+```
+
+which tolerates potential changes in the `style` attribute's value. Or even better:
+
+```python
+title = self._search_regex( # correct
+ r'<span[^>]+class=(["\'])title\1[^>]*>(?P<title>[^<]+)',
+ webpage, 'title', group='title')
+```
+
+which also handles both single quotes in addition to double quotes.
+
+The code definitely should not look like:
+
+```python
+title = self._search_regex( # incorrect
+ r'<span style="position: absolute; left: 910px; width: 90px; float: right; z-index: 9999;" class="title">(.*?)</span>',
+ webpage, 'title', group='title')
+```
+
+or even
+
+```python
+title = self._search_regex( # incorrect
+ r'<span style=".*?" class="title">(.*?)</span>',
+ webpage, 'title', group='title')
+```
+
+Here the presence or absence of other attributes including `style` is irrelevant for the data we need, and so the regex must not depend on it
+
+
+#### Keep the regular expressions as simple as possible, but no simpler
+
+Since many extractors deal with unstructured data provided by websites, we will often need to use very complex regular expressions. You should try to use the *simplest* regex that can accomplish what you want. In other words, each part of the regex must have a reason for existing. If you can take out a symbol and the functionality does not change, the symbol should not be there.
+
+##### Example
+
+Correct:
+
+```python
+_VALID_URL = r'https?://(?:www\.)?website\.com/(?:[^/]+/){3,4}(?P<display_id>[^/]+)_(?P<id>\d+)'
+```
+
+Incorrect:
+
+```python
+_VALID_URL = r'https?:\/\/(?:www\.)?website\.com\/[^\/]+/[^\/]+/[^\/]+(?:\/[^\/]+)?\/(?P<display_id>[^\/]+)_(?P<id>\d+)'
+```
+
+#### Do not misuse `.` and use the correct quantifiers (`+*?`)
+
+Avoid creating regexes that over-match because of wrong use of quantifiers. Also try to avoid non-greedy matching (`?`) where possible since they could easily result in [catastrophic backtracking](https://www.regular-expressions.info/catastrophic.html)
+
+Correct:
+
+```python
+title = self._search_regex(r'<span\b[^>]+class="title"[^>]*>([^<]+)', webpage, 'title')
+```
+
+Incorrect:
+
+```python
+title = self._search_regex(r'<span\b.*class="title".*>(.+?)<', webpage, 'title')
+```
+
+
+### Long lines policy
+
+There is a soft limit to keep lines of code under 100 characters long. This means it should be respected if possible and if it does not make readability and code maintenance worse. Sometimes, it may be reasonable to go upto 120 characters and sometimes even 80 can be unreadable. Keep in mind that this is not a hard limit and is just one of many tools to make the code more readable.
+
+For example, you should **never** split long string literals like URLs or some other often copied entities over multiple lines to fit this limit:
+
+Conversely, don't unnecessarily split small lines further. As a rule of thumb, if removing the line split keeps the code under 80 characters, it should be a single line.
+
+##### Examples
+
+Correct:
+
+```python
+'https://www.youtube.com/watch?v=FqZTN594JQw&list=PLMYEtVRpaqY00V9W81Cwmzp6N6vZqfUKD4'
+```
+
+Incorrect:
+
+```python
+'https://www.youtube.com/watch?v=FqZTN594JQw&list='
+'PLMYEtVRpaqY00V9W81Cwmzp6N6vZqfUKD4'
+```
+
+Correct:
+
+```python
+uploader = traverse_obj(info, ('uploader', 'name'), ('author', 'fullname'))
+```
+
+Incorrect:
+
+```python
+uploader = traverse_obj(
+ info,
+ ('uploader', 'name'),
+ ('author', 'fullname'))
+```
+
+Correct:
+
+```python
+formats = self._extract_m3u8_formats(
+ m3u8_url, video_id, 'mp4', 'm3u8_native', m3u8_id='hls',
+ note='Downloading HD m3u8 information', errnote='Unable to download HD m3u8 information')
+```
+
+Incorrect:
+
+```python
+formats = self._extract_m3u8_formats(m3u8_url,
+ video_id,
+ 'mp4',
+ 'm3u8_native',
+ m3u8_id='hls',
+ note='Downloading HD m3u8 information',
+ errnote='Unable to download HD m3u8 information')
+```
+
+
+### Quotes
+
+Always use single quotes for strings (even if the string has `'`) and double quotes for docstrings. Use `'''` only for multi-line strings. An exception can be made if a string has multiple single quotes in it and escaping makes it *significantly* harder to read. For f-strings, use you can use double quotes on the inside. But avoid f-strings that have too many quotes inside.
+
+
+### Inline values
+
+Extracting variables is acceptable for reducing code duplication and improving readability of complex expressions. However, you should avoid extracting variables used only once and moving them to opposite parts of the extractor file, which makes reading the linear flow difficult.
+
+#### Examples
+
+Correct:
+
+```python
+return {
+ 'title': self._html_search_regex(r'<h1>([^<]+)</h1>', webpage, 'title'),
+ # ...some lines of code...
+}
+```
+
+Incorrect:
+
+```python
+TITLE_RE = r'<h1>([^<]+)</h1>'
+# ...some lines of code...
+title = self._html_search_regex(TITLE_RE, webpage, 'title')
+# ...some lines of code...
+return {
+ 'title': title,
+ # ...some lines of code...
+}
+```
+
+
+### Collapse fallbacks
+
+Multiple fallback values can quickly become unwieldy. Collapse multiple fallback values into a single expression via a list of patterns.
+
+#### Example
+
+Good:
+
+```python
+description = self._html_search_meta(
+ ['og:description', 'description', 'twitter:description'],
+ webpage, 'description', default=None)
+```
+
+Unwieldy:
+
+```python
+description = (
+ self._og_search_description(webpage, default=None)
+ or self._html_search_meta('description', webpage, default=None)
+ or self._html_search_meta('twitter:description', webpage, default=None))
+```
+
+Methods supporting list of patterns are: `_search_regex`, `_html_search_regex`, `_og_search_property`, `_html_search_meta`.
+
+
+### Trailing parentheses
+
+Always move trailing parentheses used for grouping/functions after the last argument. On the other hand, multi-line literal list/tuple/dict/set should closed be in a new line. Generators and list/dict comprehensions may use either style
+
+#### Examples
+
+Correct:
+
+```python
+url = traverse_obj(info, (
+ 'context', 'dispatcher', 'stores', 'VideoTitlePageStore', 'data', 'video', 0, 'VideoUrlSet', 'VideoUrl'), list)
+```
+Correct:
+
+```python
+url = traverse_obj(
+ info,
+ ('context', 'dispatcher', 'stores', 'VideoTitlePageStore', 'data', 'video', 0, 'VideoUrlSet', 'VideoUrl'),
+ list)
+```
+
+Incorrect:
+
+```python
+url = traverse_obj(
+ info,
+ ('context', 'dispatcher', 'stores', 'VideoTitlePageStore', 'data', 'video', 0, 'VideoUrlSet', 'VideoUrl'),
+ list
+)
+```
+
+Correct:
+
+```python
+f = {
+ 'url': url,
+ 'format_id': format_id,
+}
+```
+
+Incorrect:
+
+```python
+f = {'url': url,
+ 'format_id': format_id}
+```
+
+Correct:
+
+```python
+formats = [process_formats(f) for f in format_data
+ if f.get('type') in ('hls', 'dash', 'direct') and f.get('downloadable')]
+```
+
+Correct:
+
+```python
+formats = [
+ process_formats(f) for f in format_data
+ if f.get('type') in ('hls', 'dash', 'direct') and f.get('downloadable')
+]
+```
+
+
+### Use convenience conversion and parsing functions
+
+Wrap all extracted numeric data into safe functions from [`yt_dlp/utils/`](yt_dlp/utils/): `int_or_none`, `float_or_none`. Use them for string to number conversions as well.
+
+Use `url_or_none` for safe URL processing.
+
+Use `traverse_obj` and `try_call` (superseeds `dict_get` and `try_get`) for safe metadata extraction from parsed JSON.
+
+Use `unified_strdate` for uniform `upload_date` or any `YYYYMMDD` meta field extraction, `unified_timestamp` for uniform `timestamp` extraction, `parse_filesize` for `filesize` extraction, `parse_count` for count meta fields extraction, `parse_resolution`, `parse_duration` for `duration` extraction, `parse_age_limit` for `age_limit` extraction.
+
+Explore [`yt_dlp/utils/`](yt_dlp/utils/) for more useful convenience functions.
+
+#### Examples
+
+```python
+description = traverse_obj(response, ('result', 'video', 'summary'), expected_type=str)
+thumbnails = traverse_obj(response, ('result', 'thumbnails', ..., 'url'), expected_type=url_or_none)
+video = traverse_obj(response, ('result', 'video', 0), default={}, expected_type=dict)
+duration = float_or_none(video.get('durationMs'), scale=1000)
+view_count = int_or_none(video.get('views'))
+```
+
+
+# My pull request is labeled pending-fixes
+
+The `pending-fixes` label is added when there are changes requested to a PR. When the necessary changes are made, the label should be removed. However, despite our best efforts, it may sometimes happen that the maintainer did not see the changes or forgot to remove the label. If your PR is still marked as `pending-fixes` a few days after all requested changes have been made, feel free to ping the maintainer who labeled your issue and ask them to re-review and remove the label.
+
+
+
+
+# EMBEDDING YT-DLP
+See [README.md#embedding-yt-dlp](README.md#embedding-yt-dlp) for instructions on how to embed yt-dlp in another Python program
diff --git a/network/yt-dlp-bin/docs/Changelog.md b/network/yt-dlp-bin/docs/Changelog.md
index 9ceb94ddac..d4ac4a5a69 100644
--- a/network/yt-dlp-bin/docs/Changelog.md
+++ b/network/yt-dlp-bin/docs/Changelog.md
@@ -4,6 +4,481 @@
# To create a release, dispatch the https://github.com/yt-dlp/yt-dlp/actions/workflows/release.yml workflow on master
-->
+### 2025.08.22
+
+#### Core changes
+- **cookies**: [Fix `--cookies-from-browser` with Firefox 142+](https://github.com/yt-dlp/yt-dlp/commit/f29acc4a6e73a9dc091686d40951288acae5a46d) ([#14114](https://github.com/yt-dlp/yt-dlp/issues/14114)) by [bashonly](https://github.com/bashonly), [Grub4K](https://github.com/Grub4K) (With fixes in [526410b](https://github.com/yt-dlp/yt-dlp/commit/526410b4af9c1ca73aa3503cdaf4d32e42308fd6) by [bashonly](https://github.com/bashonly))
+
+#### Extractor changes
+- **mediaklikk**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/4dbe96459d7e632d397826d0bb323f3f0ac8b057) ([#13975](https://github.com/yt-dlp/yt-dlp/issues/13975)) by [zhallgato](https://github.com/zhallgato)
+- **steam**: [Fix extractors](https://github.com/yt-dlp/yt-dlp/commit/fcea3edb5c5648638357f27431500c0aaf08b147) ([#14093](https://github.com/yt-dlp/yt-dlp/issues/14093)) by [doe1080](https://github.com/doe1080)
+- **youtube**
+ - [Improve `tv` client context](https://github.com/yt-dlp/yt-dlp/commit/39b7b8ddc7a4d0669e0cf39105c3bb84cb2736cc) ([#14122](https://github.com/yt-dlp/yt-dlp/issues/14122)) by [bashonly](https://github.com/bashonly)
+ - [Optimize playback wait times](https://github.com/yt-dlp/yt-dlp/commit/5c8bcfdbc638dfde13e93157637d8521413ed774) ([#14124](https://github.com/yt-dlp/yt-dlp/issues/14124)) by [bashonly](https://github.com/bashonly)
+ - [Replace `ios` with `tv_simply` in default clients](https://github.com/yt-dlp/yt-dlp/commit/895e762a834bbd729ab822c7d17329fdf815aaf2) ([#14123](https://github.com/yt-dlp/yt-dlp/issues/14123)) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz)
+ - [Update `tv` client config](https://github.com/yt-dlp/yt-dlp/commit/a03c37b44ec8f50fd472c409115096f92410346d) ([#14101](https://github.com/yt-dlp/yt-dlp/issues/14101)) by [seproDev](https://github.com/seproDev)
+
+#### Misc. changes
+- **build**: [Post-release workflow cleanup](https://github.com/yt-dlp/yt-dlp/commit/415b6d9ca868032a45b30b9139a50c5c06be2feb) ([#14090](https://github.com/yt-dlp/yt-dlp/issues/14090)) by [bashonly](https://github.com/bashonly)
+
+### 2025.08.20
+
+#### Core changes
+- [Warn against using `-f mp4`](https://github.com/yt-dlp/yt-dlp/commit/70f56699515e0854a4853d214dce11b61d432387) ([#13915](https://github.com/yt-dlp/yt-dlp/issues/13915)) by [seproDev](https://github.com/seproDev)
+- **utils**: [Add improved `jwt_encode` function](https://github.com/yt-dlp/yt-dlp/commit/35da8df4f843cb8f0656a301e5bebbf47d64d69a) ([#14071](https://github.com/yt-dlp/yt-dlp/issues/14071)) by [bashonly](https://github.com/bashonly)
+
+#### Extractor changes
+- [Extract avif storyboard formats from MPD manifests](https://github.com/yt-dlp/yt-dlp/commit/770119bdd15c525ba4338503f0eb68ea4baedf10) ([#14016](https://github.com/yt-dlp/yt-dlp/issues/14016)) by [doe1080](https://github.com/doe1080)
+- `_rta_search`: [Do not assume `age_limit` is `0`](https://github.com/yt-dlp/yt-dlp/commit/6ae3543d5a1feea0c546571fd2782b024c108eac) ([#13985](https://github.com/yt-dlp/yt-dlp/issues/13985)) by [doe1080](https://github.com/doe1080)
+- **adobetv**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/c22660aed5fadb4ac29bdf25db4e8016414153cc) ([#13917](https://github.com/yt-dlp/yt-dlp/issues/13917)) by [doe1080](https://github.com/doe1080)
+- **bilibili**: [Handle Bangumi redirection](https://github.com/yt-dlp/yt-dlp/commit/6ca9165648ac9a07c012de639faf50a97cbe0991) ([#14038](https://github.com/yt-dlp/yt-dlp/issues/14038)) by [grqz](https://github.com/grqz), [junyilou](https://github.com/junyilou)
+- **faulio**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/74b4b3b00516e92a60250e0626272a6826459057) ([#13907](https://github.com/yt-dlp/yt-dlp/issues/13907)) by [CasperMcFadden95](https://github.com/CasperMcFadden95)
+- **francetv**: site: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/7b8a8abb98165a53c026e2a3f52faee608df1f20) ([#14082](https://github.com/yt-dlp/yt-dlp/issues/14082)) by [bashonly](https://github.com/bashonly)
+- **medialaan**: [Rework extractors](https://github.com/yt-dlp/yt-dlp/commit/86d74e5cf0e06c53c931ccdbdd497e3f2c4d2fe2) ([#14015](https://github.com/yt-dlp/yt-dlp/issues/14015)) by [doe1080](https://github.com/doe1080)
+- **mtv**: [Overhaul extractors](https://github.com/yt-dlp/yt-dlp/commit/8df121ba59208979aa713822781891347abd03d1) ([#14052](https://github.com/yt-dlp/yt-dlp/issues/14052)) by [bashonly](https://github.com/bashonly), [doe1080](https://github.com/doe1080), [Randalix](https://github.com/Randalix), [seproDev](https://github.com/seproDev)
+- **niconico**: live: [Support age-restricted streams](https://github.com/yt-dlp/yt-dlp/commit/374ea049f531959bcccf8a1e6bc5659d228a780e) ([#13549](https://github.com/yt-dlp/yt-dlp/issues/13549)) by [doe1080](https://github.com/doe1080)
+- **nrktvepisode**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/7540aa1da1800769af40381f423825a1a8826377) ([#14065](https://github.com/yt-dlp/yt-dlp/issues/14065)) by [runarmod](https://github.com/runarmod)
+- **puhutv**: [Fix playlists extraction](https://github.com/yt-dlp/yt-dlp/commit/36e873822bdb2c5aba3780dd3ae32cbae564c6cd) ([#11955](https://github.com/yt-dlp/yt-dlp/issues/11955)) by [e2dk4r](https://github.com/e2dk4r)
+- **steam**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/d3d1ac8eb2f9e96f3d75292e0effe2b1bccece3b) ([#14008](https://github.com/yt-dlp/yt-dlp/issues/14008)) by [AzartX47](https://github.com/AzartX47)
+- **svt**: [Extract forced subs under separate lang code](https://github.com/yt-dlp/yt-dlp/commit/82a139020417a501f261d9fe02cefca01b1e12e4) ([#14062](https://github.com/yt-dlp/yt-dlp/issues/14062)) by [PierreMesure](https://github.com/PierreMesure)
+- **tiktok**: user: [Avoid infinite loop during extraction](https://github.com/yt-dlp/yt-dlp/commit/edf55e81842fcfa6c302528d7f33ccd5081b37ef) ([#14032](https://github.com/yt-dlp/yt-dlp/issues/14032)) by [bashonly](https://github.com/bashonly) (With fixes in [471a2b6](https://github.com/yt-dlp/yt-dlp/commit/471a2b60e0a3e056960d9ceb1ebf57908428f752))
+- **vimeo**
+ - album: [Support embed-only and non-numeric albums](https://github.com/yt-dlp/yt-dlp/commit/d8200ff0a4699e06c9f7daca8f8531f8b98e68f2) ([#14021](https://github.com/yt-dlp/yt-dlp/issues/14021)) by [bashonly](https://github.com/bashonly)
+ - event: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/0f6b915822fb64bd944126fdacd401975c9f06ed) ([#14064](https://github.com/yt-dlp/yt-dlp/issues/14064)) by [bashonly](https://github.com/bashonly)
+- **weibo**
+ - [Fix extractors](https://github.com/yt-dlp/yt-dlp/commit/8e3f8065af1415caeff788c5c430703dd0d8f576) ([#14012](https://github.com/yt-dlp/yt-dlp/issues/14012)) by [AzartX47](https://github.com/AzartX47), [bashonly](https://github.com/bashonly)
+ - [Support more URLs and --no-playlist](https://github.com/yt-dlp/yt-dlp/commit/404bd889d0e0b62ad72b7281e3fefdc0497080b3) ([#14035](https://github.com/yt-dlp/yt-dlp/issues/14035)) by [bashonly](https://github.com/bashonly)
+- **youtube**
+ - [Add `es5` and `es6` player JS variants](https://github.com/yt-dlp/yt-dlp/commit/f2919bd28eac905f1267c62b83738a02bb5b4e04) ([#14005](https://github.com/yt-dlp/yt-dlp/issues/14005)) by [bashonly](https://github.com/bashonly)
+ - [Add `playback_wait` extractor-arg](https://github.com/yt-dlp/yt-dlp/commit/f63a7e41d120ef84f0f2274b0962438e3272d2fa) by [bashonly](https://github.com/bashonly)
+ - [Default to `main` player JS variant](https://github.com/yt-dlp/yt-dlp/commit/df0553153e41f81e3b30aa5bb1d119c61bd449ac) ([#14079](https://github.com/yt-dlp/yt-dlp/issues/14079)) by [bashonly](https://github.com/bashonly)
+ - [Extract title and description from initial data](https://github.com/yt-dlp/yt-dlp/commit/7bc53ae79930b36f4f947679545c75f36e9f0ddd) ([#14078](https://github.com/yt-dlp/yt-dlp/issues/14078)) by [bashonly](https://github.com/bashonly)
+ - [Handle required preroll waiting period](https://github.com/yt-dlp/yt-dlp/commit/a97f4cb57e61e19be61a7d5ac19665d4b567c960) ([#14081](https://github.com/yt-dlp/yt-dlp/issues/14081)) by [bashonly](https://github.com/bashonly)
+ - [Remove default player params](https://github.com/yt-dlp/yt-dlp/commit/d154dc3dcf0c7c75dbabb6cd1aca66fdd806f858) ([#14081](https://github.com/yt-dlp/yt-dlp/issues/14081)) by [bashonly](https://github.com/bashonly)
+ - tab: [Fix playlists tab extraction](https://github.com/yt-dlp/yt-dlp/commit/8a8861d53864c8a38e924bc0657ead5180f17268) ([#14030](https://github.com/yt-dlp/yt-dlp/issues/14030)) by [bashonly](https://github.com/bashonly)
+
+#### Downloader changes
+- [Support `available_at` format field](https://github.com/yt-dlp/yt-dlp/commit/438d3f06b3c41bdef8112d40b75d342186e91a16) ([#13980](https://github.com/yt-dlp/yt-dlp/issues/13980)) by [bashonly](https://github.com/bashonly)
+
+#### Postprocessor changes
+- **xattrmetadata**: [Only set "Where From" attribute on macOS](https://github.com/yt-dlp/yt-dlp/commit/bdeb3eb3f29eebbe8237fbc5186e51e7293eea4a) ([#13999](https://github.com/yt-dlp/yt-dlp/issues/13999)) by [bashonly](https://github.com/bashonly)
+
+#### Misc. changes
+- **build**
+ - [Add Windows ARM64 builds](https://github.com/yt-dlp/yt-dlp/commit/07247d6c20fef1ad13b6f71f6355a44d308cf010) ([#14003](https://github.com/yt-dlp/yt-dlp/issues/14003)) by [bashonly](https://github.com/bashonly)
+ - [Bump PyInstaller version to 6.15.0 for Windows](https://github.com/yt-dlp/yt-dlp/commit/681ed2153de754c2c885fdad09ab71fffa8114f9) ([#14002](https://github.com/yt-dlp/yt-dlp/issues/14002)) by [bashonly](https://github.com/bashonly)
+ - [Discontinue `darwin_legacy_exe` support](https://github.com/yt-dlp/yt-dlp/commit/aea85d525e1007bb64baec0e170c054292d0858a) ([#13860](https://github.com/yt-dlp/yt-dlp/issues/13860)) by [bashonly](https://github.com/bashonly)
+- **cleanup**
+ - [Remove dead extractors](https://github.com/yt-dlp/yt-dlp/commit/6f4c1bb593da92f0ce68229d0c813cdbaf1314da) ([#13996](https://github.com/yt-dlp/yt-dlp/issues/13996)) by [doe1080](https://github.com/doe1080)
+ - Miscellaneous: [c2fc4f3](https://github.com/yt-dlp/yt-dlp/commit/c2fc4f3e7f6d757250183b177130c64beee50520) by [bashonly](https://github.com/bashonly)
+
+### 2025.08.11
+
+#### Important changes
+- **The minimum *recommended* Python version has been raised to 3.10**
+Since Python 3.9 will reach end-of-life in October 2025, support for it will be dropped soon. [Read more](https://github.com/yt-dlp/yt-dlp/issues/13858)
+- **darwin_legacy_exe builds are being discontinued**
+This release's `yt-dlp_macos_legacy` binary will likely be the last one. [Read more](https://github.com/yt-dlp/yt-dlp/issues/13856)
+- **linux_armv7l_exe builds are being discontinued**
+This release's `yt-dlp_linux_armv7l` binary could be the last one. [Read more](https://github.com/yt-dlp/yt-dlp/issues/13976)
+
+#### Core changes
+- [Deprecate `darwin_legacy_exe` support](https://github.com/yt-dlp/yt-dlp/commit/cc5a5caac5fbc0d605b52bde0778d6fd5f97b5ab) ([#13857](https://github.com/yt-dlp/yt-dlp/issues/13857)) by [bashonly](https://github.com/bashonly)
+- [Deprecate `linux_armv7l_exe` support](https://github.com/yt-dlp/yt-dlp/commit/c76ce28e06c816eb5b261dfb6aff6e69dd9b7382) ([#13978](https://github.com/yt-dlp/yt-dlp/issues/13978)) by [bashonly](https://github.com/bashonly)
+- [Raise minimum recommended Python version to 3.10](https://github.com/yt-dlp/yt-dlp/commit/23c658b9cbe34a151f8f921ab1320bb5d4e40a4d) ([#13859](https://github.com/yt-dlp/yt-dlp/issues/13859)) by [bashonly](https://github.com/bashonly)
+- [Warn when yt-dlp is severely outdated](https://github.com/yt-dlp/yt-dlp/commit/662af5bb8307ec3ff8ab0857f1159922d64792f0) ([#13937](https://github.com/yt-dlp/yt-dlp/issues/13937)) by [seproDev](https://github.com/seproDev)
+- **cookies**: [Load cookies with float `expires` timestamps](https://github.com/yt-dlp/yt-dlp/commit/28b68f687561468e0c664dcb430707458970019f) ([#13873](https://github.com/yt-dlp/yt-dlp/issues/13873)) by [bashonly](https://github.com/bashonly)
+- **utils**
+ - [Add `WINDOWS_VT_MODE` to globals](https://github.com/yt-dlp/yt-dlp/commit/eed94c7306d4ecdba53ad8783b1463a9af5c97f1) ([#12460](https://github.com/yt-dlp/yt-dlp/issues/12460)) by [Grub4K](https://github.com/Grub4K)
+ - `parse_resolution`: [Support width-only pattern](https://github.com/yt-dlp/yt-dlp/commit/4385480795acda35667be008d0bf26b46e9d65b4) ([#13802](https://github.com/yt-dlp/yt-dlp/issues/13802)) by [doe1080](https://github.com/doe1080)
+ - `random_user_agent`: [Bump versions](https://github.com/yt-dlp/yt-dlp/commit/c59ad2b066bbccd3cc4eed580842f961bce7dd4a) ([#13543](https://github.com/yt-dlp/yt-dlp/issues/13543)) by [bashonly](https://github.com/bashonly)
+
+#### Extractor changes
+- **archive.org**: [Fix metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/42ca3d601ee10cef89d698f72e2b5d44fab4f013) ([#13880](https://github.com/yt-dlp/yt-dlp/issues/13880)) by [bashonly](https://github.com/bashonly)
+- **digitalconcerthall**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/e8d2807296ccc603e031f5982623a8311f2a5119) ([#13948](https://github.com/yt-dlp/yt-dlp/issues/13948)) by [bashonly](https://github.com/bashonly)
+- **eagleplatform**: [Remove extractors](https://github.com/yt-dlp/yt-dlp/commit/1fe83b0111277a6f214c5ec1819cfbf943508baf) ([#13469](https://github.com/yt-dlp/yt-dlp/issues/13469)) by [doe1080](https://github.com/doe1080)
+- **fauliolive**
+ - [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/3e609b2cedd285739bf82c7af7853735092070a4) ([#13421](https://github.com/yt-dlp/yt-dlp/issues/13421)) by [CasperMcFadden95](https://github.com/CasperMcFadden95), [seproDev](https://github.com/seproDev)
+ - [Support Bahry TV](https://github.com/yt-dlp/yt-dlp/commit/daa1859be1b0e7d123da8b4e0988f2eb7bd47d15) ([#13850](https://github.com/yt-dlp/yt-dlp/issues/13850)) by [CasperMcFadden95](https://github.com/CasperMcFadden95)
+- **fc2**: [Fix old video support](https://github.com/yt-dlp/yt-dlp/commit/cd31c319e3142622ec43c49485d196ed2835df05) ([#12633](https://github.com/yt-dlp/yt-dlp/issues/12633)) by [JChris246](https://github.com/JChris246), [seproDev](https://github.com/seproDev)
+- **motherless**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/e8d49b1c7f11c7e282319395ca9c2a201304be41) ([#13960](https://github.com/yt-dlp/yt-dlp/issues/13960)) by [Grub4K](https://github.com/Grub4K)
+- **n1info**: article: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/6539ee1947d7885d3606da6365fd858308435a63) ([#13865](https://github.com/yt-dlp/yt-dlp/issues/13865)) by [u-spec-png](https://github.com/u-spec-png)
+- **neteasemusic**: [Support XFF](https://github.com/yt-dlp/yt-dlp/commit/e8c2bf798b6707d27fecde66161172da69c7cd72) ([#11044](https://github.com/yt-dlp/yt-dlp/issues/11044)) by [c-basalt](https://github.com/c-basalt)
+- **niconico**: [Fix error handling & improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/05e553e9d1f57655d65c9811d05df38261601b85) ([#13240](https://github.com/yt-dlp/yt-dlp/issues/13240)) by [doe1080](https://github.com/doe1080)
+- **parlview**: [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/485de69dbfeb7de7bcf9f7fe16d6c6ba9e81e1a0) ([#13788](https://github.com/yt-dlp/yt-dlp/issues/13788)) by [barryvan](https://github.com/barryvan)
+- **plyrembed**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/61d4cd0bc01be6ebe11fd53c2d3805d1a2058990) ([#13836](https://github.com/yt-dlp/yt-dlp/issues/13836)) by [seproDev](https://github.com/seproDev)
+- **royalive**: [Support `en` URLs](https://github.com/yt-dlp/yt-dlp/commit/43dedbe6394bdd489193b15ee9690a62d1b82d94) ([#13908](https://github.com/yt-dlp/yt-dlp/issues/13908)) by [CasperMcFadden95](https://github.com/CasperMcFadden95)
+- **rtve.es**: program: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/b831406a1d3be34c159835079d12bae624c43610) ([#12955](https://github.com/yt-dlp/yt-dlp/issues/12955)) by [meGAmeS1](https://github.com/meGAmeS1), [seproDev](https://github.com/seproDev)
+- **shiey**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/6ff135c31914ea8b5545f8d187c60e852cfde9bc) ([#13354](https://github.com/yt-dlp/yt-dlp/issues/13354)) by [iribeirocampos](https://github.com/iribeirocampos)
+- **sportdeuschland**: [Support embedded player URLs](https://github.com/yt-dlp/yt-dlp/commit/30302df22b7b431ce920e0f7298cd10be9989967) ([#13833](https://github.com/yt-dlp/yt-dlp/issues/13833)) by [InvalidUsernameException](https://github.com/InvalidUsernameException)
+- **sproutvideo**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/59765ecbc08d18005de7143fbb1d1caf90239471) ([#13813](https://github.com/yt-dlp/yt-dlp/issues/13813)) by [bashonly](https://github.com/bashonly)
+- **tbs**: [Fix truTV support](https://github.com/yt-dlp/yt-dlp/commit/0adeb1e54b2d7e95cd19999e71013877850f8f41) ([#9683](https://github.com/yt-dlp/yt-dlp/issues/9683)) by [bashonly](https://github.com/bashonly), [ischmidt20](https://github.com/ischmidt20)
+- **tbsjp**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/71f30921a2023dbb25c53fd1bb1399cac803116d) ([#13485](https://github.com/yt-dlp/yt-dlp/issues/13485)) by [garret1317](https://github.com/garret1317)
+- **tver**
+ - [Extract Streaks API info](https://github.com/yt-dlp/yt-dlp/commit/70d7687487252a08dbf8b2831743e7833472ba05) ([#13885](https://github.com/yt-dlp/yt-dlp/issues/13885)) by [bashonly](https://github.com/bashonly)
+ - [Support --ignore-no-formats-error when geo-blocked](https://github.com/yt-dlp/yt-dlp/commit/121647705a2fc6b968278723fe61801007e228a4) ([#13598](https://github.com/yt-dlp/yt-dlp/issues/13598)) by [arabcoders](https://github.com/arabcoders)
+- **tvw**: news: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/682334e4b35112f7a5798decdcb5cb12230ef948) ([#12907](https://github.com/yt-dlp/yt-dlp/issues/12907)) by [fries1234](https://github.com/fries1234)
+- **vimeo**: [Fix login support and require authentication](https://github.com/yt-dlp/yt-dlp/commit/afaf60d9fd5a0c7a85aeb1374fd97fbc13cd652c) ([#13823](https://github.com/yt-dlp/yt-dlp/issues/13823)) by [bashonly](https://github.com/bashonly)
+- **yandexdisk**: [Support 360 URLs](https://github.com/yt-dlp/yt-dlp/commit/a6df5e8a58d6743dd230011389c986495ec509da) ([#13935](https://github.com/yt-dlp/yt-dlp/issues/13935)) by [Sojiroh](https://github.com/Sojiroh)
+- **youtube**
+ - [Add player params to mweb client](https://github.com/yt-dlp/yt-dlp/commit/38c2bf40260f7788efb5a7f5e8eba8e5cb43f741) ([#13914](https://github.com/yt-dlp/yt-dlp/issues/13914)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Update player params](https://github.com/yt-dlp/yt-dlp/commit/bf366517ef0b745490ee9e0f929254fa26b69647) ([#13979](https://github.com/yt-dlp/yt-dlp/issues/13979)) by [bashonly](https://github.com/bashonly)
+
+#### Downloader changes
+- **dash**: [Re-extract if using --load-info-json with --live-from-start](https://github.com/yt-dlp/yt-dlp/commit/fe53ebe5b66a03c664708a4d6fd87b8c13a1bc7b) ([#13922](https://github.com/yt-dlp/yt-dlp/issues/13922)) by [bashonly](https://github.com/bashonly)
+- **external**: [Work around ffmpeg's `file:` URL handling](https://github.com/yt-dlp/yt-dlp/commit/d399505fdf8292332bdc91d33859a0b0d08104fd) ([#13844](https://github.com/yt-dlp/yt-dlp/issues/13844)) by [bashonly](https://github.com/bashonly)
+- **hls**: [Fix `--hls-split-continuity` support](https://github.com/yt-dlp/yt-dlp/commit/57186f958f164daa50203adcbf7ec74d541151cf) ([#13321](https://github.com/yt-dlp/yt-dlp/issues/13321)) by [tchebb](https://github.com/tchebb)
+
+#### Postprocessor changes
+- **embedthumbnail**: [Fix ffmpeg args for embedding in mp3](https://github.com/yt-dlp/yt-dlp/commit/7e3f48d64d237281a97b3df1a61980c78a0302fe) ([#13720](https://github.com/yt-dlp/yt-dlp/issues/13720)) by [atsushi2965](https://github.com/atsushi2965)
+- **xattrmetadata**: [Add macOS "Where from" attribute](https://github.com/yt-dlp/yt-dlp/commit/3e918d825d7ff367812658957b281b8cda8f9ebb) ([#12664](https://github.com/yt-dlp/yt-dlp/issues/12664)) by [rolandcrosby](https://github.com/rolandcrosby) (With fixes in [1e0c77d](https://github.com/yt-dlp/yt-dlp/commit/1e0c77ddcce335a1875ecc17d93ed6ff3fabd975) by [seproDev](https://github.com/seproDev))
+
+#### Networking changes
+- **Request Handler**
+ - curl_cffi: [Support `curl_cffi` 0.11.x, 0.12.x, 0.13.x](https://github.com/yt-dlp/yt-dlp/commit/e98695549e2eb8ce4a59abe16b5afa8adc075bbe) ([#13989](https://github.com/yt-dlp/yt-dlp/issues/13989)) by [bashonly](https://github.com/bashonly)
+ - requests: [Bump minimum required version of urllib3 to 2.0.2](https://github.com/yt-dlp/yt-dlp/commit/8175f3738fe4db3bc629d36bb72b927d4286d3f9) ([#13939](https://github.com/yt-dlp/yt-dlp/issues/13939)) by [bashonly](https://github.com/bashonly)
+
+#### Misc. changes
+- **build**: [Use `macos-14` runner for `macos` builds](https://github.com/yt-dlp/yt-dlp/commit/66aa21dc5a3b79059c38f3ad1d05dc9b29187701) ([#13814](https://github.com/yt-dlp/yt-dlp/issues/13814)) by [bashonly](https://github.com/bashonly)
+- **ci**: [Bump supported PyPy version to 3.11](https://github.com/yt-dlp/yt-dlp/commit/62e2a9c0d55306906f18da2927e05e1cbc31473c) ([#13877](https://github.com/yt-dlp/yt-dlp/issues/13877)) by [bashonly](https://github.com/bashonly)
+- **cleanup**
+ - [Move embed tests to dedicated extractors](https://github.com/yt-dlp/yt-dlp/commit/1c6068af997cfc0e28061fc00f4d6091e1de57da) ([#13782](https://github.com/yt-dlp/yt-dlp/issues/13782)) by [doe1080](https://github.com/doe1080)
+ - Miscellaneous: [5e4ceb3](https://github.com/yt-dlp/yt-dlp/commit/5e4ceb35cf997af0dbf100e1de37f4e2bcbaa0b7) by [bashonly](https://github.com/bashonly), [injust](https://github.com/injust), [seproDev](https://github.com/seproDev)
+
+### 2025.07.21
+
+#### Important changes
+- **Default behaviour changed from `--mtime` to `--no-mtime`**
+yt-dlp no longer applies the server modified time to downloaded files by default. [Read more](https://github.com/yt-dlp/yt-dlp/issues/12780)
+- Security: [[CVE-2025-54072](https://nvd.nist.gov/vuln/detail/CVE-2025-54072)] [Fix `--exec` placeholder expansion on Windows](https://github.com/yt-dlp/yt-dlp/security/advisories/GHSA-45hg-7f49-5h56)
+ - When `--exec` is used on Windows, the filepath expanded from `{}` (or the default placeholder) is now properly escaped
+
+#### Core changes
+- [Allow extractors to designate formats/subtitles for impersonation](https://github.com/yt-dlp/yt-dlp/commit/32809eb2da92c649e540a5b714f6235036026161) ([#13778](https://github.com/yt-dlp/yt-dlp/issues/13778)) by [bashonly](https://github.com/bashonly) (With fixes in [3e49bc8](https://github.com/yt-dlp/yt-dlp/commit/3e49bc8a1bdb4109b857f2c361c358e86fa63405), [2ac3eb9](https://github.com/yt-dlp/yt-dlp/commit/2ac3eb98373d1c31341c5e918c83872c7ff409c6))
+- [Don't let format testing alter the return code](https://github.com/yt-dlp/yt-dlp/commit/4919051e447c7f8ae9df8ba5c4208b6b5c04915a) ([#13767](https://github.com/yt-dlp/yt-dlp/issues/13767)) by [bashonly](https://github.com/bashonly)
+- [Fix `--exec` placeholder expansion on Windows](https://github.com/yt-dlp/yt-dlp/commit/959ac99e98c3215437e573c22d64be42d361e863) by [Grub4K](https://github.com/Grub4K)
+- [No longer enable `--mtime` by default](https://github.com/yt-dlp/yt-dlp/commit/f3008bc5f89d2691f2f8dfc51b406ef4e25281c3) ([#12781](https://github.com/yt-dlp/yt-dlp/issues/12781)) by [seproDev](https://github.com/seproDev)
+- [Warn when skipping formats](https://github.com/yt-dlp/yt-dlp/commit/1f27a9f8baccb9105f2476154557540efe09a937) ([#13090](https://github.com/yt-dlp/yt-dlp/issues/13090)) by [bashonly](https://github.com/bashonly)
+- **jsinterp**
+ - [Cache undefined variable names](https://github.com/yt-dlp/yt-dlp/commit/b342d27f3f82d913976509ddf5bff539ad8567ec) ([#13639](https://github.com/yt-dlp/yt-dlp/issues/13639)) by [bashonly](https://github.com/bashonly) (With fixes in [805519b](https://github.com/yt-dlp/yt-dlp/commit/805519bfaa7cb5443912dfe45ac774834ba65a16))
+ - [Fix variable scoping](https://github.com/yt-dlp/yt-dlp/commit/b6328ca05030d815222b25d208cc59a964623bf9) ([#13639](https://github.com/yt-dlp/yt-dlp/issues/13639)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+- **utils**
+ - `mimetype2ext`: [Always parse `flac` from `audio/flac`](https://github.com/yt-dlp/yt-dlp/commit/b8abd255e454acbe0023cdb946f9eb461ced7eeb) ([#13748](https://github.com/yt-dlp/yt-dlp/issues/13748)) by [bashonly](https://github.com/bashonly)
+ - `unified_timestamp`: [Return `int` values](https://github.com/yt-dlp/yt-dlp/commit/6be26626f7cfa71d28e0fac2861eb04758810c5d) ([#13796](https://github.com/yt-dlp/yt-dlp/issues/13796)) by [doe1080](https://github.com/doe1080)
+ - `urlhandle_detect_ext`: [Use `x-amz-meta-file-type` headers](https://github.com/yt-dlp/yt-dlp/commit/28bf46b7dafe2e241137763bf570a2f91ba8a53a) ([#13749](https://github.com/yt-dlp/yt-dlp/issues/13749)) by [bashonly](https://github.com/bashonly)
+
+#### Extractor changes
+- [Add `_search_nextjs_v13_data` helper](https://github.com/yt-dlp/yt-dlp/commit/5245231e4a39ecd5595d4337d46d85e150e2430a) ([#13398](https://github.com/yt-dlp/yt-dlp/issues/13398)) by [bashonly](https://github.com/bashonly) (With fixes in [b5fea53](https://github.com/yt-dlp/yt-dlp/commit/b5fea53f2099bed41ba1b17ab0ac87c8dba5a5ec))
+- [Detect invalid m3u8 playlist data](https://github.com/yt-dlp/yt-dlp/commit/e99c0b838a9c5feb40c0dcd291bd7b8620b8d36d) ([#13601](https://github.com/yt-dlp/yt-dlp/issues/13601)) by [Grub4K](https://github.com/Grub4K)
+- **10play**: [Support new site domain](https://github.com/yt-dlp/yt-dlp/commit/790c286ce3e0b534ca2d8f6648ced220d888f139) ([#13611](https://github.com/yt-dlp/yt-dlp/issues/13611)) by [Georift](https://github.com/Georift)
+- **9gag**: [Support browser impersonation](https://github.com/yt-dlp/yt-dlp/commit/0b359b184dee0c7052be482857bf562de67e4928) ([#13678](https://github.com/yt-dlp/yt-dlp/issues/13678)) by [bashonly](https://github.com/bashonly)
+- **aenetworks**: [Support new URL formats](https://github.com/yt-dlp/yt-dlp/commit/5f951ce929b56a822514f1a02cc06af030855ec7) ([#13747](https://github.com/yt-dlp/yt-dlp/issues/13747)) by [bashonly](https://github.com/bashonly)
+- **archive.org**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/d42a6ff0c4ca8893d722ff4e0c109aecbf4cc7cf) ([#13706](https://github.com/yt-dlp/yt-dlp/issues/13706)) by [rdamas](https://github.com/rdamas)
+- **bandaichannel**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/23e9389f936ec5236a87815b8576e5ce567b2f77) ([#13152](https://github.com/yt-dlp/yt-dlp/issues/13152)) by [doe1080](https://github.com/doe1080)
+- **bandcamp**: [Extract tags](https://github.com/yt-dlp/yt-dlp/commit/f9dff95cb1c138913011417b3bba020c0a691bba) ([#13480](https://github.com/yt-dlp/yt-dlp/issues/13480)) by [WouterGordts](https://github.com/WouterGordts)
+- **bellmedia**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/6fb3947c0dc6d0e3eab5077c5bada8402f47a277) ([#13429](https://github.com/yt-dlp/yt-dlp/issues/13429)) by [doe1080](https://github.com/doe1080)
+- **bilibili**: [Pass newer user-agent with API requests](https://github.com/yt-dlp/yt-dlp/commit/d3edc5d52a7159eda2331dbc7e14bf40a6585c81) ([#13736](https://github.com/yt-dlp/yt-dlp/issues/13736)) by [c-basalt](https://github.com/c-basalt)
+- **bilibilibangumi**
+ - [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/b15aa8d77257b86fa44c9a42a615dfe47ac5b3b7) ([#13800](https://github.com/yt-dlp/yt-dlp/issues/13800)) by [bashonly](https://github.com/bashonly)
+ - [Fix geo-block detection](https://github.com/yt-dlp/yt-dlp/commit/884f35d54a64f1e6e7be49459842f573fc3a2701) ([#13667](https://github.com/yt-dlp/yt-dlp/issues/13667)) by [bashonly](https://github.com/bashonly)
+- **blackboardcollaborate**: [Support subtitles and authwalled videos](https://github.com/yt-dlp/yt-dlp/commit/dcc4cba39e2a79d3efce16afa28dbe245468489f) ([#12473](https://github.com/yt-dlp/yt-dlp/issues/12473)) by [flanter21](https://github.com/flanter21)
+- **btvplus**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/3ae61e0f313dd03a09060abc7a212775c3717818) ([#13541](https://github.com/yt-dlp/yt-dlp/issues/13541)) by [bubo](https://github.com/bubo)
+- **ctv**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/9f54ea38984788811773ca2ceaca73864acf0e8a) ([#13429](https://github.com/yt-dlp/yt-dlp/issues/13429)) by [doe1080](https://github.com/doe1080)
+- **dangalplay**: [Support other login regions](https://github.com/yt-dlp/yt-dlp/commit/09982bc33e2f1f9a1ff66e6738df44f15b36f6a6) ([#13768](https://github.com/yt-dlp/yt-dlp/issues/13768)) by [bashonly](https://github.com/bashonly)
+- **francetv**: [Improve error handling](https://github.com/yt-dlp/yt-dlp/commit/ade876efb31d55d3394185ffc56942fdc8d325cc) ([#13726](https://github.com/yt-dlp/yt-dlp/issues/13726)) by [bashonly](https://github.com/bashonly)
+- **hotstar**
+ - [Fix support for free accounts](https://github.com/yt-dlp/yt-dlp/commit/07d1d85f6387e4bdb107096f0131c7054f078bb9) ([#13700](https://github.com/yt-dlp/yt-dlp/issues/13700)) by [chauhantirth](https://github.com/chauhantirth)
+ - [Improve error handling](https://github.com/yt-dlp/yt-dlp/commit/7e0af2b1f0c3edb688603b022f3a9ca0bfdf75e9) ([#13727](https://github.com/yt-dlp/yt-dlp/issues/13727)) by [bashonly](https://github.com/bashonly) (With fixes in [ef103b2](https://github.com/yt-dlp/yt-dlp/commit/ef103b2d115bd0e880f9cfd2f7dd705f48e4b40d))
+- **joqrag**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/6d39c420f7774562a106d90253e2ed5b75036321) ([#13152](https://github.com/yt-dlp/yt-dlp/issues/13152)) by [doe1080](https://github.com/doe1080)
+- **limelight**: [Remove extractors](https://github.com/yt-dlp/yt-dlp/commit/5d693446e882931618c40c99bb593f0b87b30eb9) ([#13267](https://github.com/yt-dlp/yt-dlp/issues/13267)) by [doe1080](https://github.com/doe1080)
+- **lrtradio**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/b4b4486effdcb96bb6b8148171a49ff579b69a4a) ([#13717](https://github.com/yt-dlp/yt-dlp/issues/13717)) by [Pawka](https://github.com/Pawka)
+- **mir24.tv**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/7b4c96e0898db048259ef5fdf12ed14e3605dce3) ([#13651](https://github.com/yt-dlp/yt-dlp/issues/13651)) by [swayll](https://github.com/swayll)
+- **mixlr**: [Add extractors](https://github.com/yt-dlp/yt-dlp/commit/0f33950c778331bf4803c76e8b0ba1862df93431) ([#13561](https://github.com/yt-dlp/yt-dlp/issues/13561)) by [seproDev](https://github.com/seproDev), [ShockedPlot7560](https://github.com/ShockedPlot7560)
+- **mlbtv**: [Make formats downloadable with ffmpeg](https://github.com/yt-dlp/yt-dlp/commit/87e3dc8c7f78929d2ef4f4a44e6a567e04cd8226) ([#13761](https://github.com/yt-dlp/yt-dlp/issues/13761)) by [bashonly](https://github.com/bashonly)
+- **newspicks**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/2aaf1aa71d174700859c9ec1a81109b78e34961c) ([#13612](https://github.com/yt-dlp/yt-dlp/issues/13612)) by [doe1080](https://github.com/doe1080)
+- **nhkradiru**: [Fix metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/7c49a937887756efcfa162abdcf17e48c244cb0c) ([#12708](https://github.com/yt-dlp/yt-dlp/issues/12708)) by [garret1317](https://github.com/garret1317)
+- **noovo**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/d57a0b5aa78d59324b037d37492fe86aa4fbf58a) ([#13429](https://github.com/yt-dlp/yt-dlp/issues/13429)) by [doe1080](https://github.com/doe1080)
+- **patreon**: campaign: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/d88b304d44c599d81acfa4231502270c8b9fe2f8) ([#13712](https://github.com/yt-dlp/yt-dlp/issues/13712)) by [bashonly](https://github.com/bashonly)
+- **playerfm**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/1a8474c3ca6dbe51bb153b2b8eef7b9a61fa7dc3) ([#13016](https://github.com/yt-dlp/yt-dlp/issues/13016)) by [R0hanW](https://github.com/R0hanW)
+- **rai**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/c8329fc572903eeed7edad1642773b2268b71a62) ([#13572](https://github.com/yt-dlp/yt-dlp/issues/13572)) by [moonshinerd](https://github.com/moonshinerd), [seproDev](https://github.com/seproDev)
+- **raisudtirol**: [Support alternative domain](https://github.com/yt-dlp/yt-dlp/commit/85c3fa1925a9057ef4ae8af682686d5b3eb8e568) ([#13718](https://github.com/yt-dlp/yt-dlp/issues/13718)) by [barsnick](https://github.com/barsnick)
+- **skeb**: [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/060c6a4501a0b8a92f1b9c12788f556d902c83c6) ([#13593](https://github.com/yt-dlp/yt-dlp/issues/13593)) by [doe1080](https://github.com/doe1080)
+- **soundcloud**: [Always extract original format extension](https://github.com/yt-dlp/yt-dlp/commit/c1ac543c8166ff031d62e340b3244ca8556e3fb9) ([#13746](https://github.com/yt-dlp/yt-dlp/issues/13746)) by [bashonly](https://github.com/bashonly)
+- **sproutvideo**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/0b41746964e1d0470ac286ce09408940a3a51147) ([#13610](https://github.com/yt-dlp/yt-dlp/issues/13610)) by [bashonly](https://github.com/bashonly)
+- **thehighwire**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/3a84be9d1660ef798ea28f929a20391bef6afda4) ([#13505](https://github.com/yt-dlp/yt-dlp/issues/13505)) by [swayll](https://github.com/swayll)
+- **twitch**: [Improve error handling](https://github.com/yt-dlp/yt-dlp/commit/422cc8cb2ff2bd3b4c2bc64e23507b7e6f522c35) ([#13618](https://github.com/yt-dlp/yt-dlp/issues/13618)) by [bashonly](https://github.com/bashonly)
+- **unitednationswebtv**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/630f3389c33f0f7f6ec97e8917d20aeb4e4078da) ([#13538](https://github.com/yt-dlp/yt-dlp/issues/13538)) by [averageFOSSenjoyer](https://github.com/averageFOSSenjoyer)
+- **vimeo**
+ - [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/a5d697f62d8be78ffd472acb2f52c8bc32833003) ([#13692](https://github.com/yt-dlp/yt-dlp/issues/13692)) by [bashonly](https://github.com/bashonly)
+ - [Handle age-restricted videos](https://github.com/yt-dlp/yt-dlp/commit/a6db1d297ab40cc346de24aacbeab93112b2f4e1) ([#13719](https://github.com/yt-dlp/yt-dlp/issues/13719)) by [bashonly](https://github.com/bashonly)
+- **youtube**
+ - [Do not require PO Token for premium accounts](https://github.com/yt-dlp/yt-dlp/commit/5b57b72c1a7c6bd249ffcebdf5630761ec664c10) ([#13640](https://github.com/yt-dlp/yt-dlp/issues/13640)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Ensure context params are consistent for web clients](https://github.com/yt-dlp/yt-dlp/commit/6e5bee418bc108565108153fd745c8e7a59f16dd) ([#13701](https://github.com/yt-dlp/yt-dlp/issues/13701)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Extract global nsig helper functions](https://github.com/yt-dlp/yt-dlp/commit/fca94ac5d63ed6578b5cd9c8129d97a8a713c39a) ([#13639](https://github.com/yt-dlp/yt-dlp/issues/13639)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+ - [Fix subtitles extraction](https://github.com/yt-dlp/yt-dlp/commit/0e68332bcb9fba87c42805b7a051eeb2bed36206) ([#13659](https://github.com/yt-dlp/yt-dlp/issues/13659)) by [bashonly](https://github.com/bashonly)
+ - [Log bad playability statuses of player responses](https://github.com/yt-dlp/yt-dlp/commit/aa9f1f4d577e99897ac16cd19d4e217d688ea75d) ([#13647](https://github.com/yt-dlp/yt-dlp/issues/13647)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Use impersonation for downloading subtitles](https://github.com/yt-dlp/yt-dlp/commit/8820101aa3152e5f4811541c645f8b5de231ba8c) ([#13786](https://github.com/yt-dlp/yt-dlp/issues/13786)) by [bashonly](https://github.com/bashonly)
+ - tab: [Fix subscriptions feed extraction](https://github.com/yt-dlp/yt-dlp/commit/c23d837b6524d1e7a4595948871ba1708cba4dfa) ([#13665](https://github.com/yt-dlp/yt-dlp/issues/13665)) by [bashonly](https://github.com/bashonly)
+
+#### Downloader changes
+- **hls**: [Do not fall back to ffmpeg when native is required](https://github.com/yt-dlp/yt-dlp/commit/a7113722ec33f30fc898caee9242af2b82188a53) ([#13655](https://github.com/yt-dlp/yt-dlp/issues/13655)) by [bashonly](https://github.com/bashonly)
+
+#### Networking changes
+- **Request Handler**
+ - requests
+ - [Refactor default headers](https://github.com/yt-dlp/yt-dlp/commit/a4561c7a66c39d88efe7ae51e7fa1986faf093fb) ([#13785](https://github.com/yt-dlp/yt-dlp/issues/13785)) by [bashonly](https://github.com/bashonly)
+ - [Work around partial read dropping data](https://github.com/yt-dlp/yt-dlp/commit/c2ff2dbaec7929015373fe002e9bd4849931a4ce) ([#13599](https://github.com/yt-dlp/yt-dlp/issues/13599)) by [Grub4K](https://github.com/Grub4K) (With fixes in [c316416](https://github.com/yt-dlp/yt-dlp/commit/c316416b972d1b05e58fbcc21e80428b900ce102))
+
+#### Misc. changes
+- **cleanup**
+ - [Bump ruff to 0.12.x](https://github.com/yt-dlp/yt-dlp/commit/ca5cce5b07d51efe7310b449cdefeca8d873e9df) ([#13596](https://github.com/yt-dlp/yt-dlp/issues/13596)) by [seproDev](https://github.com/seproDev)
+ - Miscellaneous: [9951fdd](https://github.com/yt-dlp/yt-dlp/commit/9951fdd0d08b655cb1af8cd7f32a3fb7e2b1324e) by [adamralph](https://github.com/adamralph), [bashonly](https://github.com/bashonly), [doe1080](https://github.com/doe1080), [hseg](https://github.com/hseg), [InvalidUsernameException](https://github.com/InvalidUsernameException), [seproDev](https://github.com/seproDev)
+- **devscripts**: [Fix filename/directory Bash completions](https://github.com/yt-dlp/yt-dlp/commit/99093e96fd6a26dea9d6e4bd1e4b16283b6ad1ee) ([#13620](https://github.com/yt-dlp/yt-dlp/issues/13620)) by [barsnick](https://github.com/barsnick)
+- **test**: download: [Support `playlist_maxcount`](https://github.com/yt-dlp/yt-dlp/commit/fd36b8f31bafbd8096bdb92a446a0c9c6081209c) ([#13433](https://github.com/yt-dlp/yt-dlp/issues/13433)) by [InvalidUsernameException](https://github.com/InvalidUsernameException)
+
+### 2025.06.30
+
+#### Core changes
+- **jsinterp**: [Fix `extract_object`](https://github.com/yt-dlp/yt-dlp/commit/958153a226214c86879e36211ac191bf78289578) ([#13580](https://github.com/yt-dlp/yt-dlp/issues/13580)) by [seproDev](https://github.com/seproDev)
+
+#### Extractor changes
+- **bilibilispacevideo**: [Extract hidden-mode collections as playlists](https://github.com/yt-dlp/yt-dlp/commit/99b85ac102047446e6adf5b62bfc3c8d80b53778) ([#13533](https://github.com/yt-dlp/yt-dlp/issues/13533)) by [c-basalt](https://github.com/c-basalt)
+- **hotstar**
+ - [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/b5bd057fe86550f3aa67f2fc8790d1c6a251c57b) ([#13530](https://github.com/yt-dlp/yt-dlp/issues/13530)) by [bashonly](https://github.com/bashonly), [chauhantirth](https://github.com/chauhantirth) (With fixes in [e9f1576](https://github.com/yt-dlp/yt-dlp/commit/e9f157669e24953a88d15ce22053649db7a8e81e) by [bashonly](https://github.com/bashonly))
+ - [Fix metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/0a6b1044899f452cd10b6c7a6b00fa985a9a8b97) ([#13560](https://github.com/yt-dlp/yt-dlp/issues/13560)) by [bashonly](https://github.com/bashonly)
+ - [Raise for login required](https://github.com/yt-dlp/yt-dlp/commit/5e292baad62c749b6c340621ab2d0f904165ddfb) ([#10405](https://github.com/yt-dlp/yt-dlp/issues/10405)) by [bashonly](https://github.com/bashonly)
+ - series: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/4bd9a7ade7e0508b9795b3e72a69eeb40788b62b) ([#13564](https://github.com/yt-dlp/yt-dlp/issues/13564)) by [bashonly](https://github.com/bashonly)
+- **jiocinema**: [Remove extractors](https://github.com/yt-dlp/yt-dlp/commit/7e2504f941a11ea2b0dba00de3f0295cdc253e79) ([#13565](https://github.com/yt-dlp/yt-dlp/issues/13565)) by [bashonly](https://github.com/bashonly)
+- **kick**: [Support subscriber-only content](https://github.com/yt-dlp/yt-dlp/commit/b16722ede83377f77ea8352dcd0a6ca8e83b8f0f) ([#13550](https://github.com/yt-dlp/yt-dlp/issues/13550)) by [helpimnotdrowning](https://github.com/helpimnotdrowning)
+- **niconico**: live: [Fix extractor and downloader](https://github.com/yt-dlp/yt-dlp/commit/06c1a8cdffe14050206683253726875144192ef5) ([#13158](https://github.com/yt-dlp/yt-dlp/issues/13158)) by [doe1080](https://github.com/doe1080)
+- **sauceplus**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/35fc33fbc51c7f5392fb2300f65abf6cf107ef90) ([#13567](https://github.com/yt-dlp/yt-dlp/issues/13567)) by [bashonly](https://github.com/bashonly), [ceandreasen](https://github.com/ceandreasen)
+- **sproutvideo**: [Support browser impersonation](https://github.com/yt-dlp/yt-dlp/commit/11b9416e10cff7513167d76d6c47774fcdd3e26a) ([#13589](https://github.com/yt-dlp/yt-dlp/issues/13589)) by [bashonly](https://github.com/bashonly)
+- **youtube**: [Fix premium formats extraction](https://github.com/yt-dlp/yt-dlp/commit/2ba5391cd68ed4f2415c827d2cecbcbc75ace10b) ([#13586](https://github.com/yt-dlp/yt-dlp/issues/13586)) by [bashonly](https://github.com/bashonly)
+
+#### Misc. changes
+- **ci**: [Add signature tests](https://github.com/yt-dlp/yt-dlp/commit/1b883846347addeab12663fd74317fd544341a1c) ([#13582](https://github.com/yt-dlp/yt-dlp/issues/13582)) by [bashonly](https://github.com/bashonly)
+- **cleanup**: Miscellaneous: [b018784](https://github.com/yt-dlp/yt-dlp/commit/b0187844988e557c7e1e6bb1aabd4c1176768d86) by [bashonly](https://github.com/bashonly)
+
+### 2025.06.25
+
+#### Extractor changes
+- [Add `_search_nuxt_json` helper](https://github.com/yt-dlp/yt-dlp/commit/51887484e46ab6015c041cb1ab626a55f25a03bd) ([#13386](https://github.com/yt-dlp/yt-dlp/issues/13386)) by [bashonly](https://github.com/bashonly), [Grub4K](https://github.com/Grub4K)
+- **brightcove**: new: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/e6bd4a3da295b760ab20b39c18ce8934d312c2bf) ([#13461](https://github.com/yt-dlp/yt-dlp/issues/13461)) by [doe1080](https://github.com/doe1080)
+- **huya**: live: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/2600849badb0d08c55b58dcc77a13af6ba423da6) ([#13520](https://github.com/yt-dlp/yt-dlp/issues/13520)) by [doe1080](https://github.com/doe1080)
+- **hypergryph**: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/1722c55400ff30bb5aee5dd7a262f0b7e9ce2f0e) ([#13415](https://github.com/yt-dlp/yt-dlp/issues/13415)) by [doe1080](https://github.com/doe1080), [eason1478](https://github.com/eason1478)
+- **lsm**: [Fix extractors](https://github.com/yt-dlp/yt-dlp/commit/c57412d1f9cf0124adc972a47858ac42b740c61d) ([#13126](https://github.com/yt-dlp/yt-dlp/issues/13126)) by [Caesim404](https://github.com/Caesim404)
+- **mave**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/1838a1ce5d4ade80770ba9162eaffc9a1607dc70) ([#13380](https://github.com/yt-dlp/yt-dlp/issues/13380)) by [anlar](https://github.com/anlar)
+- **sportdeutschland**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/a4ce4327c9836691d3b6b00e44a90b6741601ed8) ([#13519](https://github.com/yt-dlp/yt-dlp/issues/13519)) by [DTrombett](https://github.com/DTrombett)
+- **sproutvideo**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/5b559d0072b7164daf06bacdc41c6f11283452c8) ([#13544](https://github.com/yt-dlp/yt-dlp/issues/13544)) by [bashonly](https://github.com/bashonly)
+- **tv8.it**: [Support slugless URLs](https://github.com/yt-dlp/yt-dlp/commit/3bd30291601c47fa4a257983473884103ecab0c7) ([#13478](https://github.com/yt-dlp/yt-dlp/issues/13478)) by [DTrombett](https://github.com/DTrombett)
+- **youtube**
+ - [Check any `ios` m3u8 formats prior to download](https://github.com/yt-dlp/yt-dlp/commit/8f94b76cbf7bbd9dfd8762c63cdea04f90f1297f) ([#13524](https://github.com/yt-dlp/yt-dlp/issues/13524)) by [bashonly](https://github.com/bashonly)
+ - [Improve player context payloads](https://github.com/yt-dlp/yt-dlp/commit/ff6f94041aeee19c5559e1c1cd693960a1c1dd14) ([#13539](https://github.com/yt-dlp/yt-dlp/issues/13539)) by [bashonly](https://github.com/bashonly)
+
+#### Misc. changes
+- **test**: `traversal`: [Fix morsel tests for Python 3.14](https://github.com/yt-dlp/yt-dlp/commit/73bf10211668e4a59ccafd790e06ee82d9fea9ea) ([#13471](https://github.com/yt-dlp/yt-dlp/issues/13471)) by [Grub4K](https://github.com/Grub4K)
+
+### 2025.06.09
+
+#### Extractor changes
+- [Improve JSON LD thumbnails extraction](https://github.com/yt-dlp/yt-dlp/commit/85c8a405e3651dc041b758f4744d4fb3c4c55e01) ([#13368](https://github.com/yt-dlp/yt-dlp/issues/13368)) by [bashonly](https://github.com/bashonly), [doe1080](https://github.com/doe1080)
+- **10play**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/6d265388c6e943419ac99e9151cf75a3265f980f) ([#13349](https://github.com/yt-dlp/yt-dlp/issues/13349)) by [bashonly](https://github.com/bashonly)
+- **adobepass**
+ - [Add Fubo MSO](https://github.com/yt-dlp/yt-dlp/commit/eee90acc47d7f8de24afaa8b0271ccaefdf6e88c) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [maxbin123](https://github.com/maxbin123)
+ - [Always add newer user-agent when required](https://github.com/yt-dlp/yt-dlp/commit/0ee1102268cf31b07f8a8318a47424c66b2f7378) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+ - [Fix Philo MSO authentication](https://github.com/yt-dlp/yt-dlp/commit/943083edcd3df45aaa597a6967bc6c95b720f54c) ([#13335](https://github.com/yt-dlp/yt-dlp/issues/13335)) by [Sipherdrakon](https://github.com/Sipherdrakon)
+ - [Rework to require software statement](https://github.com/yt-dlp/yt-dlp/commit/711c5d5d098fee2992a1a624b1c4b30364b91426) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly), [maxbin123](https://github.com/maxbin123)
+ - [Validate login URL before sending credentials](https://github.com/yt-dlp/yt-dlp/commit/89c1b349ad81318d9d3bea76c01c891696e58d38) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **aenetworks**
+ - [Fix playlist extractors](https://github.com/yt-dlp/yt-dlp/commit/f37d599a697e82fe68b423865897d55bae34f373) ([#13408](https://github.com/yt-dlp/yt-dlp/issues/13408)) by [Sipherdrakon](https://github.com/Sipherdrakon)
+ - [Fix provider-locked content extraction](https://github.com/yt-dlp/yt-dlp/commit/6693d6603358ae6beca834dbd822a7917498b813) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [maxbin123](https://github.com/maxbin123)
+- **bilibilibangumi**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/13e55162719528d42d2133e16b65ff59a667a6e4) ([#13416](https://github.com/yt-dlp/yt-dlp/issues/13416)) by [c-basalt](https://github.com/c-basalt)
+- **brightcove**: new: [Adapt to new AdobePass requirement](https://github.com/yt-dlp/yt-dlp/commit/98f8eec956e3b16cb66a3d49cc71af3807db795e) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **cu.ntv.co.jp**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/aa863ddab9b1d104678e9cf39bb76f5b14fca660) ([#13302](https://github.com/yt-dlp/yt-dlp/issues/13302)) by [doe1080](https://github.com/doe1080), [nullpos](https://github.com/nullpos)
+- **go**: [Fix provider-locked content extraction](https://github.com/yt-dlp/yt-dlp/commit/2e5bf002dad16f5ce35aa2023d392c9e518fcd8f) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly), [maxbin123](https://github.com/maxbin123)
+- **nbc**: [Rework and adapt extractors to new AdobePass flow](https://github.com/yt-dlp/yt-dlp/commit/2d7949d5642bc37d1e71bf00c9a55260e5505d58) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **nobelprize**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/97ddfefeb4faba6e61cd80996c16952b8eab16f3) ([#13205](https://github.com/yt-dlp/yt-dlp/issues/13205)) by [doe1080](https://github.com/doe1080)
+- **odnoklassniki**: [Detect and raise when login is required](https://github.com/yt-dlp/yt-dlp/commit/148a1eb4c59e127965396c7a6e6acf1979de459e) ([#13361](https://github.com/yt-dlp/yt-dlp/issues/13361)) by [bashonly](https://github.com/bashonly)
+- **patreon**: [Fix m3u8 formats extraction](https://github.com/yt-dlp/yt-dlp/commit/e0d6c0822930f6e63f574d46d946a58b73ecd10c) ([#13266](https://github.com/yt-dlp/yt-dlp/issues/13266)) by [bashonly](https://github.com/bashonly) (With fixes in [1a8a03e](https://github.com/yt-dlp/yt-dlp/commit/1a8a03ea8d827107319a18076ee3505090667c5a))
+- **podchaser**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/538eb305673c26bff6a2b12f1c96375fe02ce41a) ([#13271](https://github.com/yt-dlp/yt-dlp/issues/13271)) by [bashonly](https://github.com/bashonly)
+- **sr**: mediathek: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/e3c605a61f4cc2de9059f37434fa108c3c20f58e) ([#13294](https://github.com/yt-dlp/yt-dlp/issues/13294)) by [doe1080](https://github.com/doe1080)
+- **stacommu**: [Avoid partial stream formats](https://github.com/yt-dlp/yt-dlp/commit/5d96527be80dc1ed1702d9cd548ff86de570ad70) ([#13412](https://github.com/yt-dlp/yt-dlp/issues/13412)) by [bashonly](https://github.com/bashonly)
+- **startrek**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/a8bf0011bde92b3f1324a98bfbd38932fd3ebe18) ([#13188](https://github.com/yt-dlp/yt-dlp/issues/13188)) by [doe1080](https://github.com/doe1080)
+- **svt**: play: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/e1b6062f8c4a3fa33c65269d48d09ec78de765a2) ([#13329](https://github.com/yt-dlp/yt-dlp/issues/13329)) by [barsnick](https://github.com/barsnick), [bashonly](https://github.com/bashonly)
+- **telecinco**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/03dba2012d9bd3f402fa8c2f122afba89bbd22a4) ([#13379](https://github.com/yt-dlp/yt-dlp/issues/13379)) by [bashonly](https://github.com/bashonly)
+- **theplatform**: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/ed108b3ea481c6a4b5215a9302ba92d74baa2425) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **toutiao**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/f8051e3a61686c5db1de5f5746366ecfbc3ad20c) ([#13246](https://github.com/yt-dlp/yt-dlp/issues/13246)) by [doe1080](https://github.com/doe1080)
+- **turner**: [Adapt extractors to new AdobePass flow](https://github.com/yt-dlp/yt-dlp/commit/0daddc780d3ac5bebc3a3ec5b884d9243cbc0745) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **twitcasting**: [Fix password-protected livestream support](https://github.com/yt-dlp/yt-dlp/commit/52f9729c9a92ad4656d746ff0b1acecb87b3e96d) ([#13097](https://github.com/yt-dlp/yt-dlp/issues/13097)) by [bashonly](https://github.com/bashonly)
+- **twitter**: broadcast: [Support events URLs](https://github.com/yt-dlp/yt-dlp/commit/7794374de8afb20499b023107e2abfd4e6b93ee4) ([#13248](https://github.com/yt-dlp/yt-dlp/issues/13248)) by [doe1080](https://github.com/doe1080)
+- **umg**: de: [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/4e7c1ea346b510280218b47e8653dbbca3a69870) ([#13373](https://github.com/yt-dlp/yt-dlp/issues/13373)) by [doe1080](https://github.com/doe1080)
+- **vice**: [Mark extractors as broken](https://github.com/yt-dlp/yt-dlp/commit/6121559e027a04574690799c1776bc42bb51af31) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [bashonly](https://github.com/bashonly)
+- **vimeo**: [Extract subtitles from player subdomain](https://github.com/yt-dlp/yt-dlp/commit/c723c4e5e78263df178dbe69844a3d05f3ef9e35) ([#13350](https://github.com/yt-dlp/yt-dlp/issues/13350)) by [bashonly](https://github.com/bashonly)
+- **watchespn**: [Fix provider-locked content extraction](https://github.com/yt-dlp/yt-dlp/commit/b094747e93cfb0a2c53007120e37d0d84d41f030) ([#13131](https://github.com/yt-dlp/yt-dlp/issues/13131)) by [maxbin123](https://github.com/maxbin123)
+- **weverse**: [Support login with oauth refresh tokens](https://github.com/yt-dlp/yt-dlp/commit/3fe72e9eea38d9a58211cde42cfaa577ce020e2c) ([#13284](https://github.com/yt-dlp/yt-dlp/issues/13284)) by [bashonly](https://github.com/bashonly)
+- **youtube**
+ - [Add `tv_simply` player client](https://github.com/yt-dlp/yt-dlp/commit/1fd0e88b67db53ad163393d6965f68e908fa70e3) ([#13389](https://github.com/yt-dlp/yt-dlp/issues/13389)) by [gamer191](https://github.com/gamer191)
+ - [Extract srt subtitles](https://github.com/yt-dlp/yt-dlp/commit/231349786e8c42089c2e079ec94c0ea866c37999) ([#13411](https://github.com/yt-dlp/yt-dlp/issues/13411)) by [gamer191](https://github.com/gamer191)
+ - [Fix `--mark-watched` support](https://github.com/yt-dlp/yt-dlp/commit/b5be29fa58ec98226e11621fd9c58585bcff6879) ([#13222](https://github.com/yt-dlp/yt-dlp/issues/13222)) by [brian6932](https://github.com/brian6932), [iednod55](https://github.com/iednod55)
+ - [Fix automatic captions for some client combinations](https://github.com/yt-dlp/yt-dlp/commit/53ea743a9c158f8ca2d75a09ca44ba68606042d8) ([#13268](https://github.com/yt-dlp/yt-dlp/issues/13268)) by [bashonly](https://github.com/bashonly)
+ - [Improve signature extraction debug output](https://github.com/yt-dlp/yt-dlp/commit/d30a49742cfa22e61c47df4ac0e7334d648fb85d) ([#13327](https://github.com/yt-dlp/yt-dlp/issues/13327)) by [bashonly](https://github.com/bashonly)
+ - [Rework nsig function name extraction](https://github.com/yt-dlp/yt-dlp/commit/9e38b273b7ac942e7e9fc05a651ed810ab7d30ba) ([#13403](https://github.com/yt-dlp/yt-dlp/issues/13403)) by [Grub4K](https://github.com/Grub4K)
+ - [nsig code improvements and cleanup](https://github.com/yt-dlp/yt-dlp/commit/f7bbf5a617f9ab54ef51eaef99be36e175b5e9c3) ([#13280](https://github.com/yt-dlp/yt-dlp/issues/13280)) by [bashonly](https://github.com/bashonly)
+- **zdf**: [Fix language extraction and format sorting](https://github.com/yt-dlp/yt-dlp/commit/db162b76f6bdece50babe2e0cacfe56888c2e125) ([#13313](https://github.com/yt-dlp/yt-dlp/issues/13313)) by [InvalidUsernameException](https://github.com/InvalidUsernameException)
+
+#### Misc. changes
+- **build**
+ - [Exclude `pkg_resources` from being collected](https://github.com/yt-dlp/yt-dlp/commit/cc749a8a3b8b6e5c05318868c72a403f376a1b38) ([#13320](https://github.com/yt-dlp/yt-dlp/issues/13320)) by [bashonly](https://github.com/bashonly)
+ - [Fix macOS requirements caching](https://github.com/yt-dlp/yt-dlp/commit/201812100f315c6727a4418698d5b4e8a79863d4) ([#13328](https://github.com/yt-dlp/yt-dlp/issues/13328)) by [bashonly](https://github.com/bashonly)
+- **cleanup**: Miscellaneous: [339614a](https://github.com/yt-dlp/yt-dlp/commit/339614a173c74b42d63e858c446a9cae262a13af) by [bashonly](https://github.com/bashonly)
+- **test**: postprocessors: [Remove binary thumbnail test data](https://github.com/yt-dlp/yt-dlp/commit/a9b370069838e84d44ac7ad095d657003665885a) ([#13341](https://github.com/yt-dlp/yt-dlp/issues/13341)) by [bashonly](https://github.com/bashonly)
+
+### 2025.05.22
+
+#### Core changes
+- **cookies**: [Fix Linux desktop environment detection](https://github.com/yt-dlp/yt-dlp/commit/e491fd4d090db3af52a82863fb0553dd5e17fb85) ([#13197](https://github.com/yt-dlp/yt-dlp/issues/13197)) by [mbway](https://github.com/mbway)
+- **jsinterp**: [Fix increment/decrement evaluation](https://github.com/yt-dlp/yt-dlp/commit/167d7a9f0ffd1b4fe600193441bdb7358db2740b) ([#13238](https://github.com/yt-dlp/yt-dlp/issues/13238)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+
+#### Extractor changes
+- **1tv**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/41c0a1fb89628696f8bb88e2b9f3a68f355b8c26) ([#13168](https://github.com/yt-dlp/yt-dlp/issues/13168)) by [bashonly](https://github.com/bashonly)
+- **amcnetworks**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/464c84fedf78eef822a431361155f108b5df96d7) ([#13147](https://github.com/yt-dlp/yt-dlp/issues/13147)) by [bashonly](https://github.com/bashonly)
+- **bitchute**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/1d0f6539c47e5d5c68c3c47cdb7075339e2885ac) ([#13081](https://github.com/yt-dlp/yt-dlp/issues/13081)) by [bashonly](https://github.com/bashonly)
+- **cartoonnetwork**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/7dbb47f84f0ee1266a3a01f58c9bc4c76d76794a) ([#13148](https://github.com/yt-dlp/yt-dlp/issues/13148)) by [bashonly](https://github.com/bashonly)
+- **iprima**: [Fix login support](https://github.com/yt-dlp/yt-dlp/commit/a7d9a5eb79ceeecb851389f3f2c88597871ca3f2) ([#12937](https://github.com/yt-dlp/yt-dlp/issues/12937)) by [baierjan](https://github.com/baierjan)
+- **jiosaavn**
+ - artist: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/586b557b124f954d3f625360ebe970989022ad97) ([#12803](https://github.com/yt-dlp/yt-dlp/issues/12803)) by [subrat-lima](https://github.com/subrat-lima)
+ - playlist, show: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/317f4b8006c2c0f0f64f095b1485163ad97c9053) ([#12803](https://github.com/yt-dlp/yt-dlp/issues/12803)) by [subrat-lima](https://github.com/subrat-lima)
+ - show: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/6839276496d8814cf16f58b637e45663467928e6) ([#12803](https://github.com/yt-dlp/yt-dlp/issues/12803)) by [subrat-lima](https://github.com/subrat-lima)
+- **lrtradio**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/abf58dcd6a09e14eec4ea82ae12f79a0337cb383) ([#13200](https://github.com/yt-dlp/yt-dlp/issues/13200)) by [Pawka](https://github.com/Pawka)
+- **nebula**: [Support `--mark-watched`](https://github.com/yt-dlp/yt-dlp/commit/20f288bdc2173c7cc58d709d25ca193c1f6001e7) ([#13120](https://github.com/yt-dlp/yt-dlp/issues/13120)) by [GeoffreyFrogeye](https://github.com/GeoffreyFrogeye)
+- **niconico**
+ - [Fix error handling](https://github.com/yt-dlp/yt-dlp/commit/f569be4602c2a857087e495d5d7ed6060cd97abe) ([#13236](https://github.com/yt-dlp/yt-dlp/issues/13236)) by [bashonly](https://github.com/bashonly)
+ - live: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/7a7b85c9014d96421e18aa7ea5f4c1bee5ceece0) ([#13045](https://github.com/yt-dlp/yt-dlp/issues/13045)) by [doe1080](https://github.com/doe1080)
+- **nytimesarticle**: [Fix extraction](https://github.com/yt-dlp/yt-dlp/commit/b26bc32579c00ef579d75a835807ccc87d20ee0a) ([#13104](https://github.com/yt-dlp/yt-dlp/issues/13104)) by [bashonly](https://github.com/bashonly)
+- **once**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/f475e8b529d18efdad603ffda02a56e707fe0e2c) ([#13164](https://github.com/yt-dlp/yt-dlp/issues/13164)) by [bashonly](https://github.com/bashonly)
+- **picarto**: vod: [Support `/profile/` video URLs](https://github.com/yt-dlp/yt-dlp/commit/31e090cb787f3504ec25485adff9a2a51d056734) ([#13227](https://github.com/yt-dlp/yt-dlp/issues/13227)) by [subrat-lima](https://github.com/subrat-lima)
+- **playsuisse**: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/d880e060803ae8ed5a047e578cca01e1f0e630ce) ([#12466](https://github.com/yt-dlp/yt-dlp/issues/12466)) by [v3DJG6GL](https://github.com/v3DJG6GL)
+- **sprout**: [Remove extractor](https://github.com/yt-dlp/yt-dlp/commit/cbcfe6378dde33a650e3852ab17ad4503b8e008d) ([#13149](https://github.com/yt-dlp/yt-dlp/issues/13149)) by [bashonly](https://github.com/bashonly)
+- **svtpage**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/ea8498ed534642dd7e925961b97b934987142fd3) ([#12957](https://github.com/yt-dlp/yt-dlp/issues/12957)) by [diman8](https://github.com/diman8)
+- **twitch**: [Support `--live-from-start`](https://github.com/yt-dlp/yt-dlp/commit/00b1bec55249cf2ad6271d36492c51b34b6459d1) ([#13202](https://github.com/yt-dlp/yt-dlp/issues/13202)) by [bashonly](https://github.com/bashonly)
+- **vimeo**: event: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/545c1a5b6f2fe88722b41aef0e7485bf3be3f3f9) ([#13216](https://github.com/yt-dlp/yt-dlp/issues/13216)) by [bashonly](https://github.com/bashonly)
+- **wat.tv**: [Improve error handling](https://github.com/yt-dlp/yt-dlp/commit/f123cc83b3aea45053f5fa1d9141048b01fc2774) ([#13111](https://github.com/yt-dlp/yt-dlp/issues/13111)) by [bashonly](https://github.com/bashonly)
+- **weverse**: [Fix live extraction](https://github.com/yt-dlp/yt-dlp/commit/5328eda8820cc5f21dcf917684d23fbdca41831d) ([#13084](https://github.com/yt-dlp/yt-dlp/issues/13084)) by [bashonly](https://github.com/bashonly)
+- **xinpianchang**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/83fabf352489d52843f67e6e9cc752db86d27e6e) ([#13245](https://github.com/yt-dlp/yt-dlp/issues/13245)) by [garret1317](https://github.com/garret1317)
+- **youtube**
+ - [Add PO token support for subtitles](https://github.com/yt-dlp/yt-dlp/commit/32ed5f107c6c641958d1cd2752e130de4db55a13) ([#13234](https://github.com/yt-dlp/yt-dlp/issues/13234)) by [bashonly](https://github.com/bashonly), [coletdjnz](https://github.com/coletdjnz)
+ - [Add `web_embedded` client for age-restricted videos](https://github.com/yt-dlp/yt-dlp/commit/0feec6dc131f488428bf881519e7c69766fbb9ae) ([#13089](https://github.com/yt-dlp/yt-dlp/issues/13089)) by [bashonly](https://github.com/bashonly)
+ - [Add a PO Token Provider Framework](https://github.com/yt-dlp/yt-dlp/commit/2685654a37141cca63eda3a92da0e2706e23ccfd) ([#12840](https://github.com/yt-dlp/yt-dlp/issues/12840)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Extract `media_type` for all videos](https://github.com/yt-dlp/yt-dlp/commit/ded11ebc9afba6ba33923375103e9be2d7c804e7) ([#13136](https://github.com/yt-dlp/yt-dlp/issues/13136)) by [bashonly](https://github.com/bashonly)
+ - [Fix `--live-from-start` support for premieres](https://github.com/yt-dlp/yt-dlp/commit/8f303afb43395be360cafd7ad4ce2b6e2eedfb8a) ([#13079](https://github.com/yt-dlp/yt-dlp/issues/13079)) by [arabcoders](https://github.com/arabcoders)
+ - [Fix geo-restriction error handling](https://github.com/yt-dlp/yt-dlp/commit/c7e575e31608c19c5b26c10a4229db89db5fc9a8) ([#13217](https://github.com/yt-dlp/yt-dlp/issues/13217)) by [yozel](https://github.com/yozel)
+
+#### Misc. changes
+- **build**
+ - [Bump PyInstaller to v6.13.0](https://github.com/yt-dlp/yt-dlp/commit/17cf9088d0d535e4a7feffbf02bd49cd9dae5ab9) ([#13082](https://github.com/yt-dlp/yt-dlp/issues/13082)) by [bashonly](https://github.com/bashonly)
+ - [Bump run-on-arch-action to v3](https://github.com/yt-dlp/yt-dlp/commit/9064d2482d1fe722bbb4a49731fe0711c410d1c8) ([#13088](https://github.com/yt-dlp/yt-dlp/issues/13088)) by [bashonly](https://github.com/bashonly)
+- **cleanup**: Miscellaneous: [7977b32](https://github.com/yt-dlp/yt-dlp/commit/7977b329ed97b216e37bd402f4935f28c00eac9e) by [bashonly](https://github.com/bashonly)
+
+### 2025.04.30
+
+#### Important changes
+- **New option `--preset-alias`/`-t` has been added**
+This provides convenient predefined aliases for common use cases. Available presets include `mp4`, `mp3`, `mkv`, `aac`, and `sleep`. See [the README](https://github.com/yt-dlp/yt-dlp/blob/master/README.md#preset-aliases) for more details.
+
+#### Core changes
+- [Add `--preset-alias` option](https://github.com/yt-dlp/yt-dlp/commit/88eb1e7a9a2720ac89d653c0d0e40292388823bb) ([#12839](https://github.com/yt-dlp/yt-dlp/issues/12839)) by [Grub4K](https://github.com/Grub4K), [seproDev](https://github.com/seproDev)
+- **utils**
+ - `_yield_json_ld`: [Make function less fatal](https://github.com/yt-dlp/yt-dlp/commit/45f01de00e1bc076b7f676a669736326178647b1) ([#12855](https://github.com/yt-dlp/yt-dlp/issues/12855)) by [seproDev](https://github.com/seproDev)
+ - `url_or_none`: [Support WebSocket URLs](https://github.com/yt-dlp/yt-dlp/commit/a473e592337edb8ca40cde52c1fcaee261c54df9) ([#12848](https://github.com/yt-dlp/yt-dlp/issues/12848)) by [doe1080](https://github.com/doe1080)
+
+#### Extractor changes
+- **abematv**: [Fix thumbnail extraction](https://github.com/yt-dlp/yt-dlp/commit/f5736bb35bde62348caebf7b188668655e316deb) ([#12859](https://github.com/yt-dlp/yt-dlp/issues/12859)) by [Kiritomo](https://github.com/Kiritomo)
+- **atresplayer**: [Rework extractor](https://github.com/yt-dlp/yt-dlp/commit/839d64325356310e6de6cd9cad28fb546619ca63) ([#11424](https://github.com/yt-dlp/yt-dlp/issues/11424)) by [meGAmeS1](https://github.com/meGAmeS1), [seproDev](https://github.com/seproDev)
+- **bpb**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/80736b9c90818adee933a155079b8535bc06819f) ([#13015](https://github.com/yt-dlp/yt-dlp/issues/13015)) by [bashonly](https://github.com/bashonly)
+- **cda**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/9032f981362ea0be90626fab51ec37934feded6d) ([#12975](https://github.com/yt-dlp/yt-dlp/issues/12975)) by [bashonly](https://github.com/bashonly)
+- **cdafolder**: [Extend `_VALID_URL`](https://github.com/yt-dlp/yt-dlp/commit/cb271d445bc2d866c9a3404b1d8f59bcb77447df) ([#12919](https://github.com/yt-dlp/yt-dlp/issues/12919)) by [fireattack](https://github.com/fireattack), [Kicer86](https://github.com/Kicer86)
+- **crowdbunker**: [Make format extraction non-fatal](https://github.com/yt-dlp/yt-dlp/commit/4ebf41309d04a6e196944f1c0f5f0154cff0055a) ([#12836](https://github.com/yt-dlp/yt-dlp/issues/12836)) by [seproDev](https://github.com/seproDev)
+- **dacast**: [Support tokenized URLs](https://github.com/yt-dlp/yt-dlp/commit/e7e3b7a55c456da4a5a812b4fefce4dce8e6a616) ([#12979](https://github.com/yt-dlp/yt-dlp/issues/12979)) by [bashonly](https://github.com/bashonly)
+- **dzen.ru**: [Rework extractors](https://github.com/yt-dlp/yt-dlp/commit/a3f2b54c2535d862de6efa9cfaa6ca9a2b2f7dd6) ([#12852](https://github.com/yt-dlp/yt-dlp/issues/12852)) by [seproDev](https://github.com/seproDev)
+- **generic**: [Fix MPD extraction for `file://` URLs](https://github.com/yt-dlp/yt-dlp/commit/34a061a295d156934417c67ee98070b94943006b) ([#12978](https://github.com/yt-dlp/yt-dlp/issues/12978)) by [bashonly](https://github.com/bashonly)
+- **getcourseru**: [Fix extractors](https://github.com/yt-dlp/yt-dlp/commit/741fd809bc4d301c19b53877692ae510334a6750) ([#12943](https://github.com/yt-dlp/yt-dlp/issues/12943)) by [troex](https://github.com/troex)
+- **ivoox**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/7faa18b83dcfc74a1a1e2034e6b0369c495ca645) ([#12768](https://github.com/yt-dlp/yt-dlp/issues/12768)) by [NeonMan](https://github.com/NeonMan), [seproDev](https://github.com/seproDev)
+- **kika**: [Add playlist extractor](https://github.com/yt-dlp/yt-dlp/commit/3c1c75ecb8ab352f422b59af46fff2be992e4115) ([#12832](https://github.com/yt-dlp/yt-dlp/issues/12832)) by [1100101](https://github.com/1100101)
+- **linkedin**
+ - [Support feed URLs](https://github.com/yt-dlp/yt-dlp/commit/73a26f9ee68610e33c0b4407b77355f2ab7afd0e) ([#12927](https://github.com/yt-dlp/yt-dlp/issues/12927)) by [seproDev](https://github.com/seproDev)
+ - events: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/b37ff4de5baf4e4e70c6a0ec34e136a279ad20af) ([#12926](https://github.com/yt-dlp/yt-dlp/issues/12926)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+- **loco**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/f5a37ea40e20865b976ffeeff13eeae60292eb23) ([#12934](https://github.com/yt-dlp/yt-dlp/issues/12934)) by [seproDev](https://github.com/seproDev)
+- **lrtradio**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/74e90dd9b8f9c1a5c48a2515126654f4d398d687) ([#12801](https://github.com/yt-dlp/yt-dlp/issues/12801)) by [subrat-lima](https://github.com/subrat-lima)
+- **manyvids**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/77aa15e98f34c4ad425aabf39dd1ee37b48f772c) ([#10907](https://github.com/yt-dlp/yt-dlp/issues/10907)) by [pj47x](https://github.com/pj47x)
+- **mixcloud**: [Refactor extractor](https://github.com/yt-dlp/yt-dlp/commit/db6d1f145ad583e0220637726029f8f2fa6200a0) ([#12830](https://github.com/yt-dlp/yt-dlp/issues/12830)) by [seproDev](https://github.com/seproDev), [WouterGordts](https://github.com/WouterGordts)
+- **mlbtv**: [Fix device ID caching](https://github.com/yt-dlp/yt-dlp/commit/36da6360e130197df927ee93409519ce3f4075f5) ([#12980](https://github.com/yt-dlp/yt-dlp/issues/12980)) by [bashonly](https://github.com/bashonly)
+- **niconico**
+ - [Fix login support](https://github.com/yt-dlp/yt-dlp/commit/25cd7c1ecbb6cbf21dd3a6e59608e4af94715ecc) ([#13008](https://github.com/yt-dlp/yt-dlp/issues/13008)) by [doe1080](https://github.com/doe1080)
+ - [Remove DMC formats support](https://github.com/yt-dlp/yt-dlp/commit/7d05aa99c65352feae1cd9a3ff8784b64bfe382a) ([#12916](https://github.com/yt-dlp/yt-dlp/issues/12916)) by [doe1080](https://github.com/doe1080)
+ - live: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/1d45e30537bf83e069184a440703e4c43b2e0198) ([#12809](https://github.com/yt-dlp/yt-dlp/issues/12809)) by [Snack-X](https://github.com/Snack-X)
+- **panopto**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/9d26daa04ad5108257bc5e30f7f040c7f1fe7a5a) ([#12925](https://github.com/yt-dlp/yt-dlp/issues/12925)) by [seproDev](https://github.com/seproDev)
+- **parti**: [Add extractors](https://github.com/yt-dlp/yt-dlp/commit/425017531fbc3369becb5a44013e26f26efabf45) ([#12769](https://github.com/yt-dlp/yt-dlp/issues/12769)) by [benfaerber](https://github.com/benfaerber)
+- **raiplay**: [Fix DRM detection](https://github.com/yt-dlp/yt-dlp/commit/dce82346245e35a46fda836ca2089805d2347935) ([#12971](https://github.com/yt-dlp/yt-dlp/issues/12971)) by [DTrombett](https://github.com/DTrombett)
+- **reddit**: [Support `--ignore-no-formats-error`](https://github.com/yt-dlp/yt-dlp/commit/28f04e8a5e383ff531db646190b4be45554610d6) ([#12993](https://github.com/yt-dlp/yt-dlp/issues/12993)) by [bashonly](https://github.com/bashonly)
+- **royalive**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/e1847535e28788414a25546a45bebcada2f34558) ([#12817](https://github.com/yt-dlp/yt-dlp/issues/12817)) by [CasperMcFadden95](https://github.com/CasperMcFadden95)
+- **rtve**: [Rework extractors](https://github.com/yt-dlp/yt-dlp/commit/f07ee91c71920ab1187a7ea756720e81aa406a9d) ([#10388](https://github.com/yt-dlp/yt-dlp/issues/10388)) by [meGAmeS1](https://github.com/meGAmeS1), [seproDev](https://github.com/seproDev)
+- **rumble**: [Improve format extraction](https://github.com/yt-dlp/yt-dlp/commit/58d0c83457b93b3c9a81eb6bc5a4c65f25e949df) ([#12838](https://github.com/yt-dlp/yt-dlp/issues/12838)) by [seproDev](https://github.com/seproDev)
+- **tokfmpodcast**: [Fix formats extraction](https://github.com/yt-dlp/yt-dlp/commit/91832111a12d87499294a0f430829b8c2254c339) ([#12842](https://github.com/yt-dlp/yt-dlp/issues/12842)) by [selfisekai](https://github.com/selfisekai)
+- **tv2dk**: [Fix extractor](https://github.com/yt-dlp/yt-dlp/commit/a3e91df30a45943f40759d2c1e0b6c2ca4b2a263) ([#12945](https://github.com/yt-dlp/yt-dlp/issues/12945)) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+- **tvp**: vod: [Improve `_VALID_URL`](https://github.com/yt-dlp/yt-dlp/commit/4e69a626cce51428bc1d66dc606a56d9498b03a5) ([#12923](https://github.com/yt-dlp/yt-dlp/issues/12923)) by [seproDev](https://github.com/seproDev)
+- **tvw**: tvchannels: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/ed8ad1b4d6b9d7a1426ff5192ff924f3371e4721) ([#12721](https://github.com/yt-dlp/yt-dlp/issues/12721)) by [fries1234](https://github.com/fries1234)
+- **twitcasting**: [Fix livestream extraction](https://github.com/yt-dlp/yt-dlp/commit/de271a06fd6d20d4f55597ff7f90e4d913de0a52) ([#12977](https://github.com/yt-dlp/yt-dlp/issues/12977)) by [bashonly](https://github.com/bashonly)
+- **twitch**: clips: [Fix uploader metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/1ae6bff564a65af41e94f1a4727892471ecdd05a) ([#13022](https://github.com/yt-dlp/yt-dlp/issues/13022)) by [1271](https://github.com/1271)
+- **twitter**
+ - [Fix extraction when logged-in](https://github.com/yt-dlp/yt-dlp/commit/1cf39ddf3d10b6512daa7dd139e5f6c0dc548bbc) ([#13024](https://github.com/yt-dlp/yt-dlp/issues/13024)) by [bashonly](https://github.com/bashonly)
+ - spaces: [Improve metadata extraction](https://github.com/yt-dlp/yt-dlp/commit/70599e53b736bb75922b737e6e0d4f76e419bb20) ([#12911](https://github.com/yt-dlp/yt-dlp/issues/12911)) by [doe1080](https://github.com/doe1080)
+- **vimeo**: [Extract from mobile API](https://github.com/yt-dlp/yt-dlp/commit/22ac81a0692019ac833cf282e4ef99718e9ef3fa) ([#13034](https://github.com/yt-dlp/yt-dlp/issues/13034)) by [bashonly](https://github.com/bashonly)
+- **vk**
+ - [Fix chapters extraction](https://github.com/yt-dlp/yt-dlp/commit/5361a7c6e2933c919716e0cb1e3116c28c40419f) ([#12821](https://github.com/yt-dlp/yt-dlp/issues/12821)) by [seproDev](https://github.com/seproDev)
+ - [Fix uploader extraction](https://github.com/yt-dlp/yt-dlp/commit/2381881fe58a723853350a6ab750a5efc9f10c85) ([#12985](https://github.com/yt-dlp/yt-dlp/issues/12985)) by [seproDev](https://github.com/seproDev)
+- **youtube**
+ - [Add context to video request rate limit error](https://github.com/yt-dlp/yt-dlp/commit/26feac3dd142536ad08ad1ed731378cb88e63602) ([#12958](https://github.com/yt-dlp/yt-dlp/issues/12958)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Add extractor arg to skip "initial_data" request](https://github.com/yt-dlp/yt-dlp/commit/ed6c6d7eefbc78fa72e4e60ad6edaa3ee2acc715) ([#12865](https://github.com/yt-dlp/yt-dlp/issues/12865)) by [leeblackc](https://github.com/leeblackc)
+ - [Add warning on video captcha challenge](https://github.com/yt-dlp/yt-dlp/commit/f484c51599a6cd01eb078ea7dc9bbba942967774) ([#12939](https://github.com/yt-dlp/yt-dlp/issues/12939)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Cache signature timestamps](https://github.com/yt-dlp/yt-dlp/commit/61c9a938b390b8334ee3a879fe2d93f714e30138) ([#13047](https://github.com/yt-dlp/yt-dlp/issues/13047)) by [bashonly](https://github.com/bashonly)
+ - [Detect and warn when account cookies are rotated](https://github.com/yt-dlp/yt-dlp/commit/8cb08028f5be2acb9835ce1670b196b9b077052f) ([#13014](https://github.com/yt-dlp/yt-dlp/issues/13014)) by [coletdjnz](https://github.com/coletdjnz)
+ - [Detect player JS variants for any locale](https://github.com/yt-dlp/yt-dlp/commit/c2d6659d1069f8cff97e1fd61d1c59e949e1e63d) ([#13003](https://github.com/yt-dlp/yt-dlp/issues/13003)) by [bashonly](https://github.com/bashonly)
+ - [Do not strictly deprioritize `missing_pot` formats](https://github.com/yt-dlp/yt-dlp/commit/74fc2ae12c24eb6b4e02c6360c89bd05f3c8f740) ([#13061](https://github.com/yt-dlp/yt-dlp/issues/13061)) by [bashonly](https://github.com/bashonly)
+ - [Improve warning for SABR-only/SSAP player responses](https://github.com/yt-dlp/yt-dlp/commit/fd8394bc50301ac5e930aa65aa71ab1b8372b8ab) ([#13049](https://github.com/yt-dlp/yt-dlp/issues/13049)) by [bashonly](https://github.com/bashonly)
+ - tab: [Extract continuation from empty page](https://github.com/yt-dlp/yt-dlp/commit/72ba4879304c2082fecbb472e6cc05ee2d154a3b) ([#12938](https://github.com/yt-dlp/yt-dlp/issues/12938)) by [coletdjnz](https://github.com/coletdjnz)
+- **zdf**: [Fix extractors](https://github.com/yt-dlp/yt-dlp/commit/7be14109a6bd493a2e881da4f9e30adaf3e7e5d5) ([#12779](https://github.com/yt-dlp/yt-dlp/issues/12779)) by [bashonly](https://github.com/bashonly), [InvalidUsernameException](https://github.com/InvalidUsernameException)
+
+#### Downloader changes
+- **niconicodmc**: [Remove downloader](https://github.com/yt-dlp/yt-dlp/commit/8d127b18f81131453eaba05d3bb810d9b73adb75) ([#12916](https://github.com/yt-dlp/yt-dlp/issues/12916)) by [doe1080](https://github.com/doe1080)
+
+#### Networking changes
+- [Add PATCH request shortcut](https://github.com/yt-dlp/yt-dlp/commit/ceab4d5ed63a1f135a1816fe967c9d9a1ec7e6e8) ([#12884](https://github.com/yt-dlp/yt-dlp/issues/12884)) by [doe1080](https://github.com/doe1080)
+
+#### Misc. changes
+- **ci**: [Add file mode test to code check](https://github.com/yt-dlp/yt-dlp/commit/3690e91265d1d0bbeffaf6a9b8cc9baded1367bd) ([#13036](https://github.com/yt-dlp/yt-dlp/issues/13036)) by [Grub4K](https://github.com/Grub4K)
+- **cleanup**: Miscellaneous: [505b400](https://github.com/yt-dlp/yt-dlp/commit/505b400795af557bdcfd9d4fa7e9133b26ef431c) by [bashonly](https://github.com/bashonly), [seproDev](https://github.com/seproDev)
+
+### 2025.03.31
+
+#### Core changes
+- [Add `--compat-options 2024`](https://github.com/yt-dlp/yt-dlp/commit/22e34adbd741e1c7072015debd615dc3fb71c401) ([#12789](https://github.com/yt-dlp/yt-dlp/issues/12789)) by [seproDev](https://github.com/seproDev)
+
+#### Extractor changes
+- **francaisfacile**: [Add extractor](https://github.com/yt-dlp/yt-dlp/commit/bb321cfdc3fd4400598ddb12a15862bc2ac8fc10) ([#12787](https://github.com/yt-dlp/yt-dlp/issues/12787)) by [mlabeeb03](https://github.com/mlabeeb03)
+- **generic**: [Validate response before checking m3u8 live status](https://github.com/yt-dlp/yt-dlp/commit/9a1ec1d36e172d252714cef712a6d091e0a0c4f2) ([#12784](https://github.com/yt-dlp/yt-dlp/issues/12784)) by [bashonly](https://github.com/bashonly)
+- **microsoftlearnepisode**: [Extract more formats](https://github.com/yt-dlp/yt-dlp/commit/d63696f23a341ee36a3237ccb5d5e14b34c2c579) ([#12799](https://github.com/yt-dlp/yt-dlp/issues/12799)) by [bashonly](https://github.com/bashonly)
+- **mlbtv**: [Fix radio-only extraction](https://github.com/yt-dlp/yt-dlp/commit/f033d86b96b36f8c5289dd7c3304f42d4d9f6ff4) ([#12792](https://github.com/yt-dlp/yt-dlp/issues/12792)) by [bashonly](https://github.com/bashonly)
+- **on24**: [Support `mainEvent` URLs](https://github.com/yt-dlp/yt-dlp/commit/e465b078ead75472fcb7b86f6ccaf2b5d3bc4c21) ([#12800](https://github.com/yt-dlp/yt-dlp/issues/12800)) by [bashonly](https://github.com/bashonly)
+- **sbs**: [Fix subtitles extraction](https://github.com/yt-dlp/yt-dlp/commit/29560359120f28adaaac67c86fa8442eb72daa0d) ([#12785](https://github.com/yt-dlp/yt-dlp/issues/12785)) by [bashonly](https://github.com/bashonly)
+- **stvr**: [Rename extractor from RTVS to STVR](https://github.com/yt-dlp/yt-dlp/commit/5fc521cbd0ce7b2410d0935369558838728e205d) ([#12788](https://github.com/yt-dlp/yt-dlp/issues/12788)) by [mireq](https://github.com/mireq)
+- **twitch**: clips: [Extract portrait formats](https://github.com/yt-dlp/yt-dlp/commit/61046c31612b30c749cbdae934b7fe26abe659d7) ([#12763](https://github.com/yt-dlp/yt-dlp/issues/12763)) by [DmitryScaletta](https://github.com/DmitryScaletta)
+- **youtube**
+ - [Add `player_js_variant` extractor-arg](https://github.com/yt-dlp/yt-dlp/commit/07f04005e40ebdb368920c511e36e98af0077ed3) ([#12767](https://github.com/yt-dlp/yt-dlp/issues/12767)) by [bashonly](https://github.com/bashonly)
+ - tab: [Fix playlist continuation extraction](https://github.com/yt-dlp/yt-dlp/commit/6a6d97b2cbc78f818de05cc96edcdcfd52caa259) ([#12777](https://github.com/yt-dlp/yt-dlp/issues/12777)) by [coletdjnz](https://github.com/coletdjnz)
+
+#### Misc. changes
+- **cleanup**: Miscellaneous: [5e457af](https://github.com/yt-dlp/yt-dlp/commit/5e457af57fae9645b1b8fa0ed689229c8fb9656b) by [bashonly](https://github.com/bashonly)
+
### 2025.03.27
#### Core changes
diff --git a/network/yt-dlp-bin/docs/Collaborators.md b/network/yt-dlp-bin/docs/Collaborators.md
new file mode 100644
index 0000000000..ee748eb7fd
--- /dev/null
+++ b/network/yt-dlp-bin/docs/Collaborators.md
@@ -0,0 +1,70 @@
+# Collaborators
+
+This is a list of the collaborators of the project and their major contributions. See the [Changelog](Changelog.md) for more details.
+
+You can also find lists of all [contributors of yt-dlp](CONTRIBUTORS) and [authors of youtube-dl](https://github.com/ytdl-org/youtube-dl/blob/master/AUTHORS)
+
+
+## [pukkandan](https://github.com/pukkandan)
+
+[![ko-fi](https://img.shields.io/badge/_-Ko--fi-red.svg?logo=kofi&labelColor=555555&style=for-the-badge)](https://ko-fi.com/pukkandan)
+[![gh-sponsor](https://img.shields.io/badge/_-Github-white.svg?logo=github&labelColor=555555&style=for-the-badge)](https://github.com/sponsors/pukkandan)
+
+* Owner of the fork
+
+
+
+## [shirt](https://github.com/shirt-dev)
+
+[![ko-fi](https://img.shields.io/badge/_-Ko--fi-red.svg?logo=kofi&labelColor=555555&style=for-the-badge)](https://ko-fi.com/shirt)
+
+* Multithreading (`-N`) and aria2c support for fragment downloads
+* Support for media initialization and discontinuity in HLS
+* The self-updater (`-U`)
+
+
+
+## [coletdjnz](https://github.com/coletdjnz)
+
+[![gh-sponsor](https://img.shields.io/badge/_-Github-white.svg?logo=github&labelColor=555555&style=for-the-badge)](https://github.com/sponsors/coletdjnz)
+
+* Improved plugin architecture
+* Rewrote the networking infrastructure, implemented support for `requests`
+* YouTube improvements including: age-gate bypass, private playlists, multiple-clients (to avoid throttling) and a lot of under-the-hood improvements
+* Added support for new websites YoutubeWebArchive, MainStreaming, PRX, nzherald, Mediaklikk, StarTV etc
+* Improved/fixed support for Patreon, panopto, gfycat, itv, pbs, SouthParkDE etc
+
+
+
+## [Ashish0804](https://github.com/Ashish0804) <sub><sup>[Inactive]</sup></sub>
+
+[![ko-fi](https://img.shields.io/badge/_-Ko--fi-red.svg?logo=kofi&labelColor=555555&style=for-the-badge)](https://ko-fi.com/ashish0804)
+
+* Added support for new websites BiliIntl, DiscoveryPlusIndia, OlympicsReplay, PlanetMarathi, ShemarooMe, Utreon, Zee5 etc
+* Added playlist/series downloads for Hotstar, ParamountPlus, Rumble, SonyLIV, Trovo, TubiTv, Voot etc
+* Improved/fixed support for HiDive, HotStar, Hungama, LBRY, LinkedInLearning, Mxplayer, SonyLiv, TV2, Vimeo, VLive etc
+
+
+## [bashonly](https://github.com/bashonly)
+
+* `--update-to`, self-updater rewrite, automated/nightly/master releases
+* `--cookies-from-browser` support for Firefox containers, external downloader cookie handling overhaul
+* Added support for new websites like Dacast, Kick, NBCStations, Triller, VideoKen, Weverse, WrestleUniverse etc
+* Improved/fixed support for Anvato, Brightcove, Reddit, SlidesLive, TikTok, Twitter, Vimeo etc
+
+
+## [Grub4K](https://github.com/Grub4K)
+
+[![gh-sponsor](https://img.shields.io/badge/_-Github-white.svg?logo=github&labelColor=555555&style=for-the-badge)](https://github.com/sponsors/Grub4K) [![ko-fi](https://img.shields.io/badge/_-Ko--fi-red.svg?logo=kofi&labelColor=555555&style=for-the-badge)](https://ko-fi.com/Grub4K)
+
+* `--update-to`, self-updater rewrite, automated/nightly/master releases
+* Reworked internals like `traverse_obj`, various core refactors and bugs fixes
+* Implemented proper progress reporting for parallel downloads
+* Improved/fixed/added Bundestag, crunchyroll, pr0gramm, Twitter, WrestleUniverse etc
+
+
+## [sepro](https://github.com/seproDev)
+
+* UX improvements: Warn when ffmpeg is missing, warn when double-clicking exe
+* Code cleanup: Remove dead extractors, mark extractors as broken, enable/apply ruff rules
+* Improved/fixed/added ArdMediathek, DRTV, Floatplane, MagentaMusik, Naver, Nebula, OnDemandKorea, Vbox7 etc
diff --git a/network/yt-dlp-bin/docs/supportedsites.md b/network/yt-dlp-bin/docs/supportedsites.md
new file mode 100644
index 0000000000..db89ccd05d
--- /dev/null
+++ b/network/yt-dlp-bin/docs/supportedsites.md
@@ -0,0 +1,1836 @@
+# Supported sites
+
+Below is a list of all extractors that are currently included with yt-dlp.
+If a site is not listed here, it might still be supported by yt-dlp's embed extraction or generic extractor.
+Not all sites listed here are guaranteed to work; websites are constantly changing and sometimes this breaks yt-dlp's support for them.
+The only reliable way to check if a site is supported is to try it.
+
+ - **10play**: [*10play*](## "netrc machine")
+ - **10play:season**
+ - **17live**
+ - **17live:clip**
+ - **17live:vod**
+ - **1News**: 1news.co.nz article videos
+ - **1tv**: Первый канал
+ - **20min**: (**Currently broken**)
+ - **23video**
+ - **247sports**: (**Currently broken**)
+ - **24tv.ua**
+ - **3qsdn**: 3Q SDN
+ - **3sat**
+ - **4tube**
+ - **56.com**
+ - **6play**
+ - **7plus**
+ - **8tracks**
+ - **9c9media**
+ - **9gag**: 9GAG
+ - **9News**
+ - **9now.com.au**
+ - **abc.net.au**
+ - **abc.net.au:iview**
+ - **abc.net.au:​iview:showseries**
+ - **abcnews**
+ - **abcnews:video**
+ - **abcotvs**: ABC Owned Television Stations
+ - **abcotvs:clips**
+ - **AbemaTV**: [*abematv*](## "netrc machine")
+ - **AbemaTVTitle**: [*abematv*](## "netrc machine")
+ - **AcademicEarth:Course**
+ - **acast**
+ - **acast:channel**
+ - **AcFunBangumi**
+ - **AcFunVideo**
+ - **ADN**: [*animationdigitalnetwork*](## "netrc machine") Animation Digital Network
+ - **ADNSeason**: [*animationdigitalnetwork*](## "netrc machine") Animation Digital Network
+ - **AdobeConnect**
+ - **adobetv**
+ - **AdultSwim**
+ - **aenetworks**: A+E Networks: A&E, Lifetime, History.com, FYI Network and History Vault
+ - **aenetworks:collection**
+ - **aenetworks:show**
+ - **AeonCo**
+ - **AirTV**
+ - **AitubeKZVideo**
+ - **AliExpressLive**
+ - **AlJazeera**
+ - **Allocine**
+ - **Allstar**
+ - **AllstarProfile**
+ - **AlphaPorno**
+ - **Alsace20TV**
+ - **Alsace20TVEmbed**
+ - **altcensored**
+ - **altcensored:channel**
+ - **Alura**: [*alura*](## "netrc machine")
+ - **AluraCourse**: [*aluracourse*](## "netrc machine")
+ - **AmadeusTV**
+ - **Amara**
+ - **AmazonMiniTV**
+ - **amazonminitv:season**: Amazon MiniTV Season, "minitv:season:" prefix
+ - **amazonminitv:series**: Amazon MiniTV Series, "minitv:series:" prefix
+ - **AmazonReviews**
+ - **AmazonStore**
+ - **AMCNetworks**
+ - **AmericasTestKitchen**
+ - **AmericasTestKitchenSeason**
+ - **AmHistoryChannel**
+ - **AnchorFMEpisode**
+ - **anderetijden**: npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
+ - **Angel**
+ - **AnimalPlanet**
+ - **ant1newsgr:article**: ant1news.gr articles
+ - **ant1newsgr:embed**: ant1news.gr embedded videos
+ - **antenna:watch**: antenna.gr and ant1news.gr videos
+ - **Anvato**
+ - **aol.com**: Yahoo screen and movies (**Currently broken**)
+ - **APA**
+ - **Aparat**
+ - **AppleConnect**
+ - **AppleDaily**: 臺灣蘋果日報
+ - **ApplePodcasts**
+ - **appletrailers**
+ - **appletrailers:section**
+ - **archive.org**: archive.org video and audio
+ - **ArcPublishing**
+ - **ARD**
+ - **ARDMediathek**
+ - **ARDMediathekCollection**
+ - **Art19**
+ - **Art19Show**
+ - **arte.sky.it**
+ - **ArteTV**
+ - **ArteTVCategory**
+ - **ArteTVEmbed**
+ - **ArteTVPlaylist**
+ - **asobichannel**: ASOBI CHANNEL
+ - **asobichannel:tag**: ASOBI CHANNEL
+ - **AsobiStage**: ASOBISTAGE (アソビステージ)
+ - **AtresPlayer**: [*atresplayer*](## "netrc machine")
+ - **AtScaleConfEvent**
+ - **ATVAt**
+ - **AudiMedia**
+ - **AudioBoom**
+ - **Audiodraft:custom**
+ - **Audiodraft:generic**
+ - **audiomack**
+ - **audiomack:album**
+ - **Audius**: Audius.co
+ - **audius:artist**: Audius.co profile/artist pages
+ - **audius:playlist**: Audius.co playlists
+ - **audius:track**: Audius track ID or API link. Prepend with "audius:"
+ - **AWAAN**
+ - **awaan:live**
+ - **awaan:season**
+ - **awaan:video**
+ - **axs.tv**
+ - **AZMedien**: AZ Medien videos
+ - **BaiduVideo**: 百度视频
+ - **BanBye**
+ - **BanByeChannel**
+ - **Bandcamp**
+ - **Bandcamp:album**
+ - **Bandcamp:user**
+ - **Bandcamp:weekly**
+ - **Bandlab**
+ - **BandlabPlaylist**
+ - **BannedVideo**
+ - **bbc**: [*bbc*](## "netrc machine") BBC
+ - **bbc.co.uk**: [*bbc*](## "netrc machine") BBC iPlayer
+ - **bbc.co.uk:article**: BBC articles
+ - **bbc.co.uk:​iplayer:episodes**
+ - **bbc.co.uk:​iplayer:group**
+ - **bbc.co.uk:playlist**
+ - **BBVTV**: [*bbvtv*](## "netrc machine")
+ - **BBVTVLive**: [*bbvtv*](## "netrc machine")
+ - **BBVTVRecordings**: [*bbvtv*](## "netrc machine")
+ - **BeaconTv**
+ - **BeatBumpPlaylist**
+ - **BeatBumpVideo**
+ - **Beatport**
+ - **Beeg**
+ - **BehindKink**: (**Currently broken**)
+ - **BerufeTV**
+ - **Bet**
+ - **bfi:player**: (**Currently broken**)
+ - **bfmtv**
+ - **bfmtv:article**
+ - **bfmtv:live**
+ - **bibeltv:live**: BibelTV live program
+ - **bibeltv:series**: BibelTV series playlist
+ - **bibeltv:video**: BibelTV single video
+ - **Bigflix**
+ - **Bigo**
+ - **Bild**: Bild.de
+ - **BiliBili**
+ - **Bilibili category extractor**
+ - **BilibiliAudio**
+ - **BilibiliAudioAlbum**
+ - **BiliBiliBangumi**
+ - **BiliBiliBangumiMedia**
+ - **BiliBiliBangumiSeason**
+ - **BilibiliCheese**
+ - **BilibiliCheeseSeason**
+ - **BilibiliCollectionList**
+ - **BiliBiliDynamic**
+ - **BilibiliFavoritesList**
+ - **BiliBiliPlayer**
+ - **BilibiliPlaylist**
+ - **BiliBiliSearch**: Bilibili video search; "bilisearch:" prefix
+ - **BilibiliSeriesList**
+ - **BilibiliSpaceAudio**
+ - **BilibiliSpaceVideo**
+ - **BilibiliWatchlater**
+ - **BiliIntl**: [*biliintl*](## "netrc machine")
+ - **biliIntl:series**: [*biliintl*](## "netrc machine")
+ - **BiliLive**
+ - **BioBioChileTV**
+ - **Biography**
+ - **BitChute**
+ - **BitChuteChannel**
+ - **BlackboardCollaborate**
+ - **BlackboardCollaborateLaunch**
+ - **BleacherReport**: (**Currently broken**)
+ - **BleacherReportCMS**: (**Currently broken**)
+ - **blerp**
+ - **blogger.com**
+ - **Bloomberg**
+ - **Bluesky**
+ - **BokeCC**: CC视频
+ - **BongaCams**
+ - **Boosty**
+ - **BostonGlobe**
+ - **Box**
+ - **BoxCastVideo**
+ - **Bpb**: Bundeszentrale für politische Bildung
+ - **BR**: Bayerischer Rundfunk (**Currently broken**)
+ - **BrainPOP**: [*brainpop*](## "netrc machine")
+ - **BrainPOPELL**: [*brainpop*](## "netrc machine")
+ - **BrainPOPEsp**: [*brainpop*](## "netrc machine") BrainPOP Español
+ - **BrainPOPFr**: [*brainpop*](## "netrc machine") BrainPOP Français
+ - **BrainPOPIl**: [*brainpop*](## "netrc machine") BrainPOP Hebrew
+ - **BrainPOPJr**: [*brainpop*](## "netrc machine")
+ - **BravoTV**
+ - **BreitBart**
+ - **brightcove:legacy**
+ - **brightcove:new**
+ - **Brilliantpala:Classes**: [*brilliantpala*](## "netrc machine") VoD on classes.brilliantpala.org
+ - **Brilliantpala:Elearn**: [*brilliantpala*](## "netrc machine") VoD on elearn.brilliantpala.org
+ - **bt:article**: Bergens Tidende Articles
+ - **bt:vestlendingen**: Bergens Tidende - Vestlendingen
+ - **BTVPlus**
+ - **Bundesliga**
+ - **Bundestag**
+ - **BunnyCdn**
+ - **BusinessInsider**
+ - **BuzzFeed**
+ - **BYUtv**: (**Currently broken**)
+ - **CaffeineTV**
+ - **Callin**
+ - **Caltrans**
+ - **CAM4**
+ - **Camdemy**
+ - **CamdemyFolder**
+ - **CamFMEpisode**
+ - **CamFMShow**
+ - **CamModels**
+ - **Camsoda**
+ - **CamtasiaEmbed**
+ - **Canal1**
+ - **CanalAlpha**
+ - **canalc2.tv**
+ - **Canalplus**: mycanal.fr and piwiplus.fr
+ - **Canalsurmas**
+ - **CaracolTvPlay**: [*caracoltv-play*](## "netrc machine")
+ - **cbc.ca**
+ - **cbc.ca:player**
+ - **cbc.ca:​player:playlist**
+ - **CBS**: (**Currently broken**)
+ - **CBSLocal**
+ - **CBSLocalArticle**
+ - **CBSLocalLive**
+ - **cbsnews**: CBS News
+ - **cbsnews:embed**
+ - **cbsnews:live**: CBS News Livestream
+ - **cbsnews:livevideo**: CBS News Live Videos
+ - **cbssports**: (**Currently broken**)
+ - **cbssports:embed**: (**Currently broken**)
+ - **CCMA**: 3Cat, TV3 and Catalunya Ràdio
+ - **CCTV**: 央视网
+ - **CDA**: [*cdapl*](## "netrc machine")
+ - **CDAFolder**
+ - **Cellebrite**
+ - **CeskaTelevize**
+ - **CGTN**
+ - **CharlieRose**
+ - **Chaturbate**
+ - **Chilloutzone**
+ - **chzzk:live**
+ - **chzzk:video**
+ - **cielotv.it**
+ - **Cinemax**: (**Currently broken**)
+ - **CinetecaMilano**
+ - **Cineverse**
+ - **CineverseDetails**
+ - **CiscoLiveSearch**
+ - **CiscoLiveSession**
+ - **ciscowebex**: Cisco Webex
+ - **CJSW**
+ - **Clipchamp**
+ - **Clippit**
+ - **ClipRs**: (**Currently broken**)
+ - **CloserToTruth**: (**Currently broken**)
+ - **CloudflareStream**
+ - **CloudyCDN**
+ - **Clubic**: (**Currently broken**)
+ - **Clyp**
+ - **CNBCVideo**
+ - **CNN**
+ - **CNNIndonesia**
+ - **ComedyCentral**
+ - **ConanClassic**: (**Currently broken**)
+ - **CondeNast**: Condé Nast media group: Allure, Architectural Digest, Ars Technica, Bon Appétit, Brides, Condé Nast, Condé Nast Traveler, Details, Epicurious, GQ, Glamour, Golf Digest, SELF, Teen Vogue, The New Yorker, Vanity Fair, Vogue, W Magazine, WIRED
+ - **CONtv**
+ - **CookingChannel**
+ - **Corus**
+ - **Coub**
+ - **CozyTV**
+ - **cp24**
+ - **cpac**
+ - **cpac:playlist**
+ - **Cracked**
+ - **Crackle**
+ - **Craftsy**
+ - **CrooksAndLiars**
+ - **CrowdBunker**
+ - **CrowdBunkerChannel**
+ - **Crtvg**
+ - **CSpan**: C-SPAN
+ - **CSpanCongress**
+ - **CtsNews**: 華視新聞
+ - **CTVNews**
+ - **cu.ntv.co.jp**: 日テレ無料TADA!
+ - **CultureUnplugged**
+ - **curiositystream**: [*curiositystream*](## "netrc machine")
+ - **curiositystream:collections**: [*curiositystream*](## "netrc machine")
+ - **curiositystream:series**: [*curiositystream*](## "netrc machine")
+ - **cwtv**
+ - **cwtv:movie**
+ - **Cybrary**: [*cybrary*](## "netrc machine")
+ - **CybraryCourse**: [*cybrary*](## "netrc machine")
+ - **DacastPlaylist**
+ - **DacastVOD**
+ - **DagelijkseKost**: dagelijksekost.een.be
+ - **DailyMail**
+ - **dailymotion**: [*dailymotion*](## "netrc machine")
+ - **dailymotion:playlist**: [*dailymotion*](## "netrc machine")
+ - **dailymotion:search**: [*dailymotion*](## "netrc machine")
+ - **dailymotion:user**: [*dailymotion*](## "netrc machine")
+ - **DailyWire**
+ - **DailyWirePodcast**
+ - **damtomo:record**
+ - **damtomo:video**
+ - **dangalplay**: [*dangalplay*](## "netrc machine")
+ - **dangalplay:season**: [*dangalplay*](## "netrc machine")
+ - **daum.net**
+ - **daum.net:clip**
+ - **daum.net:playlist**
+ - **daum.net:user**
+ - **daystar:clip**
+ - **DBTV**
+ - **DctpTv**
+ - **democracynow**
+ - **DestinationAmerica**
+ - **DetikEmbed**
+ - **DeuxM**
+ - **DeuxMNews**
+ - **DHM**: Filmarchiv - Deutsches Historisches Museum (**Currently broken**)
+ - **DigitalConcertHall**: [*digitalconcerthall*](## "netrc machine") DigitalConcertHall extractor
+ - **DigitallySpeaking**
+ - **Digiteka**
+ - **Digiview**
+ - **DiscogsReleasePlaylist**
+ - **DiscoveryLife**
+ - **DiscoveryNetworksDe**
+ - **DiscoveryPlus**
+ - **DiscoveryPlusIndia**
+ - **DiscoveryPlusIndiaShow**
+ - **DiscoveryPlusItaly**
+ - **DiscoveryPlusItalyShow**
+ - **Disney**
+ - **dlf**
+ - **dlf:corpus**: DLF Multi-feed Archives
+ - **dlive:stream**
+ - **dlive:vod**
+ - **Douyin**
+ - **DouyuShow**
+ - **DouyuTV**: 斗鱼直播
+ - **DPlay**
+ - **DRBonanza**
+ - **Drooble**
+ - **Dropbox**
+ - **Dropout**: [*dropout*](## "netrc machine")
+ - **DropoutSeason**
+ - **DrTalks**
+ - **DrTuber**
+ - **drtv**
+ - **drtv:live**
+ - **drtv:season**
+ - **drtv:series**
+ - **DTube**: (**Currently broken**)
+ - **duboku**: www.duboku.io
+ - **duboku:list**: www.duboku.io entire series
+ - **Dumpert**
+ - **Duoplay**
+ - **dvtv**: http://video.aktualne.cz/
+ - **dw**: (**Currently broken**)
+ - **dw:article**: (**Currently broken**)
+ - **dzen.ru**: Дзен (dzen) formerly Яндекс.Дзен (Yandex Zen)
+ - **dzen.ru:channel**
+ - **EbaumsWorld**
+ - **Ebay**
+ - **egghead:course**: egghead.io course
+ - **egghead:lesson**: egghead.io lesson
+ - **eggs:artist**
+ - **eggs:single**
+ - **EinsUndEinsTV**: [*1und1tv*](## "netrc machine")
+ - **EinsUndEinsTVLive**: [*1und1tv*](## "netrc machine")
+ - **EinsUndEinsTVRecordings**: [*1und1tv*](## "netrc machine")
+ - **eitb.tv**
+ - **ElementorEmbed**
+ - **Elonet**
+ - **ElPais**: El País
+ - **ElTreceTV**: El Trece TV (Argentina)
+ - **Embedly**
+ - **EMPFlix**
+ - **Epicon**
+ - **EpiconSeries**
+ - **EpidemicSound**
+ - **eplus**: [*eplus*](## "netrc machine") e+ (イープラス)
+ - **Epoch**
+ - **Eporner**
+ - **Erocast**
+ - **EroProfile**: [*eroprofile*](## "netrc machine")
+ - **EroProfile:album**
+ - **ERRJupiter**
+ - **ertflix**: ERTFLIX videos
+ - **ertflix:codename**: ERTFLIX videos by codename
+ - **ertwebtv:embed**: ert.gr webtv embedded videos
+ - **ESPN**
+ - **ESPNArticle**
+ - **ESPNCricInfo**
+ - **EttuTv**
+ - **Europa**: (**Currently broken**)
+ - **EuroParlWebstream**
+ - **EuropeanTour**
+ - **Eurosport**
+ - **EUScreen**
+ - **EWETV**: [*ewetv*](## "netrc machine")
+ - **EWETVLive**: [*ewetv*](## "netrc machine")
+ - **EWETVRecordings**: [*ewetv*](## "netrc machine")
+ - **Expressen**
+ - **EyedoTV**
+ - **facebook**: [*facebook*](## "netrc machine")
+ - **facebook:ads**
+ - **facebook:reel**
+ - **FacebookPluginsVideo**
+ - **fancode:live**: [*fancode*](## "netrc machine") (**Currently broken**)
+ - **fancode:vod**: [*fancode*](## "netrc machine") (**Currently broken**)
+ - **Fathom**
+ - **Faulio**
+ - **FaulioLive**
+ - **faz.net**
+ - **fc2**: [*fc2*](## "netrc machine")
+ - **fc2:embed**
+ - **fc2:live**
+ - **Fczenit**
+ - **Fifa**
+ - **filmon**
+ - **filmon:channel**
+ - **Filmweb**
+ - **FiveThirtyEight**
+ - **FiveTV**
+ - **FlexTV**
+ - **Flickr**
+ - **Floatplane**
+ - **FloatplaneChannel**
+ - **Folketinget**: Folketinget (ft.dk; Danish parliament)
+ - **FoodNetwork**
+ - **FootyRoom**
+ - **Formula1**
+ - **FOX**
+ - **FOX9**
+ - **FOX9News**
+ - **foxnews**: Fox News and Fox Business Video
+ - **foxnews:article**
+ - **FoxNewsVideo**
+ - **FoxSports**
+ - **fptplay**: fptplay.vn
+ - **FrancaisFacile**
+ - **FranceCulture**
+ - **FranceInter**
+ - **francetv**
+ - **francetv:site**
+ - **francetvinfo.fr**
+ - **Freesound**
+ - **freespeech.org**
+ - **freetv:series**
+ - **FreeTvMovies**
+ - **FrontendMasters**: [*frontendmasters*](## "netrc machine")
+ - **FrontendMastersCourse**: [*frontendmasters*](## "netrc machine")
+ - **FrontendMastersLesson**: [*frontendmasters*](## "netrc machine")
+ - **FujiTVFODPlus7**
+ - **Funk**
+ - **Funker530**
+ - **Fux**
+ - **FuyinTV**
+ - **Gab**
+ - **GabTV**
+ - **Gaia**: [*gaia*](## "netrc machine")
+ - **GameDevTVDashboard**: [*gamedevtv*](## "netrc machine")
+ - **GameJolt**
+ - **GameJoltCommunity**
+ - **GameJoltGame**
+ - **GameJoltGameSoundtrack**
+ - **GameJoltSearch**
+ - **GameJoltUser**
+ - **GameSpot**
+ - **GameStar**
+ - **Gaskrank**
+ - **Gazeta**: (**Currently broken**)
+ - **GBNews**: GB News clips, features and live streams
+ - **GDCVault**: [*gdcvault*](## "netrc machine") (**Currently broken**)
+ - **GediDigital**
+ - **gem.cbc.ca**: [*cbcgem*](## "netrc machine")
+ - **gem.cbc.ca:live**
+ - **gem.cbc.ca:playlist**: [*cbcgem*](## "netrc machine")
+ - **Genius**
+ - **GeniusLyrics**
+ - **Germanupa**: germanupa.de
+ - **GetCourseRu**: [*getcourseru*](## "netrc machine")
+ - **GetCourseRuPlayer**
+ - **Gettr**
+ - **GettrStreaming**
+ - **GiantBomb**
+ - **GlattvisionTV**: [*glattvisiontv*](## "netrc machine")
+ - **GlattvisionTVLive**: [*glattvisiontv*](## "netrc machine")
+ - **GlattvisionTVRecordings**: [*glattvisiontv*](## "netrc machine")
+ - **Glide**: Glide mobile video messages (glide.me)
+ - **GlobalPlayerAudio**
+ - **GlobalPlayerAudioEpisode**
+ - **GlobalPlayerLive**
+ - **GlobalPlayerLivePlaylist**
+ - **GlobalPlayerVideo**
+ - **Globo**: [*globo*](## "netrc machine")
+ - **GloboArticle**
+ - **glomex**: Glomex videos
+ - **glomex:embed**: Glomex embedded videos
+ - **GMANetworkVideo**
+ - **Go**
+ - **GoDiscovery**
+ - **GodResource**
+ - **GodTube**: (**Currently broken**)
+ - **Gofile**
+ - **Golem**
+ - **goodgame:stream**
+ - **google:podcasts**
+ - **google:​podcasts:feed**
+ - **GoogleDrive**
+ - **GoogleDrive:Folder**
+ - **GoPlay**: [*goplay*](## "netrc machine")
+ - **GoPro**
+ - **Goshgay**
+ - **GoToStage**
+ - **GPUTechConf**
+ - **Graspop**
+ - **Gronkh**
+ - **gronkh:feed**
+ - **gronkh:vods**
+ - **Groupon**
+ - **Harpodeon**
+ - **hbo**
+ - **HearThisAt**
+ - **Heise**
+ - **HellPorno**
+ - **hetklokhuis**
+ - **hgtv.com:show**
+ - **HGTVDe**
+ - **HGTVUsa**
+ - **HiDive**: [*hidive*](## "netrc machine")
+ - **HistoricFilms**
+ - **history:player**
+ - **history:topic**: History.com Topic
+ - **HitRecord**
+ - **hketv**: 香港教育局教育電視 (HKETV) Educational Television, Hong Kong Educational Bureau
+ - **HollywoodReporter**
+ - **HollywoodReporterPlaylist**
+ - **Holodex**
+ - **HotNewHipHop**: (**Currently broken**)
+ - **hotstar**: JioHotstar
+ - **hotstar:series**
+ - **hrfernsehen**
+ - **HRTi**: [*hrti*](## "netrc machine")
+ - **HRTiPlaylist**: [*hrti*](## "netrc machine")
+ - **HSEProduct**
+ - **HSEShow**
+ - **html5**
+ - **Huajiao**: 花椒直播
+ - **HuffPost**: Huffington Post
+ - **Hungama**
+ - **HungamaAlbumPlaylist**
+ - **HungamaSong**
+ - **huya:live**: 虎牙直播
+ - **huya:video**: 虎牙视频
+ - **Hypem**
+ - **Hytale**
+ - **Icareus**
+ - **IdolPlus**
+ - **iflix:episode**
+ - **IflixSeries**
+ - **ign.com**
+ - **IGNArticle**
+ - **IGNVideo**
+ - **iheartradio**
+ - **iheartradio:podcast**
+ - **IlPost**
+ - **Iltalehti**
+ - **imdb**: Internet Movie Database trailers
+ - **imdb:list**: Internet Movie Database lists
+ - **Imgur**
+ - **imgur:album**
+ - **imgur:gallery**
+ - **Ina**
+ - **Inc**
+ - **IndavideoEmbed**
+ - **InfoQ**
+ - **Instagram**
+ - **instagram:story**
+ - **instagram:tag**: Instagram hashtag search URLs
+ - **instagram:user**: Instagram user profile (**Currently broken**)
+ - **InstagramIOS**: IOS instagram:// URL
+ - **Internazionale**
+ - **InternetVideoArchive**
+ - **InvestigationDiscovery**
+ - **IPrima**: [*iprima*](## "netrc machine")
+ - **IPrimaCNN**
+ - **iq.com**: International version of iQiyi
+ - **iq.com:album**
+ - **iqiyi**: [*iqiyi*](## "netrc machine") 爱奇艺
+ - **IslamChannel**
+ - **IslamChannelSeries**
+ - **IsraelNationalNews**
+ - **ITProTV**
+ - **ITProTVCourse**
+ - **ITV**
+ - **ITVBTCC**
+ - **ivi**: ivi.ru
+ - **ivi:compilation**: ivi.ru compilations
+ - **ivideon**: Ivideon TV
+ - **Ivoox**
+ - **IVXPlayer**
+ - **iwara**: [*iwara*](## "netrc machine")
+ - **iwara:playlist**: [*iwara*](## "netrc machine")
+ - **iwara:user**: [*iwara*](## "netrc machine")
+ - **Ixigua**
+ - **Izlesene**
+ - **Jamendo**
+ - **JamendoAlbum**
+ - **JeuxVideo**: (**Currently broken**)
+ - **jiosaavn:album**
+ - **jiosaavn:artist**
+ - **jiosaavn:playlist**
+ - **jiosaavn:show**
+ - **jiosaavn:​show:playlist**
+ - **jiosaavn:song**
+ - **Joj**
+ - **Jove**
+ - **JStream**
+ - **JTBC**: jtbc.co.kr
+ - **JTBC:program**
+ - **JWPlatform**
+ - **Kakao**
+ - **Kaltura**
+ - **KankaNews**: (**Currently broken**)
+ - **Karaoketv**
+ - **Katsomo**: (**Currently broken**)
+ - **KelbyOne**: (**Currently broken**)
+ - **Kenh14Playlist**
+ - **Kenh14Video**
+ - **khanacademy**
+ - **khanacademy:unit**
+ - **kick:clips**
+ - **kick:live**
+ - **kick:vod**
+ - **Kicker**
+ - **KickStarter**
+ - **Kika**: KiKA.de
+ - **KikaPlaylist**
+ - **kinja:embed**
+ - **KinoPoisk**
+ - **Kommunetv**
+ - **KompasVideo**
+ - **Koo**: (**Currently broken**)
+ - **KrasView**: Красвью (**Currently broken**)
+ - **KTH**
+ - **Ku6**
+ - **KukuluLive**
+ - **kuwo:album**: 酷我音乐 - 专辑 (**Currently broken**)
+ - **kuwo:category**: 酷我音乐 - 分类 (**Currently broken**)
+ - **kuwo:chart**: 酷我音乐 - 排行榜 (**Currently broken**)
+ - **kuwo:mv**: 酷我音乐 - MV (**Currently broken**)
+ - **kuwo:singer**: 酷我音乐 - 歌手 (**Currently broken**)
+ - **kuwo:song**: 酷我音乐 (**Currently broken**)
+ - **la7.it**
+ - **la7.it:​pod:episode**
+ - **la7.it:podcast**
+ - **laracasts**
+ - **laracasts:series**
+ - **LastFM**
+ - **LastFMPlaylist**
+ - **LastFMUser**
+ - **LaXarxaMes**: [*laxarxames*](## "netrc machine")
+ - **lbry**: odysee.com
+ - **lbry:channel**: odysee.com channels
+ - **lbry:playlist**: odysee.com playlists
+ - **LCI**
+ - **Lcp**: (**Currently broken**)
+ - **LcpPlay**: (**Currently broken**)
+ - **Le**: 乐视网
+ - **LearningOnScreen**
+ - **Lecture2Go**: (**Currently broken**)
+ - **Lecturio**: [*lecturio*](## "netrc machine")
+ - **LecturioCourse**: [*lecturio*](## "netrc machine")
+ - **LecturioDeCourse**: [*lecturio*](## "netrc machine")
+ - **LeFigaroVideoEmbed**
+ - **LeFigaroVideoSection**
+ - **LEGO**
+ - **Lemonde**
+ - **Lenta**: (**Currently broken**)
+ - **LePlaylist**
+ - **LetvCloud**: 乐视云
+ - **Libsyn**
+ - **life**: Life.ru
+ - **life:embed**
+ - **likee**
+ - **likee:user**
+ - **LinkedIn**: [*linkedin*](## "netrc machine")
+ - **linkedin:events**: [*linkedin*](## "netrc machine")
+ - **linkedin:learning**: [*linkedin*](## "netrc machine")
+ - **linkedin:​learning:course**: [*linkedin*](## "netrc machine")
+ - **Liputan6**
+ - **ListenNotes**
+ - **LiTV**
+ - **LiveJournal**: (**Currently broken**)
+ - **livestream**
+ - **livestream:original**
+ - **Livestreamfails**
+ - **Lnk**
+ - **loc**: Library of Congress
+ - **Loco**
+ - **loom**
+ - **loom:folder**
+ - **LoveHomePorn**
+ - **LRTRadio**
+ - **LRTStream**
+ - **LRTVOD**
+ - **LSMLREmbed**
+ - **LSMLTVEmbed**
+ - **LSMReplay**
+ - **Lumni**
+ - **lynda**: [*lynda*](## "netrc machine") lynda.com videos
+ - **lynda:course**: [*lynda*](## "netrc machine") lynda.com online courses
+ - **maariv.co.il**
+ - **MagellanTV**
+ - **MagentaMusik**
+ - **mailru**: Видео@Mail.Ru
+ - **mailru:music**: Музыка@Mail.Ru
+ - **mailru:​music:search**: Музыка@Mail.Ru
+ - **MainStreaming**: MainStreaming Player
+ - **mangomolo:live**
+ - **mangomolo:video**
+ - **MangoTV**: 芒果TV
+ - **ManotoTV**: Manoto TV (Episode)
+ - **ManotoTVLive**: Manoto TV (Live)
+ - **ManotoTVShow**: Manoto TV (Show)
+ - **ManyVids**
+ - **MaoriTV**
+ - **Markiza**: (**Currently broken**)
+ - **MarkizaPage**: (**Currently broken**)
+ - **massengeschmack.tv**
+ - **Masters**
+ - **MatchTV**
+ - **Mave**
+ - **MBN**: mbn.co.kr (매일방송)
+ - **MDR**: MDR.DE
+ - **MedalTV**
+ - **media.ccc.de**
+ - **media.ccc.de:lists**
+ - **Mediaite**
+ - **MediaKlikk**
+ - **Medialaan**
+ - **Mediaset**
+ - **MediasetShow**
+ - **Mediasite**
+ - **MediasiteCatalog**
+ - **MediasiteNamedCatalog**
+ - **MediaStream**
+ - **MediaWorksNZVOD**
+ - **Medici**
+ - **megaphone.fm**: megaphone.fm embedded players
+ - **megatvcom**: megatv.com videos
+ - **megatvcom:embed**: megatv.com embedded videos
+ - **Meipai**: 美拍
+ - **MelonVOD**
+ - **Metacritic**
+ - **mewatch**
+ - **MicrosoftBuild**
+ - **MicrosoftEmbed**
+ - **MicrosoftLearnEpisode**
+ - **MicrosoftLearnPlaylist**
+ - **MicrosoftLearnSession**
+ - **MicrosoftMedius**
+ - **microsoftstream**: Microsoft Stream
+ - **minds**
+ - **minds:channel**
+ - **minds:group**
+ - **Minoto**
+ - **mir24.tv**
+ - **mirrativ**
+ - **mirrativ:user**
+ - **MirrorCoUK**
+ - **MiTele**: mitele.es
+ - **mixch**
+ - **mixch:archive**
+ - **mixch:movie**
+ - **mixcloud**
+ - **mixcloud:playlist**
+ - **mixcloud:user**
+ - **Mixlr**
+ - **MixlrRecoring**
+ - **MLB**
+ - **MLBArticle**
+ - **MLBTV**: [*mlb*](## "netrc machine")
+ - **MLBVideo**
+ - **MLSSoccer**
+ - **MNetTV**: [*mnettv*](## "netrc machine")
+ - **MNetTVLive**: [*mnettv*](## "netrc machine")
+ - **MNetTVRecordings**: [*mnettv*](## "netrc machine")
+ - **MochaVideo**
+ - **Mojevideo**: mojevideo.sk
+ - **Mojvideo**
+ - **Monstercat**
+ - **monstersiren**: 塞壬唱片
+ - **Motherless**
+ - **MotherlessGallery**
+ - **MotherlessGroup**
+ - **MotherlessUploader**
+ - **Motorsport**: motorsport.com (**Currently broken**)
+ - **MovieFap**
+ - **moviepilot**: Moviepilot trailer
+ - **MoviewPlay**
+ - **Moviezine**
+ - **MovingImage**
+ - **MSN**
+ - **mtg**: MTG services
+ - **mtv**
+ - **MTVUutisetArticle**: (**Currently broken**)
+ - **MuenchenTV**: münchen.tv (**Currently broken**)
+ - **MujRozhlas**
+ - **Murrtube**
+ - **MurrtubeUser**: Murrtube user profile (**Currently broken**)
+ - **MuseAI**
+ - **MuseScore**
+ - **MusicdexAlbum**
+ - **MusicdexArtist**
+ - **MusicdexPlaylist**
+ - **MusicdexSong**
+ - **Mx3**
+ - **Mx3Neo**
+ - **Mx3Volksmusik**
+ - **Mxplayer**
+ - **MxplayerShow**
+ - **MySpace**
+ - **MySpace:album**
+ - **MySpass**
+ - **MyVideoGe**
+ - **MyVidster**
+ - **Mzaalo**
+ - **n-tv.de**
+ - **N1Info:article**
+ - **N1InfoAsset**
+ - **Nate**
+ - **NateProgram**
+ - **natgeo:video**
+ - **NationalGeographicTV**
+ - **Naver**
+ - **Naver:live**
+ - **navernow**
+ - **nba**: (**Currently broken**)
+ - **nba:channel**: (**Currently broken**)
+ - **nba:embed**: (**Currently broken**)
+ - **nba:watch**: (**Currently broken**)
+ - **nba:​watch:collection**: (**Currently broken**)
+ - **nba:​watch:embed**: (**Currently broken**)
+ - **NBC**
+ - **NBCNews**
+ - **nbcolympics**
+ - **nbcolympics:stream**: (**Currently broken**)
+ - **NBCSports**: (**Currently broken**)
+ - **NBCSportsStream**: (**Currently broken**)
+ - **NBCSportsVPlayer**: (**Currently broken**)
+ - **NBCStations**
+ - **ndr**: NDR.de - Norddeutscher Rundfunk
+ - **ndr:embed**
+ - **ndr:​embed:base**
+ - **NDTV**: (**Currently broken**)
+ - **nebula:channel**: [*watchnebula*](## "netrc machine")
+ - **nebula:media**: [*watchnebula*](## "netrc machine")
+ - **nebula:subscriptions**: [*watchnebula*](## "netrc machine")
+ - **nebula:video**: [*watchnebula*](## "netrc machine")
+ - **NekoHacker**
+ - **NerdCubedFeed**
+ - **Nest**
+ - **NestClip**
+ - **netease:album**: 网易云音乐 - 专辑
+ - **netease:djradio**: 网易云音乐 - 电台
+ - **netease:mv**: 网易云音乐 - MV
+ - **netease:playlist**: 网易云音乐 - 歌单
+ - **netease:program**: 网易云音乐 - 电台节目
+ - **netease:singer**: 网易云音乐 - 歌手
+ - **netease:song**: 网易云音乐
+ - **NetPlusTV**: [*netplus*](## "netrc machine")
+ - **NetPlusTVLive**: [*netplus*](## "netrc machine")
+ - **NetPlusTVRecordings**: [*netplus*](## "netrc machine")
+ - **Netverse**
+ - **NetversePlaylist**
+ - **NetverseSearch**: "netsearch:" prefix
+ - **Netzkino**: (**Currently broken**)
+ - **Newgrounds**: [*newgrounds*](## "netrc machine")
+ - **Newgrounds:playlist**
+ - **Newgrounds:user**
+ - **NewsPicks**
+ - **Newsy**
+ - **NextMedia**: 蘋果日報
+ - **NextMediaActionNews**: 蘋果日報 - 動新聞
+ - **NextTV**: 壹電視 (**Currently broken**)
+ - **Nexx**
+ - **NexxEmbed**
+ - **nfb**: nfb.ca and onf.ca films and episodes
+ - **nfb:series**: nfb.ca and onf.ca series
+ - **NFHSNetwork**
+ - **nfl.com**
+ - **nfl.com:article**
+ - **nfl.com:​plus:episode**
+ - **nfl.com:​plus:replay**
+ - **NhkForSchoolBangumi**
+ - **NhkForSchoolProgramList**
+ - **NhkForSchoolSubject**: Portal page for each school subjects, like Japanese (kokugo, 国語) or math (sansuu/suugaku or 算数・数学)
+ - **NhkRadioNewsPage**
+ - **NhkRadiru**: NHK らじる (Radiru/Rajiru)
+ - **NhkRadiruLive**
+ - **NhkVod**
+ - **NhkVodProgram**
+ - **nhl.com**
+ - **nick.com**
+ - **niconico**: [*niconico*](## "netrc machine") ニコニコ動画
+ - **niconico:history**: NicoNico user history or likes. Requires cookies.
+ - **niconico:live**: [*niconico*](## "netrc machine") ニコニコ生放送
+ - **niconico:playlist**
+ - **niconico:series**
+ - **niconico:tag**: NicoNico video tag URLs
+ - **NiconicoChannelPlus**: ニコニコチャンネルプラス
+ - **NiconicoChannelPlus:​channel:lives**: ニコニコチャンネルプラス - チャンネル - ライブリスト. nicochannel.jp/channel/lives
+ - **NiconicoChannelPlus:​channel:videos**: ニコニコチャンネルプラス - チャンネル - 動画リスト. nicochannel.jp/channel/videos
+ - **NiconicoUser**
+ - **nicovideo:search**: Nico video search; "nicosearch:" prefix
+ - **nicovideo:​search:date**: Nico video search, newest first; "nicosearchdate:" prefix
+ - **nicovideo:search_url**: Nico video search URLs
+ - **NinaProtocol**
+ - **Nintendo**
+ - **Nitter**
+ - **njoy**: N-JOY
+ - **njoy:embed**
+ - **NobelPrize**
+ - **NoicePodcast**
+ - **NonkTube**
+ - **NoodleMagazine**
+ - **NOSNLArticle**
+ - **Nova**: TN.cz, Prásk.tv, Nova.cz, Novaplus.cz, FANDA.tv, Krásná.cz and Doma.cz
+ - **NovaEmbed**
+ - **NovaPlay**
+ - **nowness**
+ - **nowness:playlist**
+ - **nowness:series**
+ - **Noz**: (**Currently broken**)
+ - **npo**: npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
+ - **npo.nl:live**
+ - **npo.nl:radio**
+ - **npo.nl:​radio:fragment**
+ - **Npr**
+ - **NRK**
+ - **NRKPlaylist**
+ - **NRKRadioPodkast**
+ - **NRKSkole**: NRK Skole
+ - **NRKTV**: NRK TV and NRK Radio
+ - **NRKTVDirekte**: NRK TV Direkte and NRK Radio Direkte
+ - **NRKTVEpisode**
+ - **NRKTVEpisodes**
+ - **NRKTVSeason**
+ - **NRKTVSeries**
+ - **NRLTV**: (**Currently broken**)
+ - **nts.live**
+ - **ntv.ru**
+ - **NubilesPorn**: [*nubiles-porn*](## "netrc machine")
+ - **nuum:live**
+ - **nuum:media**
+ - **nuum:tab**
+ - **Nuvid**
+ - **NYTimes**
+ - **NYTimesArticle**
+ - **NYTimesCookingGuide**
+ - **NYTimesCookingRecipe**
+ - **nzherald**
+ - **NZOnScreen**
+ - **NZZ**
+ - **ocw.mit.edu**
+ - **Odnoklassniki**
+ - **OfTV**
+ - **OfTVPlaylist**
+ - **OktoberfestTV**
+ - **OlympicsReplay**
+ - **on24**: ON24
+ - **OnDemandChinaEpisode**
+ - **OnDemandKorea**
+ - **OnDemandKoreaProgram**
+ - **OneFootball**
+ - **OnePlacePodcast**
+ - **onet.pl**
+ - **onet.tv**
+ - **onet.tv:channel**
+ - **OnetMVP**
+ - **OnionStudios**
+ - **Opencast**
+ - **OpencastPlaylist**
+ - **openrec**
+ - **openrec:capture**
+ - **openrec:movie**
+ - **OraTV**
+ - **orf:​fm4:story**: fm4.orf.at stories
+ - **orf:iptv**: iptv.ORF.at
+ - **orf:on**
+ - **orf:podcast**
+ - **orf:radio**
+ - **OsnatelTV**: [*osnateltv*](## "netrc machine")
+ - **OsnatelTVLive**: [*osnateltv*](## "netrc machine")
+ - **OsnatelTVRecordings**: [*osnateltv*](## "netrc machine")
+ - **OutsideTV**
+ - **OwnCloud**
+ - **PacktPub**: [*packtpub*](## "netrc machine")
+ - **PacktPubCourse**
+ - **PalcoMP3:artist**
+ - **PalcoMP3:song**
+ - **PalcoMP3:video**
+ - **Panopto**
+ - **PanoptoList**
+ - **PanoptoPlaylist**
+ - **ParamountPlus**
+ - **ParamountPlusSeries**
+ - **ParamountPressExpress**
+ - **Parler**: Posts on parler.com
+ - **parliamentlive.tv**: UK parliament videos
+ - **Parlview**
+ - **parti:livestream**
+ - **parti:video**
+ - **patreon**
+ - **patreon:campaign**
+ - **pbs**: Public Broadcasting Service (PBS) and member stations: PBS: Public Broadcasting Service, APT - Alabama Public Television (WBIQ), GPB/Georgia Public Broadcasting (WGTV), Mississippi Public Broadcasting (WMPN), Nashville Public Television (WNPT), WFSU-TV (WFSU), WSRE (WSRE), WTCI (WTCI), WPBA/Channel 30 (WPBA), Alaska Public Media (KAKM), Arizona PBS (KAET), KNME-TV/Channel 5 (KNME), Vegas PBS (KLVX), AETN/ARKANSAS ETV NETWORK (KETS), KET (WKLE), WKNO/Channel 10 (WKNO), LPB/LOUISIANA PUBLIC BROADCASTING (WLPB), OETA (KETA), Ozarks Public Television (KOZK), WSIU Public Broadcasting (WSIU), KEET TV (KEET), KIXE/Channel 9 (KIXE), KPBS San Diego (KPBS), KQED (KQED), KVIE Public Television (KVIE), PBS SoCal/KOCE (KOCE), ValleyPBS (KVPT), CONNECTICUT PUBLIC TELEVISION (WEDH), KNPB Channel 5 (KNPB), SOPTV (KSYS), Rocky Mountain PBS (KRMA), KENW-TV3 (KENW), KUED Channel 7 (KUED), Wyoming PBS (KCWC), Colorado Public Television / KBDI 12 (KBDI), KBYU-TV (KBYU), Thirteen/WNET New York (WNET), WGBH/Channel 2 (WGBH), WGBY (WGBY), NJTV Public Media NJ (WNJT), WLIW21 (WLIW), mpt/Maryland Public Television (WMPB), WETA Television and Radio (WETA), WHYY (WHYY), PBS 39 (WLVT), WVPT - Your Source for PBS and More! (WVPT), Howard University Television (WHUT), WEDU PBS (WEDU), WGCU Public Media (WGCU), WPBT2 (WPBT), WUCF TV (WUCF), WUFT/Channel 5 (WUFT), WXEL/Channel 42 (WXEL), WLRN/Channel 17 (WLRN), WUSF Public Broadcasting (WUSF), ETV (WRLK), UNC-TV (WUNC), PBS Hawaii - Oceanic Cable Channel 10 (KHET), Idaho Public Television (KAID), KSPS (KSPS), OPB (KOPB), KWSU/Channel 10 & KTNW/Channel 31 (KWSU), WILL-TV (WILL), Network Knowledge - WSEC/Springfield (WSEC), WTTW11 (WTTW), Iowa Public Television/IPTV (KDIN), Nine Network (KETC), PBS39 Fort Wayne (WFWA), WFYI Indianapolis (WFYI), Milwaukee Public Television (WMVS), WNIN (WNIN), WNIT Public Television (WNIT), WPT (WPNE), WVUT/Channel 22 (WVUT), WEIU/Channel 51 (WEIU), WQPT-TV (WQPT), WYCC PBS Chicago (WYCC), WIPB-TV (WIPB), WTIU (WTIU), CET (WCET), ThinkTVNetwork (WPTD), WBGU-TV (WBGU), WGVU TV (WGVU), NET1 (KUON), Pioneer Public Television (KWCM), SDPB Television (KUSD), TPT (KTCA), KSMQ (KSMQ), KPTS/Channel 8 (KPTS), KTWU/Channel 11 (KTWU), East Tennessee PBS (WSJK), WCTE-TV (WCTE), WLJT, Channel 11 (WLJT), WOSU TV (WOSU), WOUB/WOUC (WOUB), WVPB (WVPB), WKYU-PBS (WKYU), KERA 13 (KERA), MPBN (WCBB), Mountain Lake PBS (WCFE), NHPTV (WENH), Vermont PBS (WETK), witf (WITF), WQED Multimedia (WQED), WMHT Educational Telecommunications (WMHT), Q-TV (WDCQ), WTVS Detroit Public TV (WTVS), CMU Public Television (WCMU), WKAR-TV (WKAR), WNMU-TV Public TV 13 (WNMU), WDSE - WRPT (WDSE), WGTE TV (WGTE), Lakeland Public Television (KAWE), KMOS-TV - Channels 6.1, 6.2 and 6.3 (KMOS), MontanaPBS (KUSM), KRWG/Channel 22 (KRWG), KACV (KACV), KCOS/Channel 13 (KCOS), WCNY/Channel 24 (WCNY), WNED (WNED), WPBS (WPBS), WSKG Public TV (WSKG), WXXI (WXXI), WPSU (WPSU), WVIA Public Media Studios (WVIA), WTVI (WTVI), Western Reserve PBS (WNEO), WVIZ/PBS ideastream (WVIZ), KCTS 9 (KCTS), Basin PBS (KPBT), KUHT / Channel 8 (KUHT), KLRN (KLRN), KLRU (KLRU), WTJX Channel 12 (WTJX), WCVE PBS (WCVE), KBTC Public Television (KBTC)
+ - **PBSKids**
+ - **PearVideo**
+ - **PeekVids**
+ - **peer.tv**
+ - **PeerTube**
+ - **PeerTube:Playlist**
+ - **peloton**: [*peloton*](## "netrc machine")
+ - **peloton:live**: Peloton Live
+ - **PerformGroup**
+ - **periscope**: Periscope
+ - **periscope:user**: Periscope user videos
+ - **PGATour**
+ - **PhilharmonieDeParis**: Philharmonie de Paris
+ - **phoenix.de**
+ - **Photobucket**
+ - **PiaLive**
+ - **Piapro**: [*piapro*](## "netrc machine")
+ - **picarto**
+ - **picarto:vod**
+ - **Piksel**
+ - **Pinkbike**
+ - **Pinterest**
+ - **PinterestCollection**
+ - **PiramideTV**
+ - **PiramideTVChannel**
+ - **pixiv:sketch**
+ - **pixiv:​sketch:user**
+ - **PlanetMarathi**
+ - **Platzi**: [*platzi*](## "netrc machine")
+ - **PlatziCourse**: [*platzi*](## "netrc machine")
+ - **player.sky.it**
+ - **PlayerFm**
+ - **playeur**
+ - **PlayPlusTV**: [*playplustv*](## "netrc machine")
+ - **PlaySuisse**: [*playsuisse*](## "netrc machine")
+ - **Playtvak**: Playtvak.cz, iDNES.cz and Lidovky.cz
+ - **PlayVids**
+ - **Playwire**
+ - **pluralsight**: [*pluralsight*](## "netrc machine")
+ - **pluralsight:course**
+ - **PlutoTV**: (**Currently broken**)
+ - **PlVideo**: Платформа
+ - **PlyrEmbed**
+ - **PodbayFM**
+ - **PodbayFMChannel**
+ - **Podchaser**
+ - **podomatic**: (**Currently broken**)
+ - **PokerGo**: [*pokergo*](## "netrc machine")
+ - **PokerGoCollection**: [*pokergo*](## "netrc machine")
+ - **PolsatGo**
+ - **PolskieRadio**
+ - **polskieradio:audition**
+ - **polskieradio:category**
+ - **polskieradio:legacy**
+ - **polskieradio:player**
+ - **polskieradio:podcast**
+ - **polskieradio:​podcast:list**
+ - **Popcorntimes**
+ - **PopcornTV**
+ - **Pornbox**
+ - **PornerBros**
+ - **PornFlip**
+ - **PornHub**: [*pornhub*](## "netrc machine") PornHub and Thumbzilla
+ - **PornHubPagedVideoList**: [*pornhub*](## "netrc machine")
+ - **PornHubPlaylist**: [*pornhub*](## "netrc machine")
+ - **PornHubUser**: [*pornhub*](## "netrc machine")
+ - **PornHubUserVideosUpload**: [*pornhub*](## "netrc machine")
+ - **Pornotube**
+ - **PornoVoisines**: (**Currently broken**)
+ - **PornoXO**: (**Currently broken**)
+ - **PornTop**
+ - **PornTube**
+ - **Pr0gramm**
+ - **PrankCast**
+ - **PrankCastPost**
+ - **PremiershipRugby**
+ - **PressTV**
+ - **ProjectVeritas**: (**Currently broken**)
+ - **prosiebensat1**: ProSiebenSat.1 Digital
+ - **PRXAccount**
+ - **PRXSeries**
+ - **prxseries:search**: PRX Series Search; "prxseries:" prefix
+ - **prxstories:search**: PRX Stories Search; "prxstories:" prefix
+ - **PRXStory**
+ - **puhutv**
+ - **puhutv:serie**
+ - **Puls4**
+ - **Pyvideo**
+ - **QDance**: [*qdance*](## "netrc machine")
+ - **QingTing**
+ - **qqmusic**: QQ音乐
+ - **qqmusic:album**: QQ音乐 - 专辑
+ - **qqmusic:mv**: QQ音乐 - MV
+ - **qqmusic:playlist**: QQ音乐 - 歌单
+ - **qqmusic:singer**: QQ音乐 - 歌手
+ - **qqmusic:toplist**: QQ音乐 - 排行榜
+ - **QuantumTV**: [*quantumtv*](## "netrc machine")
+ - **QuantumTVLive**: [*quantumtv*](## "netrc machine")
+ - **QuantumTVRecordings**: [*quantumtv*](## "netrc machine")
+ - **R7**: (**Currently broken**)
+ - **R7Article**: (**Currently broken**)
+ - **Radiko**
+ - **RadikoRadio**
+ - **radio.de**: (**Currently broken**)
+ - **Radio1Be**
+ - **radiocanada**
+ - **radiocanada:audiovideo**
+ - **RadioComercial**
+ - **RadioComercialPlaylist**
+ - **radiofrance**
+ - **RadioFranceLive**
+ - **RadioFrancePodcast**
+ - **RadioFranceProfile**
+ - **RadioFranceProgramSchedule**
+ - **RadioJavan**: (**Currently broken**)
+ - **radiokapital**
+ - **radiokapital:show**
+ - **RadioRadicale**
+ - **RadioZetPodcast**
+ - **radlive**
+ - **radlive:channel**
+ - **radlive:season**
+ - **Rai**
+ - **RaiCultura**
+ - **RaiNews**
+ - **RaiPlay**
+ - **RaiPlayLive**
+ - **RaiPlayPlaylist**
+ - **RaiPlaySound**
+ - **RaiPlaySoundLive**
+ - **RaiPlaySoundPlaylist**
+ - **RaiSudtirol**
+ - **RayWenderlich**
+ - **RayWenderlichCourse**
+ - **RbgTum**
+ - **RbgTumCourse**
+ - **RbgTumNewCourse**
+ - **RCS**
+ - **RCSEmbeds**
+ - **RCSVarious**
+ - **RCTIPlus**
+ - **RCTIPlusSeries**
+ - **RCTIPlusTV**
+ - **RDS**: RDS.ca (**Currently broken**)
+ - **RedBull**
+ - **RedBullEmbed**
+ - **RedBullTV**
+ - **RedBullTVRrnContent**
+ - **redcdnlivx**
+ - **Reddit**: [*reddit*](## "netrc machine")
+ - **RedGifs**
+ - **RedGifsSearch**: Redgifs search
+ - **RedGifsUser**: Redgifs user
+ - **RedTube**
+ - **RENTV**: (**Currently broken**)
+ - **RENTVArticle**: (**Currently broken**)
+ - **Restudy**: (**Currently broken**)
+ - **Reuters**: (**Currently broken**)
+ - **ReverbNation**
+ - **RheinMainTV**
+ - **RideHome**
+ - **RinseFM**
+ - **RinseFMArtistPlaylist**
+ - **RMCDecouverte**
+ - **RockstarGames**: (**Currently broken**)
+ - **Rokfin**: [*rokfin*](## "netrc machine")
+ - **rokfin:channel**: Rokfin Channels
+ - **rokfin:search**: Rokfin Search; "rkfnsearch:" prefix
+ - **rokfin:stack**: Rokfin Stacks
+ - **RoosterTeeth**: [*roosterteeth*](## "netrc machine")
+ - **RoosterTeethSeries**: [*roosterteeth*](## "netrc machine")
+ - **RottenTomatoes**
+ - **RoyaLive**
+ - **Rozhlas**
+ - **RozhlasVltava**
+ - **RTBF**: [*rtbf*](## "netrc machine") (**Currently broken**)
+ - **RTDocumentry**
+ - **RTDocumentryPlaylist**
+ - **rte**: Raidió Teilifís Éireann TV
+ - **rte:radio**: Raidió Teilifís Éireann radio
+ - **rtl.lu:article**
+ - **rtl.lu:tele-vod**
+ - **rtl.nl**: rtl.nl and rtlxl.nl
+ - **rtl2**
+ - **RTLLuLive**
+ - **RTLLuRadio**
+ - **RTNews**
+ - **RTP**
+ - **RTRFM**
+ - **RTS**: RTS.ch (**Currently broken**)
+ - **RTVCKaltura**
+ - **RTVCPlay**
+ - **RTVCPlayEmbed**
+ - **rtve.es:alacarta**: RTVE a la carta and Play
+ - **rtve.es:audio**: RTVE audio
+ - **rtve.es:live**: RTVE.es live streams
+ - **rtve.es:program**: RTVE.es programs
+ - **rtve.es:television**
+ - **rtvslo.si**
+ - **rtvslo.si:show**
+ - **RudoVideo**
+ - **Rule34Video**
+ - **Rumble**
+ - **RumbleChannel**
+ - **RumbleEmbed**
+ - **Ruptly**
+ - **rutube**: Rutube videos
+ - **rutube:channel**: Rutube channel
+ - **rutube:embed**: Rutube embedded videos
+ - **rutube:movie**: Rutube movies
+ - **rutube:person**: Rutube person videos
+ - **rutube:playlist**: Rutube playlists
+ - **rutube:tags**: Rutube tags
+ - **RUTV**: RUTV.RU
+ - **Ruutu**: (**Currently broken**)
+ - **Ruv**
+ - **ruv.is:spila**
+ - **S4C**
+ - **S4CSeries**
+ - **safari**: [*safari*](## "netrc machine") safaribooksonline.com online video
+ - **safari:api**: [*safari*](## "netrc machine")
+ - **safari:course**: [*safari*](## "netrc machine") safaribooksonline.com online courses
+ - **Saitosan**: (**Currently broken**)
+ - **SAKTV**: [*saktv*](## "netrc machine")
+ - **SAKTVLive**: [*saktv*](## "netrc machine")
+ - **SAKTVRecordings**: [*saktv*](## "netrc machine")
+ - **SaltTV**: [*salttv*](## "netrc machine")
+ - **SaltTVLive**: [*salttv*](## "netrc machine")
+ - **SaltTVRecordings**: [*salttv*](## "netrc machine")
+ - **SampleFocus**
+ - **Sangiin**: 参議院インターネット審議中継 (archive)
+ - **Sapo**: SAPO Vídeos
+ - **SaucePlus**: Sauce+
+ - **SBS**: sbs.com.au
+ - **sbs.co.kr**
+ - **sbs.co.kr:allvod_program**
+ - **sbs.co.kr:programs_vod**
+ - **schooltv**
+ - **ScienceChannel**
+ - **screen.yahoo:search**: Yahoo screen search; "yvsearch:" prefix
+ - **Screen9**
+ - **Screencast**
+ - **Screencastify**
+ - **ScreencastOMatic**
+ - **ScreenRec**
+ - **ScrippsNetworks**
+ - **scrippsnetworks:watch**
+ - **Scrolller**
+ - **SCTE**: [*scte*](## "netrc machine") (**Currently broken**)
+ - **SCTECourse**: [*scte*](## "netrc machine") (**Currently broken**)
+ - **sejm**
+ - **Sen**
+ - **SenalColombiaLive**: (**Currently broken**)
+ - **senate.gov**
+ - **senate.gov:isvp**
+ - **SendtoNews**: (**Currently broken**)
+ - **Servus**
+ - **Sexu**: (**Currently broken**)
+ - **SeznamZpravy**
+ - **SeznamZpravyArticle**
+ - **Shahid**: [*shahid*](## "netrc machine")
+ - **ShahidShow**
+ - **SharePoint**
+ - **ShareVideosEmbed**
+ - **ShemarooMe**
+ - **Shiey**
+ - **ShowRoomLive**
+ - **ShugiinItvLive**: 衆議院インターネット審議中継
+ - **ShugiinItvLiveRoom**: 衆議院インターネット審議中継 (中継)
+ - **ShugiinItvVod**: 衆議院インターネット審議中継 (ビデオライブラリ)
+ - **SibnetEmbed**
+ - **simplecast**
+ - **simplecast:episode**
+ - **simplecast:podcast**
+ - **Sina**
+ - **Skeb**
+ - **sky.it**
+ - **sky:news**
+ - **sky:​news:story**
+ - **sky:sports**
+ - **sky:​sports:news**
+ - **SkylineWebcams**: (**Currently broken**)
+ - **skynewsarabia:article**: (**Currently broken**)
+ - **skynewsarabia:video**: (**Currently broken**)
+ - **SkyNewsAU**
+ - **Slideshare**
+ - **SlidesLive**
+ - **Slutload**
+ - **Smotrim**
+ - **SnapchatSpotlight**
+ - **Snotr**
+ - **SoftWhiteUnderbelly**: [*softwhiteunderbelly*](## "netrc machine")
+ - **Sohu**
+ - **SohuV**
+ - **SonyLIV**: [*sonyliv*](## "netrc machine")
+ - **SonyLIVSeries**
+ - **soop**: [*afreecatv*](## "netrc machine") sooplive.co.kr
+ - **soop:catchstory**: [*afreecatv*](## "netrc machine") sooplive.co.kr catch story
+ - **soop:live**: [*afreecatv*](## "netrc machine") sooplive.co.kr livestreams
+ - **soop:user**: [*afreecatv*](## "netrc machine")
+ - **soundcloud**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:playlist**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:related**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:search**: [*soundcloud*](## "netrc machine") Soundcloud search; "scsearch:" prefix
+ - **soundcloud:set**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:trackstation**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:user**: [*soundcloud*](## "netrc machine")
+ - **soundcloud:​user:permalink**: [*soundcloud*](## "netrc machine")
+ - **SoundcloudEmbed**
+ - **soundgasm**
+ - **soundgasm:profile**
+ - **southpark.cc.com**
+ - **southpark.cc.com:español**
+ - **southpark.de**
+ - **southpark.lat**
+ - **southparkstudios.co.uk**
+ - **southparkstudios.com.br**
+ - **southparkstudios.nu**
+ - **SovietsCloset**
+ - **SovietsClosetPlaylist**
+ - **SpankBang**
+ - **SpankBangPlaylist**
+ - **Spiegel**
+ - **Sport5**
+ - **SportBox**: (**Currently broken**)
+ - **SportDeutschland**
+ - **spotify**: Spotify episodes (**Currently broken**)
+ - **spotify:show**: Spotify shows (**Currently broken**)
+ - **Spreaker**
+ - **SpreakerShow**
+ - **SpringboardPlatform**
+ - **SproutVideo**
+ - **sr:mediathek**: Saarländischer Rundfunk
+ - **SRGSSR**
+ - **SRGSSRPlay**: srf.ch, rts.ch, rsi.ch, rtr.ch and swissinfo.ch play sites
+ - **StacommuLive**: [*stacommu*](## "netrc machine")
+ - **StacommuVOD**: [*stacommu*](## "netrc machine")
+ - **StagePlusVODConcert**: [*stageplus*](## "netrc machine")
+ - **stanfordoc**: Stanford Open ClassRoom
+ - **startrek**: STAR TREK
+ - **startv**
+ - **Steam**
+ - **SteamCommunity**
+ - **SteamCommunityBroadcast**
+ - **Stitcher**
+ - **StitcherShow**
+ - **StoryFire**
+ - **StoryFireSeries**
+ - **StoryFireUser**
+ - **Streaks**
+ - **Streamable**
+ - **StreamCZ**
+ - **StreetVoice**
+ - **StretchInternet**
+ - **Stripchat**
+ - **stv:player**
+ - **stvr**: Slovak Television and Radio (formerly RTVS)
+ - **Subsplash**
+ - **subsplash:playlist**
+ - **Substack**
+ - **SunPorno**
+ - **sverigesradio:episode**
+ - **sverigesradio:publication**
+ - **svt:page**
+ - **svt:play**: SVT Play and Öppet arkiv
+ - **svt:​play:series**
+ - **SwearnetEpisode**
+ - **Syfy**
+ - **SYVDK**
+ - **SztvHu**
+ - **t-online.de**: (**Currently broken**)
+ - **Tagesschau**: (**Currently broken**)
+ - **TapTapApp**
+ - **TapTapAppIntl**
+ - **TapTapMoment**
+ - **TapTapPostIntl**
+ - **Tass**: (**Currently broken**)
+ - **TBS**
+ - **TBSJPEpisode**
+ - **TBSJPPlaylist**
+ - **TBSJPProgram**
+ - **Teachable**: [*teachable*](## "netrc machine") (**Currently broken**)
+ - **TeachableCourse**: [*teachable*](## "netrc machine")
+ - **teachertube**: teachertube.com videos (**Currently broken**)
+ - **teachertube:​user:collection**: teachertube.com user and collection videos (**Currently broken**)
+ - **TeachingChannel**: (**Currently broken**)
+ - **Teamcoco**
+ - **TeamTreeHouse**: [*teamtreehouse*](## "netrc machine")
+ - **techtv.mit.edu**
+ - **TedEmbed**
+ - **TedPlaylist**
+ - **TedSeries**
+ - **TedTalk**
+ - **Tele13**
+ - **Tele5**
+ - **TeleBruxelles**
+ - **TelecaribePlay**
+ - **Telecinco**: telecinco.es, cuatro.com and mediaset.es
+ - **Telegraaf**
+ - **telegram:embed**
+ - **TeleMB**: (**Currently broken**)
+ - **Telemundo**: (**Currently broken**)
+ - **TeleQuebec**
+ - **TeleQuebecEmission**
+ - **TeleQuebecLive**
+ - **TeleQuebecSquat**
+ - **TeleQuebecVideo**
+ - **TeleTask**: (**Currently broken**)
+ - **Telewebion**: (**Currently broken**)
+ - **Tempo**
+ - **TennisTV**: [*tennistv*](## "netrc machine")
+ - **TF1**
+ - **TFO**: (**Currently broken**)
+ - **theatercomplextown:ppv**: [*theatercomplextown*](## "netrc machine")
+ - **theatercomplextown:vod**: [*theatercomplextown*](## "netrc machine")
+ - **TheGuardianPodcast**
+ - **TheGuardianPodcastPlaylist**
+ - **TheHighWire**
+ - **TheHoleTv**
+ - **TheIntercept**
+ - **ThePlatform**
+ - **ThePlatformFeed**
+ - **TheStar**
+ - **TheSun**
+ - **TheWeatherChannel**
+ - **ThisAmericanLife**
+ - **ThisOldHouse**: [*thisoldhouse*](## "netrc machine")
+ - **ThisVid**
+ - **ThisVidMember**
+ - **ThisVidPlaylist**
+ - **ThreeSpeak**
+ - **ThreeSpeakUser**
+ - **TikTok**
+ - **tiktok:collection**
+ - **tiktok:effect**: (**Currently broken**)
+ - **tiktok:live**
+ - **tiktok:sound**: (**Currently broken**)
+ - **tiktok:tag**: (**Currently broken**)
+ - **tiktok:user**
+ - **TLC**
+ - **TMZ**
+ - **TNAFlix**
+ - **TNAFlixNetworkEmbed**
+ - **toggle**
+ - **toggo**
+ - **tokfm:audition**
+ - **tokfm:podcast**
+ - **ToonGoggles**
+ - **tou.tv**: [*toutv*](## "netrc machine")
+ - **toutiao**: 今日头条
+ - **Toypics**: Toypics video (**Currently broken**)
+ - **ToypicsUser**: Toypics user profile (**Currently broken**)
+ - **TrailerAddict**: (**Currently broken**)
+ - **TravelChannel**
+ - **Triller**: [*triller*](## "netrc machine")
+ - **TrillerShort**
+ - **TrillerUser**: [*triller*](## "netrc machine")
+ - **Trovo**
+ - **TrovoChannelClip**: All Clips of a trovo.live channel; "trovoclip:" prefix
+ - **TrovoChannelVod**: All VODs of a trovo.live channel; "trovovod:" prefix
+ - **TrovoVod**
+ - **TrtCocukVideo**
+ - **TrtWorld**
+ - **TrueID**
+ - **TruNews**
+ - **Truth**
+ - **Tube8**: (**Currently broken**)
+ - **TubeTuGraz**: [*tubetugraz*](## "netrc machine") tube.tugraz.at
+ - **TubeTuGrazSeries**: [*tubetugraz*](## "netrc machine")
+ - **tubitv**: [*tubitv*](## "netrc machine")
+ - **tubitv:series**
+ - **Tumblr**: [*tumblr*](## "netrc machine")
+ - **TuneInPodcast**
+ - **TuneInPodcastEpisode**
+ - **TuneInStation**
+ - **tv.dfb.de**
+ - **TV2**
+ - **TV2Article**
+ - **TV2DK**
+ - **TV2DKBornholmPlay**
+ - **tv2play.hu**
+ - **tv2playseries.hu**
+ - **TV4**: tv4.se and tv4play.se
+ - **TV5MONDE**
+ - **tv5unis**: (**Currently broken**)
+ - **tv5unis:video**: (**Currently broken**)
+ - **tv8.it**
+ - **tv8.it:live**: TV8 Live
+ - **tv8.it:playlist**: TV8 Playlist
+ - **TVANouvelles**
+ - **TVANouvellesArticle**
+ - **tvaplus**: TVA+
+ - **TVC**
+ - **TVCArticle**
+ - **TVer**
+ - **tvigle**: Интернет-телевидение Tvigle.ru
+ - **TVIPlayer**
+ - **TVN24**: (**Currently broken**)
+ - **TVNoe**: (**Currently broken**)
+ - **tvopengr:embed**: tvopen.gr embedded videos
+ - **tvopengr:watch**: tvopen.gr (and ethnos.gr) videos
+ - **tvp**: Telewizja Polska
+ - **tvp:embed**: Telewizja Polska
+ - **tvp:stream**
+ - **tvp:vod**
+ - **tvp:​vod:series**
+ - **TVPlayer**
+ - **TVPlayHome**
+ - **tvw**
+ - **tvw:news**
+ - **tvw:tvchannels**
+ - **Tweakers**
+ - **TwitCasting**
+ - **TwitCastingLive**
+ - **TwitCastingUser**
+ - **twitch:clips**: [*twitch*](## "netrc machine")
+ - **twitch:stream**: [*twitch*](## "netrc machine")
+ - **twitch:vod**: [*twitch*](## "netrc machine")
+ - **TwitchCollection**: [*twitch*](## "netrc machine")
+ - **TwitchVideos**: [*twitch*](## "netrc machine")
+ - **TwitchVideosClips**: [*twitch*](## "netrc machine")
+ - **TwitchVideosCollections**: [*twitch*](## "netrc machine")
+ - **twitter**: [*twitter*](## "netrc machine")
+ - **twitter:amplify**: [*twitter*](## "netrc machine")
+ - **twitter:broadcast**: [*twitter*](## "netrc machine")
+ - **twitter:card**
+ - **twitter:shortener**: [*twitter*](## "netrc machine")
+ - **twitter:spaces**: [*twitter*](## "netrc machine")
+ - **Txxx**
+ - **udemy**: [*udemy*](## "netrc machine")
+ - **udemy:course**: [*udemy*](## "netrc machine")
+ - **UDNEmbed**: 聯合影音
+ - **UFCArabia**: [*ufcarabia*](## "netrc machine")
+ - **UFCTV**: [*ufctv*](## "netrc machine")
+ - **ukcolumn**: (**Currently broken**)
+ - **UKTVPlay**
+ - **UlizaPlayer**
+ - **UlizaPortal**: ulizaportal.jp
+ - **umg:de**: Universal Music Deutschland
+ - **Unistra**
+ - **UnitedNationsWebTv**
+ - **Unity**: (**Currently broken**)
+ - **uol.com.br**
+ - **uplynk**
+ - **uplynk:preplay**
+ - **Urort**: NRK P3 Urørt (**Currently broken**)
+ - **URPlay**
+ - **USANetwork**
+ - **USAToday**
+ - **ustream**
+ - **ustream:channel**
+ - **ustudio**
+ - **ustudio:embed**
+ - **Varzesh3**: (**Currently broken**)
+ - **Vbox7**
+ - **Veo**
+ - **Vesti**: Вести.Ru (**Currently broken**)
+ - **VGTV**: VGTV, BTTV, FTV, Aftenposten and Aftonbladet
+ - **vh1.com**
+ - **vhx:embed**: [*vimeo*](## "netrc machine")
+ - **vice**: (**Currently broken**)
+ - **vice:article**: (**Currently broken**)
+ - **vice:show**: (**Currently broken**)
+ - **Viddler**: (**Currently broken**)
+ - **Videa**
+ - **video.arnes.si**: Arnes Video
+ - **video.google:search**: Google Video search; "gvsearch:" prefix
+ - **video.sky.it**
+ - **video.sky.it:live**
+ - **VideoDetective**
+ - **videofy.me**: (**Currently broken**)
+ - **VideoKen**
+ - **VideoKenCategory**
+ - **VideoKenPlayer**
+ - **VideoKenPlaylist**
+ - **VideoKenTopic**
+ - **videomore**
+ - **videomore:season**
+ - **videomore:video**
+ - **VideoPress**
+ - **Vidflex**
+ - **Vidio**: [*vidio*](## "netrc machine")
+ - **VidioLive**: [*vidio*](## "netrc machine")
+ - **VidioPremier**: [*vidio*](## "netrc machine")
+ - **VidLii**
+ - **Vidly**
+ - **vids.io**
+ - **Vidyard**
+ - **viewlift**
+ - **viewlift:embed**
+ - **Viidea**
+ - **vimeo**: [*vimeo*](## "netrc machine")
+ - **vimeo:album**: [*vimeo*](## "netrc machine")
+ - **vimeo:channel**: [*vimeo*](## "netrc machine")
+ - **vimeo:event**: [*vimeo*](## "netrc machine")
+ - **vimeo:group**: [*vimeo*](## "netrc machine")
+ - **vimeo:likes**: [*vimeo*](## "netrc machine") Vimeo user likes
+ - **vimeo:ondemand**: [*vimeo*](## "netrc machine")
+ - **vimeo:pro**: [*vimeo*](## "netrc machine")
+ - **vimeo:review**: [*vimeo*](## "netrc machine") Review pages on vimeo
+ - **vimeo:user**: [*vimeo*](## "netrc machine")
+ - **vimeo:watchlater**: [*vimeo*](## "netrc machine") Vimeo watch later list, ":vimeowatchlater" keyword (requires authentication)
+ - **Vimm:recording**
+ - **Vimm:stream**
+ - **ViMP**
+ - **ViMP:Playlist**
+ - **Viously**
+ - **Viqeo**: (**Currently broken**)
+ - **Viu**
+ - **viu:ott**: [*viu*](## "netrc machine")
+ - **viu:playlist**
+ - **ViuOTTIndonesia**
+ - **vk**: [*vk*](## "netrc machine") VK
+ - **vk:uservideos**: [*vk*](## "netrc machine") VK - User's Videos
+ - **vk:wallpost**: [*vk*](## "netrc machine")
+ - **VKPlay**
+ - **VKPlayLive**
+ - **vm.tiktok**
+ - **Vocaroo**
+ - **VODPl**
+ - **VODPlatform**
+ - **voicy**: (**Currently broken**)
+ - **voicy:channel**: (**Currently broken**)
+ - **VolejTV**
+ - **VoxMedia**
+ - **VoxMediaVolume**
+ - **vpro**: npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
+ - **vqq:series**
+ - **vqq:video**
+ - **vrsquare**: VR SQUARE
+ - **vrsquare:channel**
+ - **vrsquare:search**
+ - **vrsquare:section**
+ - **VRT**: VRT NWS, Flanders News, Flandern Info and Sporza
+ - **vrtmax**: [*vrtnu*](## "netrc machine") VRT MAX (formerly VRT NU)
+ - **VTM**
+ - **VTV**
+ - **VTVGo**
+ - **VTXTV**: [*vtxtv*](## "netrc machine")
+ - **VTXTVLive**: [*vtxtv*](## "netrc machine")
+ - **VTXTVRecordings**: [*vtxtv*](## "netrc machine")
+ - **VuClip**
+ - **VVVVID**
+ - **VVVVIDShow**
+ - **Walla**
+ - **WalyTV**: [*walytv*](## "netrc machine")
+ - **WalyTVLive**: [*walytv*](## "netrc machine")
+ - **WalyTVRecordings**: [*walytv*](## "netrc machine")
+ - **washingtonpost**
+ - **washingtonpost:article**
+ - **wat.tv**
+ - **WatchESPN**
+ - **WDR**
+ - **wdr:mobile**: (**Currently broken**)
+ - **WDRElefant**
+ - **WDRPage**
+ - **web.archive:youtube**: web.archive.org saved youtube videos, "ytarchive:" prefix
+ - **Webcamerapl**
+ - **Webcaster**
+ - **WebcasterFeed**
+ - **WebOfStories**
+ - **WebOfStoriesPlaylist**
+ - **Weibo**
+ - **WeiboUser**
+ - **WeiboVideo**
+ - **WeiqiTV**: WQTV (**Currently broken**)
+ - **wetv:episode**
+ - **WeTvSeries**
+ - **Weverse**: [*weverse*](## "netrc machine")
+ - **WeverseLive**: [*weverse*](## "netrc machine")
+ - **WeverseLiveTab**: [*weverse*](## "netrc machine")
+ - **WeverseMedia**: [*weverse*](## "netrc machine")
+ - **WeverseMediaTab**: [*weverse*](## "netrc machine")
+ - **WeverseMoment**: [*weverse*](## "netrc machine")
+ - **WeVidi**
+ - **Weyyak**
+ - **whowatch**
+ - **Whyp**
+ - **wikimedia.org**
+ - **Wimbledon**
+ - **WimTV**
+ - **WinSportsVideo**
+ - **Wistia**
+ - **WistiaChannel**
+ - **WistiaPlaylist**
+ - **wnl**: npo.nl, ntr.nl, omroepwnl.nl, zapp.nl and npo3.nl
+ - **wordpress:mb.miniAudioPlayer**
+ - **wordpress:playlist**
+ - **WorldStarHipHop**
+ - **wppilot**
+ - **wppilot:channels**
+ - **WrestleUniversePPV**: [*wrestleuniverse*](## "netrc machine")
+ - **WrestleUniverseVOD**: [*wrestleuniverse*](## "netrc machine")
+ - **WSJ**: Wall Street Journal
+ - **WSJArticle**
+ - **WWE**
+ - **wyborcza:video**
+ - **WyborczaPodcast**
+ - **wykop:dig**
+ - **wykop:​dig:comment**
+ - **wykop:post**
+ - **wykop:​post:comment**
+ - **Xanimu**
+ - **XboxClips**
+ - **XHamster**
+ - **XHamsterEmbed**
+ - **XHamsterUser**
+ - **XiaoHongShu**: 小红书
+ - **ximalaya**: 喜马拉雅FM
+ - **ximalaya:album**: 喜马拉雅FM 专辑
+ - **Xinpianchang**: 新片场
+ - **XMinus**: (**Currently broken**)
+ - **XNXX**
+ - **Xstream**
+ - **XVideos**
+ - **xvideos:quickies**
+ - **XXXYMovies**
+ - **Yahoo**: Yahoo screen and movies
+ - **yahoo:japannews**: Yahoo! Japan News
+ - **YandexDisk**
+ - **yandexmusic:album**: Яндекс.Музыка - Альбом
+ - **yandexmusic:​artist:albums**: Яндекс.Музыка - Артист - Альбомы
+ - **yandexmusic:​artist:tracks**: Яндекс.Музыка - Артист - Треки
+ - **yandexmusic:playlist**: Яндекс.Музыка - Плейлист
+ - **yandexmusic:track**: Яндекс.Музыка - Трек
+ - **YandexVideo**
+ - **YandexVideoPreview**
+ - **YapFiles**: (**Currently broken**)
+ - **Yappy**: (**Currently broken**)
+ - **YappyProfile**
+ - **YleAreena**
+ - **YouJizz**
+ - **youku**: 优酷
+ - **youku:show**
+ - **YouNowChannel**
+ - **YouNowLive**
+ - **YouNowMoment**
+ - **YouPorn**
+ - **YouPornCategory**: YouPorn category, with sorting, filtering and pagination
+ - **YouPornChannel**: YouPorn channel, with sorting and pagination
+ - **YouPornCollection**: YouPorn collection (user playlist), with sorting and pagination
+ - **YouPornStar**: YouPorn Pornstar, with description, sorting and pagination
+ - **YouPornTag**: YouPorn tag (porntags), with sorting, filtering and pagination
+ - **YouPornVideos**: YouPorn video (browse) playlists, with sorting, filtering and pagination
+ - **youtube**: [*youtube*](## "netrc machine") YouTube
+ - **youtube:clip**: [*youtube*](## "netrc machine")
+ - **youtube:favorites**: [*youtube*](## "netrc machine") YouTube liked videos; ":ytfav" keyword (requires cookies)
+ - **youtube:history**: [*youtube*](## "netrc machine") Youtube watch history; ":ythis" keyword (requires cookies)
+ - **youtube:​music:search_url**: [*youtube*](## "netrc machine") YouTube music search URLs with selectable sections, e.g. #songs
+ - **youtube:notif**: [*youtube*](## "netrc machine") YouTube notifications; ":ytnotif" keyword (requires cookies)
+ - **youtube:playlist**: [*youtube*](## "netrc machine") YouTube playlists
+ - **youtube:recommended**: [*youtube*](## "netrc machine") YouTube recommended videos; ":ytrec" keyword
+ - **youtube:search**: [*youtube*](## "netrc machine") YouTube search; "ytsearch:" prefix
+ - **youtube:​search:date**: [*youtube*](## "netrc machine") YouTube search, newest videos first; "ytsearchdate:" prefix
+ - **youtube:search_url**: [*youtube*](## "netrc machine") YouTube search URLs with sorting and filter support
+ - **youtube:​shorts:pivot:audio**: [*youtube*](## "netrc machine") YouTube Shorts audio pivot (Shorts using audio of a given video)
+ - **youtube:subscriptions**: [*youtube*](## "netrc machine") YouTube subscriptions feed; ":ytsubs" keyword (requires cookies)
+ - **youtube:tab**: [*youtube*](## "netrc machine") YouTube Tabs
+ - **youtube:user**: [*youtube*](## "netrc machine") YouTube user videos; "ytuser:" prefix
+ - **youtube:watchlater**: [*youtube*](## "netrc machine") Youtube watch later list; ":ytwatchlater" keyword (requires cookies)
+ - **YoutubeLivestreamEmbed**: [*youtube*](## "netrc machine") YouTube livestream embeds
+ - **YoutubeYtBe**: [*youtube*](## "netrc machine") youtu.be
+ - **Zaiko**
+ - **ZaikoETicket**
+ - **Zapiks**
+ - **Zattoo**: [*zattoo*](## "netrc machine")
+ - **ZattooLive**: [*zattoo*](## "netrc machine")
+ - **ZattooMovies**: [*zattoo*](## "netrc machine")
+ - **ZattooRecordings**: [*zattoo*](## "netrc machine")
+ - **zdf**
+ - **zdf:channel**
+ - **Zee5**: [*zee5*](## "netrc machine")
+ - **zee5:series**
+ - **ZeeNews**: (**Currently broken**)
+ - **ZenPorn**
+ - **ZetlandDKArticle**
+ - **Zhihu**
+ - **zingmp3**: zingmp3.vn
+ - **zingmp3:album**
+ - **zingmp3:chart-home**
+ - **zingmp3:chart-music-video**
+ - **zingmp3:hub**
+ - **zingmp3:liveradio**
+ - **zingmp3:podcast**
+ - **zingmp3:podcast-episode**
+ - **zingmp3:user**
+ - **zingmp3:week-chart**
+ - **zoom**
+ - **Zype**
+ - **generic**: Generic downloader that works on some sites
diff --git a/network/yt-dlp-bin/getdocs.sh b/network/yt-dlp-bin/getdocs.sh
new file mode 100644
index 0000000000..f0e7af5662
--- /dev/null
+++ b/network/yt-dlp-bin/getdocs.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+FILES="
+CONTRIBUTING.md
+Changelog.md
+Collaborators.md
+LICENSE
+supportedsites.md
+"
+
+source ./yt-dlp-bin.info
+
+for i in $FILES; do
+ wget -O docs/$i https://raw.githubusercontent.com/yt-dlp/yt-dlp/refs/tags/$VERSION/$i
+done
+
+echo 'git add docs/*'
diff --git a/network/yt-dlp-bin/slack-desc b/network/yt-dlp-bin/slack-desc
index b1e83908b1..735195a187 100644
--- a/network/yt-dlp-bin/slack-desc
+++ b/network/yt-dlp-bin/slack-desc
@@ -6,13 +6,13 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-yt-dlp-bin: yt-dlp-bin (download videos from youtube)
+yt-dlp-bin: yt-dlp-bin (download videos from youtube and other video sites)
+yt-dlp-bin:
+yt-dlp-bin: yt-dlp is a feature-rich command-line audio/video downloader with
+yt-dlp-bin: support for thousands of sites. The project is a fork of youtube-dl,
+yt-dlp-bin: based on the now-inactive youtube-dlc.
yt-dlp-bin:
-yt-dlp-bin: yt-dlp is a youtube-dl fork based on the now inactive youtube-dlc.
-yt-dlp-bin: The main focus of this project is adding new features and patches
-yt-dlp-bin: while also keeping up to date with the original project.
yt-dlp-bin:
-yt-dlp-bin: Homepage: https://github.com/yt-dlp/yt-dlp
yt-dlp-bin:
yt-dlp-bin:
yt-dlp-bin:
diff --git a/network/yt-dlp-bin/yt-dlp-bin.SlackBuild b/network/yt-dlp-bin/yt-dlp-bin.SlackBuild
index 468a1eb041..19fb2240e8 100644
--- a/network/yt-dlp-bin/yt-dlp-bin.SlackBuild
+++ b/network/yt-dlp-bin/yt-dlp-bin.SlackBuild
@@ -2,42 +2,63 @@
# Slackware build script for yt-dlp-bin
-# Copyright 2024-2025 G. Galdini <dioniso@disroot.org> Brazil
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# Originally written by G. Galdini. Modified and now maintained by
+# B. Watson <urchlay@slackware.uk>.
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20250901 bkw: DOWNLOAD="UNSUPPORTED", add fake .info file for aarch64.
+# 20250825 bkw:
+# - take over maintenance.
+# - relicense as WTFPL.
+# - update for v2025.08.22.
+# - add getdocs.sh script to auto-download the documentation from github.
+# - use the ELF binary compiled for linux (yt-dlp_linux) rather than
+# the python-wrapped zip file (yt-dlp), to avoid the impending EOL
+# of python-3.9: the ELF binary includes its own python interpreter.
+# probably this can be changed back after the next Slackware release
+# (15.1 or 16.0, whatever it ends up being called). this means no
+# 32-bit x86 support, sorry.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=yt-dlp-bin
SRCNAM=${PRGNAM%-bin}
-VERSION=${VERSION:-2025.03.27}
+VERSION=${VERSION:-2025.08.22}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-ARCH=noarch
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+# 20250826 bkw: Should this come before or after the unsupported arch
+# error? I think it's safer but more confusing if it's before...
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
+case "$ARCH" in
+ x86_64) SRCNAM=yt-dlp_linux ;;
+ aarch64) SRCNAM=yt-dlp_linux_aarch64 ;;
+ *) # get the user's attention.
+ cat <<EOF
+
+****************************************************
+* Unsupported architecture: ARCH=$ARCH
+* Supported ARCH values are "x86_64" and "aarch64".
+****************************************************
+
+EOF
+ exit 1
+esac
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -47,13 +68,18 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-install -Dm755 -oroot -groot $CWD/$SRCNAM -t $PKG/usr/bin
+# 20250826 bkw: the -s option for install means we can't build an
+# aarch64 package on x86_64 or vice versa. stripping the binary
+# doesn't make it much smaller, but it doesn't hurt either.
+mkdir -p $PKG/usr/bin
+install -s -m0755 -oroot -groot $CWD/$SRCNAM $PKG/usr/bin/yt-dlp
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $CWD/docs/[A-Z]* \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-chown root:root $PKG/usr/doc/$PRGNAM-$VERSION/*
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+for i in $CWD/docs/*; do
+ cat $i > $PKGDOC/$( basename $i )
+done
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/yt-dlp-bin/yt-dlp-bin.info b/network/yt-dlp-bin/yt-dlp-bin.info
index dd5f479cea..5bd6ea390f 100644
--- a/network/yt-dlp-bin/yt-dlp-bin.info
+++ b/network/yt-dlp-bin/yt-dlp-bin.info
@@ -1,10 +1,10 @@
PRGNAM="yt-dlp-bin"
-VERSION="2025.03.27"
+VERSION="2025.08.22"
HOMEPAGE="https://github.com/yt-dlp/yt-dlp"
-DOWNLOAD="https://github.com/yt-dlp/yt-dlp/releases/download/2025.03.27/yt-dlp"
-MD5SUM="25f70edd05e2db5a6ba5581f6cc686b6"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/yt-dlp/yt-dlp/releases/download/2025.08.22/yt-dlp_linux"
+MD5SUM_x86_64="70d8decd519ec0c553dbf53dc07798a9"
REQUIRES=""
-MAINTAINER="G. Galdini"
-EMAIL="dioniso@disroot.org"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/yt-dlp-bin/yt-dlp-bin.info.aarch64 b/network/yt-dlp-bin/yt-dlp-bin.info.aarch64
new file mode 100644
index 0000000000..64cd12c694
--- /dev/null
+++ b/network/yt-dlp-bin/yt-dlp-bin.info.aarch64
@@ -0,0 +1,10 @@
+PRGNAM="yt-dlp-bin"
+VERSION="2025.08.22"
+HOMEPAGE="https://github.com/yt-dlp/yt-dlp"
+DOWNLOAD="https://github.com/yt-dlp/yt-dlp/releases/download/2025.08.22/yt-dlp_linux_aarch64"
+MD5SUM="636fbe6fa56486777258a90303cc896b"
+DOWNLOAD_x86_64="https://github.com/yt-dlp/yt-dlp/releases/download/2025.08.22/yt-dlp_linux"
+MD5SUM_x86_64="70d8decd519ec0c553dbf53dc07798a9"
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/yt-dlp/yt-dlp.SlackBuild b/network/yt-dlp/yt-dlp.SlackBuild
index 64152c083c..4ca3372a00 100644
--- a/network/yt-dlp/yt-dlp.SlackBuild
+++ b/network/yt-dlp/yt-dlp.SlackBuild
@@ -12,6 +12,13 @@
# for clipgrab, haruna, xdman, ytfzf, and an optional dependency for
# pipe-viewer, it has to exist on SBo.
+# 20250824 bkw: updated for v2025.08.22.
+# 20250819 bkw: updatef for v2025.08.20.
+# 20250804 bkw: updated for v2025.07.21.
+# 20250702 bkw: updated for v2025.06.30.
+# 20250609 bkw: updated for v2025.06.09.
+# 20250522 bkw: updated for v2025.05.22.
+# 20250512 bkw: updated for v2025.04.30.
# 20250403 bkw: updated for v2025.03.31.
# 20250328 bkw: updated for v2025.03.27.
# 20250321 bkw: updated for v2025.03.21.
@@ -52,7 +59,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=yt-dlp
-VERSION=${VERSION:-2025.03.31}
+VERSION=${VERSION:-2025.08.22}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/yt-dlp/yt-dlp.info b/network/yt-dlp/yt-dlp.info
index 541e1c5f84..57e833bf83 100644
--- a/network/yt-dlp/yt-dlp.info
+++ b/network/yt-dlp/yt-dlp.info
@@ -1,8 +1,8 @@
PRGNAM="yt-dlp"
-VERSION="2025.03.31"
+VERSION="2025.08.22"
HOMEPAGE="https://github.com/yt-dlp/yt-dlp"
-DOWNLOAD="https://github.com/yt-dlp/yt-dlp/archive/2025.03.31/yt-dlp-2025.03.31.tar.gz"
-MD5SUM="f817b1078844ac4cc7f0201b3012bf0b"
+DOWNLOAD="https://github.com/yt-dlp/yt-dlp/archive/2025.08.22/yt-dlp-2025.08.22.tar.gz"
+MD5SUM="13ad09ad5984bd8b915f65c5ad9523d5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-build python3-hatchling"
diff --git a/network/zabbix_agent2/zabbix_agent2.SlackBuild b/network/zabbix_agent2/zabbix_agent2.SlackBuild
index 60f61016f1..60cffcd10b 100644
--- a/network/zabbix_agent2/zabbix_agent2.SlackBuild
+++ b/network/zabbix_agent2/zabbix_agent2.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_agent2
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_agent2/zabbix_agent2.info b/network/zabbix_agent2/zabbix_agent2.info
index 9d01a6ef6d..ea9f0cb92f 100644
--- a/network/zabbix_agent2/zabbix_agent2.info
+++ b/network/zabbix_agent2/zabbix_agent2.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_agent2"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="google-go-lang"
diff --git a/network/zabbix_agentd/zabbix_agentd.SlackBuild b/network/zabbix_agentd/zabbix_agentd.SlackBuild
index c3597c05c7..ce95a6b3db 100644
--- a/network/zabbix_agentd/zabbix_agentd.SlackBuild
+++ b/network/zabbix_agentd/zabbix_agentd.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_agentd
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_agentd/zabbix_agentd.info b/network/zabbix_agentd/zabbix_agentd.info
index 7ced0f23a5..d7a9b25fb0 100644
--- a/network/zabbix_agentd/zabbix_agentd.info
+++ b/network/zabbix_agentd/zabbix_agentd.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_agentd"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zabbix_frontend/zabbix_frontend.SlackBuild b/network/zabbix_frontend/zabbix_frontend.SlackBuild
index 09be652e40..0944217103 100644
--- a/network/zabbix_frontend/zabbix_frontend.SlackBuild
+++ b/network/zabbix_frontend/zabbix_frontend.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_frontend
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_frontend/zabbix_frontend.info b/network/zabbix_frontend/zabbix_frontend.info
index c2687101ff..2caf976df3 100644
--- a/network/zabbix_frontend/zabbix_frontend.info
+++ b/network/zabbix_frontend/zabbix_frontend.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_frontend"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild b/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild
index 538f59357d..7fe63f0ebe 100644
--- a/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild
+++ b/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_java_gateway
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_java_gateway/zabbix_java_gateway.info b/network/zabbix_java_gateway/zabbix_java_gateway.info
index 4be3679417..e353cab19e 100644
--- a/network/zabbix_java_gateway/zabbix_java_gateway.info
+++ b/network/zabbix_java_gateway/zabbix_java_gateway.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_java_gateway"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zulu-openjdk8"
diff --git a/network/zabbix_proxy/zabbix_proxy.SlackBuild b/network/zabbix_proxy/zabbix_proxy.SlackBuild
index c8842f45ca..b9444c672d 100644
--- a/network/zabbix_proxy/zabbix_proxy.SlackBuild
+++ b/network/zabbix_proxy/zabbix_proxy.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_proxy
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_proxy/zabbix_proxy.info b/network/zabbix_proxy/zabbix_proxy.info
index 1c60df4e6b..0d3197e68e 100644
--- a/network/zabbix_proxy/zabbix_proxy.info
+++ b/network/zabbix_proxy/zabbix_proxy.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_proxy"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="unixODBC"
diff --git a/network/zabbix_server/zabbix_server.SlackBuild b/network/zabbix_server/zabbix_server.SlackBuild
index 1f573dab73..5424860a3e 100644
--- a/network/zabbix_server/zabbix_server.SlackBuild
+++ b/network/zabbix_server/zabbix_server.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zabbix_server
-VERSION=${VERSION:-6.4.11}
+VERSION=${VERSION:-7.0.13}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zabbix_server/zabbix_server.info b/network/zabbix_server/zabbix_server.info
index 2a15a9f695..eaa2cc3759 100644
--- a/network/zabbix_server/zabbix_server.info
+++ b/network/zabbix_server/zabbix_server.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_server"
-VERSION="6.4.11"
+VERSION="7.0.13"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://sourceforge.net/projects/slackbuildsdirectlinks/files/zabbix/zabbix-6.4.11.tar.gz"
-MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/7.0/zabbix-7.0.13.tar.gz"
+MD5SUM="f3de3e5db0e12781164b164afb1cc40f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="unixODBC"
diff --git a/network/zdns/zdns.SlackBuild b/network/zdns/zdns.SlackBuild
index 8ffd54af70..1030c6c404 100644
--- a/network/zdns/zdns.SlackBuild
+++ b/network/zdns/zdns.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zdns
-VERSION=${VERSION:-2.0.4}
+VERSION=${VERSION:-2.0.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zdns/zdns.info b/network/zdns/zdns.info
index 94af16740e..f0d9dcb14d 100644
--- a/network/zdns/zdns.info
+++ b/network/zdns/zdns.info
@@ -1,8 +1,8 @@
PRGNAM="zdns"
-VERSION="2.0.4"
+VERSION="2.0.5"
HOMEPAGE="https://zmap.io"
-DOWNLOAD="https://github.com/zmap/zdns/archive/v2.0.4/zdns-2.0.4.tar.gz"
-MD5SUM="e2379cef23631f00095989d38fda603f"
+DOWNLOAD="https://github.com/zmap/zdns/archive/v2.0.5/zdns-2.0.5.tar.gz"
+MD5SUM="8e265b7950fed4f5ba56081609cb5033"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="google-go-lang"
diff --git a/network/zeek/zeek.SlackBuild b/network/zeek/zeek.SlackBuild
index 47956d395c..ae5499ff6f 100644
--- a/network/zeek/zeek.SlackBuild
+++ b/network/zeek/zeek.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for Zeek
+# Slackware build script for zeek
-# Copyright 2018-2024 Michael Edie, Tampa, FL USA
+# Copyright 2018-2025 Michael Edie, Tampa, FL USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zeek
-VERSION=${VERSION:-7.0.4}
+VERSION=${VERSION:-8.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zeek/zeek.info b/network/zeek/zeek.info
index a20a10ff6d..f26780ca5e 100644
--- a/network/zeek/zeek.info
+++ b/network/zeek/zeek.info
@@ -1,10 +1,10 @@
PRGNAM="zeek"
-VERSION="7.0.4"
+VERSION="8.0.1"
HOMEPAGE="https://www.zeek.org"
-DOWNLOAD="https://download.zeek.org/zeek-7.0.4.tar.gz"
-MD5SUM="5bdd8521c1722c2e7d3dbb298e86ec29"
+DOWNLOAD="https://download.zeek.org/zeek-8.0.1.tar.gz"
+MD5SUM="d143eb768255b5dd3bee0db4745552f4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="zeromq"
MAINTAINER="Michael Edie"
EMAIL="michael@sawbox.net"
diff --git a/network/zmap/zmap.SlackBuild b/network/zmap/zmap.SlackBuild
index ed1be42f68..e399bb4e6e 100644
--- a/network/zmap/zmap.SlackBuild
+++ b/network/zmap/zmap.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zmap
-VERSION=${VERSION:-4.3.3}
+VERSION=${VERSION:-4.3.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/zmap/zmap.info b/network/zmap/zmap.info
index 2fe987342c..bb9493a323 100644
--- a/network/zmap/zmap.info
+++ b/network/zmap/zmap.info
@@ -1,8 +1,8 @@
PRGNAM="zmap"
-VERSION="4.3.3"
+VERSION="4.3.4"
HOMEPAGE="https://zmap.io"
-DOWNLOAD="https://github.com/zmap/zmap/archive/v4.3.3/zmap-4.3.3.tar.gz"
-MD5SUM="deeaaa56d542f5b4056e1e69bfa3d628"
+DOWNLOAD="https://github.com/zmap/zmap/archive/v4.3.4/zmap-4.3.4.tar.gz"
+MD5SUM="c2667034a2890d8d3b3b07a07439f044"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="byacc gengetopt"
diff --git a/network/zoom-linux/zoom-linux.SlackBuild b/network/zoom-linux/zoom-linux.SlackBuild
index 7a451add59..19c68ef5fd 100644
--- a/network/zoom-linux/zoom-linux.SlackBuild
+++ b/network/zoom-linux/zoom-linux.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for zoom-linux
#
-# Copyright 2018-2023 Ebben Aries <slackbuilds@dscp.org>
+# Copyright 2018-2025 Ebben Aries <slackbuilds@dscp.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=zoom-linux
-VERSION=${VERSION:-6.4.1.587} # may be overridden by source!
+VERSION=${VERSION:-6.5.11.4015} # may be overridden by source!
SRCNAM=zoom
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/zoom-linux/zoom-linux.info b/network/zoom-linux/zoom-linux.info
index 682343adaf..8634b1f0d1 100644
--- a/network/zoom-linux/zoom-linux.info
+++ b/network/zoom-linux/zoom-linux.info
@@ -1,10 +1,10 @@
PRGNAM="zoom-linux"
-VERSION="6.4.1.587"
+VERSION="6.5.11.4015"
HOMEPAGE="https://www.zoom.us/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://cdn.zoom.us/prod/6.4.1.587/zoom_x86_64.pkg.tar.xz"
-MD5SUM_x86_64="634c05a3dbe2baaa4d3da1c0b267c821"
+DOWNLOAD_x86_64="https://cdn.zoom.us/prod/6.5.11.4015/zoom_x86_64.pkg.tar.xz"
+MD5SUM_x86_64="a17c07fef87a13ae797ffa86c03c4560"
REQUIRES=""
MAINTAINER="Ebben Aries"
EMAIL="slackbuilds@dscp.org"