summaryrefslogtreecommitdiffstats
path: root/network
diff options
context:
space:
mode:
Diffstat (limited to 'network')
-rw-r--r--network/AdGuardHome/AdGuardHome.SlackBuild4
-rw-r--r--network/AdGuardHome/AdGuardHome.info10
-rw-r--r--network/CherryMusic/CherryMusic.info10
-rw-r--r--network/CherryMusic/README16
-rw-r--r--network/CherryMusic/slack-desc19
-rw-r--r--network/ClusterSSH/ClusterSSH.info4
-rw-r--r--network/DarTui/DarTui.info10
-rw-r--r--network/DarTui/README2
-rw-r--r--network/EarthReader-Web/EarthReader-Web.info10
-rw-r--r--network/EarthReader-Web/README7
-rw-r--r--network/EarthReader-Web/slack-desc19
-rw-r--r--network/Electrum-DASH/Electrum-DASH.SlackBuild97
-rw-r--r--network/Electrum-DASH/Electrum-DASH.info10
-rw-r--r--network/Electrum-DASH/README4
-rw-r--r--network/Electrum/Electrum.SlackBuild12
-rw-r--r--network/Electrum/Electrum.info8
-rw-r--r--network/Electrum/README2
-rw-r--r--network/FireWorks/FireWorks.SlackBuild10
-rw-r--r--network/FireWorks/FireWorks.info8
-rw-r--r--network/Flootty/Flootty.info10
-rw-r--r--network/Flootty/README7
-rw-r--r--network/Free-Cinema/Free-Cinema.info10
-rw-r--r--network/Free-Cinema/README9
-rw-r--r--network/Free-Cinema/doinst.sh3
-rw-r--r--network/GlobalProtect-openconnect/GlobalProtect-openconnect.SlackBuild112
-rw-r--r--network/GlobalProtect-openconnect/GlobalProtect-openconnect.info10
-rw-r--r--network/GlobalProtect-openconnect/README13
-rw-r--r--network/GlobalProtect-openconnect/doinst.sh (renamed from network/sickrage/doinst.sh)7
-rw-r--r--network/GlobalProtect-openconnect/rc.gpservice36
-rw-r--r--network/GlobalProtect-openconnect/slack-desc19
-rw-r--r--network/MEGAcmd/MEGAcmd.SlackBuild11
-rw-r--r--network/MEGAcmd/MEGAcmd.info10
-rw-r--r--network/MEGAcmd/fix-ffmpeg-compile.patch29
-rw-r--r--network/PyRSS2Gen/PyRSS2Gen.SlackBuild65
-rw-r--r--network/PyRSS2Gen/PyRSS2Gen.info10
-rw-r--r--network/PyRSS2Gen/README6
-rw-r--r--network/Pyrit/Pyrit.info2
-rw-r--r--network/RYMTracks/README2
-rw-r--r--network/RYMTracks/RYMTracks.info10
-rw-r--r--network/TeamSpeak3/README2
-rw-r--r--network/TeamSpeak3/TeamSpeak3.SlackBuild2
-rw-r--r--network/TeamSpeak3/TeamSpeak3.info10
-rw-r--r--network/UDR/README11
-rw-r--r--network/UDR/UDR.SlackBuild9
-rw-r--r--network/UDR/UDR.info6
-rw-r--r--network/acme.sh/acme.sh.SlackBuild4
-rw-r--r--network/acme.sh/acme.sh.info6
-rw-r--r--network/addrwatch/README17
-rw-r--r--network/addrwatch/addrwatch.SlackBuild99
-rw-r--r--network/addrwatch/addrwatch.info10
-rw-r--r--network/addrwatch/slack-desc19
-rw-r--r--network/aircrack-ng/aircrack-ng.SlackBuild4
-rw-r--r--network/aircrack-ng/aircrack-ng.info6
-rw-r--r--network/aldryn-client/README2
-rw-r--r--network/amfora-bin/README21
-rw-r--r--network/amfora-bin/amfora-bin.SlackBuild79
-rw-r--r--network/amfora-bin/amfora-bin.info10
-rw-r--r--network/amfora-bin/amfora.desktop11
-rw-r--r--network/amfora-bin/amfora.pngbin0 -> 3738 bytes
-rw-r--r--network/amfora-bin/docs/CHANGELOG.md332
-rw-r--r--network/amfora-bin/docs/LICENSE674
-rw-r--r--network/amfora-bin/docs/NOTES.md15
-rw-r--r--network/amfora-bin/docs/README.md175
-rw-r--r--network/amfora-bin/docs/THANKS.md32
-rw-r--r--network/amfora-bin/doinst.sh (renamed from network/opera-legacy/doinst.sh)5
-rw-r--r--network/amfora-bin/slack-desc (renamed from network/tahoe-lafs/slack-desc)22
-rw-r--r--network/ani-cli/README9
-rw-r--r--network/ani-cli/ani-cli.SlackBuild75
-rw-r--r--network/ani-cli/ani-cli.info10
-rw-r--r--network/ani-cli/changelog13
-rw-r--r--network/ani-cli/slack-desc (renamed from network/Flootty/slack-desc)22
-rw-r--r--network/anydesk/anydesk.SlackBuild2
-rw-r--r--network/anydesk/anydesk.info6
-rw-r--r--network/argus/argus.SlackBuild5
-rw-r--r--network/argus/argus.info6
-rw-r--r--network/argus/rc.argus.patch19
-rw-r--r--network/aria2/aria2.SlackBuild2
-rw-r--r--network/aria2/aria2.info6
-rw-r--r--network/armcord/README4
-rw-r--r--network/armcord/armcord.SlackBuild87
-rw-r--r--network/armcord/armcord.desktop8
-rw-r--r--network/armcord/armcord.info10
-rw-r--r--network/armcord/armcord_icon.pngbin0 -> 6315 bytes
-rw-r--r--network/armcord/doinst.sh (renamed from network/midori/doinst.sh)0
-rw-r--r--network/armcord/slack-desc19
-rw-r--r--network/arno-iptables-firewall/arno-iptables-firewall.SlackBuild2
-rw-r--r--network/arno-iptables-firewall/arno-iptables-firewall.info2
-rw-r--r--network/asciinema/asciinema.SlackBuild21
-rw-r--r--network/asciinema/asciinema.info8
-rw-r--r--network/asciinema/setup.py (renamed from network/twine/setup.py)0
-rw-r--r--network/asuka/asuka.info188
-rw-r--r--network/atftp/atftp.SlackBuild5
-rw-r--r--network/atftp/atftp.info6
-rw-r--r--network/atheme/atheme.info2
-rw-r--r--network/authbind/authbind.SlackBuild6
-rw-r--r--network/awscli-v2/README11
-rw-r--r--network/awscli-v2/awscli-v2.SlackBuild (renamed from network/Flootty/Flootty.SlackBuild)24
-rw-r--r--network/awscli-v2/awscli-v2.info10
-rw-r--r--network/awscli-v2/slack-desc19
-rw-r--r--network/awscli/awscli.SlackBuild16
-rw-r--r--network/awscli/awscli.info8
-rw-r--r--network/awstats/awstats.SlackBuild2
-rw-r--r--network/awstats/awstats.info6
-rw-r--r--network/awstats/slack-desc2
-rw-r--r--network/axel/axel.SlackBuild3
-rw-r--r--network/badwolf/README17
-rw-r--r--network/badwolf/badwolf.SlackBuild (renamed from network/DarTui/DarTui.SlackBuild)34
-rw-r--r--network/badwolf/badwolf.info10
-rw-r--r--network/badwolf/doinst.sh10
-rw-r--r--network/badwolf/slack-desc19
-rw-r--r--network/baikal/baikal.SlackBuild10
-rw-r--r--network/baikal/baikal.info6
-rw-r--r--network/barrier/barrier-2.4.0-cert-creation.patch11
-rw-r--r--network/barrier/barrier-2.4.0-gcc-13.patch38
-rw-r--r--network/barrier/barrier-2.4.0-includes.patch39
-rw-r--r--network/barrier/barrier.SlackBuild20
-rw-r--r--network/barrier/barrier.info10
-rw-r--r--network/beegfs/README32
-rw-r--r--network/beegfs/beegfs.SlackBuild180
-rw-r--r--network/beegfs/beegfs.info10
-rw-r--r--network/beegfs/doinst.sh (renamed from network/w3m/doinst.sh)2
-rw-r--r--network/beegfs/slack-desc19
-rw-r--r--network/bitcoin/README2
-rw-r--r--network/bitcoin/bitcoin.SlackBuild24
-rw-r--r--network/bitcoin/bitcoin.info8
-rw-r--r--network/bottle/README4
-rw-r--r--network/bottle/bottle.SlackBuild9
-rw-r--r--network/bottle/bottle.info6
-rw-r--r--network/bozohttpd/bozohttpd.SlackBuild11
-rw-r--r--network/bozohttpd/bozohttpd.info8
-rw-r--r--network/bozohttpd/fix_warnings.diff45
-rw-r--r--network/bpfmon/bpfmon.SlackBuild5
-rw-r--r--network/bpfmon/bpfmon.info6
-rw-r--r--network/bpfmon/makefile.patch28
-rw-r--r--network/brave-browser/brave-browser.SlackBuild4
-rw-r--r--network/brave-browser/brave-browser.info6
-rw-r--r--network/broadcom-wl/README40
-rw-r--r--network/broadcom-wl/b43_blacklist.conf.new9
-rw-r--r--network/broadcom-wl/broadcom-wl.SlackBuild128
-rw-r--r--network/broadcom-wl/broadcom-wl.info14
-rw-r--r--network/broadcom-wl/doinst.sh.gzbin0 -> 363 bytes
-rw-r--r--network/broadcom-wl/patches/000-remove-time_date-macros.patch29
-rw-r--r--network/broadcom-wl/patches/001-null-pointer-fix.patch27
-rw-r--r--network/broadcom-wl/patches/002-rdtscl.patch22
-rw-r--r--network/broadcom-wl/patches/003-linux47.patch109
-rw-r--r--network/broadcom-wl/patches/004-linux48.patch64
-rw-r--r--network/broadcom-wl/patches/005-debian-fix-kernel-warnings.patch161
-rw-r--r--network/broadcom-wl/patches/006-linux411.patch27
-rw-r--r--network/broadcom-wl/patches/007-linux412.patch78
-rw-r--r--network/broadcom-wl/patches/008-linux415.patch46
-rw-r--r--network/broadcom-wl/patches/009-fix_mac_profile_discrepancy.patch14
-rw-r--r--network/broadcom-wl/patches/010-linux56.patch55
-rw-r--r--network/broadcom-wl/patches/011-linux59.patch211
-rw-r--r--network/broadcom-wl/patches/012-linux517.patch80
-rw-r--r--network/broadcom-wl/patches/013-linux518.patch71
-rw-r--r--network/broadcom-wl/patches/014-linux414.patch37
-rw-r--r--network/broadcom-wl/patches/015-linux600.patch31
-rw-r--r--network/broadcom-wl/patches/016-linux601.patch90
-rw-r--r--network/broadcom-wl/slack-desc19
-rw-r--r--network/cacti/cacti.info2
-rw-r--r--network/castor/castor.info216
-rw-r--r--network/castor/doinst.sh7
-rw-r--r--network/catgirl/README4
-rw-r--r--network/catgirl/catgirl.SlackBuild106
-rw-r--r--network/catgirl/catgirl.info10
-rw-r--r--network/catgirl/slack-desc19
-rw-r--r--network/cherokee/cherokee.SlackBuild8
-rw-r--r--network/cherokee/cherokee.info6
-rw-r--r--network/choqok/README12
-rw-r--r--network/choqok/choqok.SlackBuild (renamed from network/yoda/yoda.SlackBuild)35
-rw-r--r--network/choqok/choqok.info10
-rw-r--r--network/choqok/doinst.sh9
-rw-r--r--network/choqok/slack-desc19
-rw-r--r--network/cinny-desktop/README11
-rw-r--r--network/cinny-desktop/cinny-desktop.SlackBuild96
-rw-r--r--network/cinny-desktop/cinny-desktop.info10
-rw-r--r--network/cinny-desktop/doinst.sh8
-rw-r--r--network/cinny-desktop/slack-desc (renamed from network/Electrum-DASH/slack-desc)22
-rw-r--r--network/clamav-unofficial-sigs/clamav-unofficial-sigs.info2
-rw-r--r--network/claws-mail/claws-mail.SlackBuild2
-rw-r--r--network/claws-mail/claws-mail.info6
-rw-r--r--network/clipgrab/README3
-rw-r--r--network/clipgrab/clipgrab.SlackBuild4
-rw-r--r--network/clipgrab/clipgrab.info6
-rw-r--r--network/cmst/README9
-rw-r--r--network/cmst/cmst.SlackBuild (renamed from network/deis/deis.SlackBuild)28
-rw-r--r--network/cmst/cmst.info10
-rw-r--r--network/cmst/doinst.sh9
-rw-r--r--network/cmst/slack-desc (renamed from network/deis/slack-desc)22
-rw-r--r--network/connman/README27
-rw-r--r--network/connman/connman.SlackBuild (renamed from network/CherryMusic/CherryMusic.SlackBuild)49
-rw-r--r--network/connman/connman.info10
-rw-r--r--network/connman/rc.connmand33
-rw-r--r--network/connman/slack-desc19
-rw-r--r--network/coturn/coturn.SlackBuild35
-rw-r--r--network/coturn/coturn.info6
-rw-r--r--network/courier-imap/courier-imap.info2
-rw-r--r--network/courier-unicode/README2
-rw-r--r--network/courier-unicode/courier-unicode.SlackBuild8
-rw-r--r--network/courier-unicode/courier-unicode.info6
-rw-r--r--network/cryptcat-unix/cryptcat-unix.SlackBuild2
-rw-r--r--network/csync/csync.info2
-rw-r--r--network/curl-quic/README13
-rw-r--r--network/curl-quic/curl-quic.SlackBuild146
-rw-r--r--network/curl-quic/curl-quic.info10
-rw-r--r--network/curl-quic/slack-desc19
-rw-r--r--network/cyrus-imapd/cyrus-imapd.SlackBuild6
-rw-r--r--network/cyrus-imapd/cyrus-imapd.info6
-rw-r--r--network/dante/dante.SlackBuild8
-rw-r--r--network/darkhttpd/darkhttpd.SlackBuild2
-rw-r--r--network/darkhttpd/darkhttpd.info6
-rw-r--r--network/ddclient/ddclient.SlackBuild47
-rw-r--r--network/ddclient/ddclient.info8
-rw-r--r--network/deis/README3
-rw-r--r--network/deis/deis.info10
-rw-r--r--network/deis/doinst.sh3
-rw-r--r--network/deltachat/README7
-rw-r--r--network/deltachat/deltachat.SlackBuild97
-rw-r--r--network/deltachat/deltachat.desktop10
-rw-r--r--network/deltachat/deltachat.info10
-rw-r--r--network/deltachat/doinst.sh (renamed from network/CherryMusic/doinst.sh)0
-rw-r--r--network/deltachat/slack-desc19
-rw-r--r--network/dino/README11
-rw-r--r--network/dino/dino.SlackBuild125
-rw-r--r--network/dino/dino.info10
-rw-r--r--network/dino/doinst.sh (renamed from network/opera-developer/doinst.sh)5
-rw-r--r--network/dino/slack-desc19
-rw-r--r--network/discord/README6
-rw-r--r--network/discord/discord.SlackBuild12
-rw-r--r--network/discord/discord.info6
-rw-r--r--network/dkimproxy/dkimproxy.SlackBuild6
-rw-r--r--network/dkimproxy/dkimproxy.info6
-rw-r--r--network/dnscrypt-proxy/README21
-rw-r--r--network/dnscrypt-proxy/README.Slackware74
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild92
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.default30
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.info18
-rw-r--r--network/dnscrypt-proxy/dnscrypt-proxy.toml353
-rw-r--r--network/dnscrypt-proxy/dnsmasq.conf21
-rw-r--r--network/dnscrypt-proxy/doinst.sh41
-rw-r--r--network/dnscrypt-proxy/named.conf153
-rw-r--r--network/dnscrypt-proxy/rc.dnscrypt-proxy182
-rw-r--r--network/dnscrypt-proxy/slack-desc2
-rw-r--r--network/dnsproxy-bin/README21
-rw-r--r--network/dnsproxy-bin/dnsproxy-bin.SlackBuild89
-rw-r--r--network/dnsproxy-bin/dnsproxy-bin.info14
-rw-r--r--network/dnsproxy-bin/doinst.sh23
-rw-r--r--network/dnsproxy-bin/rc.dnsproxy62
-rw-r--r--network/dnsproxy-bin/slack-desc19
-rw-r--r--network/dog/README5
-rw-r--r--network/dog/config.toml9
-rw-r--r--network/dog/dog.1268
-rw-r--r--network/dog/dog.SlackBuild104
-rw-r--r--network/dog/dog.info12
-rw-r--r--network/dog/slack-desc19
-rw-r--r--network/dokuwiki/dokuwiki.SlackBuild17
-rw-r--r--network/dokuwiki/dokuwiki.info10
-rw-r--r--network/dothost/README2
-rw-r--r--network/dothost/dothost.SlackBuild48
-rw-r--r--network/dothost/dothost.info4
-rw-r--r--network/dothost/slack-desc2
-rw-r--r--network/dropbear/dropbear.SlackBuild3
-rw-r--r--network/dropbear/dropbear.info6
-rw-r--r--network/dropbox/dropbox.SlackBuild7
-rw-r--r--network/dropbox/dropbox.info10
-rw-r--r--network/dublin-traceroute/dublin-traceroute.SlackBuild22
-rw-r--r--network/easyrsa/easyrsa.SlackBuild2
-rw-r--r--network/easyrsa/easyrsa.info6
-rw-r--r--network/eiskaltdcpp/doinst.sh7
-rw-r--r--network/ejabberd-bin/README13
-rw-r--r--network/ejabberd-bin/README.SBo16
-rw-r--r--network/ejabberd-bin/doinst.sh25
-rw-r--r--network/ejabberd-bin/ejabberd-bin.SlackBuild124
-rw-r--r--network/ejabberd-bin/ejabberd-bin.info16
-rw-r--r--network/ejabberd-bin/rc.ejabberd45
-rw-r--r--network/ejabberd-bin/slack-desc (renamed from network/livestreamer/slack-desc)22
-rw-r--r--network/ejabberd/README3
-rw-r--r--network/ejabberd/ejabberd.SlackBuild29
-rw-r--r--network/ejabberd/ejabberd.info82
-rw-r--r--network/ejabberd/rc.ejabberd41
-rw-r--r--network/element-desktop/element-desktop.SlackBuild4
-rw-r--r--network/element-desktop/element-desktop.info8
-rw-r--r--network/element-desktop/slack-desc10
-rw-r--r--network/elinks/elinks.info2
-rw-r--r--network/emailrelay/doinst.sh1
-rw-r--r--network/emailrelay/emailrelay.SlackBuild10
-rw-r--r--network/emailrelay/emailrelay.info8
-rw-r--r--network/emailrelay/slack-desc2
-rw-r--r--network/enet/enet.SlackBuild2
-rw-r--r--network/enet/enet.info2
-rw-r--r--network/epiphany/README13
-rw-r--r--network/epiphany/doinst.sh5
-rw-r--r--network/epiphany/epiphany.SlackBuild21
-rw-r--r--network/epiphany/epiphany.info12
-rw-r--r--network/epiphany/slack-desc16
-rw-r--r--network/etherpoke/etherpoke.SlackBuild13
-rw-r--r--network/etherpoke/etherpoke.info6
-rw-r--r--network/etherpoke/slack-desc2
-rw-r--r--network/ettercap/curl-8.patch34
-rw-r--r--network/ettercap/ettercap.SlackBuild2
-rw-r--r--network/exim/exim.Makefile51
-rw-r--r--network/exim/exim.SlackBuild18
-rw-r--r--network/exim/exim.info8
-rw-r--r--network/fail2ban/README.SBo10
-rw-r--r--network/fail2ban/config/paths-slackware.conf4
-rw-r--r--network/fail2ban/doinst.sh11
-rw-r--r--network/fail2ban/fail2ban.SlackBuild32
-rw-r--r--network/fail2ban/fail2ban.info10
-rw-r--r--network/fail2ban/patches/jail.conf.patch11
-rw-r--r--network/fcgiwrap/fcgiwrap.info2
-rw-r--r--network/fdns/fdns.SlackBuild1
-rw-r--r--network/feather/README27
-rw-r--r--network/feather/doinst.sh10
-rw-r--r--network/feather/feather.SlackBuild117
-rw-r--r--network/feather/feather.info10
-rw-r--r--network/feather/slack-desc19
-rw-r--r--network/felinks/felinks.info2
-rw-r--r--network/filezilla/filezilla.SlackBuild9
-rw-r--r--network/filezilla/filezilla.info8
-rw-r--r--network/firewalld/firewalld.SlackBuild15
-rw-r--r--network/firewalld/firewalld.info8
-rw-r--r--network/firewalld/init.patch2
-rw-r--r--network/firewalld/rc.FireWallD56
-rw-r--r--network/flexget/flexget.SlackBuild37
-rw-r--r--network/flexget/flexget.info8
-rw-r--r--network/floorp-bin/README8
-rw-r--r--network/floorp-bin/doinst.sh9
-rw-r--r--network/floorp-bin/floorp-bin.SlackBuild111
-rw-r--r--network/floorp-bin/floorp-bin.info10
-rw-r--r--network/floorp-bin/floorp.desktop273
-rw-r--r--network/floorp-bin/slack-desc19
-rw-r--r--network/franz/franz.SlackBuild2
-rw-r--r--network/franz/franz.info6
-rw-r--r--network/frr/frr.SlackBuild15
-rw-r--r--network/frr/frr.info8
-rw-r--r--network/ftp-cloudfs/ftp-cloudfs.info2
-rw-r--r--network/gajim/README12
-rw-r--r--network/gajim/gajim.SlackBuild31
-rw-r--r--network/gajim/gajim.info12
-rw-r--r--network/gallery-dl/README9
-rw-r--r--network/gallery-dl/gallery-dl.SlackBuild (renamed from network/sendxmpp/sendxmpp.SlackBuild)32
-rw-r--r--network/gallery-dl/gallery-dl.info10
-rw-r--r--network/gallery-dl/slack-desc19
-rw-r--r--network/ganglia-web/README9
-rw-r--r--network/ganglia-web/doinst.sh14
-rw-r--r--network/ganglia-web/ganglia-web.SlackBuild83
-rw-r--r--network/ganglia-web/ganglia-web.info10
-rw-r--r--network/ganglia-web/slack-desc (renamed from network/Free-Cinema/slack-desc)22
-rw-r--r--network/ganglia/README19
-rw-r--r--network/ganglia/doinst.sh34
-rw-r--r--network/ganglia/ganglia.SlackBuild (renamed from network/suricata/suricata.SlackBuild)85
-rw-r--r--network/ganglia/ganglia.info10
-rw-r--r--network/ganglia/slack-desc19
-rw-r--r--network/gemget-bin/README12
-rw-r--r--network/gemget-bin/docs/LICENSE21
-rw-r--r--network/gemget-bin/docs/README.md91
-rw-r--r--network/gemget-bin/gemget-bin.SlackBuild71
-rw-r--r--network/gemget-bin/gemget-bin.info10
-rw-r--r--network/gemget-bin/slack-desc19
-rw-r--r--network/geomyidae/README10
-rw-r--r--network/geomyidae/geomyidae.SlackBuild53
-rw-r--r--network/geomyidae/geomyidae.info8
-rw-r--r--network/geomyidae/slack-desc2
-rw-r--r--network/glewlwyd/glewlwyd.SlackBuild7
-rw-r--r--network/glewlwyd/glewlwyd.info6
-rw-r--r--network/gmi100/README6
-rw-r--r--network/gmi100/gmi100.183
-rw-r--r--network/gmi100/gmi100.SlackBuild101
-rw-r--r--network/gmi100/gmi100.info10
-rw-r--r--network/gmi100/slack-desc (renamed from network/DarTui/slack-desc)22
-rw-r--r--network/gmvault/README1
-rw-r--r--network/gmvault/gmvault.info10
-rw-r--r--network/gnome-bluetooth/gnome-bluetooth.SlackBuild6
-rw-r--r--network/gnome-bluetooth/patches/01-meson.patch17
-rw-r--r--network/gnome-remote-desktop/README11
-rw-r--r--network/gnome-remote-desktop/doinst.sh6
-rw-r--r--network/gnome-remote-desktop/gnome-remote-desktop.SlackBuild (renamed from network/EarthReader-Web/EarthReader-Web.SlackBuild)38
-rw-r--r--network/gnome-remote-desktop/gnome-remote-desktop.info10
-rw-r--r--network/gnome-remote-desktop/slack-desc19
-rw-r--r--network/gnome-shell-extension-gsconnect/README8
-rw-r--r--network/gnome-shell-extension-gsconnect/doinst.sh14
-rw-r--r--network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.SlackBuild112
-rw-r--r--network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.info10
-rw-r--r--network/gnome-shell-extension-gsconnect/nautilus-gsconnect.metainfo.xml11
-rw-r--r--network/gnome-shell-extension-gsconnect/nemo-gsconnect.metainfo.xml11
-rw-r--r--network/gnome-shell-extension-gsconnect/slack-desc19
-rw-r--r--network/gnome-user-share/README22
-rw-r--r--network/gnome-user-share/doinst.sh10
-rw-r--r--network/gnome-user-share/gnome-user-share.SlackBuild114
-rw-r--r--network/gnome-user-share/gnome-user-share.info10
-rw-r--r--network/gnome-user-share/slack-desc19
-rw-r--r--network/go-sendxmpp/go-sendxmpp.SlackBuild11
-rw-r--r--network/go-sendxmpp/go-sendxmpp.info60
-rw-r--r--network/go-sendxmpp/modules.txt61
-rw-r--r--network/gofiche/gofiche.info2
-rw-r--r--network/goimapnotify/go.mod15
-rw-r--r--network/goimapnotify/go.sum39
-rw-r--r--network/goimapnotify/goimapnotify.SlackBuild16
-rw-r--r--network/goimapnotify/goimapnotify.info34
-rw-r--r--network/goimapnotify/modules.txt29
-rw-r--r--network/graphite-carbon/README9
-rw-r--r--network/graphite-carbon/README.SLACKWARE15
-rw-r--r--network/graphite-carbon/graphite-carbon.SlackBuild144
-rw-r--r--network/graphite-carbon/graphite-carbon.info10
-rw-r--r--network/graphite-carbon/graphite-carbon.logrotate13
-rw-r--r--network/graphite-carbon/man1/carbon-aggregator.156
-rw-r--r--network/graphite-carbon/man1/carbon-cache.150
-rw-r--r--network/graphite-carbon/man1/carbon-client.143
-rw-r--r--network/graphite-carbon/man1/carbon-relay.151
-rw-r--r--network/graphite-carbon/man1/validate-storage-schemas.117
-rw-r--r--network/graphite-carbon/patches/carbon.conf.example.diff41
-rw-r--r--network/graphite-carbon/patches/setup.cfg.diff12
-rw-r--r--network/graphite-carbon/patches/validate-storage-schemas.py.diff11
-rw-r--r--network/graphite-carbon/rc.carbon-cache57
-rw-r--r--network/graphite-carbon/slack-desc19
-rw-r--r--network/grpcurl/README10
-rw-r--r--network/grpcurl/grpcurl.SlackBuild (renamed from network/gmvault/gmvault.SlackBuild)29
-rw-r--r--network/grpcurl/grpcurl.info10
-rw-r--r--network/grpcurl/slack-desc (renamed from network/gmvault/slack-desc)22
-rw-r--r--network/gtorrentviewer/README6
-rw-r--r--network/gtorrentviewer/doinst.sh6
-rw-r--r--network/gtorrentviewer/gtorrentviewer.SlackBuild69
-rw-r--r--network/gtorrentviewer/gtorrentviewer.desktop12
-rw-r--r--network/gtorrentviewer/gtorrentviewer.info4
-rw-r--r--network/gtorrentviewer/patches/GTorrentViewer-0.2b-format.patch48
-rw-r--r--network/gtorrentviewer/patches/GTorrentViewer-0.2b-missing-tracker.patch12
-rw-r--r--network/gtorrentviewer/patches/fix_linking_libm.diff12
-rw-r--r--network/gtorrentviewer/patches/gtorrentviewer-0.2b-desktop.patch17
-rw-r--r--network/gtorrentviewer/patches/gtorrentviewer-0.2b-trackerdetails.patch56
-rw-r--r--network/gtorrentviewer/patches/manpage.diff23
-rw-r--r--network/gtorrentviewer/patches/series5
-rw-r--r--network/gui-ufw/gufw-open.diff10
-rw-r--r--network/gui-ufw/gufw.wrapper18
-rw-r--r--network/gui-ufw/gui-ufw.SlackBuild96
-rw-r--r--network/gui-ufw/gui-ufw.info14
-rw-r--r--network/gui-ufw/path-fix.diff16
-rw-r--r--network/hakuneko/README14
-rw-r--r--network/hakuneko/doinst.sh14
-rw-r--r--network/hakuneko/hakuneko.SlackBuild132
-rw-r--r--network/hakuneko/hakuneko.desktop9
-rw-r--r--network/hakuneko/hakuneko.info10
-rw-r--r--network/hakuneko/slack-desc19
-rw-r--r--network/haproxy/haproxy.SlackBuild9
-rw-r--r--network/haproxy/haproxy.info6
-rw-r--r--network/havp/havp.SlackBuild2
-rw-r--r--network/havp/patches/patch-havp_scanners_clamlibscanner_cpp64
-rw-r--r--network/heimdal/heimdal.SlackBuild13
-rw-r--r--network/heimdal/heimdal.info6
-rw-r--r--network/hiawatha/README2
-rw-r--r--network/hiawatha/hiawatha.SlackBuild8
-rw-r--r--network/hiawatha/hiawatha.info8
-rw-r--r--network/hiawatha/slack-desc2
-rw-r--r--network/host-sflow/README7
-rw-r--r--network/host-sflow/doinst.sh2
-rw-r--r--network/host-sflow/host-sflow.SlackBuild16
-rw-r--r--network/hostapd/doinst.sh12
-rw-r--r--network/httpie/doinst.sh3
-rw-r--r--network/httpie/httpie.SlackBuild67
-rw-r--r--network/httpie/httpie.info12
-rw-r--r--network/hydra/hydra.SlackBuild9
-rw-r--r--network/hydra/hydra.info6
-rw-r--r--network/i2pd/i2pd.SlackBuild4
-rw-r--r--network/i2pd/i2pd.info10
-rw-r--r--network/icbm/README15
-rw-r--r--network/icbm/doinst.sh (renamed from network/suricata/doinst.sh)5
-rw-r--r--network/icbm/icbm.SlackBuild78
-rw-r--r--network/icbm/icbm.info10
-rw-r--r--network/icbm/slack-desc19
-rw-r--r--network/ifplugd/README22
-rw-r--r--network/ifplugd/doinst.sh24
-rw-r--r--network/ifplugd/ifplugd-0.28-interface.patch13
-rw-r--r--network/ifplugd/ifplugd-action-slackware.patch18
-rw-r--r--network/ifplugd/ifplugd-fix-return-value.patch12
-rw-r--r--network/ifplugd/ifplugd.SlackBuild126
-rw-r--r--network/ifplugd/ifplugd.info10
-rw-r--r--network/ifplugd/slack-desc19
-rw-r--r--network/imapfilter/imapfilter.SlackBuild4
-rw-r--r--network/imapfilter/imapfilter.info6
-rw-r--r--network/ip2location-c/ip2location-c.SlackBuild7
-rw-r--r--network/ip2location-c/ip2location-c.info6
-rw-r--r--network/iperf3/iperf3.SlackBuild8
-rw-r--r--network/iperf3/iperf3.info6
-rw-r--r--network/ipv6calc/README3
-rw-r--r--network/ipv6calc/ipv6calc.SlackBuild11
-rw-r--r--network/ipv6calc/ipv6calc.info6
-rw-r--r--network/ipxnet/ipxnet.SlackBuild4
-rw-r--r--network/irc.c/irc.c.SlackBuild3
-rw-r--r--network/ircd-hybrid/ircd-hybrid.SlackBuild2
-rw-r--r--network/ircd-hybrid/ircd-hybrid.info6
-rw-r--r--network/irssi-icb/README9
-rw-r--r--network/irssi-icb/git2tarxz.sh48
-rw-r--r--network/irssi-icb/irssi-icb.SlackBuild99
-rw-r--r--network/irssi-icb/irssi-icb.info12
-rw-r--r--network/irssi-icb/slack-desc19
-rw-r--r--network/irssi-python/README16
-rw-r--r--network/irssi-python/abi18.diff59
-rw-r--r--network/irssi-python/irssi-python.SlackBuild51
-rw-r--r--network/irssi-python/irssi-python.info10
-rw-r--r--network/irssi-python/slack-desc2
-rw-r--r--network/irssi_otr/irssi_otr.SlackBuild4
-rw-r--r--network/irssi_otr/irssi_otr.info6
-rw-r--r--network/jitsi-meet-desktop/README10
-rw-r--r--network/jitsi-meet-desktop/doinst.sh9
-rw-r--r--network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild105
-rw-r--r--network/jitsi-meet-desktop/jitsi-meet-desktop.desktop9
-rw-r--r--network/jitsi-meet-desktop/jitsi-meet-desktop.info10
-rw-r--r--network/jitsi-meet-desktop/slack-desc (renamed from network/prosody-mod-smacks/slack-desc)22
-rw-r--r--network/js185/js185.info2
-rw-r--r--network/kdrive/README6
-rw-r--r--network/kdrive/doinst.sh9
-rw-r--r--network/kdrive/kDrive.desktop10
-rw-r--r--network/kdrive/kDrive.pngbin0 -> 13478 bytes
-rw-r--r--network/kdrive/kdrive.SlackBuild84
-rw-r--r--network/kdrive/kdrive.info10
-rw-r--r--network/kdrive/slack-desc19
-rw-r--r--network/kea/doinst.sh5
-rw-r--r--network/kea/kea.SlackBuild29
-rw-r--r--network/kea/kea.info6
-rw-r--r--network/kea/rc.kea2
-rw-r--r--network/keepalived/keepalived.SlackBuild2
-rw-r--r--network/keepalived/keepalived.info6
-rw-r--r--network/kirc/kirc.SlackBuild20
-rw-r--r--network/kirc/kirc.info6
-rw-r--r--network/kismet/kismet.SlackBuild6
-rw-r--r--network/kismet/kismet.info8
-rw-r--r--network/kivy-garden/kivy-garden.SlackBuild2
-rw-r--r--network/kivy-garden/kivy-garden.info2
-rw-r--r--network/kstart/kstart.SlackBuild6
-rw-r--r--network/kstart/kstart.info6
-rw-r--r--network/lagrange/README4
-rw-r--r--network/lagrange/doinst.sh9
-rw-r--r--network/lagrange/lagrange.SlackBuild130
-rw-r--r--network/lagrange/lagrange.info10
-rw-r--r--network/lagrange/slack-desc19
-rw-r--r--network/ldapvi/ldapvi.SlackBuild13
-rw-r--r--network/librespeed-cli/README17
-rw-r--r--network/librespeed-cli/librespeed-cli.SlackBuild (renamed from network/prosody-mod-csi/prosody-mod-csi.SlackBuild)58
-rw-r--r--network/librespeed-cli/librespeed-cli.info10
-rw-r--r--network/librespeed-cli/slack-desc19
-rw-r--r--network/libressl/README75
-rw-r--r--network/libressl/libressl.SlackBuild108
-rw-r--r--network/libressl/libressl.info12
-rw-r--r--network/libressl/slack-desc (renamed from network/sendxmpp/slack-desc)22
-rw-r--r--network/librewolf/README12
-rw-r--r--network/librewolf/doinst.sh (renamed from network/DarTui/doinst.sh)0
-rw-r--r--network/librewolf/librewolf.SlackBuild78
-rw-r--r--network/librewolf/librewolf.info10
-rw-r--r--network/librewolf/slack-desc19
-rw-r--r--network/libteam/libteam.SlackBuild7
-rw-r--r--network/libteam/libteam.info6
-rw-r--r--network/libtls/README12
-rw-r--r--network/libtls/libtls.SlackBuild110
-rw-r--r--network/libtls/libtls.info10
-rw-r--r--network/libtls/slack-desc19
-rw-r--r--network/libvarlink/README12
-rw-r--r--network/libvarlink/libvarlink.SlackBuild116
-rw-r--r--network/libvarlink/libvarlink.info10
-rw-r--r--network/libvarlink/slack-desc19
-rw-r--r--network/light-firefox/README4
-rw-r--r--network/light-firefox/doinst.sh3
-rw-r--r--network/light-firefox/light-firefox.SlackBuild124
-rw-r--r--network/light-firefox/light-firefox.info10
-rw-r--r--network/lighttpd/conf/lighttpd.conf11
-rw-r--r--network/lighttpd/conf/rc.lighttpd2
-rw-r--r--network/lighttpd/lighttpd.SlackBuild6
-rw-r--r--network/lighttpd/lighttpd.info6
-rw-r--r--network/limnoria/limnoria.SlackBuild2
-rw-r--r--network/limnoria/limnoria.info8
-rw-r--r--network/linksys-tftp/README2
-rw-r--r--network/linksys-tftp/linksys-tftp-1.2.1-stdc-main.patch292
-rw-r--r--network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftp.patch157
-rw-r--r--network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftpsubs.patch111
-rw-r--r--network/linksys-tftp/linksys-tftp.SlackBuild19
-rw-r--r--network/linksys-tftp/linksys-tftp.info2
-rw-r--r--network/livestreamer-curses/README3
-rw-r--r--network/livestreamer-curses/doinst.sh3
-rw-r--r--network/livestreamer-curses/livestreamer-curses.info10
-rw-r--r--network/livestreamer-curses/slack-desc19
-rw-r--r--network/livestreamer/README18
-rw-r--r--network/livestreamer/doinst.sh3
-rw-r--r--network/livestreamer/livestreamer.SlackBuild96
-rw-r--r--network/livestreamer/livestreamer.info10
-rw-r--r--network/lldpd/lldpd.SlackBuild14
-rw-r--r--network/lldpd/lldpd.info6
-rw-r--r--network/llhttp/README1
-rw-r--r--network/llhttp/llhttp.SlackBuild105
-rw-r--r--network/llhttp/llhttp.info10
-rw-r--r--network/llhttp/slack-desc (renamed from network/midori/slack-desc)22
-rw-r--r--network/lorawan-stack-cli/README5
-rw-r--r--network/lorawan-stack-cli/lorawan-stack-cli.SlackBuild96
-rw-r--r--network/lorawan-stack-cli/lorawan-stack-cli.info10
-rw-r--r--network/lorawan-stack-cli/slack-desc19
-rw-r--r--network/luakit/gtk.patch15
-rw-r--r--network/luakit/luakit.SlackBuild14
-rw-r--r--network/luakit/luakit.info8
-rw-r--r--network/lurch/lurch.SlackBuild12
-rw-r--r--network/maildrop/maildrop.SlackBuild8
-rw-r--r--network/maildrop/maildrop.info6
-rw-r--r--network/mailman/mailman.SlackBuild14
-rw-r--r--network/mailman/mailman.info8
-rw-r--r--network/mailman/rc.mailman2
-rw-r--r--network/mailspring/doinst.sh7
-rw-r--r--network/mailspring/mailspring.SlackBuild11
-rw-r--r--network/mailspring/mailspring.info6
-rw-r--r--network/malheur/malheur.info2
-rw-r--r--network/masscan/masscan.SlackBuild8
-rw-r--r--network/masscan/masscan.info6
-rw-r--r--network/memcached/memcached.SlackBuild2
-rw-r--r--network/memcached/memcached.info6
-rw-r--r--network/microsoft-edge/README10
-rw-r--r--network/microsoft-edge/icons/hicolor/128x128/apps/microsoft-edge.pngbin12461 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/16x16/apps/microsoft-edge.pngbin1269 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/22x22/apps/microsoft-edge.pngbin1320 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/24x24/apps/microsoft-edge.pngbin1210 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/256x256/apps/microsoft-edge.pngbin24850 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/32x32/apps/microsoft-edge.pngbin2130 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/48x48/apps/microsoft-edge.pngbin3608 -> 0 bytes
-rw-r--r--network/microsoft-edge/icons/hicolor/64x64/apps/microsoft-edge.pngbin5058 -> 0 bytes
-rw-r--r--network/microsoft-edge/microsoft-edge.SlackBuild52
-rw-r--r--network/microsoft-edge/microsoft-edge.info10
-rw-r--r--network/microsoft-edge/slack-desc10
-rw-r--r--network/microsoft-edge/updater.diff82
-rw-r--r--network/midori/0115b02f43d23612366d0c5063e6b314d04e3853.patch29
-rw-r--r--network/midori/README12
-rw-r--r--network/midori/midori.info10
-rw-r--r--network/milter-greylist/milter-greylist.info2
-rw-r--r--network/mitmproxy-bin/mitmproxy-bin.SlackBuild7
-rw-r--r--network/mitmproxy-bin/mitmproxy-bin.info10
-rw-r--r--network/mitmproxy-bin/mitmproxy.16
-rw-r--r--network/mitmproxy-bin/mitmproxy.rst2
-rw-r--r--network/mod_auth_gssapi/README3
-rw-r--r--network/mod_auth_gssapi/mod_auth_gssapi.SlackBuild14
-rw-r--r--network/mod_auth_gssapi/mod_auth_gssapi.info6
-rw-r--r--network/mod_evasive/mod_evasive.info2
-rw-r--r--network/mod_wsgi-metrics/mod_wsgi-metrics.info2
-rw-r--r--network/mod_wsgi/mod_wsgi.info2
-rw-r--r--network/modsecurity-apache/modsecurity-apache.SlackBuild4
-rw-r--r--network/modsecurity-apache/modsecurity-apache.info10
-rw-r--r--network/mosaic-ck/doinst.sh6
-rw-r--r--network/mosaic-ck/mosaic-ck.SlackBuild3
-rw-r--r--network/mosh/1282.patch43
-rw-r--r--network/mosh/mosh.SlackBuild15
-rw-r--r--network/mosh/mosh.info8
-rw-r--r--network/mpop/README2
-rw-r--r--network/mpop/mpop.SlackBuild20
-rw-r--r--network/mpop/mpop.info14
-rw-r--r--network/mpop/slack-desc2
-rw-r--r--network/msmtp/doinst.sh7
-rw-r--r--network/msmtp/msmtp.SlackBuild21
-rw-r--r--network/msmtp/msmtp.info2
-rw-r--r--network/mstflint/README15
-rw-r--r--network/mstflint/mstflint.SlackBuild125
-rw-r--r--network/mstflint/mstflint.info10
-rw-r--r--network/mstflint/slack-desc (renamed from network/suricata/slack-desc)22
-rw-r--r--network/mullvadvpn-app/README8
-rw-r--r--network/mullvadvpn-app/doinst.sh9
-rw-r--r--network/mullvadvpn-app/mullvadvpn-app.SlackBuild113
-rw-r--r--network/mullvadvpn-app/mullvadvpn-app.info12
-rw-r--r--network/mullvadvpn-app/rc.mullvad34
-rw-r--r--network/mullvadvpn-app/slack-desc19
-rw-r--r--network/mumble-server/README16
-rw-r--r--network/mumble-server/mumble-server.SlackBuild17
-rw-r--r--network/mumble-server/mumble-server.info6
-rw-r--r--network/mumble/README3
-rw-r--r--network/mumble/mumble.SlackBuild14
-rw-r--r--network/mumble/mumble.info6
-rw-r--r--network/mumble/positional-audio-plugin-gtav-32-bit-fix.patch30
-rw-r--r--network/munge/munge.SlackBuild4
-rw-r--r--network/munge/munge.info6
-rw-r--r--network/nbwmon/nbwmon.SlackBuild2
-rw-r--r--network/nbwmon/nbwmon.info4
-rw-r--r--network/ncp/ncp.SlackBuild13
-rw-r--r--network/neomutt/README3
-rw-r--r--network/neomutt/neomutt.SlackBuild10
-rw-r--r--network/neomutt/neomutt.info6
-rw-r--r--network/nessus/README7
-rw-r--r--network/nessus/doinst.sh43
-rw-r--r--network/nessus/nessus.SlackBuild89
-rw-r--r--network/nessus/nessus.info10
-rw-r--r--network/nessus/rc.nessusd112
-rw-r--r--network/nessus/slack-desc19
-rw-r--r--network/netcat-openbsd/netcat-openbsd.SlackBuild4
-rw-r--r--network/netcat-openbsd/netcat-openbsd.info6
-rw-r--r--network/nethogs/nethogs.SlackBuild7
-rw-r--r--network/nethogs/nethogs.info6
-rw-r--r--network/netperf/netperf.SlackBuild2
-rw-r--r--network/newsboat/newsboat.SlackBuild43
-rw-r--r--network/newsboat/newsboat.info378
-rw-r--r--network/nextcloud-desktop/nextcloud-desktop.SlackBuild11
-rw-r--r--network/nextcloud-desktop/nextcloud-desktop.info6
-rw-r--r--network/nginx/nginx.SlackBuild2
-rw-r--r--network/nginx/nginx.info6
-rw-r--r--network/ngrep/README5
-rw-r--r--network/ngrep/ngrep-1.45-reasm.diff939
-rw-r--r--network/ngrep/ngrep.SlackBuild49
-rw-r--r--network/ngrep/ngrep.info12
-rw-r--r--network/ngrep/slack-desc2
-rw-r--r--network/ngrok/ngrok.SlackBuild4
-rw-r--r--network/ngrok/ngrok.info10
-rw-r--r--network/nheko/README26
-rw-r--r--network/nheko/doinst.sh9
-rw-r--r--network/nheko/douninst.sh9
-rw-r--r--network/nheko/nheko.SlackBuild145
-rw-r--r--network/nheko/nheko.info16
-rw-r--r--network/nheko/slack-desc19
-rw-r--r--network/nicotine+/nicotine+.SlackBuild3
-rw-r--r--network/nicotine+/nicotine+.info6
-rw-r--r--network/nmh/nmh.SlackBuild2
-rw-r--r--network/nmh/nmh.info6
-rw-r--r--network/nordvpn/nordvpn.SlackBuild3
-rw-r--r--network/nordvpn/nordvpn.info10
-rw-r--r--network/nss-tls/README23
-rw-r--r--network/nss-tls/README_SBo.txt64
-rw-r--r--network/nss-tls/doinst.sh12
-rw-r--r--network/nss-tls/nss-tls.SlackBuild120
-rw-r--r--network/nss-tls/nss-tls.conf27
-rw-r--r--network/nss-tls/nss-tls.info10
-rw-r--r--network/nss-tls/nss-tlsd-user.sh20
-rw-r--r--network/nss-tls/nss-tlsd.default8
-rw-r--r--network/nss-tls/per_user_dir.diff23
-rw-r--r--network/nss-tls/rc.nss-tlsd55
-rw-r--r--network/nss-tls/slack-desc19
-rw-r--r--network/nweb/nweb.info2
-rw-r--r--network/nxclient/nxclient.SlackBuild19
-rw-r--r--network/nyxt/README3
-rw-r--r--network/nyxt/doinst.sh9
-rw-r--r--network/nyxt/nyxt.SlackBuild89
-rw-r--r--network/nyxt/nyxt.info10
-rw-r--r--network/nyxt/slack-desc19
-rw-r--r--network/ocserv/README39
-rw-r--r--network/ocserv/doinst.sh23
-rw-r--r--network/ocserv/ocserv.SlackBuild (renamed from network/telegram-cli/telegram-cli.SlackBuild)54
-rw-r--r--network/ocserv/ocserv.conf779
-rw-r--r--network/ocserv/ocserv.info10
-rw-r--r--network/ocserv/rc.ocserv55
-rw-r--r--network/ocserv/slack-desc19
-rw-r--r--network/oinkmaster/oinkmaster.info2
-rw-r--r--network/onedrive/onedrive.SlackBuild4
-rw-r--r--network/onedrive/onedrive.info6
-rw-r--r--network/onioncat/onioncat.SlackBuild9
-rw-r--r--network/onioncat/onioncat.info8
-rw-r--r--network/onioncat/slack-desc2
-rw-r--r--network/onyx/onyx.SlackBuild6
-rw-r--r--network/ookla-speedtest/README17
-rw-r--r--network/ookla-speedtest/ookla-speedtest.SlackBuild93
-rw-r--r--network/ookla-speedtest/ookla-speedtest.info10
-rw-r--r--network/ookla-speedtest/slack-desc19
-rw-r--r--network/open-iscsi/doinst.sh13
-rw-r--r--network/open-iscsi/open-iscsi.SlackBuild15
-rw-r--r--network/open-isns/doinst.sh13
-rw-r--r--network/open-isns/open-isns.SlackBuild7
-rw-r--r--network/openconnect-sso/openconnect-sso.SlackBuild1
-rw-r--r--network/openconnect/libxml-fix.patch10
-rw-r--r--network/openconnect/openconnect.SlackBuild5
-rw-r--r--network/openconnect/openconnect.info6
-rw-r--r--network/openfortivpn/openfortivpn.SlackBuild2
-rw-r--r--network/openfortivpn/openfortivpn.info6
-rw-r--r--network/openresty/README40
-rw-r--r--network/openresty/doinst.sh35
-rw-r--r--network/openresty/openresty.SlackBuild195
-rw-r--r--network/openresty/openresty.info10
-rw-r--r--network/openresty/openresty.logrotate12
-rw-r--r--network/openresty/rc.openresty96
-rw-r--r--network/openresty/slack-desc19
-rw-r--r--network/opensm/README4
-rw-r--r--network/opensm/opensm.SlackBuild13
-rw-r--r--network/opensm/opensm.info6
-rw-r--r--network/opensmtpd-filter-dkimsign/README13
-rw-r--r--network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.SlackBuild (renamed from network/RYMTracks/RYMTracks.SlackBuild)27
-rw-r--r--network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.info10
-rw-r--r--network/opensmtpd-filter-dkimsign/slack-desc19
-rw-r--r--network/opensmtpd/README28
-rw-r--r--network/opensmtpd/README.alpine21
-rw-r--r--network/opensmtpd/opensmtpd.SlackBuild29
-rw-r--r--network/opensmtpd/opensmtpd.info10
-rw-r--r--network/opensmtpd/rc.opensmtpd13
-rw-r--r--network/opera-developer/README9
-rw-r--r--network/opera-developer/eula.html287
-rw-r--r--network/opera-developer/opera-developer.SlackBuild111
-rw-r--r--network/opera-developer/opera-developer.info10
-rw-r--r--network/opera-developer/privacy.html353
-rw-r--r--network/opera-developer/slack-desc19
-rw-r--r--network/opera-developer/terms.html285
-rw-r--r--network/opera-legacy/README14
-rw-r--r--network/opera-legacy/opera-legacy.SlackBuild102
-rw-r--r--network/opera-legacy/opera-legacy.info10
-rw-r--r--network/opera-legacy/slack-desc19
-rw-r--r--network/opera/opera.SlackBuild5
-rw-r--r--network/opera/opera.info10
-rw-r--r--network/otter/otter.SlackBuild4
-rw-r--r--network/otter/otter.info8
-rw-r--r--network/owncloud-client/owncloud-client.SlackBuild5
-rw-r--r--network/owncloud-client/owncloud-client.info10
-rw-r--r--network/packETH/packETH.SlackBuild7
-rw-r--r--network/packETH/packETH.info6
-rw-r--r--network/palemoon-bin/palemoon-bin.SlackBuild2
-rw-r--r--network/palemoon-bin/palemoon-bin.info6
-rw-r--r--network/palemoon/0001-Issue-7-Add-GCC-11-initial-support.patch37
-rw-r--r--network/palemoon/README4
-rw-r--r--network/palemoon/glib-c-arc4random.c.patch20
-rw-r--r--network/palemoon/palemoon.SlackBuild65
-rw-r--r--network/palemoon/palemoon.info10
-rw-r--r--network/persepolis/persepolis.info4
-rw-r--r--network/phodav/phodav.SlackBuild6
-rw-r--r--network/phodav/phodav.info8
-rw-r--r--network/phpmyadmin/phpmyadmin.SlackBuild2
-rw-r--r--network/phpmyadmin/phpmyadmin.info6
-rw-r--r--network/phppgadmin/README12
-rw-r--r--network/phppgadmin/doinst.sh (renamed from network/axel/doinst.sh)2
-rw-r--r--network/phppgadmin/http-pgadmin.conf17
-rw-r--r--network/phppgadmin/phppgadmin.SlackBuild (renamed from network/midori/midori.SlackBuild)75
-rw-r--r--network/phppgadmin/phppgadmin.info10
-rw-r--r--network/phppgadmin/slack-desc19
-rw-r--r--network/pidgin-opensteamworks/pidgin-opensteamworks.info2
-rw-r--r--network/pidgin-privacy-please/pidgin-privacy-please.SlackBuild13
-rw-r--r--network/pidgin-whatsapp/pidgin-whatsapp.info2
-rw-r--r--network/polipo/doinst.sh7
-rw-r--r--network/polipo/douninst.sh6
-rw-r--r--network/polipo/polipo.SlackBuild12
-rw-r--r--network/polipo/polipo.info2
-rw-r--r--network/postfix-pgsql/postfix-pgsql.SlackBuild4
-rw-r--r--network/postfix-pgsql/postfix-pgsql.info6
-rw-r--r--network/pounce/README19
-rw-r--r--network/pounce/pounce.SlackBuild92
-rw-r--r--network/pounce/pounce.info10
-rw-r--r--network/pounce/slack-desc19
-rw-r--r--network/privoxy/privoxy.SlackBuild6
-rw-r--r--network/privoxy/privoxy.info6
-rw-r--r--network/profanity/README2
-rw-r--r--network/profanity/profanity.SlackBuild4
-rw-r--r--network/profanity/profanity.info6
-rw-r--r--network/prosody-mod-block-strangers/prosody-mod-block-strangers.info2
-rw-r--r--network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.SlackBuild4
-rw-r--r--network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.info6
-rw-r--r--network/prosody-mod-csi/README5
-rw-r--r--network/prosody-mod-csi/prosody-mod-csi.info10
-rw-r--r--network/prosody-mod-csi/slack-desc19
-rw-r--r--network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.SlackBuild3
-rw-r--r--network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.info4
-rw-r--r--network/prosody-mod-http-upload/prosody-mod-http-upload.info2
-rw-r--r--network/prosody-mod-smacks/README5
-rw-r--r--network/prosody-mod-smacks/prosody-mod-smacks.SlackBuild93
-rw-r--r--network/prosody-mod-smacks/prosody-mod-smacks.info10
-rw-r--r--network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.SlackBuild6
-rw-r--r--network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.info4
-rw-r--r--network/prosody-mod-turncredentials/prosody-mod-turncredentials.info2
-rw-r--r--network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.SlackBuild7
-rw-r--r--network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.info6
-rw-r--r--network/prosody/prosody.SlackBuild2
-rw-r--r--network/prosody/prosody.info6
-rw-r--r--network/protonmail-bridge/README11
-rw-r--r--network/protonmail-bridge/protonmail-bridge.SlackBuild27
-rw-r--r--network/protonmail-bridge/protonmail-bridge.info6
-rw-r--r--network/protonmail-import-export-app/protonmail-import-export-app.SlackBuild10
-rw-r--r--network/protonvpn-cli/protonvpn-cli.SlackBuild4
-rw-r--r--network/protonvpn-cli/protonvpn-cli.info8
-rw-r--r--network/protonvpn-cli/slack-desc2
-rw-r--r--network/proxychains/proxychains.SlackBuild4
-rw-r--r--network/proxychains/proxychains.info8
-rw-r--r--network/psi-plus/psi-plus.SlackBuild2
-rw-r--r--network/psi-plus/psi-plus.info2
-rw-r--r--network/psi/psi.info2
-rw-r--r--network/pulse-sms/pulse-sms.SlackBuild17
-rw-r--r--network/pulse-sms/pulse-sms.info6
-rw-r--r--network/pure-ftpd/pure-ftpd.SlackBuild8
-rw-r--r--network/pure-ftpd/pure-ftpd.info10
-rw-r--r--network/purple-facebook/purple-facebook.info2
-rw-r--r--network/purple-googlechat/README3
-rw-r--r--network/purple-googlechat/purple-googlechat.SlackBuild2
-rw-r--r--network/purple-googlechat/purple-googlechat.info6
-rw-r--r--network/purple-plugin-pack/purple-plugin-pack.info2
-rw-r--r--network/purple-teams/purple-teams.SlackBuild4
-rw-r--r--network/purple-teams/purple-teams.info6
-rw-r--r--network/putty/putty.SlackBuild2
-rw-r--r--network/putty/putty.info6
-rw-r--r--network/pyNeighborhood/pyNeighborhood.info2
-rw-r--r--network/python3-CherryMusic/python3-CherryMusic.SlackBuild2
-rw-r--r--network/python3-PyRSS2Gen/python3-PyRSS2Gen.SlackBuild2
-rw-r--r--network/qbittorrent/qbittorrent.SlackBuild38
-rw-r--r--network/qbittorrent/qbittorrent.info8
-rw-r--r--network/qodem/README20
-rw-r--r--network/qodem/doinst.sh17
-rw-r--r--network/qodem/qodem-convert.1101
-rw-r--r--network/qodem/qodem-convert.rst67
-rw-r--r--network/qodem/qodem-x11.desktop10
-rw-r--r--network/qodem/qodem.SlackBuild172
-rw-r--r--network/qodem/qodem.desktop10
-rw-r--r--network/qodem/qodem.info10
-rw-r--r--network/qodem/slack-desc19
-rw-r--r--network/qtmib/qtmib.SlackBuild10
-rw-r--r--network/qtmib/slack-desc2
-rw-r--r--network/qutebrowser-bin/README7
-rw-r--r--network/qutebrowser-bin/qutebrowser-bin.SlackBuild44
-rw-r--r--network/qutebrowser-bin/qutebrowser-bin.info76
-rw-r--r--network/qutebrowser-bin/wrapper.qutebrowser1
-rw-r--r--network/qutebrowser/qutebrowser.SlackBuild28
-rw-r--r--network/qutebrowser/qutebrowser.info8
-rw-r--r--network/radicale/README6
-rw-r--r--network/radicale/doinst.sh6
-rw-r--r--network/radicale/radicale.SlackBuild70
-rw-r--r--network/radicale/radicale.info12
-rw-r--r--network/radicale/rc.radicale31
-rw-r--r--network/rclone/rclone.SlackBuild7
-rw-r--r--network/rclone/rclone.info6
-rw-r--r--network/rdma-core/optional_pandoc.patch40
-rw-r--r--network/rdma-core/rdma-core.SlackBuild10
-rw-r--r--network/rdma-core/rdma-core.info6
-rw-r--r--network/remmina/remmina.SlackBuild8
-rw-r--r--network/remmina/remmina.info6
-rw-r--r--network/remotebox/README8
-rw-r--r--network/remotebox/doinst.sh5
-rw-r--r--network/remotebox/remotebox.SlackBuild (renamed from network/livestreamer-curses/livestreamer-curses.SlackBuild)54
-rw-r--r--network/remotebox/remotebox.info10
-rw-r--r--network/remotebox/slack-desc19
-rw-r--r--network/rhapsody/rhapsody.SlackBuild15
-rw-r--r--network/rhapsody/rhapsody.info2
-rw-r--r--network/roundcubemail/roundcubemail.SlackBuild8
-rw-r--r--network/roundcubemail/roundcubemail.info6
-rw-r--r--network/rspamd/0007-fix-i386-compilation.patch110
-rw-r--r--network/rspamd/Toolset.cmake.patch16
-rw-r--r--network/rspamd/rspamd.SlackBuild18
-rw-r--r--network/rspamd/rspamd.info8
-rw-r--r--network/rss2email/4b36e28.patch239
-rw-r--r--network/rss2email/README10
-rw-r--r--network/rss2email/rss2email.SlackBuild10
-rw-r--r--network/rss2email/rss2email.info6
-rw-r--r--network/rss2email/slack-desc2
-rw-r--r--network/rtl8188fu/README4
-rw-r--r--network/rtl8188fu/conf/disable-random-mac.conf2
-rw-r--r--network/rtl8188fu/conf/r8188eu-blacklist.conf1
-rw-r--r--network/rtl8188fu/conf/rtl8188fu.conf1
-rw-r--r--network/rtl8188fu/conf/rtl8xxxu-blacklist.conf1
-rw-r--r--network/rtl8188fu/doinst.sh3
-rw-r--r--network/rtl8188fu/rtl8188fu.SlackBuild80
-rw-r--r--network/rtl8188fu/rtl8188fu.info10
-rw-r--r--network/rtl8188fu/slack-desc (renamed from network/PyRSS2Gen/slack-desc)22
-rw-r--r--network/rtl8812bu/README15
-rw-r--r--network/rtl8812bu/README.md72
-rw-r--r--network/rtl8812bu/doinst.sh3
-rw-r--r--network/rtl8812bu/git2tarxz.sh44
-rw-r--r--network/rtl8812bu/rtl8812bu.SlackBuild79
-rw-r--r--network/rtl8812bu/rtl8812bu.info10
-rw-r--r--network/rtl8812bu/slack-desc19
-rw-r--r--network/rtl8821ce/rtl8821ce.SlackBuild2
-rw-r--r--network/scapy/scapy.SlackBuild13
-rw-r--r--network/scapy/scapy.info6
-rw-r--r--network/sendxmpp/README5
-rw-r--r--network/sendxmpp/patches/01.patch31
-rw-r--r--network/sendxmpp/patches/02.patch277
-rw-r--r--network/sendxmpp/patches/03.patch54
-rw-r--r--network/sendxmpp/patches/04.patch26
-rw-r--r--network/sendxmpp/patches/05.patch23
-rw-r--r--network/sendxmpp/patches/06.patch92
-rw-r--r--network/sendxmpp/patches/07.patch42
-rw-r--r--network/sendxmpp/patches/08.patch12
-rw-r--r--network/sendxmpp/sendxmpp.info10
-rw-r--r--network/session/README19
-rw-r--r--network/session/doinst.sh9
-rw-r--r--network/session/session-desktop.desktop10
-rw-r--r--network/session/session.SlackBuild92
-rw-r--r--network/session/session.info10
-rw-r--r--network/session/slack-desc19
-rw-r--r--network/sfeed/README2
-rw-r--r--network/sfeed/README.SLACKWARE2
-rw-r--r--network/sfeed/sfeed.SlackBuild7
-rw-r--r--network/sfeed/sfeed.info10
-rw-r--r--network/sftp-cloudfs/sftp-cloudfs.info2
-rw-r--r--network/shibboleth-sp/shibboleth-sp.SlackBuild16
-rw-r--r--network/shibboleth-sp/shibboleth-sp.info6
-rw-r--r--network/sic/sic.SlackBuild9
-rw-r--r--network/sic/sic.info6
-rw-r--r--network/sickrage/README11
-rw-r--r--network/sickrage/config.ini3
-rw-r--r--network/sickrage/rc.sickrage107
-rw-r--r--network/sickrage/sickrage.SlackBuild107
-rw-r--r--network/sickrage/sickrage.conf6
-rw-r--r--network/sickrage/sickrage.info10
-rw-r--r--network/signal-desktop/signal-desktop.SlackBuild26
-rw-r--r--network/signal-desktop/signal-desktop.info6
-rw-r--r--network/sipp/sipp.SlackBuild34
-rw-r--r--network/sipp/sipp.info6
-rw-r--r--network/skypeforlinux/skypeforlinux.SlackBuild4
-rw-r--r--network/skypeforlinux/skypeforlinux.info6
-rw-r--r--network/slack/slack.SlackBuild49
-rw-r--r--network/slack/slack.info10
-rw-r--r--network/slirp4netns/slirp4netns.SlackBuild2
-rw-r--r--network/slirp4netns/slirp4netns.info8
-rw-r--r--network/slurm/slurm.SlackBuild6
-rw-r--r--network/slurm/slurm.info6
-rw-r--r--network/smstools3/smstools3.info2
-rw-r--r--network/sngrep/README17
-rw-r--r--network/sngrep/slack-desc19
-rw-r--r--network/sngrep/sngrep.SlackBuild (renamed from network/sslstrip/sslstrip.SlackBuild)68
-rw-r--r--network/sngrep/sngrep.info10
-rw-r--r--network/speedometer/speedometer.SlackBuild7
-rw-r--r--network/speedometer/speedometer.info4
-rw-r--r--network/spice-gtk/spice-gtk.SlackBuild4
-rw-r--r--network/spice-gtk/spice-gtk.info6
-rw-r--r--network/spice/spice.SlackBuild6
-rw-r--r--network/spice/spice.info6
-rw-r--r--network/squid/README9
-rw-r--r--network/squid/README.SBo2
-rw-r--r--network/squid/doinst.sh1
-rw-r--r--network/squid/squid.SlackBuild39
-rw-r--r--network/squid/squid.info6
-rw-r--r--network/squirrelmail/config.php.txt (renamed from network/squirrelmail/config.php)0
-rw-r--r--network/squirrelmail/config_local.php.txt (renamed from network/squirrelmail/config_local.php)0
-rw-r--r--network/squirrelmail/squirrelmail.SlackBuild4
-rw-r--r--network/sshfp/sshfp.info2
-rw-r--r--network/sshuttle/sshuttle.SlackBuild15
-rw-r--r--network/sshuttle/sshuttle.info8
-rw-r--r--network/sslscan/sslscan.SlackBuild14
-rw-r--r--network/sslscan/sslscan.info10
-rw-r--r--network/sslstrip/README6
-rw-r--r--network/sslstrip/sslstrip.info10
-rw-r--r--network/sstp-client/sstp-client.SlackBuild10
-rw-r--r--network/sstp-client/sstp-client.info6
-rw-r--r--network/strongswan/README3
-rw-r--r--network/strongswan/strongswan.SlackBuild22
-rw-r--r--network/strongswan/strongswan.info6
-rw-r--r--network/surf/surf.SlackBuild5
-rw-r--r--network/surfraw/surfraw.SlackBuild2
-rw-r--r--network/surfraw/surfraw.info4
-rw-r--r--network/suricata/README4
-rw-r--r--network/suricata/rc.suricata53
-rw-r--r--network/suricata/suricata.info10
-rw-r--r--network/surl/surl.SlackBuild18
-rw-r--r--network/swift/README5
-rw-r--r--network/swift/doinst.sh9
-rw-r--r--network/swift/slack-desc19
-rw-r--r--network/swift/swift-4.0.2-boost-1.69-compatibility.patch77
-rw-r--r--network/swift/swift-4.0.2-qt-5.11-compatibility.patch35
-rw-r--r--network/swift/swift-4.0.2-qt-5.15-compatibility.patch10
-rw-r--r--network/swift/swift-gcc11.patch13
-rw-r--r--network/swift/swift-python3.patch737
-rw-r--r--network/swift/swift.SlackBuild125
-rw-r--r--network/swift/swift.info10
-rw-r--r--network/syncterm/0002-use-sched-yield-53264f2b.diff38
-rw-r--r--network/syncterm/README22
-rw-r--r--network/syncterm/doinst.sh9
-rw-r--r--network/syncterm/extract-icns.sh55
-rw-r--r--network/syncterm/icons/128.pngbin0 -> 18515 bytes
-rw-r--r--network/syncterm/icons/16.pngbin0 -> 686 bytes
-rw-r--r--network/syncterm/icons/32.pngbin0 -> 1882 bytes
-rw-r--r--network/syncterm/icons/48.pngbin0 -> 3482 bytes
-rw-r--r--network/syncterm/manpage.diff55
-rw-r--r--network/syncterm/slack-desc19
-rw-r--r--network/syncterm/syncterm.SlackBuild159
-rw-r--r--network/syncterm/syncterm.info10
-rw-r--r--network/syncthing/syncthing.SlackBuild6
-rw-r--r--network/syncthing/syncthing.info12
-rw-r--r--network/synergy/synergy.SlackBuild30
-rw-r--r--network/synergy/synergy.info6
-rw-r--r--network/tahoe-lafs/README16
-rw-r--r--network/tahoe-lafs/tahoe-lafs.SlackBuild109
-rw-r--r--network/tahoe-lafs/tahoe-lafs.info10
-rw-r--r--network/tailscale/README18
-rw-r--r--network/tailscale/doinst.sh8
-rw-r--r--network/tailscale/slack-desc19
-rw-r--r--network/tailscale/tailscale.SlackBuild108
-rw-r--r--network/tailscale/tailscale.info12
-rw-r--r--network/tcpbench/README2
-rw-r--r--network/tcpbench/slack-desc (renamed from network/sslstrip/slack-desc)22
-rw-r--r--network/tcpbench/tcpbench.SlackBuild93
-rw-r--r--network/tcpbench/tcpbench.info10
-rw-r--r--network/tdlib/README9
-rw-r--r--network/tdlib/slack-desc19
-rw-r--r--network/tdlib/tdlib.SlackBuild116
-rw-r--r--network/tdlib/tdlib.info10
-rw-r--r--network/teams/teams.SlackBuild2
-rw-r--r--network/teams/teams.info6
-rw-r--r--network/teamviewer/teamviewer.SlackBuild16
-rw-r--r--network/teamviewer/teamviewer.info10
-rw-r--r--network/telegram-cli/README1
-rw-r--r--network/telegram-cli/libreadline.patch17
-rw-r--r--network/telegram-cli/slack-desc19
-rw-r--r--network/telegram-cli/telegram-cli.info12
-rw-r--r--network/telegram/README2
-rw-r--r--network/telegram/telegram.SlackBuild7
-rw-r--r--network/telegram/telegram.info10
-rw-r--r--network/telegram/telegram.pngbin12399 -> 12399 bytes
-rw-r--r--network/thorium-browser/README1
-rw-r--r--network/thorium-browser/doinst.sh (renamed from network/EarthReader-Web/doinst.sh)0
-rw-r--r--network/thorium-browser/slack-desc19
-rw-r--r--network/thorium-browser/thorium-browser.SlackBuild100
-rw-r--r--network/thorium-browser/thorium-browser.info10
-rw-r--r--network/thttpd/thttpd.SlackBuild5
-rw-r--r--network/tixati/tixati.SlackBuild4
-rw-r--r--network/tixati/tixati.info12
-rw-r--r--network/tnfs-fuse/tnfs-fuse.SlackBuild4
-rw-r--r--network/tnfsd/git2tarxz.sh75
-rw-r--r--network/tnfsd/remove_broken_tcp_support.diff65
-rw-r--r--network/tnfsd/tnfsd.18
-rw-r--r--network/tnfsd/tnfsd.SlackBuild30
-rw-r--r--network/tnfsd/tnfsd.info6
-rw-r--r--network/tnfsd/tnfsd.rst3
-rw-r--r--network/tnftp/tnftp.SlackBuild3
-rw-r--r--network/tnftp/tnftp.info6
-rw-r--r--network/tokodon/README8
-rw-r--r--network/tokodon/doinst.sh9
-rw-r--r--network/tokodon/slack-desc19
-rw-r--r--network/tokodon/tokodon.SlackBuild111
-rw-r--r--network/tokodon/tokodon.info10
-rw-r--r--network/toot/README1
-rw-r--r--network/toot/slack-desc19
-rw-r--r--network/toot/toot.SlackBuild72
-rw-r--r--network/toot/toot.info10
-rw-r--r--network/tor-browser/README7
-rw-r--r--network/tor-browser/tor-browser.SlackBuild21
-rw-r--r--network/tor-browser/tor-browser.info10
-rw-r--r--network/tor-browser/tor-browser.sh6
-rw-r--r--network/tor/tor.SlackBuild2
-rw-r--r--network/tor/tor.info6
-rw-r--r--network/torsocks/torsocks.SlackBuild14
-rw-r--r--network/torsocks/torsocks.info2
-rw-r--r--network/transgui/dup-obj-status.patch49
-rw-r--r--network/transgui/transgui.SlackBuild9
-rw-r--r--network/translate/translate.SlackBuild6
-rw-r--r--network/translate/translate.info10
-rw-r--r--network/transmission-remote-gtk/README1
-rw-r--r--network/transmission-remote-gtk/gcc10.patch25
-rw-r--r--network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild21
-rw-r--r--network/transmission-remote-gtk/transmission-remote-gtk.info8
-rw-r--r--network/transmission/README8
-rw-r--r--network/transmission/slack-desc2
-rw-r--r--network/transmission/transmission.SlackBuild115
-rw-r--r--network/transmission/transmission.info8
-rw-r--r--network/tut/README7
-rw-r--r--network/tut/modules.txt90
-rw-r--r--network/tut/slack-desc19
-rw-r--r--network/tut/tut.SlackBuild127
-rw-r--r--network/tut/tut.info68
-rw-r--r--network/twine/twine.SlackBuild8
-rw-r--r--network/twine/twine.info10
-rw-r--r--network/twinkle/twinkle.SlackBuild10
-rw-r--r--network/twinkle/twinkle.info2
-rw-r--r--network/udpbench/README3
-rw-r--r--network/udpbench/slack-desc (renamed from network/sickrage/slack-desc)22
-rw-r--r--network/udpbench/udpbench.SlackBuild93
-rw-r--r--network/udpbench/udpbench.info10
-rw-r--r--network/ufw/ufw.SlackBuild47
-rw-r--r--network/ufw/ufw.conf.patch5
-rw-r--r--network/ufw/ufw.info10
-rw-r--r--network/unbound/doinst.sh39
-rw-r--r--network/unbound/rc.unbound83
-rw-r--r--network/unbound/root.hints92
-rw-r--r--network/unbound/unbound.SlackBuild50
-rw-r--r--network/unbound/unbound.info6
-rw-r--r--network/unicornscan/unicornscan.info2
-rw-r--r--network/urlwatch/urlwatch.SlackBuild6
-rw-r--r--network/urlwatch/urlwatch.info10
-rw-r--r--network/uwsgi/README3
-rw-r--r--network/uwsgi/uwsgi.SlackBuild29
-rw-r--r--network/uwsgi/uwsgi.info6
-rw-r--r--network/varnish/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch23
-rw-r--r--network/varnish/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch33
-rw-r--r--network/varnish/rc.varnishd10
-rw-r--r--network/varnish/varnish.SlackBuild8
-rw-r--r--network/varnish/varnish.info6
-rw-r--r--network/vcspull/vcspull.SlackBuild9
-rw-r--r--network/vcspull/vcspull.info10
-rw-r--r--network/vdirsyncer/vdirsyncer.SlackBuild3
-rw-r--r--network/vdirsyncer/vdirsyncer.info10
-rw-r--r--network/viber/README10
-rw-r--r--network/viber/slack-desc10
-rw-r--r--network/viber/viber.SlackBuild72
-rw-r--r--network/viber/viber.info12
-rw-r--r--network/vimb/vimb.SlackBuild9
-rw-r--r--network/vimb/vimb.info6
-rw-r--r--network/vimfx/README19
-rw-r--r--network/vimfx/README.SBo19
-rw-r--r--network/vimfx/slack-desc19
-rw-r--r--network/vimfx/vimfx.SlackBuild103
-rw-r--r--network/vimfx/vimfx.info18
-rw-r--r--network/vivaldi/vivaldi.SlackBuild4
-rw-r--r--network/vivaldi/vivaldi.info10
-rw-r--r--network/vnstat/vnstat.SlackBuild7
-rw-r--r--network/vnstat/vnstat.info6
-rw-r--r--network/w3af/w3af.info2
-rw-r--r--network/w3m/README41
-rw-r--r--network/w3m/patches/w3m-0.5.2-gc72.patch27
-rw-r--r--network/w3m/patches/w3m-0.5.3-button.patch439
-rw-r--r--network/w3m/patches/w3m-0.5.3-gdk-pixbuf.patch46
-rw-r--r--network/w3m/patches/w3m-0.5.3-glibc214.patch58
-rw-r--r--network/w3m/patches/w3m-0.5.3-underlinking.patch15
-rw-r--r--network/w3m/w3m.SlackBuild28
-rw-r--r--network/w3m/w3m.info14
-rw-r--r--network/webalizer/README2
-rw-r--r--network/webalizer/slack-desc2
-rw-r--r--network/webalizer/webalizer.SlackBuild9
-rw-r--r--network/webalizer/webalizer.info8
-rw-r--r--network/webex/desktop.patch18
-rw-r--r--network/webex/webex.SlackBuild50
-rw-r--r--network/webex/webex.info4
-rw-r--r--network/webhook/doinst.sh8
-rw-r--r--network/weechat/01_fix_asciidoctor_options.patch21
-rw-r--r--network/weechat/README31
-rw-r--r--network/weechat/weechat.SlackBuild26
-rw-r--r--network/weechat/weechat.info6
-rw-r--r--network/wego/README4
-rw-r--r--network/wego/modules.txt18
-rw-r--r--network/wego/slack-desc (renamed from network/yoda/slack-desc)22
-rw-r--r--network/wego/wego.SlackBuild106
-rw-r--r--network/wego/wego.info22
-rw-r--r--network/wendzelnntpd/wendzelnntpd.SlackBuild75
-rw-r--r--network/whalebird/README4
-rw-r--r--network/whalebird/doinst.sh9
-rw-r--r--network/whalebird/slack-desc (renamed from network/RYMTracks/slack-desc)22
-rw-r--r--network/whalebird/whalebird.SlackBuild91
-rw-r--r--network/whalebird/whalebird.info10
-rw-r--r--network/wifi-radar/wifi-radar.info2
-rw-r--r--network/wildfly/README11
-rw-r--r--network/wildfly/rc.wildfly15
-rw-r--r--network/wildfly/slack-desc8
-rw-r--r--network/wildfly/wildfly.SlackBuild31
-rw-r--r--network/wildfly/wildfly.info8
-rw-r--r--network/windscribe/path.diff41
-rw-r--r--network/windscribe/windscribe.SlackBuild21
-rw-r--r--network/windscribe/windscribe.info6
-rw-r--r--network/wireshark/README4
-rw-r--r--network/wireshark/wireshark.SlackBuild18
-rw-r--r--network/wireshark/wireshark.info6
-rw-r--r--network/wp-cli/wp-cli.SlackBuild9
-rw-r--r--network/wp-cli/wp-cli.info6
-rw-r--r--network/wpa-cute/README2
-rw-r--r--network/wpa-cute/doinst.sh (renamed from network/Flootty/doinst.sh)0
-rw-r--r--network/wpa-cute/slack-desc19
-rw-r--r--network/wpa-cute/wpa-cute.SlackBuild (renamed from network/Free-Cinema/Free-Cinema.SlackBuild)26
-rw-r--r--network/wpa-cute/wpa-cute.info10
-rw-r--r--network/wput/wput.info2
-rw-r--r--network/wrk/wrk.info2
-rw-r--r--network/x11spice/x11spice.SlackBuild4
-rw-r--r--network/x11spice/x11spice.info6
-rw-r--r--network/xdman/README5
-rw-r--r--network/xdman/changelog20
-rw-r--r--network/xdman/doinst.sh14
-rw-r--r--network/xdman/slack-desc19
-rw-r--r--network/xdman/xdm-app.desktop11
-rw-r--r--network/xdman/xdman.SlackBuild112
-rw-r--r--network/xdman/xdman.info12
-rw-r--r--network/xinetd/README12
-rw-r--r--network/xinetd/slack-desc2
-rw-r--r--network/xinetd/xinetd.SlackBuild47
-rw-r--r--network/xinetd/xinetd.info6
-rw-r--r--network/xmrig/README100
-rw-r--r--network/xmrig/donate.patch13
-rw-r--r--network/xmrig/slack-desc19
-rw-r--r--network/xmrig/xmrig.SlackBuild162
-rw-r--r--network/xmrig/xmrig.info10
-rw-r--r--network/yle-dl/README6
-rw-r--r--network/yle-dl/yle-dl.SlackBuild18
-rw-r--r--network/yle-dl/yle-dl.info8
-rw-r--r--network/yoda/README1
-rw-r--r--network/yoda/doinst.sh3
-rw-r--r--network/yoda/yoda.info10
-rw-r--r--network/youtube-dl-gui/doinst.sh6
-rw-r--r--network/youtube-dl-gui/youtube-dl-gui.SlackBuild8
-rw-r--r--network/youtube-dl-gui/youtube-dl-gui.info2
-rw-r--r--network/youtube-dl/doinst.sh3
-rw-r--r--network/youtube-dl/setup.patch4
-rw-r--r--network/youtube-dl/slack-desc4
-rw-r--r--network/youtube-dl/youtube-dl.12522
-rw-r--r--network/youtube-dl/youtube-dl.SlackBuild29
-rw-r--r--network/youtube-dl/youtube-dl.info10
-rw-r--r--network/youtube-upload/youtube-upload.info2
-rw-r--r--network/yt-dlp/README29
-rw-r--r--network/yt-dlp/yt-dlp.13324
-rw-r--r--network/yt-dlp/yt-dlp.SlackBuild52
-rw-r--r--network/yt-dlp/yt-dlp.info8
-rw-r--r--network/ytfzf/README10
-rw-r--r--network/ytfzf/slack-desc19
-rw-r--r--network/ytfzf/ytfzf.SlackBuild77
-rw-r--r--network/ytfzf/ytfzf.info10
-rw-r--r--network/zabbix_agent2/README19
-rw-r--r--network/zabbix_agent2/README.SLACKWARE75
-rw-r--r--network/zabbix_agent2/doinst.sh (renamed from network/graphite-carbon/doinst.sh)6
-rw-r--r--network/zabbix_agent2/rc.zabbix_agent278
-rw-r--r--network/zabbix_agent2/slack-desc (renamed from network/light-firefox/slack-desc)22
-rw-r--r--network/zabbix_agent2/zabbix_agent2.SlackBuild168
-rw-r--r--network/zabbix_agent2/zabbix_agent2.info10
-rw-r--r--network/zabbix_agentd/README10
-rw-r--r--network/zabbix_agentd/README.SLACKWARE4
-rw-r--r--network/zabbix_agentd/rc.zabbix_agentd2
-rw-r--r--network/zabbix_agentd/zabbix_agentd.SlackBuild16
-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/README.SLACKWARE7
-rw-r--r--network/zabbix_java_gateway/rc.zabbix_java_gateway3
-rw-r--r--network/zabbix_java_gateway/slack-desc6
-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/rc.zabbix_proxy2
-rw-r--r--network/zabbix_proxy/zabbix_proxy.SlackBuild11
-rw-r--r--network/zabbix_proxy/zabbix_proxy.info6
-rw-r--r--network/zabbix_server/README.SLACKWARE8
-rw-r--r--network/zabbix_server/rc.zabbix_server3
-rw-r--r--network/zabbix_server/zabbix_server.SlackBuild19
-rw-r--r--network/zabbix_server/zabbix_server.info6
-rw-r--r--network/zeek/zeek.SlackBuild27
-rw-r--r--network/zeek/zeek.info6
-rw-r--r--network/zmap/zmap.SlackBuild9
-rw-r--r--network/zmap/zmap.info6
-rw-r--r--network/znc/znc.SlackBuild5
-rw-r--r--network/znc/znc.info6
-rw-r--r--network/zoom-linux/zoom-linux.SlackBuild43
-rw-r--r--network/zoom-linux/zoom-linux.info6
-rw-r--r--network/zsync/slack-desc8
1308 files changed, 29754 insertions, 10780 deletions
diff --git a/network/AdGuardHome/AdGuardHome.SlackBuild b/network/AdGuardHome/AdGuardHome.SlackBuild
index 3882499582..f574600f57 100644
--- a/network/AdGuardHome/AdGuardHome.SlackBuild
+++ b/network/AdGuardHome/AdGuardHome.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for AdGuardHome
-# Copyright 2019-2022, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2019-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=AdGuardHome
-VERSION=${VERSION:-0.107.14}
+VERSION=${VERSION:-0.107.48}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/AdGuardHome/AdGuardHome.info b/network/AdGuardHome/AdGuardHome.info
index fc0f266e9e..3088f00175 100644
--- a/network/AdGuardHome/AdGuardHome.info
+++ b/network/AdGuardHome/AdGuardHome.info
@@ -1,10 +1,10 @@
PRGNAM="AdGuardHome"
-VERSION="0.107.14"
+VERSION="0.107.48"
HOMEPAGE="https://adguard.com/adguard-home.html"
-DOWNLOAD="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.14/AdGuardHome_linux_386.tar.gz"
-MD5SUM="eaa910b4926e1c581e141b6bd3cea6b2"
-DOWNLOAD_x86_64="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.14/AdGuardHome_linux_amd64.tar.gz"
-MD5SUM_x86_64="8eca453a81a48aba284a88c5df66f76d"
+DOWNLOAD="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.48/AdGuardHome_linux_386.tar.gz"
+MD5SUM="4f2d1bd8af158a5d081d6e46eefe1675"
+DOWNLOAD_x86_64="https://github.com/AdguardTeam/AdGuardHome/releases/download/v0.107.48/AdGuardHome_linux_amd64.tar.gz"
+MD5SUM_x86_64="574115238a9334cf096ef16dc07feae4"
REQUIRES=""
MAINTAINER="Alexander Verbovetsky"
EMAIL="alik@ejik.org"
diff --git a/network/CherryMusic/CherryMusic.info b/network/CherryMusic/CherryMusic.info
deleted file mode 100644
index 7ee7e2722e..0000000000
--- a/network/CherryMusic/CherryMusic.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="CherryMusic"
-VERSION="0.40.0"
-HOMEPAGE="http://www.fomori.org/cherrymusic/"
-DOWNLOAD="https://pypi.python.org/packages/bd/af/118542a136d18a7389b142fc0a1b38842d86af1c938998a9e11de8b73afc/CherryMusic-0.40.0.tar.gz"
-MD5SUM="4e771c2e5a3da2500296893428bfc27c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="CherryPy"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/CherryMusic/README b/network/CherryMusic/README
deleted file mode 100644
index 3ec1d3c6e7..0000000000
--- a/network/CherryMusic/README
+++ /dev/null
@@ -1,16 +0,0 @@
-CherryMusic is a music streaming server based on CherryPy and jPlayer.
-It can be run remotely or on a single computer and is designed to
-handle huge music libraries of 3 TB and more; it also works well
-with small collections. In contrast to MPD, Icecast and the like,
-CherryMusic allows multiple users to log in via HTTP/HTTPS using a web
-browser, browse and search the music database, manage playlists and
-stream music to the browser.
-
-The CherryMusic server runs on Linux, Windows and OS X, as long as
-Python and SQLite are available. To use the web client, any device
-with a modern browser will do.
-
-Optional dependencies are:
-
- Live transcoding: faad2
- For special character search terms: python-unidecode
diff --git a/network/CherryMusic/slack-desc b/network/CherryMusic/slack-desc
deleted file mode 100644
index 17410f4f20..0000000000
--- a/network/CherryMusic/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-CherryMusic: CherryMusic (music streaming server)
-CherryMusic:
-CherryMusic: CherryMusic is a music streaming server based on CherryPy and
-CherryMusic: jPlayer. It can be run remotely or on a single computer and is
-CherryMusic: designed to handle huge music libraries of 3 TB and more; it also
-CherryMusic: works well with small collections. In contrast to MPD, Icecast
-CherryMusic: and the like, CherryMusic allows multiple users to log in via
-CherryMusic: HTTP/HTTPS using a web browser, browse and search the music
-CherryMusic: database, manage playlists and stream music to the browser.
-CherryMusic:
-CherryMusic: Homepage: http://www.fomori.org/cherrymusic/
diff --git a/network/ClusterSSH/ClusterSSH.info b/network/ClusterSSH/ClusterSSH.info
index 1b7cfd3b06..25fc65f056 100644
--- a/network/ClusterSSH/ClusterSSH.info
+++ b/network/ClusterSSH/ClusterSSH.info
@@ -5,8 +5,8 @@ DOWNLOAD="http://downloads.sourceforge.net/clusterssh/App-ClusterSSH-4.09.tar.gz
MD5SUM="557e8440b246f4122c2decf6cc61730a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-Try-Tiny perl-x11-protocol perl-File-Which perl-Test-Pod perl-Test-Pod-Coverage perl-CPAN-Changes \
+REQUIRES="perl-Try-Tiny perl-File-Which perl-Test-Pod perl-Test-Pod-Coverage perl-CPAN-Changes \
perl-tk perl-Test-Trap perl-Exception-Class perl-Readonly perl-Test-DistManifest perl-Test-Differences \
- perl-File-Slurp perl-Sort-Naturally perl-Test-PerlTidy perl-X11-Protocol-Other"
+ perl-Sort-Naturally perl-Test-PerlTidy perl-X11-Protocol-Other"
MAINTAINER="LEVAI Daniel"
EMAIL="leva@ecentrum.hu"
diff --git a/network/DarTui/DarTui.info b/network/DarTui/DarTui.info
deleted file mode 100644
index a83e7a3068..0000000000
--- a/network/DarTui/DarTui.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="DarTui"
-VERSION="1.1.0"
-HOMEPAGE="https://github.com/cjlucas/dartui"
-DOWNLOAD="https://pypi.python.org/packages/source/D/DarTui/DarTui-1.1.0.tar.gz"
-MD5SUM="d65058b3b96245dfa56aa363b722ab71"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="web.py rtorrent-python simplejson"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/DarTui/README b/network/DarTui/README
deleted file mode 100644
index fef481b1ec..0000000000
--- a/network/DarTui/README
+++ /dev/null
@@ -1,2 +0,0 @@
-An rTorrent web interface with a focus on simplicity, speed and
-responsiveness.
diff --git a/network/EarthReader-Web/EarthReader-Web.info b/network/EarthReader-Web/EarthReader-Web.info
deleted file mode 100644
index 2b6cc005bb..0000000000
--- a/network/EarthReader-Web/EarthReader-Web.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="EarthReader-Web"
-VERSION="0.3.0"
-HOMEPAGE="http://earthreader.org/"
-DOWNLOAD="https://pypi.python.org/packages/source/E/EarthReader-Web/EarthReader-Web-0.3.0.tar.gz"
-MD5SUM="cfb14e190a10ba736cc7db099b5d937b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python-libsass Flask libearth python3-waitress"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/EarthReader-Web/README b/network/EarthReader-Web/README
deleted file mode 100644
index 91f70e93bc..0000000000
--- a/network/EarthReader-Web/README
+++ /dev/null
@@ -1,7 +0,0 @@
-Earth Reader for Web.
-
-Web frontend of Earth Reader.
-
-We are trying to make the RSS reader possible to run on various
-devices and be synchronized without any particular centralized
-proprietary services.
diff --git a/network/EarthReader-Web/slack-desc b/network/EarthReader-Web/slack-desc
deleted file mode 100644
index 96778ff272..0000000000
--- a/network/EarthReader-Web/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-EarthReader-Web: EarthReader-Web (Earth Reader for Web)
-EarthReader-Web:
-EarthReader-Web: We are trying to make the RSS reader possible to run on various
-EarthReader-Web: devices and be synchronized without any particular centralized
-EarthReader-Web: proprietary services.
-EarthReader-Web:
-EarthReader-Web: Homepage: http://earthreader.org/
-EarthReader-Web:
-EarthReader-Web:
-EarthReader-Web:
-EarthReader-Web:
diff --git a/network/Electrum-DASH/Electrum-DASH.SlackBuild b/network/Electrum-DASH/Electrum-DASH.SlackBuild
deleted file mode 100644
index 9338e93492..0000000000
--- a/network/Electrum-DASH/Electrum-DASH.SlackBuild
+++ /dev/null
@@ -1,97 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for Electrum-DASH
-
-# Copyright 2016 Reedych <reedych@reedych.pw>
-# 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 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=Electrum-DASH
-VERSION=${VERSION:-2.4.1}
-BUILD=${BUILD:-2}
-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
-
-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 {} \;
-
-python3 setup.py install --root=$PKG
-
-pyrcc5 icons.qrc -o gui/qt/icons_rc.py
-
-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 AUTHORS LICENCE README.rst RELEASE-NOTES $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/Electrum-DASH/Electrum-DASH.info b/network/Electrum-DASH/Electrum-DASH.info
deleted file mode 100644
index f34a15627a..0000000000
--- a/network/Electrum-DASH/Electrum-DASH.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Electrum-DASH"
-VERSION="2.4.1"
-HOMEPAGE="https://electrum-dash.org/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/Electrum-DASH-2.4.1.tar.gz"
-MD5SUM="a2fa80487472e517d6a9418f3460b310"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="SlowAES ecdsa python-qrcode pyasn1-modules python-tlslite python-pbkdf2 protobuf3 python-jsonrpclib python2-x11_hash trezor mnemonic"
-MAINTAINER="Reedych"
-EMAIL="reedych@reedych.pw"
diff --git a/network/Electrum-DASH/README b/network/Electrum-DASH/README
deleted file mode 100644
index d3be75b3da..0000000000
--- a/network/Electrum-DASH/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Electrum-DASH is an easy to use Dash client.
-
-There is no waiting time when you start the client, because it does
-not download the Bitcoin blockchain.
diff --git a/network/Electrum/Electrum.SlackBuild b/network/Electrum/Electrum.SlackBuild
index ceb80f3c92..b53dc90e61 100644
--- a/network/Electrum/Electrum.SlackBuild
+++ b/network/Electrum/Electrum.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for Electrum
# Copyright 2014-2018 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# Copyright 2019-2021 nomnombtc <nomnombtc@arcor.de>
+# Copyright 2019-2024 nomnombtc <nomnombtc@arcor.de>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -15,7 +15,7 @@
# 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 AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# 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,
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=Electrum
-VERSION=${VERSION:-4.3.2}
+VERSION=${VERSION:-4.5.4}
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
@@ -60,6 +57,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
diff --git a/network/Electrum/Electrum.info b/network/Electrum/Electrum.info
index 5ab90f6a2c..3a5badf64e 100644
--- a/network/Electrum/Electrum.info
+++ b/network/Electrum/Electrum.info
@@ -1,10 +1,10 @@
PRGNAM="Electrum"
-VERSION="4.3.2"
+VERSION="4.5.4"
HOMEPAGE="https://electrum.org/"
-DOWNLOAD="https://download.electrum.org/4.3.2/Electrum-4.3.2.tar.gz"
-MD5SUM="3f5af722790ed19b02c526dd95c70684"
+DOWNLOAD="https://download.electrum.org/4.5.4/Electrum-4.5.4.tar.gz"
+MD5SUM="976c372f870cd137432ac59305f88810"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="protobuf3 cryptography secp256k1 python3-aiohttp python3-aiohttp-socks python3-aiorpcX python-qrcode python-bitstring QDarkStyle"
+REQUIRES="protobuf3 cryptography secp256k1 python3-aiohttp-socks python3-aiorpcX python-qrcode python-bitstring jsonpatch QDarkStyle"
MAINTAINER="nomnombtc"
EMAIL="nomnombtc@arcor.de"
diff --git a/network/Electrum/README b/network/Electrum/README
index 4f876f67f3..17dee0d0d9 100644
--- a/network/Electrum/README
+++ b/network/Electrum/README
@@ -2,3 +2,5 @@ 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).
diff --git a/network/FireWorks/FireWorks.SlackBuild b/network/FireWorks/FireWorks.SlackBuild
index b7fb4ee1d3..457a25009e 100644
--- a/network/FireWorks/FireWorks.SlackBuild
+++ b/network/FireWorks/FireWorks.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for FireWorks
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=FireWorks
-VERSION=${VERSION:-1.3.4}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2.0.3}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,13 +79,13 @@ 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 {} \;
-python2 setup.py install --root=$PKG
+python3 setup.py install --root=$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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.rst CHANGES.txt LICENSE PKG-INFO docs/*.rst \
+cp -a README.md CHANGES.txt LICENSE docs/*.html \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/FireWorks/FireWorks.info b/network/FireWorks/FireWorks.info
index e6273ede34..3b62f2a824 100644
--- a/network/FireWorks/FireWorks.info
+++ b/network/FireWorks/FireWorks.info
@@ -1,10 +1,10 @@
PRGNAM="FireWorks"
-VERSION="1.3.4"
+VERSION="2.0.3"
HOMEPAGE="https://github.com/materialsproject/fireworks"
-DOWNLOAD="https://pypi.python.org/packages/2e/36/15de68d74d5dc4927cdbb92b4ae0a658885eb08f2974894ff30fe000d6bc/FireWorks-1.3.4.tar.gz"
-MD5SUM="7268d2457124d472162406f59ec00452"
+DOWNLOAD="https://files.pythonhosted.org/packages/d1/9a/54d72f7b09995155f513064d1e6207b3ac87f73306b4c0522c3dd68b6a57/FireWorks-2.0.3.tar.gz"
+MD5SUM="418b196f2710938380e374ca85ac12e7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pymongo monty python2-dateutil python2-tabulate python3-flask-paginate gunicorn"
+REQUIRES="pymongo monty python3-dateutil python3-tabulate python3-flask-paginate gunicorn python3-ruamel.yaml tqdm"
MAINTAINER="Dimitris Zlatanidis"
EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/Flootty/Flootty.info b/network/Flootty/Flootty.info
deleted file mode 100644
index d774208a20..0000000000
--- a/network/Flootty/Flootty.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Flootty"
-VERSION="3.2.1"
-HOMEPAGE="https://floobits.com"
-DOWNLOAD="https://pypi.python.org/packages/f3/9c/234dd2fbf0eed5b3537c4224ff5950afe61e4b6556fdec54b8b2e2b3419e/Flootty-3.2.1.tar.gz"
-MD5SUM="9e51d9fa0defd073ec4075546ac4e999"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/Flootty/README b/network/Flootty/README
deleted file mode 100644
index 6d8e73e757..0000000000
--- a/network/Flootty/README
+++ /dev/null
@@ -1,7 +0,0 @@
-Floobits collaborative terminal.
-
-Flootty will automatically attempt to join a workspace without
-specifying the term name if there is only one terminal. Flootty
-is also able to read in .floo files which floobits adds to the root
-directory of every shared workspace. Simply call flootty from a shared
-directory.
diff --git a/network/Free-Cinema/Free-Cinema.info b/network/Free-Cinema/Free-Cinema.info
deleted file mode 100644
index e28d5f76a0..0000000000
--- a/network/Free-Cinema/Free-Cinema.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="Free-Cinema"
-VERSION="0.3.0"
-HOMEPAGE="https://pypi.python.org/pypi/Free-Cinema/0.3.0"
-DOWNLOAD="https://pypi.python.org/packages/source/F/Free-Cinema/Free-Cinema-0.3.0.tar.gz"
-MD5SUM="2164bb23782a422015fc89cdaec75c8b"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="wxPython python2-BeautifulSoup4"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/Free-Cinema/README b/network/Free-Cinema/README
deleted file mode 100644
index b69f019cb5..0000000000
--- a/network/Free-Cinema/README
+++ /dev/null
@@ -1,9 +0,0 @@
-Search, Download movies via Torrent.
-
-This program is made to browse movies to download from the comfort
-of your desktop. You must have a torrent client to download the video
-files.
-
-After installing run the program by typing "freecinema" without quotes
-and browse to the movie you want, click download, save the torrent
-file from the browser, and open it with your torrent client.
diff --git a/network/Free-Cinema/doinst.sh b/network/Free-Cinema/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/Free-Cinema/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/GlobalProtect-openconnect/GlobalProtect-openconnect.SlackBuild b/network/GlobalProtect-openconnect/GlobalProtect-openconnect.SlackBuild
new file mode 100644
index 0000000000..1a38375750
--- /dev/null
+++ b/network/GlobalProtect-openconnect/GlobalProtect-openconnect.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for GlobalProtect-openconnect
+
+# Copyright 2024 Marek Wodzinski <majek@w7i.pl>
+# 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=GlobalProtect-openconnect
+SRCNAM=globalprotect-openconnect
+VERSION=${VERSION:-1.4.9}
+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 $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 {} \;
+
+cmake -B build \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_CXX_FLAGS_RELEASE=-s
+cmake --build build
+DESTDIR=$PKG cmake --install build
+
+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
+
+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
+
+install -m755 -D $CWD/rc.gpservice $PKG/etc/rc.d/rc.gpservice.new
+mv $PKG/etc/gpservice/gp.conf $PKG/etc/gpservice/gp.conf.new
+rm -rfv $PKG/usr/lib
+
+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/GlobalProtect-openconnect/GlobalProtect-openconnect.info b/network/GlobalProtect-openconnect/GlobalProtect-openconnect.info
new file mode 100644
index 0000000000..4730fe1a43
--- /dev/null
+++ b/network/GlobalProtect-openconnect/GlobalProtect-openconnect.info
@@ -0,0 +1,10 @@
+PRGNAM="GlobalProtect-openconnect"
+VERSION="1.4.9"
+HOMEPAGE="https://github.com/yuezk/GlobalProtect-openconnect/"
+DOWNLOAD="https://github.com/yuezk/GlobalProtect-openconnect/releases/download/v1.4.9/globalprotect-openconnect-1.4.9.tar.gz"
+MD5SUM="85f3d5f718f06291a52e63bba59405a6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="openconnect"
+MAINTAINER="Marek Wodzinski"
+EMAIL="majek@w7i.pl"
diff --git a/network/GlobalProtect-openconnect/README b/network/GlobalProtect-openconnect/README
new file mode 100644
index 0000000000..562171c0f4
--- /dev/null
+++ b/network/GlobalProtect-openconnect/README
@@ -0,0 +1,13 @@
+A GlobalProtect VPN client (GUI) for Linux based on Openconnect and
+built with Qt5, supports SAML auth mode, inspired by gp-saml-gui.
+
+Features
+- Similar user experience as the official client in macOS.
+- Supports both SAML and non-SAML authentication modes.
+- Supports automatically selecting the preferred gateway from
+ the multiple gateways.
+- Supports switching gateway from the system tray menu manually.
+
+This is two part application:
+- gpservice - daemon, should be started by /etc/rc.d/rc.gpservice
+- gpclient - client GUI application
diff --git a/network/sickrage/doinst.sh b/network/GlobalProtect-openconnect/doinst.sh
index 3aafce21d5..f4dab04011 100644
--- a/network/sickrage/doinst.sh
+++ b/network/GlobalProtect-openconnect/doinst.sh
@@ -22,6 +22,7 @@ preserve_perms() {
config $NEW
}
-preserve_perms etc/rc.d/rc.sickrage.new
-config etc/sickrage.conf.new
-config var/lib/sickrage/config.ini.new
+preserve_perms etc/rc.d/rc.gpservice.new
+
+# Does the finished package have config files in etc/?
+config etc/gpservice/gp.conf.new
diff --git a/network/GlobalProtect-openconnect/rc.gpservice b/network/GlobalProtect-openconnect/rc.gpservice
new file mode 100644
index 0000000000..c95aebfff4
--- /dev/null
+++ b/network/GlobalProtect-openconnect/rc.gpservice
@@ -0,0 +1,36 @@
+#!/bin/bash
+#
+# Start/stop gpservice
+# Written by Marek Wodzinski <majek@w7i.pl>
+
+# Start gpservice
+gpservice_start() {
+ if [ -x /usr/bin/gpservice ]; then
+ echo "Starting gpservice."
+ /usr/bin/gpservice &
+ fi
+}
+
+# Stop gpservice
+gpservice_stop() {
+ echo "Stopping gpservice."
+ killall gpservice
+}
+
+case "$1" in
+ start)
+ gpservice_start
+ ;;
+ stop)
+ gpservice_stop
+ ;;
+ restart)
+ gpservice_stop
+ sleep 1
+ gpservice_start
+ ;;
+ *)
+ echo "usage @0 start|stop|restart"
+ exit 1
+ ;;
+esac
diff --git a/network/GlobalProtect-openconnect/slack-desc b/network/GlobalProtect-openconnect/slack-desc
new file mode 100644
index 0000000000..f4d7549db6
--- /dev/null
+++ b/network/GlobalProtect-openconnect/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------------------------------------------------------|
+GlobalProtect-openconnect: GlobalProtect-openconnect (A GlobalProtect VPN client (GUI))
+GlobalProtect-openconnect:
+GlobalProtect-openconnect: A GlobalProtect VPN client (GUI) for Linux based on Openconnect and
+GlobalProtect-openconnect: built with Qt5, supports SAML auth mode, inspired by gp-saml-gui.
+GlobalProtect-openconnect:
+GlobalProtect-openconnect: Features:
+GlobalProtect-openconnect: Similar user experience as the official client in macOS.
+GlobalProtect-openconnect: Supports both SAML and non-SAML authentication modes.
+GlobalProtect-openconnect: Supports automatically selecting the preferred gateway from
+GlobalProtect-openconnect: the multiple gateways.
+GlobalProtect-openconnect: Supports switching gateway from the system tray menu manually.
diff --git a/network/MEGAcmd/MEGAcmd.SlackBuild b/network/MEGAcmd/MEGAcmd.SlackBuild
index 220577f474..2f36025842 100644
--- a/network/MEGAcmd/MEGAcmd.SlackBuild
+++ b/network/MEGAcmd/MEGAcmd.SlackBuild
@@ -26,8 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=MEGAcmd
-VERSION=${VERSION:-1.5.1}
-SDK=${SDK:-3.9.11d}
+VERSION=${VERSION:-1.6.3}
+SDK=${SDK:-4.17.1d}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -75,6 +75,9 @@ rm -rf $PRGNAM-${VERSION}_Linux
tar xvf $CWD/$PRGNAM-${VERSION}_Linux.tar.?z
cd $PRGNAM-${VERSION}_Linux/sdk
tar --strip-components=1 -xvf $CWD/sdk-$SDK.tar.gz
+# Apply fix-ffmpeg-compile.patch ; Thanks to Arch linux.
+patch -p1 < $CWD/fix-ffmpeg-compile.patch
+
cd ../
chown -R root:root .
find -L . \
@@ -92,11 +95,13 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--docdir=/usr/doc/$PRGNAM-$VERSION \
- --without-ffmpeg \
--build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
+# Fix installdir of megacmd_completion.sh
+rm -rf $PKG/etc
+install -Dm644 src/client/megacmd_completion.sh $PKG/usr/share/bash-completion/completions/megacmd
# Don't ship .la files:
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/*.la
diff --git a/network/MEGAcmd/MEGAcmd.info b/network/MEGAcmd/MEGAcmd.info
index d0963a0959..9e2d7a195d 100644
--- a/network/MEGAcmd/MEGAcmd.info
+++ b/network/MEGAcmd/MEGAcmd.info
@@ -1,10 +1,10 @@
PRGNAM="MEGAcmd"
-VERSION="1.5.1"
+VERSION="1.6.3"
HOMEPAGE="https://github.com/meganz/MEGAcmd"
-DOWNLOAD="https://github.com/meganz/MEGAcmd/archive/1.5.1_Linux/MEGAcmd-1.5.1_Linux.tar.gz \
- https://github.com/meganz/sdk/archive/v3.9.11d/sdk-3.9.11d.tar.gz"
-MD5SUM="a0047f8f025c46b4646c8e7f953b79d8 \
- 5028b95cad49c7cc654d1249e39e8f84"
+DOWNLOAD="https://github.com/meganz/MEGAcmd/archive/1.6.3_Linux/MEGAcmd-1.6.3_Linux.tar.gz \
+ https://github.com/meganz/sdk/archive/v4.17.1d/sdk-4.17.1d.tar.gz"
+MD5SUM="9d6d61f0dc029ccc5aceeb3fa643b1bd \
+ 09e1926a06ab62ddef9b2dd3846c6ba7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="FreeImage libmediainfo"
diff --git a/network/MEGAcmd/fix-ffmpeg-compile.patch b/network/MEGAcmd/fix-ffmpeg-compile.patch
new file mode 100644
index 0000000000..daa9fd72fe
--- /dev/null
+++ b/network/MEGAcmd/fix-ffmpeg-compile.patch
@@ -0,0 +1,29 @@
+--- a/src/gfx/freeimage.cpp 2023-03-03 22:13:58.000000000 +0000
++++ b/src/gfx/freeimage.cpp 2023-03-14 10:03:10.950216675 +0000
+@@ -212,7 +212,7 @@
+ #ifdef AV_CODEC_CAP_TRUNCATED
+ #define CAP_TRUNCATED AV_CODEC_CAP_TRUNCATED
+ #else
+-#define CAP_TRUNCATED CODEC_CAP_TRUNCATED
++#define CAP_TRUNCATED 0
+ #endif
+
+ const char *GfxProviderFreeImage::supportedformatsFfmpeg()
+@@ -313,7 +313,7 @@
+
+ // Find decoder for video stream
+ AVCodecID codecId = codecParm->codec_id;
+- AVCodec* decoder = avcodec_find_decoder(codecId);
++ auto decoder = avcodec_find_decoder(codecId);
+ if (!decoder)
+ {
+ LOG_warn << "Codec not found: " << codecId;
+@@ -330,7 +330,6 @@
+
+ // Force seeking to key frames
+ formatContext->seek2any = false;
+- videoStream->skip_to_keyframe = true;
+ if (decoder->capabilities & CAP_TRUNCATED)
+ {
+ codecContext->flags |= CAP_TRUNCATED;
+
diff --git a/network/PyRSS2Gen/PyRSS2Gen.SlackBuild b/network/PyRSS2Gen/PyRSS2Gen.SlackBuild
deleted file mode 100644
index b978bff199..0000000000
--- a/network/PyRSS2Gen/PyRSS2Gen.SlackBuild
+++ /dev/null
@@ -1,65 +0,0 @@
-#!/bin/bash
-# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
-# Copyright 2009-2010 Eric Hameleers, Eindhoven, Netherlands
-# Slackware build script for PyRSS2Gen
-# Written by Lionel Young <redtricycle@gmail.com>
-# Based on http://slackbuilds.org/template.SlackBuild
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=PyRSS2Gen
-VERSION=${VERSION:-1.1}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-# 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 [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
- *) export ARCH=$( uname -m ) ;;
- esac
-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 .
-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 {} \;
-
-python setup.py build || exit 1
-python setup.py install --root=$PKG || exit 1
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- README LICENSE PKG-INFO \
- $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/PyRSS2Gen/PyRSS2Gen.info b/network/PyRSS2Gen/PyRSS2Gen.info
deleted file mode 100644
index 0d47049559..0000000000
--- a/network/PyRSS2Gen/PyRSS2Gen.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="PyRSS2Gen"
-VERSION="1.1"
-HOMEPAGE="http://www.dalkescientific.com/Python/PyRSS2Gen.html"
-DOWNLOAD="http://www.dalkescientific.com/Python/PyRSS2Gen-1.1.tar.gz"
-MD5SUM="c56b9453d52b0a70be4f3e95112058aa"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Lionel Young"
-EMAIL="redtricycle@gmail.com"
diff --git a/network/PyRSS2Gen/README b/network/PyRSS2Gen/README
deleted file mode 100644
index d3c685d790..0000000000
--- a/network/PyRSS2Gen/README
+++ /dev/null
@@ -1,6 +0,0 @@
-PyRSS2Gen is a Python module that makes it easy to generate valid RSS
-feeds. You can use it to generate RSS feeds for web pages that don't
-have them.
-
-There is also RSSLib which looks like it does the same thing in a
-slightly different way.
diff --git a/network/Pyrit/Pyrit.info b/network/Pyrit/Pyrit.info
index 77776829d3..3311b6a4e2 100644
--- a/network/Pyrit/Pyrit.info
+++ b/network/Pyrit/Pyrit.info
@@ -1,7 +1,7 @@
PRGNAM="Pyrit"
VERSION="0.5.0"
HOMEPAGE="https://github.com/JPaulMora/Pyrit"
-DOWNLOAD="https://github.com/JPaulMora/Pyrit/archive/v0.5.0.tar.gz"
+DOWNLOAD="https://github.com/JPaulMora/Pyrit/archive/v0.5.0/Pyrit-0.5.0.tar.gz"
MD5SUM="fbc25ae13a5fed2b2e3ffad7ede0dc71"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/RYMTracks/README b/network/RYMTracks/README
deleted file mode 100644
index 5c60fa958f..0000000000
--- a/network/RYMTracks/README
+++ /dev/null
@@ -1,2 +0,0 @@
-RYMTracks is small helper for all those folks who actively uses and
-contributes for RateYourMusic <http://rateyourmusic.com>
diff --git a/network/RYMTracks/RYMTracks.info b/network/RYMTracks/RYMTracks.info
deleted file mode 100644
index c18a1d910d..0000000000
--- a/network/RYMTracks/RYMTracks.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="RYMTracks"
-VERSION="0.1.4"
-HOMEPAGE="https://github.com/9seconds/rymtracks/"
-DOWNLOAD="https://pypi.python.org/packages/source/R/RYMTracks/RYMTracks-0.1.4.tar.gz"
-MD5SUM="722b0cabebbcb25f917947e55b0feb71"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="BeautifulSoup4 python2-BeautifulSoup4 lxml isodate docopt nose python3-nltk numpy colorama termcolor mutagen"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/TeamSpeak3/README b/network/TeamSpeak3/README
index 66324e7730..34ed64c4bc 100644
--- a/network/TeamSpeak3/README
+++ b/network/TeamSpeak3/README
@@ -13,4 +13,6 @@ Key features are: client-server architecture, firewall-friendly client
communication, multiple channels, text chat, file transfer, user
administration, and cross-platform support.
+Starting with 3.6.0, TeamSpeak drops the support for Linux 32-bit.
+
This script packages the proprietary client software.
diff --git a/network/TeamSpeak3/TeamSpeak3.SlackBuild b/network/TeamSpeak3/TeamSpeak3.SlackBuild
index ceb8d7d012..53c7aa5463 100644
--- a/network/TeamSpeak3/TeamSpeak3.SlackBuild
+++ b/network/TeamSpeak3/TeamSpeak3.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=TeamSpeak3
-VERSION=${VERSION:-3.5.6}
+VERSION=${VERSION:-3.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/TeamSpeak3/TeamSpeak3.info b/network/TeamSpeak3/TeamSpeak3.info
index 09b69d554b..d0b5e8518e 100644
--- a/network/TeamSpeak3/TeamSpeak3.info
+++ b/network/TeamSpeak3/TeamSpeak3.info
@@ -1,10 +1,10 @@
PRGNAM="TeamSpeak3"
-VERSION="3.5.6"
+VERSION="3.6.1"
HOMEPAGE="https://www.teamspeak.com/en/"
-DOWNLOAD="https://files.teamspeak-services.com/releases/client/3.5.6/TeamSpeak3-Client-linux_x86-3.5.6.run"
-MD5SUM="8b667d366c0e257ae58c4688de5a923f"
-DOWNLOAD_x86_64="https://files.teamspeak-services.com/releases/client/3.5.6/TeamSpeak3-Client-linux_amd64-3.5.6.run"
-MD5SUM_x86_64="15d6e255515f37cc514dcf4f0f7cf23d"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://files.teamspeak-services.com/releases/client/3.6.1/TeamSpeak3-Client-linux_amd64-3.6.1.run"
+MD5SUM_x86_64="327f66c7923f735b8e9f3425f4c40219"
REQUIRES=""
MAINTAINER="Edward W. Koenig"
EMAIL="kingbeowulf@linuxgalaxy.org"
diff --git a/network/UDR/README b/network/UDR/README
index 044eca08fa..ef8c5ad63b 100644
--- a/network/UDR/README
+++ b/network/UDR/README
@@ -1,3 +1,14 @@
+*** Important remark:
+
+Instead of using this program, it is recommended to change the kernel
+tcp congestion control to bbr by adding the following two lines to
+/etc/sysctl.conf:
+
+net.core.default_qdisc=fq
+net.ipv4.tcp_congestion_control=bbr
+
+*********************
+
UDR is a wrapper around rsync that enables rsync to use UDT protocol and
thus improves throughput of large data transfers over long distances.
diff --git a/network/UDR/UDR.SlackBuild b/network/UDR/UDR.SlackBuild
index 32b64c7cf8..bbec3789c8 100644
--- a/network/UDR/UDR.SlackBuild
+++ b/network/UDR/UDR.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for UDR
-# Copyright 2017-2020, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2017-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=UDR
-VERSION=${VERSION:-0.9.4_774f2e7}
-GITVERSION=${GITVERSION:-774f2e76c58feeb09dc5401fdff4207602b6f088}
+VERSION=${VERSION:-0.9.4_578b97a}
+GITVERSION=${GITVERSION:-578b97a35769b6d2a99215d6d013bdf49a144164}
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
diff --git a/network/UDR/UDR.info b/network/UDR/UDR.info
index ed61f84fa5..9918290df8 100644
--- a/network/UDR/UDR.info
+++ b/network/UDR/UDR.info
@@ -1,8 +1,8 @@
PRGNAM="UDR"
-VERSION="0.9.4_774f2e7"
+VERSION="0.9.4_578b97a"
HOMEPAGE="https://github.com/martinetd/UDR"
-DOWNLOAD="https://github.com/martinetd/UDR/archive/774f2e76c58feeb09dc5401fdff4207602b6f088/UDR-774f2e76c58feeb09dc5401fdff4207602b6f088.tar.gz"
-MD5SUM="a046d266b95d113d3cecc8ff505c562f"
+DOWNLOAD="https://github.com/martinetd/UDR/archive/578b97a/UDR-578b97a35769b6d2a99215d6d013bdf49a144164.tar.gz"
+MD5SUM="84dd948f0c20a334492f4dbaa55f68ad"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/acme.sh/acme.sh.SlackBuild b/network/acme.sh/acme.sh.SlackBuild
index 220d05dcfb..f209dd254c 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-2022 Corrado Franco (https://corradofranco.it)
+# Copyright 2019-2023 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.0.4}
+VERSION=${VERSION:-3.0.7}
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 7a08d4f5e7..b1faae45e1 100644
--- a/network/acme.sh/acme.sh.info
+++ b/network/acme.sh/acme.sh.info
@@ -1,8 +1,8 @@
PRGNAM="acme.sh"
-VERSION="3.0.4"
+VERSION="3.0.7"
HOMEPAGE="https://acme.sh/"
-DOWNLOAD="https://github.com/Neilpang/acme.sh/archive/3.0.4/acme.sh-3.0.4.tar.gz"
-MD5SUM="efae4d6a5d0221778b838945fe3e701f"
+DOWNLOAD="https://github.com/Neilpang/acme.sh/archive/3.0.7/acme.sh-3.0.7.tar.gz"
+MD5SUM="1c2284a3f81f7eddc15e24a17d2e365c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/addrwatch/README b/network/addrwatch/README
new file mode 100644
index 0000000000..e8375ae2e7
--- /dev/null
+++ b/network/addrwatch/README
@@ -0,0 +1,17 @@
+addrwatch (arp traffic montor)
+
+This is a tool similar to arpwatch. It main purpose is to monitor a
+network and log discovered ethernet/ip pairings.
+
+Main features of addrwatch:
+
+* IPv4 and IPv6 address monitoring
+* Monitoring multiple network interfaces with one daemon
+* Monitoring of VLAN tagged (802.1Q) packets.
+* Output to stdout, plain text file, syslog, sqlite3 db, MySQL db
+* IP address usage history preserving output/logging
+
+NOTE:
+
+There is a disparity between features listed in the manual and via
+--help.
diff --git a/network/addrwatch/addrwatch.SlackBuild b/network/addrwatch/addrwatch.SlackBuild
new file mode 100644
index 0000000000..773ab622cf
--- /dev/null
+++ b/network/addrwatch/addrwatch.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for addrwatch
+
+# By Dave Woodfall <dave@slackbuilds.org>
+# Licensed under the WTFPL (http://www.wtfpl.net)
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=addrwatch
+VERSION=${VERSION:-1.0.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 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 $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 {} \;
+
+./bootstrap.sh
+
+./configure \
+ --prefix=/usr \
+ --bindir=/usr/sbin \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --enable-sqlite3 \
+ --enable-mysql \
+ --build=$ARCH-slackware-linux
+
+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 {} \;
+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 COPYING NEWS *.md scripts $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+chmod -c -x $PKG/usr/doc/$PRGNAM-$VERSION/scripts/*
+
+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/addrwatch/addrwatch.info b/network/addrwatch/addrwatch.info
new file mode 100644
index 0000000000..ae34ce3ad3
--- /dev/null
+++ b/network/addrwatch/addrwatch.info
@@ -0,0 +1,10 @@
+PRGNAM="addrwatch"
+VERSION="1.0.2"
+HOMEPAGE="https://github.com/fln/addrwatch"
+DOWNLOAD="https://github.com/fln/addrwatch/archive/v1.0.2/addrwatch-1.0.2.tar.gz"
+MD5SUM="ae0262fbf4ecc42ebc7d5cec6d0ad05d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="D Woodfall"
+EMAIL="dave@slackbuilds.org"
diff --git a/network/addrwatch/slack-desc b/network/addrwatch/slack-desc
new file mode 100644
index 0000000000..3f48b186b1
--- /dev/null
+++ b/network/addrwatch/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------------------------------------------------------|
+addrwatch: addrwatch (arp traffic montor)
+addrwatch:
+addrwatch: Main features of addrwatch:
+addrwatch:
+addrwatch: * IPv4 and IPv6 address monitoring
+addrwatch: * Monitoring multiple network interfaces with one daemon
+addrwatch: * Monitoring of VLAN tagged (802.1Q) packets.
+addrwatch: * Output to stdout, plain text file, syslog, sqlite3 db, MySQL db
+addrwatch: * IP address usage history preserving output/logging
+addrwatch:
+addrwatch: https://github.com/fln/addrwatch
diff --git a/network/aircrack-ng/aircrack-ng.SlackBuild b/network/aircrack-ng/aircrack-ng.SlackBuild
index 4de52bcfd7..ab690d470a 100644
--- a/network/aircrack-ng/aircrack-ng.SlackBuild
+++ b/network/aircrack-ng/aircrack-ng.SlackBuild
@@ -26,8 +26,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=aircrack-ng
-VERSION=${VERSION:-1.6}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.7}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/aircrack-ng/aircrack-ng.info b/network/aircrack-ng/aircrack-ng.info
index 25e6a6adbc..0d318507cc 100644
--- a/network/aircrack-ng/aircrack-ng.info
+++ b/network/aircrack-ng/aircrack-ng.info
@@ -1,8 +1,8 @@
PRGNAM="aircrack-ng"
-VERSION="1.6"
+VERSION="1.7"
HOMEPAGE="https://www.aircrack-ng.org"
-DOWNLOAD="https://download.aircrack-ng.org/aircrack-ng-1.6.tar.gz"
-MD5SUM="22ddc85549b51ed0da0931d01ef215e5"
+DOWNLOAD="https://download.aircrack-ng.org/aircrack-ng-1.7.tar.gz"
+MD5SUM="a918ea7146f91d8c799fb770c38f4bec"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/aldryn-client/README b/network/aldryn-client/README
index f7078b5f0e..e0f3b650a4 100644
--- a/network/aldryn-client/README
+++ b/network/aldryn-client/README
@@ -2,4 +2,4 @@ The command-line client for the Aldryn Cloud.
Optional for aldryn gui :
- Kivy
-- pygame
+- python3-pygame
diff --git a/network/amfora-bin/README b/network/amfora-bin/README
new file mode 100644
index 0000000000..d6c1ff3435
--- /dev/null
+++ b/network/amfora-bin/README
@@ -0,0 +1,21 @@
+amfora-bin (gemini client)
+
+Amfora aims to be the best looking Gemini client with the most
+features... all in the terminal. It does not support Gopher or other
+non-Web protocols. It fully passes Sean Conman's client torture test,
+as well as the Egsam one.
+
+This is a repack of the official binary; it does not compile from
+source. Only 32-bit x86, 64-bit x86_64, and 64-bit aarch64 are
+supported.
+
+For aarch64, since there's currently no way to give the aarch64 download
+URL in the .info file, you'll have to download it manually. The file is:
+
+https://github.com/makew0rld/amfora/releases/download/v1.9.2/amfora_1.9.2_linux_arm64
+
+...and its md5sum is: 5f647762170e9e30df6d0744ec8a21bc
+
+Note: currently there is no amfora build that compiles from source.
+If someday someone submits one, be aware that it will likely conflict
+with this build.
diff --git a/network/amfora-bin/amfora-bin.SlackBuild b/network/amfora-bin/amfora-bin.SlackBuild
new file mode 100644
index 0000000000..f285baf99b
--- /dev/null
+++ b/network/amfora-bin/amfora-bin.SlackBuild
@@ -0,0 +1,79 @@
+#!/bin/bash
+
+# Slackware build script for amfora-bin
+
+# 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=amfora-bin
+SRCNAM=amfora
+VERSION=${VERSION:-1.9.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}
+
+EXE=""
+case "$ARCH" in
+ i?86) EXE=${SRCNAM}_${VERSION}_linux_32-bit ;;
+ x86_64) EXE=${SRCNAM}_${VERSION}_linux_64-bit ;;
+ aarch64) EXE=${SRCNAM}_${VERSION}_linux_arm64 ;;
+esac
+
+if [ "$EXE" = "" ]; then
+ cat <<EOF
+===================================================
+Sorry, ARCH="$ARCH" is not supported.
+Only i586, i686, x86_64, and aarch64 are supported.
+===================================================
+EOF
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+install -D -m0755 -oroot -groot $CWD/$EXE usr/bin/$SRCNAM
+
+# the binary includes no docs, icon, desktop, anything else. so
+# they're included with the SlackBuild (taken from the git repo at
+# https://github.com/makew0rld/amfora). amfora.png is a scaled-down
+# copy of logo.png.
+
+install -D -m0644 -oroot -groot \
+ $CWD/amfora.desktop usr/share/applications/amfora.desktop
+install -D -m0644 -oroot -groot \
+ $CWD/amfora.png usr/share/icons/hicolor/64x64/apps/amfora.png
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+install -m0644 -oroot -groot $CWD/docs/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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/amfora-bin/amfora-bin.info b/network/amfora-bin/amfora-bin.info
new file mode 100644
index 0000000000..43fffb5b69
--- /dev/null
+++ b/network/amfora-bin/amfora-bin.info
@@ -0,0 +1,10 @@
+PRGNAM="amfora-bin"
+VERSION="1.9.2"
+HOMEPAGE="https://github.com/makew0rld/amfora/"
+DOWNLOAD="https://github.com/makew0rld/amfora/releases/download/v1.9.2/amfora_1.9.2_linux_32-bit"
+MD5SUM="206e195bde0fbc2990d8be2c476bfa98"
+DOWNLOAD_x86_64="https://github.com/makew0rld/amfora/releases/download/v1.9.2/amfora_1.9.2_linux_64-bit"
+MD5SUM_x86_64="cc8d0f9a519602c9c8a1b96a7f02bec1"
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/amfora-bin/amfora.desktop b/network/amfora-bin/amfora.desktop
new file mode 100644
index 0000000000..ba086ea5d0
--- /dev/null
+++ b/network/amfora-bin/amfora.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Type=Application
+Name=Amfora
+GenericName=Gemini TUI Browser
+Comment=Browse Gemini in the terminal.
+Categories=Network;WebBrowser;ConsoleOnly;
+Keywords=gemini
+Terminal=true
+Exec=amfora %u
+MimeType=x-scheme-handler/gemini;
+Icon=amfora
diff --git a/network/amfora-bin/amfora.png b/network/amfora-bin/amfora.png
new file mode 100644
index 0000000000..099024ee36
--- /dev/null
+++ b/network/amfora-bin/amfora.png
Binary files differ
diff --git a/network/amfora-bin/docs/CHANGELOG.md b/network/amfora-bin/docs/CHANGELOG.md
new file mode 100644
index 0000000000..6381acd535
--- /dev/null
+++ b/network/amfora-bin/docs/CHANGELOG.md
@@ -0,0 +1,332 @@
+# Changelog
+All notable changes to this project will be documented in this file.
+
+The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
+and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+
+## [Unreleased]
+### Added
+- Syntax highlighting for preformatted text blocks with alt text (#252, #263, [wiki page](https://github.com/makeworld-the-better-one/amfora/wiki/Source-Code-Highlighting))
+- [Client certificates](https://github.com/makeworld-the-better-one/amfora/wiki/Client-Certificates) can be restricted to certain paths of a host (#115)
+- `header` config option in `[subscriptions]` to allow disabling the header text on the subscriptions page (#191)
+- Selected link and scroll position stays for non-cached pages (#122)
+- Keybinding to open URL with URL handler instead of configured proxy (#143)
+- `include` theme key to import themes from an external file (#154, #290)
+- Support SOCKS5 proxying by setting `AMFORA_SOCKS5` environment variable (#155)
+- When bookmarking a page, the first level one heading is suggested as the name (#267, #293)
+- Confirmation prompts for URL schemes in new `[url-prompts]` config section (#301, #302)
+
+### Changed
+- Center text automatically, removing `left_margin` from the config (#233)
+- `max_width` defaults to 80 columns instead of 100 (#233)
+- Tabs have the domain of the current page instead of numbers (#202)
+- Closing Amfora with <kbd>q</kbd> was removed in favor of <kbd>Shift-q</kbd> (#243)
+- Paging up or down scrolls by 50% instead of 75%, to match `less` (#303)
+- Update deps, require Go 1.17 (#336)
+- Show local directory index file if available (#319)
+- Updated Project Gemini URLs (#342)
+
+### Fixed
+- Modal can't be closed when opening non-gemini text URLs from the commandline (#283, #284)
+- External programs started by Amfora remain as zombie processes (#219)
+- Prevent link lines (and other types) from being wider than the `max_width` setting (#280)
+- `new:7` on new tab page fails to open link (#306)
+- Slashes aren't decoded in redirect URLs (#322, #324)
+- Typing `localhost` in the bottom bar actually loads localhost instead of searching (#326, #327)
+
+
+## [1.9.2] - 2021-12-10
+### Fixed
+- Preformatted text color showing even when `color = false` (bug since v1.8.0 at least) (#278)
+- Link numbers and link text in color even when `color = false` (regression in v1.9.0) (#278)
+
+
+## [1.9.1] - 2021-12-08
+### Fixed
+- Deadlock when loading an invalid `about:` URL (#277)
+- Crash when rendering text from stdin
+
+
+## [1.9.0] - 2021-12-07
+### Added
+- Support for version 1.1 JSON feeds
+- Copy current URL or selected URL to clipboard (#220, #225)
+ - Uses <kbd>C</kbd> and <kbd>c</kbd> by default
+- Configurable keybindings for scrolling on pages (#211, #222)
+- Ability to save `about:` pages (#210, #236)
+- `bind_beginning` and `bind_end` keybindings
+- Display gemtext from stdin (#205, #242)
+- Specifying `default` in the theme config uses the terminal's default background color, including transparency (#244, #245)
+- Redirects occur automatically if it only adds a trailing slash (#271)
+- Non-gemini links are underlined by default to help color blind users (#189)
+- Text and element colors of default theme change to be black on terminals with light backgrounds (#181)
+- Support paths with spaces in `[url-handlers]` config settings (#214)
+- Display info modal when opening URL with custom application
+- Files can be opened by relative path on the commandline (#231, #257)
+- Support keybindings that use <kbd>Shift</kbd> (#269)
+
+### Changed
+- Bookmarks are stored using XML in the XBEL format, old bookmarks are transferred (#68)
+- Text no longer disappears under the left margin when scrolling (regression in v1.8.0) (#197)
+- Default search engine changed to geminispace.info from gus.guru
+- The user's terminal theme colors are used by default (#181)
+- By default, non-gemini URI schemes are opened in the default application. This requires a config change for previous users, see the [wiki](https://github.com/makeworld-the-better-one/amfora/wiki/Handling-Other-URL-Schemes) (#207)
+- Windows uses paths set by `XDG` variables over `APPDATA` if they are set (#255)
+- Treat status codes like 22 as equivalent to 20 as per the latest spec (#266)
+- Show minimal loading page instead of `about:newtab` when loading a URL in a new tab (#272)
+
+## Removed
+- Favicon support (#199)
+- The default Amfora theme, get it back [here](https://github.com/makeworld-the-better-one/amfora/blob/master/contrib/themes/amfora.toml) (#181)
+
+### Fixed
+- Help text is now the same color as `regular_text` in the theme config
+- Non-ASCII (multibyte) characters can now be used as keybindings (#198, #200)
+- Possible subscription update race condition on startup
+- Plaintext documents are escaped properly (regression in v1.8.0)
+- Help page scrollbar color matches what's in the theme config
+- Regression where lists would not appear if `bullets = false` (#234, #235)
+- Support multiple bookmarks with the same name
+- Cert change message grammar: "an security" -> "a security" (#274)
+- Display an error modal for status codes that can't be handled
+- Prevent user from getting trapped in the help menu when keybindings are pressed (#241, #261)
+
+
+## [1.8.0] - 2021-02-17
+### Added
+- **Media type handlers** - open non-text files in another application (#121, #134)
+- Ability to set custom keybindings in config (#135)
+- Added scrollbar, by default only appears on pages that go off-screen (#89, #107)
+- More internal about pages, see `about:about` (#160, #187)
+
+### Changed
+- Update cview to `d776e728ef6d2a9990a5cd86a70b31f0678613e2` for large performance and feature updates (#107)
+- Update to tcell v2 (dependency of cview)
+- Display page even if mediatype params are malformed (#141)
+- Sensitive input fields (status code 11) display with asterisks over the text (#106)
+
+### Fixed
+- Don't use cache when URL is typed in bottom bar (#159)
+- Fix downloading of pages that are too large or timed out
+- `about:` URLs can be typed into the bottom bar (#167)
+- Bookmarks modal closes on ESC like the others (#173)
+- Handle empty META string (#176)
+- Whitespace around the URL entered in the bottom bar is stripped (#184)
+- Don't break visiting IPv6 hosts when port 1965 is specified (#195)
+- More reliable start, no more flash of unindented text, or text that stays unindented (#107)
+- Pages with ANSI resets don't use the terminal's default text and background colors (#107)
+- ANSI documents don't leak color into the left margin (#107)
+- Rendering very long documents is now ~96% faster, excluding gemtext parsing (#26, #107)
+- Due to that same change, less memory is used per-page (#26, #107)
+
+
+## [1.7.2] - 2020-12-21
+### Fixed
+- Viewing subscriptions after subscribing to a certain user page won't crash Amfora (#157)
+
+
+## [1.7.1] - 2020-12-21
+### Fixed
+- Fixed bug that caused Amfora to crash when subscribing to a page (#151)
+
+
+## [1.7.0] - 2020-12-20
+### Added
+- **Subscriptions** to feeds and page changes (#61)
+- Opening local files with `file://` URIs (#103, #117)
+- `show_link` option added in config to optionally see the URL (#133)
+- Support for Unicode in domain names (IDNs)
+- Unnecessarily encoded characters in URLs will be decoded (#138)
+- URLs are NFC-normalized before any processing (#138)
+- Links to the wiki in the new tab
+- Cache times out after 30 minutes by default (#110)
+- `about:version` page (#126)
+
+### Changed
+- Updated [go-gemini](https://github.com/makeworld-the-better-one/go-gemini) to v0.11.0
+ - Supports CN-only wildcard certs
+ - Time out when header takes too long
+- Preformatted text is now light yellow by default
+- Downloading a file no longer uses a second request
+- You can go back to the new tab page in history (#96)
+
+### Fixed
+- Single quotes are used in the default config for commands and paths so that Windows paths with backslashes will be parsed correctly
+- Downloading now uses proxies when appropriate
+- User-entered URLs with invalid characters will be percent-encoded (#138)
+- Custom downloads dir is actually used (#148)
+- Empty quote lines no longer disappear
+
+
+## [1.6.0] - 2020-11-04
+### Added
+- **Support client certificates** through config (#112)
+- `ansi` config setting, to disable ANSI colors in pages (#79, #86)
+- Edit current URL with <kbd>e</kbd> (#87)
+- If `emoji_favicons` is enabled, new bookmarks will have the domain's favicon prepended (#69, #90)
+- The `BROWSER` env var is now also checked when opening web links on Unix (#93)
+- More accurate error messages based on server response code
+
+### Changed
+- Disabling the `color` config setting also disables ANSI colors in pages (#79, #86)
+- Updated [go-isemoji](https://github.com/makeworld-the-better-one/go-isemoji) to v1.1.0 to support Emoji 13.1 for favicons
+- The web browser code doesn't check for Xorg anymore, just display variables (#93)
+- Bookmarks can be made to non-gemini URLs (#94)
+- Remove pointless directory fallbacks (#101)
+- Don't load page from cache when redirected to it (#114)
+
+### Fixed
+- XDG user dir file is parsed instead of looking for XDG env vars (#97, #100)
+- Support paths with spaces in HTTP browser config setting (#77)
+- Clicking "Change" on an existing bookmark without changing the text no longer removes it (#91)
+- Display HTTP Error if "Open In Portal" fails (#81)
+- Support ANSI color codes again, but only in preformatted blocks (#59)
+- Make the `..` command work lke it used to in v1.4.0
+
+
+## [1.5.0] - 2020-09-01
+### Added
+- **Proxy support** - see the `[proxies]` section in the config (#66, #80)
+- **Emoji favicons** can now be seen if `emoji_favicons` is enabled in the config (#62)
+- `shift_numbers` key in the config was added, so that non US keyboard users can navigate tabs (#64)
+- <kbd>F1</kbd> and <kbd>F2</kbd> keys for navigating to the previous and next tabs (#64)
+- Resolving any relative path (starts with a `.`) in the bottom bar is supported, not just `..` (#71)
+- You can now set external programs in the config to open other schemes, like `gopher://` or `magnet:` (#74)
+- Auto-redirecting can be enabled - redirect within Gemini up to 5 times automatically (#75)
+- Help page now documents paging keys (#78)
+- The new tab page can be customized by creating a gemtext file called `newtab.gmi` in the config directory (#67, #83)
+
+### Changed
+- Update to [go-gemini](https://github.com/makeworld-the-better-one/go-gemini) v0.8.4
+
+### Fixed
+- Two digit (and higher) link texts are now in line with one digit ones (#60)
+- Race condition when reloading pages that could have caused the cache to still be used
+- Prevent panic (crash) when the server sends an error with an empty meta string (#73)
+- URLs with with colon-only schemes (like `mailto:`) are properly recognized
+- You can no longer navigate through the history when the help page is open (#55, #78)
+
+
+## [1.4.0] - 2020-07-28
+### Added
+- **Theming** - check out [default-config.toml](./default-config.toml) for details (#46)
+- <kbd>Tab</kbd> now also enters link selecting mode, like <kbd>Enter</kbd> (#48)
+- Number keys can be pressed to navigate to links 1 through 10 (#47)
+- Permanent redirects are cached for the session (#22)
+- `.ansi` is also supported for `text/x-ansi` files, as well as the already supported `.ans`
+
+### Changed
+- Documented <kbd>Ctrl-C</kbd> as "Hard quit"
+- Updated [cview](https://gitlab.com/tslocum/cview/) to latest commit: `cc7796c4ca44e3908f80d93e92e73694562d936a`
+- The bottom bar label now uses the same color as the tabs at the top
+- Tab and blue link colors were changed very slightly to be part of the 256 Xterm colors, for better terminal support
+
+### Fixed
+- You can't change link selection while the page is loading
+- Only one request is made for each URL - `v1.3.0` accidentally made two requests each time (#50)
+- Using the `..` command doesn't keep the query string (#49)
+- Any error that occurs when downloading a file will be displayed, and the partially downloaded file will be deleted
+- Allow for opening a new tab while the current one is loading
+- Pressing Escape after typing in the bottom bar no longer jumps you back to the top of the page
+- Repeated redirects where the last one is cancelled by the user doesn't leave the `Loading...` text in the bottom bar (#53)
+
+
+## [1.3.0] - 2020-07-10
+### Added
+- **Downloading content** (#38)
+- Configurable page size limit - `page_max_size` in config (#30)
+- Configurable page timeout - `page_max_time` in config
+- Link and heading lines are wrapped just like regular text lines
+- Wrapped list items are indented to stay behind the bullet (#35)
+- Certificate expiry date is stored when the cert IDs match (#39)
+- What link was selected is remembered as you browse through history
+- Render ANSI codes in `text/x-ansi` pages, or text pages that end with `.ans` (#45)
+
+### Changed
+- Pages are rewrapped dynamically, whenever the terminal size changes (#33)
+- TOFU warning message mentions how long the previous cert was still valid for (#34)
+
+### Fixed
+- Many potential network and display race conditions eliminated
+- Whether a tab is loading stays indicated when you switch away from it and go back
+- Plain text documents are displayed faithfully (there were some edge conditions)
+- Opening files in portal.mozz.us uses the `http` setting in the config (#42)
+
+
+## [1.2.0] - 2020-07-02
+### Added
+- Alt-Left and Alt-Right for history navigation (#23)
+- You can type `..` in the bottom bar to go up a directory in the URL (#21)
+- Error popup for when input string would result in a too long out-of-spec URL (#25)
+- Paging, using <kbd>d</kbd> and <kbd>u</kbd>, as well as <kbd>Page Up</kbd> and <kbd>Page Down</kbd> (#19)
+- <kbd>Esc</kbd> can exit link highlighting mode (#24)
+- Selected link URL is displayed in the bottom bar (#24)
+- Pressing <kbd>Ctrl-T</kbd> with a link selected opens it in a new tab (#27)
+- Writing `new:N` in the bottom bar will open link number N in a new tab (#27)
+- Quote lines are now in italics (#28)
+
+### Changed
+- Bottom bar now says `URL/Num./Search: ` when space is pressed
+- Update to [go-gemini](https://github.com/makeworld-the-better-one/go-gemini) v0.6.0
+- Help layout doesn't have borders anymore
+- Pages with query strings are still cached (#29)
+- URLs or searches typed in the bottom bar are not loaded from the cache (#29)
+
+### Fixed
+- Actual unicode bullet symbol is used for lists: U+2022
+- Performance when loading very long cached pages improved (#26)
+- Doesn't crash when wrapping certain complex lines (#20)
+- Input fields are always in focus when they appear (#5)
+- Reloading the new tab page doesn't cause an error popup
+- Help table cells are hardwrapped so the text can still be read entirely on an 80-column terminal
+- New tab text is wrapped to terminal width like other pages (#31)
+- TOFU "continue anyway" popup has a question mark at the end
+
+
+## [1.1.0] - 2020-06-24
+### Added
+- **Bookmarks** (#10)
+- **Support over 55 charsets** (#3)
+- **Search using the bottom bar**
+- Add titles to all modals
+- Store ports in TOFU database (#7)
+- Search from bottom bar
+- Wrapping based on terminal width (#1)
+- `left_margin` config option (#1)
+- Right margin for text (#1)
+- Desktop entry file
+- Option to continue anyway when cert doesn't match TOFU database
+- Display all `text/*` documents, not just gemini and plain (#12)
+- Prefer XDG environment variables if they're set, to specify config dir, etc (#11)
+- Version and help commands - `-v`, `--version`, `--help`, `-h` (#14)
+
+### Changed
+- Connection timeout is 15 seconds (was 5s)
+- Hash `SubjectPublicKeyInfo` for TOFU instead (#7)
+- `wrap_width` config option became `max_width` (#1)
+- Make the help table look better
+
+### Removed
+- Opening multiple URLs from the command line
+
+### Fixed
+- Reset bottom bar on error / invalid URL
+- Side scrolling doesn't cut off text on the left side (#1)
+- Mark status code 21 as invalid
+- Bottom bar is not in focus after clicking Enter
+- Badly formed links on pages can no longer crash the browser
+- Disabling color in config affects UI elements (#16)
+- Keep bold for headings even with color disabled
+- Don't make whole link text bold when color is disabled
+- Get domain from URL for TOFU, not from certificate
+
+
+## [1.0.0] - 2020-06-18
+Initial release.
+
+### Added
+- Tabbed browsing
+- TOFU
+- Styled content
+- Basic history for each tab
+- Input
diff --git a/network/amfora-bin/docs/LICENSE b/network/amfora-bin/docs/LICENSE
new file mode 100644
index 0000000000..f288702d2f
--- /dev/null
+++ b/network/amfora-bin/docs/LICENSE
@@ -0,0 +1,674 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program 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 General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ <program> Copyright (C) <year> <name of author>
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<https://www.gnu.org/licenses/>.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+<https://www.gnu.org/licenses/why-not-lgpl.html>.
diff --git a/network/amfora-bin/docs/NOTES.md b/network/amfora-bin/docs/NOTES.md
new file mode 100644
index 0000000000..d321e3f55a
--- /dev/null
+++ b/network/amfora-bin/docs/NOTES.md
@@ -0,0 +1,15 @@
+# Notes
+
+## Issues
+- URL for each tab should not be stored as a string - in the current code there's lots of reparsing the URL
+
+## Upstream Bugs
+- Bookmark keys aren't deleted, just set to `""`
+ - Waiting on [this viper PR](https://github.com/spf13/viper/pull/519) to be merged
+- [ANSI conversion is messed up](https://code.rocketnine.space/tslocum/cview/issues/48)
+- [WordWrap is broken in some cases](https://code.rocketnine.space/tslocum/cview/issues/27) - close #156 if this is fixed
+- [Prevent panic when reformatting](https://code.rocketnine.space/tslocum/cview/issues/50) - can't reliably reproduce or debug
+- [Unicode bullet symbol mask causes issues with PasswordInput](https://code.rocketnine.space/tslocum/cview/issues/55)
+
+
+## Upstream PRs
diff --git a/network/amfora-bin/docs/README.md b/network/amfora-bin/docs/README.md
new file mode 100644
index 0000000000..4a73792c99
--- /dev/null
+++ b/network/amfora-bin/docs/README.md
@@ -0,0 +1,175 @@
+# Amfora
+
+<img src="logo.png" alt="amphora logo" width="30%">
+<h6>Image modified from: amphora by Alvaro Cabrera from the Noun Project</h6>
+
+
+[![go reportcard](https://goreportcard.com/badge/github.com/makeworld-the-better-one/amfora)](https://goreportcard.com/report/github.com/makeworld-the-better-one/amfora)
+[![license GPLv3](https://img.shields.io/github/license/makeworld-the-better-one/amfora)](https://www.gnu.org/licenses/gpl-3.0.en.html)
+
+<a href="https://raw.githubusercontent.com/makeworld-the-better-one/amfora/master/demo-large.gif">
+<img src="demo-large.gif" alt="Demo GIF" width="80%">
+</a>
+
+###### Recording of v1.0.0
+
+Amfora aims to be the best looking [Gemini](https://geminiquickst.art/) client with the most features... all in the terminal. It does not support Gopher or other non-Web protocols - check out [Bombadillo](http://bombadillo.colorfield.space/) for that.
+
+It also aims to be completely cross platform, with full Windows support. If you're on Windows, I would not recommend using the default terminal software. Use [Windows Terminal](https://www.microsoft.com/en-us/p/windows-terminal/9n0dx20hk701) instead, and make sure it [works with UTF-8](https://akr.am/blog/posts/using-utf-8-in-the-windows-terminal). Note that some of the application colors might not display correctly on Windows, but all functionality will still work.
+
+It fully passes Sean Conman's client torture test, as well as the Egsam one.
+
+## Project Status
+
+Amfora is in maintenance mode. When possible, I’ll make/merge bug fixes, and maybe slowly merge feature PRs by others. See my [blog post](https://www.makeworld.space/2023/08/bye_gemini.html) for details.
+
+## Installation
+
+### Binary
+
+Download a binary from the [releases](https://github.com/makeworld-the-better-one/amfora/releases) page. On Unix-based systems you will have to make the file executable with `chmod +x <filename>`. You can rename the file to just `amfora` for easy access, and move it to `/usr/local/bin/`.
+
+On Windows, make sure you click "Advanced > Run anyway" after double-clicking, or something like that.
+
+Unix systems can install the desktop entry file to get Amfora to appear when they search for applications:
+```bash
+curl -sSL https://raw.githubusercontent.com/makeworld-the-better-one/amfora/master/amfora.desktop -o ~/.local/share/applications/amfora.desktop
+update-desktop-database ~/.local/share/applications
+```
+
+Make sure to click "Watch" in the top right, then "Custom" > "Releases" to get notified about new releases!
+
+
+### Linux
+
+<a href="https://repology.org/project/amfora/versions">
+ <img src="https://repology.org/badge/vertical-allrepos/amfora.svg" alt="Packaging status" align="right">
+</a>
+
+Amfora is packaged in many Linux distros. It's also on [Scoop](https://scoop.sh/) for Windows users.
+
+### macOS (Homebrew)
+
+If you use [Homebrew](https://brew.sh/), you can install Amfora with:
+```
+brew install amfora
+```
+You can update it with:
+```
+brew upgrade amfora
+```
+
+### macOS (MacPorts)
+
+On macOS, Amfora can also be installed through [MacPorts](https://www.macports.org):
+```
+sudo port install amfora
+```
+You can update it with:
+```
+sudo port selfupdate
+sudo port upgrade amfora
+```
+**NOTE:** this installation source is community-maintained. More information [here](https://ports.macports.org/port/amfora/).
+
+### Termux
+
+If you're using [Termux](https://termux.com/) on Android you can't just run Amfora like normal. After installing Amfora, run `pkg install proot`. Then run `termux-chroot` before running the Amfora binary. You can exit out of the chroot after closing Amfora. See [here](https://stackoverflow.com/q/38959067/7361270) for why this is needed.
+
+### From Source
+
+This section is for advanced users who want to install the latest (possibly unstable) version of Amfora.
+
+<details>
+<summary>Click to expand</summary>
+
+**Requirements:**
+- Go 1.15 or later
+- GNU Make
+
+Please note the Makefile does not intend to support Windows, and so there may be issues.
+
+```shell
+git clone https://github.com/makeworld-the-better-one/amfora
+cd amfora
+# git checkout v1.2.3 # Optionally pin to a specific version instead of the latest commit
+make # Might be gmake on macOS
+sudo make install # If you want to install the binary for all users
+```
+
+Because you installed with the Makefile, running `amfora -v` will tell you exactly what commit the binary was built from.
+
+Arch Linux users can also install the latest commit of Amfora from the AUR. It has the package name `amfora-git`, and is maintained by @lovetocode999
+
+```
+yay -S amfora-git
+```
+
+MacOS users can also use [Homebrew](https://brew.sh/) to install the latest commit of Amfora:
+
+```
+brew install --HEAD amfora
+```
+You can update it with:
+```
+brew upgrade --fetch-HEAD amfora
+```
+
+</details>
+
+
+## Features / Roadmap
+Features in *italics* are in the master branch, but not in the latest release.
+
+- [x] URL browsing with TOFU and error handling
+- [x] Tabbed browsing
+- [x] Support ANSI color codes on pages, even for Windows
+- [x] Styled page content (headings, links)
+- [x] Basic forward/backward history, for each tab
+- [x] Input (Status Code 10 & 11)
+- [x] Multiple charset support (over 55)
+- [x] Built-in search (uses geminispace.info by default)
+- [x] Bookmarks
+- [x] Download pages and arbitrary data
+- [x] Theming
+ - Check out the [user contributed themes](https://github.com/makeworld-the-better-one/amfora/tree/master/contrib/themes)!
+- [x] Proxying
+ - Schemes like Gopher or HTTP can be proxied through a Gemini server
+- [x] Client certificate support
+ - [ ] Full client certificate UX within the client
+ - Create transient and permanent certs within the client, per domain
+ - Manage and browse them
+ - Similar to [Kristall](https://github.com/MasterQ32/kristall)
+ - https://lists.orbitalfox.eu/archives/gemini/2020/001400.html
+- [x] Subscriptions
+ - Subscribing to RSS, Atom, and [JSON Feeds](https://jsonfeed.org/) are all supported
+ - So is subscribing to a page, to know when it changes
+- [x] Open non-text files in another application
+ - [x] Ability to stream content instead of downloading it first
+- [x] *Highlighting of preformatted code blocks that list a language in the alt text*
+- [ ] Stream support
+- [ ] Table of contents for pages
+- [ ] Search in pages with <kbd>Ctrl-F</kbd>
+- [ ] Persistent history
+
+
+## Usage & Configuration
+Please see [the wiki](https://github.com/makeworld-the-better-one/amfora/wiki) for an introduction on how to use Amfora and configure it.
+
+## Libraries
+Amfora ❤️ open source!
+
+- [cview](https://code.rocketnine.space/tslocum/cview) for the TUI
+ - It's a fork of [tview](https://github.com/rivo/tview) with PRs merged and active support
+ - It uses [tcell](https://github.com/gdamore/tcell) for low level terminal operations
+- [Viper](https://github.com/spf13/viper) for configuration and TOFU storing
+- [go-gemini](https://github.com/makeworld-the-better-one/go-gemini), my forked and updated Gemini client/server library
+- [progressbar](https://github.com/schollz/progressbar)
+- [go-humanize](https://github.com/dustin/go-humanize)
+- [gofeed](https://github.com/mmcdole/gofeed)
+- [chroma](https://github.com/alecthomas/chroma) for source code syntax highlighting
+- [clipboard](https://github.com/atotto/clipboard)
+- [termenv](https://github.com/muesli/termenv)
+
+## License
+This project is licensed under the GPL v3.0. See the [LICENSE](./LICENSE) file for details.
diff --git a/network/amfora-bin/docs/THANKS.md b/network/amfora-bin/docs/THANKS.md
new file mode 100644
index 0000000000..2ba5025e4e
--- /dev/null
+++ b/network/amfora-bin/docs/THANKS.md
@@ -0,0 +1,32 @@
+# THANKS
+
+Thank you to the following contributors, who have helped make Amfora great. FOSS projects are a community effort, and we would be worse off without you.
+
+* Sotiris Papatheodorou (@sotpapathe)
+* Chloe Kudryavtsev (@CosmicToast)
+* Adrian Hesketh (@a-h)
+* Jansen Price (@sumpygump)
+* Alex Wennerberg (@alexwennerberg)
+* Timur Ismagilov (@bouncepaw)
+* Matt Caroll (@ohiolab)
+* Patryk Niedźwiedziński (@pniedzwiedzinski)
+* Trevor Slocum (@tsclocum)
+* Mattias Jadelius (@jedthehumanoid)
+* Lokesh Krishna (@lokesh-krishna)
+* Jeff (@phaedrus-jaf)
+* Stephen Robinson (@sudobash1)
+* Peter Steinberg (@objectliteral)
+* Thomas Adam (@ThomasAdam)
+* @lostleonardo
+* Himanshu (@singalhimanshu)
+* @regr4
+* Anas Mohamed (@amohamed11)
+* David Jimenez (@dvejmz)
+* Michael McDonagh (@m-mcdonagh)
+* mooff (@awfulcooking)
+* Josias (@justjosias)
+* mntn (@mntn-xyz)
+* Maxime Bouillot (@Arkaeriit)
+* Emily (@emily-is-my-username)
+* Autumn! (@autumnull)
+* William Rehwinkel (@FiskFan1999)
diff --git a/network/opera-legacy/doinst.sh b/network/amfora-bin/doinst.sh
index 0fb9c8b686..65c7e2eeb9 100644
--- a/network/opera-legacy/doinst.sh
+++ b/network/amfora-bin/doinst.sh
@@ -2,13 +2,8 @@ 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/tahoe-lafs/slack-desc b/network/amfora-bin/slack-desc
index 97dfb4e23e..134aa428c6 100644
--- a/network/tahoe-lafs/slack-desc
+++ b/network/amfora-bin/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-tahoe-lafs: tahoe-lafs (Secure File Store)
-tahoe-lafs:
-tahoe-lafs: Tahoe, the Least-Authority File Store.
-tahoe-lafs: Tahoe-LAFS is a secure, decentralized, file store. The file store
-tahoe-lafs: is encrypted and spread over multiple peers in such a way that it
-tahoe-lafs: remains available even when some of the peers are unavailable,
-tahoe-lafs: malfunctioning, or malicious.
-tahoe-lafs:
-tahoe-lafs: Homepage: https://tahoe-lafs.org/
-tahoe-lafs:
-tahoe-lafs:
+amfora-bin: amfora-bin (gemini client)
+amfora-bin:
+amfora-bin: Amfora aims to be the best looking Gemini client with the most
+amfora-bin: features... all in the terminal. It does not support Gopher or other
+amfora-bin: non-Web protocols. It fully passes Sean Conman's client torture test,
+amfora-bin: as well as the Egsam one.
+amfora-bin:
+amfora-bin:
+amfora-bin:
+amfora-bin:
+amfora-bin:
diff --git a/network/ani-cli/README b/network/ani-cli/README
new file mode 100644
index 0000000000..c475d27b95
--- /dev/null
+++ b/network/ani-cli/README
@@ -0,0 +1,9 @@
+ani-cli is an cli tool to browse and watch anime alone
+and with friends.This tool scrapes the site allanime.
+
+If you encounter No results found and are sure the
+prompt was correct or any breaking issue, then make
+sure you are on latest version by typing
+sudo ani-cli -U to update on Linux.
+If after this the issue persists then open an
+issue with upstream developer.
diff --git a/network/ani-cli/ani-cli.SlackBuild b/network/ani-cli/ani-cli.SlackBuild
new file mode 100644
index 0000000000..4ea355891d
--- /dev/null
+++ b/network/ani-cli/ani-cli.SlackBuild
@@ -0,0 +1,75 @@
+#!/bin/bash
+
+# Slackware build script for ani-cli
+
+# Copyright 2022-2024 Vijay Marcel
+# 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=ani-cli
+VERSION=${VERSION:-4.8}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+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
+trap 'echo "$0 FAILED at line $LINENO!" | tee -a $OUTPUT/error-${PRGNAM}.log' ERR
+
+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 {} \;
+
+install -D -m755 $TMP/$PRGNAM-$VERSION/ani-cli -t $PKG/usr/bin/
+install -D -m644 $TMP/$PRGNAM-$VERSION/ani-cli.1 -t $PKG/usr/man/man1/
+
+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 disclaimer.md LICENSE README.md hacking.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 0644 {} \+
+
+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/ani-cli/ani-cli.info b/network/ani-cli/ani-cli.info
new file mode 100644
index 0000000000..4f32cf4d53
--- /dev/null
+++ b/network/ani-cli/ani-cli.info
@@ -0,0 +1,10 @@
+PRGNAM="ani-cli"
+VERSION="4.8"
+HOMEPAGE="https://github.com/pystardust/ani-cli"
+DOWNLOAD="https://github.com/pystardust/ani-cli/archive/v4.8/ani-cli-4.8.tar.gz"
+MD5SUM="5111c94ff8b032192774e22da5494db2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="aria2 yt-dlp fzf mpv"
+MAINTAINER="Vijay Marcel"
+EMAIL="vijaymarcel@outlook.com"
diff --git a/network/ani-cli/changelog b/network/ani-cli/changelog
new file mode 100644
index 0000000000..d184ac9f4b
--- /dev/null
+++ b/network/ani-cli/changelog
@@ -0,0 +1,13 @@
+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.
diff --git a/network/Flootty/slack-desc b/network/ani-cli/slack-desc
index f2f62f7e3d..e91701f969 100644
--- a/network/Flootty/slack-desc
+++ b/network/ani-cli/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-Flootty: Flootty (Floobits collaborative terminal)
-Flootty:
-Flootty: Flootty will automatically attempt to join a workspace without
-Flootty: specifying the term name if there is only one terminal.
-Flootty:
-Flootty: Homepage: https://floobits.com
-Flootty:
-Flootty:
-Flootty:
-Flootty:
-Flootty:
+ani-cli: ani-cli (Watch Anime in Terminal)
+ani-cli:
+ani-cli: ani-cli is an cli tool to browse and watch anime alone
+ani-cli: and with friends. This tool scrapes the site animixplay.
+ani-cli:
+ani-cli:
+ani-cli:
+ani-cli: Homepage:https://github.com/pystardust/ani-cli
+ani-cli:
+ani-cli:
+ani-cli:
diff --git a/network/anydesk/anydesk.SlackBuild b/network/anydesk/anydesk.SlackBuild
index fac8bb58a7..121bae5b0d 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.2.0}
+VERSION=${VERSION:-6.3.0}
BUILD=${BUILD:-1}
RPMBUILD=${RPMBUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/anydesk/anydesk.info b/network/anydesk/anydesk.info
index c7d12d5c37..11fb824470 100644
--- a/network/anydesk/anydesk.info
+++ b/network/anydesk/anydesk.info
@@ -1,10 +1,10 @@
PRGNAM="anydesk"
-VERSION="6.2.0"
+VERSION="6.3.0"
HOMEPAGE="https://anydesk.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://download.anydesk.com/linux/anydesk_6.2.0-1_x86_64.rpm"
-MD5SUM_x86_64="767bd49c113c6b8c9d04b3423e4d183e"
+DOWNLOAD_x86_64="https://download.anydesk.com/linux/anydesk_6.3.0-1_x86_64.rpm"
+MD5SUM_x86_64="2c3d1e7d55c46332ad8a20105f6929f3"
REQUIRES="gtkglext lsb-release"
MAINTAINER="Reza Talebi"
EMAIL="reza.talebi.73@outlook.com"
diff --git a/network/argus/argus.SlackBuild b/network/argus/argus.SlackBuild
index ba81068225..c61a16af31 100644
--- a/network/argus/argus.SlackBuild
+++ b/network/argus/argus.SlackBuild
@@ -2,12 +2,12 @@
# Slackware build script for Argus
# Written by R. Bailey <GooseYArd@gmail.com>
-# Emmanuel N. Millan <emmanueln@gmail.com> - 2018
+# Emmanuel N. Millan <emmanueln@gmail.com> - 2018-2024
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=argus
-VERSION=${VERSION:-3.0.8.2}
+VERSION=${VERSION:-3.0.8.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,6 +86,7 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
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
+rm -rf $PKG/usr/argus
mkdir -p $PKG/etc
cp -a support/Config/argus.conf $PKG/etc/argus.conf.new
diff --git a/network/argus/argus.info b/network/argus/argus.info
index 33c6a56cb6..ab7439703d 100644
--- a/network/argus/argus.info
+++ b/network/argus/argus.info
@@ -1,8 +1,8 @@
PRGNAM="argus"
-VERSION="3.0.8.2"
+VERSION="3.0.8.4"
HOMEPAGE="http://www.qosient.com/argus/index.shtml"
-DOWNLOAD="http://qosient.com/argus/src/argus-3.0.8.2.tar.gz"
-MD5SUM="eaf5f5ec66569e556392802a70ef9ca5"
+DOWNLOAD="https://github.com/openargus/argus/archive/v3.0.8.4/argus-3.0.8.4.tar.gz"
+MD5SUM="4d906fe4e21372783e7c213486722b66"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/argus/rc.argus.patch b/network/argus/rc.argus.patch
index eb42fda952..ce2541ff28 100644
--- a/network/argus/rc.argus.patch
+++ b/network/argus/rc.argus.patch
@@ -1,6 +1,6 @@
---- support/Startup/argus.orig 2010-07-06 11:23:38.032000082 -0400
-+++ support/Startup/argus 2010-07-06 11:27:15.466000084 -0400
-@@ -43,17 +43,17 @@
+--- support/Startup/argus.orig 2024-04-16 14:24:23.066973888 -0300
++++ support/Startup/argus 2024-04-16 14:25:50.591966998 -0300
+@@ -48,17 +48,17 @@
fi
# Source networking configuration.
@@ -8,8 +8,8 @@
+#. /etc/sysconfig/network
# Check that networking is up.
--[ ${NETWORKING} = "no" ] && exit 1
-+# [ ${NETWORKING} = "no" ] && exit 1
+-[ .${NETWORKING} = ."no" ] && exit 1
++#[ .${NETWORKING} = ."no" ] && exit 1
# Set argus path by defining $ARGUSHOME for this script.
@@ -21,12 +21,3 @@
ARGUSHOME=$ARGUSDIR
export PATH=$ARGUSHOME:$PATH
-@@ -71,7 +71,7 @@
- then
- mkdir /var/log/argus
- fi
-- argus -de `hostname` -w /var/log/argus/argus.out \
-+ argus -p -de `hostname` -w /var/log/argus/argus.out \
- > /dev/null 2>&1
- RETVAL=$?
- else
diff --git a/network/aria2/aria2.SlackBuild b/network/aria2/aria2.SlackBuild
index 403c88258b..b5490d1c1e 100644
--- a/network/aria2/aria2.SlackBuild
+++ b/network/aria2/aria2.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=aria2
-VERSION=${VERSION:-1.36.0}
+VERSION=${VERSION:-1.37.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/aria2/aria2.info b/network/aria2/aria2.info
index 95c40ecdbc..a3b09575fc 100644
--- a/network/aria2/aria2.info
+++ b/network/aria2/aria2.info
@@ -1,8 +1,8 @@
PRGNAM="aria2"
-VERSION="1.36.0"
+VERSION="1.37.0"
HOMEPAGE="https://aria2.github.io/"
-DOWNLOAD="https://github.com/aria2/aria2/releases/download/release-1.36.0/aria2-1.36.0.tar.xz"
-MD5SUM="f11ff410bbe00385b4a1b20d22aa2598"
+DOWNLOAD="https://github.com/aria2/aria2/releases/download/release-1.37.0/aria2-1.37.0.tar.xz"
+MD5SUM="dd00565c2f671331735089e6b807ece0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/armcord/README b/network/armcord/README
new file mode 100644
index 0000000000..f723a315a6
--- /dev/null
+++ b/network/armcord/README
@@ -0,0 +1,4 @@
+armcord (Discord custom client)
+
+armcord is a custom client designed to enhance your Discord
+experience while keeping everything lightweight.
diff --git a/network/armcord/armcord.SlackBuild b/network/armcord/armcord.SlackBuild
new file mode 100644
index 0000000000..658c50305e
--- /dev/null
+++ b/network/armcord/armcord.SlackBuild
@@ -0,0 +1,87 @@
+#!/bin/bash
+
+# Slackware build script for armcord
+#
+#~ # Copyright 2022-2023 Matthew Miller <mattallmill@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=armcord
+SRCNAM=ArmCord
+VERSION=${VERSION:-3.2.6}
+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}
+
+set -eu
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar x $CWD/${SRCNAM}_${VERSION}_amd64.deb data.tar.xz
+tar xvf $PKG/data.tar.xz
+rm $PKG/data.tar.xz
+
+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/bin
+( cd $PKG/usr/bin ; ln -sf /opt/$SRCNAM/$PRGNAM $PRGNAM )
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Don't need these:
+rm -rf $PKG/usr/share/doc $PKG/usr/share/lintian
+
+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/armcord/armcord.desktop b/network/armcord/armcord.desktop
new file mode 100644
index 0000000000..a577c0fc48
--- /dev/null
+++ b/network/armcord/armcord.desktop
@@ -0,0 +1,8 @@
+[Desktop Entry]
+Encoding=UTF-8
+Version=1.0
+Type=ArmCord
+Terminal=false
+Exec=/usr/local/bin/armcord
+Name=armcord
+Icon=/usr/share/icons/armcord_icon.png \ No newline at end of file
diff --git a/network/armcord/armcord.info b/network/armcord/armcord.info
new file mode 100644
index 0000000000..13005d28c0
--- /dev/null
+++ b/network/armcord/armcord.info
@@ -0,0 +1,10 @@
+PRGNAM="armcord"
+VERSION="3.2.6"
+HOMEPAGE="https://github.com/ArmCord/ArmCord"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/ArmCord/ArmCord/releases/download/v3.2.6/ArmCord_3.2.6_amd64.deb"
+MD5SUM_x86_64="cd0e07b149506c8d19d01005c51324b0"
+REQUIRES=""
+MAINTAINER="Matthew Miller"
+EMAIL="mattallmill@gmail.com"
diff --git a/network/armcord/armcord_icon.png b/network/armcord/armcord_icon.png
new file mode 100644
index 0000000000..70c0b83a96
--- /dev/null
+++ b/network/armcord/armcord_icon.png
Binary files differ
diff --git a/network/midori/doinst.sh b/network/armcord/doinst.sh
index 4a25de5e6f..4a25de5e6f 100644
--- a/network/midori/doinst.sh
+++ b/network/armcord/doinst.sh
diff --git a/network/armcord/slack-desc b/network/armcord/slack-desc
new file mode 100644
index 0000000000..10345838c4
--- /dev/null
+++ b/network/armcord/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------------------------------------------------------|
+armcord: armcord (Discord custom client)
+armcord:
+armcord: armcord is a custom client designed to enhance your Discord
+armcord: experience while keeping everything lightweight.
+armcord:
+armcord:
+armcord: Homepage: https://github.com/ArmCord/ArmCord
+armcord:
+armcord:
+armcord:
+armcord:
diff --git a/network/arno-iptables-firewall/arno-iptables-firewall.SlackBuild b/network/arno-iptables-firewall/arno-iptables-firewall.SlackBuild
index e100e1d9db..636bae485c 100644
--- a/network/arno-iptables-firewall/arno-iptables-firewall.SlackBuild
+++ b/network/arno-iptables-firewall/arno-iptables-firewall.SlackBuild
@@ -45,7 +45,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
fi
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
diff --git a/network/arno-iptables-firewall/arno-iptables-firewall.info b/network/arno-iptables-firewall/arno-iptables-firewall.info
index 1bc541c2c6..7fb24b23e8 100644
--- a/network/arno-iptables-firewall/arno-iptables-firewall.info
+++ b/network/arno-iptables-firewall/arno-iptables-firewall.info
@@ -1,7 +1,7 @@
PRGNAM="arno-iptables-firewall"
VERSION="2.1.0"
HOMEPAGE="https://github.com/arno-iptables-firewall/aif"
-DOWNLOAD="https://github.com/arno-iptables-firewall/aif/archive/2.1.0.tar.gz"
+DOWNLOAD="https://github.com/arno-iptables-firewall/aif/archive/2.1.0/aif-2.1.0.tar.gz"
MD5SUM="8f890a80bb6e8d2d0681c9a822ae39de"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/asciinema/asciinema.SlackBuild b/network/asciinema/asciinema.SlackBuild
index db068b5d79..d5ffca1ec1 100644
--- a/network/asciinema/asciinema.SlackBuild
+++ b/network/asciinema/asciinema.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for asciinema
-# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,14 +22,11 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20220403 bkw: Modified by SlackBuilds.org, BUILD=2:
-# - install docs to correct dir, /usr/doc/$PRGNAM-$VERSION
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=asciinema
-VERSION=${VERSION:-2.1.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.4.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -71,6 +68,7 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cp $CWD/setup.py $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -79,15 +77,18 @@ 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 manpage path
-sed -i -e "s/share\/man/man/" setup.py
-
python3 setup.py install --root=$PKG
-gzip -9 $PKG/usr/man/man*/*
+
+mkdir -p $PKG/usr/man/man1
+cp man/asciinema.1 $PKG/usr/man/man1
+
+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
mv $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
rm -rf $PKG/usr/share # nothing here but empty doc/ dir.
+
cp -a *.md PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/asciinema/asciinema.info b/network/asciinema/asciinema.info
index c8068d5d25..874f4c5dd0 100644
--- a/network/asciinema/asciinema.info
+++ b/network/asciinema/asciinema.info
@@ -1,10 +1,10 @@
PRGNAM="asciinema"
-VERSION="2.1.0"
+VERSION="2.4.0"
HOMEPAGE="https://asciinema.org"
-DOWNLOAD="https://files.pythonhosted.org/packages/2c/31/492da48c9d7d23cd26f16c8f459aeb443ff056258bed592b5ba28ed271ea/asciinema-2.1.0.tar.gz"
-MD5SUM="7d4bad3fca5ba0d5c82b3057fd5f6a3c"
+DOWNLOAD="https://files.pythonhosted.org/packages/f1/19/45b405438e90ad5b9618f3df62e9b3edaa2b115b530e60bd4b363465c704/asciinema-2.4.0.tar.gz"
+MD5SUM="bcf1b5f337a1e8a7b4839d13e153b5bf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/twine/setup.py b/network/asciinema/setup.py
index 0ae4555937..0ae4555937 100644
--- a/network/twine/setup.py
+++ b/network/asciinema/setup.py
diff --git a/network/asuka/asuka.info b/network/asuka/asuka.info
index 133b25d2e5..1023fa80c8 100644
--- a/network/asuka/asuka.info
+++ b/network/asuka/asuka.info
@@ -2,100 +2,100 @@ PRGNAM="asuka"
VERSION="0.8.5"
HOMEPAGE="https://git.sr.ht/~julienxx/asuka"
DOWNLOAD="https://git.sr.ht/~julienxx/asuka/archive/0.8.5.tar.gz \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/ahash/ahash-0.7.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/aho-corasick/aho-corasick-0.7.18.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/autocfg/autocfg-1.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bitflags/bitflags-1.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cc/cc-1.0.73.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cfg-if/cfg-if-1.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/core-foundation/core-foundation-0.9.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/core-foundation-sys/core-foundation-sys-0.8.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/crossbeam-channel/crossbeam-channel-0.5.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/crossbeam-utils/crossbeam-utils-0.8.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cursive/cursive-0.18.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cursive_core/cursive_core-0.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/darling/darling-0.13.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/darling_core/darling_core-0.13.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/darling_macro/darling_macro-0.13.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs/dirs-4.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs-sys/dirs-sys-0.3.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/enum-map/enum-map-2.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/enum-map-derive/enum-map-derive-0.8.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/enumset/enumset-1.0.11.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/enumset_derive/enumset_derive-0.6.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/fastrand/fastrand-1.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/fnv/fnv-1.0.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/foreign-types/foreign-types-0.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/foreign-types-shared/foreign-types-shared-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/form_urlencoded/form_urlencoded-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/getrandom/getrandom-0.2.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/ident_case/ident_case-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/idna/idna-0.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/instant/instant-0.1.12.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/itoa/itoa-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/json/json-0.12.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/lazy_static/lazy_static-1.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/libc/libc-0.2.125.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.17.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/maplit/maplit-1.0.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/matches/matches-0.1.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/memchr/memchr-2.5.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/native-tls/native-tls-0.2.10.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/ncurses/ncurses-5.101.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num/num-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-complex/num-complex-0.4.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-integer/num-integer-0.1.45.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-iter/num-iter-0.1.43.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-rational/num-rational-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-traits/num-traits-0.2.15.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num_threads/num_threads-0.1.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/once_cell/once_cell-1.10.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/open/open-2.1.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl/openssl-0.10.40.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-macros/openssl-macros-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-probe/openssl-probe-0.1.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-sys/openssl-sys-0.9.73.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/owning_ref/owning_ref-0.4.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pathdiff/pathdiff-0.2.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/percent-encoding/percent-encoding-2.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pkg-config/pkg-config-0.3.25.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/proc-macro2/proc-macro2-1.0.37.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/quote/quote-1.0.18.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_syscall/redox_syscall-0.2.13.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_users/redox_users-0.4.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex/regex-1.5.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex-syntax/regex-syntax-0.6.25.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/remove_dir_all/remove_dir_all-0.5.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/schannel/schannel-0.1.19.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/security-framework/security-framework-2.6.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/security-framework-sys/security-framework-sys-2.6.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/signal-hook/signal-hook-0.3.13.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/signal-hook-registry/signal-hook-registry-1.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/smawk/smawk-0.3.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/stable_deref_trait/stable_deref_trait-1.2.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/syn/syn-1.0.92.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tempfile/tempfile-3.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/term_size/term_size-0.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/textwrap/textwrap-0.15.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror/thiserror-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror-impl/thiserror-impl-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/time/time-0.3.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec/tinyvec-1.6.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec_macros/tinyvec_macros-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-bidi/unicode-bidi-0.3.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-linebreak/unicode-linebreak-0.1.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-normalization/unicode-normalization-0.1.19.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-segmentation/unicode-segmentation-1.9.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-width/unicode-width-0.1.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-xid/unicode-xid-0.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/url/url-2.2.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/vcpkg/vcpkg-0.2.15.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/version_check/version_check-0.9.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasi/wasi-0.10.2+wasi-snapshot-preview1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi/winapi-0.3.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/xi-unicode/xi-unicode-0.3.0.crate"
+ https://static.crates.io/crates/ahash/ahash-0.7.6.crate \
+ https://static.crates.io/crates/aho-corasick/aho-corasick-0.7.18.crate \
+ https://static.crates.io/crates/autocfg/autocfg-1.1.0.crate \
+ https://static.crates.io/crates/bitflags/bitflags-1.3.2.crate \
+ https://static.crates.io/crates/cc/cc-1.0.73.crate \
+ https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \
+ https://static.crates.io/crates/core-foundation/core-foundation-0.9.3.crate \
+ https://static.crates.io/crates/core-foundation-sys/core-foundation-sys-0.8.3.crate \
+ https://static.crates.io/crates/crossbeam-channel/crossbeam-channel-0.5.4.crate \
+ https://static.crates.io/crates/crossbeam-utils/crossbeam-utils-0.8.8.crate \
+ https://static.crates.io/crates/cursive/cursive-0.18.0.crate \
+ https://static.crates.io/crates/cursive_core/cursive_core-0.3.2.crate \
+ https://static.crates.io/crates/darling/darling-0.13.4.crate \
+ https://static.crates.io/crates/darling_core/darling_core-0.13.4.crate \
+ https://static.crates.io/crates/darling_macro/darling_macro-0.13.4.crate \
+ https://static.crates.io/crates/dirs/dirs-4.0.0.crate \
+ https://static.crates.io/crates/dirs-sys/dirs-sys-0.3.7.crate \
+ https://static.crates.io/crates/enum-map/enum-map-2.1.0.crate \
+ https://static.crates.io/crates/enum-map-derive/enum-map-derive-0.8.0.crate \
+ https://static.crates.io/crates/enumset/enumset-1.0.11.crate \
+ https://static.crates.io/crates/enumset_derive/enumset_derive-0.6.0.crate \
+ https://static.crates.io/crates/fastrand/fastrand-1.7.0.crate \
+ https://static.crates.io/crates/fnv/fnv-1.0.7.crate \
+ https://static.crates.io/crates/foreign-types/foreign-types-0.3.2.crate \
+ https://static.crates.io/crates/foreign-types-shared/foreign-types-shared-0.1.1.crate \
+ https://static.crates.io/crates/form_urlencoded/form_urlencoded-1.0.1.crate \
+ https://static.crates.io/crates/getrandom/getrandom-0.2.6.crate \
+ https://static.crates.io/crates/ident_case/ident_case-1.0.1.crate \
+ https://static.crates.io/crates/idna/idna-0.2.3.crate \
+ https://static.crates.io/crates/instant/instant-0.1.12.crate \
+ https://static.crates.io/crates/itoa/itoa-1.0.1.crate \
+ https://static.crates.io/crates/json/json-0.12.4.crate \
+ https://static.crates.io/crates/lazy_static/lazy_static-1.4.0.crate \
+ https://static.crates.io/crates/libc/libc-0.2.125.crate \
+ https://static.crates.io/crates/log/log-0.4.17.crate \
+ https://static.crates.io/crates/maplit/maplit-1.0.2.crate \
+ https://static.crates.io/crates/matches/matches-0.1.9.crate \
+ https://static.crates.io/crates/memchr/memchr-2.5.0.crate \
+ https://static.crates.io/crates/native-tls/native-tls-0.2.10.crate \
+ https://static.crates.io/crates/ncurses/ncurses-5.101.0.crate \
+ https://static.crates.io/crates/num/num-0.4.0.crate \
+ https://static.crates.io/crates/num-complex/num-complex-0.4.1.crate \
+ https://static.crates.io/crates/num-integer/num-integer-0.1.45.crate \
+ https://static.crates.io/crates/num-iter/num-iter-0.1.43.crate \
+ https://static.crates.io/crates/num-rational/num-rational-0.4.0.crate \
+ https://static.crates.io/crates/num-traits/num-traits-0.2.15.crate \
+ https://static.crates.io/crates/num_threads/num_threads-0.1.6.crate \
+ https://static.crates.io/crates/once_cell/once_cell-1.10.0.crate \
+ https://static.crates.io/crates/open/open-2.1.2.crate \
+ https://static.crates.io/crates/openssl/openssl-0.10.40.crate \
+ https://static.crates.io/crates/openssl-macros/openssl-macros-0.1.0.crate \
+ https://static.crates.io/crates/openssl-probe/openssl-probe-0.1.5.crate \
+ https://static.crates.io/crates/openssl-sys/openssl-sys-0.9.73.crate \
+ https://static.crates.io/crates/owning_ref/owning_ref-0.4.1.crate \
+ https://static.crates.io/crates/pathdiff/pathdiff-0.2.1.crate \
+ https://static.crates.io/crates/percent-encoding/percent-encoding-2.1.0.crate \
+ https://static.crates.io/crates/pkg-config/pkg-config-0.3.25.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.37.crate \
+ https://static.crates.io/crates/quote/quote-1.0.18.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.2.13.crate \
+ https://static.crates.io/crates/redox_users/redox_users-0.4.3.crate \
+ https://static.crates.io/crates/regex/regex-1.5.5.crate \
+ https://static.crates.io/crates/regex-syntax/regex-syntax-0.6.25.crate \
+ https://static.crates.io/crates/remove_dir_all/remove_dir_all-0.5.3.crate \
+ https://static.crates.io/crates/schannel/schannel-0.1.19.crate \
+ https://static.crates.io/crates/security-framework/security-framework-2.6.1.crate \
+ https://static.crates.io/crates/security-framework-sys/security-framework-sys-2.6.1.crate \
+ https://static.crates.io/crates/signal-hook/signal-hook-0.3.13.crate \
+ https://static.crates.io/crates/signal-hook-registry/signal-hook-registry-1.4.0.crate \
+ https://static.crates.io/crates/smawk/smawk-0.3.1.crate \
+ https://static.crates.io/crates/stable_deref_trait/stable_deref_trait-1.2.0.crate \
+ https://static.crates.io/crates/syn/syn-1.0.92.crate \
+ https://static.crates.io/crates/tempfile/tempfile-3.3.0.crate \
+ https://static.crates.io/crates/term_size/term_size-0.3.2.crate \
+ https://static.crates.io/crates/textwrap/textwrap-0.15.0.crate \
+ https://static.crates.io/crates/thiserror/thiserror-1.0.31.crate \
+ https://static.crates.io/crates/thiserror-impl/thiserror-impl-1.0.31.crate \
+ https://static.crates.io/crates/time/time-0.3.9.crate \
+ https://static.crates.io/crates/tinyvec/tinyvec-1.6.0.crate \
+ https://static.crates.io/crates/tinyvec_macros/tinyvec_macros-0.1.0.crate \
+ https://static.crates.io/crates/unicode-bidi/unicode-bidi-0.3.8.crate \
+ https://static.crates.io/crates/unicode-linebreak/unicode-linebreak-0.1.2.crate \
+ https://static.crates.io/crates/unicode-normalization/unicode-normalization-0.1.19.crate \
+ https://static.crates.io/crates/unicode-segmentation/unicode-segmentation-1.9.0.crate \
+ https://static.crates.io/crates/unicode-width/unicode-width-0.1.9.crate \
+ https://static.crates.io/crates/unicode-xid/unicode-xid-0.2.3.crate \
+ https://static.crates.io/crates/url/url-2.2.2.crate \
+ https://static.crates.io/crates/vcpkg/vcpkg-0.2.15.crate \
+ https://static.crates.io/crates/version_check/version_check-0.9.4.crate \
+ https://static.crates.io/crates/wasi/wasi-0.10.2+wasi-snapshot-preview1.crate \
+ https://static.crates.io/crates/winapi/winapi-0.3.9.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-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate \
+ https://static.crates.io/crates/xi-unicode/xi-unicode-0.3.0.crate"
MD5SUM="a1693edbc029245542c96edfffebe599 \
7d2520c6776b66559165d0a666e995ff \
425b8fdf70df59998d9b7c89083e48d1 \
diff --git a/network/atftp/atftp.SlackBuild b/network/atftp/atftp.SlackBuild
index 96c98cb171..c32872849d 100644
--- a/network/atftp/atftp.SlackBuild
+++ b/network/atftp/atftp.SlackBuild
@@ -23,6 +23,7 @@
# Now maintained by B. Watson <urchlay@slackware.uk>.
+# 20230103 bkw: update for v0.8.0.
# 20210223 bkw: update for v0.7.4.
# 20191129 bkw: update for v0.7.2.
@@ -36,7 +37,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=atftp
-VERSION=${VERSION:-0.7.4}
+VERSION=${VERSION:-0.8.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,6 +85,8 @@ 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 {} \+
+[ -e ./configure ] || sh autogen.sh
+
CC="gcc -fgnu89-inline $SLKCFLAGS" \
./configure \
--prefix=/usr \
diff --git a/network/atftp/atftp.info b/network/atftp/atftp.info
index ed426f8dc1..2fb13509cb 100644
--- a/network/atftp/atftp.info
+++ b/network/atftp/atftp.info
@@ -1,8 +1,8 @@
PRGNAM="atftp"
-VERSION="0.7.4"
+VERSION="0.8.0"
HOMEPAGE="https://sourceforge.net/projects/atftp"
-DOWNLOAD="https://downloads.sourceforge.net/project/atftp/atftp-0.7.4.tar.gz"
-MD5SUM="f15e2b89498106f68b798ad027a85e8d"
+DOWNLOAD="https://downloads.sourceforge.net/project/atftp/atftp-0.8.0.tar.gz"
+MD5SUM="852f4c0773ae8c429ec4f74413eabe1b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/atheme/atheme.info b/network/atheme/atheme.info
index 977bc5630c..b753d45d1d 100644
--- a/network/atheme/atheme.info
+++ b/network/atheme/atheme.info
@@ -6,5 +6,5 @@ MD5SUM="c907900b19e8d2508dd22455dcdce912"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/authbind/authbind.SlackBuild b/network/authbind/authbind.SlackBuild
index 4ce928ba47..419cce58cb 100644
--- a/network/authbind/authbind.SlackBuild
+++ b/network/authbind/authbind.SlackBuild
@@ -6,6 +6,12 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230103 bkw: Note to self: There is an authbind_2.1.3.tar.gz
+# available on Debian's download server, but there are no code changes
+# between 2.1.2 and 2.1.3. The only differences are in the Debian
+# packaging stuff (debian/rules and debian/changelog), which we don't
+# use.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=authbind
diff --git a/network/awscli-v2/README b/network/awscli-v2/README
new file mode 100644
index 0000000000..17ff6181cd
--- /dev/null
+++ b/network/awscli-v2/README
@@ -0,0 +1,11 @@
+The AWS Command Line Interface (AWS CLI) is a unified tool to
+manage your AWS services. With just one tool to download and
+configure, you can control multiple AWS services from the command
+line and automate them through scripts.
+
+The AWS CLI v2 offers several new features including improved
+installers, new configuration options such as AWS IAM Identity
+Center (successor to AWS SSO), and various interactive features.
+
+Note: AWS CLI v2 builds on AWS CLI v1 and includes a number of
+features and enhancements based on community feedback.
diff --git a/network/Flootty/Flootty.SlackBuild b/network/awscli-v2/awscli-v2.SlackBuild
index 8876144da5..b8b3f10f5f 100644
--- a/network/Flootty/Flootty.SlackBuild
+++ b/network/awscli-v2/awscli-v2.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for Flootty
+# Slackware build script for awscli-v2
-# Copyright 2014-2017 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Dimitris Zlatanidis Greece, Orestiada
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=Flootty
-VERSION=${VERSION:-3.2.1}
+PRGNAM=awscli-v2
+SRCNAM=aws-cli
+VERSION=${VERSION:-2.14.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -59,6 +60,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -69,9 +73,9 @@ 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
+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 \
@@ -79,18 +83,18 @@ 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 {} \;
-python setup.py install --root=$PKG
+python3 -m build --wheel --no-isolation --skip-dependency-check
+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/usr/doc/$PRGNAM-$VERSION
-cp -a PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.txt README.rst CHANGELOG.rst $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/awscli-v2/awscli-v2.info b/network/awscli-v2/awscli-v2.info
new file mode 100644
index 0000000000..3c7c02b430
--- /dev/null
+++ b/network/awscli-v2/awscli-v2.info
@@ -0,0 +1,10 @@
+PRGNAM="awscli-v2"
+VERSION="2.14.1"
+HOMEPAGE="https://aws.amazon.com/cli/"
+DOWNLOAD="https://github.com/aws/aws-cli/archive/2.14.1/aws-cli-2.14.1.tar.gz"
+MD5SUM="f7a5bb039aaff1bc0f385c0f5013f599"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="awscrt colorama cryptography python3-ruamel.yaml python3-ruamel.yaml.clib python3-prompt_toolkit python3-dateutil jmespath"
+MAINTAINER="Dimitris Zlatanidis"
+EMAIL="dslackw@gmail.com"
diff --git a/network/awscli-v2/slack-desc b/network/awscli-v2/slack-desc
new file mode 100644
index 0000000000..9a6a6c7e0c
--- /dev/null
+++ b/network/awscli-v2/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------------------------------------------------------|
+awscli-v2: awscli-v2 (CLI to Amazon Web Services)
+awscli-v2:
+awscli-v2: The AWS Command Line Interface (AWS CLI) is a unified tool to manage
+awscli-v2: your AWS services. With just one tool to download and configure, you
+awscli-v2: can control multiple AWS services from the command line and automate
+awscli-v2: them through scripts.
+awscli-v2:
+awscli-v2: Homepage: https://aws.amazon.com/cli/
+awscli-v2:
+awscli-v2:
+awscli-v2:
diff --git a/network/awscli/awscli.SlackBuild b/network/awscli/awscli.SlackBuild
index 264870576d..218f536270 100644
--- a/network/awscli/awscli.SlackBuild
+++ b/network/awscli/awscli.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for awscli
-# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=awscli
-VERSION=${VERSION:-1.25.17}
+SRCNAM=aws-cli
+VERSION=${VERSION:-1.32.14}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,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
@@ -69,9 +67,9 @@ 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
+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 \
@@ -86,7 +84,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.txt PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE.txt README.rst $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/awscli/awscli.info b/network/awscli/awscli.info
index 1e2de6630b..ab324364bb 100644
--- a/network/awscli/awscli.info
+++ b/network/awscli/awscli.info
@@ -1,10 +1,10 @@
PRGNAM="awscli"
-VERSION="1.25.17"
+VERSION="1.32.14"
HOMEPAGE="https://aws.amazon.com/cli/"
-DOWNLOAD="https://files.pythonhosted.org/packages/ad/6f/537249ba847a4100fcd773bfc07d1233255ff3d4ed1f9ecc468c6bac347d/awscli-1.25.17.tar.gz"
-MD5SUM="7931de8630157f39ade8ee7c8ba2582e"
+DOWNLOAD="https://github.com/aws/aws-cli/archive/1.32.14/aws-cli-1.32.14.tar.gz"
+MD5SUM="41a09b4643026ce8f80043a1dd5b9844"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="s3transfer colorama python3-rsa"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/awstats/awstats.SlackBuild b/network/awstats/awstats.SlackBuild
index 76c19e3a45..84f80b5965 100644
--- a/network/awstats/awstats.SlackBuild
+++ b/network/awstats/awstats.SlackBuild
@@ -30,7 +30,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM="awstats"
-VERSION=${VERSION:-7.8}
+VERSION=${VERSION:-7.9}
# hardcode ARCH
ARCH=noarch
BUILD=${BUILD:-1}
diff --git a/network/awstats/awstats.info b/network/awstats/awstats.info
index d6c3919c6c..57ffe6df4a 100644
--- a/network/awstats/awstats.info
+++ b/network/awstats/awstats.info
@@ -1,8 +1,8 @@
PRGNAM="awstats"
-VERSION="7.8"
+VERSION="7.9"
HOMEPAGE="http://awstats.sourceforge.net/"
-DOWNLOAD="https://prdownloads.sourceforge.net/awstats/awstats-7.8.tar.gz"
-MD5SUM="46986723e04b1980389193153915e760"
+DOWNLOAD="https://prdownloads.sourceforge.net/awstats/awstats-7.9.tar.gz"
+MD5SUM="c283e0170700461596f9c9e121ea2896"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/awstats/slack-desc b/network/awstats/slack-desc
index 9dfeb4ef20..fc78a114f7 100644
--- a/network/awstats/slack-desc
+++ b/network/awstats/slack-desc
@@ -16,4 +16,4 @@ awstats: It can analyze log files from all major server tools like Apache
awstats: log files and a lot of other web, proxy, wap, streaming servers,
awstats: mail servers, and some ftp servers.
awstats:
-awstats: Home Page: http://awstats.sourceforge.net/
+awstats: Home Page: https://awstats.sourceforge.net/
diff --git a/network/axel/axel.SlackBuild b/network/axel/axel.SlackBuild
index bd8962a4b2..48564656ae 100644
--- a/network/axel/axel.SlackBuild
+++ b/network/axel/axel.SlackBuild
@@ -32,7 +32,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=axel
VERSION=${VERSION:-2.17.11}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -98,7 +98,6 @@ 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/badwolf/README b/network/badwolf/README
new file mode 100644
index 0000000000..b69a755b63
--- /dev/null
+++ b/network/badwolf/README
@@ -0,0 +1,17 @@
+badwolf is a minimalist browser that cares about privacy, it is based on
+WebKitGTK and thus also accepts WebKitGTK (and dependencies) flags and
+environment variables.
+
+Runtime configuration specific to badwolf will probably get added at a
+later release.
+
+Features include:
+* No browser-level tracking, multiple ephemeral isolated sessions per
+ new unrelated tabs, JavaScript off by default.
+* Small codebase (~1500 LoC), reuses existing components when available
+ or makes it available.
+* WebKitGTK native extensions, Interface customizable through CSS.
+* Stable User-Interface; The common shortcuts are available (and
+ documented), no vi-modal edition or single-key shortcuts are used.
+* Dialogs are only used when required, javascript popups open in a
+ background tab.
diff --git a/network/DarTui/DarTui.SlackBuild b/network/badwolf/badwolf.SlackBuild
index 365c8757b4..2b4f850571 100644
--- a/network/DarTui/DarTui.SlackBuild
+++ b/network/badwolf/badwolf.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for DarTui
+# Slackware build script for badwolf
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Bloyburt
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=DarTui
-VERSION=${VERSION:-1.1.0}
+PRGNAM=badwolf
+VERSION=${VERSION:-1.3.0}
BUILD=${BUILD:-1}
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
@@ -52,16 +49,12 @@ 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
@@ -79,13 +72,26 @@ 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 {} \;
-python setup.py install --root=$PKG
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+PREFIX=usr \
+BINDIR=${PREFIX}/bin \
+MANDIR=${PREFIX}/man \
+DOCDIR=${PREFIX}/doc/badwolf-${VERSION} \
+DATADIR=${PREFIX}/share/badwolf \
+APPSDIR=${PREFIX}/share/applications \
+./configure
+
+ninja
+DESTDIR=$PKG ninja install
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 README.md CHANGELOG.txt PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+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
+
+# Docs are already installed by the build system
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/badwolf/badwolf.info b/network/badwolf/badwolf.info
new file mode 100644
index 0000000000..1c5e3bb1d3
--- /dev/null
+++ b/network/badwolf/badwolf.info
@@ -0,0 +1,10 @@
+PRGNAM="badwolf"
+VERSION="1.3.0"
+HOMEPAGE="https://hacktivis.me/projects/badwolf"
+DOWNLOAD="https://hacktivis.me/releases/badwolf-1.3.0.tar.gz"
+MD5SUM="9d222680f8dc274c77f530d8581c2d52"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="webkit2gtk"
+MAINTAINER="Bloyburt"
+EMAIL="alexpen@startmail.com"
diff --git a/network/badwolf/doinst.sh b/network/badwolf/doinst.sh
new file mode 100644
index 0000000000..a993650058
--- /dev/null
+++ b/network/badwolf/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/badwolf/slack-desc b/network/badwolf/slack-desc
new file mode 100644
index 0000000000..07e5898534
--- /dev/null
+++ b/network/badwolf/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------------------------------------------------------|
+badwolf: badwolf (Minimalist and privacy-oriented webkit browser)
+badwolf:
+badwolf: badwolf is a minimalist browser that cares about privacy, it is based
+badwolf: on WebKitGTK and thus also accepts WebKitGTK (and dependencies) flags
+badwolf: and environment variables.
+badwolf:
+badwolf: Homepage: https://hacktivis.me/projects/badwolf
+badwolf:
+badwolf:
+badwolf:
+badwolf:
diff --git a/network/baikal/baikal.SlackBuild b/network/baikal/baikal.SlackBuild
index 5b5c24d910..ff3fd56296 100644
--- a/network/baikal/baikal.SlackBuild
+++ b/network/baikal/baikal.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for baikal
-# Copyright 2022 Johannes Schoepfer, Germany
+# Copyright 2022-2024 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=baikal
-VERSION=${VERSION:-0.9.2}
+VERSION=${VERSION:-0.9.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,16 +52,16 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
mkdir -p $PKG/{usr/share/$PRGNAM,etc/httpd/extra}
chown -R apache $PKG/usr/share/$PRGNAM
cp -R Core config html Specific vendor $PKG/usr/share/$PRGNAM
chown -R apache $PKG/usr/share/$PRGNAM/{config,Specific}
# Remove cruft
-find $PKG -type f -name '.empty' -delete
+find $PKG -empty -delete
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
diff --git a/network/baikal/baikal.info b/network/baikal/baikal.info
index 0abc9577fd..574b0a9847 100644
--- a/network/baikal/baikal.info
+++ b/network/baikal/baikal.info
@@ -1,8 +1,8 @@
PRGNAM="baikal"
-VERSION="0.9.2"
+VERSION="0.9.5"
HOMEPAGE="https://sabre.io/baikal/"
-DOWNLOAD="https://github.com/sabre-io/Baikal/releases/download/0.9.2/baikal-0.9.2.zip"
-MD5SUM="99bf9754efb863b916d685c484608d74"
+DOWNLOAD="https://github.com/sabre-io/Baikal/releases/download/0.9.5/baikal-0.9.5.zip"
+MD5SUM="47ad5c6ef9e5e87b7bd0028ad1008fbe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/barrier/barrier-2.4.0-cert-creation.patch b/network/barrier/barrier-2.4.0-cert-creation.patch
new file mode 100644
index 0000000000..817ed63fff
--- /dev/null
+++ b/network/barrier/barrier-2.4.0-cert-creation.patch
@@ -0,0 +1,11 @@
+--- src/lib/net/SecureUtils.cpp 2021-11-01 21:46:43.000000000 +0100
++++ src/lib/net/SecureUtils.cpp 2024-02-06 22:12:48.553673626 +0100
+@@ -190,7 +190,7 @@
+
+ X509_sign(cert, private_key, EVP_sha256());
+
+- auto fp = fopen_utf8_path(path.c_str(), "r");
++ auto fp = fopen_utf8_path(path.c_str(), "w");
+ if (!fp) {
+ throw std::runtime_error("Could not open certificate output path");
+ }
diff --git a/network/barrier/barrier-2.4.0-gcc-13.patch b/network/barrier/barrier-2.4.0-gcc-13.patch
new file mode 100644
index 0000000000..5b17590491
--- /dev/null
+++ b/network/barrier/barrier-2.4.0-gcc-13.patch
@@ -0,0 +1,38 @@
+https://bugs.gentoo.org/895088
+https://github.com/debauchee/barrier/pull/1886
+
+From d376d23d534e053a160c32ee1170d237a2f3d6bd Mon Sep 17 00:00:00 2001
+From: "Benjamin A. Beasley" <code@musicinmybrain.net>
+Date: Thu, 26 Jan 2023 09:25:59 -0500
+Subject: [PATCH] Add missing #include directives needed for GCC 13
+
+---
+ src/lib/base/String.h | 1 +
+ src/lib/net/FingerprintData.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/src/lib/base/String.h b/src/lib/base/String.h
+index 9c5a53bac4..fa37f8f0dc 100644
+--- a/src/lib/base/String.h
++++ b/src/lib/base/String.h
+@@ -18,6 +18,7 @@
+
+ #pragma once
+
++#include <cstdint>
+ #include "common/common.h"
+ #include "common/stdstring.h"
+
+diff --git a/src/lib/net/FingerprintData.h b/src/lib/net/FingerprintData.h
+index 938a69538d..522a481353 100644
+--- a/src/lib/net/FingerprintData.h
++++ b/src/lib/net/FingerprintData.h
+@@ -18,6 +18,7 @@
+ #ifndef BARRIER_LIB_NET_FINGERPRINT_DATA_H
+ #define BARRIER_LIB_NET_FINGERPRINT_DATA_H
+
++#include <cstdint>
+ #include <string>
+ #include <vector>
+
+
diff --git a/network/barrier/barrier-2.4.0-includes.patch b/network/barrier/barrier-2.4.0-includes.patch
new file mode 100644
index 0000000000..048a3b0680
--- /dev/null
+++ b/network/barrier/barrier-2.4.0-includes.patch
@@ -0,0 +1,39 @@
+From aa0a2998e8894716644ea5fb29fc6f0165add956 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Tue, 2 Nov 2021 20:59:51 +0000
+Subject: [PATCH] Add missing cstddef includes for NULL
+
+---
+ src/lib/base/Event.cpp | 2 ++
+ src/lib/base/Event.h | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/src/lib/base/Event.cpp b/src/lib/base/Event.cpp
+index cc548fc6..08c5e98f 100644
+--- a/src/lib/base/Event.cpp
++++ b/src/lib/base/Event.cpp
+@@ -19,6 +19,8 @@
+ #include "base/Event.h"
+ #include "base/EventQueue.h"
+
++#include <cstddef>
++
+ //
+ // Event
+ //
+diff --git a/src/lib/base/Event.h b/src/lib/base/Event.h
+index 38a2cf11..cb00dccb 100644
+--- a/src/lib/base/Event.h
++++ b/src/lib/base/Event.h
+@@ -21,6 +21,8 @@
+ #include "common/basic_types.h"
+ #include "common/stdmap.h"
+
++#include <cstddef>
++
+ class EventData {
+ public:
+ EventData() { }
+--
+2.32.0
+
diff --git a/network/barrier/barrier.SlackBuild b/network/barrier/barrier.SlackBuild
index d3935e1eca..ff2bd84449 100644
--- a/network/barrier/barrier.SlackBuild
+++ b/network/barrier/barrier.SlackBuild
@@ -2,6 +2,7 @@
#
# Slackware build script for Barrier (Synergy fork)
# Written by Mario Antunes (mariolpantunes@gmail.com)
+# Updated 2024 Ruben Schuller <sb@rbn.im>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=barrier
-VERSION=${VERSION:-2.1.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2.4.0}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -71,6 +72,12 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+
+# these are submodules in the barrier git repository.
+tar -v -C ./ext/gulrak-filesystem --strip-components=1 -x -f $CWD/filesystem*.tar.gz
+tar -v -C ./ext/gmock --strip-components=1 -x -f $CWD/googlemock*.tar.gz
+tar -v -C ./ext/gtest --strip-components=1 -x -f $CWD/googletest*.tar.gz
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -78,9 +85,16 @@ 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 {} \;
+# borrowed from gentoo https://gitweb.gentoo.org/repo/gentoo.git/tree/x11-misc/barrier/files
+patch -p1 < $CWD/barrier-2.4.0-includes.patch
+patch -p1 < $CWD/barrier-2.4.0-gcc-13.patch
+patch -p0 < $CWD/barrier-2.4.0-cert-creation.patch
+
mkdir -p build
cd build
- cmake \
+cmake \
+ -DBARRIER_BUILD_INSTALLER=OFF \
+ -DBARRIER_BUILD_TESTS=OFF \
-DCMAKE_C_FLAGS="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
-DCMAKE_BUILD_TYPE="Release" \
diff --git a/network/barrier/barrier.info b/network/barrier/barrier.info
index 00ce91ee47..c776bebf23 100644
--- a/network/barrier/barrier.info
+++ b/network/barrier/barrier.info
@@ -1,10 +1,10 @@
PRGNAM="barrier"
-VERSION="2.1.2"
+VERSION="2.4.0"
HOMEPAGE="https://github.com/debauchee/barrier"
-DOWNLOAD="https://github.com/debauchee/barrier/archive/v2.1.2/barrier-2.1.2.tar.gz"
-MD5SUM="8cc0d40bc7da7f7e33c8c063157084b5"
+DOWNLOAD="https://github.com/debauchee/barrier/archive/v2.4.0/barrier-2.4.0.tar.gz https://github.com/gulrak/filesystem/archive/614bbe87b80435d87ab8791564370e0c1d13627d/filesystem.tar.gz https://github.com/google/googlemock/archive/7d33fee11ec480beae4c28ad09ca56d974140a72/googlemock.tar.gz https://github.com/google/googletest/archive/800f5422ac9d9e0ad59cd860a2ef3a679588acb4/googletest.tar.gz"
+MD5SUM="6f9b98a12a53cf8d0aa3b6b159aeb64f 3f5cfad2938ce8c3b8c8b9c4e49abc90 918ca93e15d4f589beb278d9b0093f1f b0b23c6e3137c995ed842b6fbae37e7b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="avahi"
-MAINTAINER="Mário Antunes"
-EMAIL="mariolpantunes@gmail.com"
+MAINTAINER="Ruben Schuller"
+EMAIL="sb@rbn.im"
diff --git a/network/beegfs/README b/network/beegfs/README
new file mode 100644
index 0000000000..0ba7cbe88c
--- /dev/null
+++ b/network/beegfs/README
@@ -0,0 +1,32 @@
+BeeGFS aka. beegfs is a parallel filesystem that runs on
+vanilla Linux kernel.
+Officially supported filesystems for underlying local storage are
+ext4, xfs, and zfs.
+
+BeeGFS can be accessed through TCP and RDMA links.
+
+Each file on beegfs can be stored in a specific storage pool.
+Hard links and data/metadata mirroring are supported.
+
+Authorization is required for production use of features such as
+mirroring, quota enforcement (not quota tracking), and
+more than one storage pools, etc.
+Refer to the file "LICENSE.txt" for details.
+
+openzfs is an optional run-time dependency.
+
+Set BEEGFS_CTL_SUID to YES to install the beegfs-ctl program
+setUID to root:
+
+ env BEEGFS_CTL_SETUID=YES ./beegfs.SlackBuild
+
+The client driver is kernel-dependent, so a re-compile of
+this package is necessary for client nodes after a kernel-update.
+
+Set KERNEL to the kernel version the client driver to be built for:
+
+ env KERNEL=5.15.117 ./beegfs.SlackBuild
+
+The default ./beegfs.SlackBuild is equivalent to
+
+ env BEEGFS_CTL_SETUID=NO KERNEL=`uname -r` ./beegfs.SlackBuild
diff --git a/network/beegfs/beegfs.SlackBuild b/network/beegfs/beegfs.SlackBuild
new file mode 100644
index 0000000000..32e78d13c9
--- /dev/null
+++ b/network/beegfs/beegfs.SlackBuild
@@ -0,0 +1,180 @@
+#!/bin/bash
+
+# Slackware build script for beegfs
+
+# Copyright 2023,2024 GUAN Xin <guanx.bac@gmail.com> from Beijing
+# 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=beegfs
+VERSION=${VERSION:-7.4.3}
+VERSION_MAJOR=$(echo $VERSION | cut -d. -f1,1)
+BUILD=${BUILD:-2}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+KERNEL=${KERNEL:-$(uname -r)}
+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
+
+BEEGFS_CTL_SETUID=${BEEGFS_CTL_SETUID:-no}
+
+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 {} \;
+
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION common-all
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION DESTDIR=$PKG common-install
+install -o 0 -g 0 -d -m 0755 $PKG/etc/rc.d/init.d
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/rc.d/init.d common_package/build/dist/etc/init.d/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/beegfs/lib
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/beegfs/lib common_package/scripts/etc/beegfs/lib/*
+
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION daemons
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION DESTDIR=$PKG daemons-install
+install -o 0 -g 0 -d -m 0755 $PKG/etc/rc.d/init.d
+install -o 0 -g 0 -d -m 0755 $PKG/etc/default
+install -o 0 -g 0 -d -m 0755 $PKG/etc/beegfs
+install -o 0 -g 0 -d -m 0755 $PKG/opt/beegfs/sbin
+for i in mgmtd meta storage helperd; do
+ install -o 0 -g 0 -p -m 0755 -t $PKG/etc/rc.d/init.d $i/build/dist/etc/init.d/*
+ install -o 0 -g 0 -p -m 0644 -t $PKG/etc/default $i/build/dist/etc/default/*
+ install -o 0 -g 0 -p -m 0600 -t $PKG/etc/beegfs $i/build/dist/etc/beegfs-$i.conf
+done
+for i in mgmtd meta storage; do
+ install -o 0 -g 0 -p -m 0755 -t $PKG/opt/beegfs/sbin $i/build/dist/sbin/*
+done
+
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION utils
+make BEEGFS_CFLAGS="$SLKCFLAGS" USER_CXXFLAGS="$SLKCFLAGS" BEEGFS_VERSION=$VERSION DESTDIR=$PKG utils-install
+if [ "`echo $BEEGFS_CTL_SETUID | tr 'a-z' 'A-Z'`" = YES ]; then
+ chown 0:0 $PKG/opt/beegfs/sbin/beegfs-ctl
+ chmod 4755 $PKG/opt/beegfs/sbin/beegfs-ctl
+fi
+install -o 0 -g 0 -d -m 0755 $PKG/etc/bash_completion.d
+install -o 0 -g 0 -p -m 0644 -t $PKG/etc/bash_completion.d utils/scripts/etc/bash_completion.d/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/rc.d/init.d
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/rc.d/init.d mon/build/dist/etc/init.d/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/default
+install -o 0 -g 0 -p -m 0644 -t $PKG/etc/default mon/build/dist/etc/default/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/beegfs
+install -o 0 -g 0 -p -m 0600 -t $PKG/etc/beegfs mon/build/dist/etc/beegfs-mon.auth
+install -o 0 -g 0 -p -m 0600 -t $PKG/etc/beegfs mon/build/dist/etc/beegfs-mon.conf
+install -o 0 -g 0 -d -m 0755 $PKG/usr/bin
+for i in beegfs-check-servers beegfs-df beegfs-net; do
+ install -o 0 -g 0 -p -m 0755 -t $PKG/usr/bin utils/scripts/$i
+done
+ln -sf /opt/beegfs/sbin/beegfs-ctl $PKG/usr/bin
+ln -sf /opt/beegfs/sbin/beegfs-fsck $PKG/usr/bin
+install -o 0 -g 0 -d -m 0755 $PKG/sbin
+install -o 0 -g 0 -p -m 0755 -t $PKG/sbin utils/scripts/fsck.beegfs
+
+install -o 0 -g 0 -d -m 0755 $PKG/opt/beegfs/src/client/client_module_$VERSION_MAJOR
+cp -at $PKG/opt/beegfs/src/client/client_module_$VERSION_MAJOR client_module/build client_module/include client_module/source
+rm -fr $PKG/opt/beegfs/src/client/client_module_$VERSION_MAJOR/build/dist
+chown -R 0:0 $PKG/opt/beegfs/src/client/client_module_$VERSION_MAJOR
+chmod -R og-w $PKG/opt/beegfs/src/client/client_module_$VERSION_MAJOR
+install -o 0 -g 0 -d -m 0755 $PKG/etc/rc.d/init.d
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/rc.d/init.d client_module/build/dist/etc/init.d/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/default
+install -o 0 -g 0 -p -m 0644 -t $PKG/etc/default client_module/build/dist/etc/default/*
+install -o 0 -g 0 -d -m 0755 $PKG/etc/beegfs
+install -o 0 -g 0 -p -m 0644 -t $PKG/etc/beegfs client_module/build/dist/etc/beegfs-client-autobuild.conf
+install -o 0 -g 0 -p -m 0644 -t $PKG/etc/beegfs client_module/build/dist/etc/beegfs-client-build.mk
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/beegfs client_module/build/dist/etc/beegfs-client-mount-hook.example
+install -o 0 -g 0 -p -m 0600 -t $PKG/etc/beegfs client_module/build/dist/etc/beegfs-client.conf
+install -o 0 -g 0 -p -m 0600 -t $PKG/etc/beegfs client_module/build/dist/etc/beegfs-mounts.conf
+install -o 0 -g 0 -d -m 0755 $PKG/etc/beegfs/lib
+install -o 0 -g 0 -p -m 0755 -t $PKG/etc/beegfs/lib client_module/scripts/etc/beegfs/lib/*
+make -C client_module/build BEEGFS_VERSION=$VERSION KRELEASE=$KERNEL
+make BEEGFS_VERSION=$VERSION DESTDIR=$PKG PREFIX= KVER=$KERNEL KRELEASE=$KERNEL client-install
+
+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.txt README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# beegfs-client-devel files
+cp -at $PKG/usr client_devel/include
+cp -at $PKG/usr/doc/$PRGNAM-$VERSION client_devel/build/dist/usr/share/doc/beegfs-client-devel
+cat > $PKG/usr/doc/$PRGNAM-$VERSION/beegfs-client-devel/examples/Makefile << EOF
+% : %.cpp
+ \$(CXX) -O2 -Wall -I/opt/beegfs/src/client/client_module_$VERSION_MAJOR/include -o \$@ \$<
+EOF
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+( cd $PKG
+ find etc -type f -regextype posix-extended -regex '^etc/(default/.+|beegfs/.+\.(conf|auth))$' \
+ -exec mv {} {}.new \; \
+ -exec printf 'config %s.new\n' {} >> $PKG/install/doinst.sh \;
+ printf '\n' >> $PKG/install/doinst.sh
+)
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/beegfs/beegfs.info b/network/beegfs/beegfs.info
new file mode 100644
index 0000000000..7ee36d3999
--- /dev/null
+++ b/network/beegfs/beegfs.info
@@ -0,0 +1,10 @@
+PRGNAM="beegfs"
+VERSION="7.4.3"
+HOMEPAGE="https://www.beegfs.io/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/ThinkParQ/beegfs/archive/7.4.3/beegfs-7.4.3.tar.gz"
+MD5SUM_x86_64="a96c1deee976db763ef324af6f3593bc"
+REQUIRES="rdma-core"
+MAINTAINER="GUAN Xin"
+EMAIL="guanx.bac@gmail.com"
diff --git a/network/w3m/doinst.sh b/network/beegfs/doinst.sh
index 17f9dccd7e..19a6ff6ac8 100644
--- a/network/w3m/doinst.sh
+++ b/network/beegfs/doinst.sh
@@ -11,5 +11,3 @@ config() {
# Otherwise, we leave the .new copy for the admin to consider...
}
-config etc/w3m/config.new
-config etc/w3m/mailcap.new
diff --git a/network/beegfs/slack-desc b/network/beegfs/slack-desc
new file mode 100644
index 0000000000..3a42f5feb0
--- /dev/null
+++ b/network/beegfs/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------------------------------------------------------|
+beegfs: beegfs (a parallel filesystem)
+beegfs:
+beegfs: beegfs is a parallel filesystem that runs on vanilla Linux kernel.
+beegfs: Officially supported filesystems for underlying local storage are
+beegfs: ext4, xfs, and zfs.
+beegfs:
+beegfs: Each file on beegfs can be stored in a specific storage pool.
+beegfs:
+beegfs: beegfs can be accessed through TCP and RDMA links.
+beegfs:
+beegfs: Home: https://www.beegfs.io/
diff --git a/network/bitcoin/README b/network/bitcoin/README
index 255ec8cab6..7e3be4ea05 100644
--- a/network/bitcoin/README
+++ b/network/bitcoin/README
@@ -13,4 +13,4 @@ If you just want to send and receive Bitcoins you can also look
at a light client like Electrum.
Please make sure to read the release notes first before upgrading:
-https://bitcoincore.org/en/releases/23.0/
+https://bitcoincore.org/en/releases/27.0/
diff --git a/network/bitcoin/bitcoin.SlackBuild b/network/bitcoin/bitcoin.SlackBuild
index b8c6a11c5c..7e5142b0ed 100644
--- a/network/bitcoin/bitcoin.SlackBuild
+++ b/network/bitcoin/bitcoin.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for bitcoin
-# Copyright 2012 nomnombtc <nomnombtc@arcor.de>
+# Copyright 2012-2024 nomnombtc <nomnombtc@arcor.de>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bitcoin
-VERSION=${VERSION:-23.0}
+VERSION=${VERSION:-27.0}
BUILD=${BUILD:-1}
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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -83,7 +83,7 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# build bitcoin-core
-[ -f autogen.sh ] && sh autogen.sh
+[ -f autogen.sh ] && ./autogen.sh
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -93,15 +93,15 @@ CXXFLAGS="$SLKCFLAGS" \
--mandir=/usr/man \
$QRCODE \
--with-gui=qt5 \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
+ --disable-bench \
+ --disable-tests \
+ --disable-static \
+ --build=$ARCH-slackware-linux
make
make install DESTDIR=$PKG
-# Remove the "test" binaries. Alternatively, you can explicitly disable tests
-# by adding "--enable-tests=no" to the above configure command.
-rm $PKG/usr/bin/test*
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
mkdir -p $PKG/usr/share/{applications,pixmaps}
@@ -120,8 +120,6 @@ cp -a doc/README.md COPYING doc/assets-attribution.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-rm -f $PKG/usr/lib*/*.la
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/bitcoin/bitcoin.info b/network/bitcoin/bitcoin.info
index 53e577a7ea..47b798acfb 100644
--- a/network/bitcoin/bitcoin.info
+++ b/network/bitcoin/bitcoin.info
@@ -1,10 +1,10 @@
PRGNAM="bitcoin"
-VERSION="23.0"
+VERSION="27.0"
HOMEPAGE="https://bitcoincore.org"
-DOWNLOAD="https://bitcoincore.org/bin/bitcoin-core-23.0/bitcoin-23.0.tar.gz"
-MD5SUM="250d1239691f8338a7cc4e5439a0ff29"
+DOWNLOAD="https://bitcoincore.org/bin/bitcoin-core-27.0/bitcoin-27.0.tar.gz"
+MD5SUM="0850dc36e811ad780123f12083974a5f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="protobuf3"
+REQUIRES=""
MAINTAINER="nomnombtc"
EMAIL="nomnombtc@arcor.de"
diff --git a/network/bottle/README b/network/bottle/README
index 65cf685e37..fb045a510e 100644
--- a/network/bottle/README
+++ b/network/bottle/README
@@ -1,3 +1,3 @@
-bottle is a fast, simple and lightweight WSGI micro web-framework for
-Python. It is distributed as a single file module and has no
+bottle is a fast, simple and lightweight WSGI micro web-framework
+for Python. It is distributed as a single file module and has no
dependencies other than the Python Standard Library.
diff --git a/network/bottle/bottle.SlackBuild b/network/bottle/bottle.SlackBuild
index 1d5dd5fd1d..7043352813 100644
--- a/network/bottle/bottle.SlackBuild
+++ b/network/bottle/bottle.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for bottle
-# Copyright 2015-2021 Philip Lacroix <slackph at posteo dot de>
+# Copyright 2015-2023 Philip Lacroix <slackph at posteo dot de>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bottle
-VERSION=${VERSION:-0.12.19}
+VERSION=${VERSION:-0.12.23}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,16 +38,13 @@ 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
fi
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
diff --git a/network/bottle/bottle.info b/network/bottle/bottle.info
index 4c38928e34..e2539a1e47 100644
--- a/network/bottle/bottle.info
+++ b/network/bottle/bottle.info
@@ -1,8 +1,8 @@
PRGNAM="bottle"
-VERSION="0.12.19"
+VERSION="0.12.23"
HOMEPAGE="https://bottlepy.org/docs/dev/"
-DOWNLOAD="https://github.com/bottlepy/bottle/archive/0.12.19/bottle-0.12.19.tar.gz"
-MD5SUM="3c07bf37fdd43ab6fa3567b189b59ce7"
+DOWNLOAD="https://github.com/bottlepy/bottle/archive/0.12.23/bottle-0.12.23.tar.gz"
+MD5SUM="01d9bb5079000cf64cdac6f1a174ae29"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/bozohttpd/bozohttpd.SlackBuild b/network/bozohttpd/bozohttpd.SlackBuild
index bea3645dbe..18e3d5e69a 100644
--- a/network/bozohttpd/bozohttpd.SlackBuild
+++ b/network/bozohttpd/bozohttpd.SlackBuild
@@ -24,6 +24,8 @@
# Now maintained by B. Watson <urchlay@slackware.uk>.
+# 20240206 bkw: Update for v20240126.
+# 20230103 bkw: Update for v20220517.
# 20210911 bkw: Update for v20210227.
# 20201102 bkw: Update for v20201014.
# 20191201 bkw: Update for v20190228.
@@ -50,7 +52,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bozohttpd
-VERSION=${VERSION:-20210227}
+VERSION=${VERSION:-20240126}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -74,16 +76,12 @@ 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
@@ -198,6 +196,9 @@ sed -i \
# Probably doesn't hurt anything, but might cause problems later.
# More worrisome is missing crypt() prototype (causes implicit pointer
# to int casts, baaaaad, especially on 64-bit).
+# 20240206 bkw: rather than try to figure out why #define _XOPEN_SOURCE
+# doesn't provide a prototype for strptime(), and #define _GNU_SOURCE
+# doesn't give us vasprintf(), just put the damn prototypes in the patch.
patch -p1 < $CWD/fix_warnings.diff
# Fix build (from Arch Linux' AUR).
diff --git a/network/bozohttpd/bozohttpd.info b/network/bozohttpd/bozohttpd.info
index 11a6b2afcc..b8e85c3dae 100644
--- a/network/bozohttpd/bozohttpd.info
+++ b/network/bozohttpd/bozohttpd.info
@@ -1,8 +1,8 @@
PRGNAM="bozohttpd"
-VERSION="20210227"
-HOMEPAGE="http://www.eterna.com.au/bozohttpd/"
-DOWNLOAD="http://www.eterna.com.au/bozohttpd/bozohttpd-20210227.tar.bz2"
-MD5SUM="40d847aacfc54cd586facae9e6a39e20"
+VERSION="20240126"
+HOMEPAGE="http://eterna23.net/bozohttpd/"
+DOWNLOAD="https://cdn.netbsd.org/pub/pkgsrc/distfiles/LOCAL_PORTS/bozohttpd-20240126.tar.bz2"
+MD5SUM="be23cc851dc706dfe56ba186e9dae2bb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/bozohttpd/fix_warnings.diff b/network/bozohttpd/fix_warnings.diff
index 72b566edf1..1a94ba656d 100644
--- a/network/bozohttpd/fix_warnings.diff
+++ b/network/bozohttpd/fix_warnings.diff
@@ -1,7 +1,7 @@
-diff -Naur bozohttpd-20170201/auth-bozo.c bozohttpd-20170201.patched/auth-bozo.c
---- bozohttpd-20170201/auth-bozo.c 2017-01-31 23:21:23.000000000 -0500
-+++ bozohttpd-20170201.patched/auth-bozo.c 2018-06-29 15:42:59.076820050 -0400
-@@ -34,9 +34,12 @@
+diff -Naur bozohttpd-20240126/auth-bozo.c bozohttpd-20240126.patched/auth-bozo.c
+--- bozohttpd-20240126/auth-bozo.c 2024-02-04 00:55:04.000000000 -0500
++++ bozohttpd-20240126.patched/auth-bozo.c 2024-02-06 23:34:21.493549206 -0500
+@@ -34,11 +34,15 @@
#ifdef DO_HTPASSWD
@@ -13,24 +13,35 @@ diff -Naur bozohttpd-20170201/auth-bozo.c bozohttpd-20170201.patched/auth-bozo.c
+#include <strings.h>
#include <stdlib.h>
#include <unistd.h>
++#include <crypt.h>
-diff -Naur bozohttpd-20170201/bozohttpd.c bozohttpd-20170201.patched/bozohttpd.c
---- bozohttpd-20170201/bozohttpd.c 2017-01-31 23:21:23.000000000 -0500
-+++ bozohttpd-20170201.patched/bozohttpd.c 2018-06-29 15:08:08.066873176 -0400
-@@ -132,6 +132,10 @@
+ #include "bozohttpd.h"
+
+diff -Naur bozohttpd-20240126/bozohttpd.c bozohttpd-20240126.patched/bozohttpd.c
+--- bozohttpd-20240126/bozohttpd.c 2024-02-04 00:55:04.000000000 -0500
++++ bozohttpd-20240126.patched/bozohttpd.c 2024-02-06 23:45:26.157486654 -0500
+@@ -122,6 +122,8 @@
* And so it begins ..
*/
-+/* need this for vasprintf(): */
-+#define _GNU_SOURCE
+#include <stdio.h>
+
#include <sys/param.h>
#include <sys/socket.h>
#include <sys/time.h>
-diff -Naur bozohttpd-20170201/lua-bozo.c bozohttpd-20170201.patched/lua-bozo.c
---- bozohttpd-20170201/lua-bozo.c 2017-01-31 23:21:23.000000000 -0500
-+++ bozohttpd-20170201.patched/lua-bozo.c 2018-06-29 15:43:38.424819051 -0400
+@@ -145,6 +147,9 @@
+ #include <time.h>
+ #include <unistd.h>
+
++extern char *strptime(const char *restrict s, const char *restrict format, struct tm *restrict tm);
++extern int vasprintf(char **restrict strp, const char *restrict fmt, va_list ap);
++
+ #include "bozohttpd.h"
+
+ #ifndef SSL_TIMEOUT
+diff -Naur bozohttpd-20240126/lua-bozo.c bozohttpd-20240126.patched/lua-bozo.c
+--- bozohttpd-20240126/lua-bozo.c 2024-02-04 00:55:04.000000000 -0500
++++ bozohttpd-20240126.patched/lua-bozo.c 2024-02-06 23:16:22.339650764 -0500
@@ -32,6 +32,9 @@
#ifndef NO_LUA_SUPPORT
@@ -41,9 +52,9 @@ diff -Naur bozohttpd-20170201/lua-bozo.c bozohttpd-20170201.patched/lua-bozo.c
#include <sys/param.h>
#include <lua.h>
-diff -Naur bozohttpd-20170201/ssl-bozo.c bozohttpd-20170201.patched/ssl-bozo.c
---- bozohttpd-20170201/ssl-bozo.c 2017-01-31 23:21:23.000000000 -0500
-+++ bozohttpd-20170201.patched/ssl-bozo.c 2018-06-29 15:07:50.813873614 -0400
+diff -Naur bozohttpd-20240126/ssl-bozo.c bozohttpd-20240126.patched/ssl-bozo.c
+--- bozohttpd-20240126/ssl-bozo.c 2024-02-04 00:55:04.000000000 -0500
++++ bozohttpd-20240126.patched/ssl-bozo.c 2024-02-06 23:16:22.339650764 -0500
@@ -32,6 +32,9 @@
/* this code implements SSL and backend IO for bozohttpd */
@@ -53,4 +64,4 @@ diff -Naur bozohttpd-20170201/ssl-bozo.c bozohttpd-20170201.patched/ssl-bozo.c
+
#include <stdarg.h>
#include <stdio.h>
- #include <syslog.h>
+ #include <string.h>
diff --git a/network/bpfmon/bpfmon.SlackBuild b/network/bpfmon/bpfmon.SlackBuild
index b2c5c7b26d..5331c3663c 100644
--- a/network/bpfmon/bpfmon.SlackBuild
+++ b/network/bpfmon/bpfmon.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for bpfmon
-# Copyright Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2022-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=bpfmon
-VERSION=${VERSION:-2.50}
+VERSION=${VERSION:-2.51}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,7 +76,6 @@ 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/makefile.patch
sed -i "s|share/man|man|" Makefile
CFLAGS="$SLKCFLAGS" \
diff --git a/network/bpfmon/bpfmon.info b/network/bpfmon/bpfmon.info
index cb4e56c3ed..f7db79bf56 100644
--- a/network/bpfmon/bpfmon.info
+++ b/network/bpfmon/bpfmon.info
@@ -1,8 +1,8 @@
PRGNAM="bpfmon"
-VERSION="2.50"
+VERSION="2.51"
HOMEPAGE="https://github.com/bbonev/bpfmon"
-DOWNLOAD="https://github.com/bbonev/bpfmon/releases/download/v2.50/bpfmon-2.50.tar.xz"
-MD5SUM="c492f5d5949aaa55346eb5cd49a1d637"
+DOWNLOAD="https://github.com/bbonev/bpfmon/releases/download/v2.51/bpfmon-2.51.tar.xz"
+MD5SUM="54c105b49808ac8b8ad7af0dba6f73b9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yascreen"
diff --git a/network/bpfmon/makefile.patch b/network/bpfmon/makefile.patch
deleted file mode 100644
index 431c58a85a..0000000000
--- a/network/bpfmon/makefile.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 8d2d7d8b9d5f5d5ec3ed8241ff93654f1ebb8973 Mon Sep 17 00:00:00 2001
-From: Boian Bonev <bbonev@ipacct.com>
-Date: Tue, 28 Sep 2021 03:26:08 +0300
-Subject: [PATCH] better install target
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-- remove -T from install for busybox compat (Milan P. Stanić <mps@arvanta.net>)
-- also install the man page
----
- Makefile | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 54d6cbb..a629710 100644
---- a/Makefile
-+++ b/Makefile
-@@ -81,7 +81,8 @@ clean:
- rm -f bpfmon bpfmon.o psort psort.o
-
- install: bpfmon
-- $(INSTALL) -TD -m 0755 $< $(DESTDIR)$(PREFIX)/sbin/$<
-+ $(INSTALL) -D -m 0755 $< $(DESTDIR)$(PREFIX)/sbin/$<
-+ $(INSTALL) -D -m 0644 bpfmon.8 $(DESTDIR)$(PREFIX)/share/man/man8/bpfmon.8
- $(STRIP) $(DESTDIR)$(PREFIX)/sbin/$<
-
- mkotar:
diff --git a/network/brave-browser/brave-browser.SlackBuild b/network/brave-browser/brave-browser.SlackBuild
index 9c25cfc87b..8c757756b4 100644
--- a/network/brave-browser/brave-browser.SlackBuild
+++ b/network/brave-browser/brave-browser.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for brave-browser
-# Copyright 2019-2022 Andrew Payne <phalange@komputermatrix.com>
+# Copyright 2019-2024 Andrew Payne <phalange@komputermatrix.com>
# Copyright 2018-2019 Donald Cooley South Haven, Indiana USA
# All rights reserved.
#
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=brave-browser
-VERSION=${VERSION:-1.44.101}
+VERSION=${VERSION:-1.65.114}
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 4afa788ec5..77dafefff7 100644
--- a/network/brave-browser/brave-browser.info
+++ b/network/brave-browser/brave-browser.info
@@ -1,10 +1,10 @@
PRGNAM="brave-browser"
-VERSION="1.44.101"
+VERSION="1.65.114"
HOMEPAGE="https://brave.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/brave/brave-browser/releases/download/v1.44.101/brave-browser-1.44.101-1.x86_64.rpm"
-MD5SUM_x86_64="2ff64ebb50a32a8290cbdc7f2dec32e2"
+DOWNLOAD_x86_64="https://github.com/brave/brave-browser/releases/download/v1.65.114/brave-browser-1.65.114-1.x86_64.rpm"
+MD5SUM_x86_64="bdd1be24d71588c20f93a29ec15bd791"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/broadcom-wl/README b/network/broadcom-wl/README
new file mode 100644
index 0000000000..4cb4973932
--- /dev/null
+++ b/network/broadcom-wl/README
@@ -0,0 +1,40 @@
+This package was formerly hosted on slackbuilds.org as the
+'broadcom-sta' package and was based upon a Debian patchset. I've re-
+based this package on the Arch Linux package and patchset, and as
+result, renamed it to 'broadcom-wl' to match.
+
+The broadcom-wl package includes the kernel module 'wl', which contains
+a Broadcom-provided proprietary kernel driver known to support the
+listed chipsets.
+
+BCM4311 (PCI ID 14e4:4311, 14e4:4312, 14e4:4313)
+BCM4312 (PCI ID 14e4:4315)
+BCM4313 (PCI ID 14e4:4727)
+BCM4321 (PCI ID 14e4:4328, 14e4:4329, 14e4:432a)
+BCM4322 (PCI ID 14e4:432b, 14e4:432c, 14e4:432d)
+BCM43142 (PCI ID 14e4:4365)
+BCM43224 (PCI ID 14e4:4353)
+BCM43225 (PCI ID 14e4:4357)
+BCM43227 (PCI ID 14e4:4358)
+BCM43228 (PCI ID 14e4:4359)
+BCM4331 (PCI ID 14e4:4331)
+BCM4360 (PCI ID 14e4:43a0)
+BCM4352 (PCI ID 14e4:43b1)
+
+Some of these devices are also supported by the free b43 and brcm80211
+drivers. In order to avoid conflicts /etc/modprobe.d/b43_blacklist.conf
+disables these drivers.
+
+Read the included LICENSE.txt file (placed in /usr/doc) before using the
+proprietary driver.
+
+To build the module for a kernel that isn't currently running on the
+system, pass that kernel's "uname -r" output such as:
+
+ KERNEL=4.4.67 ./broadcom-wl.SlackBuild
+
+If you would like to name your interface eth1 instead of wlan0, either
+rename the device in /etc/udev/rules.d/70-persistent-net.rules or build
+the package with:
+
+ IFNAME=eth ./broadcom-wl.SlackBuild
diff --git a/network/broadcom-wl/b43_blacklist.conf.new b/network/broadcom-wl/b43_blacklist.conf.new
new file mode 100644
index 0000000000..76c457bc43
--- /dev/null
+++ b/network/broadcom-wl/b43_blacklist.conf.new
@@ -0,0 +1,9 @@
+# wl module from Broadcom conflicts with the following modules:
+blacklist b43
+blacklist b43legacy
+blacklist b44
+blacklist bcma
+blacklist brcm80211
+blacklist brcmfmac
+blacklist brcmsmac
+blacklist ssb
diff --git a/network/broadcom-wl/broadcom-wl.SlackBuild b/network/broadcom-wl/broadcom-wl.SlackBuild
new file mode 100644
index 0000000000..6a37971946
--- /dev/null
+++ b/network/broadcom-wl/broadcom-wl.SlackBuild
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+# Slackware build script for broadcom-wl
+#
+# SlackBuild formerly known as 'broadcom-sta' on slackbuilds.org
+#
+# Changed the name of the package to match the patchset in use, this is
+# re-based on patches for Arch Linux. See:
+# 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.
+#
+# Permission to use, copy, modify, and distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=broadcom-wl
+VERSION=${VERSION:-6.30.223.271}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+KERNEL=${KERNEL:-$( uname -r )}
+IFNAME=${IFNAME:-wlan}
+
+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 "$ARCH" in
+ i?86)
+ SRCNAM=hybrid-v35-nodebug-pcoem
+ ;;
+ x86_64)
+ SRCNAM=hybrid-v35_64-nodebug-pcoem
+ ;;
+ *)
+ echo "$ARCH is not supported..."
+ exit 1
+ ;;
+esac
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$( echo $VERSION | tr . _ ).tar.gz
+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 {} \;
+
+if [ "$IFNAME" != "eth" ]; then
+ sed -i "/BRCM_WLAN_IFNAME/s/eth/$IFNAME/" src/wl/sys/wl_linux.c
+fi
+
+patch -p2 < $CWD/patches/000-remove-time_date-macros.patch || exit 1
+patch -p1 < $CWD/patches/001-null-pointer-fix.patch || exit 1
+patch -p1 < $CWD/patches/002-rdtscl.patch || exit 1
+patch -p1 < $CWD/patches/003-linux47.patch || exit 1
+patch -p1 < $CWD/patches/004-linux48.patch || exit 1
+patch -p1 < $CWD/patches/005-debian-fix-kernel-warnings.patch || exit 1
+patch -p1 < $CWD/patches/006-linux411.patch || exit 1
+patch -p1 < $CWD/patches/007-linux412.patch || exit 1
+patch -p1 < $CWD/patches/008-linux415.patch || exit 1
+patch -p1 < $CWD/patches/009-fix_mac_profile_discrepancy.patch || exit 1
+patch -p1 < $CWD/patches/010-linux56.patch || exit 1
+patch -p1 < $CWD/patches/011-linux59.patch || exit 1
+patch -p1 < $CWD/patches/012-linux517.patch || exit 1
+patch -p1 < $CWD/patches/013-linux518.patch || exit 1
+patch -p1 < $CWD/patches/014-linux414.patch || exit 1
+patch -p1 < $CWD/patches/015-linux600.patch || exit 1
+patch -p1 < $CWD/patches/016-linux601.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
+sed -i 's/get_ds()/KERNEL_DS/g' src/wl/sys/wl_cfg80211_hybrid.c
+
+env -u ARCH make -C /lib/modules/$KERNEL/build M=$(pwd) clean
+env -u ARCH make -C /lib/modules/$KERNEL/build M=$(pwd)
+
+mkdir -p $PKG/lib/modules/$KERNEL/kernel/extra
+cp wl.ko $PKG/lib/modules/$KERNEL/kernel/extra
+
+mkdir -p $PKG/etc/modprobe.d
+cat $CWD/b43_blacklist.conf.new > $PKG/etc/modprobe.d/b43_blacklist.conf.new
+
+mkdir -p $PKG/usr/doc/$PRGNAM-${VERSION}_$( echo $KERNEL | tr - _ )
+cp -a lib/LICENSE.txt $PKG/usr/doc/$PRGNAM-${VERSION}_$( echo $KERNEL | tr - _ )
+chmod 644 $PKG/usr/doc/$PRGNAM-${VERSION}_$( echo $KERNEL | tr - _ )/*
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-${VERSION}_$( echo $KERNEL | tr - _ )/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-${VERSION}_$( echo $KERNEL | tr - _ )-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/broadcom-wl/broadcom-wl.info b/network/broadcom-wl/broadcom-wl.info
new file mode 100644
index 0000000000..4000c07708
--- /dev/null
+++ b/network/broadcom-wl/broadcom-wl.info
@@ -0,0 +1,14 @@
+PRGNAM="broadcom-wl"
+VERSION="6.30.223.271"
+HOMEPAGE="https://www.broadcom.com/support/802.11"
+DOWNLOAD="https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/README_6.30.223.271.txt \
+ https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35-nodebug-pcoem-6_30_223_271.tar.gz"
+MD5SUM="e3dab6d9dea12b6487ccf24d012e0350 \
+ 4e75f4cb7d87f690f9659ffc478495f0"
+DOWNLOAD_x86_64="https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/README_6.30.223.271.txt \
+ https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/hybrid-v35_64-nodebug-pcoem-6_30_223_271.tar.gz"
+MD5SUM_x86_64="e3dab6d9dea12b6487ccf24d012e0350 \
+ 115903050c41d466161784d4c843f4f9"
+REQUIRES=""
+MAINTAINER="Jay Lanagan"
+EMAIL="j@lngn.net"
diff --git a/network/broadcom-wl/doinst.sh.gz b/network/broadcom-wl/doinst.sh.gz
new file mode 100644
index 0000000000..10b4e4f29a
--- /dev/null
+++ b/network/broadcom-wl/doinst.sh.gz
Binary files differ
diff --git a/network/broadcom-wl/patches/000-remove-time_date-macros.patch b/network/broadcom-wl/patches/000-remove-time_date-macros.patch
new file mode 100644
index 0000000000..3cd3fc845b
--- /dev/null
+++ b/network/broadcom-wl/patches/000-remove-time_date-macros.patch
@@ -0,0 +1,29 @@
+Description: Remove __TIME__ and __DATE__ macros from code
+Author: Cyril Lacoux <clacoux@easter-eggs.com>
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=752864
+Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754434
+Last-Update: 2014-08-13
+
+Index: broadcom-sta/amd64/src/wl/sys/wl_linux.c
+===================================================================
+--- broadcom-sta.orig/amd64/src/wl/sys/wl_linux.c
++++ broadcom-sta/amd64/src/wl/sys/wl_linux.c
+@@ -726,7 +726,7 @@ wl_attach(uint16 vendor, uint16 device,
+ WL_ALL_PASSIVE_ENAB(wl) ? ", Passive Mode" : "", EPI_VERSION_STR);
+
+ #ifdef BCMDBG
+- printf(" (Compiled in " SRCBASE " at " __TIME__ " on " __DATE__ ")");
++ printf(" (Compiled in " SRCBASE);
+ #endif
+ printf("\n");
+
+@@ -2051,8 +2051,7 @@ wl_osl_pcie_rc(struct wl_info *wl, uint
+ void
+ wl_dump_ver(wl_info_t *wl, struct bcmstrbuf *b)
+ {
+- bcm_bprintf(b, "wl%d: %s %s version %s\n", wl->pub->unit,
+- __DATE__, __TIME__, EPI_VERSION_STR);
++ bcm_bprintf(b, "wl%d: version %s\n", wl->pub->unit, EPI_VERSION_STR);
+ }
+
+ #if defined(BCMDBG)
diff --git a/network/broadcom-wl/patches/001-null-pointer-fix.patch b/network/broadcom-wl/patches/001-null-pointer-fix.patch
new file mode 100644
index 0000000000..adef19f30a
--- /dev/null
+++ b/network/broadcom-wl/patches/001-null-pointer-fix.patch
@@ -0,0 +1,27 @@
+Description: Fixing null pointer crash
+
+Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=773713
+Bug-Ubuntu: https://launchpad.net/bugs/1415880
+Last-Update: 2015-08-18
+
+---
+ src/wl/sys/wl_linux.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index 860b935..295156f 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -2157,8 +2157,8 @@ wl_start(struct sk_buff *skb, struct net_device *dev)
+ wlif = WL_DEV_IF(dev);
+ wl = WL_INFO(dev);
+
++ skb->prev = NULL;
+ if (WL_ALL_PASSIVE_ENAB(wl) || (WL_RTR() && WL_CONFIG_SMP())) {
+- skb->prev = NULL;
+
+ TXQ_LOCK(wl);
+
+--
+1.9.1
+
diff --git a/network/broadcom-wl/patches/002-rdtscl.patch b/network/broadcom-wl/patches/002-rdtscl.patch
new file mode 100644
index 0000000000..1b9862cc3d
--- /dev/null
+++ b/network/broadcom-wl/patches/002-rdtscl.patch
@@ -0,0 +1,22 @@
+Since Linux 4.3, rdtscl() is no longer available and native_read_tsc()
+is renamed to rdtsc(). Move the macro contents in-line and call the
+new function. References:
+
+https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=fe47ae6e1a5005b2e82f7eab57b5c3820453293a
+https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=4ea1636b04dbd66536fa387bae2eea463efc705b
+
+diff -ru a/src/shared/linux_osl.c b/src/shared/linux_osl.c
+--- a/src/shared/linux_osl.c 2015-09-19 01:47:15.000000000 +0300
++++ b/src/shared/linux_osl.c 2015-11-21 15:20:30.585902518 +0200
+@@ -932,7 +932,11 @@
+ uint cycles;
+
+ #if defined(__i386__)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 3, 0)
++ cycles = (u32)rdtsc();
++#else
+ rdtscl(cycles);
++#endif
+ #else
+ cycles = 0;
+ #endif
diff --git a/network/broadcom-wl/patches/003-linux47.patch b/network/broadcom-wl/patches/003-linux47.patch
new file mode 100644
index 0000000000..566680a091
--- /dev/null
+++ b/network/broadcom-wl/patches/003-linux47.patch
@@ -0,0 +1,109 @@
+Since Linux 4.7, the enum ieee80211_band is no longer used
+
+This shall cause no problem's since both enums ieee80211_band
+and nl80211_band were added in the same commit:
+https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=13ae75b103e07304a34ab40c9136e9f53e06475c
+
+This patch refactors the references of IEEE80211_BAND_* to NL80211_BAND_*
+
+Reference:
+https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit?id=57fbcce37be7c1d2622b56587c10ade00e96afa3
+
+--- a/src/wl/sys/wl_cfg80211_hybrid.c 2016-06-13 11:57:36.159340297 -0500
++++ b/src/wl/sys/wl_cfg80211_hybrid.c 2016-06-13 11:58:18.442323435 -0500
+@@ -236,7 +236,7 @@
+ #endif
+
+ #define CHAN2G(_channel, _freq, _flags) { \
+- .band = IEEE80211_BAND_2GHZ, \
++ .band = NL80211_BAND_2GHZ, \
+ .center_freq = (_freq), \
+ .hw_value = (_channel), \
+ .flags = (_flags), \
+@@ -245,7 +245,7 @@
+ }
+
+ #define CHAN5G(_channel, _flags) { \
+- .band = IEEE80211_BAND_5GHZ, \
++ .band = NL80211_BAND_5GHZ, \
+ .center_freq = 5000 + (5 * (_channel)), \
+ .hw_value = (_channel), \
+ .flags = (_flags), \
+@@ -379,7 +379,7 @@
+ };
+
+ static struct ieee80211_supported_band __wl_band_2ghz = {
+- .band = IEEE80211_BAND_2GHZ,
++ .band = NL80211_BAND_2GHZ,
+ .channels = __wl_2ghz_channels,
+ .n_channels = ARRAY_SIZE(__wl_2ghz_channels),
+ .bitrates = wl_g_rates,
+@@ -387,7 +387,7 @@
+ };
+
+ static struct ieee80211_supported_band __wl_band_5ghz_a = {
+- .band = IEEE80211_BAND_5GHZ,
++ .band = NL80211_BAND_5GHZ,
+ .channels = __wl_5ghz_a_channels,
+ .n_channels = ARRAY_SIZE(__wl_5ghz_a_channels),
+ .bitrates = wl_a_rates,
+@@ -395,7 +395,7 @@
+ };
+
+ static struct ieee80211_supported_band __wl_band_5ghz_n = {
+- .band = IEEE80211_BAND_5GHZ,
++ .band = NL80211_BAND_5GHZ,
+ .channels = __wl_5ghz_n_channels,
+ .n_channels = ARRAY_SIZE(__wl_5ghz_n_channels),
+ .bitrates = wl_a_rates,
+@@ -1876,8 +1876,8 @@
+ wdev->wiphy->max_num_pmkids = WL_NUM_PMKIDS_MAX;
+ #endif
+ wdev->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION) | BIT(NL80211_IFTYPE_ADHOC);
+- wdev->wiphy->bands[IEEE80211_BAND_2GHZ] = &__wl_band_2ghz;
+- wdev->wiphy->bands[IEEE80211_BAND_5GHZ] = &__wl_band_5ghz_a;
++ wdev->wiphy->bands[NL80211_BAND_2GHZ] = &__wl_band_2ghz;
++ wdev->wiphy->bands[NL80211_BAND_5GHZ] = &__wl_band_5ghz_a;
+ wdev->wiphy->signal_type = CFG80211_SIGNAL_TYPE_MBM;
+ wdev->wiphy->cipher_suites = __wl_cipher_suites;
+ wdev->wiphy->n_cipher_suites = ARRAY_SIZE(__wl_cipher_suites);
+@@ -2000,7 +2000,7 @@
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39)
+ freq = ieee80211_channel_to_frequency(notif_bss_info->channel,
+ (notif_bss_info->channel <= CH_MAX_2G_CHANNEL) ?
+- IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ);
++ NL80211_BAND_2GHZ : NL80211_BAND_5GHZ);
+ #else
+ freq = ieee80211_channel_to_frequency(notif_bss_info->channel);
+ #endif
+@@ -2116,7 +2116,7 @@
+ return err;
+ }
+ chan = wf_chspec_ctlchan(chanspec);
+- band = (chan <= CH_MAX_2G_CHANNEL) ? IEEE80211_BAND_2GHZ : IEEE80211_BAND_5GHZ;
++ band = (chan <= CH_MAX_2G_CHANNEL) ? NL80211_BAND_2GHZ : NL80211_BAND_5GHZ;
+ freq = ieee80211_channel_to_frequency(chan, band);
+ channel = ieee80211_get_channel(wiphy, freq);
+ cfg80211_ibss_joined(ndev, (u8 *)&wl->bssid, channel, GFP_KERNEL);
+@@ -2250,10 +2250,10 @@
+ join_params->params.chanspec_list[0] =
+ ieee80211_frequency_to_channel(chan->center_freq);
+
+- if (chan->band == IEEE80211_BAND_2GHZ) {
++ if (chan->band == NL80211_BAND_2GHZ) {
+ chanspec |= WL_CHANSPEC_BAND_2G;
+ }
+- else if (chan->band == IEEE80211_BAND_5GHZ) {
++ else if (chan->band == NL80211_BAND_5GHZ) {
+ chanspec |= WL_CHANSPEC_BAND_5G;
+ }
+ else {
+@@ -2885,7 +2885,7 @@
+
+ if (phy == 'n' || phy == 'a' || phy == 'v') {
+ wiphy = wl_to_wiphy(wl);
+- wiphy->bands[IEEE80211_BAND_5GHZ] = &__wl_band_5ghz_n;
++ wiphy->bands[NL80211_BAND_5GHZ] = &__wl_band_5ghz_n;
+ }
+
+ return err;
diff --git a/network/broadcom-wl/patches/004-linux48.patch b/network/broadcom-wl/patches/004-linux48.patch
new file mode 100644
index 0000000000..20e8a9ae49
--- /dev/null
+++ b/network/broadcom-wl/patches/004-linux48.patch
@@ -0,0 +1,64 @@
+From d3f93542326a06d920c6eb89b703384290d37b8b Mon Sep 17 00:00:00 2001
+From: Alberto Milone <alberto.milone@canonical.com>
+Date: Fri, 2 Sep 2016 17:35:34 +0200
+Subject: [PATCH 1/1] Add support for Linux 4.8
+
+Orginal author: Krzysztof Kolasa
+---
+ src/wl/sys/wl_cfg80211_hybrid.c | 22 ++++++++++++++++++++++
+ 1 file changed, 22 insertions(+)
+
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index 2fc71fe..ec5e472 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -2388,8 +2388,16 @@ wl_bss_connect_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ s32 err = 0;
+
+ if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++ struct cfg80211_scan_info info = {
++ .aborted = true,
++ };
++ WL_DBG(("%s: Aborting scan\n", __FUNCTION__));
++ cfg80211_scan_done(wl->scan_request, &info);
++#else
+ WL_DBG(("%s: Aborting scan\n", __FUNCTION__));
+ cfg80211_scan_done(wl->scan_request, true);
++#endif
+ wl->scan_request = NULL;
+ }
+
+@@ -2490,7 +2498,14 @@ wl_notify_scan_status(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+
+ scan_done_out:
+ if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++ struct cfg80211_scan_info info = {
++ .aborted = false,
++ };
++ cfg80211_scan_done(wl->scan_request, &info);
++#else
+ cfg80211_scan_done(wl->scan_request, false);
++#endif
+ wl->scan_request = NULL;
+ }
+ rtnl_unlock();
+@@ -2909,7 +2924,14 @@ s32 wl_cfg80211_down(struct net_device *ndev)
+ s32 err = 0;
+
+ if (wl->scan_request) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)
++ struct cfg80211_scan_info info = {
++ .aborted = true,
++ };
++ cfg80211_scan_done(wl->scan_request, &info);
++#else
+ cfg80211_scan_done(wl->scan_request, true);
++#endif
+ wl->scan_request = NULL;
+ }
+
+--
+2.7.4
+
diff --git a/network/broadcom-wl/patches/005-debian-fix-kernel-warnings.patch b/network/broadcom-wl/patches/005-debian-fix-kernel-warnings.patch
new file mode 100644
index 0000000000..e9bf66a959
--- /dev/null
+++ b/network/broadcom-wl/patches/005-debian-fix-kernel-warnings.patch
@@ -0,0 +1,161 @@
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -1968,7 +1968,7 @@
+
+ if (dtoh32(bi->length) > WL_BSS_INFO_MAX) {
+ WL_DBG(("Beacon is larger than buffer. Discarding\n"));
+- return err;
++ return -E2BIG;
+ }
+ notif_bss_info = kzalloc(sizeof(*notif_bss_info) + sizeof(*mgmt) - sizeof(u8) +
+ WL_BSS_INFO_MAX, GFP_KERNEL);
+@@ -1992,9 +1992,15 @@
+ beacon_proberesp->capab_info = cpu_to_le16(bi->capability);
+ wl_rst_ie(wl);
+
+- wl_mrg_ie(wl, ((u8 *) bi) + bi->ie_offset, bi->ie_length);
+- wl_cp_ie(wl, beacon_proberesp->variable, WL_BSS_INFO_MAX -
++ err = wl_mrg_ie(wl, ((u8 *) bi) + bi->ie_offset, bi->ie_length);
++ if (err)
++ goto inform_single_bss_out;
++
++ err = wl_cp_ie(wl, beacon_proberesp->variable, WL_BSS_INFO_MAX -
+ offsetof(struct wl_cfg80211_bss_info, frame_buf));
++ if (err)
++ goto inform_single_bss_out;
++
+ notif_bss_info->frame_len = offsetof(struct ieee80211_mgmt, u.beacon.variable) +
+ wl_get_ielen(wl);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 39)
+@@ -2006,14 +2012,14 @@
+ #endif
+ if (freq == 0) {
+ WL_ERR(("Invalid channel, fail to chcnage channel to freq\n"));
+- kfree(notif_bss_info);
+- return -EINVAL;
++ err = -EINVAL;
++ goto inform_single_bss_out;
+ }
+ channel = ieee80211_get_channel(wiphy, freq);
+ if (unlikely(!channel)) {
+ WL_ERR(("ieee80211_get_channel error\n"));
+- kfree(notif_bss_info);
+- return -EINVAL;
++ err = -EINVAL;
++ goto inform_single_bss_out;
+ }
+
+ WL_DBG(("SSID : \"%s\", rssi %d, channel %d, capability : 0x04%x, bssid %pM\n",
+@@ -2021,28 +2027,37 @@
+ mgmt->u.beacon.capab_info, &bi->BSSID));
+
+ signal = notif_bss_info->rssi * 100;
+- cbss = cfg80211_inform_bss_frame(wiphy, channel, mgmt,
+- le16_to_cpu(notif_bss_info->frame_len), signal, GFP_KERNEL);
+- if (unlikely(!cbss)) {
+- WL_ERR(("cfg80211_inform_bss_frame error\n"));
+- kfree(notif_bss_info);
+- return -EINVAL;
+- }
+
+- notify_ie = (u8 *)bi + le16_to_cpu(bi->ie_offset);
+- notify_ielen = le32_to_cpu(bi->ie_length);
++ if (!wl->scan_request) {
++ cbss = cfg80211_inform_bss_frame(wiphy, channel, mgmt,
++ le16_to_cpu(notif_bss_info->frame_len), signal, GFP_KERNEL);
++ if (unlikely(!cbss)) {
++ WL_ERR(("cfg80211_inform_bss_frame error\n"));
++ err = -ENOMEM;
++ goto inform_single_bss_out;
++ }
++ } else {
++ notify_ie = (u8 *)bi + le16_to_cpu(bi->ie_offset);
++ notify_ielen = le32_to_cpu(bi->ie_length);
+ #if LINUX_VERSION_CODE < KERNEL_VERSION(3, 18, 0)
+- cbss = cfg80211_inform_bss(wiphy, channel, (const u8 *)(bi->BSSID.octet),
+- 0, beacon_proberesp->capab_info, beacon_proberesp->beacon_int,
+- (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
++ cbss = cfg80211_inform_bss(wiphy, channel, (const u8 *)(bi->BSSID.octet),
++ 0, beacon_proberesp->capab_info, beacon_proberesp->beacon_int,
++ (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
+ #else
+- cbss = cfg80211_inform_bss(wiphy, channel, CFG80211_BSS_FTYPE_UNKNOWN, (const u8 *)(bi->BSSID.octet),
+- 0, beacon_proberesp->capab_info, beacon_proberesp->beacon_int,
+- (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
++ cbss = cfg80211_inform_bss(wiphy, channel,
++ wl->active_scan ?
++ CFG80211_BSS_FTYPE_PRESP : CFG80211_BSS_FTYPE_BEACON,
++ (const u8 *)(bi->BSSID.octet), 0,
++ beacon_proberesp->capab_info,
++ beacon_proberesp->beacon_int,
++ (const u8 *)notify_ie, notify_ielen, signal, GFP_KERNEL);
+ #endif
+-
+- if (unlikely(!cbss))
+- return -ENOMEM;
++ if (unlikely(!cbss)) {
++ WL_ERR(("cfg80211_inform_bss error\n"));
++ err = -ENOMEM;
++ goto inform_single_bss_out;
++ }
++ }
+
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0)
+ cfg80211_put_bss(wiphy, cbss);
+@@ -2050,6 +2065,7 @@
+ cfg80211_put_bss(cbss);
+ #endif
+
++inform_single_bss_out:
+ kfree(notif_bss_info);
+
+ return err;
+@@ -2316,6 +2332,9 @@
+ if (err)
+ goto update_bss_info_out;
+
++ bss = cfg80211_get_bss(wl_to_wiphy(wl), NULL, (s8 *)&wl->bssid,
++ ssid->SSID, ssid->SSID_len, WLAN_CAPABILITY_ESS, WLAN_CAPABILITY_ESS);
++
+ ie = ((u8 *)bi) + bi->ie_offset;
+ ie_len = bi->ie_length;
+ } else {
+@@ -2328,11 +2347,18 @@
+ ie_len = bss->len_information_elements;
+ #endif
+ wl->conf->channel = *bss->channel;
++ }
++
++ if (bss) {
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 9, 0)
+ cfg80211_put_bss(wiphy, bss);
+ #else
+ cfg80211_put_bss(bss);
+ #endif
++ } else {
++ WL_DBG(("Could not update BSS\n"));
++ err = -EINVAL;
++ goto update_bss_info_out;
+ }
+
+ tim = bcm_parse_tlvs(ie, ie_len, WLAN_EID_TIM);
+@@ -2360,10 +2386,17 @@
+ struct wl_cfg80211_connect_info *conn_info = wl_to_conn(wl);
+ s32 err = 0;
+
+- wl_get_assoc_ies(wl);
++ err = wl_get_assoc_ies(wl);
++ if (err)
++ return err;
++
+ memcpy(wl->profile->bssid, &e->addr, ETHER_ADDR_LEN);
+ memcpy(&wl->bssid, &e->addr, ETHER_ADDR_LEN);
+- wl_update_bss_info(wl);
++
++ err = wl_update_bss_info(wl);
++ if (err)
++ return err;
++
+ cfg80211_roamed(ndev,
+ #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
+ &wl->conf->channel,
diff --git a/network/broadcom-wl/patches/006-linux411.patch b/network/broadcom-wl/patches/006-linux411.patch
new file mode 100644
index 0000000000..7a2e8c0c6c
--- /dev/null
+++ b/network/broadcom-wl/patches/006-linux411.patch
@@ -0,0 +1,27 @@
+diff -u sys0/wl_cfg80211_hybrid.c sys/wl_cfg80211_hybrid.c
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -39,6 +39,10 @@
+ #include <proto/802.11.h>
+ #include <wl_cfg80211_hybrid.h>
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0)
++#include <linux/sched/signal.h>
++#endif
++
+ #define EVENT_TYPE(e) dtoh32((e)->event_type)
+ #define EVENT_FLAGS(e) dtoh16((e)->flags)
+ #define EVENT_STATUS(e) dtoh32((e)->status)
+diff -u sys0/wl_linux.c sys/wl_linux.c
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -2915,7 +2915,9 @@
+ if (skb == NULL) return;
+
+ skb->dev = wl->monitor_dev;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0)
+ skb->dev->last_rx = jiffies;
++#endif
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
+ skb_reset_mac_header(skb);
+ #else
diff --git a/network/broadcom-wl/patches/007-linux412.patch b/network/broadcom-wl/patches/007-linux412.patch
new file mode 100644
index 0000000000..1673f063cd
--- /dev/null
+++ b/network/broadcom-wl/patches/007-linux412.patch
@@ -0,0 +1,78 @@
+From 0b888bf115612074df99654140a1980111c29748 Mon Sep 17 00:00:00 2001
+From: Antoine Cotten <tonio.cotten@gmail.com>
+Date: Fri, 7 Jul 2017 15:17:47 +0200
+Subject: [PATCH] Apply patch from Debian bug #867258
+
+Compile fix with kernel 4.12
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=867258
+---
+ src/wl/sys/wl_cfg80211_hybrid.c | 29 +++++++++++++++++++++++++----
+ 1 file changed, 25 insertions(+), 4 deletions(-)
+
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index c46944a..1a9840a 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -53,7 +53,11 @@ u32 wl_dbg_level = WL_DBG_ERR;
+ #endif
+
+ static s32 wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
+- enum nl80211_iftype type, u32 *flags, struct vif_params *params);
++ enum nl80211_iftype type,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 12, 0)
++ u32 *flags,
++#endif
++ struct vif_params *params);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 6, 0)
+ static s32
+ wl_cfg80211_scan(struct wiphy *wiphy,
+@@ -466,8 +470,11 @@ wl_dev_ioctl(struct net_device *dev, u32 cmd, void *arg, u32 len)
+
+ static s32
+ wl_cfg80211_change_iface(struct wiphy *wiphy, struct net_device *ndev,
+- enum nl80211_iftype type, u32 *flags,
+- struct vif_params *params)
++ enum nl80211_iftype type,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 12, 0)
++ u32 *flags,
++#endif
++ struct vif_params *params)
+ {
+ struct wl_cfg80211_priv *wl = wiphy_to_wl(wiphy);
+ struct wireless_dev *wdev;
+@@ -2387,6 +2394,15 @@ wl_bss_roaming_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ const wl_event_msg_t *e, void *data)
+ {
+ struct wl_cfg80211_connect_info *conn_info = wl_to_conn(wl);
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
++ struct cfg80211_roam_info roam_info = {
++ .bssid = wl->profile->bssid,
++ .req_ie = conn_info->req_ie,
++ .req_ie_len = conn_info->req_ie_len,
++ .resp_ie = conn_info->resp_ie,
++ .resp_ie_len = conn_info->resp_ie_len,
++ };
++#endif
+ s32 err = 0;
+
+ err = wl_get_assoc_ies(wl);
+@@ -2401,12 +2417,17 @@ wl_bss_roaming_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ return err;
+
+ cfg80211_roamed(ndev,
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
++ &roam_info,
++#else
+ #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 39)
+ &wl->conf->channel,
+ #endif
+ (u8 *)&wl->bssid,
+ conn_info->req_ie, conn_info->req_ie_len,
+- conn_info->resp_ie, conn_info->resp_ie_len, GFP_KERNEL);
++ conn_info->resp_ie, conn_info->resp_ie_len,
++#endif
++ GFP_KERNEL);
+ WL_DBG(("Report roaming result\n"));
+
+ set_bit(WL_STATUS_CONNECTED, &wl->status);
+
diff --git a/network/broadcom-wl/patches/008-linux415.patch b/network/broadcom-wl/patches/008-linux415.patch
new file mode 100644
index 0000000000..1bced2f68a
--- /dev/null
+++ b/network/broadcom-wl/patches/008-linux415.patch
@@ -0,0 +1,46 @@
+--- a/src/wl/sys/wl_linux.c 2017-07-17 00:11:24.000000000 +0100
++++ b/src/wl/sys/wl_linux.c 2018-01-27 09:49:47.057799596 +0000
+@@ -93,7 +93,11 @@
+
+ #include <wlc_wowl.h>
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static void wl_timer(struct timer_list *tl);
++#else
+ static void wl_timer(ulong data);
++#endif
+ static void _wl_timer(wl_timer_t *t);
+ static struct net_device *wl_alloc_linux_if(wl_if_t *wlif);
+
+@@ -2297,10 +2301,17 @@
+ atomic_dec(&t->wl->callbacks);
+ }
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++static void
++wl_timer(struct timer_list *tl)
++{
++ wl_timer_t *t = (wl_timer_t *)tl;
++#else
+ static void
+ wl_timer(ulong data)
+ {
+ wl_timer_t *t = (wl_timer_t *)data;
++#endif
+
+ if (!WL_ALL_PASSIVE_ENAB(t->wl))
+ _wl_timer(t);
+@@ -2352,9 +2363,13 @@
+
+ bzero(t, sizeof(wl_timer_t));
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
++ timer_setup(&t->timer, wl_timer, 0);
++#else
+ init_timer(&t->timer);
+ t->timer.data = (ulong) t;
+ t->timer.function = wl_timer;
++#endif
+ t->wl = wl;
+ t->fn = fn;
+ t->arg = arg;
diff --git a/network/broadcom-wl/patches/009-fix_mac_profile_discrepancy.patch b/network/broadcom-wl/patches/009-fix_mac_profile_discrepancy.patch
new file mode 100644
index 0000000000..4260eba505
--- /dev/null
+++ b/network/broadcom-wl/patches/009-fix_mac_profile_discrepancy.patch
@@ -0,0 +1,14 @@
+--- a/src/wl/sys/wl_cfg80211_hybrid.c 2015-09-19 00:47:30.000000000 +0200
++++ b/src/wl/sys/wl_cfg80211_hybrid.c 2018-11-14 14:06:03.313487995 +0100
+@@ -1444,11 +1444,10 @@
+ s32 rate;
+ s32 err = 0;
+
+ if (memcmp(mac, wl->profile->bssid, ETHER_ADDR_LEN)) {
+ WL_ERR(("Wrong Mac address, mac = %pM profile =%pM\n", mac, wl->profile->bssid));
+- return -ENOENT;
+ }
+
+ err = wl_dev_ioctl(dev, WLC_GET_RATE, &rate, sizeof(rate));
+ if (err) {
+ WL_DBG(("Could not get rate (%d)\n", err));
diff --git a/network/broadcom-wl/patches/010-linux56.patch b/network/broadcom-wl/patches/010-linux56.patch
new file mode 100644
index 0000000000..f8d5783819
--- /dev/null
+++ b/network/broadcom-wl/patches/010-linux56.patch
@@ -0,0 +1,55 @@
+diff --git a/src/shared/linux_osl.c b/src/shared/linux_osl.c
+index 6157d18..8237ec7 100644
+--- a/src/shared/linux_osl.c
++++ b/src/shared/linux_osl.c
+@@ -942,7 +942,7 @@ osl_getcycles(void)
+ void *
+ osl_reg_map(uint32 pa, uint size)
+ {
+- return (ioremap_nocache((unsigned long)pa, (unsigned long)size));
++ return (ioremap((unsigned long)pa, (unsigned long)size));
+ }
+
+ void
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index 0d05100..2ed1f0d 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -582,7 +582,7 @@ wl_attach(uint16 vendor, uint16 device, ulong regs,
+ }
+ wl->bcm_bustype = bustype;
+
+- if ((wl->regsva = ioremap_nocache(dev->base_addr, PCI_BAR0_WINSZ)) == NULL) {
++ if ((wl->regsva = ioremap(dev->base_addr, PCI_BAR0_WINSZ)) == NULL) {
+ WL_ERROR(("wl%d: ioremap() failed\n", unit));
+ goto fail;
+ }
+@@ -772,7 +772,7 @@ wl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
+ if ((val & 0x0000ff00) != 0)
+ pci_write_config_dword(pdev, 0x40, val & 0xffff00ff);
+ bar1_size = pci_resource_len(pdev, 2);
+- bar1_addr = (uchar *)ioremap_nocache(pci_resource_start(pdev, 2),
++ bar1_addr = (uchar *)ioremap(pci_resource_start(pdev, 2),
+ bar1_size);
+ wl = wl_attach(pdev->vendor, pdev->device, pci_resource_start(pdev, 0), PCI_BUS, pdev,
+ pdev->irq, bar1_addr, bar1_size);
+@@ -3335,12 +3335,19 @@ wl_proc_write(struct file *filp, const char __user *buff, size_t length, loff_t
+ }
+
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 10, 0)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 6, 0)
++static struct proc_ops wl_fops = {
++ .proc_read = wl_proc_read,
++ .proc_write = wl_proc_write,
++};
++#else
+ static const struct file_operations wl_fops = {
+ .owner = THIS_MODULE,
+ .read = wl_proc_read,
+ .write = wl_proc_write,
+ };
+ #endif
++#endif
+
+ static int
+ wl_reg_proc_entry(wl_info_t *wl)
diff --git a/network/broadcom-wl/patches/011-linux59.patch b/network/broadcom-wl/patches/011-linux59.patch
new file mode 100644
index 0000000000..6ef476464c
--- /dev/null
+++ b/network/broadcom-wl/patches/011-linux59.patch
@@ -0,0 +1,211 @@
+From f3d652840f8dd959395065a1cf67ca40b04ec69b Mon Sep 17 00:00:00 2001
+From: Joan Bruguera <joanbrugueram@gmail.com>
+Date: Tue, 13 Oct 2020 19:35:55 +0200
+Subject: [PATCH] Get rid of get_fs/set_fs calls in Broadcom WL driver.
+
+Tentative patch for broadcom-wl 6.30.223.271 driver for Linux 5.10 (tested -rc1 up to 5.10.1)
+
+Applies on top of all the patches applied to broadcom-wl-dkms 6.30.223.271-23 on Arch Linux.
+
+NB: Some checks in wlc_ioctl_internal are likely superfluous,
+ but I'm not familiar enough with the driver to remove them with confidence.
+
+See also: https://lwn.net/Articles/722267/
+ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=47058bb54b57962b3958a936ddbc59355e4c5504
+ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5e6e9852d6f76e01b2e6803c74258afa5b432bc5
+
+Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
+---
+ src/wl/sys/wl_cfg80211_hybrid.c | 25 ++-------------------
+ src/wl/sys/wl_iw.c | 25 ++-------------------
+ src/wl/sys/wl_linux.c | 40 ++++++++++++++++++++++++++++-----
+ src/wl/sys/wl_linux.h | 2 ++
+ src/wl/sys/wlc_pub.h | 1 +
+ 5 files changed, 42 insertions(+), 51 deletions(-)
+
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index 7b606e0..1e0adb7 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -38,6 +38,7 @@
+ #include <wlioctl.h>
+ #include <proto/802.11.h>
+ #include <wl_cfg80211_hybrid.h>
++#include <wl_linux.h>
+
+ #define EVENT_TYPE(e) dtoh32((e)->event_type)
+ #define EVENT_FLAGS(e) dtoh16((e)->flags)
+@@ -435,30 +436,7 @@ static void key_endian_to_host(struct wl_wsec_key *key)
+ static s32
+ wl_dev_ioctl(struct net_device *dev, u32 cmd, void *arg, u32 len)
+ {
+- struct ifreq ifr;
+- struct wl_ioctl ioc;
+- mm_segment_t fs;
+- s32 err = 0;
+-
+- BUG_ON(len < sizeof(int));
+-
+- memset(&ioc, 0, sizeof(ioc));
+- ioc.cmd = cmd;
+- ioc.buf = arg;
+- ioc.len = len;
+- strcpy(ifr.ifr_name, dev->name);
+- ifr.ifr_data = (caddr_t)&ioc;
+-
+- fs = get_fs();
+- set_fs(get_ds());
+-#if defined(WL_USE_NETDEV_OPS)
+- err = dev->netdev_ops->ndo_do_ioctl(dev, &ifr, SIOCDEVPRIVATE);
+-#else
+- err = dev->do_ioctl(dev, &ifr, SIOCDEVPRIVATE);
+-#endif
+- set_fs(fs);
+-
+- return err;
++ return wlc_ioctl_internal(dev, cmd, arg, len);
+ }
+
+ static s32
+diff --git a/src/wl/sys/wl_iw.c b/src/wl/sys/wl_iw.c
+index c4c610b..e346b15 100644
+--- a/src/wl/sys/wl_iw.c
++++ b/src/wl/sys/wl_iw.c
+@@ -37,6 +37,7 @@ typedef const struct si_pub si_t;
+
+ #include <wl_dbg.h>
+ #include <wl_iw.h>
++#include <wl_linux.h>
+
+ extern bool wl_iw_conn_status_str(uint32 event_type, uint32 status,
+ uint32 reason, char* stringBuf, uint buflen);
+@@ -103,29 +104,7 @@ dev_wlc_ioctl(
+ int len
+ )
+ {
+- struct ifreq ifr;
+- wl_ioctl_t ioc;
+- mm_segment_t fs;
+- int ret;
+-
+- memset(&ioc, 0, sizeof(ioc));
+- ioc.cmd = cmd;
+- ioc.buf = arg;
+- ioc.len = len;
+-
+- strcpy(ifr.ifr_name, dev->name);
+- ifr.ifr_data = (caddr_t) &ioc;
+-
+- fs = get_fs();
+- set_fs(get_ds());
+-#if defined(WL_USE_NETDEV_OPS)
+- ret = dev->netdev_ops->ndo_do_ioctl(dev, &ifr, SIOCDEVPRIVATE);
+-#else
+- ret = dev->do_ioctl(dev, &ifr, SIOCDEVPRIVATE);
+-#endif
+- set_fs(fs);
+-
+- return ret;
++ return wlc_ioctl_internal(dev, cmd, arg, len);
+ }
+
+ static int
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index 947cef3..f04c148 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -1643,10 +1643,7 @@ wl_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+ goto done2;
+ }
+
+- if (segment_eq(get_fs(), KERNEL_DS))
+- buf = ioc.buf;
+-
+- else if (ioc.buf) {
++ if (ioc.buf) {
+ if (!(buf = (void *) MALLOC(wl->osh, MAX(ioc.len, WLC_IOCTL_MAXLEN)))) {
+ bcmerror = BCME_NORESOURCE;
+ goto done2;
+@@ -1667,7 +1664,7 @@ wl_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd)
+ WL_UNLOCK(wl);
+
+ done1:
+- if (ioc.buf && (ioc.buf != buf)) {
++ if (ioc.buf) {
+ if (copy_to_user(ioc.buf, buf, ioc.len))
+ bcmerror = BCME_BADADDR;
+ MFREE(wl->osh, buf, MAX(ioc.len, WLC_IOCTL_MAXLEN));
+@@ -1680,6 +1677,39 @@ done2:
+ return (OSL_ERROR(bcmerror));
+ }
+
++int
++wlc_ioctl_internal(struct net_device *dev, int cmd, void *buf, int len)
++{
++ wl_info_t *wl;
++ wl_if_t *wlif;
++ int bcmerror;
++
++ if (!dev)
++ return -ENETDOWN;
++
++ wl = WL_INFO(dev);
++ wlif = WL_DEV_IF(dev);
++ if (wlif == NULL || wl == NULL || wl->dev == NULL)
++ return -ENETDOWN;
++
++ bcmerror = 0;
++
++ WL_TRACE(("wl%d: wlc_ioctl_internal: cmd 0x%x\n", wl->pub->unit, cmd));
++
++ WL_LOCK(wl);
++ if (!capable(CAP_NET_ADMIN)) {
++ bcmerror = BCME_EPERM;
++ } else {
++ bcmerror = wlc_ioctl(wl->wlc, cmd, buf, len, wlif->wlcif);
++ }
++ WL_UNLOCK(wl);
++
++ ASSERT(VALID_BCMERROR(bcmerror));
++ if (bcmerror != 0)
++ wl->pub->bcmerror = bcmerror;
++ return (OSL_ERROR(bcmerror));
++}
++
+ static struct net_device_stats*
+ wl_get_stats(struct net_device *dev)
+ {
+diff --git a/src/wl/sys/wl_linux.h b/src/wl/sys/wl_linux.h
+index 5b1048e..c8c1f41 100644
+--- a/src/wl/sys/wl_linux.h
++++ b/src/wl/sys/wl_linux.h
+@@ -22,6 +22,7 @@
+ #define _wl_linux_h_
+
+ #include <wlc_types.h>
++#include <wlc_pub.h>
+
+ typedef struct wl_timer {
+ struct timer_list timer;
+@@ -187,6 +188,7 @@ extern irqreturn_t wl_isr(int irq, void *dev_id, struct pt_regs *ptregs);
+ extern int __devinit wl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent);
+ extern void wl_free(wl_info_t *wl);
+ extern int wl_ioctl(struct net_device *dev, struct ifreq *ifr, int cmd);
++extern int wlc_ioctl_internal(struct net_device *dev, int cmd, void *buf, int len);
+ extern struct net_device * wl_netdev_get(wl_info_t *wl);
+
+ #endif
+diff --git a/src/wl/sys/wlc_pub.h b/src/wl/sys/wlc_pub.h
+index 53a98b8..2b5a029 100644
+--- a/src/wl/sys/wlc_pub.h
++++ b/src/wl/sys/wlc_pub.h
+@@ -24,6 +24,7 @@
+
+ #include <wlc_types.h>
+ #include <wlc_utils.h>
++#include <siutils.h>
+ #include "proto/802.11.h"
+ #include "proto/bcmevent.h"
+
+--
+2.28.0
diff --git a/network/broadcom-wl/patches/012-linux517.patch b/network/broadcom-wl/patches/012-linux517.patch
new file mode 100644
index 0000000000..6f23316691
--- /dev/null
+++ b/network/broadcom-wl/patches/012-linux517.patch
@@ -0,0 +1,80 @@
+From 31b7849092c43805c7fbaf7518b99874aa1b310c Mon Sep 17 00:00:00 2001
+From: Joan Bruguera <joanbrugueram@gmail.com>
+Date: Wed, 12 Jan 2022 20:49:20 +0100
+Subject: [PATCH] Tentative fix for broadcom-wl 6.30.223.271 driver for Linux 5.17-rc1
+
+Set netdev->dev_addr through dev_addr_mod + PDE_DATA fix
+
+Since Linux 5.17 netdev->dev_addr is const and must be changed through
+dev_addr_mod, otherwise a warning is logged in dmesg and bad things may happen.
+
+NB: The #if is not wrong, dev_addr_mod is defined since Linux 5.15-rc1
+
+Plus a trivial fix for PDE_DATA.
+
+Applies on top of all the patches applied to broadcom-wl-dkms 6.30.223.271-28 on Arch Linux.
+
+See also: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=adeef3e32146a8d2a73c399dc6f5d76a449131b1
+ https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=359745d78351c6f5442435f81549f0207ece28aa
+---
+ src/wl/sys/wl_linux.c | 16 +++++++++++++---
+ 1 file changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/src/wl/sys/wl_linux.c b/src/wl/sys/wl_linux.c
+index e491df7..e4614fb 100644
+--- a/src/wl/sys/wl_linux.c
++++ b/src/wl/sys/wl_linux.c
+@@ -93,6 +93,10 @@ struct iw_statistics *wl_get_wireless_stats(struct net_device *dev);
+
+ #include <wlc_wowl.h>
+
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5, 17, 0))
++#define PDE_DATA pde_data
++#endif
++
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 15, 0)
+ static void wl_timer(struct timer_list *tl);
+ #else
+@@ -490,6 +494,12 @@ wl_if_setup(struct net_device *dev)
+ #endif
+ }
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 15, 0)
++static inline void eth_hw_addr_set(struct net_device *dev, const void *addr) {
++ memcpy(dev->dev_addr, addr, ETHER_ADDR_LEN);
++}
++#endif
++
+ static wl_info_t *
+ wl_attach(uint16 vendor, uint16 device, ulong regs,
+ uint bustype, void *btparam, uint irq, uchar* bar1_addr, uint32 bar1_size)
+@@ -634,7 +644,7 @@ wl_attach(uint16 vendor, uint16 device, ulong regs,
+ WL_ERROR(("wl%d: Error setting MAC ADDRESS\n", unit));
+ }
+ #endif
+- bcopy(&wl->pub->cur_etheraddr, dev->dev_addr, ETHER_ADDR_LEN);
++ eth_hw_addr_set(dev, wl->pub->cur_etheraddr.octet);
+
+ online_cpus = 1;
+
+@@ -1835,7 +1845,7 @@ wl_set_mac_address(struct net_device *dev, void *addr)
+
+ WL_LOCK(wl);
+
+- bcopy(sa->sa_data, dev->dev_addr, ETHER_ADDR_LEN);
++ eth_hw_addr_set(dev, sa->sa_data);
+ err = wlc_iovar_op(wl->wlc, "cur_etheraddr", NULL, 0, sa->sa_data, ETHER_ADDR_LEN,
+ IOV_SET, (WL_DEV_IF(dev))->wlcif);
+ WL_UNLOCK(wl);
+@@ -3010,7 +3020,7 @@ _wl_add_monitor_if(wl_task_t *task)
+ else
+ dev->type = ARPHRD_IEEE80211_RADIOTAP;
+
+- bcopy(wl->dev->dev_addr, dev->dev_addr, ETHER_ADDR_LEN);
++ eth_hw_addr_set(dev, wl->dev->dev_addr);
+
+ #if defined(WL_USE_NETDEV_OPS)
+ dev->netdev_ops = &wl_netdev_monitor_ops;
+--
+2.35.1
+
diff --git a/network/broadcom-wl/patches/013-linux518.patch b/network/broadcom-wl/patches/013-linux518.patch
new file mode 100644
index 0000000000..d837429a68
--- /dev/null
+++ b/network/broadcom-wl/patches/013-linux518.patch
@@ -0,0 +1,71 @@
+diff -u -r a/src/shared/linux_osl.c b/src/shared/linux_osl.c
+--- a/src/shared/linux_osl.c 2022-05-24 20:51:15.662604980 +0000
++++ b/src/shared/linux_osl.c 2022-05-24 21:13:38.264472425 +0000
+@@ -599,6 +599,8 @@
+ va = kmalloc(size, GFP_ATOMIC | __GFP_ZERO);
+ if (va)
+ *pap = (ulong)__virt_to_phys(va);
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ va = dma_alloc_coherent(&((struct pci_dev *)osh->pdev)->dev, size, (dma_addr_t*)pap, GFP_ATOMIC);
+ #else
+ va = pci_alloc_consistent(osh->pdev, size, (dma_addr_t*)pap);
+ #endif
+@@ -612,6 +614,8 @@
+
+ #ifdef __ARM_ARCH_7A__
+ kfree(va);
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ dma_free_coherent(&((struct pci_dev *)osh->pdev)->dev, size, va, (dma_addr_t)pa);
+ #else
+ pci_free_consistent(osh->pdev, size, va, (dma_addr_t)pa);
+ #endif
+@@ -623,7 +627,11 @@
+ int dir;
+
+ ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC)));
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ dir = (direction == DMA_TX)? DMA_TO_DEVICE: DMA_FROM_DEVICE;
++#else
+ dir = (direction == DMA_TX)? PCI_DMA_TODEVICE: PCI_DMA_FROMDEVICE;
++#endif
+
+ #if defined(__ARM_ARCH_7A__) && defined(BCMDMASGLISTOSL)
+ if (dmah != NULL) {
+@@ -641,7 +649,11 @@
+ ASSERT(totsegs + nsegs <= MAX_DMA_SEGS);
+ sg->page_link = 0;
+ sg_set_buf(sg, PKTDATA(osh, skb), PKTLEN(osh, skb));
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ dma_map_single(&((struct pci_dev *)osh->pdev)->dev, PKTDATA(osh, skb), PKTLEN(osh, skb), dir);
++#else
+ pci_map_single(osh->pdev, PKTDATA(osh, skb), PKTLEN(osh, skb), dir);
++#endif
+ }
+ totsegs += nsegs;
+ totlen += PKTLEN(osh, skb);
+@@ -656,7 +668,11 @@
+ }
+ #endif
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ return (dma_map_single(&((struct pci_dev *)osh->pdev)->dev, va, size, dir));
++#else
+ return (pci_map_single(osh->pdev, va, size, dir));
++#endif
+ }
+
+ void BCMFASTPATH
+@@ -665,8 +681,13 @@
+ int dir;
+
+ ASSERT((osh && (osh->magic == OS_HANDLE_MAGIC)));
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 18, 0)
++ dir = (direction == DMA_TX)? DMA_TO_DEVICE: DMA_FROM_DEVICE;
++ dma_unmap_single(&((struct pci_dev *)osh->pdev)->dev, (uint32)pa, size, dir);
++#else
+ dir = (direction == DMA_TX)? PCI_DMA_TODEVICE: PCI_DMA_FROMDEVICE;
+ pci_unmap_single(osh->pdev, (uint32)pa, size, dir);
++#endif
+ }
+
+ #if defined(BCMDBG_ASSERT)
diff --git a/network/broadcom-wl/patches/014-linux414.patch b/network/broadcom-wl/patches/014-linux414.patch
new file mode 100644
index 0000000000..0576aa5cf9
--- /dev/null
+++ b/network/broadcom-wl/patches/014-linux414.patch
@@ -0,0 +1,37 @@
+From: Gerardo Esteban Malazdrewicz <gerardo@malazdrewicz.com.ar>
+Date: Fri, 29 Dec 2017 23:44:24 -0400
+Subject: linux414
+Origin: https://bugs.debian.org/885885
+
+linux 4.14 changed the kernel_read function prototype.
+---
+ src/shared/linux_osl.c | 12 +++++++++++-
+ 1 files changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/src/shared/linux_osl.c b/src/shared/linux_osl.c
+index 9adc392..b24a973 100644
+--- a/src/shared/linux_osl.c
++++ b/src/shared/linux_osl.c
+@@ -1076,11 +1076,21 @@ osl_os_get_image_block(char *buf, int len, void *image)
+ {
+ struct file *fp = (struct file *)image;
+ int rdlen;
++ loff_t pos;
+
+ if (!image)
+ return 0;
+
+- rdlen = kernel_read(fp, fp->f_pos, buf, len);
++ pos = fp->f_pos;
++ rdlen = kernel_read(fp,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
++ pos,
++#endif
++ buf, len
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
++ ,&pos
++#endif
++ );
+ if (rdlen > 0)
+ fp->f_pos += rdlen;
+
diff --git a/network/broadcom-wl/patches/015-linux600.patch b/network/broadcom-wl/patches/015-linux600.patch
new file mode 100644
index 0000000000..8645907bba
--- /dev/null
+++ b/network/broadcom-wl/patches/015-linux600.patch
@@ -0,0 +1,31 @@
+From 933540c63f33e6ac2825d65c4b681ef3387d9146 Mon Sep 17 00:00:00 2001
+From: Antoine Cotten <hello@acotten.com>
+Date: Mon, 15 Aug 2022 17:53:51 +0200
+Subject: [PATCH] cfg80211_roam_info compat for MLO APIs in Linux >= 6.0
+
+The 'bssid' struct field is now under 'links.bssid'.
+
+See also: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=efbabc11650040c64884ff3019b88c7bcc0ceb1d
+
+Original patch by Joan Bruguera:
+https://gist.github.com/joanbm/207210d74637870c01ef5a3c262a597d
+---
+ src/wl/sys/wl_cfg80211_hybrid.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+index 5e9e6d3..5ec35c5 100644
+--- a/src/wl/sys/wl_cfg80211_hybrid.c
++++ b/src/wl/sys/wl_cfg80211_hybrid.c
+@@ -2412,7 +2412,11 @@ wl_bss_roaming_done(struct wl_cfg80211_priv *wl, struct net_device *ndev,
+ struct wl_cfg80211_connect_info *conn_info = wl_to_conn(wl);
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 12, 0)
+ struct cfg80211_roam_info roam_info = {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 0, 0)
+ .bssid = wl->profile->bssid,
++#else
++ .links[0].bssid = wl->profile->bssid,
++#endif
+ .req_ie = conn_info->req_ie,
+ .req_ie_len = conn_info->req_ie_len,
+ .resp_ie = conn_info->resp_ie,
diff --git a/network/broadcom-wl/patches/016-linux601.patch b/network/broadcom-wl/patches/016-linux601.patch
new file mode 100644
index 0000000000..721967d275
--- /dev/null
+++ b/network/broadcom-wl/patches/016-linux601.patch
@@ -0,0 +1,90 @@
+diff -Nurp -u -r a/src/wl/sys/wl_cfg80211_hybrid.c b/src/wl/sys/wl_cfg80211_hybrid.c
+--- a/src/wl/sys/wl_cfg80211_hybrid.c 2022-12-12 00:23:30.821615599 +0000
++++ b/src/wl/sys/wl_cfg80211_hybrid.c 2022-12-12 00:35:47.854975024 +0000
+@@ -105,14 +105,28 @@ static s32 wl_cfg80211_get_tx_power(stru
+ static s32 wl_cfg80211_get_tx_power(struct wiphy *wiphy, s32 *dbm);
+ #endif
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
++ struct net_device *dev, int link_id, u8 key_idx, bool unicast,
++ bool multicast);
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
+ static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
+ struct net_device *dev, u8 key_idx, bool unicast, bool multicast);
+ #else
+ static s32 wl_cfg80211_config_default_key(struct wiphy *wiphy,
+ struct net_device *dev, u8 key_idx);
+ #endif
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr,
++ struct key_params *params);
++static s32 wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr);
++static s32 wl_cfg80211_get_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr,
++ void *cookie,
++ void (*callback) (void *cookie, struct key_params *params));
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
+ static s32 wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
+ u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params);
+ static s32 wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
+@@ -1161,7 +1175,12 @@ static s32 wl_cfg80211_get_tx_power(stru
+ return err;
+ }
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32
++wl_cfg80211_config_default_key(struct wiphy *wiphy,
++ struct net_device *dev, int link_id, u8 key_idx, bool unicast,
++ bool multicast)
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 38)
+ static s32
+ wl_cfg80211_config_default_key(struct wiphy *wiphy,
+ struct net_device *dev, u8 key_idx, bool unicast, bool multicast)
+@@ -1186,7 +1205,12 @@ wl_cfg80211_config_default_key(struct wi
+ return 0;
+ }
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32
++wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr,
++ struct key_params *params)
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
+ static s32
+ wl_cfg80211_add_key(struct wiphy *wiphy, struct net_device *dev,
+ u8 key_idx, bool pairwise, const u8 *mac_addr, struct key_params *params)
+@@ -1307,7 +1331,11 @@ wl_cfg80211_add_key(struct wiphy *wiphy,
+ return err;
+ }
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32
++wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr)
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
+ static s32
+ wl_cfg80211_del_key(struct wiphy *wiphy, struct net_device *dev,
+ u8 key_idx, bool pairwise, const u8 *mac_addr)
+@@ -1350,7 +1378,13 @@ wl_cfg80211_del_key(struct wiphy *wiphy,
+ return err;
+ }
+
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)
++static s32
++wl_cfg80211_get_key(struct wiphy *wiphy, struct net_device *dev,
++ int link_id, u8 key_idx, bool pairwise, const u8 *mac_addr,
++ void *cookie,
++ void (*callback) (void *cookie, struct key_params * params))
++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 37)
+ static s32
+ wl_cfg80211_get_key(struct wiphy *wiphy, struct net_device *dev,
+ u8 key_idx, bool pairwise, const u8 *mac_addr, void *cookie,
diff --git a/network/broadcom-wl/slack-desc b/network/broadcom-wl/slack-desc
new file mode 100644
index 0000000000..dba3efd955
--- /dev/null
+++ b/network/broadcom-wl/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------------------------------------------------------|
+broadcom-wl: broadcom-wl (Broadcom wireless kernel module)
+broadcom-wl:
+broadcom-wl: Proprietary driver for Broadcom's BCM4311, BCM4312, BCM4313, BCM4321,
+broadcom-wl: BCM4322, BCM43142, BCM43224, BCM43225, BCM43227, BCM43228, BCM4331,
+broadcom-wl: BCM4360 and BCM4352 wireless network cards. Includes a kernel module
+broadcom-wl: named 'wl'.
+broadcom-wl:
+broadcom-wl: For more information, see:
+broadcom-wl: https://www.broadcom.com/support/802.11
+broadcom-wl:
+broadcom-wl:
diff --git a/network/cacti/cacti.info b/network/cacti/cacti.info
index 852dfa9c1e..bdfc98b130 100644
--- a/network/cacti/cacti.info
+++ b/network/cacti/cacti.info
@@ -2,7 +2,7 @@ PRGNAM="cacti"
VERSION="1.1.38"
HOMEPAGE="https://www.cacti.net/"
DOWNLOAD="https://www.cacti.net/downloads/cacti-1.1.38.tar.gz"
-MD5SUM="a1ffe414280ec6518de7f0f16a5960c5"
+MD5SUM="9bf4b63fd661e1cb91ba13e538f38288"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="rrdtool"
diff --git a/network/castor/castor.info b/network/castor/castor.info
index d151aa6be3..c3a4b08e83 100644
--- a/network/castor/castor.info
+++ b/network/castor/castor.info
@@ -2,114 +2,114 @@ PRGNAM="castor"
VERSION="0.9.0"
HOMEPAGE="https://git.sr.ht/~julienxx/castor"
DOWNLOAD="https://git.sr.ht/~julienxx/castor/archive/0.9.0.tar.gz \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/aho-corasick/aho-corasick-0.7.18.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/ansi-parser/ansi-parser-0.6.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/atk/atk-0.8.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/atk-sys/atk-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/autocfg/autocfg-0.1.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/autocfg/autocfg-1.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bitflags/bitflags-1.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cairo-rs/cairo-rs-0.8.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cairo-sys-rs/cairo-sys-rs-0.9.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cc/cc-1.0.73.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cfg-if/cfg-if-0.1.10.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cfg-if/cfg-if-1.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cloudabi/cloudabi-0.0.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/core-foundation/core-foundation-0.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/core-foundation-sys/core-foundation-sys-0.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs/dirs-3.0.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs-sys/dirs-sys-0.3.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/foreign-types/foreign-types-0.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/foreign-types-shared/foreign-types-shared-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/form_urlencoded/form_urlencoded-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/fuchsia-cprng/fuchsia-cprng-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-channel/futures-channel-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-core/futures-core-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-executor/futures-executor-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-io/futures-io-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-macro/futures-macro-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-task/futures-task-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/futures-util/futures-util-0.3.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gdk/gdk-0.12.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gdk-pixbuf/gdk-pixbuf-0.8.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gdk-pixbuf-sys/gdk-pixbuf-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gdk-sys/gdk-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/getrandom/getrandom-0.2.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gio/gio-0.8.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gio-sys/gio-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/glib/glib-0.9.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/glib-sys/glib-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gobject-sys/gobject-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gtk/gtk-0.8.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gtk-sys/gtk-sys-0.9.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/idna/idna-0.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/lazy_static/lazy_static-1.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/libc/libc-0.2.125.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/linkify/linkify-0.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.17.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/matches/matches-0.1.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/memchr/memchr-2.5.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/native-tls/native-tls-0.2.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/nom/nom-4.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/once_cell/once_cell-1.10.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/open/open-2.0.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl/openssl-0.10.40.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-macros/openssl-macros-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-probe/openssl-probe-0.1.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/openssl-sys/openssl-sys-0.9.73.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pango/pango-0.8.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pango-sys/pango-sys-0.9.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pathdiff/pathdiff-0.2.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/percent-encoding/percent-encoding-2.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pin-project-lite/pin-project-lite-0.2.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pin-utils/pin-utils-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pkg-config/pkg-config-0.3.25.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/proc-macro2/proc-macro2-1.0.38.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/quote/quote-1.0.18.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand/rand-0.6.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_chacha/rand_chacha-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_core/rand_core-0.3.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_core/rand_core-0.4.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_hc/rand_hc-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_isaac/rand_isaac-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_jitter/rand_jitter-0.1.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_os/rand_os-0.1.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_pcg/rand_pcg-0.1.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_xorshift/rand_xorshift-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rdrand/rdrand-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_syscall/redox_syscall-0.1.57.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_syscall/redox_syscall-0.2.13.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_users/redox_users-0.4.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex/regex-1.5.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex-syntax/regex-syntax-0.6.25.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/remove_dir_all/remove_dir_all-0.5.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/schannel/schannel-0.1.19.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/security-framework/security-framework-0.4.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/security-framework-sys/security-framework-sys-0.4.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/serde/serde-1.0.137.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/serde_derive/serde_derive-1.0.137.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/slab/slab-0.4.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/smawk/smawk-0.3.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/syn/syn-1.0.94.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tempfile/tempfile-3.0.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/textwrap/textwrap-0.14.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror/thiserror-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror-impl/thiserror-impl-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec/tinyvec-1.6.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec_macros/tinyvec_macros-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/toml/toml-0.5.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-bidi/unicode-bidi-0.3.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-linebreak/unicode-linebreak-0.1.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-normalization/unicode-normalization-0.1.19.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-width/unicode-width-0.1.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-xid/unicode-xid-0.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/url/url-2.2.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/vcpkg/vcpkg-0.2.15.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/version_check/version_check-0.1.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasi/wasi-0.10.2+wasi-snapshot-preview1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi/winapi-0.3.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate"
+ https://static.crates.io/crates/aho-corasick/aho-corasick-0.7.18.crate \
+ https://static.crates.io/crates/ansi-parser/ansi-parser-0.6.5.crate \
+ https://static.crates.io/crates/atk/atk-0.8.0.crate \
+ https://static.crates.io/crates/atk-sys/atk-sys-0.9.1.crate \
+ https://static.crates.io/crates/autocfg/autocfg-0.1.8.crate \
+ https://static.crates.io/crates/autocfg/autocfg-1.1.0.crate \
+ https://static.crates.io/crates/bitflags/bitflags-1.3.2.crate \
+ https://static.crates.io/crates/cairo-rs/cairo-rs-0.8.1.crate \
+ https://static.crates.io/crates/cairo-sys-rs/cairo-sys-rs-0.9.2.crate \
+ https://static.crates.io/crates/cc/cc-1.0.73.crate \
+ https://static.crates.io/crates/cfg-if/cfg-if-0.1.10.crate \
+ https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \
+ https://static.crates.io/crates/cloudabi/cloudabi-0.0.3.crate \
+ https://static.crates.io/crates/core-foundation/core-foundation-0.7.0.crate \
+ https://static.crates.io/crates/core-foundation-sys/core-foundation-sys-0.7.0.crate \
+ https://static.crates.io/crates/dirs/dirs-3.0.2.crate \
+ https://static.crates.io/crates/dirs-sys/dirs-sys-0.3.7.crate \
+ https://static.crates.io/crates/foreign-types/foreign-types-0.3.2.crate \
+ https://static.crates.io/crates/foreign-types-shared/foreign-types-shared-0.1.1.crate \
+ https://static.crates.io/crates/form_urlencoded/form_urlencoded-1.0.1.crate \
+ https://static.crates.io/crates/fuchsia-cprng/fuchsia-cprng-0.1.1.crate \
+ https://static.crates.io/crates/futures-channel/futures-channel-0.3.21.crate \
+ https://static.crates.io/crates/futures-core/futures-core-0.3.21.crate \
+ https://static.crates.io/crates/futures-executor/futures-executor-0.3.21.crate \
+ https://static.crates.io/crates/futures-io/futures-io-0.3.21.crate \
+ https://static.crates.io/crates/futures-macro/futures-macro-0.3.21.crate \
+ https://static.crates.io/crates/futures-task/futures-task-0.3.21.crate \
+ https://static.crates.io/crates/futures-util/futures-util-0.3.21.crate \
+ https://static.crates.io/crates/gdk/gdk-0.12.1.crate \
+ https://static.crates.io/crates/gdk-pixbuf/gdk-pixbuf-0.8.0.crate \
+ https://static.crates.io/crates/gdk-pixbuf-sys/gdk-pixbuf-sys-0.9.1.crate \
+ https://static.crates.io/crates/gdk-sys/gdk-sys-0.9.1.crate \
+ https://static.crates.io/crates/getrandom/getrandom-0.2.6.crate \
+ https://static.crates.io/crates/gio/gio-0.8.1.crate \
+ https://static.crates.io/crates/gio-sys/gio-sys-0.9.1.crate \
+ https://static.crates.io/crates/glib/glib-0.9.3.crate \
+ https://static.crates.io/crates/glib-sys/glib-sys-0.9.1.crate \
+ https://static.crates.io/crates/gobject-sys/gobject-sys-0.9.1.crate \
+ https://static.crates.io/crates/gtk/gtk-0.8.1.crate \
+ https://static.crates.io/crates/gtk-sys/gtk-sys-0.9.2.crate \
+ https://static.crates.io/crates/idna/idna-0.2.3.crate \
+ https://static.crates.io/crates/lazy_static/lazy_static-1.4.0.crate \
+ https://static.crates.io/crates/libc/libc-0.2.125.crate \
+ https://static.crates.io/crates/linkify/linkify-0.7.0.crate \
+ https://static.crates.io/crates/log/log-0.4.17.crate \
+ https://static.crates.io/crates/matches/matches-0.1.9.crate \
+ https://static.crates.io/crates/memchr/memchr-2.5.0.crate \
+ https://static.crates.io/crates/native-tls/native-tls-0.2.4.crate \
+ https://static.crates.io/crates/nom/nom-4.2.3.crate \
+ https://static.crates.io/crates/once_cell/once_cell-1.10.0.crate \
+ https://static.crates.io/crates/open/open-2.0.3.crate \
+ https://static.crates.io/crates/openssl/openssl-0.10.40.crate \
+ https://static.crates.io/crates/openssl-macros/openssl-macros-0.1.0.crate \
+ https://static.crates.io/crates/openssl-probe/openssl-probe-0.1.5.crate \
+ https://static.crates.io/crates/openssl-sys/openssl-sys-0.9.73.crate \
+ https://static.crates.io/crates/pango/pango-0.8.0.crate \
+ https://static.crates.io/crates/pango-sys/pango-sys-0.9.1.crate \
+ https://static.crates.io/crates/pathdiff/pathdiff-0.2.1.crate \
+ https://static.crates.io/crates/percent-encoding/percent-encoding-2.1.0.crate \
+ https://static.crates.io/crates/pin-project-lite/pin-project-lite-0.2.9.crate \
+ https://static.crates.io/crates/pin-utils/pin-utils-0.1.0.crate \
+ https://static.crates.io/crates/pkg-config/pkg-config-0.3.25.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.38.crate \
+ https://static.crates.io/crates/quote/quote-1.0.18.crate \
+ https://static.crates.io/crates/rand/rand-0.6.5.crate \
+ https://static.crates.io/crates/rand_chacha/rand_chacha-0.1.1.crate \
+ https://static.crates.io/crates/rand_core/rand_core-0.3.1.crate \
+ https://static.crates.io/crates/rand_core/rand_core-0.4.2.crate \
+ https://static.crates.io/crates/rand_hc/rand_hc-0.1.0.crate \
+ https://static.crates.io/crates/rand_isaac/rand_isaac-0.1.1.crate \
+ https://static.crates.io/crates/rand_jitter/rand_jitter-0.1.4.crate \
+ https://static.crates.io/crates/rand_os/rand_os-0.1.3.crate \
+ https://static.crates.io/crates/rand_pcg/rand_pcg-0.1.2.crate \
+ https://static.crates.io/crates/rand_xorshift/rand_xorshift-0.1.1.crate \
+ https://static.crates.io/crates/rdrand/rdrand-0.4.0.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.1.57.crate \
+ https://static.crates.io/crates/redox_syscall/redox_syscall-0.2.13.crate \
+ https://static.crates.io/crates/redox_users/redox_users-0.4.3.crate \
+ https://static.crates.io/crates/regex/regex-1.5.5.crate \
+ https://static.crates.io/crates/regex-syntax/regex-syntax-0.6.25.crate \
+ https://static.crates.io/crates/remove_dir_all/remove_dir_all-0.5.3.crate \
+ https://static.crates.io/crates/schannel/schannel-0.1.19.crate \
+ https://static.crates.io/crates/security-framework/security-framework-0.4.4.crate \
+ https://static.crates.io/crates/security-framework-sys/security-framework-sys-0.4.3.crate \
+ https://static.crates.io/crates/serde/serde-1.0.137.crate \
+ https://static.crates.io/crates/serde_derive/serde_derive-1.0.137.crate \
+ https://static.crates.io/crates/slab/slab-0.4.6.crate \
+ https://static.crates.io/crates/smawk/smawk-0.3.1.crate \
+ https://static.crates.io/crates/syn/syn-1.0.94.crate \
+ https://static.crates.io/crates/tempfile/tempfile-3.0.8.crate \
+ https://static.crates.io/crates/textwrap/textwrap-0.14.2.crate \
+ https://static.crates.io/crates/thiserror/thiserror-1.0.31.crate \
+ https://static.crates.io/crates/thiserror-impl/thiserror-impl-1.0.31.crate \
+ https://static.crates.io/crates/tinyvec/tinyvec-1.6.0.crate \
+ https://static.crates.io/crates/tinyvec_macros/tinyvec_macros-0.1.0.crate \
+ https://static.crates.io/crates/toml/toml-0.5.9.crate \
+ https://static.crates.io/crates/unicode-bidi/unicode-bidi-0.3.8.crate \
+ https://static.crates.io/crates/unicode-linebreak/unicode-linebreak-0.1.2.crate \
+ https://static.crates.io/crates/unicode-normalization/unicode-normalization-0.1.19.crate \
+ https://static.crates.io/crates/unicode-width/unicode-width-0.1.9.crate \
+ https://static.crates.io/crates/unicode-xid/unicode-xid-0.2.3.crate \
+ https://static.crates.io/crates/url/url-2.2.2.crate \
+ https://static.crates.io/crates/vcpkg/vcpkg-0.2.15.crate \
+ https://static.crates.io/crates/version_check/version_check-0.1.5.crate \
+ https://static.crates.io/crates/wasi/wasi-0.10.2+wasi-snapshot-preview1.crate \
+ https://static.crates.io/crates/winapi/winapi-0.3.9.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-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate"
MD5SUM="296a3a901fea3d632661878a395758fa \
425b8fdf70df59998d9b7c89083e48d1 \
cbd60ca8e9c691e1d230c34b439aaf21 \
diff --git a/network/castor/doinst.sh b/network/castor/doinst.sh
index 7bb20ae58a..65c7e2eeb9 100644
--- a/network/castor/doinst.sh
+++ b/network/castor/doinst.sh
@@ -1,6 +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 [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -q usr/share/icons >/dev/null 2>&1
+
+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/catgirl/README b/network/catgirl/README
new file mode 100644
index 0000000000..995db51086
--- /dev/null
+++ b/network/catgirl/README
@@ -0,0 +1,4 @@
+This is an super-light client for TLS-only Internet Relay Chat,
+that provides an curses based interface.
+
+It centred on the use of standard features.
diff --git a/network/catgirl/catgirl.SlackBuild b/network/catgirl/catgirl.SlackBuild
new file mode 100644
index 0000000000..4fe30ec145
--- /dev/null
+++ b/network/catgirl/catgirl.SlackBuild
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+# Slackware build script for catgirl
+
+# Copyright 2023 SlackBuilds.org Project. All rights reserved.
+# Written and currently maintained by naglfar[AT]rpblc.net
+#
+# 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.
+
+# 2023-05-10 11:48:54 +0100 Add -rpath, simplify strip/man. DW.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=catgirl
+VERSION=${VERSION:-2.1}
+BUILD=${BUILD:-2}
+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 {} \+
+
+# NOTE in case libressl is installed instead of libtls
+export PKG_CONFIG_PATH=/usr/lib${LIBDIRSUFFIX}/libressl/pkgconfig:$PKG_CONFIG_PATH
+export CFLAGS="$SLKCFLAGS -L/usr/lib${LIBDIRSUFFIX}/libressl"
+export LDFLAGS="-Wl,-rpath=/usr/lib${LIBDIRSUFFIX}/libressl"
+
+./configure \
+ --prefix=/usr \
+ --mandir=/usr/man
+
+make
+make install DESTDIR=$PKG
+
+strip --strip-unneeded $PKG/usr/bin/$PRGNAM
+gzip -9 $PKG/usr/man/man1/catgirl.1
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.7 \
+ $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/catgirl/catgirl.info b/network/catgirl/catgirl.info
new file mode 100644
index 0000000000..fc86eb7694
--- /dev/null
+++ b/network/catgirl/catgirl.info
@@ -0,0 +1,10 @@
+PRGNAM="catgirl"
+VERSION="2.1"
+HOMEPAGE="https://git.causal.agency/catgirl/"
+DOWNLOAD="https://git.causal.agency/catgirl/snapshot/catgirl-2.1.tar.gz"
+MD5SUM="75b381022a7ae9ac1e2fc19329ffcbe7"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libtls"
+MAINTAINER="Naglfar"
+EMAIL="naglfar[AT]rpblc.net"
diff --git a/network/catgirl/slack-desc b/network/catgirl/slack-desc
new file mode 100644
index 0000000000..08878931ca
--- /dev/null
+++ b/network/catgirl/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------------------------------------------------------|
+catgirl: catgirl (terminal IRC client)
+catgirl:
+catgirl: This is an super-light client for TLS-only Internet Relay Chat,
+catgirl: that provides an curses based interface.
+catgirl:
+catgirl: It centred on the use of standard features.
+catgirl:
+catgirl:
+catgirl:
+catgirl: https://git.causal.agency/catgirl/about/
+catgirl:
diff --git a/network/cherokee/cherokee.SlackBuild b/network/cherokee/cherokee.SlackBuild
index b0eff407bc..207850d16f 100644
--- a/network/cherokee/cherokee.SlackBuild
+++ b/network/cherokee/cherokee.SlackBuild
@@ -7,8 +7,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=cherokee
-VERSION=${VERSION:-20180709_9a75e65}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-20230111_ce1ca8a}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -96,6 +96,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 {} \;
+sed -i "s|\[2\.71|[2.69|" configure.ac m4/{nls,po,progtest}.m4
+
# Apply all the patches in $CWD/patches (thanks Gentoo)
for patch in $CWD/patches/* ; do
patch -p1 < $patch
@@ -117,7 +119,7 @@ CXXFLAGS="$SLKCFLAGS" \
--with-mysql=$MYSQL \
--enable-ipv6=$IPV6 \
--enable-admin=$ADMIN \
- --disable-pam \
+ --enable-pam \
--disable-static \
--enable-trace=$TRACE
diff --git a/network/cherokee/cherokee.info b/network/cherokee/cherokee.info
index 87c519de3a..83b3c5d9bd 100644
--- a/network/cherokee/cherokee.info
+++ b/network/cherokee/cherokee.info
@@ -1,8 +1,8 @@
PRGNAM="cherokee"
-VERSION="20180709_9a75e65"
+VERSION="20230111_ce1ca8a"
HOMEPAGE="http://www.cherokee-project.com"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/cherokee-20180709_9a75e65.tar.xz"
-MD5SUM="2f08188ca102fd6a7ad2ea3cc1c26f84"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/cherokee-20230111_ce1ca8a.tar.xz"
+MD5SUM="f78e7cf58fd398a7207e537b98e6d14d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/choqok/README b/network/choqok/README
new file mode 100644
index 0000000000..152e77609f
--- /dev/null
+++ b/network/choqok/README
@@ -0,0 +1,12 @@
+
+ choqok (KDE Micro-Blogging client)
+
+ Choqok is a Free/Open Source micro-blogging client by the KDE
+ community. The name comes from an ancient Persian word, means
+ Sparrow!
+
+ Currently supports Twitter.com, GNU Social (formerly known as
+ StatusNet), Pump.io (formerly known as Identi.ca), Friendica and
+ Open Collaboration Services (used by OpenDesktop.org).
+
+ Homepage: https://github.com/KDE/choqok
diff --git a/network/yoda/yoda.SlackBuild b/network/choqok/choqok.SlackBuild
index 74d4b267ab..73f5e8d49a 100644
--- a/network/yoda/yoda.SlackBuild
+++ b/network/choqok/choqok.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for yoda
+# Slackware build script for choqok
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2022 Matthew Miller Salina,Kansas,USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,12 +24,13 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=yoda
-VERSION=${VERSION:-0.1.5}
+PRGNAM=choqok
+VERSION=${VERSION:-1.7.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -38,14 +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
-fi
-
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -64,6 +57,11 @@ else
LIBDIRSUFFIX=""
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
set -e
rm -rf $PKG
@@ -79,14 +77,23 @@ 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 {} \;
-python setup.py install --root=$PKG
+mkdir -p build
+cd build
+ cmake \
+ cmake -DKDE_INSTALL_USE_QT_SYS_PATHS=ON ..
+ make
+ make install/strip 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 PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/share/applications
+
+chmod 0644 $PKG/usr/share/applications/org.kde.choqok.desktop
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+rm -Rv $PKG/usr/share/doc
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/choqok/choqok.info b/network/choqok/choqok.info
new file mode 100644
index 0000000000..7a01041889
--- /dev/null
+++ b/network/choqok/choqok.info
@@ -0,0 +1,10 @@
+PRGNAM="choqok"
+VERSION="1.7.0"
+HOMEPAGE="https://github.com/KDE/choqok"
+DOWNLOAD="https://github.com/KDE/choqok/archive/refs/tags/v1.7.0/choqok-1.7.0.tar.gz"
+MD5SUM="429ff1f3f8c53ffae78ef82889ff21f5"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Matthew Miller"
+EMAIL="mattallmill@gmail.com"
diff --git a/network/choqok/doinst.sh b/network/choqok/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/choqok/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/choqok/slack-desc b/network/choqok/slack-desc
new file mode 100644
index 0000000000..1bc990a324
--- /dev/null
+++ b/network/choqok/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------------------------------------------------------|
+choqok: choqok (KDE Micro-Blogging client)
+choqok:
+choqok: Choqok is a Free/Open Source micro-blogging client by the KDE
+choqok: community. The name comes from an ancient Persian word, means
+choqok: Sparrow!
+choqok:
+choqok: Currently supports Twitter.com, GNU Social (formerly known as
+choqok: StatusNet), Pump.io (formerly known as Identi.ca), Friendica and
+choqok: Open Collaboration Services (used by OpenDesktop.org).
+choqok:
+choqok: Homepage: https://github.com/KDE/choqok
diff --git a/network/cinny-desktop/README b/network/cinny-desktop/README
new file mode 100644
index 0000000000..6ee8d15e18
--- /dev/null
+++ b/network/cinny-desktop/README
@@ -0,0 +1,11 @@
+Cinny Desktop - yet another Matrix client.
+
+Cinny is a matrix client focusing primarily on simple, elegant and
+secure interface. The desktop app is made with Tauri.
+
+This SlackBuild is a re-packaged official deb archive.
+
+Cinny is also able to be used directly from the web with your
+electron supporting browser of choice.
+
+There is no 32bit application available.
diff --git a/network/cinny-desktop/cinny-desktop.SlackBuild b/network/cinny-desktop/cinny-desktop.SlackBuild
new file mode 100644
index 0000000000..10e830f7a0
--- /dev/null
+++ b/network/cinny-desktop/cinny-desktop.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+
+# Slackware build script for cinny-desktop
+#
+# This is a slightly gimped script for 15.0 based upon my script for -current
+# which takes native Slackware-built deb packages and converts them for
+# x86_64 and aarch64 available here:
+# https://github.com/mac-a-r0ni/lngnbuilds/tree/main/network/cinny-desktop
+#
+# Copyright 2023 Jay Lanagan (j@lngn.net), Detroit, MI, 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=cinny-desktop
+SRCNAM=Cinny_desktop
+VERSION=${VERSION:-3.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}
+
+if [ "$ARCH" = "i586" ]; then
+ LIBDIRSUFFIX=""
+ echo "This package is currently only available for 64bit."
+ exit 1
+elif [ "$ARCH" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+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/$SRCNAM-$ARCH.deb data.tar.gz | tar xzv
+
+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
+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/cinny-desktop/cinny-desktop.info b/network/cinny-desktop/cinny-desktop.info
new file mode 100644
index 0000000000..77f20374d6
--- /dev/null
+++ b/network/cinny-desktop/cinny-desktop.info
@@ -0,0 +1,10 @@
+PRGNAM="cinny-desktop"
+VERSION="3.2.1"
+HOMEPAGE="https://cinny.in/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/cinnyapp/cinny-desktop/releases/download/v3.2.1/Cinny_desktop-x86_64.deb"
+MD5SUM_x86_64="f62b34fdca91f2ea6a66395aa13e780b"
+REQUIRES="libayatana-appindicator webkit2gtk"
+MAINTAINER="Jay Lanagan"
+EMAIL="j@lngn.net"
diff --git a/network/cinny-desktop/doinst.sh b/network/cinny-desktop/doinst.sh
new file mode 100644
index 0000000000..fd1bca3b49
--- /dev/null
+++ b/network/cinny-desktop/doinst.sh
@@ -0,0 +1,8 @@
+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/Electrum-DASH/slack-desc b/network/cinny-desktop/slack-desc
index 4167b65d97..70f8319b4d 100644
--- a/network/Electrum-DASH/slack-desc
+++ b/network/cinny-desktop/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-Electrum-DASH: Electrum-DASH (dash client)
-Electrum-DASH:
-Electrum-DASH: Electrum-DASH is an easy to use Dash client.
-Electrum-DASH:
-Electrum-DASH: There is no waiting time when you start the client, because it does
-Electrum-DASH: not download the Bitcoin blockchain.
-Electrum-DASH:
-Electrum-DASH: Project URL: https://electrum-dash.org/
-Electrum-DASH:
-Electrum-DASH:
-Electrum-DASH:
+cinny-desktop: cinny-desktop (yet another matrix client for desktop)
+cinny-desktop:
+cinny-desktop: A matrix client with simple, elegant and secure interface.
+cinny-desktop:
+cinny-desktop: Homepage: https://github.com/cinnyapp/cinny-desktop
+cinny-desktop:
+cinny-desktop:
+cinny-desktop:
+cinny-desktop:
+cinny-desktop:
+cinny-desktop:
diff --git a/network/clamav-unofficial-sigs/clamav-unofficial-sigs.info b/network/clamav-unofficial-sigs/clamav-unofficial-sigs.info
index 8d51786e15..4b845c518b 100644
--- a/network/clamav-unofficial-sigs/clamav-unofficial-sigs.info
+++ b/network/clamav-unofficial-sigs/clamav-unofficial-sigs.info
@@ -1,7 +1,7 @@
PRGNAM="clamav-unofficial-sigs"
VERSION="5.6.2"
HOMEPAGE="https://github.com/extremeshok/clamav-unofficial-sigs"
-DOWNLOAD="https://github.com/extremeshok/clamav-unofficial-sigs/archive/5.6.2.tar.gz"
+DOWNLOAD="https://github.com/extremeshok/clamav-unofficial-sigs/archive/5.6.2/clamav-unofficial-sigs-5.6.2.tar.gz"
MD5SUM="f3226e88cc84de5803c84583cf72e622"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/claws-mail/claws-mail.SlackBuild b/network/claws-mail/claws-mail.SlackBuild
index 0e6785db5e..135dbb2a6f 100644
--- a/network/claws-mail/claws-mail.SlackBuild
+++ b/network/claws-mail/claws-mail.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=claws-mail
-VERSION=${VERSION:-4.1.0}
+VERSION=${VERSION:-4.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/claws-mail/claws-mail.info b/network/claws-mail/claws-mail.info
index 0e7fe6cc5f..5288da0251 100644
--- a/network/claws-mail/claws-mail.info
+++ b/network/claws-mail/claws-mail.info
@@ -1,8 +1,8 @@
PRGNAM="claws-mail"
-VERSION="4.1.0"
+VERSION="4.1.1"
HOMEPAGE="https://www.claws-mail.org/"
-DOWNLOAD="https://www.claws-mail.org/releases/claws-mail-4.1.0.tar.xz"
-MD5SUM="be5e391e1d3f7be6032d1e9d0dbf63e3"
+DOWNLOAD="https://www.claws-mail.org/releases/claws-mail-4.1.1.tar.xz"
+MD5SUM="bde1fdfcc082aa629d8704cba56a8cf6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libetpan"
diff --git a/network/clipgrab/README b/network/clipgrab/README
index f7a94f54b5..ba4271c070 100644
--- a/network/clipgrab/README
+++ b/network/clipgrab/README
@@ -12,3 +12,6 @@ in just one easy step.
Now, Clipgrab downloading youtube-dlp as additional component
to downloading videos.
+
+NOTE: for downloading 1080p videos from YouTube a most updated
+version of ffmpeg is required.
diff --git a/network/clipgrab/clipgrab.SlackBuild b/network/clipgrab/clipgrab.SlackBuild
index 3ac1a28858..1409e0a7cf 100644
--- a/network/clipgrab/clipgrab.SlackBuild
+++ b/network/clipgrab/clipgrab.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for clipgrab.
#
-# Copyright 2015-2022 Edinaldo P. Silva, Rio de Janeiro, Brazil.
+# Copyright 2015-2024 Edinaldo P. Silva, Rio de Janeiro, Brazil.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=clipgrab
-VERSION=${VERSION:-3.9.7}
+VERSION=${VERSION:-3.9.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/clipgrab/clipgrab.info b/network/clipgrab/clipgrab.info
index 7311f69909..e98728f76c 100644
--- a/network/clipgrab/clipgrab.info
+++ b/network/clipgrab/clipgrab.info
@@ -1,8 +1,8 @@
PRGNAM="clipgrab"
-VERSION="3.9.7"
+VERSION="3.9.10"
HOMEPAGE="http://clipgrab.org/"
-DOWNLOAD="https://download.clipgrab.org/clipgrab-3.9.7.tar.gz"
-MD5SUM="9f7769e7b3676a012af01870a4706892"
+DOWNLOAD="https://download.clipgrab.org/clipgrab-3.9.10.tar.gz"
+MD5SUM="d3653ecc3af9128bc631fe9ce794fa18"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="yt-dlp"
diff --git a/network/cmst/README b/network/cmst/README
new file mode 100644
index 0000000000..e42b7bcb3a
--- /dev/null
+++ b/network/cmst/README
@@ -0,0 +1,9 @@
+cmst (Qt frontend for Connman)
+
+Graphical user interface to control the connman daemon. The connman
+daemon must be started as you normally would, this program just
+interfaces with that daemon. You can see what technologies and
+services connman has found, and for wifi services an agent is
+registered to assist in obtaining the information from you necessary
+to logon to the wifi service.
+
diff --git a/network/deis/deis.SlackBuild b/network/cmst/cmst.SlackBuild
index 091bf523e0..88b8c3976e 100644
--- a/network/deis/deis.SlackBuild
+++ b/network/cmst/cmst.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for deis
+# Slackware build script for cmst
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Samuel Young, MO, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=deis
-VERSION=${VERSION:-1.6.1}
+PRGNAM=cmst
+VERSION=${VERSION:-2023.03.14}
BUILD=${BUILD:-1}
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
@@ -70,7 +67,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.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -79,15 +76,24 @@ 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 {} \;
-python2 setup.py install --root=$PKG
+qmake-qt5 DISTRO=slackware
+USE_LIBPATH="/usr/lib${LIBDIRSUFFIX}" \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+make
+make install INSTALL_ROOT=$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
-rm -f $PKG/usr/README.rst
+mv $PKG/usr/share/man $PKG/usr
+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 LICENSE PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ README.md text/* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/cmst/cmst.info b/network/cmst/cmst.info
new file mode 100644
index 0000000000..dc28e059ab
--- /dev/null
+++ b/network/cmst/cmst.info
@@ -0,0 +1,10 @@
+PRGNAM="cmst"
+VERSION="2023.03.14"
+HOMEPAGE="https://github.com/andrew-bibb/cmst"
+DOWNLOAD="https://github.com/andrew-bibb/cmst/releases/download/cmst-2023.03.14/cmst-2023.03.14.tar.xz"
+MD5SUM="e4d0d63b23010b9a6a39dca08b973d73"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="connman"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/cmst/doinst.sh b/network/cmst/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/cmst/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/deis/slack-desc b/network/cmst/slack-desc
index 39c0314cbe..7a0d2ef7b0 100644
--- a/network/deis/slack-desc
+++ b/network/cmst/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-deis: deis (Command-line Client for Deis)
-deis:
-deis: The Deis client is a Python CLI that issues API calls to a private
-deis: Deis controller, providing a Heroku-inspired PaaS workflow.
-deis:
-deis: Homepage: http://deis.io/
-deis:
-deis:
-deis:
-deis:
-deis:
+cmst: cmst (Qt frontend for Connman)
+cmst:
+cmst: Cmst is a Qt based frontend for the connman connection manager. This
+cmst: package also provides a systemtray icon.
+cmst:
+cmst:
+cmst:
+cmst:
+cmst:
+cmst: Homepage: https://github.com/andrew-bibb/cmst
+cmst:
diff --git a/network/connman/README b/network/connman/README
new file mode 100644
index 0000000000..31cba91d83
--- /dev/null
+++ b/network/connman/README
@@ -0,0 +1,27 @@
+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
+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.
+
+By default, this SlackBuild will build connman with support for iwd,
+polkit, and nmcompat (NetworkManager compatibility interfaces). If
+you wish to disable any of these, you may run the SlackBuild with
+the DISABLE_IWD, DISABLE_POLKIT, and DISABLE_NMCOMPAT environment
+variables set, e.g.
+ DISABLE_IWD=yes DISABLE_POLKIT=yes DISABLE_NMCOMPAT=yes \
+ ./connman.SlackBuild
diff --git a/network/CherryMusic/CherryMusic.SlackBuild b/network/connman/connman.SlackBuild
index 680c8c7530..8883b13f7d 100644
--- a/network/CherryMusic/CherryMusic.SlackBuild
+++ b/network/connman/connman.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for CherryMusic
+# Slackware build script for connman
-# Copyright 2014-2017 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Samuel Young, MO, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=CherryMusic
-VERSION=${VERSION:-0.40.0}
+PRGNAM=connman
+VERSION=${VERSION:-1.42}
BUILD=${BUILD:-1}
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
@@ -79,25 +76,49 @@ 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 {} \;
-python setup.py install --root=$PKG
+iwd="--enable-iwd" ; [ "${DISABLE_IWD:-no}" != "no" ] && iwd=""
+polkit="--enable-polkit" ; [ "${DISABLE_POLKIT:-no}" != "no" ] && polkit=""
+nmcompat="--enable-nmcompat" ; [ "${DISABLE_NMCOMPAT:-no}" != "no" ] && nmcompat=""
+
+autoreconf -i
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux \
+ $iwd \
+ $polkit \
+ $nmcompat
+
+make
+make install DESTDIR=$PKG
+
+mkdir -p $PKG/etc/rc.d
+install -m 644 $CWD/rc.connmand $PKG/etc/rc.d/
+
+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
-install -D -m644 doc/man/cherrymusic.1 $PKG/usr/man/man1/cherrymusic.1
-install -D -m644 doc/man/cherrymusic.conf.5 $PKG/usr/man/man5/cherrymusic.conf.5
-install -D -m644 doc/man/cherrymusicd.8 $PKG/usr/man/man8/cherrymusicd.8
-
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 CHANGES COPYING README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS COPYING ChangeLog HACKING 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/connman/connman.info b/network/connman/connman.info
new file mode 100644
index 0000000000..101cde64c9
--- /dev/null
+++ b/network/connman/connman.info
@@ -0,0 +1,10 @@
+PRGNAM="connman"
+VERSION="1.42"
+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.42.tar.gz"
+MD5SUM="5943f0687dff53f7c252e8a44cb9eb90"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/connman/rc.connmand b/network/connman/rc.connmand
new file mode 100644
index 0000000000..cac2087cfa
--- /dev/null
+++ b/network/connman/rc.connmand
@@ -0,0 +1,33 @@
+#!/bin/sh
+# Start/stop/restart the connman daemon.
+
+connmand_start() {
+ if [ -x /usr/sbin/connmand ]; then
+ echo "Starting connman daemon: /usr/sbin/connmand "
+ /usr/sbin/connmand
+ fi
+}
+
+connmand_stop() {
+ killall connmand 2> /dev/null
+}
+
+connmand_restart() {
+ connmand_stop
+ sleep 1
+ connmand_start
+}
+
+case "$1" in
+'start')
+ connmand_start
+ ;;
+'stop')
+ connmand_stop
+ ;;
+'restart')
+ connmand_restart
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
diff --git a/network/connman/slack-desc b/network/connman/slack-desc
new file mode 100644
index 0000000000..d1039da9af
--- /dev/null
+++ b/network/connman/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------------------------------------------------------|
+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: USB, ethernet, WiFi, cellular and Bluetooth.
+connman:
diff --git a/network/coturn/coturn.SlackBuild b/network/coturn/coturn.SlackBuild
index 78611d1aab..6976e31e7b 100644
--- a/network/coturn/coturn.SlackBuild
+++ b/network/coturn/coturn.SlackBuild
@@ -28,26 +28,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=coturn
-VERSION=${VERSION:-4.5.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-4.6.2}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
TURN_USER=${TURN_USER:-turnserver}
TURN_GROUP=${TURN_GROUP:-turnserver}
-if ! grep -q ^$TURN_GROUP: /etc/group 2>/dev/null ; then
- echo " Error: TURN group ($TURN_GROUP) doesn't exist."
- echo " Try creating one with: groupadd -g 366 $TURN_GROUP"
- exit 1
-fi
-
-if ! grep -q ^$TURN_USER: /etc/passwd 2>/dev/null ; then
- echo " Error: TURN user ($TURN_USER) doesn't exist."
- echo " Try creating one with: useradd -u 366 -g $TURN_GROUP -d /var/lib/turn -s /bin/bash $TURN_USER"
- exit 1
-fi
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -64,6 +52,18 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
+if ! grep -q ^$TURN_GROUP: /etc/group 2>/dev/null ; then
+ echo " Error: TURN group ($TURN_GROUP) doesn't exist."
+ echo " Try creating one with: groupadd -g 366 $TURN_GROUP"
+ exit 1
+fi
+
+if ! grep -q ^$TURN_USER: /etc/passwd 2>/dev/null ; then
+ echo " Error: TURN user ($TURN_USER) doesn't exist."
+ echo " Try creating one with: useradd -u 366 -g $TURN_GROUP -d /var/lib/turn -s /bin/bash $TURN_USER"
+ exit 1
+fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -88,7 +88,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -114,6 +114,7 @@ make install DESTDIR=$PKG
sed 's%/usr/local%/usr/share/turnserver/examples%' $PKG/etc/turnserver.conf.default > $PKG/etc/turnserver.conf.new
rm -f $PKG/etc/turnserver.conf.default
+cp -a examples/ca $PKG/usr/share/turnserver/examples
mkdir -p $PKG/etc/{rc.d,logrotate.d}
cat $CWD/rc.turnserver > $PKG/etc/rc.d/rc.turnserver.new
@@ -138,11 +139,11 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS ChangeLog LICENSE* README* \
+cp -a ChangeLog LICENSE* README* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-find $PKG/{usr/doc,usr/share,usr/include,etc,var} -type f -exec chmod -x {} +
+find $PKG/{usr/doc,usr/man,usr/share,usr/include,etc,var} -type f -exec chmod -x {} +
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/coturn/coturn.info b/network/coturn/coturn.info
index 28ecb38663..fdbc81c709 100644
--- a/network/coturn/coturn.info
+++ b/network/coturn/coturn.info
@@ -1,8 +1,8 @@
PRGNAM="coturn"
-VERSION="4.5.2"
+VERSION="4.6.2"
HOMEPAGE="https://github.com/coturn/coturn"
-DOWNLOAD="https://github.com/coturn/coturn/archive/4.5.2/coturn-4.5.2.tar.gz"
-MD5SUM="e58d9e14e0607f763945ff98585cb218"
+DOWNLOAD="https://github.com/coturn/coturn/archive/4.6.2/coturn-4.6.2.tar.gz"
+MD5SUM="7d3ad08b1d63417cbc76d62f23e48ec4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/courier-imap/courier-imap.info b/network/courier-imap/courier-imap.info
index e0670e672c..de423f2b02 100644
--- a/network/courier-imap/courier-imap.info
+++ b/network/courier-imap/courier-imap.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://sourceforge.net/projects/courier/files/imap/5.0.7/courier-imap
MD5SUM="d93fd9b3807070086c930823e63b2d82"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="courier-authlib courier-unicode"
+REQUIRES="courier-authlib"
MAINTAINER="Derek Noonburg"
EMAIL="derekn@foolabs.com"
diff --git a/network/courier-unicode/README b/network/courier-unicode/README
index 4f4b08b02a..a0e38483ee 100644
--- a/network/courier-unicode/README
+++ b/network/courier-unicode/README
@@ -1,3 +1,3 @@
The Courier Unicode Library provides Unicode-related algorithms for
other Courier applications. The current release of the Courier Unicode
-Library is based on the Unicode 8.0.0 standard.
+Library is based on the Unicode 13.0.0 standard.
diff --git a/network/courier-unicode/courier-unicode.SlackBuild b/network/courier-unicode/courier-unicode.SlackBuild
index 04beef2c7b..bd1da8a65c 100644
--- a/network/courier-unicode/courier-unicode.SlackBuild
+++ b/network/courier-unicode/courier-unicode.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for courier unicode
#
# Copyright 2015 - 2019 Derek Noonburg (derekn@foolabs.com)
-# Copyright 2019 - 2022 Andrew Strong, Blue Mountains, Australia.
+# Copyright 2019 - 2023 Andrew Strong, Blue Mountains, Australia.
#
# Permission to use, copy, modify, and distribute this software for
# any purpose with or without fee is hereby granted, provided that
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=courier-unicode
-VERSION=${VERSION:-2.2.3}
+VERSION=${VERSION:-2.2.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +40,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
@@ -95,7 +92,6 @@ CXXFLAGS="$SLKCFLAGS" \
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 \
diff --git a/network/courier-unicode/courier-unicode.info b/network/courier-unicode/courier-unicode.info
index 70f4f8db6f..379b283259 100644
--- a/network/courier-unicode/courier-unicode.info
+++ b/network/courier-unicode/courier-unicode.info
@@ -1,8 +1,8 @@
PRGNAM="courier-unicode"
-VERSION="2.2.3"
+VERSION="2.2.6"
HOMEPAGE="http://www.courier-mta.org/unicode/"
-DOWNLOAD="https://download.sourceforge.net/courier/courier-unicode-2.2.3.tar.bz2"
-MD5SUM="2a3be811e113840500253c2b14bb1d7c"
+DOWNLOAD="https://download.sourceforge.net/courier/courier-unicode-2.2.6.tar.bz2"
+MD5SUM="55ca273834da0eca2f99e2558af3a225"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/cryptcat-unix/cryptcat-unix.SlackBuild b/network/cryptcat-unix/cryptcat-unix.SlackBuild
index b2a39a233c..09564a9b3e 100644
--- a/network/cryptcat-unix/cryptcat-unix.SlackBuild
+++ b/network/cryptcat-unix/cryptcat-unix.SlackBuild
@@ -8,9 +8,9 @@
#
# Modified by SlackBuilds.org
-VERSION=${VERSION:-1.2.1}
cd $(dirname $0) ; CWD=$(pwd)
+VERSION=${VERSION:-1.2.1}
PRGNAM=cryptcat-unix
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/csync/csync.info b/network/csync/csync.info
index 2cae702278..7ee4dab046 100644
--- a/network/csync/csync.info
+++ b/network/csync/csync.info
@@ -1,7 +1,7 @@
PRGNAM="csync"
VERSION="0.50.0"
HOMEPAGE="http://www.csync.org"
-DOWNLOAD="http://ftp.osuosl.org/pub/gentoo/distfiles/csync-0.50.0.tar.xz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/csync-0.50.0.tar.xz"
MD5SUM="4f022aaa19ecd8008b03876dd65a9df2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/curl-quic/README b/network/curl-quic/README
new file mode 100644
index 0000000000..c61e020829
--- /dev/null
+++ b/network/curl-quic/README
@@ -0,0 +1,13 @@
+curl-quic is a version of curl which supports QUIC and HTTP/3
+
+This version is identical to curl provided by Slackware,
+but supports QUIC and HTTP/3 via nghttp3 and ngtcp2 found on SBo.
+
+ECH is still not supported.
+
+Test that QUIC works by
+
+curl-quic -v --http3-only https://cloudflare-quic.com
+
+or any other QUIC-enabled website.
+
diff --git a/network/curl-quic/curl-quic.SlackBuild b/network/curl-quic/curl-quic.SlackBuild
new file mode 100644
index 0000000000..d262f7f9e8
--- /dev/null
+++ b/network/curl-quic/curl-quic.SlackBuild
@@ -0,0 +1,146 @@
+#!/bin/bash
+
+# Copyright 2008, 2009, 2010, 2011, 2013, 2014, 2016, 2017, 2018, 2020, 2021 Patrick J. Volkerding, Sebeka, MN, 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=curl-quic
+TGZNAM=curl
+VERSION=${VERSION:-8.6.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ *) export 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
+
+OUTPUT=${OUTPUT:-/tmp}
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+mkdir -p $OUTPUT
+
+rm -rf $PKG
+
+mkdir -p $PKG
+
+cd $TMP
+rm -rf $TGZNAM-$VERSION
+tar xvf $CWD/$TGZNAM-$VERSION.tar.?z* || exit 1
+cd $TGZNAM-$VERSION || exit 1
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \+ -o \
+ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
+ -exec chmod 644 {} \+
+
+set -e
+
+
+CFLAGS="$SLKCFLAGS " \
+ CC='ccache gcc' \
+ CXX='ccache g++' \
+./configure \
+ --prefix=/opt/$PRGNAM \
+ --libdir=/opt/$PRGNAM/usr/lib${LIBDIRSUFFIX} \
+ --mandir=/opt/$PRGNAM/usr/man \
+ --with-libssh2 \
+ --with-gssapi \
+ --enable-ares \
+ --enable-static=no \
+ --without-ca-bundle \
+ --with-nghttp3 \
+ --with-ngtcp2 \
+ --enable-websockets \
+ --with-ca-path=/etc/ssl/certs \
+ --with-gnutls || exit 1
+
+CFLAGS="$SLKCFLAGS " \
+make V=1
+make install DESTDIR=$PKG
+
+mkdir -p $PKG/usr/bin
+( cd $PKG/usr/bin
+ln --symbolic --relative ../../opt/curl-quic/bin/curl curl-quic )
+
+# Don't ship .la files:
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+rm $PKG/opt/$PRGNAM/usr/lib${LIBDIRSUFFIX}/libcurl.la
+
+# We don't ship the related perl script (yet):
+rm -f $PKG/usr/man/man1/mk-ca-bundle.1
+
+find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
+
+
+#rm $PKG/usr/lib${LIBDIRSUFFIX}/libcurl.a
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING* README* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat "$CWD/$PRGNAM.SlackBuild" > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Get rid of .deps cruft:
+rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/examples/.deps
+
+# man pages from normal curl still work
+rm -rf $PKG/opt/$PRGNAM/usr/man
+
+
+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/curl-quic/curl-quic.info b/network/curl-quic/curl-quic.info
new file mode 100644
index 0000000000..fb673d3467
--- /dev/null
+++ b/network/curl-quic/curl-quic.info
@@ -0,0 +1,10 @@
+PRGNAM="curl-quic"
+VERSION="8.6.0"
+HOMEPAGE="https://curl.se/"
+DOWNLOAD="https://github.com/curl/curl/releases/download/curl-8_6_0/curl-8.6.0.tar.gz"
+MD5SUM="6178ea567611c2aaffafc88f91fb4238"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="nghttp3 ngtcp2"
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.curl-quic_2023-05-17@lockywolf.net"
diff --git a/network/curl-quic/slack-desc b/network/curl-quic/slack-desc
new file mode 100644
index 0000000000..1526548406
--- /dev/null
+++ b/network/curl-quic/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------------------------------------------------------|
+curl-quic: curl-quic (command line URL data transfer tool)
+curl-quic:
+curl-quic: Curl is a command line tool for transferring data specified with URL
+curl-quic: syntax. The command is designed to work without user interaction or
+curl-quic: any kind of interactivity. Curl offers a busload of useful tricks
+curl-quic: like proxy support, user authentication, ftp upload, HTTP post, SSL
+curl-quic: (https:) connections, cookies, file transfer resume and more.
+curl-quic:
+curl-quic: This build enables QUIC and HTTP/3 over pure UDP.
+curl-quic:
+curl-quic:
diff --git a/network/cyrus-imapd/cyrus-imapd.SlackBuild b/network/cyrus-imapd/cyrus-imapd.SlackBuild
index 2bc7a4ed20..096af5706f 100644
--- a/network/cyrus-imapd/cyrus-imapd.SlackBuild
+++ b/network/cyrus-imapd/cyrus-imapd.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for cyrus-imapd
-# Copyright 2010, 2011, 2014, 2016, 2017 Mario Preksavec, Zagreb, Croatia
+# Copyright 2010, 2024 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=cyrus-imapd
-VERSION=${VERSION:-3.2.4}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.2.12}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/cyrus-imapd/cyrus-imapd.info b/network/cyrus-imapd/cyrus-imapd.info
index a4847ef61c..9eb4263398 100644
--- a/network/cyrus-imapd/cyrus-imapd.info
+++ b/network/cyrus-imapd/cyrus-imapd.info
@@ -1,8 +1,8 @@
PRGNAM="cyrus-imapd"
-VERSION="3.2.4"
+VERSION="3.2.12"
HOMEPAGE="https://www.cyrusimap.org/"
-DOWNLOAD="https://github.com/cyrusimap/cyrus-imapd/releases/download/cyrus-imapd-3.2.4/cyrus-imapd-3.2.4.tar.gz"
-MD5SUM="e4a745ce615d6712e1b65bb13903807f"
+DOWNLOAD="https://github.com/cyrusimap/cyrus-imapd/releases/download/cyrus-imapd-3.2.12/cyrus-imapd-3.2.12.tar.gz"
+MD5SUM="7c0ebaa07c402cc2933305336b1278e3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/dante/dante.SlackBuild b/network/dante/dante.SlackBuild
index 31d186f89d..35f43607a8 100644
--- a/network/dante/dante.SlackBuild
+++ b/network/dante/dante.SlackBuild
@@ -8,11 +8,13 @@
# TODO: init script? Only if someone asks for it...
+# 20230103 bkw: BUILD=2, fix broken symlinks.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dante
VERSION=${VERSION:-1.4.3}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -100,8 +102,8 @@ cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
# Not going to install actual socks.conf and sockd.conf in /etc,
# but at least symlink the examples where they can be found easily.
mkdir -p $PKG/etc
-ln -s ../usr/doc/$PRGNAM-$VERSION/socks.conf $PKG/etc/socks.conf.example
-ln -s ../usr/doc/$PRGNAM-$VERSION/sockd.conf $PKG/etc/sockd.conf.example
+ln -s ../usr/doc/$PRGNAM-$VERSION/example/socks.conf $PKG/etc/socks.conf.example
+ln -s ../usr/doc/$PRGNAM-$VERSION/example/sockd.conf $PKG/etc/sockd.conf.example
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/darkhttpd/darkhttpd.SlackBuild b/network/darkhttpd/darkhttpd.SlackBuild
index 50309e8fc1..4b74b5e7c2 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.13}
+VERSION=${VERSION:-1.16}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/darkhttpd/darkhttpd.info b/network/darkhttpd/darkhttpd.info
index bd984ea34c..4b92c2dfcc 100644
--- a/network/darkhttpd/darkhttpd.info
+++ b/network/darkhttpd/darkhttpd.info
@@ -1,8 +1,8 @@
PRGNAM="darkhttpd"
-VERSION="1.13"
+VERSION="1.16"
HOMEPAGE="https://unix4lyfe.org/darkhttpd/"
-DOWNLOAD="https://github.com/emikulic/darkhttpd/archive/v1.13/darkhttpd-1.13.tar.gz"
-MD5SUM="365fea0d3eac7d51094dfed746ed8ed8"
+DOWNLOAD="https://github.com/emikulic/darkhttpd/archive/v1.16/darkhttpd-1.16.tar.gz"
+MD5SUM="ba8928e866ebcb9691a0cdd3b504b3c3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/ddclient/ddclient.SlackBuild b/network/ddclient/ddclient.SlackBuild
index cb50313e09..232d87d2e1 100644
--- a/network/ddclient/ddclient.SlackBuild
+++ b/network/ddclient/ddclient.SlackBuild
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ddclient
-VERSION=${VERSION:-3.9.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.10.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -55,6 +55,11 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+
+# patch the ddclient.conf.in file pid directory
+# @runstatedir@ should be /var/run
+sed -i.orig -e 's/@runstatedir@/@localstatedir@\/run/' ddclient.conf.in
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -62,30 +67,34 @@ 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 {} \;
-mkdir -p $PKG/usr/bin
-cp -a ddclient $PKG/usr/bin
+./autogen
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-chmod 644 sample*
-cp -a COPY* Change* README* RELEASENOTE TODO sample* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc/ddclient \
+ --localstatedir=/var
-mkdir -p $PKG/install
-cat $CWD/slack-desc > $PKG/install/slack-desc
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
+make
+make install DESTDIR=$PKG
+
+# patch to fix permissions on ddclient.conf
+# make it readable only by root # (it might contain passwords)
+chmod 0600 $PKG/etc/ddclient/ddclient.conf
+
+# Add ".new" to the configuration file for the doinst.sh
+mv $PKG/etc/ddclient/ddclient.conf $PKG/etc/ddclient/ddclient.conf.new
# Install startup script
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.ddclient > $PKG/etc/rc.d/rc.ddclient.new
-# Copy configuration and make it readable only by root (it will probably
-# contain passwords). See also doinst.sh
-mkdir -p $PKG/etc/ddclient
-cat sample-etc_ddclient.conf > $PKG/etc/ddclient/ddclient.conf.new
-chmod 0600 $PKG/etc/ddclient/ddclient.conf.new
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CO* Change* README* sample* docs/ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-# Add the cache dir
-mkdir -p $PKG/var/cache/ddclient
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
-cd $PKG
+cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/ddclient/ddclient.info b/network/ddclient/ddclient.info
index ac5a805157..7c1dadc93a 100644
--- a/network/ddclient/ddclient.info
+++ b/network/ddclient/ddclient.info
@@ -1,10 +1,10 @@
PRGNAM="ddclient"
-VERSION="3.9.1"
+VERSION="3.10.0"
HOMEPAGE="https://github.com/ddclient/ddclient/"
-DOWNLOAD="https://github.com/ddclient/ddclient/archive/v3.9.1/ddclient-3.9.1.tar.gz"
-MD5SUM="8497033052649ebe6f714338c7be4cda"
+DOWNLOAD="https://github.com/ddclient/ddclient/archive/v3.10.0/ddclient-3.10.0.tar.gz"
+MD5SUM="1ae3e491d7930c6dba3eec118deeb2b3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-Data-Validate-IP"
+REQUIRES=""
MAINTAINER="Richard Narron"
EMAIL="richard@aaazen.com"
diff --git a/network/deis/README b/network/deis/README
deleted file mode 100644
index 68a4d66dec..0000000000
--- a/network/deis/README
+++ /dev/null
@@ -1,3 +0,0 @@
-Deis is a Django/Celery API server, Python CLI and set of Chef cookbooks
-that combine to provide a Heroku-inspired application platform for
-public and private clouds. Your PaaS. Your Rules.
diff --git a/network/deis/deis.info b/network/deis/deis.info
deleted file mode 100644
index c5c327ebb7..0000000000
--- a/network/deis/deis.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="deis"
-VERSION="1.6.1"
-HOMEPAGE="http://deis.io/"
-DOWNLOAD="https://pypi.python.org/packages/source/d/deis/deis-1.6.1.tar.gz"
-MD5SUM="dda95188c7bb4562c97eeeefc4eed8f9"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="docopt python2-dateutil termcolor python2-PyYAML python2-tabulate ndg_httpsclient"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/deis/doinst.sh b/network/deis/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/deis/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/deltachat/README b/network/deltachat/README
new file mode 100644
index 0000000000..118f0f3717
--- /dev/null
+++ b/network/deltachat/README
@@ -0,0 +1,7 @@
+Delta Chat is a new chat app that sends messages via e-mails, encrypted
+if possible, with Autocrypt. You do not have to sign up anywhere, just
+use your existing e-mail account with Delta Chat.
+
+------------------------------------------------------------------------
+This SlackBuild downloads and installs the official AppImage under
+'/opt'.
diff --git a/network/deltachat/deltachat.SlackBuild b/network/deltachat/deltachat.SlackBuild
new file mode 100644
index 0000000000..5d9b567d67
--- /dev/null
+++ b/network/deltachat/deltachat.SlackBuild
@@ -0,0 +1,97 @@
+#!/bin/bash
+
+# Slackware build script for Delta Chat
+
+# Copyright 2023 Slackjeff <slackjeff@riseup.net>
+# 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.
+
+#########################################################################
+# ChangeLog
+#
+# IMPORTANT: update this if you change this script!)
+#########################################################################
+
+# 1.0 01-JAN-2023 Added (Version: 1.34.2)
+# 2.0 04-JULY-2023 Added (Version: 1.38.1)
+# 3.0 24-DEC-2023 Added (Version: 1.42.2)
+
+cd "$(dirname "$0")" ; CWD=$(pwd)
+
+PRGNAM=deltachat
+VERSION=${VERSION:-1.42.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH="${ARCH:-$(uname -m)}"
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH is not supported for $PRGNAM-$VERSION."
+ exit 1;
+fi
+
+if [ -n "${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}"
+
+APPIMGNAM="DeltaChat-$VERSION.AppImage"
+
+set -e
+
+rm -rf "$PKG"
+mkdir -p "$TMP" "$PKG" "$OUTPUT"
+mkdir -p "$PKG/install"
+mkdir -p "$PKG/usr/doc/$PRGNAM-$VERSION"
+mkdir -p "$PKG/usr/share/$PRGNAM-$VERSION"
+mkdir -p "$PKG/usr/share/applications"
+mkdir -p "$PKG/usr/share/pixmaps"
+mkdir -p "$PKG/usr/bin"
+mkdir -p "$PKG/opt"
+cd $PKG/opt
+install -m 755 $CWD/$APPIMGNAM .
+./$APPIMGNAM --appimage-extract
+rm -f $APPIMGNAM
+mv squashfs-root $PRGNAM-$VERSION
+# Fix Perms
+chown -R root:root .
+find . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+chmod +x $PRGNAM-$VERSION/usr/lib*/*.so*
+ln -s "/opt/$PRGNAM-$VERSION/$PRGNAM-desktop" "$PKG/usr/bin/$PRGNAM"
+ln -s "/opt/$PRGNAM-$VERSION/$PRGNAM-desktop.png" "$PKG/usr/share/pixmaps/$PRGNAM-desktop.png"
+
+cat $CWD/$PRGNAM.SlackBuild > "$PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild"
+cat $CWD/README > "$PKG/usr/doc/$PRGNAM-$VERSION/README"
+cat $CWD/slack-desc > "$PKG/install/slack-desc"
+cat $CWD/doinst.sh > "$PKG/install/doinst.sh"
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
+
+cd "$PKG"
+
+# Strip
+find . -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+/sbin/makepkg -l y -c n "$OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
diff --git a/network/deltachat/deltachat.desktop b/network/deltachat/deltachat.desktop
new file mode 100644
index 0000000000..4d67906be5
--- /dev/null
+++ b/network/deltachat/deltachat.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=DeltaChat
+Exec=deltachat --no-sandbox %U
+Terminal=false
+Type=Application
+Icon=deltachat-desktop
+StartupWMClass=DeltaChat
+Comment=Desktop Application for delta.chat
+Keywords=dc;chat;delta;messaging;messenger;email
+Categories=Network;Chat;InstantMessaging;
diff --git a/network/deltachat/deltachat.info b/network/deltachat/deltachat.info
new file mode 100644
index 0000000000..995eccae6f
--- /dev/null
+++ b/network/deltachat/deltachat.info
@@ -0,0 +1,10 @@
+PRGNAM="deltachat"
+VERSION="1.42.2"
+HOMEPAGE="https://delta.chat/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://download.delta.chat/desktop/v1.42.2/DeltaChat-1.42.2.AppImage"
+MD5SUM_x86_64="c116a69fbb35bef2cbad5a88e04f446e"
+REQUIRES=""
+MAINTAINER="slackjeff"
+EMAIL="slackjeff@riseup.net"
diff --git a/network/CherryMusic/doinst.sh b/network/deltachat/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/network/CherryMusic/doinst.sh
+++ b/network/deltachat/doinst.sh
diff --git a/network/deltachat/slack-desc b/network/deltachat/slack-desc
new file mode 100644
index 0000000000..9384e23e1e
--- /dev/null
+++ b/network/deltachat/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------------------------------------------------------|
+deltachat: deltachat (messaging app that works over e-mail.)
+deltachat:
+deltachat: New chat app that sends messages via e-mails, encrypted if possible
+deltachat: with Autocrypt. You do not have to sign up anywhere, just use your
+deltachat: existing e-mail account with Delta Chat.
+deltachat: Independent of any company or services. You own your data.
+deltachat:
+deltachat:
+deltachat:
+deltachat: https://delta.chat/
+deltachat:
diff --git a/network/dino/README b/network/dino/README
new file mode 100644
index 0000000000..c02e88b308
--- /dev/null
+++ b/network/dino/README
@@ -0,0 +1,11 @@
+dino is super simple jabber client with support for video calls
+
+Dino is written in vala and is well compatible
+with Conversations Android.
+
+Dino does not support neither system tray nor
+multiple windows.
+
+To switch theme, run it like:
+
+/usr/bin/env GTK_THEME=Adwaita:dark /usr/bin/dino
diff --git a/network/dino/dino.SlackBuild b/network/dino/dino.SlackBuild
new file mode 100644
index 0000000000..06f927cc17
--- /dev/null
+++ b/network/dino/dino.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for nghttp3
+# Copyright 2023 Lockywolf
+
+# 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)
+
+set -uoe pipefail
+
+TGZNAM=dino
+PRGNAM=dino
+VERSION=${VERSION:-0.4.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=${ARCH:-}
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) export ARCH=i586 ;;
+ arm*) export ARCH=arm ;;
+ *) export 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.
+PRINT_PACKAGE_NAME=${PRINT_PACKAGE_NAME:-}
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "s390" ]; then
+ SLKCFLAGS="-O2"
+ 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
+
+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 $TGZNAM-$VERSION
+tar xvf $CWD/$TGZNAM-$VERSION.tar.?z* || exit 1
+cd $TGZNAM-$VERSION || exit 1
+
+
+chown -R root:root .
+find . \
+ \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
+ -exec chmod 755 {} \; -o \
+ \( -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
+
+# Strip binaries:
+( cd $PKG
+ find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || :
+ find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || :
+)
+
+# Add a documentation directory:
+mkdir -p $PKG/usr/doc/${PRGNAM}-$VERSION
+cp -a \
+ "$CWD/dino.SlackBuild" "$CWD/slack-desc" "$CWD/README" "$CWD/$PRGNAM.info" \
+ README.md LICENSE \
+ $PKG/usr/doc/${PRGNAM}-$VERSION
+chown root:root $PKG/usr/doc/${PRGNAM}-$VERSION/*
+
+mkdir -p $PKG/install
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+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/dino/dino.info b/network/dino/dino.info
new file mode 100644
index 0000000000..dfedf0f9a7
--- /dev/null
+++ b/network/dino/dino.info
@@ -0,0 +1,10 @@
+PRGNAM="dino"
+VERSION="0.4.2"
+HOMEPAGE="https://github.com/dino/dino/"
+DOWNLOAD="https://github.com/dino/dino/releases/download/v0.4.2/dino-0.4.2.tar.gz"
+MD5SUM="6437acc254ccb92ce195b760113d8cc0"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libsignal-protocol-c libadwaita libsrtp2 libsoup3 webrtc-audio-processing"
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo-dino_2023-05-09@lockywolf.net"
diff --git a/network/opera-developer/doinst.sh b/network/dino/doinst.sh
index aea0f894eb..4a25de5e6f 100644
--- a/network/opera-developer/doinst.sh
+++ b/network/dino/doinst.sh
@@ -2,12 +2,9 @@ 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/dino/slack-desc b/network/dino/slack-desc
new file mode 100644
index 0000000000..6845a437dc
--- /dev/null
+++ b/network/dino/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------------------------------------------------------|
+dino: dino (a super simple Jabber client supporting video calls)
+dino:
+dino: dino supports groupchats, OMEMO and GnuPG encryption, and
+dino: video calls
+dino:
+dino:
+dino:
+dino:
+dino:
+dino:
+dino:
diff --git a/network/discord/README b/network/discord/README
index 9885858f9c..a925a39705 100644
--- a/network/discord/README
+++ b/network/discord/README
@@ -5,3 +5,9 @@ works on both your desktop and phone. Stop paying for TeamSpeak
servers and hassling with Skype. Simplify your life.
Discord is only available as a 64bit program. 32bit is unsupported.
+
+If you'd like Discord to continue working after an upstream update
+is released, but is not yet available on SBo, add the following to
+your user's ~/.config/discord/settings.json file:
+
+"SKIP_HOST_UPDATE": true
diff --git a/network/discord/discord.SlackBuild b/network/discord/discord.SlackBuild
index 4e27812c99..51712eae42 100644
--- a/network/discord/discord.SlackBuild
+++ b/network/discord/discord.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for discord
#
-# Copyright 2016-2022 Jeremy Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2016-2024 Jeremy Hansen <jebrhansen+SBo@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=discord
-VERSION=${VERSION:-0.0.20}
+VERSION=${VERSION:-0.0.50}
BUILD=${BUILD:-1}
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
@@ -52,12 +49,10 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
DEBARCH="i386"
- LIBDIRSUFFIX=""
echo "This package is currently only available for 64bit."
exit 1
elif [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
- LIBDIRSUFFIX="64"
else
echo "Package for $(uname -m) architecture is not available."
exit 1
@@ -87,6 +82,9 @@ cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# Don't need these:
rm -rf $PKG/usr/share/doc $PKG/usr/share/lintian
+# Correct permissions error found using sbopkglint
+chmod +x $PKG/usr/share/discord/lib*.so*
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/discord/discord.info b/network/discord/discord.info
index 84b2eae2b1..e667e9d346 100644
--- a/network/discord/discord.info
+++ b/network/discord/discord.info
@@ -1,10 +1,10 @@
PRGNAM="discord"
-VERSION="0.0.20"
+VERSION="0.0.50"
HOMEPAGE="https://discordapp.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://dl.discordapp.net/apps/linux/0.0.20/discord-0.0.20.deb"
-MD5SUM_x86_64="4df07374e75849f1c7be66c0aa680645"
+DOWNLOAD_x86_64="https://dl.discordapp.net/apps/linux/0.0.50/discord-0.0.50.deb"
+MD5SUM_x86_64="d8833eed04524519f0dc716252fc751a"
REQUIRES=""
MAINTAINER="Jeremy Hansen"
EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/network/dkimproxy/dkimproxy.SlackBuild b/network/dkimproxy/dkimproxy.SlackBuild
index 1a76c48def..732dead34e 100644
--- a/network/dkimproxy/dkimproxy.SlackBuild
+++ b/network/dkimproxy/dkimproxy.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for DKIMproxy
# Copyright 2010, Steven King <kingrst@gmail.com>
+# Copyright 2023 Yth | Pont-en-Royans, France | yth@ythogtha.org
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -59,6 +60,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -128,7 +132,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 INSTALL NEWS README TODO ChangeLog smtpprox.ChangeLog \
+ AUTHORS COPYING NEWS README TODO ChangeLog smtpprox.ChangeLog \
smtpprox.README smtpprox.TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/dkimproxy/dkimproxy.info b/network/dkimproxy/dkimproxy.info
index 78257acaa8..accfde7268 100644
--- a/network/dkimproxy/dkimproxy.info
+++ b/network/dkimproxy/dkimproxy.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/dkimproxy/dkimproxy-1.4.1.tar.gz"
MD5SUM="3ecaa38a8c865a5b7682f7f261354218"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-Crypt-OpenSSL-RSA perl-digest-sha1 perl-MailTools perl-net-dns perl-Net-Server perl-Mail-DKIM"
-MAINTAINER="Steven King"
-EMAIL="kingrst@gmail.com"
+REQUIRES="perl-Net-Server perl-Mail-DKIM"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/network/dnscrypt-proxy/README b/network/dnscrypt-proxy/README
index 673a8bae88..0e857524f6 100644
--- a/network/dnscrypt-proxy/README
+++ b/network/dnscrypt-proxy/README
@@ -1,14 +1,11 @@
-dnscrypt-proxy is a tool for securing communications between a client
-and a DNS resolver. It provides a local service which can be used
-directly as your local resolver or as a DNS forwarder, encrypting and
-authenticating requests using the DNSCrypt protocol and passing them
-to an upstream server.
+DNSCrypt is a protocol that encrypts, authenticates and optionally
+anonymizes communications between a DNS client and a DNS resolver.
+It prevents DNS spoofing. It uses cryptographic signatures to verify
+that responses originate from the chosen DNS resolver and haven’t been
+tampered with.
-By default dnscrypt-proxy is configured to use a random DNS server;
-you will definitely want to change this.
+It is an open specification, with free and open source reference
+implementations, and it is not affiliated with any company nor
+organization.
-Note that google-go-lang is a compile-time dependency and is not
-needed during run-time.
-
-Be sure to read README.Slackware for information on configuring/running
-dnscrypt-proxy as a daemon!
+Free, DNSCrypt-enabled resolvers are available all over the world.
diff --git a/network/dnscrypt-proxy/README.Slackware b/network/dnscrypt-proxy/README.Slackware
index b5a6388c56..11336b5864 100644
--- a/network/dnscrypt-proxy/README.Slackware
+++ b/network/dnscrypt-proxy/README.Slackware
@@ -1,27 +1,34 @@
-A. Setup
+An init script and configuration file have been provided to run
+dnscrypt-proxy as a daemon. To configure dnscrypt-proxy, edit:
-An init script and configuration file have been provided to run dnscrypt-proxy
-as a daemon. To configure dnscrypt-proxy, edit
-/etc/dnscrypt-proxy/dnscrypt-proxy.toml with the desired settings. By default
-dnscrypt-proxy will use a random DNS server and will run on localhost
-(127.0.0.1), port 53.
+ /etc/dnscrypt-proxy/dnscrypt-proxy.toml
-The configuration file is setup to use a dnscrypt user by default. In order to
-use the default configuration you should create a dnscrypt user and group with
-the following commands:
+Remember to chmod +x /etc/rc.d/rc.dnscrypt-proxy before starting.
+
+By default dnscrypt-proxy will use a random DNS server, i have hardcoded
+some anonymizing relays to bounce the DNS querries around for increased
+privacy.
+Built in local caching is also enabled by default.
+The proxy will run on localhost 127.0.0.1 and ::1 port 53.
+If ipv6 is not required or available, it can be disabled in the config.
+
+The configuration file is setup to use a 'dnscrypt' user by default.
+In order to use the default configuration you should create a
+'dnscrypt' user and group with the following commands:
groupadd -g 293 dnscrypt
useradd -u 293 -g 293 -c "DNSCrypt" -d /run/dnscrypt -s /bin/false dnscrypt
-If you decide to use another user you should edit the USER setting in
-/etc/default/dnscrypt-proxy and the user_name setting in
-/etc/dnscrypt-proxy/dnscrypt-proxy.toml (there are example settings provided
-for the user 'nobody').
+If you decide to use another user you should edit the user_name setting
+in:
-In order to send all DNS requests through dnscrypt-proxy, you will need to
-update /etc/resolv.conf to point to localhost. If using dhcpcd, the easiest way
-to set dnscrypt-proxy as the primary (but not exclusive) dns resolver is to
-create file /etc/resolv.conf.head with the following line:
+ /etc/dnscrypt-proxy/dnscrypt-proxy.toml
+
+In order to send all DNS requests through dnscrypt-proxy, you will need
+to update /etc/resolv.conf to point to localhost. If using dhcpcd, the
+easiest way to set dnscrypt-proxy as the primary (but not exclusive)
+dns resolver is to create file /etc/resolv.conf.head with the following
+line:
nameserver 127.0.0.1
@@ -29,30 +36,27 @@ You may also have to add the following line to enable EDNS:
options edns0
-To start dnscrypt-proxy automatically at system start, add the following to
-/etc/rc.d/rc.local:
+It is also recommended to make the resolv.conf file immutable by
+issuing:
+
+ chattr +i /etc/resolv.conf
+
+To prevent the settings from being reset by dhcp or any other service.
+
+To start dnscrypt-proxy automatically at system start, add the following
+to:
+
+ /etc/rc.d/rc.local:
if [ -x /etc/rc.d/rc.dnscrypt-proxy ]; then
/etc/rc.d/rc.dnscrypt-proxy start
fi
-To properly stop dnscrypt-proxy on system shutdown, add the following to
-/etc/rc.d/rc.local_shutdown:
+To properly stop dnscrypt-proxy on system shutdown, add the following
+to:
+
+ /etc/rc.d/rc.local_shutdown:
if [ -x /etc/rc.d/rc.dnscrypt-proxy ]; then
/etc/rc.d/rc.dnscrypt-proxy stop
fi
-
-B. DNS Cache
-
-dnscrypt-proxy provides control over how it caches DNS queries via its
-configuration file. However, you can also run your own local caching DNS
-server. A sample configuration for dnsmasq (included with Slackware) is
-provided at /usr/doc/dnscrypt-proxy-@VERSION@/dnsmasq.conf. A sample
-configuration for bind/named that also does local DNSSEC validation (if
-supported by the upstream DNS server) is also provided at
-/usr/doc/dnscrypt-proxy-@VERSION@/named.conf. Both configurations run on port
-53, forwarding lookups to dnscrypt-proxy running on port 55. In order to use
-these configurations you will need to change the port dnscrypt-proxy runs on in
-/etc/dnscrypt-proxy/dnscrypt-proxy.toml. If you perform your own DNS caching,
-it makes sense to disable dnscrypt-proxy's caching in its configuration file.
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild b/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
index 041a3dec97..4b59f7799e 100644
--- a/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
+++ b/network/dnscrypt-proxy/dnscrypt-proxy.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for dnscrypt-proxy
-# Copyright 2019 T3slider <t3slider@gmail.com>
+# Copyright 2023 thnkman <thnkman@proton.me>
+# Based on Marco Bonetti's <sid77@slackware.it> tor script.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,20 +23,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Thanks to Larry Hajali for work on README.Slackware, the basis for the sample
-# dnsmasq configuration, and the idea for an init script. His contributions
-# significantly improved the value of this script!
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dnscrypt-proxy
-VERSION=${VERSION:-2.0.45}
+VERSION=${VERSION:-2.1.5}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-DOMAIN=github.com
-ORG=jedisct1
+DNSCRYPT_USER=${DNSCRYPT_USER:-dnscrypt}
+DNSCRYPT_UID=${DNSCRYPT_UID:-293}
+DNSCRYPT_GROUP=${DNSCRYPT_GROUP:-dnscrypt}
+DNSCRYPT_GID=${DNSCRYPT_GID:-293}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -45,9 +44,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
@@ -57,27 +53,35 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "i586" ]; then
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- LIBDIRSUFFIX=""
-fi
-
set -e
+bailout() {
+ echo -e "\nYou must have a $DNSCRYPT_USER user and $DNSCRYPT_GROUP group to run this script. "
+ echo -e "Something like this should suffice for most systems: "
+ echo -e "# groupadd -g $DNSCRYPT_GID $DNSCRYPT_GROUP "
+ echo -e "# useradd -u $DNSCRYPT_UID -g $DNSCRYPT_GID -c \"DNSCrypt-proxy\" -d /dev/null -s /bin/false $DNSCRYPT_USER \n"
+ exit 1
+}
+
+if ! grep -q "^$DNSCRYPT_USER:" /etc/passwd > /dev/null 2>&1 ; then
+ bailout
+elif ! grep -q "^$DNSCRYPT_GROUP:" /etc/group > /dev/null 2>&1 ; then
+ bailout
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-mkdir -p $PRGNAM-$VERSION/src/$DOMAIN/$ORG
-cd $PRGNAM-$VERSION/src/$DOMAIN/$ORG
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-mv $PRGNAM-$VERSION $PRGNAM
-cd $TMP/$PRGNAM-$VERSION
+if [[ $ARCH == i?86 ]]; then
+ tar xvf $CWD/$PRGNAM-linux_i386-$VERSION.tar.gz --transform="s/linux-i386/$PRGNAM-$VERSION/"
+elif [[ $ARCH == x86_64 ]]; then
+ tar xvf $CWD/$PRGNAM-linux_x86_64-$VERSION.tar.gz --transform="s/linux-x86_64/$PRGNAM-$VERSION/"
+else
+ echo "Architecture not supported"
+ exit 1
+fi
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -85,38 +89,28 @@ 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 {} \;
-export GO111MODULE=auto
-export GOPATH="$TMP/$PRGNAM-$VERSION"
-
-go install -a -x ./...
-
-cd $TMP/$PRGNAM-$VERSION/src/$DOMAIN/$ORG/$PRGNAM
-
-mkdir -p $PKG/usr/sbin
+mkdir -p $PKG/usr/bin \
+ $PKG/etc/{$PRGNAM,rc.d} \
+ $PKG/var/{log,run}/$PRGNAM
-install -m 755 "$TMP/$PRGNAM-$VERSION/bin/${PRGNAM}" $PKG/usr/sbin/${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/var/log/$PRGNAM $PKG/etc/default $PKG/etc/$PRGNAM
-chmod 0700 $PKG/var/log/$PRGNAM
-sed "s/@VERSION@/$VERSION/" $CWD/$PRGNAM.default > $PKG/etc/default/$PRGNAM.new
-install -D -m 0755 $CWD/rc.$PRGNAM $PKG/etc/rc.d/rc.$PRGNAM.new
-install -D -m 0644 $CWD/$PRGNAM.toml $PKG/etc/$PRGNAM/$PRGNAM.toml.new
+cp -a ./*.txt $PKG/etc/$PRGNAM/
+install -D -m 0755 $PRGNAM $PKG/usr/bin/$PRGNAM
+install -D -m 0644 $CWD/$PRGNAM.toml $PKG/etc/$PRGNAM/$PRGNAM.toml
+install -D -m 0644 $CWD/rc.$PRGNAM $PKG/etc/rc.d/rc.$PRGNAM
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- ChangeLog LICENSE README.md utils $PRGNAM/example-* \
+ LICENSE \
$PKG/usr/doc/$PRGNAM-$VERSION
-sed "s/@VERSION@/$VERSION/g" $CWD/README.Slackware > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
-cat $CWD/dnsmasq.conf > $PKG/usr/doc/$PRGNAM-$VERSION/dnsmasq.conf
-cat $CWD/named.conf > $PKG/usr/doc/$PRGNAM-$VERSION/named.conf
+cat $CWD/README.Slackware > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
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
+sed -i "s/DNSCRYPT_UID=.*$/DNSCRYPT_UID=$DNSCRYPT_UID/" $PKG/install/doinst.sh
+sed -i "s/DNSCRYPT_GID=.*$/DNSCRYPT_GID=$DNSCRYPT_GID/" $PKG/install/doinst.sh
+
cd $PKG
-/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.default b/network/dnscrypt-proxy/dnscrypt-proxy.default
deleted file mode 100644
index 112202cc9e..0000000000
--- a/network/dnscrypt-proxy/dnscrypt-proxy.default
+++ /dev/null
@@ -1,30 +0,0 @@
-# /etc/default/dnscrypt-proxy
-
-# This file contains additional configuration settings for dnscrypt-proxy
-# (primary configuration belongs in the dnscrypt-proxy configuration file).
-# This file supports configuring and running multiple instances (see the bottom
-# of this file for a sample secondary configuration). However, note that
-# dnscrypt-proxy now automatically provides redundancy based on a pool of
-# available servers in its own configuration file. Under normal circumstances
-# you would only ever need one active configuration in this file, but support
-# for multiple independent servers has been maintained in case you have a need
-# for segregation of upstream servers.
-
-# DNSCRYPTCONFIG should be the path to the dnscrypt-proxy configuration file
-# for the given instance.
-DNSCRYPTCONFIG[0]="/etc/dnscrypt-proxy/dnscrypt-proxy.toml"
-
-# The pid file for this instance. PIDFILE must always be specified for each
-# instance!
-PIDFILE[0]="/run/dnscrypt-proxy/dnscrypt-proxy-0.pid"
-
-# The user to run the daemon. This should be the same user specified in the
-# config.
-#USER[0]="nobody"
-USER[0]="dnscrypt"
-
-# A simple example configuration for a second instance (note that this would
-# require a new dnscrypt-proxy configuration file)
-#DNSCRYPTCONFIG[1]="/etc/dnscrypt-proxy/dnscrypt-proxy-1.toml"
-#PIDFILE[1]="/run/dnscrypt-proxy/dnscrypt-proxy-1.pid"
-#USER[1]="dnscrypt"
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.info b/network/dnscrypt-proxy/dnscrypt-proxy.info
index 1ae9154906..f4ba8b100e 100644
--- a/network/dnscrypt-proxy/dnscrypt-proxy.info
+++ b/network/dnscrypt-proxy/dnscrypt-proxy.info
@@ -1,10 +1,10 @@
PRGNAM="dnscrypt-proxy"
-VERSION="2.0.45"
-HOMEPAGE="https://github.com/jedisct1/dnscrypt-proxy"
-DOWNLOAD="https://github.com/jedisct1/dnscrypt-proxy/archive/2.0.45/dnscrypt-proxy-2.0.45.tar.gz"
-MD5SUM="200c8a9bcf38c85648c9288f31b2ea68"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="google-go-lang"
-MAINTAINER="T3slider"
-EMAIL="t3slider@gmail.com"
+VERSION="2.1.5"
+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"
+REQUIRES=""
+MAINTAINER="thnkman"
+EMAIL="thnkman@proton.me"
diff --git a/network/dnscrypt-proxy/dnscrypt-proxy.toml b/network/dnscrypt-proxy/dnscrypt-proxy.toml
index 0da38f8272..182429bd67 100644
--- a/network/dnscrypt-proxy/dnscrypt-proxy.toml
+++ b/network/dnscrypt-proxy/dnscrypt-proxy.toml
@@ -35,8 +35,11 @@
## List of local addresses and ports to listen to. Can be IPv4 and/or IPv6.
## Example with both IPv4 and IPv6:
## listen_addresses = ['127.0.0.1:53', '[::1]:53']
+##
+## To listen to all IPv4 addresses, use `listen_addresses = ['0.0.0.0:53']`
+## To listen to all IPv4+IPv6 addresses, use `listen_addresses = ['[::]:53']`
-listen_addresses = ['127.0.0.1:53']
+listen_addresses = ['127.0.0.1:53', '[::1]:53']
## Maximum number of simultaneous client connections to accept
@@ -49,35 +52,37 @@ max_clients = 250
## Note (2): this feature is not compatible with systemd socket activation.
## Note (3): when using -pidfile, the PID file directory must be writable by the new user
-# user_name = 'nobody'
user_name = 'dnscrypt'
-## Require servers (from static + remote sources) to satisfy specific properties
+## Require servers (from remote sources) to satisfy specific properties
# Use servers reachable over IPv4
ipv4_servers = true
# Use servers reachable over IPv6 -- Do not enable if you don't have IPv6 connectivity
-ipv6_servers = false
+ipv6_servers = true
# Use servers implementing the DNSCrypt protocol
dnscrypt_servers = true
# Use servers implementing the DNS-over-HTTPS protocol
-doh_servers = true
+doh_servers = false
+
+# Use servers implementing the Oblivious DoH protocol
+odoh_servers = false
## Require servers defined by remote sources to satisfy specific properties
# Server must support DNS security extensions (DNSSEC)
-require_dnssec = false
+require_dnssec = true
# Server must not log user queries (declarative)
require_nolog = true
-# Server must not enforce its own blacklist (for parental control, ads blocking...)
-require_nofilter = true
+# Server must not enforce its own blocklist (for parental control, ads blocking...)
+require_nofilter = false
# Server names to avoid even if they match all criteria
disabled_server_names = []
@@ -118,20 +123,31 @@ timeout = 5000
keepalive = 30
-## Response for blocked queries. Options are `refused`, `hinfo` (default) or
-## an IP response. To give an IP response, use the format `a:<IPv4>,aaaa:<IPv6>`.
+## Add EDNS-client-subnet information to outgoing queries
+##
+## Multiple networks can be listed; they will be randomly chosen.
+## These networks don't have to match your actual networks.
+
+# edns_client_subnet = ["0.0.0.0/0", "2001:db8::/32"]
+
+
+## Response for blocked queries. Options are `refused`, `hinfo` (default) or
+## an IP response. To give an IP response, use the format `a:<IPv4>,aaaa:<IPv6>`.
## Using the `hinfo` option means that some responses will be lies.
## Unfortunately, the `hinfo` option appears to be required for Android 8+
# blocked_query_response = 'refused'
-## Load-balancing strategy: 'p2' (default), 'ph', 'first' or 'random'
+## Load-balancing strategy: 'p2' (default), 'ph', 'p<n>', 'first' or 'random'
+## Randomly choose 1 of the fastest 2, half, n, 1 or all live servers by latency.
+## The response quality still depends on the server itself.
# lb_strategy = 'p2'
## Set to `true` to constantly try to estimate the latency of all the resolvers
## and adjust the load-balancing parameters accordingly, or to `false` to disable.
+## Default is `true` that makes 'p2' `lb_strategy` work well.
# lb_estimator = true
@@ -141,12 +157,20 @@ keepalive = 30
# log_level = 2
-## log file for the application
+## Log file for the application, as an alternative to sending logs to
+## the standard system logging service (syslog/Windows event log).
+##
+## This file is different from other log files, and will not be
+## automatically rotated by the application.
-# log_file = 'dnscrypt-proxy.log'
log_file = '/var/log/dnscrypt-proxy/dnscrypt-proxy.log'
+## When using a log file, only keep logs from the most recent launch.
+
+# log_file_latest = true
+
+
## Use the system logger (syslog on Unix, Event Log on Windows)
# use_syslog = true
@@ -161,7 +185,7 @@ cert_refresh_delay = 240
## This may improve privacy but can also have a significant impact on CPU usage
## Only enable if you don't have a lot of network load
-# dnscrypt_ephemeral_keys = false
+dnscrypt_ephemeral_keys = true
## DoH: Disable TLS session tickets - increases privacy but also latency
@@ -187,26 +211,40 @@ cert_refresh_delay = 240
# tls_cipher_suite = [52392, 49199]
-## Fallback resolvers
+## Bootstrap resolvers
+##
## These are normal, non-encrypted DNS resolvers, that will be only used
-## for one-shot queries when retrieving the initial resolvers list, and
-## only if the system DNS configuration doesn't work.
-## No user application queries will ever be leaked through these resolvers,
-## and they will not be used after IP addresses of resolvers URLs have been found.
-## They will never be used if lists have already been cached, and if stamps
-## don't include host names without IP addresses.
-## They will not be used if the configured system DNS works.
-## Resolvers supporting DNSSEC are recommended.
-##
-## People in China may need to use 114.114.114.114:53 here.
-## Other popular options include 8.8.8.8 and 1.1.1.1.
+## for one-shot queries when retrieving the initial resolvers list and if
+## the system DNS configuration doesn't work.
+##
+## No user queries will ever be leaked through these resolvers, and they will
+## not be used after IP addresses of DoH resolvers have been found (if you are
+## using DoH).
+##
+## They will never be used if lists have already been cached, and if the stamps
+## of the configured servers already include IP addresses (which is the case for
+## most of DoH servers, and for all DNSCrypt servers and relays).
+##
+## They will not be used if the configured system DNS works, or after the
+## proxy already has at least one usable secure resolver.
+##
+## Resolvers supporting DNSSEC are recommended, and, if you are using
+## DoH, bootstrap resolvers should ideally be operated by a different entity
+## than the DoH servers you will be using, especially if you have IPv6 enabled.
+##
+## People in China may want to use 114.114.114.114:53 here.
+## Other popular options include 8.8.8.8, 9.9.9.9 and 1.1.1.1.
##
## If more than one resolver is specified, they will be tried in sequence.
+##
+## TL;DR: put valid standard resolver addresses here. Your actual queries will
+## not be sent there. If you're using DNSCrypt or Anonymized DNS and your
+## lists are up to date, these resolvers will not even be used.
-fallback_resolvers = ['9.9.9.9:53', '8.8.8.8:53']
+bootstrap_resolvers = ['9.9.9.9:53', '8.8.8.8:53']
-## Always use the fallback resolver before the system DNS settings.
+## Always use the bootstrap resolver before the system DNS settings.
ignore_system_dns = true
@@ -246,7 +284,7 @@ netprobe_address = '9.9.9.9:53'
## encrypted-dns-server can be configured to use this for access control
## in the [access_control] section
-# query_meta = ["key1:value1", "key2:value2", "token:MySecretToken"]
+# query_meta = ['key1:value1', 'key2:value2', 'token:MySecretToken']
## Automatic log files rotation
@@ -268,7 +306,7 @@ log_files_max_backups = 1
## Note: if you are using dnsmasq, disable the `dnssec` option in dnsmasq if you
## configure dnscrypt-proxy to do any kind of filtering (including the filters
-## below and blacklists).
+## below and blocklists).
## You can still choose resolvers that do DNSSEC validation.
@@ -276,7 +314,7 @@ log_files_max_backups = 1
## This makes things faster when there is no IPv6 connectivity, but can
## also cause reliability issues with some stub resolvers.
-block_ipv6 = false
+block_ipv6 = true
## Immediately respond to A and AAAA queries for host names without a domain name
@@ -291,9 +329,9 @@ block_undelegated = true
## TTL for synthetic responses sent when a request has been blocked (due to
-## IPv6 or blacklists).
+## IPv6 or blocklists).
-reject_ttl = 600
+reject_ttl = 10
@@ -324,6 +362,7 @@ reject_ttl = 600
# cloak_ttl = 600
+
###########################
# DNS cache #
###########################
@@ -359,6 +398,20 @@ cache_neg_max_ttl = 600
+########################################
+# Captive portal handling #
+########################################
+
+[captive_portals]
+
+## A file that contains a set of names used by operating systems to
+## check for connectivity and captive portals, along with hard-coded
+## IP addresses to return.
+
+# map_file = 'example-captive-portals.txt'
+
+
+
##################################
# Local DoH server #
##################################
@@ -379,14 +432,14 @@ cache_neg_max_ttl = 600
## For each `listen_address` the complete URL to access the server will be:
## `https://<listen_address><path>` (ex: `https://127.0.0.1/dns-query`)
-# path = "/dns-query"
+# path = '/dns-query'
## Certificate file and key - Note that the certificate has to be trusted.
## See the documentation (wiki) for more information.
-# cert_file = "localhost.pem"
-# cert_key_file = "localhost.pem"
+# cert_file = 'localhost.pem'
+# cert_key_file = 'localhost.pem'
@@ -399,7 +452,7 @@ cache_neg_max_ttl = 600
[query_log]
## Path to the query log file (absolute, or relative to the same directory as the config file)
- ## On non-Windows systems, can be /dev/stdout to log to the standard output (also set log_files_max_size to 0)
+ ## Can be set to /dev/stdout in order to log to the standard output.
# file = 'query.log'
@@ -437,10 +490,10 @@ cache_neg_max_ttl = 600
######################################################
-# Pattern-based blocking (blacklists) #
+# Pattern-based blocking (blocklists) #
######################################################
-## Blacklists are made of one pattern per line. Example of valid patterns:
+## Blocklists are made of one pattern per line. Example of valid patterns:
##
## example.com
## =example.com
@@ -449,20 +502,20 @@ cache_neg_max_ttl = 600
## ads*.example.*
## ads*.example[0-9]*.com
##
-## Example blacklist files can be found at https://download.dnscrypt.info/blacklists/
-## A script to build blacklists from public feeds can be found in the
-## `utils/generate-domains-blacklists` directory of the dnscrypt-proxy source code.
+## Example blocklist files can be found at https://download.dnscrypt.info/blocklists/
+## A script to build blocklists from public feeds can be found in the
+## `utils/generate-domains-blocklists` directory of the dnscrypt-proxy source code.
-[blacklist]
+[blocked_names]
## Path to the file of blocking rules (absolute, or relative to the same directory as the config file)
- # blacklist_file = 'blacklist.txt'
+ # blocked_names_file = 'blocked-names.txt'
## Optional path to a file logging blocked queries
- # log_file = 'blocked.log'
+ # log_file = 'blocked-names.log'
## Optional log format: tsv or ltsv (default: tsv)
@@ -472,25 +525,25 @@ cache_neg_max_ttl = 600
###########################################################
-# Pattern-based IP blocking (IP blacklists) #
+# Pattern-based IP blocking (IP blocklists) #
###########################################################
-## IP blacklists are made of one pattern per line. Example of valid patterns:
+## IP blocklists are made of one pattern per line. Example of valid patterns:
##
## 127.*
## fe80:abcd:*
## 192.168.1.4
-[ip_blacklist]
+[blocked_ips]
## Path to the file of blocking rules (absolute, or relative to the same directory as the config file)
- # blacklist_file = 'ip-blacklist.txt'
+ # blocked_ips_file = 'blocked-ips.txt'
## Optional path to a file logging blocked queries
- # log_file = 'ip-blocked.log'
+ # log_file = 'blocked-ips.log'
## Optional log format: tsv or ltsv (default: tsv)
@@ -500,25 +553,25 @@ cache_neg_max_ttl = 600
######################################################
-# Pattern-based whitelisting (blacklists bypass) #
+# Pattern-based allow lists (blocklists bypass) #
######################################################
-## Whitelists support the same patterns as blacklists
-## If a name matches a whitelist entry, the corresponding session
+## Allowlists support the same patterns as blocklists
+## If a name matches an allowlist entry, the corresponding session
## will bypass names and IP filters.
##
## Time-based rules are also supported to make some websites only accessible at specific times of the day.
-[whitelist]
+[allowed_names]
- ## Path to the file of whitelisting rules (absolute, or relative to the same directory as the config file)
+ ## Path to the file of allow list rules (absolute, or relative to the same directory as the config file)
- # whitelist_file = 'whitelist.txt'
+ # allowed_names_file = 'allowed-names.txt'
- ## Optional path to a file logging whitelisted queries
+ ## Optional path to a file logging allowed queries
- # log_file = 'whitelisted.log'
+ # log_file = 'allowed-names.log'
## Optional log format: tsv or ltsv (default: tsv)
@@ -527,15 +580,42 @@ cache_neg_max_ttl = 600
+#########################################################
+# Pattern-based allowed IPs lists (blocklists bypass) #
+#########################################################
+
+## Allowed IP lists support the same patterns as IP blocklists
+## If an IP response matches an allow ip entry, the corresponding session
+## will bypass IP filters.
+##
+## Time-based rules are also supported to make some websites only accessible at specific times of the day.
+
+[allowed_ips]
+
+ ## Path to the file of allowed ip rules (absolute, or relative to the same directory as the config file)
+
+ # allowed_ips_file = 'allowed-ips.txt'
+
+
+ ## Optional path to a file logging allowed queries
+
+ # log_file = 'allowed-ips.log'
+
+ ## Optional log format: tsv or ltsv (default: tsv)
+
+ # log_format = 'tsv'
+
+
+
##########################################
# Time access restrictions #
##########################################
## One or more weekly schedules can be defined here.
-## Patterns in the name-based blocklist can optionally be followed with @schedule_name
+## Patterns in the name-based blocked_names file can optionally be followed with @schedule_name
## to apply the pattern 'schedule_name' only when it matches a time range of that schedule.
##
-## For example, the following rule in a blacklist file:
+## For example, the following rule in a blocklist file:
## *.youtube.* @time-to-sleep
## would block access to YouTube during the times defined by the 'time-to-sleep' schedule.
##
@@ -580,41 +660,60 @@ cache_neg_max_ttl = 600
## If the `urls` property is missing, cache files and valid signatures
## must already be present. This doesn't prevent these cache files from
## expiring after `refresh_delay` hours.
+## Cache freshness is checked every 24 hours, so values for 'refresh_delay'
+## of less than 24 hours will have no effect.
+## A maximum delay of 168 hours (1 week) is imposed to ensure cache freshness.
[sources]
## An example of a remote source from https://github.com/DNSCrypt/dnscrypt-resolvers
[sources.'public-resolvers']
- urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v2/public-resolvers.md', 'https://download.dnscrypt.info/resolvers-list/v2/public-resolvers.md']
- cache_file = 'public-resolvers.md'
- minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
- prefix = ''
+ urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/public-resolvers.md', 'https://download.dnscrypt.info/resolvers-list/v3/public-resolvers.md', 'https://ipv6.download.dnscrypt.info/resolvers-list/v3/public-resolvers.md', 'https://download.dnscrypt.net/resolvers-list/v3/public-resolvers.md']
+ cache_file = 'public-resolvers.md'
+ minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ refresh_delay = 72
+ prefix = ''
## Anonymized DNS relays
[sources.'relays']
- urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v2/relays.md', 'https://download.dnscrypt.info/resolvers-list/v2/relays.md']
- cache_file = 'relays.md'
- minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
- refresh_delay = 72
- prefix = ''
-
- ## Quad9 over DNSCrypt - https://quad9.net/
+ urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/relays.md', 'https://download.dnscrypt.info/resolvers-list/v3/relays.md', 'https://ipv6.download.dnscrypt.info/resolvers-list/v3/relays.md', 'https://download.dnscrypt.net/resolvers-list/v3/relays.md']
+ cache_file = 'relays.md'
+ minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ refresh_delay = 72
+ prefix = ''
+
+ ## ODoH (Oblivious DoH) servers and relays
+
+ # [sources.'odoh-servers']
+ # urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/odoh-servers.md', 'https://download.dnscrypt.info/resolvers-list/v3/odoh-servers.md', 'https://ipv6.download.dnscrypt.info/resolvers-list/v3/odoh-servers.md', 'https://download.dnscrypt.net/resolvers-list/v3/odoh-servers.md']
+ # cache_file = 'odoh-servers.md'
+ # minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ # refresh_delay = 24
+ # prefix = ''
+ # [sources.'odoh-relays']
+ # urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/odoh-relays.md', 'https://download.dnscrypt.info/resolvers-list/v3/odoh-relays.md', 'https://ipv6.download.dnscrypt.info/resolvers-list/v3/odoh-relays.md', 'https://download.dnscrypt.net/resolvers-list/v3/odoh-relays.md']
+ # cache_file = 'odoh-relays.md'
+ # minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ # refresh_delay = 24
+ # prefix = ''
+
+ ## Quad9
# [sources.quad9-resolvers]
- # urls = ['https://www.quad9.net/quad9-resolvers.md']
- # minisign_key = 'RWQBphd2+f6eiAqBsvDZEBXBGHQBJfeG6G+wJPPKxCZMoEQYpmoysKUN'
- # cache_file = 'quad9-resolvers.md'
- # prefix = 'quad9-'
+ # urls = ['https://www.quad9.net/quad9-resolvers.md']
+ # minisign_key = 'RWQBphd2+f6eiAqBsvDZEBXBGHQBJfeG6G+wJPPKxCZMoEQYpmoysKUN'
+ # cache_file = 'quad9-resolvers.md'
+ # prefix = 'quad9-'
## Another example source, with resolvers censoring some websites not appropriate for children
## This is a subset of the `public-resolvers` list, so enabling both is useless
# [sources.'parental-control']
- # urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v2/parental-control.md', 'https://download.dnscrypt.info/resolvers-list/v2/parental-control.md']
- # cache_file = 'parental-control.md'
- # minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ # urls = ['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/parental-control.md', 'https://download.dnscrypt.info/resolvers-list/v3/parental-control.md', 'https://ipv6.download.dnscrypt.info/resolvers-list/v3/parental-control.md', 'https://download.dnscrypt.net/resolvers-list/v3/parental-control.md']
+ # cache_file = 'parental-control.md'
+ # minisign_key = 'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
@@ -628,28 +727,32 @@ cache_neg_max_ttl = 600
# truncate reponses larger than questions as expected by the DNSCrypt protocol.
# This prevents large responses from being received over UDP and over relays.
#
-# The `dnsdist` server software drops client queries larger than 1500 bytes.
-# They are aware of it and are working on a fix.
+# Older versions of the `dnsdist` server software had a bug with queries larger
+# than 1500 bytes. This is fixed since `dnsdist` version 1.5.0, but
+# some server may still run an outdated version.
#
# The list below enables workarounds to make non-relayed usage more reliable
# until the servers are fixed.
-fragments_blocked = ['cisco', 'cisco-ipv6', 'cisco-familyshield', 'cisco-familyshield-ipv6', 'quad9-dnscrypt-ip4-filter-alt', 'quad9-dnscrypt-ip4-filter-pri', 'quad9-dnscrypt-ip4-nofilter-alt', 'quad9-dnscrypt-ip4-nofilter-pri', 'quad9-dnscrypt-ip6-filter-alt', 'quad9-dnscrypt-ip6-filter-pri', 'quad9-dnscrypt-ip6-nofilter-alt', 'quad9-dnscrypt-ip6-nofilter-pri', 'cleanbrowsing-adult', 'cleanbrowsing-family-ipv6', 'cleanbrowsing-family', 'cleanbrowsing-security']
-
+fragments_blocked = ['cisco', 'cisco-ipv6', 'cisco-familyshield', 'cisco-familyshield-ipv6', 'cleanbrowsing-adult', 'cleanbrowsing-adult-ipv6', 'cleanbrowsing-family', 'cleanbrowsing-family-ipv6', 'cleanbrowsing-security', 'cleanbrowsing-security-ipv6']
-################################
-# TLS Client Authentication #
-################################
+#################################################################
+# Certificate-based client authentication for DoH #
+#################################################################
+# Use a X509 certificate to authenticate yourself when connecting to DoH servers.
# This is only useful if you are operating your own, private DoH server(s).
-# (for DNSCrypt, see the `query_meta` feature instead)
+# 'creds' maps servers to certificates, and supports multiple entries.
+# If you are not using the standard root CA, an optional "root_ca"
+# property set to the path to a root CRT file can be added to a server entry.
-[tls_client_auth]
+[doh_client_x509_auth]
+#
# creds = [
-# { server_name='myserver', client_cert='client.crt', client_key='client.key' }
+# { server_name='*', client_cert='client.crt', client_key='client.key' }
# ]
@@ -666,11 +769,11 @@ fragments_blocked = ['cisco', 'cisco-ipv6', 'cisco-familyshield', 'cisco-familys
## used to connect to that server.
##
## A relay can be specified as a DNS Stamp (either a relay stamp, or a
-## DNSCrypt stamp), an IP:port, a hostname:port, or a server name.
+## DNSCrypt stamp) or a server name.
##
## The following example routes "example-server-1" via `anon-example-1` or `anon-example-2`,
-## and "example-server-2" via the relay whose relay DNS stamp
-## is "sdns://gRIxMzcuNzQuMjIzLjIzNDo0NDM".
+## and "example-server-2" via the relay whose relay DNS stamp is
+## "sdns://gRIxMzcuNzQuMjIzLjIzNDo0NDM".
##
## !!! THESE ARE JUST EXAMPLES !!!
##
@@ -679,21 +782,71 @@ fragments_blocked = ['cisco', 'cisco-ipv6', 'cisco-familyshield', 'cisco-familys
##
## Carefully choose relays and servers so that they are run by different entities.
##
-## "server_name" can also be set to "*" to define a default route, but this is not
-## recommended. If you do so, keep "server_names" short and distinct from relays.
+## "server_name" can also be set to "*" to define a default route, for all servers:
+## { server_name='*', via=['anon-example-1', 'anon-example-2'] }
+##
+## If a route is ["*"], the proxy automatically picks a relay on a distinct network.
+## { server_name='*', via=['*'] } is also an option, but is likely to be suboptimal.
+##
+## Manual selection is always recommended over automatic selection, so that you can
+## select (relay,server) pairs that work well and fit your own criteria (close by or
+## in different countries, operated by different entities, on distinct ISPs...)
-# routes = [
-# { server_name='example-server-1', via=['anon-example-1', 'anon-example-2'] },
-# { server_name='example-server-2', via=['sdns://gRIxMzcuNzQuMjIzLjIzNDo0NDM'] }
-# ]
+ routes = [
+ { server_name='ams-dnscrypt-nl', via=['sdns://gRE4OS4zOC4xMzEuMzg6NDM0Mw', 'sdns://gQ4zNy4xMjAuMTQyLjExNQ', 'sdns://gQ8xMjguMTI3LjEwNC4xMDg'] },
+ { server_name='ams-dnscrypt-nl-ipv6', via=['sdns://gQ4zNy4xMjAuMTQyLjExNQ', 'sdns://gRpbMmEwYzpiOWMwOmY6NDUxZDo6MV06NDM0Mw', 'sdns://gQ8xMjguMTI3LjEwNC4xMDg'] }
+ ]
+
+
+# Skip resolvers incompatible with anonymization instead of using them directly
+
+skip_incompatible = true
+
+
+# If public server certificates for a non-conformant server cannot be
+# retrieved via a relay, try getting them directly. Actual queries
+# will then always go through relays.
+
+# direct_cert_fallback = false
+
+
+
+###############################
+# DNS64 #
+###############################
+
+## DNS64 is a mechanism for synthesizing AAAA records from A records.
+## It is used with an IPv6/IPv4 translator to enable client-server
+## communication between an IPv6-only client and an IPv4-only server,
+## without requiring any changes to either the IPv6 or the IPv4 node,
+## for the class of applications that work through NATs.
+##
+## There are two options to synthesize such records:
+## Option 1: Using a set of static IPv6 prefixes;
+## Option 2: By discovering the IPv6 prefix from DNS64-enabled resolver.
+##
+## If both options are configured - only static prefixes are used.
+## (Ref. RFC6147, RFC6052, RFC7050)
+##
+## Do not enable unless you know what DNS64 is and why you need it, or else
+## you won't be able to connect to anything at all.
+[dns64]
-# skip resolvers incompatible with anonymization instead of using them directly
+## (Option 1) Static prefix(es) as Pref64::/n CIDRs.
+# prefix = ['64:ff9b::/96']
-skip_incompatible = false
+## (Option 2) DNS64-enabled resolver(s) to discover Pref64::/n CIDRs.
+## These resolvers are used to query for Well-Known IPv4-only Name (WKN) "ipv4only.arpa." to discover only.
+## Set with your ISP's resolvers in case of custom prefixes (other than Well-Known Prefix 64:ff9b::/96).
+## IMPORTANT: Default resolvers listed below support Well-Known Prefix 64:ff9b::/96 only.
+# resolver = ['[2606:4700:4700::64]:53', '[2001:4860:4860::64]:53']
+########################################
+# Static entries #
+########################################
## Optional, local, static list of additional servers
## Mostly useful for testing your own servers.
@@ -701,4 +854,4 @@ skip_incompatible = false
[static]
# [static.'myserver']
- # stamp = 'sdns:AQcAAAAAAAAAAAAQMi5kbnNjcnlwdC1jZXJ0Lg'
+ # stamp = 'sdns://AQcAAAAAAAAAAAAQMi5kbnNjcnlwdC1jZXJ0Lg'
diff --git a/network/dnscrypt-proxy/dnsmasq.conf b/network/dnscrypt-proxy/dnsmasq.conf
deleted file mode 100644
index 9700cb2df9..0000000000
--- a/network/dnscrypt-proxy/dnsmasq.conf
+++ /dev/null
@@ -1,21 +0,0 @@
-# Use dnsmasq as a caching DNS forwarder to dnscrypt-proxy. This configuration
-# assumes dnscrypt-proxy is running on port 55.
-
-# Never forward plain names (without a dot or domain part)
-domain-needed
-
-# Never forward addresses in the non-routed address spaces.
-bogus-priv
-
-# Don't use /etc/resolv.conf. Forward all queries to dnscrypt-proxy.
-no-resolv
-
-# Use the resolver on localhost port 55 (dnscrypt-proxy)
-server=127.0.0.1#55
-
-# Listen on localhost. Default port 53
-listen-address=127.0.0.1
-
-# Pass on the upstream DNSSEC flag. Only enable this if you trust the upstream
-# resolver.
-#proxy-dnssec
diff --git a/network/dnscrypt-proxy/doinst.sh b/network/dnscrypt-proxy/doinst.sh
index e264e34a56..c648875656 100644
--- a/network/dnscrypt-proxy/doinst.sh
+++ b/network/dnscrypt-proxy/doinst.sh
@@ -1,27 +1,18 @@
-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...
-}
+#!/bin/bash
-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
-}
+# dnscrypt-proxy writes files to its data directories after
+# dropping privileges. This ensures $DNSCRYPT_USER can write
+# files to these directories, without having to change default
+# root:root in slackware.
+#
+# This is a workaround, might not be a elegant solution.
-preserve_perms etc/rc.d/rc.dnscrypt-proxy.new
-config etc/default/dnscrypt-proxy.new
-config etc/dnscrypt-proxy/dnscrypt-proxy.toml.new
+PRGNAM=dnscrypt-proxy
+DNSCRYPT_UID=293
+DNSCRYPT_GID=293
+
+chown $DNSCRYPT_UID:$DNSCRYPT_GID etc/$PRGNAM/*
+
+setfacl -m u:$DNSCRYPT_UID:rwx etc/$PRGNAM
+setfacl -m u:$DNSCRYPT_UID:rwx var/run/$PRGNAM
+setfacl -m u:$DNSCRYPT_UID:rwx var/log/$PRGNAM
diff --git a/network/dnscrypt-proxy/named.conf b/network/dnscrypt-proxy/named.conf
deleted file mode 100644
index b416855f26..0000000000
--- a/network/dnscrypt-proxy/named.conf
+++ /dev/null
@@ -1,153 +0,0 @@
-options {
- directory "/var/named";
- /*
- * If there is a firewall between you and nameservers you want
- * to talk to, you might need to uncomment the query-source
- * directive below. Previous versions of BIND always asked
- * questions using port 53, but BIND 8.1 uses an unprivileged
- * port by default.
- */
- // query-source address * port 53;
- forwarders { 127.0.0.1 port 55; };
- forward only;
- dnssec-enable yes;
- dnssec-validation auto;
- dnssec-lookaside auto;
- allow-transfer { "none"; };
- allow-query { 127.0.0.1; };
- listen-on { 127.0.0.1; };
-};
-
-//
-// a caching only nameserver config
-//
-zone "." IN {
- type hint;
- file "caching-example/named.root";
-};
-
-zone "localhost" IN {
- type master;
- file "caching-example/localhost.zone";
- allow-update { none; };
-};
-
-zone "0.0.127.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-// RFC 1918. These shouldn't be necessary but empty-zones-enable isn't
-// working properly...
-zone "10.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "16.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "17.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "18.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "19.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "20.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "21.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "22.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "23.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "24.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "25.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "26.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "27.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "28.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "29.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "30.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "31.172.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-zone "168.192.in-addr.arpa" IN {
- type master;
- file "caching-example/named.local";
- allow-update { none; };
-};
-
-logging {
- category edns-disabled { null; };
-};
diff --git a/network/dnscrypt-proxy/rc.dnscrypt-proxy b/network/dnscrypt-proxy/rc.dnscrypt-proxy
index 1aa68260b9..49cd4dc984 100644
--- a/network/dnscrypt-proxy/rc.dnscrypt-proxy
+++ b/network/dnscrypt-proxy/rc.dnscrypt-proxy
@@ -1,134 +1,76 @@
-#!/bin/bash
-
-CONFIGFILE="/etc/default/dnscrypt-proxy"
-DAEMON="/usr/sbin/dnscrypt-proxy"
-
-. $CONFIGFILE
-
-start_instance() {
- if [ ! -r ${DNSCRYPTCONFIG[$1]} ]; then
- echo "No configuration for instance $1 found!"
- return
- fi
- if [ -z ${PIDFILE[$1]} ]; then
- echo "No PID configuration for instance $1 found!"
- return
- fi
- if [ -z ${USER[$1]} ]; then
- echo "No user configuration for instance $1 found!"
- return
- fi
- if [ -r ${PIDFILE[$1]} ]; then
- echo "dnscrypt-proxy (instance $1) already running!"
- return
- fi
-
- mkdir -p $(dirname ${PIDFILE[$1]})
- # The child (unprivileged) process needs write access or the PID will not
- # be written.
- chmod 0700 $(dirname ${PIDFILE[$1]})
- chown ${USER[$1]} $(dirname ${PIDFILE[$1]})
-
- # The new Go-based dnscrypt-proxy no longer has the ability to daemonize.
- # In the absence of a standard Slackware daemon tool we'll use nohup. :(
- nohup $DAEMON -config ${DNSCRYPTCONFIG[$1]} -pidfile ${PIDFILE[$1]} >> /dev/null 2>&1 &
-}
+#!/bin/sh
-stop_instance() {
- if [ ! -r ${DNSCRYPTCONFIG[$1]} ]; then
- echo "No configuration for instance $1 found!"
- return
- fi
- if [ -z ${PIDFILE[$1]} ]; then
- echo "No PID configuration for instance $1 found!"
- return
- fi
- if [ ! -r ${PIDFILE[$1]} ]; then
- echo "dnscrypt-proxy (instance $1) is not running!"
- return
- fi
- echo "Stopping dnscrypt-proxy (instance $1)..."
- kill $(cat ${PIDFILE[$1]})
-}
+# Init file for dnscrypt-proxy
-status_instance() {
- if [ ! -r ${DNSCRYPTCONFIG[$1]} ]; then
- echo "No configuration for instance $1 found!"
- return
- fi
- if [ -z ${PIDFILE[$1]} ]; then
- echo "No PID configuration for instance $1 found!"
- return
- fi
- if [ ! -r ${PIDFILE[$1]} ]; then
- echo "dnscrypt-proxy (instance $1) is not running."
- return
- fi
- PID=$(cat ${PIDFILE[$1]})
- if [ -z "$PID" ]; then
- echo "PID file is empty! dnscrypt-proxy (instance $1) does not appear to be running, but there is a stale PID file."
- elif kill -0 $PID ; then
- echo "dnscrypt-proxy (instance $1) is running."
- else
- echo "dnscrypt-proxy (instance $1) is not running, but there is a stale PID file."
- fi
-}
+CONFDIR="/etc/dnscrypt-proxy"
+LOGDIR="/var/log/dnscrypt-proxy"
+RUNDIR="/var/run/dnscrypt-proxy"
+
+OPTS="-config $CONFDIR/dnscrypt-proxy.toml -pidfile $RUNDIR/dnscrypt-proxy.pid -logfile $LOGDIR/dnscrypt-proxy.log"
+
+PID=$(cat /var/run/dnscrypt-proxy/dnscrypt-proxy.pid 2>/dev/null)
start() {
- for i in `/usr/bin/seq 0 $((${#DNSCRYPTCONFIG[@]}-1))`
- do
- start_instance $i
- done
+ echo "Starting DNSCrypt-proxy"
+ /usr/bin/dnscrypt-proxy $OPTS &
}
stop() {
- for i in `/usr/bin/seq 0 $((${#DNSCRYPTCONFIG[@]}-1))`
- do
- stop_instance $i
- done
+ echo "Stopping DNSCrypt-proxy"
+
+if [ -z $PID ]; then
+ echo "Not running"
+ exit 0
+fi
+
+if kill -15 $PID 2>/dev/null; then
+ echo "Stopped"
+ rm $RUNDIR/dnscrypt-proxy.pid 2>/dev/null
+else
+ sleep 1
+if kill -9 $PID 2>/dev/null; then
+ echo "Killed"
+ rm $RUNDIR/dnscrypt-proxy.pid 2>/dev/null
+else
+ echo "Error"
+ exit 1
+fi
+fi
+
}
status() {
- for i in `/usr/bin/seq 0 $((${#DNSCRYPTCONFIG[@]}-1))`
- do
- status_instance $i
- done
+
+if [ -z $PID ]; then
+ echo "Not running"
+ exit 0
+else
+ echo "Running"
+ exit 0
+fi
+
}
case "$1" in
- 'start')
- start
- ;;
- 'stop')
- stop
- ;;
- 'restart')
- stop
- start
- ;;
- 'status')
- status
- ;;
- *_start)
- INSTANCE=`echo $1 | /bin/cut -d '_' -f 1`
- start_instance $INSTANCE
- ;;
- *_stop)
- INSTANCE=`echo $1 | /bin/cut -d '_' -f 1`
- stop_instance $INSTANCE
- ;;
- *_restart)
- INSTANCE=`echo $1 | /bin/cut -d '_' -f 1`
- stop_instance $INSTANCE
- sleep 1
- start_instance $INSTANCE
- ;;
- *_status)
- INSTANCE=`echo $1 | /bin/cut -d '_' -f 1`
- status_instance $INSTANCE
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|status|#_start|#_stop|#_restart}"
- exit 1
- ;;
+
+start)
+ start
+ ;;
+
+stop)
+ stop
+;;
+
+restart)
+ stop
+ sleep 3
+ start
+;;
+
+status)
+ status
+;;
+
+*)
+ echo "Usage: $0 (start|stop|restart|status)"
esac
diff --git a/network/dnscrypt-proxy/slack-desc b/network/dnscrypt-proxy/slack-desc
index 46cdd370c5..092cd543f4 100644
--- a/network/dnscrypt-proxy/slack-desc
+++ b/network/dnscrypt-proxy/slack-desc
@@ -13,7 +13,7 @@ dnscrypt-proxy: your local resolver or as a DNS forwarder, encrypting and
dnscrypt-proxy: authenticating requests using the DNSCrypt protocol and passing them
dnscrypt-proxy: to an upstream DNSCrypt-enabled server.
dnscrypt-proxy:
-dnscrypt-proxy: https://github.com/jedisct1/dnscrypt-proxy
dnscrypt-proxy:
dnscrypt-proxy:
dnscrypt-proxy:
+dnscrypt-proxy: https://github.com/DNSCrypt/dnscrypt-proxy
diff --git a/network/dnsproxy-bin/README b/network/dnsproxy-bin/README
new file mode 100644
index 0000000000..c8f4a6e94a
--- /dev/null
+++ b/network/dnsproxy-bin/README
@@ -0,0 +1,21 @@
+dnsproxy is a simple DNS proxy server that supports all existing DNS
+protocols including DNS-over-TLS, DNS-over-HTTPS, DNSCrypt, and
+DNS-over-QUIC. Moreover, it can work as a DNS-over-HTTPS, DNS-over-TLS
+or DNS-over-QUIC server.
+
+This script packages the official prebuilt binary.
+
+A simple init script /etc/rc.d/rc.dnsproxy has been provided to run
+dnsproxy as a daemon.
+
+In most cases, dnsproxy should not be run as root. If there exists the
+user dnsproxy, the script /etc/rc.d/rc.dnsproxy will run dnsproxy as
+the user dnsproxy. This user can be created with:
+ groupadd -g 384 dnsproxy
+ useradd -u 384 -g 384 -s /sbin/nologin -M dnsproxy
+
+If the user dnsproxy does not exist, then the script
+/etc/rc.d/rc.dnsproxy will run dnsproxy as root.
+
+Also, the script /etc/rc.d/rc.dnsproxy assumes that the configuration
+file location is /etc/dnsproxy.yaml
diff --git a/network/dnsproxy-bin/dnsproxy-bin.SlackBuild b/network/dnsproxy-bin/dnsproxy-bin.SlackBuild
new file mode 100644
index 0000000000..754f02619a
--- /dev/null
+++ b/network/dnsproxy-bin/dnsproxy-bin.SlackBuild
@@ -0,0 +1,89 @@
+#!/bin/bash
+
+# Slackware build script for dnsproxy-bin
+
+# Copyright 2024 Alexander Verbovetsky, 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=dnsproxy-bin
+VERSION=${VERSION:-0.70.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ *) 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 "$ARCH" in
+ i?86) SUFFIX="linux-386" ;;
+ x86_64) SUFFIX="linux-amd64" ;;
+ *) SUFFIX="linux-$ARCH" ;;
+esac
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $SUFFIX
+tar xvf $CWD/${PRGNAM%-bin}-$SUFFIX-v$VERSION.tar.gz
+cd $SUFFIX
+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 $PKG/usr/sbin $PKG/etc/rc.d
+install -m 0755 -o root -g root dnsproxy $PKG/usr/sbin
+install -m 0644 -o root -g root $CWD/rc.dnsproxy \
+ $PKG/etc/rc.d/rc.dnsproxy.new
+install -m 0644 -o root -g root $CWD/config.yaml.dist \
+ $PKG/etc/dnsproxy.yaml.new
+
+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 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/dnsproxy-bin/dnsproxy-bin.info b/network/dnsproxy-bin/dnsproxy-bin.info
new file mode 100644
index 0000000000..a92b474217
--- /dev/null
+++ b/network/dnsproxy-bin/dnsproxy-bin.info
@@ -0,0 +1,14 @@
+PRGNAM="dnsproxy-bin"
+VERSION="0.70.0"
+HOMEPAGE="https://github.com/AdguardTeam/dnsproxy"
+DOWNLOAD="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.70.0/dnsproxy-linux-386-v0.70.0.tar.gz \
+ https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.70.0/config.yaml.dist"
+MD5SUM="2477cd961231ea37dacd5f66306e3a27 \
+ 5a8aaaacbc3aeb1af4aac34233f2d14b"
+DOWNLOAD_x86_64="https://github.com/AdguardTeam/dnsproxy/releases/download/v0.70.0/dnsproxy-linux-amd64-v0.70.0.tar.gz \
+ https://raw.githubusercontent.com/AdguardTeam/dnsproxy/v0.70.0/config.yaml.dist"
+MD5SUM_x86_64="3866f2ffc11a96222e6d2986ee1d743e \
+ 5a8aaaacbc3aeb1af4aac34233f2d14b"
+REQUIRES=""
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/dnsproxy-bin/doinst.sh b/network/dnsproxy-bin/doinst.sh
new file mode 100644
index 0000000000..7ddb7da4e8
--- /dev/null
+++ b/network/dnsproxy-bin/doinst.sh
@@ -0,0 +1,23 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+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.dnsproxy.new
+config etc/dnsproxy.yaml.new
diff --git a/network/dnsproxy-bin/rc.dnsproxy b/network/dnsproxy-bin/rc.dnsproxy
new file mode 100644
index 0000000000..f71496a467
--- /dev/null
+++ b/network/dnsproxy-bin/rc.dnsproxy
@@ -0,0 +1,62 @@
+#!/bin/bash
+# Start/stop/restart the dnsproxy
+
+if [[ $EUID -ne 0 ]]; then
+ echo "This script must be run as root" 1>&2
+ exit 1
+fi
+
+name="dnsproxy"
+pidfiles=/run/"$name"
+mkdir -p $pidfiles
+if /bin/id "$name" &>/dev/null; then
+ chown $name:$name $pidfiles
+ daemon="/usr/bin/daemon --name=$name --pidfiles=$pidfiles --user=$name"
+else
+ daemon="/usr/bin/daemon --name=$name --pidfiles=$pidfiles"
+fi
+
+start_dnsproxy() {
+if $daemon --running; then
+ echo "$name is already running"
+else
+ echo "Starting $name..."
+ $daemon -- /usr/sbin/dnsproxy --config-path=/etc/dnsproxy.yaml
+fi
+}
+
+stop_dnsproxy() {
+if $daemon --running; then
+ echo "Stopping $name..."
+ $daemon --stop
+else
+ echo "$name is not running"
+fi
+}
+
+restart_dnsproxy() {
+ stop_dnsproxy
+ sleep 1
+ start_dnsproxy
+}
+
+status_dnsproxy() {
+ $daemon --running --verbose
+}
+
+case "$1" in
+'start')
+ start_dnsproxy
+ ;;
+'stop')
+ stop_dnsproxy
+ ;;
+'restart')
+ restart_dnsproxy
+ ;;
+'status')
+ status_dnsproxy
+ ;;
+*)
+ echo "usage $0 start|stop|restart|status"
+esac
diff --git a/network/dnsproxy-bin/slack-desc b/network/dnsproxy-bin/slack-desc
new file mode 100644
index 0000000000..a45ac3d72a
--- /dev/null
+++ b/network/dnsproxy-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------------------------------------------------------|
+dnsproxy-bin: dnsproxy-bin (DNS proxy server)
+dnsproxy-bin:
+dnsproxy-bin: dnsproxy is a simple DNS proxy server that supports all existing DNS
+dnsproxy-bin: protocols including DNS-over-TLS, DNS-over-HTTPS, DNSCrypt, and
+dnsproxy-bin: DNS-over-QUIC. Moreover, it can work as a DNS-over-HTTPS,
+dnsproxy-bin: DNS-over-TLS or DNS-over-QUIC server.
+dnsproxy-bin:
+dnsproxy-bin: This script packages the official prebuilt binary.
+dnsproxy-bin:
+dnsproxy-bin: Homepage: https://github.com/AdguardTeam/dnsproxy
+dnsproxy-bin:
diff --git a/network/dog/README b/network/dog/README
new file mode 100644
index 0000000000..a1ba58f7d4
--- /dev/null
+++ b/network/dog/README
@@ -0,0 +1,5 @@
+dog (command-line DNS client)
+
+dog is a command-line DNS client, like 'dig'. It has colourful
+output, understands normal command-line argument syntax, supports the
+DNS-over-TLS and DNS-over-HTTPS protocols, and can emit JSON.
diff --git a/network/dog/config.toml b/network/dog/config.toml
new file mode 100644
index 0000000000..8b41196d91
--- /dev/null
+++ b/network/dog/config.toml
@@ -0,0 +1,9 @@
+[source.crates-io]
+replace-with = "vendored-sources"
+
+[source."https://github.com/llogiq/mutagen"]
+git = "https://github.com/llogiq/mutagen"
+replace-with = "vendored-sources"
+
+[source.vendored-sources]
+directory = "vendor"
diff --git a/network/dog/dog.1 b/network/dog/dog.1
new file mode 100644
index 0000000000..bf9b516b86
--- /dev/null
+++ b/network/dog/dog.1
@@ -0,0 +1,268 @@
+.\" Automatically generated by Pandoc 3.1.6
+.\"
+.\" Define V font for inline verbatim, using C font in formats
+.\" that render this, and otherwise B font.
+.ie "\f[CB]x\f[]"x" \{\
+. ftr V B
+. ftr VI BI
+. ftr VB B
+. ftr VBI BI
+.\}
+.el \{\
+. ftr V CR
+. ftr VI CI
+. ftr VB CB
+. ftr VBI CBI
+.\}
+.TH "dog" "1" "" "v0.1.0" ""
+.hy
+.SH NAME
+.PP
+dog \[em] a command-line DNS client
+.SH SYNOPSIS
+.PP
+\f[V]dog [options] [domains...]\f[R]
+.PP
+\f[B]dog\f[R] is a command-line DNS client.
+It has colourful output, supports the DNS-over-TLS and DNS-over-HTTPS
+protocols, and can emit JSON.
+.SH EXAMPLES
+.TP
+\f[V]dog example.net\f[R]
+Query the \f[V]A\f[R] record of a domain using default settings
+.TP
+\f[V]dog example.net MX\f[R]
+\&...looking up \f[V]MX\f[R] records instead
+.TP
+\f[V]dog example.net MX \[at]1.1.1.1\f[R]
+\&...using a specific nameserver instead
+.TP
+\f[V]dog example.net MX \[at]1.1.1.1 -T\f[R]
+\&...using TCP rather than UDP
+.TP
+\f[V]dog -q example.net -t MX -n 1.1.1.1 -T\f[R]
+As above, but using explicit arguments
+.SH QUERY OPTIONS
+.TP
+\f[V]-q\f[R], \f[V]--query=HOST\f[R]
+Host name or domain name to query.
+.TP
+\f[V]-t\f[R], \f[V]--type=TYPE\f[R]
+Type of the DNS record being queried (\f[V]A\f[R], \f[V]MX\f[R],
+\f[V]NS\f[R]\&...)
+.TP
+\f[V]-n\f[R], \f[V]--nameserver=ADDR\f[R]
+Address of the nameserver to send packets to.
+.TP
+\f[V]--class=CLASS\f[R]
+Network class of the DNS record being queried (\f[V]IN\f[R],
+\f[V]CH\f[R], \f[V]HS\f[R])
+.PP
+By default, dog will request A records using the system default
+resolver.
+At least one domain name must be passed \[em] dog will not automatically
+query the root nameservers.
+.PP
+Query options passed in using a command-line option, such as
+`\f[V]--query lookup.dog\f[R]' or `\f[V]--type MX\f[R]', or as plain
+arguments, such as `\f[V]lookup.dog\f[R]' or `\f[V]MX\f[R]'.
+dog will make an intelligent guess as to what plain arguments mean
+(\f[V]MX\f[R] is quite clearly a type), which makes it easier to compose
+ad-hoc queries quickly.
+If precision is desired, use the long-form options.
+.PP
+If more than one domain, type, nameserver, or class is specified, dog
+will perform one query for each combination, and display the combined
+results in a table.
+For example, passing three type arguments and two domain name arguments
+will send six requests.
+.PP
+DNS traditionally uses port 53 for both TCP and UDP.
+To use a resolver with a different port, include the port number after a
+colon (\f[V]:\f[R]) in the nameserver address.
+.SH SENDING OPTIONS
+.TP
+\f[V]--edns=SETTING\f[R]
+Whether to opt in to DNS.
+This can be `\f[V]disable\f[R]', `\f[V]hide\f[R]', or `\f[V]show\f[R]'.
+.TP
+\f[V]--txid=NUMBER\f[R]
+Set the transaction ID to a specific value.
+.TP
+\f[V]-Z=TWEAKS\f[R]
+Set uncommon protocol-level tweaks.
+.SH TRANSPORT OPTIONS
+.TP
+\f[V]-U\f[R], \f[V]--udp\f[R]
+Use the DNS protocol over UDP.
+.TP
+\f[V]-T\f[R], \f[V]--tcp\f[R]
+Use the DNS protocol over TCP.
+.TP
+\f[V]-S\f[R], \f[V]--tls\f[R]
+Use the DNS-over-TLS protocol.
+.TP
+\f[V]-H\f[R], \f[V]--https\f[R]
+Use the DNS-over-HTTPS protocol.
+.PP
+By default, dog will use the UDP protocol, automatically re-sending the
+request using TCP if the response indicates that the message is too
+large for UDP.
+Passing \f[V]--udp\f[R] will only use UDP and will fail in this case;
+passing \f[V]--tcp\f[R] will use TCP by default.
+.PP
+The DNS-over-TLS (DoT) and DNS-over-HTTPS (DoH) protocols are available
+with the \f[V]--tls\f[R] and \f[V]--https\f[R] options.
+Bear in mind that the system default resolver is unlikely to respond to
+requests using these protocols.
+.PP
+Note that if a hostname or domain name is given as a nameserver, rather
+than an IP address, the resolution of that host is performed by the
+operating system, \f[I]not\f[R] by dog.
+.PP
+Unlike the others, the HTTPS transport type requires an entire URL,
+complete with protocol, domain name, and path.
+.SH OUTPUT OPTIONS
+.TP
+\f[V]-1\f[R], \f[V]--short\f[R]
+Short mode: display nothing but the first result.
+.TP
+\f[V]-J\f[R], \f[V]--json\f[R]
+Display the output as JSON.
+.TP
+\f[V]--color\f[R], \f[V]--colour=WHEN\f[R]
+When to colourise the output.
+This can be `\f[V]always\f[R]', `\f[V]automatic\f[R]', or
+`\f[V]never\f[R]'.
+.TP
+\f[V]--seconds\f[R]
+Do not format durations as hours and minutes; instead, display them as
+seconds.
+.TP
+\f[V]--time\f[R]
+Print how long the response took to arrive.
+.SH META OPTIONS
+.TP
+\f[V]--help\f[R]
+Displays an overview of the command-line options.
+.TP
+\f[V]--version\f[R]
+Displays the version of dog being invoked.
+.SH ENVIRONMENT VARIABLES
+.PP
+dog responds to the following environment variables:
+.SS \f[V]DOG_DEBUG\f[R]
+.PP
+Set this to any non-empty value to have dog emit debugging information
+to standard error.
+For more in-depth output, set this to the exact string
+`\f[V]trace\f[R]'.
+.SH RECORD TYPES
+.PP
+dog understands and can interpret the following record types:
+.TP
+\f[V]A\f[R]
+IPv4 addresses
+.TP
+\f[V]AAAA\f[R]
+IPv6 addresses
+.TP
+\f[V]CAA\f[R]
+permitted certificate authorities
+.TP
+\f[V]CNAME\f[R]
+canonical domain aliases
+.TP
+\f[V]HINFO\f[R]
+system information and, sometimes, forbidden request explanations
+.TP
+\f[V]LOC\f[R]
+location information
+.TP
+\f[V]MX\f[R]
+e-mail server addresses
+.TP
+\f[V]NAPTR\f[R]
+DDDS rules
+.TP
+\f[V]NS\f[R]
+domain name servers
+.TP
+\f[V]OPT\f[R]
+extensions to the DNS protocol
+.TP
+\f[V]PTR\f[R]
+pointers to canonical names, usually for reverse lookups
+.TP
+\f[V]SOA\f[R]
+administrative information about zones
+.TP
+\f[V]SRV\f[R]
+IP addresses with port numbers
+.TP
+\f[V]SSHFP\f[R]
+SSH key fingerprints
+.TP
+\f[V]TLSA\f[R]
+TLS certificates, public keys, and hashes
+.TP
+\f[V]TXT\f[R]
+arbitrary textual information
+.PP
+When a response DNS packet contains a record of one of these known
+types, dog will display it in a table containing the type name and a
+human-readable summary of its contents.
+.PP
+Records with a type number that does not map to any known record type
+will still be displayed.
+As they cannot be interpreted, their contents will be displayed as a
+series of numbers instead.
+.PP
+dog also contains a list of record type names that it knows the type
+number of, but is not able to interpret, such as \f[V]IXFR\f[R] or
+\f[V]ANY\f[R] or \f[V]AFSDB\f[R].
+These are acceptable as command-line arguments, meaning you can send an
+AFSDB request with `\f[V]dog AFSDB\f[R]'.
+However, their response contents will still be displayed as numbers.
+They may be supported in future versions of dog.
+.SH PROTOCOL TWEAKS
+.PP
+The \f[V]-Z\f[R] command-line argument can be used one or more times to
+set some protocol-level options in the DNS queries that get sent.
+It accepts the following values:
+.TP
+\f[V]aa\f[R]
+Sets the \f[V]AA\f[R] (Authoritative Answers) bit in the query.
+.TP
+\f[V]ad\f[R]
+Sets the \f[V]AD\f[R] (Authentic Data) bit in the query.
+.TP
+\f[V]bufsize=NUM\f[R]
+Sets the UDP payload size field in the OPT field in the query.
+This has no effect if EDNS is diabled.
+.TP
+\f[V]cd\f[R]
+Sets the \f[V]CD\f[R] (Checking Disabled) bit in the query.
+.SH EXIT STATUSES
+.TP
+0
+If everything goes OK.
+.TP
+1
+If there was a network, I/O, or TLS error during operation.
+.TP
+2
+If there is no result from the server when running in short mode.
+This can be any received server error, not just NXDOMAIN.
+.TP
+3
+If there was a problem with the command-line arguments.
+.SH AUTHOR
+.PP
+dog is maintained by Benjamin `ogham' Sago.
+.PP
+\f[B]Website:\f[R] \f[V]https://dns.lookup.dog/\f[R]
+.PD 0
+.P
+.PD
+\f[B]Source code:\f[R] \f[V]https://github.com/ogham/dog\f[R]
diff --git a/network/dog/dog.SlackBuild b/network/dog/dog.SlackBuild
new file mode 100644
index 0000000000..2b5e586287
--- /dev/null
+++ b/network/dog/dog.SlackBuild
@@ -0,0 +1,104 @@
+#!/bin/bash
+
+# Slackware build script for dog
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Notes:
+
+# This is written in rust, which annoys me (not the language, but its
+# build system). Fortunately it works with the rust included in
+# Slackware 15.0 (no need for rustup).
+
+# I considered just doing a binary repack, but upstream doesn't
+# provide a 32-bit x86 binary...
+
+# The vendored sources were made thus:
+## tar xvf dog-0.1.0.tar.gz
+## cd dog-0.1.0
+## cargo vendor
+## cd ..
+## tar cvfJ dog-0.1.0-vendored-sources.tar.xz dog-0.1.0/vendor/
+# It's a bunch of .crate files, like 70 of them. I would not have
+# packaged this if I didn't have a place to host my own tarball
+# with all the vendor stuff (if I had to list 70 .crate files in
+# my .info file, I'd just forget about this).
+
+# The man page was generated with:
+## pandoc --standalone -t man /tmp/SBo/dog-0.1.0/man/dog.1.md > dog.1
+# (adapted from the Justfile)
+
+# Linode has some docs on using this:
+# https://www.linode.com/docs/guides/use-dog-linux-dns-client/
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=dog
+VERSION=${VERSION:-0.1.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}
+
+# It's in rust, we don't need any C flags. Also, no lib|lib64 here.
+
+set -e
+
+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-vendored-sources.tar.xz
+cd $PRGNAM-$VERSION
+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 {} +
+
+# Contents of config.toml came from 'cargo vendor' output.
+mkdir -p .cargo
+cat $CWD/config.toml > .cargo/config.toml
+
+# Setting CARGO_HOME prevents writing a 0-byte /root/.cargo/.package-cache
+CARGO_HOME=`pwd`/.cargo-home cargo build --release
+
+install -D -s -m0755 -oroot -groot target/release/dog $PKG/usr/bin/dog
+
+# Pregenerated (tiny) man page to avoid dependency on (huge) pandoc.
+mkdir -p $PKG/usr/man/man1
+gzip -9c < $CWD/dog.1 > $PKG/usr/man/man1/dog.1.gz
+
+# Completions for various shells. They all seem to work.
+PSH=$PKG/usr/share
+install -D -m0644 completions/dog.bash $PSH/bash-completion/completions/dog
+install -D -m0644 completions/dog.fish $PSH/fish/completions/dog.fish
+install -D -m0644 completions/dog.zsh $PSH/zsh/site-functions/_dog
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a README* LICENCE $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/dog/dog.info b/network/dog/dog.info
new file mode 100644
index 0000000000..97882692e3
--- /dev/null
+++ b/network/dog/dog.info
@@ -0,0 +1,12 @@
+PRGNAM="dog"
+VERSION="0.1.0"
+HOMEPAGE="https://dns.lookup.dog/"
+DOWNLOAD="https://github.com/ogham/dog/archive/v0.1.0/dog-0.1.0.tar.gz \
+ https://slackware.uk/~urchlay/src/dog-0.1.0-vendored-sources.tar.xz"
+MD5SUM="ed91c9cedc9dd9b16c179a928290ed65 \
+ 07919b78323eb5b5b22f67f11fa6b592"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/dog/slack-desc b/network/dog/slack-desc
new file mode 100644
index 0000000000..1208e3fe29
--- /dev/null
+++ b/network/dog/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------------------------------------------------------|
+dog: dog (command-line DNS client)
+dog:
+dog: dog is a command-line DNS client, like 'dig'. It has colourful
+dog: output, understands normal command-line argument syntax, supports the
+dog: DNS-over-TLS and DNS-over-HTTPS protocols, and can emit JSON.
+dog:
+dog:
+dog:
+dog:
+dog:
+dog:
diff --git a/network/dokuwiki/dokuwiki.SlackBuild b/network/dokuwiki/dokuwiki.SlackBuild
index 28ee54bfb1..3c329e643d 100644
--- a/network/dokuwiki/dokuwiki.SlackBuild
+++ b/network/dokuwiki/dokuwiki.SlackBuild
@@ -4,6 +4,7 @@
#
# Copyright 2016-2019 Giorgio Peron <giorgio.peron@gmail.com>, Belluno, Italy
# Copyright 2019-2021 Jefferson Rocha <root@slackjeff.com.br>, Curitiba, Brazil
+# Copyright 2021-2023 slackjeff <slackjeff@riseup.net>
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
@@ -25,18 +26,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dokuwiki
-VERSION=${VERSION:-20200729}
-UNPACK=${UNPACK:-stable}
-SRCVERSION=${SRCVERSION:-2020-07-29}
+VERSION=${VERSION:-20230404a}
+SRCVERSION=${SRCVERSION:-2023-04-04a}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-# 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
@@ -48,15 +45,14 @@ OUTPUT=${OUTPUT:-/tmp}
set -e
-mv ${PRGNAM}-${UNPACK}.tgz ${PRGNAM}-${SRCVERSION}.tgz
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$SRCVERSION
+rm -rf $PRGNAM-$VERSION
tar xvzf $CWD/$PRGNAM-$SRCVERSION.tgz
mkdir -p $PKG/var/www/htdocs/$PRGNAM
-mv $TMP/$PRGNAM-$SRCVERSION/* $PKG/var/www/htdocs/$PRGNAM/
+mv $TMP/${PRGNAM}-${SRCVERSION}/* $PKG/var/www/htdocs/$PRGNAM/
chown -R apache:apache $PKG/var/www/htdocs/$PRGNAM/
mkdir -p $PKG/etc/httpd/extra
@@ -79,7 +75,8 @@ EOF
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
# Move all docs
-mv $PKG/var/www/htdocs/${PRGNAM}/{COPYING,README,VERSION} $PKG/usr/doc/$PRGNAM-$VERSION/
+mv -v $PKG/var/www/htdocs/${PRGNAM}/{COPYING,README,VERSION} $PKG/usr/doc/$PRGNAM-$VERSION/
+chown -R root:root $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/dokuwiki/dokuwiki.info b/network/dokuwiki/dokuwiki.info
index ff5714ca14..b746c2f55a 100644
--- a/network/dokuwiki/dokuwiki.info
+++ b/network/dokuwiki/dokuwiki.info
@@ -1,10 +1,10 @@
PRGNAM="dokuwiki"
-VERSION="20200729"
+VERSION="20230404a"
HOMEPAGE="https://www.dokuwiki.org/dokuwiki"
-DOWNLOAD="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-stable.tgz"
-MD5SUM="8867b6a5d71ecb5203402fe5e8fa18c9"
+DOWNLOAD="https://download.dokuwiki.org/src/dokuwiki/dokuwiki-2023-04-04a.tgz"
+MD5SUM="8a68393e689bf6d1130bfe660a19fc6b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Jefferson Rocha"
-EMAIL="root@slackjeff.com.br"
+MAINTAINER="slackjeff"
+EMAIL="slackjeff@riseup.net"
diff --git a/network/dothost/README b/network/dothost/README
index 92be91a80f..ad59377441 100644
--- a/network/dothost/README
+++ b/network/dothost/README
@@ -1,3 +1,5 @@
+dothost (DNS lookup utility with Graphviz output)
+
dothost is a DNS lookup utility, which produces output in Graphviz
format. It does this, not by using Graphviz, but by using the graph-easy
Perl module also available at slackbuilds.org
diff --git a/network/dothost/dothost.SlackBuild b/network/dothost/dothost.SlackBuild
index 3c55190010..23e7c278cf 100644
--- a/network/dothost/dothost.SlackBuild
+++ b/network/dothost/dothost.SlackBuild
@@ -2,6 +2,7 @@
# Slackware build script for dothost
+# Copyright 2023 B. Watson (urchlay@slackware.uk)
# Copyright 2018-2020 Donald Cooley South Haven, Indiana USA
# All rights reserved.
#
@@ -22,25 +23,22 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230223 bkw: BUILD=2
+# - new maintainer.
+# - ARCH=noarch (no compiled code, no lib64 dir).
+# - cosmetics in slack-desc and README.
+# - simplify build.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dothost
VERSION=${VERSION:-0.2}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
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
+ARCH=noarch
-# 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
@@ -59,29 +57,19 @@ 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 {} \;
-
-# Install to /usr instead of /usr/local
-sed -i 's_/usr/local_/usr_' Makefile
-
-# Install man pages into /usr/man instead of /usr/share/man
-sed -i 's_/share/man_/man_' Makefile
-
-make
-make install DESTDIR=$PKG
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -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
+make install PREFIX=/usr mandir=/usr/man DESTDIR=$PKG
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a doc/* $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+# no need for the man page in /usr/doc
+rm -f doc/*.1
+cp -a doc/* $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/dothost/dothost.info b/network/dothost/dothost.info
index d4cfa2b9b9..37de1d7117 100644
--- a/network/dothost/dothost.info
+++ b/network/dothost/dothost.info
@@ -6,5 +6,5 @@ MD5SUM="2f95fb6cd01458b9e848b4fdbe9aba79"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="graph-easy"
-MAINTAINER="Donald Cooley"
-EMAIL="chytraeu@sdf.org"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/dothost/slack-desc b/network/dothost/slack-desc
index 69fa54c838..4bbbff2c90 100644
--- a/network/dothost/slack-desc
+++ b/network/dothost/slack-desc
@@ -12,8 +12,8 @@ dothost: dothost is a DNS lookup utility, which produces output in Graphviz
dothost: format. It does this, not by using Graphviz, but by using the
dothost: graph-easy Perl module also available at slackbuilds.org
dothost:
+dothost: https://jwilk.net/software/dothost
dothost:
dothost:
-dothost: https://jwilk.net/software/dothost
dothost:
dothost:
diff --git a/network/dropbear/dropbear.SlackBuild b/network/dropbear/dropbear.SlackBuild
index 74d13ddb68..490b671695 100644
--- a/network/dropbear/dropbear.SlackBuild
+++ b/network/dropbear/dropbear.SlackBuild
@@ -2,6 +2,7 @@
# Copyright 2007-2008, Piter Punk, São Paulo, Brazil
# Copyright 2017-2020,2022 Andrew Clemons, Wellington New Zealand
+# Copyright 2022 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dropbear
-VERSION=${VERSION:-2022.82}
+VERSION=${VERSION:-2022.83}
SRCVERSION="DROPBEAR_$VERSION"
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/dropbear/dropbear.info b/network/dropbear/dropbear.info
index c591f70728..b4635fc56b 100644
--- a/network/dropbear/dropbear.info
+++ b/network/dropbear/dropbear.info
@@ -1,8 +1,8 @@
PRGNAM="dropbear"
-VERSION="2022.82"
+VERSION="2022.83"
HOMEPAGE="https://github.com/mkj/dropbear"
-DOWNLOAD="https://github.com/mkj/dropbear/archive/DROPBEAR_2022.82/dropbear-DROPBEAR_2022.82.tar.gz"
-MD5SUM="6a0a87b7cdf15fce66da4630db179b74"
+DOWNLOAD="https://github.com/mkj/dropbear/archive/DROPBEAR_2022.83/dropbear-DROPBEAR_2022.83.tar.gz"
+MD5SUM="f166e27ec24752ffa892910fc89a51b1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/dropbox/dropbox.SlackBuild b/network/dropbox/dropbox.SlackBuild
index 7bc9403814..f84854721d 100644
--- a/network/dropbox/dropbox.SlackBuild
+++ b/network/dropbox/dropbox.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for dropbox
# Copyright 2017 cmyster amit.ugol@gmail.com
-# Copyright 2019-2022 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2019-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -31,7 +31,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=dropbox
-VERSION=${VERSION:-157.4.4801}
+VERSION=${VERSION:-196.4.6900}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -44,9 +44,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
diff --git a/network/dropbox/dropbox.info b/network/dropbox/dropbox.info
index c8815b4f1d..9df24e3a6b 100644
--- a/network/dropbox/dropbox.info
+++ b/network/dropbox/dropbox.info
@@ -1,10 +1,10 @@
PRGNAM="dropbox"
-VERSION="157.4.4801"
+VERSION="196.4.6900"
HOMEPAGE="https://www.dropbox.com"
-DOWNLOAD="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86-157.4.4801.tar.gz"
-MD5SUM="45ef5dd983ab61a8e4f97eb5e39e53ab"
-DOWNLOAD_x86_64="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-157.4.4801.tar.gz"
-MD5SUM_x86_64="f7fe576ae3ca3a52b7bc3310168dd748"
+DOWNLOAD="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86-196.4.6900.tar.gz"
+MD5SUM="691c757e0689c38df18d5d3a0e54b66c"
+DOWNLOAD_x86_64="https://clientupdates.dropboxstatic.com/dbx-releng/client/dropbox-lnx.x86_64-196.4.6900.tar.gz"
+MD5SUM_x86_64="7ceac7a9546e337c78d13106fb923880"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/dublin-traceroute/dublin-traceroute.SlackBuild b/network/dublin-traceroute/dublin-traceroute.SlackBuild
index 531bc56ac2..b204aef358 100644
--- a/network/dublin-traceroute/dublin-traceroute.SlackBuild
+++ b/network/dublin-traceroute/dublin-traceroute.SlackBuild
@@ -23,6 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# 07/Apr/2018 * First version
+# 20230530 bkw: modified by SlackBuilds.org: do not write to $CWD.
cd $(dirname $0) ; CWD=$(pwd)
@@ -40,9 +41,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,9 +75,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
mkdir -p build
cd build
@@ -91,16 +89,9 @@ cd build
-DSETCAP_EXECUTABLE=FALSE \
-DCMAKE_BUILD_TYPE=Release ..
make
- make install DESTDIR=$PKG
+ make install/strip 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
-
-if [ "${SETCAP:-yes}" = "yes" ]; then
- sed -i -e 's/^## //' $CWD/doinst.sh
-fi
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp COPYING README.md contributors.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
@@ -109,5 +100,10 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
+# 20230530 bkw: modify the installed file, not the one in $CWD
+if [ "${SETCAP:-yes}" = "yes" ]; then
+ sed -i -e 's/^## //' $PKG/install/doinst.sh
+fi
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/easyrsa/easyrsa.SlackBuild b/network/easyrsa/easyrsa.SlackBuild
index 4d228d0df3..97c6028f34 100644
--- a/network/easyrsa/easyrsa.SlackBuild
+++ b/network/easyrsa/easyrsa.SlackBuild
@@ -24,7 +24,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=easyrsa
SRCNAM=EasyRSA
-VERSION=${VERSION:-3.0.7}
+VERSION=${VERSION:-3.1.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/easyrsa/easyrsa.info b/network/easyrsa/easyrsa.info
index ca4545365a..1d45e65351 100644
--- a/network/easyrsa/easyrsa.info
+++ b/network/easyrsa/easyrsa.info
@@ -1,8 +1,8 @@
PRGNAM="easyrsa"
-VERSION="3.0.7"
+VERSION="3.1.7"
HOMEPAGE="https://github.com/OpenVPN/easy-rsa"
-DOWNLOAD="https://github.com/OpenVPN/easy-rsa/releases/download/v3.0.7/EasyRSA-3.0.7.tgz"
-MD5SUM="e9ae0a705831354193ed23b2c6da9944"
+DOWNLOAD="https://github.com/OpenVPN/easy-rsa/releases/download/v3.1.7/EasyRSA-3.1.7.tgz"
+MD5SUM="d5c434808ad8df32d992bfdd5e011379"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/eiskaltdcpp/doinst.sh b/network/eiskaltdcpp/doinst.sh
index 6b75f2eda0..0e9b18910a 100644
--- a/network/eiskaltdcpp/doinst.sh
+++ b/network/eiskaltdcpp/doinst.sh
@@ -2,7 +2,8 @@ if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database &> /dev/null
fi
-if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -f -q /usr/share/icons/hicolor &> /dev/null
+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/ejabberd-bin/README b/network/ejabberd-bin/README
new file mode 100644
index 0000000000..4783e1c3b8
--- /dev/null
+++ b/network/ejabberd-bin/README
@@ -0,0 +1,13 @@
+ejabberd is an open-source, robust, scalable and extensible realtime
+platform built using Erlang/OTP, that includes XMPP server, MQTT broker
+and SIP service.
+
+This script repackage the official deb package that provides a full
+featured ejabberd server and does not require any extra dependencies.
+It contains a stripped down version of Erlang, which does not conflict
+with the SBo erlang.
+
+A user and group "ejabberd" must exist prior to running this script.
+To create them run as root:
+ groupadd -g 370 ejabberd
+ useradd -u 370 -g 370 -s /sbin/nologin -d /var/lib/ejabberd ejabberd
diff --git a/network/ejabberd-bin/README.SBo b/network/ejabberd-bin/README.SBo
new file mode 100644
index 0000000000..747f79d7fa
--- /dev/null
+++ b/network/ejabberd-bin/README.SBo
@@ -0,0 +1,16 @@
+In order to start ejabberd at boot and stop it properly at shutdown,
+make sure rc.local and rc.local_shutdown contain the following lines:
+
+ /etc/rc.d/rc.local
+ ==================
+ # Start ejabberd
+ if [ -x /etc/rc.d/rc.ejabberd ]; then
+ /etc/rc.d/rc.ejabberd start
+ fi
+
+ /etc/rc.d/rc.local_shutdown
+ ===========================
+ # Stop ejabberd
+ if [ -x /etc/rc.d/rc.ejabberd ]; then
+ /etc/rc.d/rc.ejabberd stop
+ fi
diff --git a/network/ejabberd-bin/doinst.sh b/network/ejabberd-bin/doinst.sh
new file mode 100644
index 0000000000..016d743a77
--- /dev/null
+++ b/network/ejabberd-bin/doinst.sh
@@ -0,0 +1,25 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+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.ejabberd.new
+config etc/ejabberd/ejabberd.yml.new
+config etc/ejabberd/ejabberdctl.cfg.new
+config etc/ejabberd/inetrc.new
diff --git a/network/ejabberd-bin/ejabberd-bin.SlackBuild b/network/ejabberd-bin/ejabberd-bin.SlackBuild
new file mode 100644
index 0000000000..bc34eef76a
--- /dev/null
+++ b/network/ejabberd-bin/ejabberd-bin.SlackBuild
@@ -0,0 +1,124 @@
+#!/bin/bash
+
+# Slackware build script for ejabberd-bin
+
+# Copyright 2024, Alexander Verbovetsky, 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=ejabberd-bin
+VERSION=${VERSION:-24.02}
+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 [ "$ARCH" != "x86_64" -a "$ARCH" != "aarch64" ]; then
+ echo "Only x86_64 and aarch64 are supported."
+ exit 1
+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
+
+if ! grep ^ejabberd: /etc/group 2>&1 > /dev/null; then
+ echo " A group "ejabberd" must exist prior to running this script."
+ echo " # groupadd -g 370 ejabberd"
+ exit 1
+elif ! grep ^ejabberd: /etc/passwd 2>&1 > /dev/null; then
+ echo " A user "ejabberd" must exist prior to running this script."
+ echo " # useradd -u 370 -g 370 -s /sbin/nologin -d /var/lib/ejabberd ejabberd"
+ exit 1
+elif ! grep ^ejabberd:.*:/var/lib/ejabberd: /etc/passwd 2>&1 > /dev/null; then
+ echo " Please change the user "ejabberd" home directory to /var/lib/ejabberd."
+ echo " # usermod -d /var/lib/ejabberd ejabberd"
+ exit 1
+fi
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+ar p $CWD/${PRGNAM%-bin}_${VERSION}-*.deb data.tar.gz | tar xvz
+
+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 {} \;
+
+rm -r usr/share lib etc
+mkdir -p etc var/{lib,log}/ejabberd
+chown -R ejabberd:ejabberd var/{lib,log}/ejabberd
+chmod 700 var/{lib,log}/ejabberd
+rm -f opt/ejabberd/conf/*.pem
+mv opt/ejabberd/conf etc/ejabberd
+rmdir opt/ejabberd/{database,logs,}
+chown root:ejabberd etc/ejabberd/* opt/ejabberd-*/lib/epam-*/priv/bin/epam
+chmod 640 etc/ejabberd/*
+chmod 4750 opt/ejabberd-*/lib/epam-*/priv/bin/epam
+
+sed -i -e '/^ca_file:/,/^[^ ]/{//!d}' -e '/^certfiles:/,/^[^ ]/{//!d}' \
+ -e '/\(^ca_file:\|^certfiles:\)/d' etc/ejabberd/ejabberd.yml
+
+find -L etc/ejabberd -type f -print0 | xargs -0 -I {} mv {} {}.new
+
+sed -i -e 's|/opt/ejabberd/conf|/etc/ejabberd|' \
+ -e 's|/opt/ejabberd/logs|/var/log/ejabberd|' \
+ -e 's|/opt/ejabberd/database/\$ERLANG_NODE|/var/lib/ejabberd|' \
+ opt/ejabberd-$VERSION/bin/ejabberdctl
+
+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 etc/rc.d
+cat $CWD/rc.ejabberd > etc/rc.d/rc.ejabberd.new
+
+mkdir -p usr/share/bash-completion/completions
+cat $CWD/ejabberdctl.bc > usr/share/bash-completion/completions/ejabberdctl
+
+mkdir -p usr/man/man5
+cat $CWD/ejabberd.yml.5 | gzip -9c > usr/man/man5/ejabberd.yml.5.gz
+
+mkdir -p usr/doc/$PRGNAM-$VERSION
+cat $CWD/CHANGELOG.md > usr/doc/$PRGNAM-$VERSION/CHANGELOG.md
+cat $CWD/$PRGNAM.SlackBuild > usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p install
+cat $CWD/slack-desc > install/slack-desc
+cat $CWD/doinst.sh > install/doinst.sh
+
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/ejabberd-bin/ejabberd-bin.info b/network/ejabberd-bin/ejabberd-bin.info
new file mode 100644
index 0000000000..0c8fd4dd64
--- /dev/null
+++ b/network/ejabberd-bin/ejabberd-bin.info
@@ -0,0 +1,16 @@
+PRGNAM="ejabberd-bin"
+VERSION="24.02"
+HOMEPAGE="https://www.ejabberd.im"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/processone/ejabberd/releases/download/24.02/ejabberd_24.02-1_amd64.deb \
+ https://raw.githubusercontent.com/processone/ejabberd/24.02/tools/ejabberdctl.bc \
+ https://raw.githubusercontent.com/processone/ejabberd/24.02/man/ejabberd.yml.5 \
+ https://raw.githubusercontent.com/processone/ejabberd/24.02/CHANGELOG.md"
+MD5SUM_x86_64="4298b09b2448520321a3dae9bca9ab56 \
+ 699c3c0df85c53ebed6649a2a61131a9 \
+ 47c603b65521b0899bf41be2bfcc2c4a \
+ 183364229c2b80a66e2a9916ec58beff"
+REQUIRES=""
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/ejabberd-bin/rc.ejabberd b/network/ejabberd-bin/rc.ejabberd
new file mode 100644
index 0000000000..f08f3a56a2
--- /dev/null
+++ b/network/ejabberd-bin/rc.ejabberd
@@ -0,0 +1,45 @@
+#!/bin/bash
+# Start/stop/restart the ejabberd xmpp server
+
+bin=/usr/sbin/ejabberdctl
+
+start_ejabberd() {
+ echo "Starting ejabberd... "
+ $bin start
+ $bin started
+}
+
+stop_ejabberd() {
+ echo "Stopping ejabberd... "
+ $bin stop
+ $bin stopped
+}
+
+restart_ejabberd() {
+ stop_ejabberd
+ sleep 1
+ start_ejabberd
+}
+
+status_ejabberd() {
+ $bin status
+}
+
+reload-config_ejabberd() {
+ $bin reload_config
+}
+
+case "$1" in
+ start)
+ start_ejabberd ;;
+ stop)
+ stop_ejabberd ;;
+ restart|force-reload)
+ restart_ejabberd ;;
+ status)
+ status_ejabberd ;;
+ reload-config)
+ reload-config_ejabberd ;;
+ *)
+ echo "usage $0 start|stop|restart|force-reload|status|reload-config" ;;
+esac
diff --git a/network/livestreamer/slack-desc b/network/ejabberd-bin/slack-desc
index fd97eb3e09..7423ea65a6 100644
--- a/network/livestreamer/slack-desc
+++ b/network/ejabberd-bin/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-livestreamer: livestreamer (Stream Extrator)
-livestreamer:
-livestreamer: Livestreamer is CLI program that extracts streams from various
-livestreamer: services and pipes them into a video player of choice.
-livestreamer:
-livestreamer: Homepage: http://livestreamer.tanuki.se/
-livestreamer:
-livestreamer:
-livestreamer:
-livestreamer:
-livestreamer:
+ejabberd-bin: ejabberd-bin (xmpp server)
+ejabberd-bin:
+ejabberd-bin: ejabberd is an open-source, robust, scalable and extensible realtime
+ejabberd-bin: platform built using Erlang/OTP, that includes XMPP server, MQTT
+ejabberd-bin: broker and SIP service.
+ejabberd-bin:
+ejabberd-bin: This script repackage the official deb package.
+ejabberd-bin:
+ejabberd-bin:
+ejabberd-bin: Homepage: https://www.ejabberd.im
+ejabberd-bin:
diff --git a/network/ejabberd/README b/network/ejabberd/README
index f350ba3c09..dc46278e0a 100644
--- a/network/ejabberd/README
+++ b/network/ejabberd/README
@@ -16,7 +16,8 @@ PGSQL=yes|no (default: no), enable PostgreSQL support
SQLITE=yes|no (default: no), enable SQLite support
PAM=yes|no (default: no), enable PAM authentication
REDIS=yes|no (default: no), enable Redis support
-ELIXIR=yes|no (default: no), enable Elixir support
SIP=yes|no (default: no), enable SIP support
LUA=yes|no (default: no), enable Lua support (to import from Prosody)
TOOLS=yes|no (default: no), build development tools
+
+rebar3 is needed only at build time.
diff --git a/network/ejabberd/ejabberd.SlackBuild b/network/ejabberd/ejabberd.SlackBuild
index 1e3262a987..e0e6fd450c 100644
--- a/network/ejabberd/ejabberd.SlackBuild
+++ b/network/ejabberd/ejabberd.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for ejabberd
-# Copyright 2022, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2022-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,9 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ejabberd
-VERSION=${VERSION:-22.05_git75a771b}
-COMMIT=75a771bfec3626145d404349fdaec4f0eef83bbc
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-24.02}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -81,15 +80,16 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$COMMIT
-tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
-cd $PRGNAM-$COMMIT
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
-find -L $CWD -type f -name "*.tar.gz" ! -name "$PRGNAM-$COMMIT.tar.gz" \
- | while read f
+rm -f rebar rebar3
+
+find -L $CWD -maxdepth 1 -type f \
+ -name "*.tar.gz" ! -name "$PRGNAM-$VERSION.tar.gz" | while read f
do
- fn=$(basename $f | sed -e 's/ejabberd-po.*/ejabberd_po/' \
- | rev | cut -d- -f2 | rev)
+ fn=$(basename $f | rev | cut -d- -f2 | rev)
mkdir -p deps/$fn
tar xvf $f -C deps/$fn --strip-components=1
done
@@ -107,7 +107,6 @@ pgsql=""; [ "${PGSQL:-no}" != "no" ] && pgsql="--enable-pgsql"
sqlite=""; [ "${SQLITE:-no}" != "no" ] && sqlite="--enable-sqlite"
pam=""; [ "${PAM:-no}" != "no" ] && pam="--enable-pam"
redis=""; [ "${REDIS:-no}" != "no" ] && redis="--enable-redis"
-elixir=""; [ "${ELIXIR:-no}" != "no" ] && elixir="--enable-elixir"
sip=""; [ "${SIP:-no}" != "no" ] && sip="--enable-sip"
lua=""; [ "${LUA:-no}" != "no" ] && lua="--enable-lua"
tools=""; [ "${TOOLS:-no}" != "no" ] && tools="--enable-tools"
@@ -124,22 +123,24 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--enable-user=ejabberd \
--build=$ARCH-slackware-linux \
+ --with-rebar=rebar \
$odbc \
$mysql \
$pgsql \
$sqlite \
$pam \
$redis \
- $elixir \
$sip \
$lua \
$tools
-make
+unshare -n make
make install DESTDIR=$PKG
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+find -L $PKG/usr/lib${LIBDIRSUFFIX} -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
diff --git a/network/ejabberd/ejabberd.info b/network/ejabberd/ejabberd.info
index ede054729e..6b5c808233 100644
--- a/network/ejabberd/ejabberd.info
+++ b/network/ejabberd/ejabberd.info
@@ -1,70 +1,64 @@
PRGNAM="ejabberd"
-VERSION="22.05_git75a771b"
+VERSION="24.02"
HOMEPAGE="https://www.ejabberd.im"
-DOWNLOAD="https://github.com/processone/ejabberd/archive/75a771b/ejabberd-75a771bfec3626145d404349fdaec4f0eef83bbc.tar.gz \
+DOWNLOAD="https://github.com/processone/ejabberd/archive/24.02/ejabberd-24.02.tar.gz \
https://github.com/dvv/base64url/archive/1.0.1/base64url-1.0.1.tar.gz \
https://github.com/processone/cache_tab/archive/1.0.30/cache_tab-1.0.30.tar.gz \
https://github.com/processone/eimp/archive/1.0.22/eimp-1.0.22.tar.gz \
- https://github.com/processone/ejabberd-po/archive/9849703/ejabberd-po-9849703.tar.gz \
- https://github.com/elixir-lang/elixir/archive/v1.4.4/elixir-1.4.4.tar.gz \
- https://github.com/processone/epam/archive/1.0.12/epam-1.0.12.tar.gz \
+ https://github.com/processone/epam/archive/1.0.14/epam-1.0.14.tar.gz \
https://github.com/wooga/eredis/archive/v1.2.0/eredis-1.2.0.tar.gz \
- https://github.com/processone/esip/archive/1.0.47/esip-1.0.47.tar.gz \
+ https://github.com/processone/esip/archive/1.0.52/esip-1.0.52.tar.gz \
https://github.com/processone/ezlib/archive/1.0.12/ezlib-1.0.12.tar.gz \
- https://github.com/processone/fast_tls/archive/1.1.15/fast_tls-1.1.15.tar.gz \
- https://github.com/processone/fast_xml/archive/1.1.49/fast_xml-1.1.49.tar.gz \
- https://github.com/processone/fast_yaml/archive/1.0.33/fast_yaml-1.0.33.tar.gz \
+ https://github.com/processone/fast_tls/archive/1.1.19/fast_tls-1.1.19.tar.gz \
+ https://github.com/processone/fast_xml/archive/1.1.51/fast_xml-1.1.51.tar.gz \
+ https://github.com/processone/fast_yaml/archive/1.0.36/fast_yaml-1.0.36.tar.gz \
https://github.com/benoitc/erlang-idna/archive/6.0.0/erlang-idna-6.0.0.tar.gz \
https://github.com/davisp/jiffy/archive/1.1.1/jiffy-1.1.1.tar.gz \
- https://github.com/potatosalad/erlang-jose/archive/1.11.1/erlang-jose-1.11.1.tar.gz \
- https://github.com/rvirding/luerl/archive/1.0/luerl-1.0.tar.gz \
- https://github.com/processone/mqtree/archive/1.0.15/mqtree-1.0.15.tar.gz \
- https://github.com/processone/p1_acme/archive/1.0.19/p1_acme-1.0.19.tar.gz \
- https://github.com/processone/p1_mysql/archive/1.0.19/p1_mysql-1.0.19.tar.gz \
- https://github.com/processone/p1_oauth2/archive/0.6.11/p1_oauth2-0.6.11.tar.gz \
- https://github.com/processone/p1_pgsql/archive/1.1.18/p1_pgsql-1.1.18.tar.gz \
+ https://github.com/potatosalad/erlang-jose/archive/1.11.5/erlang-jose-1.11.5.tar.gz \
+ https://github.com/rvirding/luerl/archive/1.1.1/luerl-1.1.1.tar.gz \
+ https://github.com/processone/mqtree/archive/1.0.16/mqtree-1.0.16.tar.gz \
+ https://github.com/processone/p1_acme/archive/1.0.22/p1_acme-1.0.22.tar.gz \
+ https://github.com/processone/p1_mysql/archive/1.0.23/p1_mysql-1.0.23.tar.gz \
+ https://github.com/processone/p1_oauth2/archive/0.6.14/p1_oauth2-0.6.14.tar.gz \
+ https://github.com/processone/p1_pgsql/archive/1.1.25/p1_pgsql-1.1.25.tar.gz \
https://github.com/processone/p1_utils/archive/1.0.25/p1_utils-1.0.25.tar.gz \
https://github.com/processone/pkix/archive/1.0.9/pkix-1.0.9.tar.gz \
- https://github.com/processone/rebar_elixir_plugin/archive/0.1.0/rebar_elixir_plugin-0.1.0.tar.gz \
- https://github.com/processone/erlang-sqlite3/archive/1.1.13/erlang-sqlite3-1.1.13.tar.gz \
- https://github.com/processone/stringprep/archive/1.0.28/stringprep-1.0.28.tar.gz \
- https://github.com/processone/stun/archive/1.2.2/stun-1.2.2.tar.gz \
- https://github.com/processone/xmpp/archive/1.5.8/xmpp-1.5.8.tar.gz \
- https://github.com/processone/yconf/archive/1.0.13/yconf-1.0.13.tar.gz \
+ https://github.com/processone/erlang-sqlite3/archive/1.1.14/erlang-sqlite3-1.1.14.tar.gz \
+ https://github.com/processone/stringprep/archive/1.0.29/stringprep-1.0.29.tar.gz \
+ https://github.com/processone/stun/archive/1.2.12/stun-1.2.12.tar.gz \
+ https://github.com/processone/xmpp/archive/1.8.1/xmpp-1.8.1.tar.gz \
+ https://github.com/processone/yconf/archive/1.0.15/yconf-1.0.15.tar.gz \
https://github.com/benoitc/unicode_util_compat/archive/0.4.1/unicode_util_compat-0.4.1.tar.gz"
-MD5SUM="d07080e2dbd540a649ae555fcb97fe05 \
+MD5SUM="1b8b91a2b0af65685c185766dc8cf667 \
4d515ed34e4e8966bb7400ce51de83b2 \
b8fd0788b9108c1dcea49fb3ba86eb77 \
505deb9dfe6324a6bc8e130908df105d \
- a6c357cd991609b73132883f88fac04a \
- 55923c6db17e5e799b600ba581865e7f \
- 48028404dabbfc2ea26cedc2484386a8 \
+ 88be9e7fec2aaa5ca8230c19db661263 \
239232590c82b1b7d78247079a1f17aa \
- 838e19b90c8ba181f90da9b27f127d1a \
+ 3bda6c2e154462c640e9fa99fe704cd8 \
5fd5273a71ad80b3397212dc4a9dccd3 \
- 4f01ae8211c09e3cad6b2ec8b798aa6f \
- 605997a85ff66db85b5657e67714db3c \
- 4ef37539360cee3b88cd25d3674fdaa7 \
+ 62a46c10c57ecdc8a60783ea62edc1d0 \
+ 2a7b886287b1034f0a3d07b9f15d5d59 \
+ cbb767ad4f8678d91120a34402957661 \
1975930f1ab7d90ca14f914a8f7dacd6 \
5ab471571ac2b39c02a90350cecb04e3 \
- 169a0d3375cd58de88bf6577ef7448de \
- 05b29840a87cc8a68e1332305c68702f \
- e8a02c04daf5099df97f9ba92dea5188 \
- bd54109e32cb37cf22634aecdc732446 \
- a74b5ee76d8bdffae71a986d40763f98 \
- b6f0cdb01185ad4bcfbdd0effff0e3cf \
- f183c52c0d52f4f42cb6891ff3381189 \
+ 2576e3fa9da67054de9bf67972d64bbe \
+ e038b92f2c79bad70f5fb7c821d9f121 \
+ f0f50e4ea6bca2abd455596209930689 \
+ af192ea9a715e40db4a395341e237a0b \
+ a6fff6901ff93b9687cf481934d99775 \
+ a227318ad3f7665a45a2c284d203f259 \
+ 3f45f0e02e532308a51e1927c7c51888 \
90f134a42486419966e4d64d8bdaa105 \
db9a2e5cb2db46f0ed48b06efbcfa4c5 \
- 74cefd398679915411076df92449b47e \
- 006f99732c11fdeb92ae90058e34dbb5 \
- 69634d72941132138e5e8827fdc85038 \
- 4509516809c5ba667d839e0700f349f1 \
- 6d65de07440a8d8fa23f2f985b5c8636 \
- adc7221fdd1ebe4c01f7e7cf9a9fce05 \
+ d23c63956f6d3da25f5a75f4a70a94fd \
+ 4d5dff0200768e298b166667272f5f92 \
+ 80d445f62e246c55515fc6b77692c5a0 \
+ 2b64f5b3d22c3a493cacdba805bde06d \
+ 6f50a504c0fa81f9a5a1f63f16ff5272 \
1742d5522f1329229beb3e033a96898d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="erlang-otp"
+REQUIRES="erlang-otp rebar"
MAINTAINER="Alexander Verbovetsky"
EMAIL="alik@ejik.org"
diff --git a/network/ejabberd/rc.ejabberd b/network/ejabberd/rc.ejabberd
index 9ff1a8a331..b231820a51 100644
--- a/network/ejabberd/rc.ejabberd
+++ b/network/ejabberd/rc.ejabberd
@@ -10,13 +10,14 @@ start_ejabberd() {
}
stop_ejabberd() {
- echo "Stoppping ejabberd... "
+ echo "Stopping ejabberd... "
$bin stop
$bin stopped
}
restart_ejabberd() {
stop_ejabberd
+ sleep 1
start_ejabberd
}
@@ -24,15 +25,33 @@ status_ejabberd() {
$bin status
}
+force-stop_ejabberd() {
+ echo "Killing ejabberd... "
+ port=$(/usr/bin/epmd -names | awk -v name=ejabberd '$2==name {print $5}')
+ if [ -z "$port" ]; then
+ echo "ejabberd not found"
+ else
+ kill $(lsof -i TCP:$port -s TCP:LISTEN | tail -n +2 | awk '{print $2}')
+ fi
+}
+
+reload-config_ejabberd() {
+ $bin reload_config
+}
+
case "$1" in
-start)
- start_ejabberd ;;
-stop)
- stop_ejabberd ;;
-restart|reload)
- restart_ejabberd ;;
-status)
- status_ejabberd ;;
-*)
- echo "usage $0 start|stop|restart|status"
+ start)
+ start_ejabberd ;;
+ stop)
+ stop_ejabberd ;;
+ restart|reload)
+ restart_ejabberd ;;
+ status)
+ status_ejabberd ;;
+ force-stop)
+ force-stop_ejabberd ;;
+ reload-config)
+ reload-config_ejabberd ;;
+ *)
+ echo "usage $0 start|stop|restart|status|force-stop|reload-config" ;;
esac
diff --git a/network/element-desktop/element-desktop.SlackBuild b/network/element-desktop/element-desktop.SlackBuild
index 00c17b039c..87aa5cf624 100644
--- a/network/element-desktop/element-desktop.SlackBuild
+++ b/network/element-desktop/element-desktop.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=element-desktop
-VERSION=${VERSION:-1.11.8}
+VERSION=${VERSION:-1.11.53}
SRCVERSION=$( echo $VERSION | tr _ - )
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -53,12 +53,10 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
DEBARCH="i386"
- LIBDIRSUFFIX=""
echo "This package is currently only available for 64bit."
exit 1
elif [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
- LIBDIRSUFFIX="64"
else
echo "Package for $(uname -m) architecture is not available."
exit 1
diff --git a/network/element-desktop/element-desktop.info b/network/element-desktop/element-desktop.info
index 39ced61e34..ec43aeb9f4 100644
--- a/network/element-desktop/element-desktop.info
+++ b/network/element-desktop/element-desktop.info
@@ -1,10 +1,10 @@
PRGNAM="element-desktop"
-VERSION="1.11.8"
+VERSION="1.11.53"
HOMEPAGE="https://element.io/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://packages.element.io/debian/pool/main/e/element-desktop/element-desktop_1.11.8_amd64.deb"
-MD5SUM_x86_64="9b38f951c31c893f0661f95ee00741fb"
-REQUIRES=""
+DOWNLOAD_x86_64="https://packages-old.element.io/debian/pool/main/e/element-desktop/element-desktop_1.11.53_amd64.deb"
+MD5SUM_x86_64="63cfc2a190371c9288529197cd1afbc0"
+REQUIRES="sqlcipher"
MAINTAINER="marav"
EMAIL="marav8@free.fr"
diff --git a/network/element-desktop/slack-desc b/network/element-desktop/slack-desc
index cc7a7ab651..683fc945ad 100644
--- a/network/element-desktop/slack-desc
+++ b/network/element-desktop/slack-desc
@@ -8,12 +8,12 @@
|-----handy-ruler------------------------------------------------------|
element-desktop: element-desktop (Secure and independent communication via Matrix)
element-desktop:
-element-desktop: Element lets you choose where your messages are stored,
-element-desktop: putting you in control of your data.
-element-desktop: Secure and end-to-end en crypted
-element-desktop: Built on Matrix
+element-desktop: Element lets you choose where your messages are stored, putting
+element-desktop: you in control of your data.
+element-desktop:
+element-desktop: Secure and end-to-end encrypted. Built on Matrix
element-desktop:
-element-desktop: Homepage: https://element.io/
element-desktop:
+element-desktop: Homepage: https://element.io/
element-desktop:
element-desktop:
diff --git a/network/elinks/elinks.info b/network/elinks/elinks.info
index 9e62b47739..e543517b54 100644
--- a/network/elinks/elinks.info
+++ b/network/elinks/elinks.info
@@ -6,5 +6,5 @@ MD5SUM="660ae64c253f1e2014064dc1a3fbed80"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/emailrelay/doinst.sh b/network/emailrelay/doinst.sh
index 9dbb27e57f..ec8c4c433d 100644
--- a/network/emailrelay/doinst.sh
+++ b/network/emailrelay/doinst.sh
@@ -12,3 +12,4 @@ config() {
config etc/rc.d/rc.emailrelay.new
config etc/emailrelay.conf.new
+config etc/emailrelay.auth.new
diff --git a/network/emailrelay/emailrelay.SlackBuild b/network/emailrelay/emailrelay.SlackBuild
index 0a9a0be841..894cebe387 100644
--- a/network/emailrelay/emailrelay.SlackBuild
+++ b/network/emailrelay/emailrelay.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for emailrelay
-# Copyright 2011,2013,2016-2022 Andrew Clemons, Wellington, New Zealand
+# Copyright 2011,2013,2016-2022 Andrew Clemons, Wellington New Zealand
+# Copyright 2022-2024 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=emailrelay
-VERSION=${VERSION:-2.3}
+VERSION=${VERSION:-2.5.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -67,7 +68,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION-src.tar.gz
+tar xvf $CWD/$PRGNAM-"$VERSION"-src.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
@@ -89,7 +90,6 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-gui \
--with-openssl \
--without-mbedtls \
- --disable-install-hook \
--build=$ARCH-slackware-linux
make
@@ -102,11 +102,13 @@ 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
+rm $PKG/usr/doc/$PRGNAM-$VERSION/INSTALL
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/etc/rc.d/
mv $PKG/usr/libexec/emailrelay/init/emailrelay $PKG/etc/rc.d/rc.emailrelay.new
mv $PKG/etc/emailrelay.conf $PKG/etc/emailrelay.conf.new
+mv $PKG/etc/emailrelay.auth $PKG/etc/emailrelay.auth.new
rm -rf $PKG/usr/libexec/emailrelay/init/
rm -rf $PKG/etc/pam.d
diff --git a/network/emailrelay/emailrelay.info b/network/emailrelay/emailrelay.info
index 04e403ace0..2365dc9617 100644
--- a/network/emailrelay/emailrelay.info
+++ b/network/emailrelay/emailrelay.info
@@ -1,8 +1,8 @@
PRGNAM="emailrelay"
-VERSION="2.3"
-HOMEPAGE="http://emailrelay.sourceforge.net/"
-DOWNLOAD="https://sourceforge.net/projects/emailrelay/files/emailrelay/2.3/emailrelay-2.3-src.tar.gz"
-MD5SUM="378527d299987272b56141a921d0cb00"
+VERSION="2.5.2"
+HOMEPAGE="https://emailrelay.sourceforge.net/"
+DOWNLOAD="https://sourceforge.net/projects/emailrelay/files/emailrelay/2.5.2/emailrelay-2.5.2-src.tar.gz"
+MD5SUM="d24fdb7c334739218e9ad01d5655296a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/emailrelay/slack-desc b/network/emailrelay/slack-desc
index 79b64ebefe..076c131c58 100644
--- a/network/emailrelay/slack-desc
+++ b/network/emailrelay/slack-desc
@@ -16,4 +16,4 @@ emailrelay: through. When running as a store-and-forward MTA incoming messages
emailrelay: are stored in a local spool directory, and then forwarded to the
emailrelay: next SMTP server on request.
emailrelay:
-emailrelay: http://emailrelay.sourceforge.net/
+emailrelay: https://emailrelay.sourceforge.net/
diff --git a/network/enet/enet.SlackBuild b/network/enet/enet.SlackBuild
index c76fec22c7..c31af6a1a2 100644
--- a/network/enet/enet.SlackBuild
+++ b/network/enet/enet.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for enet
-# Copyright 2021 S. S. Bolokanar, Bulgaria <sbolokanov@abv.bg>
+# Copyright 2021 S. S. Bolokanar, Bulgaria <bolokanar@bulgars.org>
# С. С. Болоканаръ, България
# All rights reserved.
#
diff --git a/network/enet/enet.info b/network/enet/enet.info
index 1eba7183ea..2d5be7c542 100644
--- a/network/enet/enet.info
+++ b/network/enet/enet.info
@@ -7,4 +7,4 @@ DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="S. S. Bolokanar"
-EMAIL="sbolokanov@abv.bg"
+EMAIL="bolokanar@bulgars.org"
diff --git a/network/epiphany/README b/network/epiphany/README
index 4b11aae5a7..179a10f924 100644
--- a/network/epiphany/README
+++ b/network/epiphany/README
@@ -1,8 +1,5 @@
-Epiphany (Web browser from the GNOME desktop)
-Web is the web browser for the GNOME desktop and for elementary OS,
-based on the popular WebKit engine. It offers a simple, clean,
-beautiful view of the web featuring first-class GNOME and Pantheon
-desktop integration, a built-in adblocker enabled by default, and
-Intelligent Tracking Prevention. With no useless widgets or wasted
-space, Web closely follows GNOME's design philosophy. Its code name
-is Epiphany.
+Epiphany is a GNOME web browser based on the WebKit rendering engine.
+
+Epiphany's principles are simplicity, standards compliance, and
+software freedom.
+
diff --git a/network/epiphany/doinst.sh b/network/epiphany/doinst.sh
index 208ce12815..816f2a9a60 100644
--- a/network/epiphany/doinst.sh
+++ b/network/epiphany/doinst.sh
@@ -4,11 +4,6 @@ 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 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 usr/share/icons/hicolor >/dev/null 2>&1
diff --git a/network/epiphany/epiphany.SlackBuild b/network/epiphany/epiphany.SlackBuild
index 1d50f6b6e1..33597f55a6 100644
--- a/network/epiphany/epiphany.SlackBuild
+++ b/network/epiphany/epiphany.SlackBuild
@@ -21,11 +21,13 @@
# 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.
+#
+# June 7, 2023: Bumped to version 43.1, cleaned up, and taken over mtce - Bob Funk
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=epiphany
-VERSION=${VERSION:-42.4}
+VERSION=${VERSION:-43.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,15 +40,11 @@ case "$( uname -m )" in
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
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -82,12 +80,21 @@ find -L . \
mkdir build
cd build
- CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" meson .. --buildtype=release --infodir=/usr/info --libdir=/usr/lib${LIBDIRSUFFIX} --localstatedir=/var --mandir=/usr/man --prefix=/usr --sysconfdir=/etc -Dstrip=true -Dlibportal=disabled
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
"${NINJA:=ninja}"
DESTDIR=$PKG $NINJA 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
diff --git a/network/epiphany/epiphany.info b/network/epiphany/epiphany.info
index ea981582c4..7d0e28697f 100644
--- a/network/epiphany/epiphany.info
+++ b/network/epiphany/epiphany.info
@@ -1,10 +1,10 @@
PRGNAM="epiphany"
-VERSION="42.4"
+VERSION="43.1"
HOMEPAGE="https://wiki.gnome.org/Apps/Web"
-DOWNLOAD="https://download.gnome.org/sources/epiphany/42/epiphany-42.4.tar.xz"
-MD5SUM="846b96d427571edeabd6da9d5d7fa17c"
+DOWNLOAD="https://download.gnome.org/sources/epiphany/43/epiphany-43.1.tar.xz"
+MD5SUM="b372b3a60975f0284abbb48a3d5ff0e3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="webkit2gtk libdazzle libhandy appstream-glib"
-MAINTAINER="Charadon"
-EMAIL="dev@iotib.net"
+REQUIRES="webkit2gtk4.1 libdazzle libhandy appstream-glib libportal"
+MAINTAINER="Bob Funk"
+EMAIL="bobfunk11@gmail.com"
diff --git a/network/epiphany/slack-desc b/network/epiphany/slack-desc
index 283f48fc6a..bceed5689e 100644
--- a/network/epiphany/slack-desc
+++ b/network/epiphany/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-epiphany: epiphany (Web browser from the GNOME desktop)
+epiphany: epiphany (GNOME Web)
epiphany:
-epiphany: Web is the web browser for the GNOME desktop and for elementary OS,
-epiphany: based on the popular WebKit engine. It offers a simple, clean,
-epiphany: beautiful view of the web featuring first-class GNOME and Pantheon
-epiphany: desktop integration, a built-in adblocker enabled by default, and
-epiphany: Intelligent Tracking Prevention. With no useless widgets or wasted
-epiphany: space, Web closely follows GNOME's design philosophy. Its code name
-epiphany: is Epiphany.
+epiphany: Epiphany, aka GNOME Web, is the GNOME projects web browser, based on
+epiphany: the WebKit rendering engine.
epiphany:
epiphany:
+epiphany:
+epiphany:
+epiphany:
+epiphany: https://gitlab.gnome.org/GNOME/epiphany
+epiphany:
diff --git a/network/etherpoke/etherpoke.SlackBuild b/network/etherpoke/etherpoke.SlackBuild
index f60df039a9..65e459a5f4 100644
--- a/network/etherpoke/etherpoke.SlackBuild
+++ b/network/etherpoke/etherpoke.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for etherpoke
-# Copyright 2015-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=etherpoke
VERSION=${VERSION:-2.5.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,7 +70,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/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -82,13 +82,18 @@ find -L . \
mkdir -p $PKG/usr/sbin
sed -i "s#/usr/local/sbin#$PKG/usr/sbin#" src/Makefile
+sed -i '1d' README.md
+sed -i '1i Homepage: http://web.archive.org/web/20160305135410/http://codeward.org/etherpoke/' \
+ README.md
+
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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.md Changelog AUTHORS COPYING $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a README.md Changelog AUTHORS COPYING conf/$PRGNAM.conf.example \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/etherpoke/etherpoke.info b/network/etherpoke/etherpoke.info
index 02413cd6c8..2eb0ecbb2a 100644
--- a/network/etherpoke/etherpoke.info
+++ b/network/etherpoke/etherpoke.info
@@ -1,10 +1,10 @@
PRGNAM="etherpoke"
VERSION="2.5.1"
-HOMEPAGE="https://github.com/erlcash/etherpoke"
-DOWNLOAD="https://github.com/erlcash/etherpoke/archive/2.5.1.tar.gz"
+HOMEPAGE="http://web.archive.org/web/20160305135410/http://codeward.org/etherpoke/"
+DOWNLOAD="https://github.com/erlcash/etherpoke/archive/2.5.1/etherpoke-2.5.1.tar.gz"
MD5SUM="d236dc011ec265693e96d139018d8247"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libconfig"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/etherpoke/slack-desc b/network/etherpoke/slack-desc
index b38b08a389..1a1f746ae1 100644
--- a/network/etherpoke/slack-desc
+++ b/network/etherpoke/slack-desc
@@ -12,7 +12,7 @@ etherpoke: etherpoke defines two events: SESSION_BEGIN, SESSION_END to which a
etherpoke: hook (system command) can be assigned. The event hook can be any
etherpoke: program installed in the system.
etherpoke:
-etherpoke: Homepage: https://github.com/erlcash/etherpoke
+etherpoke:
etherpoke:
etherpoke:
etherpoke:
diff --git a/network/ettercap/curl-8.patch b/network/ettercap/curl-8.patch
new file mode 100644
index 0000000000..52426d3db7
--- /dev/null
+++ b/network/ettercap/curl-8.patch
@@ -0,0 +1,34 @@
+From 40534662043b7d831d1f6c70448afa9d374a9b63 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 23 Mar 2023 10:23:14 -0700
+Subject: [PATCH] sslstrip: Enhance the libcurl version check to consider
+ version 8+
+
+Lately curl has released version 8 and hence LIBCURL_VERSION_MAJOR is
+reset to 0, current check assumes major version to be 7 at max and hence
+on systems with libcurl 8+ this check breaks and build fails
+
+Fixes
+
+TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/ettercap/0.8.3.1-r0/git/plug-ins/sslstrip/sslstrip.c:57:2: error: libcurl 7.26.0 or up is needed
+ ^
+1 error generated.
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ plug-ins/sslstrip/sslstrip.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plug-ins/sslstrip/sslstrip.c b/plug-ins/sslstrip/sslstrip.c
+index 327bf58af..d9b67c8b6 100644
+--- a/plug-ins/sslstrip/sslstrip.c
++++ b/plug-ins/sslstrip/sslstrip.c
+@@ -51,7 +51,7 @@
+
+ #include <curl/curl.h>
+
+-#if (LIBCURL_VERSION_MAJOR < 7) || (LIBCURL_VERSION_MINOR < 26)
++#if (LIBCURL_VERSION_MAJOR < 7) || (LIBCURL_VERSION_MAJOR == 7 && LIBCURL_VERSION_MINOR < 26)
+ #error libcurl 7.26.0 or up is needed
+ #endif
+
diff --git a/network/ettercap/ettercap.SlackBuild b/network/ettercap/ettercap.SlackBuild
index b8b6ec2321..c2aff5dbf0 100644
--- a/network/ettercap/ettercap.SlackBuild
+++ b/network/ettercap/ettercap.SlackBuild
@@ -82,6 +82,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/curl-8.patch
+
mkdir -p build
cd build
cmake \
diff --git a/network/exim/exim.Makefile b/network/exim/exim.Makefile
index 9b9a86e325..4494a160fc 100644
--- a/network/exim/exim.Makefile
+++ b/network/exim/exim.Makefile
@@ -1,6 +1,8 @@
##################################################
# The Exim mail transport agent #
##################################################
+# Copyright (c) The Exim Maintainers 2022 - 2023
+# SPDX-License-Identifier: GPL-2.0-or-later
# This is the template for Exim's main build-time configuration file. It
# contains settings that are independent of any operating system. These are
@@ -399,7 +401,7 @@ SUPPORT_MBX=yes
# For Redis you need to have hiredis installed on your system
# (https://github.com/redis/hiredis).
# Depending on where it is installed you may have to edit the CFLAGS
-# (often += -I/usr/local/include) and LDFLAGS (-lhiredis) lines.
+# (often += -I/usr/local/include) and LOOKUP_LIBS (-lhiredis) lines.
# If your system has pkg-config then the _INCLUDE/_LIBS setting can be
# handled for you automatically by also defining the _PC variable to reference
@@ -476,11 +478,11 @@ PCRE2_CONFIG=yes
#------------------------------------------------------------------------------
-# Comment out the following line to remove DANE support
-# Note: Enabling this unconditionally overrides DISABLE_DNSSEC
-# forces you to have SUPPORT_TLS enabled (the default). For DANE under
-# GnuTLS we need an additional library. See TLS_LIBS or USE_GNUTLS_PC
-# below.
+# Comment out the following line to remove DANE support.
+# Note: DANE support requires DNSSEC support (the default) and
+# SUPPORT_TLS (the default). For DANE under GnuTLS we need an additional
+# library. See TLS_LIBS or USE_GNUTLS_PC below.
+
SUPPORT_DANE=yes
#------------------------------------------------------------------------------
@@ -582,7 +584,7 @@ DISABLE_MAL_MKS=yes
# By default, Exim has support for checking the AD bit in a DNS response, to
# determine if DNSSEC validation was successful. If your system libraries
# do not support that bit, then set DISABLE_DNSSEC to "yes"
-# Note: Enabling SUPPORT_DANE unconditionally overrides this setting.
+# Note: DNSSEC is required for DANE support.
# DISABLE_DNSSEC=yes
@@ -610,20 +612,23 @@ SUPPORT_SRS=yes
# Uncomment the following line to add support for talking to dccifd. This
# defaults the socket path to /usr/local/dcc/var/dccifd.
-# Doing so will also explicitly turn on the WITH_CONTENT_SCAN option.
+# This support also requires WITH_CONTENT_SCAN enabled.
# EXPERIMENTAL_DCC=yes
# Uncomment the following line to add DMARC checking capability, implemented
# using libopendmarc libraries. You must have SPF and DKIM support enabled also.
-# Library version libopendmarc-1.4.1-1.fc33.x86_64 (on Fedora 33) is known broken;
-# 1.3.2-3 works. I seems that the OpenDMARC project broke their API.
# SUPPORT_DMARC=yes
# CFLAGS += -I/usr/local/include
# LDFLAGS += -lopendmarc
# Uncomment the following if you need to change the default. You can
# override it at runtime (main config option dmarc_tld_file)
# DMARC_TLD_FILE=/etc/exim/opendmarc.tlds
+#
+# Library version libopendmarc-1.4.1-1.fc33.x86_64 (on Fedora 33) is known broken;
+# 1.3.2-3 works. It seems that the OpenDMARC project broke their API.
+# Use this option if you need to build with an old library (1.3.x)
+# DMARC_API=100300
# Uncomment the following line to add ARC (Authenticated Received Chain)
# support. You must have SPF and DKIM support enabled also.
@@ -643,6 +648,9 @@ SUPPORT_SRS=yes
# Uncomment the following line to add queuefile transport support
# EXPERIMENTAL_QUEUEFILE=yes
+#
+# Uncomment the following line to add XCLIENT support
+# EXPERIMENTAL_XCLIENT=yes
###############################################################################
# THESE ARE THINGS YOU MIGHT WANT TO SPECIFY #
@@ -657,6 +665,29 @@ SUPPORT_SRS=yes
#------------------------------------------------------------------------------
+# Which DBM library to use. If you do not specify a specific here, you get
+# the platform default. Uncomment the pair of lines as preferred.
+# Note: when changing an installation from one DB type to another all the
+# hints-DB files, in spool/db, should be removed.
+
+# gdbm in native mode
+# USE_GDBM = yes
+# DBMLIB = -lgdbm
+
+# gdbm in Berkeley-DB compatibility mode
+# USE_NDBM = yes
+# DBMLIB = -lgdbm -lgdbm_compat
+
+# tdb
+# USE_TDB = yes
+# DBMLIB = -ltdb
+
+# Berkeley DB
+# USE_DB = yes
+# DBMLIB = -ldb
+
+
+#------------------------------------------------------------------------------
# Although Exim is normally a setuid program, owned by root, it refuses to run
# local deliveries as root by default. There is a runtime option called
# "never_users" which lists the users that must never be used for local
diff --git a/network/exim/exim.SlackBuild b/network/exim/exim.SlackBuild
index 6a16c11957..c67e765b50 100644
--- a/network/exim/exim.SlackBuild
+++ b/network/exim/exim.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Exim
-# Copyright 2012-2022 Thomas Morper, Nürnberg, Germany
+# Copyright 2012-2024 Thomas Morper, Nürnberg, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,11 +25,14 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=exim
-VERSION=${VERSION:-4.96}
+VERSION=${VERSION:-4.97.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+# We need this when building/testing release candidates.
+SRCVERSION=${VERSION/_/-}
+
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -39,7 +42,7 @@ if [ -z "$ARCH" ]; then
fi
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE" | sed 's/-RC/_RC/'
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
@@ -74,9 +77,9 @@ fi
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$SRCVERSION
+tar xvf $CWD/$PRGNAM-$SRCVERSION.tar.xz
+cd $PRGNAM-$SRCVERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -135,8 +138,5 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
-# Adjust version info for release candidates.
-VERSION=${VERSION/-RC/_RC}
-
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/exim/exim.info b/network/exim/exim.info
index 2076e94bf5..2f1f2df270 100644
--- a/network/exim/exim.info
+++ b/network/exim/exim.info
@@ -1,10 +1,10 @@
PRGNAM="exim"
-VERSION="4.96"
+VERSION="4.97.1"
HOMEPAGE="https://www.exim.org/"
-DOWNLOAD="https://ftp.exim.org/pub/exim/exim4/exim-4.96.tar.xz"
-MD5SUM="0d10d5b10f2af77ec8c2c2fe5be6c1ad"
+DOWNLOAD="https://ftp.exim.org/pub/exim/exim4/exim-4.97.1.tar.xz"
+MD5SUM="3fd68ae37720767619dd305b047fe8f9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="%README%"
+REQUIRES="%README% perl-File-FcntlLock"
MAINTAINER="Thomas Morper"
EMAIL="thomas@beingboiled.info"
diff --git a/network/fail2ban/README.SBo b/network/fail2ban/README.SBo
index 1771505629..2cd74a4b01 100644
--- a/network/fail2ban/README.SBo
+++ b/network/fail2ban/README.SBo
@@ -27,6 +27,16 @@ Making modifications to .local files is the recommended practice as per the
software manual. Each .conf file is overridden by equivalent .local file.
Please refer Configuration section in fail2ban manual.
+NOTE: the default is /etc/ssh/sshd_config is
+
+SyslogFacility AUTH
+
+and that means that sshd logs failed logins in /var/log/messages via syslog.
+
+fail2ban instead looks for failed logins in /var/log/secure and to have sshd
+send them there via syslog the directive AUTHPRIV is needed.
+
+
Changelog:
08/03/2008
diff --git a/network/fail2ban/config/paths-slackware.conf b/network/fail2ban/config/paths-slackware.conf
index 6bfd505303..d0fb0d65cc 100644
--- a/network/fail2ban/config/paths-slackware.conf
+++ b/network/fail2ban/config/paths-slackware.conf
@@ -24,9 +24,9 @@ syslog_daemon = /var/log/messages
syslog_local0 = /var/log/messages
-apache_error_log = /var/log/httpd/*error.log
+apache_error_log = /var/log/httpd/*error_log
-apache_access_log = /var/log/httpd/*access.log
+apache_access_log = /var/log/httpd/*access_log
# Default for Slackware provided below,
# please change according to your proftpd config file.
diff --git a/network/fail2ban/doinst.sh b/network/fail2ban/doinst.sh
index ca16775b2e..1239d0323e 100644
--- a/network/fail2ban/doinst.sh
+++ b/network/fail2ban/doinst.sh
@@ -24,15 +24,4 @@ preserve_perms() {
preserve_perms etc/rc.d/rc.fail2ban.new
config etc/logrotate.d/fail2ban.new
-config etc/fail2ban/fail2ban.conf.new
-config etc/fail2ban/jail.conf.new
-config etc/fail2ban/paths-common.conf.new
-config etc/fail2ban/paths-slackware.conf.new
config etc/bash_completion.d/fail2ban.new
-
-for conf_file in etc/fail2ban/action.d/*.new; do
- config $conf_file
-done
-for conf_file in etc/fail2ban/filter.d/*.new; do
- config $conf_file
-done
diff --git a/network/fail2ban/fail2ban.SlackBuild b/network/fail2ban/fail2ban.SlackBuild
index 1ac086703e..a08000e8f7 100644
--- a/network/fail2ban/fail2ban.SlackBuild
+++ b/network/fail2ban/fail2ban.SlackBuild
@@ -3,6 +3,7 @@
# Slackware Package Build Script for fail2ban
# Git Hub: https://github.com/fail2ban/fail2ban/
+# Copyright (c) 2024, Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# Copyright (c) 2008-2018, Nishant Limbachia, Hoffman Estates, IL, USA
# <nishant _AT_ mnspace _DOT_ net>
# All rights reserved.
@@ -28,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM="fail2ban"
-VERSION=${VERSION:-0.11.2}
+VERSION=${VERSION:-1.0.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -43,9 +44,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
@@ -70,6 +68,10 @@ 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|self.install_dir|"/usr/bin"|' setup.py
+sed -i 's/^before = paths-debian.conf/before = paths-slackware.conf/' config/jail.conf
+
+./fail2ban-2to3
python setup.py install --root=$PKG
# installing man pages
@@ -78,15 +80,6 @@ install -m 0644 man/fail2ban-client.1 man/fail2ban-regex.1 \
man/fail2ban-server.1 man/fail2ban.1 man/fail2ban-testcases.1 $PKG/usr/man/man1
install -m 0644 man/jail.conf.5 $PKG/usr/man/man5
-# move config files to .new
-( cd $PKG/etc/fail2ban
- for file in $(find . -type f); do
- mv $file "$file.new"
- done
-)
-
-( cd $PKG/etc/fail2ban; patch -p0 < $CWD/patches/jail.conf.patch )
-
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
@@ -113,6 +106,9 @@ mkdir -p $PKG/var/lib/fail2ban
# remove /usr/share/doc
rm -fr $PKG/usr/share/doc
+# remove the /run directory in the package
+rm -fr $PKG/run
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CONTRIBUTING.md COPYING ChangeLog DEVELOP FILTERS MANIFEST \
README.md RELEASE THANKS TODO \
@@ -124,5 +120,15 @@ mkdir -p $PKG/install
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
+# Don't clobber existing configuration files
+for i in etc/fail2ban/{,action.d,fail2ban.d,filter.d,jail.d}; do
+ for j in $(ls -1 $PKG/$i); do
+ if [ ! -d $PKG/$i/$j ]; then
+ mv $PKG/$i/$j $PKG/$i/$j.new
+ echo "config $i/$j.new" >> $PKG/install/doinst.sh
+ fi
+ done
+done
+
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/fail2ban/fail2ban.info b/network/fail2ban/fail2ban.info
index 74bc0d4172..5afbf1a1fa 100644
--- a/network/fail2ban/fail2ban.info
+++ b/network/fail2ban/fail2ban.info
@@ -1,10 +1,10 @@
PRGNAM="fail2ban"
-VERSION="0.11.2"
+VERSION="1.0.2"
HOMEPAGE="https://github.com/fail2ban/fail2ban/"
-DOWNLOAD="https://github.com/fail2ban/fail2ban/archive/0.11.2/fail2ban-0.11.2.tar.gz"
-MD5SUM="dbeaad971a1127320b949b0f29d7b1f9"
+DOWNLOAD="https://github.com/fail2ban/fail2ban/archive/1.0.2/fail2ban-1.0.2.tar.gz"
+MD5SUM="96582af04e60bf56617da9f9cbda0aa7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Nishant Limbachia"
-EMAIL="nishant@mnspace.net"
+MAINTAINER="Matteo Bernardini"
+EMAIL="ponce@slackbuilds.org"
diff --git a/network/fail2ban/patches/jail.conf.patch b/network/fail2ban/patches/jail.conf.patch
deleted file mode 100644
index f5bd45c226..0000000000
--- a/network/fail2ban/patches/jail.conf.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- jail.conf.orig 2015-06-06 21:28:47.750986224 -0500
-+++ jail.conf.new 2015-06-06 21:29:11.158336003 -0500
-@@ -33,7 +33,7 @@
- [INCLUDES]
-
- #before = paths-distro.conf
--before = paths-debian.conf
-+before = paths-slackware.conf
-
- # The DEFAULT allows a global definition of the options. They can be overridden
- # in each jail afterwards.
diff --git a/network/fcgiwrap/fcgiwrap.info b/network/fcgiwrap/fcgiwrap.info
index 77c4681bdb..55a372a6d8 100644
--- a/network/fcgiwrap/fcgiwrap.info
+++ b/network/fcgiwrap/fcgiwrap.info
@@ -1,7 +1,7 @@
PRGNAM="fcgiwrap"
VERSION="1.1.0"
HOMEPAGE="https://github.com/gnosek/fcgiwrap"
-DOWNLOAD="https://github.com/gnosek/fcgiwrap/archive/1.1.0.tar.gz"
+DOWNLOAD="https://github.com/gnosek/fcgiwrap/archive/1.1.0/fcgiwrap-1.1.0.tar.gz"
MD5SUM="d14f56bda6758a6e02aa7b3fb125cbce"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/fdns/fdns.SlackBuild b/network/fdns/fdns.SlackBuild
index 1073d704a0..ae70518aed 100644
--- a/network/fdns/fdns.SlackBuild
+++ b/network/fdns/fdns.SlackBuild
@@ -48,7 +48,6 @@ fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
diff --git a/network/feather/README b/network/feather/README
new file mode 100644
index 0000000000..a5154540f8
--- /dev/null
+++ b/network/feather/README
@@ -0,0 +1,27 @@
+Feather is a free, open-source Monero wallet for Linux, Tails, macOS
+and Windows. It is written in C++ with the Qt framework.
+
+Copyright (c) 2020-2023, The Monero Project.
+
+Various features can be enabled/disabled by passing variables to the
+script (VAR=yes/no ./feather.SlackBuild):
+LOCALMONERO=yes|no (default: yes)
+ (disable LocalMonero feature)
+XMRIG=yes|no (default: yes)
+ (disable XMRig feature)
+DONATE_BEG=yes|no (default: yes)
+ (disable the dreaded donate requests)
+USE_DEVICE_TREZOR=yes|no (default:yes)
+ (disable Trezor hardware wallet support)
+WITH_SCANNER=yes|no (default:no)
+ (enable the webcam QR code scanner)
+
+As of version 2.5.2 of Feather, qt6 is now a mandatory dependency.
+
+tor is another optional dependency; a Tor daemon is required to
+connect to .onion nodes and the websocket server.
+
+If the XMRig feature is enabled, you can point to a system-wide binary
+for the miner executable (under the "Settings" tab in the "Miner" tab)
+by installing the xmrig package from SlackBuilds.org. Said binary will
+be located at "/usr/bin/xmrig".
diff --git a/network/feather/doinst.sh b/network/feather/doinst.sh
new file mode 100644
index 0000000000..a993650058
--- /dev/null
+++ b/network/feather/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/feather/feather.SlackBuild b/network/feather/feather.SlackBuild
new file mode 100644
index 0000000000..c0769c4b7e
--- /dev/null
+++ b/network/feather/feather.SlackBuild
@@ -0,0 +1,117 @@
+#!/bin/bash
+
+# Slackware build script for feather
+
+# Copyright Bloyburt 2023
+# 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=feather
+VERSION=${VERSION:-2.5.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 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" = "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 {} \;
+
+# Optional features can be enabled/disabled here
+[ "${LOCALMONERO:-yes}" = no ] && LOCALMONERO='-DLOCALMONERO=OFF'
+[ "${XMRIG:-yes}" = no ] && XMRIG='-DXMRIG=OFF'
+[ "${DONATE_BEG:-yes}" = no ] && DONATE_BEG='-DDONATE_BEG=OFF'
+[ "${USE_DEVICE_TREZOR:-yes}" = no ] && USE_DEVICE_TREZOR='-DUSE_DEVICE_TREZOR=OFF'
+[ "${WITH_SCANNER:-no}" = yes ] && WITH_SCANNER='-DWITH_SCANNER=ON'
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ $LOCALMONERO \
+ $XMRIG \
+ $DONATE_BEG \
+ $USE_DEVICE_TREZOR \
+ $WITH_SCANNER \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip 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 *.md LICENSE $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Copy the icon and desktop file into the package
+mkdir -p $PKG/usr/share/pixmaps/
+cp -a src/assets/images/appicons/256x256.png $PKG/usr/share/pixmaps/feather.png
+mkdir -p $PKG/usr/share/applications/
+cat src/assets/feather.desktop > $PKG/usr/share/applications/feather.desktop
+
+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/feather/feather.info b/network/feather/feather.info
new file mode 100644
index 0000000000..d78a7a434b
--- /dev/null
+++ b/network/feather/feather.info
@@ -0,0 +1,10 @@
+PRGNAM="feather"
+VERSION="2.5.2"
+HOMEPAGE="https://featherwallet.org/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://featherwallet.org/files/releases/source/feather-2.5.2.tar.gz"
+MD5SUM_x86_64="6bfcbb080db3f633312fcd629de1ab3d"
+REQUIRES="protobuf3 qt6 unbound zbar zxing-cpp"
+MAINTAINER="Bloyburt"
+EMAIL="alexpen@startmail.com"
diff --git a/network/feather/slack-desc b/network/feather/slack-desc
new file mode 100644
index 0000000000..8b0ea67966
--- /dev/null
+++ b/network/feather/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------------------------------------------------------|
+feather: feather (Monero Wallet Client)
+feather:
+feather: Feather is a free, open-source Monero wallet for Linux, Tails, macOS
+feather: and Windows. It is written in C++ with the Qt framework.
+feather:
+feather: Copyright (c) 2020-2023, The Monero Project.
+feather:
+feather: Homepage: https://featherwallet.org/
+feather:
+feather:
+feather:
diff --git a/network/felinks/felinks.info b/network/felinks/felinks.info
index 3674803e10..4f6c2a440a 100644
--- a/network/felinks/felinks.info
+++ b/network/felinks/felinks.info
@@ -6,5 +6,5 @@ MD5SUM="52028102283424664c2ac2bdd23e991f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/filezilla/filezilla.SlackBuild b/network/filezilla/filezilla.SlackBuild
index 8aacd70d71..680624a0cf 100644
--- a/network/filezilla/filezilla.SlackBuild
+++ b/network/filezilla/filezilla.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for filezilla
# Copyright 2007-2009 Grigorios Bouzakis <grbzks@xsmail.com>
-# Copyright 2010-2021 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2010-2023 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Permission to use, copy, modify, and distribute this software for any purpose
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=filezilla
-VERSION=${VERSION:-3.61.0}
+VERSION=${VERSION:-3.67.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -36,9 +36,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 +74,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/FileZilla_${VERSION}_src.tar.bz2
+tar xvf $CWD/FileZilla_${VERSION}_src.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/network/filezilla/filezilla.info b/network/filezilla/filezilla.info
index 1401df10b3..b017d6d4f1 100644
--- a/network/filezilla/filezilla.info
+++ b/network/filezilla/filezilla.info
@@ -1,10 +1,10 @@
PRGNAM="filezilla"
-VERSION="3.61.0"
+VERSION="3.67.0"
HOMEPAGE="https://filezilla-project.org/"
-DOWNLOAD="https://download.filezilla-project.org/client/FileZilla_3.61.0_src.tar.bz2"
-MD5SUM="0b005ce25f7e887a55a220387efbf305"
+DOWNLOAD="https://download.filezilla-project.org/client/FileZilla_3.67.0_src.tar.xz"
+MD5SUM="ddcf03519e2e55ada0bb77c2a6a73fba"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="wxGTK3 libfilezilla"
+REQUIRES="wxWidgets libfilezilla"
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/firewalld/firewalld.SlackBuild b/network/firewalld/firewalld.SlackBuild
index 7d5787c708..a20957043e 100644
--- a/network/firewalld/firewalld.SlackBuild
+++ b/network/firewalld/firewalld.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=firewalld
-VERSION=${VERSION:-0.9.3}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.3.3}
+BUILD=${BUILD:-2}
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
@@ -70,7 +67,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.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -86,6 +83,7 @@ patch -p1 < $CWD/init.patch
PYTHON="/usr/bin/python3" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
+./autogen.sh
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -104,6 +102,9 @@ make install DESTDIR=$PKG
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+# We don't need systemd here.
+rm -rf $PKG/usr/lib/systemd
+
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
@@ -127,7 +128,7 @@ rm -rf $PKG/etc/rc.d/init.d
cat $CWD/rc.firewalld > $PKG/etc/rc.d/rc.firewalld.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING README doc/html $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING README.md doc/html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/firewalld/firewalld.info b/network/firewalld/firewalld.info
index 9d8f3de71d..80ccb3db8d 100644
--- a/network/firewalld/firewalld.info
+++ b/network/firewalld/firewalld.info
@@ -1,10 +1,10 @@
PRGNAM="firewalld"
-VERSION="0.9.3"
+VERSION="1.3.3"
HOMEPAGE="https://github.com/firewalld/firewalld/"
-DOWNLOAD="https://github.com/firewalld/firewalld/releases/download/v0.9.3/firewalld-0.9.3.tar.gz"
-MD5SUM="2eb0577b6e96376c2a7ed4c07eb82434"
+DOWNLOAD="https://github.com/firewalld/firewalld/archive/refs/tags/v1.3.3/firewalld-1.3.3.tar.gz"
+MD5SUM="2eebac7c58bee285ff0c149bc2b18445"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python-slip decorator"
+REQUIRES="python-slip python3-decorator"
MAINTAINER="stormtracknole"
EMAIL="stormtracknole@gmail.com"
diff --git a/network/firewalld/init.patch b/network/firewalld/init.patch
index 0d03f9c45e..a775133fab 100644
--- a/network/firewalld/init.patch
+++ b/network/firewalld/init.patch
@@ -1,4 +1,3 @@
-diff -Nur firewalld-0.8.6.orig/config/firewalld.init firewalld-0.8.6/config/firewalld.init
--- firewalld-0.8.6.orig/config/firewalld.init 2020-12-15 12:57:05.000000000 -0600
+++ firewalld-0.8.6/config/firewalld.init 2021-05-02 20:44:35.229976749 -0500
@@ -29,7 +29,7 @@
@@ -10,3 +9,4 @@ diff -Nur firewalld-0.8.6.orig/config/firewalld.init firewalld-0.8.6/config/fire
lockfile=/var/lock/subsys/$prog
+
diff --git a/network/firewalld/rc.FireWallD b/network/firewalld/rc.FireWallD
deleted file mode 100644
index aa0d91b3dc..0000000000
--- a/network/firewalld/rc.FireWallD
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/sh
-# Start/stop/restart firewalld.
-
-# Start firewalld:
-firewalld_start() {
- [ -r /etc/default/firewalld ] && source /etc/default/firewalld
- echo -n "Starting FireWallD daemon: /usr/sbin/firewalld "
- /usr/sbin/firewalld $FIREWALLD_ARGS
- echo
-}
-
-# Stop firewalld:
-firewalld_stop() {
- echo -n "Stopping FireWallD daemon..."
- if [ -r /var/run/firewalld.pid ]; then
- kill -HUP $(cat /var/run/firewalld.pid)
- rm -f /var/run/firewalld.pid
- else
- killall -HUP -q firewalld
- fi
- echo
-}
-
-# Restart firewalld:
-firewalld_restart() {
- firewalld_stop
- sleep 1
- firewalld_start
-}
-
-# Check if firewalld is running
-firewalld_status() {
- if [ -e /var/run/firewalld.pid ]; then
- echo "firewalld is running as pid $(cat /var/run/firewalld.pid)."
- else
- echo "firewalld is stopped."
- exit 1
- fi
-}
-
-case "$1" in
-'start')
- firewalld_start
- ;;
-'stop')
- firewalld_stop
- ;;
-'restart')
- firewalld_restart
- ;;
-'status')
- firewalld_status
- ;;
-*)
- echo "usage $0 start|stop|restart|status"
-esac
diff --git a/network/flexget/flexget.SlackBuild b/network/flexget/flexget.SlackBuild
index ca20275306..f10b85810b 100644
--- a/network/flexget/flexget.SlackBuild
+++ b/network/flexget/flexget.SlackBuild
@@ -5,7 +5,7 @@
# Generated by Alien's SlackBuild Toolkit: http://slackware.com/~alien/AST
# Copyright 2009-2010 Eric Hameleers, Eindhoven, Netherlands
# Copyright 2014-2017 Dimitris Zlatanidis Orestiada, Greece
-# Copyright 2022 fourtysixandtwo <fourtysixandtwo@sliderr.net>
+# Copyright 2022-2024 fourtysixandtwo <fourtysixandtwo@sliderr.net>
# Written by Lionel Young <redtricycle@gmail.com>
#
# All rights reserved.
@@ -30,12 +30,13 @@
# 20220515 46and2: Updated version, removed python2, New maintainer.
# 20220908 46and2: Updated version.
# -build process changed to fix issue with versions >3.3.20.
+# 20230915 46and2: Updated version, deps, various fixes.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=flexget
SRCNAM=FlexGet
-VERSION=${VERSION:-3.3.25}
+VERSION=${VERSION:-3.9.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -48,9 +49,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
@@ -60,20 +58,6 @@ 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
@@ -85,20 +69,23 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Remove versions from requirements
sed -i "s/==.*//" requirements.txt
+# remove modules already included in python3.9 or win32
+sed -i -E -e '/^(backports-zoneinfo|pkgutil-resolve-name)/d' \
+ -e '/^(pywin32|win32-setctime)/d' requirements.txt
+
+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 -d "$PKG" dist/*.whl
-# installing tests to a subdir of your project might not conflict the toplevel, but
-# don't do it anyway...
-rm -r "$PKG"/usr/lib${LIBDIRSUFFIX}/python*/site-packages/${SRCNAM,,}/tests/
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSE README.rst PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/flexget/flexget.info b/network/flexget/flexget.info
index 2258b088fa..3aeb1d5c53 100644
--- a/network/flexget/flexget.info
+++ b/network/flexget/flexget.info
@@ -1,10 +1,10 @@
PRGNAM="flexget"
-VERSION="3.3.25"
+VERSION="3.9.19"
HOMEPAGE="https://flexget.com/"
-DOWNLOAD="https://files.pythonhosted.org/packages/source/f/flexget/FlexGet-3.3.25.tar.gz"
-MD5SUM="f4f9a2adf753100c41a80420c43efe47"
+DOWNLOAD="https://files.pythonhosted.org/packages/source/f/flexget/FlexGet-3.9.19.tar.gz"
+MD5SUM="148a5eb3cb226fec011f568a42a5f573"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="feedparser SQLAlchemy BeautifulSoup4 html5lib python3-PyRSS2Gen python3-pynzb python3-rpyc python3-guessit python3-APScheduler python3-CherryPy python3-Flask-RESTful python3-Flask-RESTX python3-Flask-Compress python3-Flask-Login python3-Flask-Cors python3-zxcvbn-python python3-rich pytz-deprecation-shim python3-loguru tzdata psutil colorama"
+REQUIRES="feedparser SQLAlchemy BeautifulSoup4 html5lib python3-PyRSS2Gen python3-pynzb python3-rpyc python3-guessit python3-APScheduler python3-CherryPy python3-Flask-RESTful python3-Flask-RESTX python3-Flask-Compress python3-Flask-Login python3-Flask-Cors python3-zxcvbn python3-rich pytz-deprecation-shim python3-loguru tzdata python3-psutil colorama CommonMark python3-brotlicffi"
MAINTAINER="fourtysixandtwo"
EMAIL="fourtysixandtwo@sliderr.net"
diff --git a/network/floorp-bin/README b/network/floorp-bin/README
new file mode 100644
index 0000000000..0a950e6c36
--- /dev/null
+++ b/network/floorp-bin/README
@@ -0,0 +1,8 @@
+Floorp is a fork of Firefox from Japan with a highly customizable UI and
+better privacy and security defaults.
+
+This is repackaged for Slackware from the official GitHub repository.
+It installs to /usr/lib64 by default (like Firefox) but you can
+install it anywhere you want with the INSTALLDIR variable.
+
+Example: INSTALLDIR="/opt" ./floorp-bin.SlackBuild
diff --git a/network/floorp-bin/doinst.sh b/network/floorp-bin/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/floorp-bin/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/floorp-bin/floorp-bin.SlackBuild b/network/floorp-bin/floorp-bin.SlackBuild
new file mode 100644
index 0000000000..0c0313f8f3
--- /dev/null
+++ b/network/floorp-bin/floorp-bin.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for floorp-bin
+
+# Copyright 2024 Hunter Ellett <hunter2k1@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=floorp-bin
+VERSION=${VERSION:-11.11.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+INSTALLDIR=${INSTALLDIR:-/usr/lib64}
+
+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}
+
+ARCH="${ARCH:-$(uname -m)}"
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH is not supported for $PRGNAM-$VERSION."
+ exit 1;
+fi
+
+if [ -n "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+rm -rf floorp-$VERSION-linux-x86_64
+tar xvf $CWD/floorp-$VERSION.linux-x86_64.tar.?z*
+cd floorp
+
+mkdir -p $PKG/$INSTALLDIR/floorp
+mkdir -p $PKG/usr/share/{applications,pixmaps}
+mkdir -p $PKG/usr/bin
+mkdir -p $PKG/$INSTALLDIR/floorp/distribution
+cp $CWD/floorp.desktop $PKG/usr/share/applications
+mv * $PKG/$INSTALLDIR/floorp
+cp $PKG/$INSTALLDIR/floorp/browser/chrome/icons/default/default128.png $PKG/usr/share/pixmaps/floorp.png
+chmod +x $PKG/$INSTALLDIR/floorp/floorp
+
+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
+
+# Launch Floorp from the terminal
+install -Dm755 /dev/stdin $PKG/usr/bin/floorp << EOF
+#!/bin/sh
+#
+# Shell script to start the Floorp browser.
+#
+
+# Start Floorp:
+exec $INSTALLDIR/floorp/floorp "\$@"
+EOF
+
+# Disable auto updating
+install -Dvm644 /dev/stdin $PKG/$INSTALLDIR/floorp/distribution/policies.json << EOF
+{
+ "policies": {
+ "DisableAppUpdate": true
+ }
+}
+EOF
+
+# Make package
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/floorp-bin/floorp-bin.info b/network/floorp-bin/floorp-bin.info
new file mode 100644
index 0000000000..d428c39fca
--- /dev/null
+++ b/network/floorp-bin/floorp-bin.info
@@ -0,0 +1,10 @@
+PRGNAM="floorp-bin"
+VERSION="11.11.1"
+HOMEPAGE="https://floorp.app/en/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/Floorp-Projects/Floorp/releases/download/v11.11.1/floorp-11.11.1.linux-x86_64.tar.bz2"
+MD5SUM_x86_64="86c098def8fce66190221169192cbdbd"
+REQUIRES=""
+MAINTAINER="Hunter Ellett"
+EMAIL="hunter2k1@disroot.org"
diff --git a/network/floorp-bin/floorp.desktop b/network/floorp-bin/floorp.desktop
new file mode 100644
index 0000000000..bab1fb08b6
--- /dev/null
+++ b/network/floorp-bin/floorp.desktop
@@ -0,0 +1,273 @@
+[Desktop Entry]
+Version=1.0
+Name=Floorp
+GenericName=Web Browser
+GenericName[ca]=Navegador web
+GenericName[cs]=Webový prohlížeč
+GenericName[es]=Navegador web
+GenericName[fa]=مرورگر اینترنتی
+GenericName[fi]=WWW-selain
+GenericName[fr]=Navigateur Web
+GenericName[hu]=Webböngésző
+GenericName[it]=Browser Web
+GenericName[ja]=ウェブ・ブラウザ
+GenericName[ko]=웹 브라우저
+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[sk]=Internetový prehliadač
+GenericName[sv]=Webbläsare
+Comment=Browse the Web
+Comment[ca]=Navegueu per el web
+Comment[cs]=Prohlížení stránek World Wide Webu
+Comment[de]=Im Internet surfen
+Comment[es]=Navegue por la web
+Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید
+Comment[fi]=Selaa Internetin WWW-sivuja
+Comment[fr]=Navigue sur Internet
+Comment[hu]=A világháló böngészése
+Comment[it]=Esplora il web
+Comment[ja]=ウェブを閲覧します
+Comment[ko]=웹을 돌아 다닙니다
+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[sk]=Prehliadanie internetu
+Comment[sv]=Surfa på webben
+Exec=floorp --class="floorp" %u
+Icon=floorp
+Terminal=false
+Type=Application
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;
+Categories=Network;WebBrowser;
+Keywords=web;browser;internet;
+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=floorp --class="floorp" --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]=نْو پرایوٹ وینڈو&amp;
+Name[lij]=Neuvo barcon privou
+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=floorp --class="floorp" --private-window %u
+
+[Desktop Action profile-manager-window]
+Name=Open the Profile Manager
+Name[cs]=Správa profilů
+Exec=floorp --class="floorp" --ProfileManager %u
diff --git a/network/floorp-bin/slack-desc b/network/floorp-bin/slack-desc
new file mode 100644
index 0000000000..24a70310ca
--- /dev/null
+++ b/network/floorp-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 ':'.
+
+ |-----handy-ruler------------------------------------------------------|
+floorp-bin: floorp-bin (Web browser)
+floorp-bin:
+floorp-bin: Floorp is an advanced fork of Firefox with UI and security
+floorp-bin: improvements.
+floorp-bin:
+floorp-bin: https://floorp.app/en/
+floorp-bin:
+floorp-bin:
+floorp-bin:
+floorp-bin:
+floorp-bin:
diff --git a/network/franz/franz.SlackBuild b/network/franz/franz.SlackBuild
index 03b343e45c..26ee5d2912 100644
--- a/network/franz/franz.SlackBuild
+++ b/network/franz/franz.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=franz
-VERSION=${VERSION:-5.9.2}
+VERSION=${VERSION:-5.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/franz/franz.info b/network/franz/franz.info
index 494ec6225f..58aed257bf 100644
--- a/network/franz/franz.info
+++ b/network/franz/franz.info
@@ -1,10 +1,10 @@
PRGNAM="franz"
-VERSION="5.9.2"
+VERSION="5.10.0"
HOMEPAGE="https://meetfranz.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/meetfranz/franz/releases/download/v5.9.2/franz_5.9.2_amd64.deb"
-MD5SUM_x86_64="7e6770c37a6a573cb5a1bb6ac7d7a92a"
+DOWNLOAD_x86_64="https://github.com/meetfranz/franz/releases/download/v5.10.0/franz_5.10.0_amd64.deb"
+MD5SUM_x86_64="ee2ba15989bdfd38c81436d9c6af4b7f"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/frr/frr.SlackBuild b/network/frr/frr.SlackBuild
index 1bc0fbc6a0..a480815a29 100644
--- a/network/frr/frr.SlackBuild
+++ b/network/frr/frr.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for frr
-# Copyright 2018-2020 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2018-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=frr
-VERSION=${VERSION:-7.3.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-9.0.2}
+BUILD=${BUILD:-1}
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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -94,7 +94,7 @@ 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 {} \;
-./bootstrap.sh
+autoreconf -fvi
# docs disabled due to no python2-sphinx
CFLAGS="$SLKCFLAGS" \
@@ -141,7 +141,6 @@ install -D -m 644 redhat/frr.logrotate $PKG/etc/logrotate.d/frr.new
sed -i 's|#!/usr/bin/python|#!/usr/bin/python3|g' $PKG/usr/sbin/{frr-reload.py,generate_support_bundle.py}
-# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
rm -f $PKG/usr/lib${LIBDIRSUFFIX}/frr/modules/*.la
diff --git a/network/frr/frr.info b/network/frr/frr.info
index 92d1e476fd..a3b70cd50d 100644
--- a/network/frr/frr.info
+++ b/network/frr/frr.info
@@ -1,10 +1,10 @@
PRGNAM="frr"
-VERSION="7.3.1"
+VERSION="9.0.2"
HOMEPAGE="https://frrouting.org/"
-DOWNLOAD="https://github.com/FRRouting/frr/archive/frr-7.3.1/frr-frr-7.3.1.tar.gz"
-MD5SUM="87eeee8a5ca731054e0264d6a23c9940"
+DOWNLOAD="https://github.com/FRRouting/frr/archive/frr-9.0.2/frr-frr-9.0.2.tar.gz"
+MD5SUM="65ed7949becc65255c3ff17dc049363e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="perl-xml-libxml ipaddr-py Sphinx rtrlib libyang"
+REQUIRES="perl-xml-libxml ipaddr-py libyang protobuf-c rtrlib Sphinx"
MAINTAINER="Thibaut Notteboom"
EMAIL="thibaut.notteboom@gmail.com"
diff --git a/network/ftp-cloudfs/ftp-cloudfs.info b/network/ftp-cloudfs/ftp-cloudfs.info
index 80bc069b98..7d3a23d5af 100644
--- a/network/ftp-cloudfs/ftp-cloudfs.info
+++ b/network/ftp-cloudfs/ftp-cloudfs.info
@@ -1,7 +1,7 @@
PRGNAM="ftp-cloudfs"
VERSION="0.35"
HOMEPAGE="https://github.com/cloudfs/ftp-cloudfs/"
-DOWNLOAD="https://github.com/cloudfs/ftp-cloudfs/archive/0.35.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/ftp-cloudfs-0.35.tar.gz"
MD5SUM="8c3374bba8253b2e30fa63f0926be360"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/gajim/README b/network/gajim/README
index 43a93a0285..6e6856a15e 100644
--- a/network/gajim/README
+++ b/network/gajim/README
@@ -2,9 +2,11 @@ gajim is a GTK3-based Jabber client featuring tabbed interface,
tray icon and notifications, encryption support, local link
(Zeroconf/Bonjour) and other interesting things.
-As of the 0.16 version, gajim uses its own non-blocking xmpp
-implementation called nbxmpp (python-nbxmpp on slackbuilds.org). This
-is required to build.
+Optional dependencies:
+ gspell
+ gst-plugins-ugly
+ gst-plugins-bad-nonfree
-For encryption PyOpenSSL is used, which is not required for building,
-but produces a warning message on connection if not installed.
+Note that 1.5.4 is the last version to support Python 3.9, so there
+will be no more updates of this slackbuild until the next Slackware
+release.
diff --git a/network/gajim/gajim.SlackBuild b/network/gajim/gajim.SlackBuild
index 0b2479e6ae..1e38de8bd4 100644
--- a/network/gajim/gajim.SlackBuild
+++ b/network/gajim/gajim.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for Gajim
#
# Copyright 2014-2018 Ruben Schuller
+# Copyright 2022-2023 Andrew Clemons, Tokyo Japan
#
# All rights reserved.
#
@@ -26,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gajim
-VERSION=${VERSION:-1.3.3}
+VERSION=${VERSION:-1.5.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -39,9 +40,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,20 +49,6 @@ 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
@@ -72,7 +56,7 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -80,7 +64,14 @@ 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 {} \;
-python3 setup.py install --root=$PKG
+# our pango is too old, but it seems a somewhat arbitrary version was chosen.
+# This version of Gajim seems to work fine with our pango in 15.0.
+sed -i "/_MIN_PANGO_VER/s/'1.50.0'/'1.48.0'/g" gajim/gajim.py
+
+python3 -m build --wheel --no-isolation
+
+python3 -m installer --destdir "$PKG" dist/*.whl
+
mv $PKG/usr/share/man $PKG/usr/man
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/network/gajim/gajim.info b/network/gajim/gajim.info
index 8658622eba..49c97e2fcd 100644
--- a/network/gajim/gajim.info
+++ b/network/gajim/gajim.info
@@ -1,10 +1,10 @@
PRGNAM="gajim"
-VERSION="1.3.3"
+VERSION="1.5.4"
HOMEPAGE="https://gajim.org/"
-DOWNLOAD="https://gajim.org/downloads/1.3/gajim-1.3.3.tar.gz"
-MD5SUM="2fa77eadb4323aed392664664c706fb2"
+DOWNLOAD="https://gajim.org/downloads/1.5/gajim-1.5.4.tar.gz"
+MD5SUM="64affe8a670a34fca67808ca1cb5b664"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pyOpenSSL python-nbxmpp python3-pycrypto python-keyring css-parser"
-MAINTAINER="Ruben Schuller"
-EMAIL="sb@rbn.im"
+REQUIRES="python3-build python3-wheel python-nbxmpp cryptography css-parser python3-keyring gtksourceview4 gsound python-qrcode python-axolotl python-gnupg gst-python"
+MAINTAINER="Andrew Clemons"
+EMAIL="andrew.clemons@gmail.com"
diff --git a/network/gallery-dl/README b/network/gallery-dl/README
new file mode 100644
index 0000000000..ae9a368ad5
--- /dev/null
+++ b/network/gallery-dl/README
@@ -0,0 +1,9 @@
+gallery-dl (Command line image scraper)
+
+gallery-dl is a command-line program to download image galleries and
+collections from several image hosting sites. It is a cross-platform
+tool with many configuration options and powerful filenaming
+capabilities.
+
+Optional dependencies include yt-dlp/youtube-dl for video downloads and
+pysocks for SOCKS proxy support.
diff --git a/network/sendxmpp/sendxmpp.SlackBuild b/network/gallery-dl/gallery-dl.SlackBuild
index e4c3d158b9..570bb808ed 100644
--- a/network/sendxmpp/sendxmpp.SlackBuild
+++ b/network/gallery-dl/gallery-dl.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for sendxmpp
+# Slackware build script for gallery-dl
-# Copyright 2019, Alexander Verbovetsky, Moscow Russia
+# Copyright 2023-2024 Samuel Young, MO, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=sendxmpp
-VERSION=${VERSION:-1.24}
+PRGNAM=gallery-dl
+VERSION=${VERSION:-1.26.8}
BUILD=${BUILD:-1}
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
@@ -58,9 +55,6 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-
-for p in $CWD/patches/*.patch; do patch -p1 < $p; done
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -68,20 +62,22 @@ 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 {} \;
-perl Makefile.PL PREFIX=/usr
-make
-make install DESTDIR=$PKG
+make man PREFIX=/usr DESTDIR=$PKG
+make completion PREFIX=/usr DESTDIR=$PKG
+python3 setup.py install --root=$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
mv $PKG/usr/share/man $PKG/usr
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 || true
-
-find $PKG -depth -type d -empty -delete || true
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a examples Changes README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ CHANGELOG.md LICENSE docs/formatting.md docs/gallery-dl-example.conf docs/gallery-dl.conf docs/options.md docs/supportedsites.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/gallery-dl/gallery-dl.info b/network/gallery-dl/gallery-dl.info
new file mode 100644
index 0000000000..f5b7bf9139
--- /dev/null
+++ b/network/gallery-dl/gallery-dl.info
@@ -0,0 +1,10 @@
+PRGNAM="gallery-dl"
+VERSION="1.26.8"
+HOMEPAGE="https://github.com/mikf/gallery-dl"
+DOWNLOAD="https://github.com/mikf/gallery-dl/archive/v1.26.8/gallery-dl-1.26.8.tar.gz"
+MD5SUM="1922ddc39c6f79dc7389ab8964bbf6a7"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/gallery-dl/slack-desc b/network/gallery-dl/slack-desc
new file mode 100644
index 0000000000..bfb617a755
--- /dev/null
+++ b/network/gallery-dl/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------------------------------------------------------|
+gallery-dl: gallery-dl (Command line image scraper)
+gallery-dl:
+gallery-dl: gallery-dl is a command-line program to download image galleries and
+gallery-dl: collections from several image hosting sites. It is a cross-platform
+gallery-dl: tool with many configuration options and powerful filenaming capabi-
+gallery-dl: lities.
+gallery-dl:
+gallery-dl:
+gallery-dl:
+gallery-dl: Homepage: https://github.com/mikf/gallery-dl
+gallery-dl:
diff --git a/network/ganglia-web/README b/network/ganglia-web/README
new file mode 100644
index 0000000000..686ed6d342
--- /dev/null
+++ b/network/ganglia-web/README
@@ -0,0 +1,9 @@
+Ganglia is a scalable distributed monitoring system for
+high-performance computing systems such as clusters and Grids.
+It is based on a hierarchical design targeted at federations
+of clusters.
+
+The Ganglia web frontend files will be stored under
+/var/www/htdocs/ganglia directory. You can set WWWPATH to the
+desired place for your web server. Example:
+ WWWPATH=/var/www/ganglia ./ganglia-web.SlackBuild
diff --git a/network/ganglia-web/doinst.sh b/network/ganglia-web/doinst.sh
new file mode 100644
index 0000000000..63bedaf35d
--- /dev/null
+++ b/network/ganglia-web/doinst.sh
@@ -0,0 +1,14 @@
+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/httpd/extra/ganglia.conf.new
diff --git a/network/ganglia-web/ganglia-web.SlackBuild b/network/ganglia-web/ganglia-web.SlackBuild
new file mode 100644
index 0000000000..aba343affb
--- /dev/null
+++ b/network/ganglia-web/ganglia-web.SlackBuild
@@ -0,0 +1,83 @@
+#!/bin/bash
+
+# Slackware build script for Ganglia-web
+
+# Copyright 2016-2024 Emmanuel N. Millán, Mendoza, Argentina.
+# 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=ganglia-web
+VERSION=${VERSION:-3.7.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH="noarch"
+
+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}
+
+WWWPATH=${WWWPATH:-/var/www/htdocs/ganglia}
+DOCUMENTATION="AUTHORS COPYING README TODO"
+
+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 install GDESTDIR=${PKG}${WWWPATH} \
+ GCONFDIR=${PKG}/etc/ganglia-web \
+ GWEB_STATEDIR=${PKG}/var/lib/ganglia-web \
+ GMETAD_ROOTDIR=${PKG}/var/lib/ganglia \
+ APACHE_USER=apache
+
+mkdir -p $PKG/etc/httpd/extra
+sed -e "s|@GDESTDIR@|${WWWPATH}|g" apache.conf.in > apache.conf
+sed -i 's/AllowOverride All/AllowOverride All\n\tRequire all granted/' apache.conf
+cat apache.conf > $PKG/etc/httpd/extra/ganglia.conf.new
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $DOCUMENTATION $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/ganglia-web/ganglia-web.info b/network/ganglia-web/ganglia-web.info
new file mode 100644
index 0000000000..1931a17381
--- /dev/null
+++ b/network/ganglia-web/ganglia-web.info
@@ -0,0 +1,10 @@
+PRGNAM="ganglia-web"
+VERSION="3.7.2"
+HOMEPAGE="http://ganglia.info/"
+DOWNLOAD="http://downloads.sourceforge.net/ganglia/ganglia-web-3.7.2.tar.gz"
+MD5SUM="a2d87edcf2914a053aa6be0ee4d57c29"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="ganglia"
+MAINTAINER="Emmanuel N. Millan"
+EMAIL="emmanueln@gmail.com"
diff --git a/network/Free-Cinema/slack-desc b/network/ganglia-web/slack-desc
index bc18a423fe..7c8878dc85 100644
--- a/network/Free-Cinema/slack-desc
+++ b/network/ganglia-web/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-Free-Cinema: Free-Cinema (Search, Download movies via Torrent)
-Free-Cinema:
-Free-Cinema: This program is made to browse movies to download from the comfort
-Free-Cinema: of your desktop.
-Free-Cinema:
-Free-Cinema: Homepage: https://pypi.python.org/pypi/Free-Cinema/0.3.0
-Free-Cinema:
-Free-Cinema:
-Free-Cinema:
-Free-Cinema:
-Free-Cinema:
+ganglia-web: ganglia-web (distributed monitoring system web interface)
+ganglia-web:
+ganglia-web: Ganglia Web 2 (gweb2) is a refresh of the Ganglia PHP UI.
+ganglia-web:
+ganglia-web: Homepage: http://ganglia.info/
+ganglia-web:
+ganglia-web:
+ganglia-web:
+ganglia-web:
+ganglia-web:
+ganglia-web:
diff --git a/network/ganglia/README b/network/ganglia/README
new file mode 100644
index 0000000000..2184db5d84
--- /dev/null
+++ b/network/ganglia/README
@@ -0,0 +1,19 @@
+ganglia (distributed monitoring system)
+
+Ganglia is a scalable distributed monitoring system for
+high-performance computing systems such as clusters and Grids.
+It is based on a hierarchical design targeted at federations
+of clusters.
+
+1. This SlackBuild is just going to build Ganglia without 'gmetad',
+ which collects information from ganglia monitor clients, and
+ writes them to RRD databases. If you want to enable this, you'll
+ have to enable it with the OPT variable and 'gmetad' as value,
+ then execute the build script as follows:
+ OPT=gmetad ./ganglia.SlackBuild
+
+ In order to build gmetad as part of this package, you'll need
+ to have RRDTool installed. It is available from SlackBuilds.org.
+
+2. The Ganglia web frontend is distributed as a separated SlackBuild:
+ ganglia-web.
diff --git a/network/ganglia/doinst.sh b/network/ganglia/doinst.sh
new file mode 100644
index 0000000000..6d02270893
--- /dev/null
+++ b/network/ganglia/doinst.sh
@@ -0,0 +1,34 @@
+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
+}
+
+config etc/ganglia/gmond.conf.new
+preserve_perms etc/rc.d/rc.gmond.new
+
+if [ -e etc/ganglia/gmetad.conf.new ]; then
+ config etc/ganglia/gmetad.conf.new
+fi
+
+if [ -e etc/rc.d/rc.gmetad.new ]; then
+ preserve_perms etc/rc.d/rc.gmetad.new
+fi
diff --git a/network/suricata/suricata.SlackBuild b/network/ganglia/ganglia.SlackBuild
index bf76d884f1..0df8dedd32 100644
--- a/network/suricata/suricata.SlackBuild
+++ b/network/ganglia/ganglia.SlackBuild
@@ -1,8 +1,11 @@
#!/bin/bash
-# Slackware build script for suricata
+# Slackware build script for Ganglia
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2008 Cherife Li <cherife-#-dotimes.com>
+# All rights reserved.
+#
+# Copyright 2016-2024 Emmanuel N. Millán, Mendoza, Argentina.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,9 +27,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=suricata
-VERSION=${VERSION:-6.0.4}
-BUILD=${BUILD:-2}
+PRGNAM=ganglia
+VERSION=${VERSION:-3.7.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,18 +41,18 @@ 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
fi
+
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+DOCUMENTATION="AUTHORS COPYING ChangeLog NEWS README*"
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -67,7 +70,7 @@ fi
set -e
rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT $PKG/etc/$PRGNAM
+mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
@@ -79,61 +82,59 @@ 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 {} \;
-export CARGO_HOME=.cargo
-CFLAGS="$SLKCFLAGS" \
+if [ -n "$OPT" ]; then
+ if [ "$OPT" = 'gmetad' ]; then
+ OPT='--with-gmetad'
+ else
+ unset -v OPT
+ fi
+fi
+
+
+LDFLAGS="-ltirpc" \
+CFLAGS=" -I/usr/include/tirpc $SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --enable-static=no \
+ --enable-gexeca \
+ --enable-status \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
- --enable-shared=yes \
- --enable-static=no \
- --enable-unix-socket \
- --enable-python \
- --build=$ARCH-slackware-linux
+ --build=$ARCH-slackware-linux \
+ $OPT
make
make install DESTDIR=$PKG
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
-
-# Fix magic-file path
-sed -i 's/magic-file: \/usr\/share\/file\/magic/magic-file: \/etc\/file\/magic.mgc/' suricata.yaml
-
-# Install config files
-CONFIGS="classification.config reference.config"
-for file in $CONFIGS; do
- install -D -m644 etc/$file $PKG/etc/suricata/${file}.new
-done
-CONFIGS="suricata.yaml threshold.config"
-for file in $CONFIGS; do
- install -D -m644 $file $PKG/etc/suricata/${file}.new
-done
-
-# Include the rc.suricata file
mkdir -p $PKG/etc/rc.d
-install -D -m0644 $CWD/rc.suricata $PKG/etc/rc.d/rc.suricata.new
+mkdir -p $PKG/etc/ganglia
+./gmond/gmond -t > $PKG/etc/ganglia/gmond.conf.new
+sed -e 's|daemon $GMOND|daemon $GMOND -c /etc/ganglia/gmond.conf|g' gmond/gmond.init > $PKG/etc/rc.d/rc.gmond.new
+
+if [ -n "$OPT" ]; then
+ cat gmetad/gmetad.conf > $PKG/etc/ganglia/gmetad.conf.new
+ sed -e 's|daemon $GMETAD|daemon $GMETAD -c /etc/ganglia/gmetad.conf|g' gmetad/gmetad.init > $PKG/etc/rc.d/rc.gmetad.new
+ rm $PKG/etc/gmetad.conf
+ mkdir -p /var/lib/ganglia/rrds
+ chown nobody.nogroup -R /var/lib/ganglia/rrds
+fi
-# Install rules
-install -D -m644 rules/*.rules $PKG/etc/$PRGNAM
-# Create directory for logging
-mkdir -p $PKG/var/log/$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
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 COPYING ChangeLog LICENSE doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $PKG/usr/share/doc/$PRGNAM/* $PKG/usr/doc/$PRGNAM-$VERSION
-rm -rf $PKG/usr/share/
+cp -a $DOCUMENTATION $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/ganglia/ganglia.info b/network/ganglia/ganglia.info
new file mode 100644
index 0000000000..e2f5b72726
--- /dev/null
+++ b/network/ganglia/ganglia.info
@@ -0,0 +1,10 @@
+PRGNAM="ganglia"
+VERSION="3.7.2"
+HOMEPAGE="http://ganglia.info/"
+DOWNLOAD="http://downloads.sourceforge.net/ganglia/ganglia-3.7.2.tar.gz"
+MD5SUM="49c5cd0292fdfb57d098ac76b6e97672"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="confuse"
+MAINTAINER="Emmanuel N. Millan"
+EMAIL="emmanueln@gmail.com"
diff --git a/network/ganglia/slack-desc b/network/ganglia/slack-desc
new file mode 100644
index 0000000000..264f6dcbbb
--- /dev/null
+++ b/network/ganglia/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------------------------------------------------------|
+ganglia: ganglia (distributed monitoring system)
+ganglia:
+ganglia: Ganglia is a scalable distributed monitoring system for
+ganglia: high-performance computing systems such as clusters and Grids. It
+ganglia: is based on a hierarchical design targeted at federations
+ganglia: of clusters.
+ganglia:
+ganglia: Homepage: http://ganglia.info/
+ganglia:
+ganglia:
+ganglia:
diff --git a/network/gemget-bin/README b/network/gemget-bin/README
new file mode 100644
index 0000000000..831f8e22ba
--- /dev/null
+++ b/network/gemget-bin/README
@@ -0,0 +1,12 @@
+gemget-bin (file downloader for gemini protocol)
+
+gemget is a command line downloader for the Gemini protocol. It works
+well with streams and can print headers for debugging as well. It's
+basically the equivalent of wget, for gemini:// URLs.
+
+Since this is a binary repack, only i586/i686, x86_64, and aarch64 are
+supported. For aarch64, download the file here:
+
+https://github.com/makew0rld/gemget/releases/download/v1.9.0/gemget_1.9.0_linux_arm64
+
+Its md5sum is a3e858cb4d08729bba30d8ade5e313cf.
diff --git a/network/gemget-bin/docs/LICENSE b/network/gemget-bin/docs/LICENSE
new file mode 100644
index 0000000000..ee7b3fc619
--- /dev/null
+++ b/network/gemget-bin/docs/LICENSE
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2020 makeworld
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+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.
diff --git a/network/gemget-bin/docs/README.md b/network/gemget-bin/docs/README.md
new file mode 100644
index 0000000000..952e51add4
--- /dev/null
+++ b/network/gemget-bin/docs/README.md
@@ -0,0 +1,91 @@
+# gemget
+
+A command line downloader for the [Gemini protocol](https://gemini.circumlunar.space/).
+It works well with streams and can print headers for debugging as well.
+
+```
+gemget [option]... URL...
+
+Usage of ./gemget:
+ -e, --add-extension Add .gmi extensions to gemini files that don't have it, like directories.
+
+ --cert string Path to a PEM encoded TLS client certificate to be sent with the request.
+
+ --connect-timeout uint Max time allowed to form a connection and get the header, in seconds.
+ Set to 0 for no timeout. (default 15)
+ -d, --directory string
+ The directory where downloads go (default ".")
+ --header
+ Print out (even with --quiet) the response header to stdout in the format:
+ Header: <status> <meta>
+
+ -f, --input-file string Input file with a single URL on each line. Empty lines or lines starting
+ with # are ignored. URLs on the command line will be processed first.
+
+ -i, --insecure Skip checking the cert
+
+ --key string Path to a PEM encoded TLS key for the provided client cert.
+
+ -m, --max-size string Set the file size limit. Any download that exceeds this size will
+ cause an Info output and be deleted.
+ Leaving it blank or setting to zero bytes will result in no limit.
+ This flag is ignored when outputting to stdout.
+ Format: <num> <optional-byte-size>
+ Examples: 423, 3.2KiB, '2.5 MB', '22 MiB', '10gib', 3M
+
+ -t, --max-time uint Set the downloading time limit, in seconds. Any download that
+ takes longer will cause an Info output and be deleted.
+
+ --no-progress-bar Disable the progress bar output.
+
+ -o, --output string Output path, for when there is only one URL.
+ '-' means stdout and implies --quiet.
+ It overrides --directory.
+
+ -p, --proxy string A proxy that can requests are sent to instead.
+ Can be a domain or IP with port. Port 1965 is assumed otherwise.
+
+ -q, --quiet Neither info strings or the progress bar will be printed.
+ Note that normally infos are printed to stderr, not stdout.
+
+ -r, --redirects uint How many redirects to follow before erroring out. (default 5)
+ -s, --skip Move to the next URL when one fails.
+ --socks string Host/address for a SOCKS5 proxy
+ --socks-pass string Password for a SOCKS5 proxy (optional)
+ --socks-user string Username for a SOCKS5 proxy (optional)
+
+ -v, --version Find out what version of gemget you're running.
+```
+
+## Project Status
+
+gemget is in maintenance mode. See my [blog post](https://www.makeworld.space/2023/08/bye_gemini.html) for details.
+
+## Installation
+Install a binary of the most recent release from the [releases page](https://github.com/makeworld-the-better-one/gemget/releases/). On Unix-based systems you will have to make the file executable with `chmod +x <filename>`. You can rename the file to just `gemget` for easy access, and move it to `/usr/local/bin/`.
+
+If you have Go installed, you can also install it using the Makefile. Make sure to use GNU Make.
+
+```shell
+git clone https://github.com/makeworld-the-better-one/gemget
+cd gemget
+# git checkout v1.2.3 # Optionally pin to a specific version instead of the latest commit
+make
+sudo make install
+```
+
+## Arch Linux
+
+Arch Linux users can install gemget from AUR. It has the package name `gemget`, and is maintained by @dalz.
+
+```shell
+yay -S gemget
+```
+
+
+## Features to add
+- [x] Support client certificates
+- [ ] Support interactive input for status code 10 & 11
+
+## License
+This project is under the [MIT License](./LICENSE).
diff --git a/network/gemget-bin/gemget-bin.SlackBuild b/network/gemget-bin/gemget-bin.SlackBuild
new file mode 100644
index 0000000000..ad8e24fcdb
--- /dev/null
+++ b/network/gemget-bin/gemget-bin.SlackBuild
@@ -0,0 +1,71 @@
+#!/bin/bash
+
+# Slackware build script for gemget-bin
+
+# 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=gemget-bin
+SRCNAM=gemget
+VERSION=${VERSION:-1.9.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}
+
+EXE=""
+case "$ARCH" in
+ i?86) EXE=${SRCNAM}_${VERSION}_linux_32-bit ;;
+ x86_64) EXE=${SRCNAM}_${VERSION}_linux_64-bit ;;
+ aarch64) EXE=${SRCNAM}_${VERSION}_linux_arm64 ;;
+esac
+
+if [ "$EXE" = "" ]; then
+ cat <<EOF
+===================================================
+Sorry, ARCH="$ARCH" is not supported.
+Only i586, i686, x86_64, and aarch64 are supported.
+===================================================
+EOF
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+install -D -m0755 -oroot -groot $CWD/$EXE usr/bin/$SRCNAM
+
+# the binary includes no docs. so they're included with the SlackBuild
+# (taken from the git repo at https://github.com/makew0rld/gemget).
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+install -m0644 -oroot -groot $CWD/docs/* $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/gemget-bin/gemget-bin.info b/network/gemget-bin/gemget-bin.info
new file mode 100644
index 0000000000..0a6b959c23
--- /dev/null
+++ b/network/gemget-bin/gemget-bin.info
@@ -0,0 +1,10 @@
+PRGNAM="gemget-bin"
+VERSION="1.9.0"
+HOMEPAGE="https://github.com/makew0rld/gemget/"
+DOWNLOAD="https://github.com/makew0rld/gemget/releases/download/v1.9.0/gemget_1.9.0_linux_32-bit"
+MD5SUM="6e5d9c6d38abee20ad4dccedafe978a7"
+DOWNLOAD_x86_64="https://github.com/makew0rld/gemget/releases/download/v1.9.0/gemget_1.9.0_linux_64-bit"
+MD5SUM_x86_64="d0bfc8118c379c4dfaf6872ff32eef3a"
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/gemget-bin/slack-desc b/network/gemget-bin/slack-desc
new file mode 100644
index 0000000000..ffc39ee66a
--- /dev/null
+++ b/network/gemget-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------------------------------------------------------|
+gemget-bin: gemget-bin (file downloader for gemini protocol)
+gemget-bin:
+gemget-bin: gemget is a command line downloader for the Gemini protocol. It works
+gemget-bin: well with streams and can print headers for debugging as well. It's
+gemget-bin: basically the equivalent of wget, for gemini:// URLs.
+gemget-bin:
+gemget-bin:
+gemget-bin:
+gemget-bin:
+gemget-bin:
+gemget-bin:
diff --git a/network/geomyidae/README b/network/geomyidae/README
index 8899a4b95e..131dc73a22 100644
--- a/network/geomyidae/README
+++ b/network/geomyidae/README
@@ -6,8 +6,18 @@ Features:
* cgi support (.cgi files are executed)
* search support in CGI files
* logging (-l option) and loglevels (-v option)
+* optional TLS support
An rc.geomyidae is included which takes its startup options
from the $GEOMYIDAE_ARGS environmental variable. Read
/usr/doc/geomyidae-$VERSION/README for a list of the full
options.
+
+The gph.vim ftdetect and syntax files are now installed into
+/usr/share/vim/ so there is no need to copy them manually.
+
+OPTIONAL:
+
+libtls or libressl for TLS support and:
+
+ TLS=yes ./geomyidae.SlackBuild
diff --git a/network/geomyidae/geomyidae.SlackBuild b/network/geomyidae/geomyidae.SlackBuild
index 534e278ed9..924012c8e4 100644
--- a/network/geomyidae/geomyidae.SlackBuild
+++ b/network/geomyidae/geomyidae.SlackBuild
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=geomyidae
-VERSION=${VERSION:-v0.34}
+VERSION=${VERSION:-0.69}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -68,39 +68,60 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tgz
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-v$VERSION
+tar xvf $CWD/$PRGNAM-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 {} \;
+find . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + \
+ -o \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# check libtls installed
+if pkg-config --exists libtls && [[ $TLS =~ YES|yes ]]; then
+ # extra flags for TLS
+ SLKCFLAGS="$SLKCFLAGS -I/opt/libressl/include"
+ SLKLDFLAGS=-L/opt/libressl/lib$LIBDIRSUFFIX
+ SLKPKG_CONFIG_PATH=/opt/libressl/lib$LIBDIRSUFFIX/pkgconfig:
+ SLKLD_LIBRARY_PATH=/opt/libressl/lib$LIBDIRSUFFIX:
+else
+ # comment out TLS flags
+ sed -i "s,^TLS_CFLAGS,#&," Makefile
+ sed -i "s,^TLS_LDFLAGS,#&," Makefile
+fi
sed -i 's,PREFIX =.*,PREFIX = /usr,' Makefile
sed -i 's,MANDIR = .*,MANDIR = ${PREFIX}/man/man8,' Makefile
CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-make
+LDFLAGS="$LDFLAGS $SLKLDFLAGS" \
+PKG_CONFIG_PATH="${SLKPKG_CONFIG_PATH}${PKG_CONFIG_PATH}" \
+LD_LIBRARY_PATH="${SLKLD_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
+make PREFIX=/usr MANDIR=${PREFIX}/man/man8
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
+# install vim files
+for dir in ftdetect syntax; do
+ install -D -m 0644 gph/vim/$dir/gph.vim $PKG/usr/share/vim/$dir/gph.vim
+done
mkdir -p $PKG/etc/rc.d
cat rc.d/rc.geomyidae > $PKG/etc/rc.d/rc.geomyidae.new
-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
+strip --strip-unneeded $PKG/usr/bin/geomyidae
+gzip -9 $PKG/usr/man/man8/geomyidae.8
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- LICENSE README LINKS index.gph gph \
+ CGI.md LICENSE README LINKS index.gph gph/ docker/ \
+ haproxy/ patches/ cgi-examples/ \
+ tls-gen-selfsign-cert.sh \
+ xinetd-gopher-request-filter.conf \
+ xinetd-gopher-request-filter.sh \
+ geomyidae.svg \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod -c 644 '{}' +
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/geomyidae/geomyidae.info b/network/geomyidae/geomyidae.info
index ae69121696..b7325fc82c 100644
--- a/network/geomyidae/geomyidae.info
+++ b/network/geomyidae/geomyidae.info
@@ -1,10 +1,10 @@
PRGNAM="geomyidae"
-VERSION="v0.34"
+VERSION="0.69"
HOMEPAGE="http://r-36.net/scm/geomyidae/log.html"
-DOWNLOAD="ftp://bitreich.org/releases/geomyidae/geomyidae-v0.34.tgz"
-MD5SUM="75c4e5864afc184514372b0a5922242d"
+DOWNLOAD="ftp://bitreich.org/releases/geomyidae/geomyidae-v0.69.tar.gz"
+MD5SUM="a84ee793323acf83decef74a7601191d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/geomyidae/slack-desc b/network/geomyidae/slack-desc
index 5112a071f8..f4cff64806 100644
--- a/network/geomyidae/slack-desc
+++ b/network/geomyidae/slack-desc
@@ -14,6 +14,6 @@ geomyidae: * dir listings (if no index.gph was found)
geomyidae: * cgi support (.cgi files are executed)
geomyidae: * search support in CGI files
geomyidae: * logging (-l option) and loglevels (-v option)
+geomyidae: * optional TLS support
geomyidae:
geomyidae: gopher://bitreich.org/1/scm/geomyidae/log.gph
-geomyidae:
diff --git a/network/glewlwyd/glewlwyd.SlackBuild b/network/glewlwyd/glewlwyd.SlackBuild
index 21649615ae..9664c0f555 100644
--- a/network/glewlwyd/glewlwyd.SlackBuild
+++ b/network/glewlwyd/glewlwyd.SlackBuild
@@ -23,7 +23,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=glewlwyd
-VERSION=${VERSION:-2.7.3}
+VERSION=${VERSION:-2.7.6}
SRCVER=$(tr _ - <<< ${VERSION})
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -58,6 +58,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC -Wno-error=maybe-uninitialized"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2 -Wno-error=maybe-uninitialized"
LIBDIRSUFFIX=""
@@ -94,6 +97,8 @@ 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/man/man8
+install -m 644 docs/glewlwyd.8 $PKG/usr/man/man8
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/glewlwyd/glewlwyd.info b/network/glewlwyd/glewlwyd.info
index c5b5887943..7e8db29bc0 100644
--- a/network/glewlwyd/glewlwyd.info
+++ b/network/glewlwyd/glewlwyd.info
@@ -1,8 +1,8 @@
PRGNAM="glewlwyd"
-VERSION="2.7.3"
+VERSION="2.7.6"
HOMEPAGE="https://github.com/babelouest/glewlwyd"
-DOWNLOAD="https://github.com/babelouest/glewlwyd/archive/v2.7.3/glewlwyd-2.7.3.tar.gz"
-MD5SUM="f651f4bf3c1f83a54f6d648197545bed"
+DOWNLOAD="https://github.com/babelouest/glewlwyd/archive/v2.7.6/glewlwyd-2.7.6.tar.gz"
+MD5SUM="43d3dab8ec1f0a4213f8810eef832225"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libconfig oath-toolkit libcbor hoel iddawc"
diff --git a/network/gmi100/README b/network/gmi100/README
new file mode 100644
index 0000000000..e86f3f77a8
--- /dev/null
+++ b/network/gmi100/README
@@ -0,0 +1,6 @@
+gmi100 (Gemini CLI protocol client written in 100 lines of ANSI C)
+
+I tried to pack as much as possible in 100 lines of ANSI C. Initially
+I struggled to fit simple TLS connection in such small space but
+eventually I ended up with CLI client capable of efficient navigation
+between capsules of Gemini space.
diff --git a/network/gmi100/gmi100.1 b/network/gmi100/gmi100.1
new file mode 100644
index 0000000000..51c022e5de
--- /dev/null
+++ b/network/gmi100/gmi100.1
@@ -0,0 +1,83 @@
+.TH GMI100 1 "2024-03-03"
+.SH NAME
+gmi100 \- Gemini CLI protocol client written in 100 lines of ANSI C.
+.SH SYNOPSIS
+.B gmi100
+.IR [PAGER]
+.SH DESCRIPTION
+Other similar Gemini client projects written in few lines of code
+successfully shows how simple Gemini protocol is. This code is far from
+straight forward. But I had a different goal in mind.
+
+I tried to pack as much as possible in 100 lines of ANSI C. Initially I
+struggled to fit simple TLS connection in such small space but
+eventually I ended up with CLI client capable of efficient navigation
+between capsules of Gemini space.
+
+.SH ACTIONS
+.TP
+.BR "N"
+Number of link on current capsule
+.TP
+.BR "r"
+Refresh current capsule
+.TP
+.BR "u"
+Go "up" in URL directory path
+.TP
+.BR "b"
+Go back in browsing history
+.TP
+.BR "c"
+Print current capsule URI
+.TP
+.BR "q"
+Quit
+.TP
+.BR "?"
+Search, geminispace.info/search is used by default
+.TP
+.BR "!"
+Shell command prefixed, run it on current capsule
+.
+.SH USAGE EXAMPLES
+.
+.TP
+.BR "gmi100 cat"
+Using "cat" as pager
+.TP
+.BR "gmi100> ACTION"
+On prompt: execute any action (as above mentioned)
+.TP
+.BR "gmi100> geminiprotocol.net"
+On prompt: go to capsule
+.TP
+.BR "gmi100> 3"
+On prompt: go to link number 3 of current capsule
+.TP
+.BR "gmi100> !nsxiv"
+On prompt: open file of current URL with nsxiv (image)
+.
+.SH HISTORY
+After you run the program it will open or create history .gmi100 file.
+Then every page you visits that is not a redirection to other page and
+doesn't ask you for input will be appended at the end of history file.
+File is never cleaned up by program itself to make history persistent
+between sessions but that means cleaning up browsing history is your
+responsibility. But this also gives you an control over history file
+content. You can for example append some links that you want to visit
+in next session to have easier access to them just by running program
+and pressing "b" which will navigate to last link from history file.
+
+During browsing session typing "b" in program prompt for the first time
+will result in navigation to last link in history file. Then if you
+type "b" again it will open second to last link from history. But it
+will also append that link at the end. You can input "b" multiple times
+and it will always go back by one link in history and append it at then
+end of history file at the same time. Only if you decide to navigate to
+other page by typing URL or choosing link number you will break that
+cycle. Then history "pointer" will go back to the very bottom of the
+history file.
+
+.SH AUTHOR
+irek@gabr.pl
diff --git a/network/gmi100/gmi100.SlackBuild b/network/gmi100/gmi100.SlackBuild
new file mode 100644
index 0000000000..55fb39901c
--- /dev/null
+++ b/network/gmi100/gmi100.SlackBuild
@@ -0,0 +1,101 @@
+#!/bin/bash
+
+# Slackware build script for gmi100
+
+# Copyright 2024 G. Galdini <jake@dioniso.com.br> 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=gmi100
+VERSION=${VERSION:-20231020_f5c69e3}
+COMMIT=f5c69e316781e8d411b46c1d901f3f9fc23f16cf
+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-$COMMIT
+tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
+cd $PRGNAM-$COMMIT
+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 {} \;
+
+./build
+
+mkdir -p $PKG/usr/{bin,man/man1}
+
+cp $PRGNAM $PKG/usr/bin
+cp $CWD/$PRGNAM.1 $PKG/usr/man/man1
+
+strip --strip-unneeded $PKG/usr/bin/$PRGNAM
+gzip -9 $PKG/usr/man/man?/*.?
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp 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/gmi100/gmi100.info b/network/gmi100/gmi100.info
new file mode 100644
index 0000000000..0ee80fef88
--- /dev/null
+++ b/network/gmi100/gmi100.info
@@ -0,0 +1,10 @@
+PRGNAM="gmi100"
+VERSION="20231020_f5c69e3"
+HOMEPAGE="https://github.com/ir33k/gmi100"
+DOWNLOAD="https://github.com/ir33k/gmi100/archive/f5c69e3/gmi100-f5c69e316781e8d411b46c1d901f3f9fc23f16cf.tar.gz"
+MD5SUM="f73987208cadafb025c7a75b21e9be84"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="G. Galdini"
+EMAIL="jake@dioniso.com.br"
diff --git a/network/DarTui/slack-desc b/network/gmi100/slack-desc
index c1ed5db00e..0d36bc5b0e 100644
--- a/network/DarTui/slack-desc
+++ b/network/gmi100/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-DarTui: DarTui (rTorrent web interface)
-DarTui:
-DarTui: An rTorrent web interface with a focus on simplicity,
-DarTui: speed and responsiveness.
-DarTui:
-DarTui: Homepage: https://github.com/cjlucas/dartui
-DarTui:
-DarTui:
-DarTui:
-DarTui:
-DarTui:
+gmi100: gmi100 (Gemini CLI protocol client written in 100 lines of ANSI C)
+gmi100:
+gmi100: gmi100 has been written by irek <irek@gabr.pl>
+gmi100:
+gmi100: Homepage: https://github.com/ir33k/gmi100
+gmi100:
+gmi100:
+gmi100:
+gmi100:
+gmi100:
+gmi100:
diff --git a/network/gmvault/README b/network/gmvault/README
deleted file mode 100644
index b1038f10ae..0000000000
--- a/network/gmvault/README
+++ /dev/null
@@ -1 +0,0 @@
-Tool to backup and restore your Gmail emails at will.
diff --git a/network/gmvault/gmvault.info b/network/gmvault/gmvault.info
deleted file mode 100644
index a7b860bfe7..0000000000
--- a/network/gmvault/gmvault.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="gmvault"
-VERSION="1.9.1"
-HOMEPAGE="http://gmvault.org/"
-DOWNLOAD="https://pypi.python.org/packages/43/a2/a67be562a045b96aaa9f984cb1c178c7649bb53523535615e0b79064e1f9/gmvault-1.9.1.tar.gz"
-MD5SUM="4ad5ebd59147f12e30e6ba971ace7834"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="Logbook IMAPClient"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/gnome-bluetooth/gnome-bluetooth.SlackBuild b/network/gnome-bluetooth/gnome-bluetooth.SlackBuild
index cab85243ad..d381647dab 100644
--- a/network/gnome-bluetooth/gnome-bluetooth.SlackBuild
+++ b/network/gnome-bluetooth/gnome-bluetooth.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gnome-bluetooth
VERSION=${VERSION:-3.34.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -77,6 +77,10 @@ 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 {} \;
+# Special thanks to Bob Funk, who kindly pointed this problem out and
+# provided a link to the patch fixing it.
+cat $CWD/patches/01-meson.patch | patch -p1 || exit
+
mkdir build
cd build
CFLAGS="$SLKCFLAGS" \
diff --git a/network/gnome-bluetooth/patches/01-meson.patch b/network/gnome-bluetooth/patches/01-meson.patch
new file mode 100644
index 0000000000..79c0a08725
--- /dev/null
+++ b/network/gnome-bluetooth/patches/01-meson.patch
@@ -0,0 +1,17 @@
+# 08/02/2023: Allow newer versions of meson to build this package.
+# Special thanks to Bob Funk who kindly pointed this out.
+# Original patch url: https://gitlab.gnome.org/GNOME/gnome-bluetooth/-/commit/755fd758f866d3a3f7ca482942beee749f13a91e.patch
+
+diff --git a/sendto/meson.build b/sendto/meson.build
+index 24a4e394..3e233a03 100644
+--- a/sendto/meson.build
++++ b/sendto/meson.build
+@@ -22,7 +22,6 @@ desktop_in = configure_file(
+ )
+
+ i18n.merge_file (
+- desktop,
+ type: 'desktop',
+ input: desktop_in,
+ output: desktop,
+--
diff --git a/network/gnome-remote-desktop/README b/network/gnome-remote-desktop/README
new file mode 100644
index 0000000000..b1cd452f33
--- /dev/null
+++ b/network/gnome-remote-desktop/README
@@ -0,0 +1,11 @@
+Remote desktop daemon for GNOME using pipewire, allowing you to connect
+to your machine remotely.
+
+Note: On Slackware the gnome-remote-desktop daemon must be started and
+stopped manually. There are controls to start/stop the daemon in the
+gnome-control-center "Sharing" panel, but these controls are hard-coded
+to talk to systemd and will not start/stop the daemon. Instead, the
+daemon can be run directly from its installed path of:
+
+ /usr/libexec/gnome-remote-desktop
+
diff --git a/network/gnome-remote-desktop/doinst.sh b/network/gnome-remote-desktop/doinst.sh
new file mode 100644
index 0000000000..56b9e419c1
--- /dev/null
+++ b/network/gnome-remote-desktop/doinst.sh
@@ -0,0 +1,6 @@
+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/EarthReader-Web/EarthReader-Web.SlackBuild b/network/gnome-remote-desktop/gnome-remote-desktop.SlackBuild
index a18152aa23..d4c87a8003 100644
--- a/network/EarthReader-Web/EarthReader-Web.SlackBuild
+++ b/network/gnome-remote-desktop/gnome-remote-desktop.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for EarthReader-Web
+# Slackware build script for gnome-remote-desktop
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2022 Bob Funk Winnipeg, Canada
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,13 +22,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# 20220512 46and2: Removed python2 as it was missing requirements.
-# -Updated for v0.3.0.
-
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=EarthReader-Web
-VERSION=${VERSION:-0.3.0}
+PRGNAM=gnome-remote-desktop
+VERSION=${VERSION:-41.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,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
@@ -73,7 +67,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.?z
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -82,13 +76,31 @@ 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 {} \;
-python3 setup.py install --root=$PKG
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true \
+ -Dsystemd=false
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA 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
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README.rst PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING 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/gnome-remote-desktop/gnome-remote-desktop.info b/network/gnome-remote-desktop/gnome-remote-desktop.info
new file mode 100644
index 0000000000..b5945445bd
--- /dev/null
+++ b/network/gnome-remote-desktop/gnome-remote-desktop.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-remote-desktop"
+VERSION="41.3"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-remote-desktop"
+DOWNLOAD="https://download.gnome.org/core/41/41.8/sources/gnome-remote-desktop-41.3.tar.xz"
+MD5SUM="48de4a64f420ed48f39d9cb0f940f537"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="nv-codec-headers"
+MAINTAINER="Bob Funk"
+EMAIL="bobfunk11@gmail.com"
diff --git a/network/gnome-remote-desktop/slack-desc b/network/gnome-remote-desktop/slack-desc
new file mode 100644
index 0000000000..9ebc0e042c
--- /dev/null
+++ b/network/gnome-remote-desktop/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------------------------------------------------------|
+gnome-remote-desktop: gnome-remote-desktop (GNOME Remote Desktop)
+gnome-remote-desktop:
+gnome-remote-desktop: Remote desktop daemon for GNOME using pipewire.
+gnome-remote-desktop:
+gnome-remote-desktop:
+gnome-remote-desktop:
+gnome-remote-desktop:
+gnome-remote-desktop:
+gnome-remote-desktop:
+gnome-remote-desktop: https://gitlab.gnome.org/GNOME/gnome-remote-desktop
+gnome-remote-desktop:
diff --git a/network/gnome-shell-extension-gsconnect/README b/network/gnome-shell-extension-gsconnect/README
new file mode 100644
index 0000000000..dc471760fd
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/README
@@ -0,0 +1,8 @@
+The KDE Connect project allows devices to securely share content such
+as notifications and files as well as interactive features such as SMS
+messaging and remote input. The KDE Connect team maintains cross-desktop
+, Android and Sailfish applications as well as an interface for KDE
+Plasma. GSConnect is a complete implementation of KDE Connect especially
+for GNOME Shell with Nautilus, Chrome and Firefox integration. It is
+does not rely on the KDE Connect desktop application and will not work
+with it installed.
diff --git a/network/gnome-shell-extension-gsconnect/doinst.sh b/network/gnome-shell-extension-gsconnect/doinst.sh
new file mode 100644
index 0000000000..b123c0cd8d
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/doinst.sh
@@ -0,0 +1,14 @@
+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 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/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.SlackBuild b/network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.SlackBuild
new file mode 100644
index 0000000000..a9e2500549
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for gnome-shell-extension-gsconnect
+
+# Copyright 2022 Nathaniel Russell <naterussell83@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=gnome-shell-extension-gsconnect
+VERSION=${VERSION:-49}
+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.?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 build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dnemo=true \
+ -Dinstalled_tests=false \
+ -Dstrip=true
+ ninja
+ DESTDIR=$PKG ninja 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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CODE_OF_CONDUCT.md LICENSE RELEASE_CHECKLIST.md CONTRIBUTING.md README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+install -Dpm 0644 $CWD/nautilus-gsconnect.metainfo.xml -t $PKG/usr/share/metainfo/
+install -Dpm 0644 $CWD/nemo-gsconnect.metainfo.xml -t $PKG/usr/share/metainfo/
+
+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/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.info b/network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.info
new file mode 100644
index 0000000000..0d8d9020eb
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/gnome-shell-extension-gsconnect.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-shell-extension-gsconnect"
+VERSION="49"
+HOMEPAGE="https://github.com/GSConnect/gnome-shell-extension-gsconnect"
+DOWNLOAD="https://github.com/GSConnect/gnome-shell-extension-gsconnect/archive/v49/gnome-shell-extension-gsconnect-49.tar.gz"
+MD5SUM="7b5b45afd32309ecadecda39ad8e0d42"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="AppStream"
+MAINTAINER="Nathaniel Russell"
+EMAIL="naterussell83@gmail.com"
diff --git a/network/gnome-shell-extension-gsconnect/nautilus-gsconnect.metainfo.xml b/network/gnome-shell-extension-gsconnect/nautilus-gsconnect.metainfo.xml
new file mode 100644
index 0000000000..6d5ce240d1
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/nautilus-gsconnect.metainfo.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="addon">
+ <id>nautilus-gsconnect</id>
+ <extends>nautilus.desktop</extends>
+ <name>Nautilus extension for GSConnect</name>
+ <summary>Nautilus extension for GSConnect</summary>
+ <url type="homepage">https://github.com/andyholmes/gnome-shell-extension-gsconnect/</url>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>GPL-2.0-only</project_license>
+ <update_contact>melmorabity@fedoraproject.org</update_contact>
+</component>
diff --git a/network/gnome-shell-extension-gsconnect/nemo-gsconnect.metainfo.xml b/network/gnome-shell-extension-gsconnect/nemo-gsconnect.metainfo.xml
new file mode 100644
index 0000000000..f5743e712d
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/nemo-gsconnect.metainfo.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="addon">
+ <id>nemo-gsconnect</id>
+ <extends>nemo.desktop</extends>
+ <name>Nemo extension for GSConnect</name>
+ <summary>Nemo extension for GSConnect</summary>
+ <url type="homepage">https://github.com/andyholmes/gnome-shell-extension-gsconnect/</url>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>GPL-2.0-only</project_license>
+ <update_contact>melmorabity@fedoraproject.org</update_contact>
+</component>
diff --git a/network/gnome-shell-extension-gsconnect/slack-desc b/network/gnome-shell-extension-gsconnect/slack-desc
new file mode 100644
index 0000000000..abd364a514
--- /dev/null
+++ b/network/gnome-shell-extension-gsconnect/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------------------------------------------------------|
+gnome-shell-extension-gsconnect: gnome-shell-extension-gsconnect ( SMS messaging )
+gnome-shell-extension-gsconnect:
+gnome-shell-extension-gsconnect: GSConnect is a complete implementation of KDE Connect especially for
+gnome-shell-extension-gsconnect: GNOME Shell with Nautilus, Chrome and Firefox integration.
+gnome-shell-extension-gsconnect: It is does not rely on the KDE Connect desktop application and will
+gnome-shell-extension-gsconnect: not work with it installed.
+gnome-shell-extension-gsconnect:
+gnome-shell-extension-gsconnect:
+gnome-shell-extension-gsconnect: https://gitlab.com/arcmenu/ArcMenu
+gnome-shell-extension-gsconnect:
+gnome-shell-extension-gsconnect:
diff --git a/network/gnome-user-share/README b/network/gnome-user-share/README
new file mode 100644
index 0000000000..b153632230
--- /dev/null
+++ b/network/gnome-user-share/README
@@ -0,0 +1,22 @@
+gnome-user-share is a small package that binds together various free
+software projects to bring easy to use user-level file sharing to the
+masses.
+
+The program is meant to run in the background when the user is logged
+in, and when file sharing is enabled a webdav server is started that
+shares the $HOME/Public folder. The share is then published to all
+computers on the local network using mDNS/rendezvous, so that it shows
+up in the Network location in Gnome.
+
+The dav server used is apache, so you need that installed. Avahi or
+Howl is used for mDNS support, so you need to have that installed and
+mDNSResolver running.
+
+Note: On Slackware the gnome-user-share daemon must be started and
+stopped manually. There are controls to start/stop the daemon in the
+gnome-control-center "Sharing" panel, but these controls are hard-coded
+to talk to systemd and will not start/stop the daemon. Instead, the
+daemon can be run directly from its installed path of:
+
+ /usr/libexec/gnome-user-share-webdav
+
diff --git a/network/gnome-user-share/doinst.sh b/network/gnome-user-share/doinst.sh
new file mode 100644
index 0000000000..f6a6676883
--- /dev/null
+++ b/network/gnome-user-share/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 [ -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/gnome-user-share/gnome-user-share.SlackBuild b/network/gnome-user-share/gnome-user-share.SlackBuild
new file mode 100644
index 0000000000..a4980fdf6e
--- /dev/null
+++ b/network/gnome-user-share/gnome-user-share.SlackBuild
@@ -0,0 +1,114 @@
+#!/bin/bash
+
+# Slackware build script for gnome-user-share
+
+# Copyright 2023, Bob Funk, Winnipeg Canada
+# 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=gnome-user-share
+VERSION=${VERSION:-3.34.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"
+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 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dsystemduserunitdir=no \
+ -Dmodules_path=/usr/lib${LIBDIRSUFFIX}/httpd/modules \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ 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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING ChangeLog.pre-git MAINTAINERS NEWS README \
+ $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/gnome-user-share/gnome-user-share.info b/network/gnome-user-share/gnome-user-share.info
new file mode 100644
index 0000000000..e543dc1adb
--- /dev/null
+++ b/network/gnome-user-share/gnome-user-share.info
@@ -0,0 +1,10 @@
+PRGNAM="gnome-user-share"
+VERSION="3.34.0"
+HOMEPAGE="https://gitlab.gnome.org/GNOME/gnome-user-share"
+DOWNLOAD="https://download.gnome.org/core/41/41.8/sources/gnome-user-share-3.34.0.tar.xz"
+MD5SUM="a3d983d0cf8357832229ff96172418d8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="nautilus mod_dnssd"
+MAINTAINER="Bob Funk"
+EMAIL="bobfunk11@gmail.com"
diff --git a/network/gnome-user-share/slack-desc b/network/gnome-user-share/slack-desc
new file mode 100644
index 0000000000..0c7548433c
--- /dev/null
+++ b/network/gnome-user-share/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------------------------------------------------------|
+gnome-user-share: gnome-user-share (User level file sharing)
+gnome-user-share:
+gnome-user-share: gnome-user-share is a small package that binds together various free
+gnome-user-share: software projects to bring easy to use user-level file sharing to the
+gnome-user-share: masses.
+gnome-user-share:
+gnome-user-share: This is part of the GNOME core distribution.
+gnome-user-share:
+gnome-user-share:
+gnome-user-share: https://gitlab.gnome.org/GNOME/gnome-user-share
+gnome-user-share:
diff --git a/network/go-sendxmpp/go-sendxmpp.SlackBuild b/network/go-sendxmpp/go-sendxmpp.SlackBuild
index cbd620db5a..1f5aeb9936 100644
--- a/network/go-sendxmpp/go-sendxmpp.SlackBuild
+++ b/network/go-sendxmpp/go-sendxmpp.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for go-sendxmpp
-# Copyright 2022, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2022-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=go-sendxmpp
-VERSION=${VERSION:-0.5.4}
+VERSION=${VERSION:-0.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,9 +76,10 @@ for DIR in $(grep -o "^# .* " vendor/modules.txt | cut -d' ' -f2)
do
NAME=$(echo $DIR | sed 's/[./]v[0-9]\+$//' | xargs basename)
DIR=vendor/$DIR
- tar xvf $CWD/$NAME-*.tar.gz
+ find -L $CWD -maxdepth 1 -type f -regex ".*/${NAME}-[^-]*\.tar\.gz" \
+ -exec tar xvf '{}' \;
mkdir -p $(dirname $DIR)
- mv $NAME-* $DIR
+ mv ${NAME}-* $DIR
done
chown -R root:root .
@@ -90,7 +91,7 @@ find -L . \
CGO_CFLAGS="$SLKCFLAGS" \
CGO_CXXFLAGS="$SLKCFLAGS" \
-go build -mod vendor
+go build
install -sDm 0755 go-sendxmpp -t $PKG/usr/bin
diff --git a/network/go-sendxmpp/go-sendxmpp.info b/network/go-sendxmpp/go-sendxmpp.info
index 6431c6c6f1..779364bf48 100644
--- a/network/go-sendxmpp/go-sendxmpp.info
+++ b/network/go-sendxmpp/go-sendxmpp.info
@@ -1,36 +1,38 @@
PRGNAM="go-sendxmpp"
-VERSION="0.5.4"
+VERSION="0.10.0"
HOMEPAGE="https://salsa.debian.org/mdosch/go-sendxmpp"
-DOWNLOAD="https://salsa.debian.org/mdosch/go-sendxmpp/-/archive/v0.5.4/go-sendxmpp-v0.5.4.tar.gz \
- https://github.com/ProtonMail/go-crypto/archive/4b6e5c5/go-crypto-4b6e5c58789592be5b16c8b1a00d2b765a2e7dc8.tar.gz \
- https://github.com/ProtonMail/go-mime/archive/2192574/go-mime-2192574d760f1c639dee6a41684ba0ae4058a0f7.tar.gz \
- https://github.com/ProtonMail/gopenpgp/archive/v2.4.10/gopenpgp-2.4.10.tar.gz \
- https://github.com/beevik/etree/archive/v1.1.0/etree-1.1.0.tar.gz \
- https://github.com/cloudflare/circl/archive/v1.2.0/circl-1.2.0.tar.gz \
- https://github.com/gabriel-vasile/mimetype/archive/v1.4.1/mimetype-1.4.1.tar.gz \
- https://github.com/mattn/go-xmpp/archive/2eb2349/go-xmpp-2eb234970ce7a393713f8bf08ebf94b569219b32.tar.gz \
- https://github.com/pborman/getopt/archive/v2.1.0/getopt-2.1.0.tar.gz \
- https://github.com/pkg/errors/archive/v0.9.1/errors-0.9.1.tar.gz \
- https://github.com/golang/crypto/archive/eccd636/crypto-eccd6366d1be82f8df741718dcdd586eea618221.tar.gz \
- https://github.com/golang/net/archive/f486391/net-f486391704dcfa95dab69d779cb1574e3c1f7db1.tar.gz \
- https://github.com/golang/sys/archive/f11e5e4/sys-f11e5e49a4ec85883999349b0dc6373df034397b.tar.gz \
- https://github.com/golang/text/archive/v0.3.7/text-0.3.7.tar.gz \
- https://salsa.debian.org/mdosch/xmppsrv/-/archive/v0.2.4/xmppsrv-v0.2.4.tar.gz"
-MD5SUM="df11682da5b7a91d8beccc8783d88caf \
- 0a078cecae13a9e2db294e8240bab7ec \
- f9748048e91aed589f90843e1958c291 \
- d7ddd770e1d2a25703fb7e3a8ea416e6 \
- 642a97129410b7213645f83a13e81f06 \
- 075354b670832ffb3efd57e735478342 \
- b4721c84331d452b14bf4607eef02fc9 \
- 335c67d28689b1859f0e1336cd7a4f09 \
+DOWNLOAD="https://salsa.debian.org/mdosch/go-sendxmpp/-/archive/v0.10.0/go-sendxmpp-v0.10.0.tar.gz \
+ https://github.com/ProtonMail/go-crypto/archive/v1.0.0/go-crypto-v1.0.0.tar.gz \
+ https://github.com/ProtonMail/go-mime/archive/7d82a38/go-mime-7d82a3887f2f.tar.gz \
+ https://github.com/ProtonMail/gopenpgp/archive/v2.7.5/gopenpgp-v2.7.5.tar.gz \
+ https://github.com/beevik/etree/archive/v1.3.0/etree-v1.3.0.tar.gz \
+ https://github.com/cloudflare/circl/archive/v1.3.7/circl-v1.3.7.tar.gz \
+ https://github.com/gabriel-vasile/mimetype/archive/v1.4.3/mimetype-v1.4.3.tar.gz \
+ https://github.com/google/uuid/archive/v1.6.0/uuid-v1.6.0.tar.gz \
+ https://github.com/pborman/getopt/archive/v2.1.0/getopt-v2.1.0.tar.gz \
+ https://github.com/pkg/errors/archive/v0.9.1/errors-v0.9.1.tar.gz \
+ https://github.com/xmppo/go-xmpp/archive/v0.2.0/go-xmpp-v0.2.0.tar.gz \
+ https://github.com/golang/crypto/archive/v0.22.0/crypto-v0.22.0.tar.gz \
+ https://github.com/golang/net/archive/v0.24.0/net-v0.24.0.tar.gz \
+ https://github.com/golang/sys/archive/v0.19.0/sys-v0.19.0.tar.gz \
+ https://github.com/golang/text/archive/v0.14.0/text-v0.14.0.tar.gz \
+ https://salsa.debian.org/mdosch/xmppsrv/-/archive/v0.2.6/xmppsrv-v0.2.6.tar.gz"
+MD5SUM="ebd8bd70ba52404eab0337d82396f1c8 \
+ 207b3050d2cdc7c5bcc8242728fb7c68 \
+ a6ae51724981dd98d1564dba0df3979a \
+ de949ecba9611996b8b1bce236f3ffab \
+ bcc3bfd5bf559f4d4286d43302d1fda0 \
+ c74011ad16e17b92a496716febc60d33 \
+ de49151a4ae6474bb08145b0e9c67288 \
+ 62b4a8921dd78aa37017b32cbeef6810 \
c52d24206b9fe29454e909a6ecbefe99 \
0951216925c98fda75a484a528b06af6 \
- 58e81859116701eabc4d26cf0b8f1068 \
- 9c247f66f73b5fff22180058841620e5 \
- 19fb389eec9c0164bc03801dee5c5fd8 \
- efe2f974b42f7b0421edc8216aa7fef2 \
- 6e22ba8ce66ce1196b6a7423d6dc6820"
+ cb68dc02e1661876036b744ed2665941 \
+ 7a39f9ef8557b95982b03e427a3e37f1 \
+ e68c5bc7f073c98d64831b95d210474f \
+ 884f364735b00bb72fcea01a6de28c46 \
+ 9f64144d4b1647ce4597abf657028a8d \
+ e8e409d942149234a415c1299ebedb52"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="google-go-lang"
diff --git a/network/go-sendxmpp/modules.txt b/network/go-sendxmpp/modules.txt
index e2adf5197f..dc10d5ba3b 100644
--- a/network/go-sendxmpp/modules.txt
+++ b/network/go-sendxmpp/modules.txt
@@ -1,5 +1,5 @@
-# github.com/ProtonMail/go-crypto v0.0.0-20220824120805-4b6e5c587895
-## explicit
+# github.com/ProtonMail/go-crypto v1.0.0
+## explicit; go 1.13
github.com/ProtonMail/go-crypto/bitcurves
github.com/ProtonMail/go-crypto/brainpool
github.com/ProtonMail/go-crypto/eax
@@ -19,20 +19,20 @@ github.com/ProtonMail/go-crypto/openpgp/internal/ecc
github.com/ProtonMail/go-crypto/openpgp/internal/encoding
github.com/ProtonMail/go-crypto/openpgp/packet
github.com/ProtonMail/go-crypto/openpgp/s2k
-# github.com/ProtonMail/go-mime v0.0.0-20220429130430-2192574d760f
-## explicit
+# github.com/ProtonMail/go-mime v0.0.0-20230322103455-7d82a3887f2f
+## explicit; go 1.12
github.com/ProtonMail/go-mime
-# github.com/ProtonMail/gopenpgp/v2 v2.4.10
-## explicit
+# github.com/ProtonMail/gopenpgp/v2 v2.7.5
+## explicit; go 1.15
github.com/ProtonMail/gopenpgp/v2/armor
github.com/ProtonMail/gopenpgp/v2/constants
github.com/ProtonMail/gopenpgp/v2/crypto
github.com/ProtonMail/gopenpgp/v2/internal
-# github.com/beevik/etree v1.1.0
-## explicit
+# github.com/beevik/etree v1.3.0
+## explicit; go 1.13
github.com/beevik/etree
-# github.com/cloudflare/circl v1.2.0
-## explicit
+# github.com/cloudflare/circl v1.3.7
+## explicit; go 1.19
github.com/cloudflare/circl/dh/x25519
github.com/cloudflare/circl/dh/x448
github.com/cloudflare/circl/ecc/goldilocks
@@ -45,33 +45,44 @@ github.com/cloudflare/circl/math/mlsbset
github.com/cloudflare/circl/sign
github.com/cloudflare/circl/sign/ed25519
github.com/cloudflare/circl/sign/ed448
-# github.com/gabriel-vasile/mimetype v1.4.1
-## explicit
+# github.com/gabriel-vasile/mimetype v1.4.3
+## explicit; go 1.20
github.com/gabriel-vasile/mimetype
github.com/gabriel-vasile/mimetype/internal/charset
github.com/gabriel-vasile/mimetype/internal/json
github.com/gabriel-vasile/mimetype/internal/magic
-# github.com/mattn/go-xmpp v0.0.0-20220712221724-2eb234970ce7
+# github.com/google/uuid v1.6.0
## explicit
-github.com/mattn/go-xmpp
+github.com/google/uuid
# github.com/pborman/getopt/v2 v2.1.0
-## explicit
+## explicit; go 1.13
github.com/pborman/getopt/v2
# github.com/pkg/errors v0.9.1
## explicit
github.com/pkg/errors
-# golang.org/x/crypto v0.0.0-20220926161630-eccd6366d1be
-## explicit
+# github.com/xmppo/go-xmpp v0.2.0
+## explicit; go 1.21.5
+github.com/xmppo/go-xmpp
+# golang.org/x/crypto v0.22.0
+## explicit; go 1.18
+golang.org/x/crypto/argon2
+golang.org/x/crypto/blake2b
golang.org/x/crypto/cast5
-# golang.org/x/net v0.0.0-20220927171203-f486391704dc
-## explicit
+golang.org/x/crypto/hkdf
+golang.org/x/crypto/pbkdf2
+golang.org/x/crypto/scrypt
+golang.org/x/crypto/sha3
+# golang.org/x/net v0.24.0
+## explicit; go 1.18
golang.org/x/net/html
golang.org/x/net/html/atom
-# golang.org/x/sys v0.0.0-20220928140112-f11e5e49a4ec
-## explicit
+golang.org/x/net/internal/socks
+golang.org/x/net/proxy
+# golang.org/x/sys v0.19.0
+## explicit; go 1.18
golang.org/x/sys/cpu
-# golang.org/x/text v0.3.7
-## explicit
+# golang.org/x/text v0.14.0
+## explicit; go 1.18
golang.org/x/text/encoding
golang.org/x/text/encoding/charmap
golang.org/x/text/encoding/htmlindex
@@ -89,6 +100,6 @@ golang.org/x/text/internal/utf8internal
golang.org/x/text/language
golang.org/x/text/runes
golang.org/x/text/transform
-# salsa.debian.org/mdosch/xmppsrv v0.2.4
-## explicit
+# salsa.debian.org/mdosch/xmppsrv v0.2.6
+## explicit; go 1.16
salsa.debian.org/mdosch/xmppsrv
diff --git a/network/gofiche/gofiche.info b/network/gofiche/gofiche.info
index be0e5683f2..b74339669c 100644
--- a/network/gofiche/gofiche.info
+++ b/network/gofiche/gofiche.info
@@ -6,5 +6,5 @@ MD5SUM="ffd4be08dca177c5f098d176ed85ed2b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/goimapnotify/go.mod b/network/goimapnotify/go.mod
new file mode 100644
index 0000000000..7dd7616515
--- /dev/null
+++ b/network/goimapnotify/go.mod
@@ -0,0 +1,15 @@
+module gitlab.com/shackra/goimapnotify
+
+go 1.21.6
+
+require (
+ github.com/emersion/go-imap v1.2.1
+ github.com/emersion/go-imap-idle v0.0.0-20210907174914-db2568431445
+ github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43
+ github.com/sirupsen/logrus v1.9.3
+)
+
+require (
+ golang.org/x/sys v0.18.0 // indirect
+ golang.org/x/text v0.14.0 // indirect
+)
diff --git a/network/goimapnotify/go.sum b/network/goimapnotify/go.sum
new file mode 100644
index 0000000000..b58b347ff4
--- /dev/null
+++ b/network/goimapnotify/go.sum
@@ -0,0 +1,39 @@
+github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
+github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
+github.com/emersion/go-imap v1.0.6/go.mod h1:yKASt+C3ZiDAiCSssxg9caIckWF/JG7ZQTO7GAmvicU=
+github.com/emersion/go-imap v1.2.1 h1:+s9ZjMEjOB8NzZMVTM3cCenz2JrQIGGo5j1df19WjTA=
+github.com/emersion/go-imap v1.2.1/go.mod h1:Qlx1FSx2FTxjnjWpIlVNEuX+ylerZQNFE5NsmKFSejY=
+github.com/emersion/go-imap-idle v0.0.0-20210907174914-db2568431445 h1:dAGbaaU4LLupO7dnYZaELOoI3RoVDNi5DCGejLe8a7c=
+github.com/emersion/go-imap-idle v0.0.0-20210907174914-db2568431445/go.mod h1:N/6S3dRTVt8xT867m+476C16+v/Fq4WZYvh2Chg0nmg=
+github.com/emersion/go-message v0.11.1/go.mod h1:C4jnca5HOTo4bGN9YdqNQM9sITuT3Y0K6bSUw9RklvY=
+github.com/emersion/go-message v0.15.0 h1:urgKGqt2JAc9NFJcgncQcohHdiYb803YTH9OQwHBHIY=
+github.com/emersion/go-message v0.15.0/go.mod h1:wQUEfE+38+7EW8p8aZ96ptg6bAb1iwdgej19uXASlE4=
+github.com/emersion/go-sasl v0.0.0-20191210011802-430746ea8b9b/go.mod h1:G/dpzLu16WtQpBfQ/z3LYiYJn3ZhKSGWn83fyoyQe/k=
+github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21/go.mod h1:iL2twTeMvZnrg54ZoPDNfJaJaqy0xIQFuBdrLsmspwQ=
+github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43 h1:hH4PQfOndHDlpzYfLAAfl63E8Le6F2+EL/cdhlkyRJY=
+github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43/go.mod h1:iL2twTeMvZnrg54ZoPDNfJaJaqy0xIQFuBdrLsmspwQ=
+github.com/emersion/go-textwrapper v0.0.0-20160606182133-d0e65e56babe/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
+github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594 h1:IbFBtwoTQyw0fIM5xv1HF+Y+3ZijDR839WMulgxCcUY=
+github.com/emersion/go-textwrapper v0.0.0-20200911093747-65d896831594/go.mod h1:aqO8z8wPrjkscevZJFVE1wXJrLpC5LtJG7fqLOsPb2U=
+github.com/martinlindhe/base36 v1.0.0/go.mod h1:+AtEs8xrBpCeYgSLoY/aJ6Wf37jtBuR0s35750M27+8=
+github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
+github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
+github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
+github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
+github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
+github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
+github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
+golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
+golang.org/x/sys v0.18.0 h1:DBdB3niSjOA/O0blCZBqDefyWNYveAYMNF1Wum0DYQ4=
+golang.org/x/sys v0.18.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
+golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
+golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
+golang.org/x/text v0.14.0 h1:ScX5w1eTa3QqT8oi6+ziP7dTV1S2+ALU0bI+0zXKWiQ=
+golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
+golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
+gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=
+gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/network/goimapnotify/goimapnotify.SlackBuild b/network/goimapnotify/goimapnotify.SlackBuild
index 3dc76eb4a5..4f84f8f0b9 100644
--- a/network/goimapnotify/goimapnotify.SlackBuild
+++ b/network/goimapnotify/goimapnotify.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for goimapnotify
-# Copyright 2022 Alexander Verbovetsky Moscow Russia
+# Copyright 2022-2024 Alexander Verbovetsky Moscow Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=goimapnotify
-VERSION=${VERSION:-2.3.7}
+VERSION=${VERSION:-2.3.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,15 +70,17 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+cat $CWD/go.mod > go.mod
+cat $CWD/go.sum > go.sum
mkdir -p vendor
cat $CWD/modules.txt > vendor/modules.txt
for DIR in $(grep -o "^# .* " vendor/modules.txt | cut -d' ' -f2)
do
- NAME=$(basename $DIR)
- NAME=${NAME%.*}
+ NAME=$(echo $DIR | sed 's/[./]v[0-9]\+$//' | xargs basename)
DIR=vendor/$DIR
+ find -L $CWD -maxdepth 1 -type f -regex ".*/${NAME}-[^-]*\.tar\.gz" \
+ -exec tar xvf '{}' \;
mkdir -p $(dirname $DIR)
- find -L $CWD -type f -regex ".*/${NAME}-[^-]*\.tar\.gz" -exec tar xvf {} \;
mv ${NAME}-* $DIR
done
@@ -89,13 +91,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 {} \;
-[ -z "$GOROOT" ] && source /etc/profile.d/go.sh
-
CGO_CFLAGS="$SLKCFLAGS" \
CGO_CXXFLAGS="$SLKCFLAGS" \
go build
-install -sDm 755 goimapnotify $PKG/usr/bin/goimapnotify
+install -sDm 755 goimapnotify -t $PKG/usr/bin
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CHANGELOG.rst README.md $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/goimapnotify/goimapnotify.info b/network/goimapnotify/goimapnotify.info
index 63c0537dd9..d28f3389f0 100644
--- a/network/goimapnotify/goimapnotify.info
+++ b/network/goimapnotify/goimapnotify.info
@@ -1,24 +1,20 @@
PRGNAM="goimapnotify"
-VERSION="2.3.7"
+VERSION="2.3.12"
HOMEPAGE="https://gitlab.com/shackra/goimapnotify"
-DOWNLOAD="https://gitlab.com/shackra/goimapnotify/-/archive/2.3.7/goimapnotify-2.3.7.tar.gz \
- https://github.com/emersion/go-imap/archive/b7db4a2/go-imap-b7db4a2bc5cc04fb568fb036a438da43ee9a9f78.tar.gz \
- https://github.com/emersion/go-imap-idle/archive/2af9377/go-imap-idle-2af93776db6b042cc1116b0d0af00d7f58eea696.tar.gz \
- https://github.com/emersion/go-sasl/archive/7bfe0ed/go-sasl-7bfe0ed36a210245143572d8f52f41485cbf57e1.tar.gz \
- https://github.com/sirupsen/logrus/archive/v1.8.1/logrus-1.8.1.tar.gz \
- https://github.com/stretchr/testify/archive/v1.7.0/testify-1.7.0.tar.gz \
- https://github.com/golang/sys/archive/39ccf1d/sys-39ccf1dd6fa64b525e017b629b9a83409d294c7e.tar.gz \
- https://github.com/golang/text/archive/v0.3.2/text-0.3.2.tar.gz \
- https://github.com/go-yaml/yaml/archive/496545a/yaml-496545a6307b2a7d7a710fd516e5e16e8ab62dbc.tar.gz"
-MD5SUM="a036ab0a34b0b3215ee304c79c24eb96 \
- 61a83dd25e83c4bd81369353200b83d6 \
- a17401f5e2c4ef0678b70bbc42e97b2e \
- 4f12c474fd396d64b3b37f5977a4da2b \
- 8fdbcd94e87390b3cbaeacd054196c05 \
- 5d04ceccdea0a91310fee95b63d8e1f6 \
- d26dd3d3fa7247d88a89d7268bb876c5 \
- 5c3d2e3c8af2436fea967042a9623ba1 \
- 11c0a4ee0531d35936af883fa7d0089a"
+DOWNLOAD="https://gitlab.com/shackra/goimapnotify/-/archive/2.3.12/goimapnotify-2.3.12.tar.gz \
+ https://github.com/emersion/go-imap/archive/v1.2.1/go-imap-v1.2.1.tar.gz \
+ https://github.com/emersion/go-imap-idle/archive/db25684/go-imap-idle-db2568431445.tar.gz \
+ https://github.com/emersion/go-sasl/archive/e73c9f7/go-sasl-e73c9f7bad43.tar.gz \
+ https://github.com/sirupsen/logrus/archive/v1.9.3/logrus-v1.9.3.tar.gz \
+ https://github.com/golang/sys/archive/v0.18.0/sys-v0.18.0.tar.gz \
+ https://github.com/golang/text/archive/v0.14.0/text-v0.14.0.tar.gz"
+MD5SUM="ace5c852d7c851e4cb9da3f4c576bba9 \
+ 337ec4e15b3b9435bec02d0b4c634797 \
+ 0c60834c277747653bf1d883ac7660b2 \
+ efc2190ae65129b3e2531a9258181e98 \
+ 29e75bd7c106e1853d2a9de8bd17dbb0 \
+ e00453d8847cde61907bcbee219c44bb \
+ 9f64144d4b1647ce4597abf657028a8d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="google-go-lang"
diff --git a/network/goimapnotify/modules.txt b/network/goimapnotify/modules.txt
index 9c3d13f082..0429696a1f 100644
--- a/network/goimapnotify/modules.txt
+++ b/network/goimapnotify/modules.txt
@@ -1,5 +1,5 @@
-# github.com/emersion/go-imap v1.0.0-beta.4.0.20190414203716-b7db4a2bc5cc
-## explicit
+# github.com/emersion/go-imap v1.2.1
+## explicit; go 1.13
github.com/emersion/go-imap
github.com/emersion/go-imap/backend
github.com/emersion/go-imap/client
@@ -7,26 +7,21 @@ github.com/emersion/go-imap/commands
github.com/emersion/go-imap/responses
github.com/emersion/go-imap/server
github.com/emersion/go-imap/utf7
-# github.com/emersion/go-imap-idle v0.0.0-20180114101550-2af93776db6b
-## explicit
+# github.com/emersion/go-imap-idle v0.0.0-20210907174914-db2568431445
+## explicit; go 1.13
github.com/emersion/go-imap-idle
-# github.com/emersion/go-sasl v0.0.0-20200509203442-7bfe0ed36a21
-## explicit
+# github.com/emersion/go-sasl v0.0.0-20231106173351-e73c9f7bad43
+## explicit; go 1.12
github.com/emersion/go-sasl
-# github.com/sirupsen/logrus v1.8.1
-## explicit
+# github.com/sirupsen/logrus v1.9.3
+## explicit; go 1.13
github.com/sirupsen/logrus
-# github.com/stretchr/testify v1.7.0
-## explicit
-# golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6
-## explicit
-golang.org/x/sys/internal/unsafeheader
+# golang.org/x/sys v0.18.0
+## explicit; go 1.18
golang.org/x/sys/unix
golang.org/x/sys/windows
-# golang.org/x/text v0.3.2
-## explicit
+# golang.org/x/text v0.14.0
+## explicit; go 1.18
golang.org/x/text/encoding
golang.org/x/text/encoding/internal/identifier
golang.org/x/text/transform
-# gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b
-## explicit
diff --git a/network/graphite-carbon/README b/network/graphite-carbon/README
deleted file mode 100644
index 0a52e243cc..0000000000
--- a/network/graphite-carbon/README
+++ /dev/null
@@ -1,9 +0,0 @@
-graphite-carbon (Backend caching/persistence daemon for Graphite)
-
-Graphite is a web application using the Twisted framework to provide
-real-time visualization and storage of numeric time-series data.
-The Carbon daemon processes the incoming time-series data and saves it
-as Whisper database files.
-
-See README.SLACKWARE (which is also installed with the package docs) for
-setup, configuration, and usage hints.
diff --git a/network/graphite-carbon/README.SLACKWARE b/network/graphite-carbon/README.SLACKWARE
deleted file mode 100644
index 0f97aacb9f..0000000000
--- a/network/graphite-carbon/README.SLACKWARE
+++ /dev/null
@@ -1,15 +0,0 @@
-You may wish to add these lines to /etc/rc.d/rc.local to start the service:
-
-if [ -x /etc/rc.d/rc.carbon-cache ]; then
- /etc/rc.d/rc.carbon-cache start
-fi
-
-You may also add these lines to /etc/rc.d/rc.local_shutdown:
-
-if [ -x /etc/rc.d/rc.carbon-cache ]; then
- /etc/rc.d/rc.carbon-cache stop
-fi
-
-Remember to give executable permission to /etc/rc.d/rc.local_shutdown:
-
- chmod 0755 /etc/rc.d/rc.local_shutdown
diff --git a/network/graphite-carbon/graphite-carbon.SlackBuild b/network/graphite-carbon/graphite-carbon.SlackBuild
deleted file mode 100644
index 9440647962..0000000000
--- a/network/graphite-carbon/graphite-carbon.SlackBuild
+++ /dev/null
@@ -1,144 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for graphite-carbon
-
-# Copyright 2015 Mario Preksavec, Zagreb, Croatia
-# 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=graphite-carbon
-VERSION=${VERSION:-0.9.15}
-BUILD=${BUILD:-1}
-TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYPE:-tgz}
-
-SRCNAM=carbon
-
-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
-
-# Bail if user or group isn't valid on your system
-if ! grep ^graphite: /etc/passwd 2>&1 > /dev/null; then
-
-cat << EOF
-
- You must have graphite user and a group to run this script
-
- # groupadd -g 299 graphite
- # useradd -u 299 -d /var/lib/graphite -s /bin/false -g graphite graphite
-
-EOF
-
- exit
-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 {} \;
-
-# Set some sane defaults
-patch -p1 <$CWD/patches/carbon.conf.example.diff
-# We don't have a RedHat system
-patch -p1 <$CWD/patches/setup.cfg.diff
-# Look for config file in /etc/carbon
-patch -p1 <$CWD/patches/validate-storage-schemas.py.diff
-
-python2 setup.py install --root=$PKG
-
-# Need some dirs
-mkdir -p $PKG/etc/{rc.d,logrotate.d} $PKG/var/{lib/graphite/whisper,log/carbon}
-chown -R graphite:graphite $PKG/var/lib/graphite $PKG/var/log/carbon
-
-# Install rc script
-install -D -m0644 -oroot -groot $CWD/rc.carbon-cache \
- $PKG/etc/rc.d/rc.carbon-cache.new
-
-# Logrotate script
-install -D -m0644 -oroot -groot $CWD/graphite-carbon.logrotate \
- $PKG/etc/logrotate.d/graphite-carbon.new
-
-# Configuration goes into /etc/carbon
-mv $PKG/usr/conf $PKG/etc/carbon
-for i in $PKG/etc/carbon/*.example ; do mv $i ${i/.example/.new} ; done
-
-# Do we really want .py suffix in /usr/bin
-for i in $PKG/usr/bin/*.py ; do mv $i ${i/.py/} ; done
-
-# Cruft removal
-rm -rf $PKG/usr/{storage,examples}
-
-# Manpages thanks to Debian folks!
-mkdir -p $PKG/usr/man
-cp -r $CWD/man1 $PKG/usr/man
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE $CWD/README.SLACKWARE $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/graphite-carbon/graphite-carbon.info b/network/graphite-carbon/graphite-carbon.info
deleted file mode 100644
index d828fcdcd7..0000000000
--- a/network/graphite-carbon/graphite-carbon.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="graphite-carbon"
-VERSION="0.9.15"
-HOMEPAGE="https://github.com/graphite-project/"
-DOWNLOAD="https://github.com/graphite-project/carbon/archive/0.9.15/carbon-0.9.15.tar.gz"
-MD5SUM="1962b92b8b672b33d99b00c303fdd5aa"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python2-whisper python2-twisted"
-MAINTAINER="Mario Preksavec"
-EMAIL="mario at slackware dot hr"
diff --git a/network/graphite-carbon/graphite-carbon.logrotate b/network/graphite-carbon/graphite-carbon.logrotate
deleted file mode 100644
index 7b769425a8..0000000000
--- a/network/graphite-carbon/graphite-carbon.logrotate
+++ /dev/null
@@ -1,13 +0,0 @@
-/var/log/carbon/*.log {
- weekly
- missingok
- rotate 7
- compress
- delaycompress
- notifempty
- create 644 graphite graphite
- sharedscripts
- postrotate
- /etc/rc.d/rc.carbon-cache restart > /dev/null
- endscript
-}
diff --git a/network/graphite-carbon/man1/carbon-aggregator.1 b/network/graphite-carbon/man1/carbon-aggregator.1
deleted file mode 100644
index a8ab95294d..0000000000
--- a/network/graphite-carbon/man1/carbon-aggregator.1
+++ /dev/null
@@ -1,56 +0,0 @@
-.TH CARBON-AGGREGATOR 1
-.SH NAME
-carbon-aggregator \- buffer metrics over time before reporting to carbon-cache
-.SH SYNOPSYS
-.nf
-.fam C
-\fbcarbon-aggregator\fP [options] start
-.fam T
-.fi
-.SH DESCRIPTION
-carbon-aggregator can be run in front of carbon-cache to buffer metrics over
-time before reporting them into whisper.
-.PP
-The options are described below.
-.SH OPTIONS
-.TP
-.B
-\-h, \-\-help
-Show the embedded help.
-.TP
-.B
-\-\-debug
-Run in the foreground, log to stdout
-.TP
-.B
-\-\-profile=PROFILE
-Record performance profile data to the given file
-.TP
-.B
-\-\-pidfile=PIDFILE
-Write pid to the given file
-.TP
-.B
-\-\-config=CONFIG
-Use the given config file
-.TP
-.B
-\-\-logdir=LOGDIR
-Write logs in the given directory
-.TP
-.B
-\-\-instance=INSTANCE
-Manage a specific carbon instance
-.TP
-.B
-\-\-rules=RULES
-Use the given aggregation rules file.
-.TP
-.B
-\-\-rewrite-rules=REWRITE_RULES
-Use the given rewrite rules file.
-.SH AUTHOR
-\fBcarbon-aggregator\fP, created by Chris Davis.
-.PP
-This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
-the Debian project (but may be used by others).
diff --git a/network/graphite-carbon/man1/carbon-cache.1 b/network/graphite-carbon/man1/carbon-cache.1
deleted file mode 100644
index 39174d7449..0000000000
--- a/network/graphite-carbon/man1/carbon-cache.1
+++ /dev/null
@@ -1,50 +0,0 @@
-.TH CARBON-CACHE 1
-.SH NAME
-carbon-cache \- accepts metrics over various protocols and writes them to disk
-.SH SYNOPSYS
-.nf
-.fam C
-\fbcarbon-cache\fP [options] start
-.fam T
-.fi
-.SH DESCRIPTION
-carbon-cache accepts metrics over various protocols and writes them to disk as
-efficiently as possible. This requires caching metric values in RAM as they are
-received, and flushing them to disk on an interval using the underlying
-whisper library.
-.PP
-The options are described below.
-.SH OPTIONS
-.TP
-.B
-\-h, \-\-help
-Show the embedded help.
-.TP
-.B
-\-\-debug
-Run in the foreground, log to stdout
-.TP
-.B
-\-\-profile=PROFILE
-Record performance profile data to the given file
-.TP
-.B
-\-\-pidfile=PIDFILE
-Write pid to the given file
-.TP
-.B
-\-\-config=CONFIG
-Use the given config file
-.TP
-.B
-\-\-logdir=LOGDIR
-Write logs in the given directory
-.TP
-.B
-\-\-instance=INSTANCE
-Manage a specific carbon instance
-.SH AUTHOR
-\fBcarbon-cache\fP, created by Chris Davis.
-.PP
-This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
-the Debian project (but may be used by others).
diff --git a/network/graphite-carbon/man1/carbon-client.1 b/network/graphite-carbon/man1/carbon-client.1
deleted file mode 100644
index d954d4158f..0000000000
--- a/network/graphite-carbon/man1/carbon-client.1
+++ /dev/null
@@ -1,43 +0,0 @@
-.TH CARBON-CLIENT 1
-.SH NAME
-carbon-client \- Graphite client to reroute carbon data
-.SH SYNOPSYS
-.nf
-.fam C
-\fbcarbon-client\fP [options]
-.fam T
-.fi
-.SH DESCRIPTION
-Graphite client to reroute carbon data
-.PP
-The options are described below.
-.SH OPTIONS
-.TP
-.B
-\-h, \-\-help
-Show the embedded help.
-.TP
-.B
-\-\-debug
-Log debug info to stdout
-.TP
-.B
-\-\-keyfunc=KEYFUNC
-Use a custom key function (path/to/module.py:myFunc)
-.TP
-.B
-\-\-replication=REPLICATION
-Replication factor
-.TP
-.B
-\-\-routing=ROUTING
-Routing method: "consistent-hashing" (default) or "relay"
-.TP
-.B
-\-\-relayrules=RELAYRULES
-relay-rules.conf file to use for relay routing
-.SH AUTHOR
-\fBcarbon-client\fP, created by Chris Davis.
-.PP
-This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
-the Debian project (but may be used by others).
diff --git a/network/graphite-carbon/man1/carbon-relay.1 b/network/graphite-carbon/man1/carbon-relay.1
deleted file mode 100644
index 0ee27548b3..0000000000
--- a/network/graphite-carbon/man1/carbon-relay.1
+++ /dev/null
@@ -1,51 +0,0 @@
-.TH CARBON-RELAY 1
-.SH NAME
-carbon-relay \- replication and sharding data
-.SH SYNOPSYS
-.nf
-.fam C
-\fbcarbon-relay\fP [options] start
-.fam T
-.fi
-.SH DESCRIPTION
-carbon-relay serves two distinct purposes: replication and sharding.
-.PP
-The options are described below.
-.SH OPTIONS
-.TP
-.B
-\-h, \-\-help
-Show the embedded help.
-.TP
-.B
-\-\-debug
-Run in the foreground, log to stdout
-.TP
-.B
-\-\-profile=PROFILE
-Record performance profile data to the given file
-.TP
-.B
-\-\-pidfile=PIDFILE
-Write pid to the given file
-.TP
-.B
-\-\-config=CONFIG
-Use the given config file
-.TP
-.B
-\-\-logdir=LOGDIR
-Write logs in the given directory
-.TP
-.B
-\-\-instance=INSTANCE
-Manage a specific carbon instance
-.TP
-.B
-\-\-rules=RULES
-se the given relay rules file.
-.SH AUTHOR
-\fBcarbon-relay\fP, created by Chris Davis.
-.PP
-This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
-the Debian project (but may be used by others).
diff --git a/network/graphite-carbon/man1/validate-storage-schemas.1 b/network/graphite-carbon/man1/validate-storage-schemas.1
deleted file mode 100644
index 07eadb3358..0000000000
--- a/network/graphite-carbon/man1/validate-storage-schemas.1
+++ /dev/null
@@ -1,17 +0,0 @@
-.TH VALIDATE-STORAGE-SCHEMAS 1
-.SH NAME
-validate-storage-schemas \- validates the storage schemas
-.SH SYNOPSYS
-.nf
-.fam C
-\fbvalidate-storage-schemas\fP
-.fam T
-.fi
-.SH DESCRIPTION
-validates the storage schemas from the configuration
-file /etc/carbon/storage-schemas.conf.
-.SH AUTHOR
-\fBvalidate-storage-schemas\fP, created by Chris Davis.
-.PP
-This manual page was written by Jonas Genannt <jonas.genannt@capi2name.de, for
-the Debian project (but may be used by others).
diff --git a/network/graphite-carbon/patches/carbon.conf.example.diff b/network/graphite-carbon/patches/carbon.conf.example.diff
deleted file mode 100644
index cd72206d45..0000000000
--- a/network/graphite-carbon/patches/carbon.conf.example.diff
+++ /dev/null
@@ -1,41 +0,0 @@
---- carbon-0.9.13-pre1/conf/carbon.conf.example.orig 2014-12-31 17:50:50.000000000 +0100
-+++ carbon-0.9.13-pre1/conf/carbon.conf.example 2015-02-04 00:36:17.680898110 +0100
-@@ -14,30 +14,21 @@
- # To change other directory paths, add settings to this file. The following
- # configuration variables are available with these default values:
- #
--# STORAGE_DIR = $GRAPHITE_STORAGE_DIR
--# LOCAL_DATA_DIR = STORAGE_DIR/whisper/
--# WHITELISTS_DIR = STORAGE_DIR/lists/
--# CONF_DIR = STORAGE_DIR/conf/
--# LOG_DIR = STORAGE_DIR/log/
--# PID_DIR = STORAGE_DIR/
--#
--# For FHS style directory structures, use:
--#
--# STORAGE_DIR = /var/lib/carbon/
--# CONF_DIR = /etc/carbon/
--# LOG_DIR = /var/log/carbon/
--# PID_DIR = /var/run/
--#
--#LOCAL_DATA_DIR = /opt/graphite/storage/whisper/
-+STORAGE_DIR = /var/lib/graphite/
-+CONF_DIR = /etc/carbon/
-+LOG_DIR = /var/log/carbon/
-+PID_DIR = /var/run/
-+
-+LOCAL_DATA_DIR = /var/lib/graphite/whisper/
-
- # Enable daily log rotation. If disabled, carbon will automatically re-open
- # the file if it's rotated out of place (e.g. by logrotate daemon)
--ENABLE_LOGROTATION = True
-+ENABLE_LOGROTATION = False
-
- # Specify the user to drop privileges to
- # If this is blank carbon runs as the user that invokes it
- # This user must have write access to the local data directory
--USER =
-+USER = graphite
- #
- # NOTE: The above settings must be set under [relay] and [aggregator]
- # to take effect for those daemons as well
diff --git a/network/graphite-carbon/patches/setup.cfg.diff b/network/graphite-carbon/patches/setup.cfg.diff
deleted file mode 100644
index 67f266d360..0000000000
--- a/network/graphite-carbon/patches/setup.cfg.diff
+++ /dev/null
@@ -1,12 +0,0 @@
---- carbon-0.9.13-pre1/setup.cfg.orig 2015-02-04 00:37:23.199169196 +0100
-+++ carbon-0.9.13-pre1/setup.cfg 2015-02-04 00:37:45.198588654 +0100
-@@ -1,9 +0,0 @@
--[install]
--prefix = /opt/graphite
--install-lib = %(prefix)s/lib
--
--[bdist_rpm]
--requires = python-twisted
-- whisper
--
--post-install = distro/redhat/misc/postinstall
diff --git a/network/graphite-carbon/patches/validate-storage-schemas.py.diff b/network/graphite-carbon/patches/validate-storage-schemas.py.diff
deleted file mode 100644
index ed6dad7b0f..0000000000
--- a/network/graphite-carbon/patches/validate-storage-schemas.py.diff
+++ /dev/null
@@ -1,11 +0,0 @@
---- carbon-0.9.13-pre1/bin/validate-storage-schemas.py.orig 2014-12-31 17:50:50.000000000 +0100
-+++ carbon-0.9.13-pre1/bin/validate-storage-schemas.py 2015-02-04 00:40:16.244602801 +0100
-@@ -22,7 +22,7 @@
- SCHEMAS_FILE = sys.argv[1]
- print "Loading storage-schemas configuration from: '%s'" % SCHEMAS_FILE
- else:
-- SCHEMAS_FILE = realpath(join(dirname(__file__), '..', 'conf', 'storage-schemas.conf'))
-+ SCHEMAS_FILE = '/etc/carbon/storage-schemas.conf'
- print "Loading storage-schemas configuration from default location at: '%s'" % SCHEMAS_FILE
-
- config_parser = ConfigParser()
diff --git a/network/graphite-carbon/rc.carbon-cache b/network/graphite-carbon/rc.carbon-cache
deleted file mode 100644
index ee7c98630e..0000000000
--- a/network/graphite-carbon/rc.carbon-cache
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/sh
-#
-# Start/stop/restart the carbon-cache daemon
-# Written by Mario Preksavec <mario@slackware.hr>
-
-BIN_FILE=/usr/bin/carbon-cache
-PID_FILE=/var/run/carbon-cache.pid
-CONF_FILE=/etc/carbon/carbon.conf
-
-rc_start() {
- if [ -x $BIN_FILE ] && [ -f $CONF_FILE ]; then
- if [ -f $PID_FILE ] && kill -0 $(cat $PID_FILE) 2>/dev/null; then
- echo "carbon-cache daemon already running"
- else
- echo "Starting carbon-cache daemon: $BIN"
- $BIN_FILE --config=$CONF_FILE --pidfile=$PID_FILE start
- fi
- fi
-}
-
-rc_stop() {
- if [ -f $PID_FILE ] && kill -0 $(cat $PID_FILE) 2>/dev/null; then
- echo "Stopping carbon-cache daemon: $BIN"
- $BIN_FILE --config=$CONF_FILE --pidfile=$PID_FILE stop \
- && rm -f $PID_FILE
- fi
-}
-
-rc_status() {
- if [ -f $PID_FILE ] && kill -0 $(cat $PID_FILE) 2>/dev/null; then
- $BIN_FILE --config=$CONF_FILE --pidfile=$PID_FILE status
- fi
-}
-
-rc_restart() {
- rc_stop
- sleep 1
- rc_start
-}
-
-case "$1" in
- 'start')
- rc_start
- ;;
- 'stop')
- rc_stop
- ;;
- 'restart')
- rc_restart
- ;;
- 'status')
- rc_status
- ;;
- *)
- echo "usage $0 start|stop|restart|status"
- ;;
-esac
diff --git a/network/graphite-carbon/slack-desc b/network/graphite-carbon/slack-desc
deleted file mode 100644
index 4136bf704b..0000000000
--- a/network/graphite-carbon/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-graphite-carbon: graphite-carbon (Backend data caching and daemon for Graphite)
-graphite-carbon:
-graphite-carbon: Graphite is a web application using the Twisted framework to provide
-graphite-carbon: real-time visualization and storage of numeric time-series data.
-graphite-carbon: The Carbon daemon processes the incoming time-series data and saves
-graphite-carbon: it as Whisper database files.
-graphite-carbon:
-graphite-carbon: Homepage: https://github.com/graphite-project/
-graphite-carbon:
-graphite-carbon:
-graphite-carbon:
diff --git a/network/grpcurl/README b/network/grpcurl/README
new file mode 100644
index 0000000000..ea941d7dd5
--- /dev/null
+++ b/network/grpcurl/README
@@ -0,0 +1,10 @@
+grpcurl is a command-line tool that lets you interact with gRPC servers.
+It's basically curl for gRPC servers.
+
+The main purpose for this tool is to invoke RPC methods on a gRPC server
+from the command-line. gRPC servers use a binary encoding on the wire
+(protocol buffers, or "protobufs" for short). So they are basically
+impossible to interact with using regular curl (and older versions of
+curl that do not support HTTP/2 are of course non-starters). This
+program accepts messages using JSON encoding, which is much more
+friendly for both humans and scripts.
diff --git a/network/gmvault/gmvault.SlackBuild b/network/grpcurl/grpcurl.SlackBuild
index fc83b741f8..7b5b64d4d9 100644
--- a/network/gmvault/gmvault.SlackBuild
+++ b/network/grpcurl/grpcurl.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for gmvault
+# Slackware build script for grpcurl
-# Copyright 2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Ebben Aries <slackbuilds@dscp.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,23 +24,20 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=gmvault
+PRGNAM=grpcurl
VERSION=${VERSION:-1.9.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
+case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
+ *) 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
@@ -53,15 +50,18 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
+ PKG_ARCH=x86_32
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
+ PKG_ARCH=x86_32
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+ PKG_ARCH=x86_64
else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
+ echo "$ARCH is not supported."
+ exit 1
fi
set -e
@@ -70,8 +70,9 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
+tar xvf $CWD/${PRGNAM}_${VERSION}_linux_${PKG_ARCH}.tar.gz
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -79,13 +80,13 @@ 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 {} \;
-python setup.py install --root=$PKG
+mkdir -p $PKG/usr/bin
+install -D -m755 $PRGNAM $PKG/usr/bin
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-INFO README.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/grpcurl/grpcurl.info b/network/grpcurl/grpcurl.info
new file mode 100644
index 0000000000..8675ff1222
--- /dev/null
+++ b/network/grpcurl/grpcurl.info
@@ -0,0 +1,10 @@
+PRGNAM="grpcurl"
+VERSION="1.9.1"
+HOMEPAGE="https://github.com/fullstorydev/grpcurl"
+DOWNLOAD="https://github.com/fullstorydev/grpcurl/releases/download/v1.9.1/grpcurl_1.9.1_linux_x86_32.tar.gz"
+MD5SUM="a4659f2cdeb13fac1f26c8072294f53e"
+DOWNLOAD_x86_64="https://github.com/fullstorydev/grpcurl/releases/download/v1.9.1/grpcurl_1.9.1_linux_x86_64.tar.gz"
+MD5SUM_x86_64="a263191ce012be65578b74613c688a3c"
+REQUIRES=""
+MAINTAINER="Ebben Aries"
+EMAIL="slackbuilds@dscp.org"
diff --git a/network/gmvault/slack-desc b/network/grpcurl/slack-desc
index ff804e5a91..38b69f4563 100644
--- a/network/gmvault/slack-desc
+++ b/network/grpcurl/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-gmvault: gmvault (gmail backup-restore tool)
-gmvault:
-gmvault: Tool to backup and restore your Gmail emails at will.
-gmvault:
-gmvault: Homepage: http://gmvault.org/
-gmvault:
-gmvault:
-gmvault:
-gmvault:
-gmvault:
-gmvault:
+grpcurl: grpcurl (curl for gRPC)
+grpcurl:
+grpcurl: grpcurl is a command-line tool that lets you interact with gRPC
+grpcurl: servers. It's basically curl for gRPC servers.
+grpcurl:
+grpcurl:
+grpcurl: Homepage: https://github.com/fullstorydev/grpcurl
+grpcurl:
+grpcurl:
+grpcurl:
+grpcurl:
diff --git a/network/gtorrentviewer/README b/network/gtorrentviewer/README
index 1d1e56ec43..e7af7de9e8 100644
--- a/network/gtorrentviewer/README
+++ b/network/gtorrentviewer/README
@@ -1,3 +1,5 @@
+gtorrentviewer (A torrent viewer and editor)
+
GTorrentViewer is a GTK2-based viewer and editor for BitTorrent meta
files. It is able to retrieve information from trackers, check files,
show detailed information, and modify .torrent files without having
@@ -5,6 +7,6 @@ to start downloading.
The purpose of GTorrentViewer is to give the ability to see and modify
all the possible information from .torrent files without having to start
-downloading and the ability to see in real time the current number of
+downloading, and the ability to see in real time the current number of
seeds and peers on the torrent, so you will always know the status
-before start the download.
+before starting the download.
diff --git a/network/gtorrentviewer/doinst.sh b/network/gtorrentviewer/doinst.sh
index 9a8ded3c60..3edf8699cf 100644
--- a/network/gtorrentviewer/doinst.sh
+++ b/network/gtorrentviewer/doinst.sh
@@ -1,3 +1,9 @@
+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 [ -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/gtorrentviewer/gtorrentviewer.SlackBuild b/network/gtorrentviewer/gtorrentviewer.SlackBuild
index 4eb3257498..90b73f2eb6 100644
--- a/network/gtorrentviewer/gtorrentviewer.SlackBuild
+++ b/network/gtorrentviewer/gtorrentviewer.SlackBuild
@@ -2,8 +2,9 @@
# Slackware build script for gtorrentviewer
+# Copyright 2023 B. Watson
# Copyright 2018 Donald Cooley South Haven, Indiana USA
-# Copyright 2010, 2012 Binh Nguyen <binhvng@gmail.com>
+# Copyright 2010, 2012 Binh Nguyen
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,12 +24,20 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20231107 bkw: BUILD=5
+# - take over maintenance.
+# - patch various segfault issues.
+# - remove generic INSTALL from doc dir.
+# - fix .desktop file.
+# - new-style icon.
+# - slight grammar fix in README and man page.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=gtorrentviewer
SRCNAM=GTorrentViewer
VERSION=${VERSION:-0.2b}
-BUILD=${BUILD:-4}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +49,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
@@ -75,27 +81,24 @@ 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 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# 20231107 bkw: most of these patches came from ALT Linux:
+# https://git.altlinux.org/srpms/g/gtorrentviewer.git?a=tree;hb=0.2b-alt4_38
+# ...but a couple of them were "-p0" patches. I reworked them to apply
+# with "patch -p1". The curl-types, desktop, and dso-linking patches aren't
+# needed because their issues are fixed by code in this script.
+# The manpage patch is a grammar fix, done by me.
+for i in `cat $CWD/patches/series`; do
+ echo "=== applying $i"
+ patch -p1 < $CWD/patches/$i
+done
# Fix building against newer cURL
-sed -i 's|#include <curl/types.h>||g' src/main.c
-
-# Fix linking of libm
-patch -p1 < $CWD/patches/fix_linking_libm.diff
-
-# The following 2 patches are from Fedora 13
-
-# Let drag and drop work with URIs as well as files
-patch -p1 < $CWD/patches/gtorrentviewer-0.2b-desktop.patch
-
-# Fix crash due to use of uninitialized GValue
-# Thanks to Niels Horn for pointing this out
-patch -p1 < $CWD/patches/GTorrentViewer-0.2b-tracker-details-refresh.patch
+sed -i '/#include <curl\/types.h>/d' src/main.c
+LIBS="-lm" \
CFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -106,19 +109,19 @@ CFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/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
+# 20231107 bkw: ship .desktop with corrections already applied.
+cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-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/share/icons/hicolor/48x48
+ln -s ../../../pixmaps/$PRGNAM.png $PKG/usr/share/icons/hicolor/48x48/$PRGNAM.png
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- AUTHORS COPYING ChangeLog INSTALL README \
-$PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING ChangeLog README $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/gtorrentviewer/gtorrentviewer.desktop b/network/gtorrentviewer/gtorrentviewer.desktop
new file mode 100644
index 0000000000..42bb9ab276
--- /dev/null
+++ b/network/gtorrentviewer/gtorrentviewer.desktop
@@ -0,0 +1,12 @@
+[Desktop Entry]
+Name=Torrent Metainfo Viewer
+GenericName=Torrent Viewer
+Comment=Viewer and Editor for .torrent files
+Exec=gtorrentviewer %f
+Icon=gtorrentviewer
+StartupNotify=false
+Terminal=false
+Type=Application
+Categories=Network;
+MimeType=application/x-bittorrent;
+Version=1.0
diff --git a/network/gtorrentviewer/gtorrentviewer.info b/network/gtorrentviewer/gtorrentviewer.info
index 7f3405ecb1..069a2fd9ff 100644
--- a/network/gtorrentviewer/gtorrentviewer.info
+++ b/network/gtorrentviewer/gtorrentviewer.info
@@ -6,5 +6,5 @@ MD5SUM="c29058a09f26693863404ecdb2580770"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Donald Cooley"
-EMAIL="chytraeu@sdf.org"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/gtorrentviewer/patches/GTorrentViewer-0.2b-format.patch b/network/gtorrentviewer/patches/GTorrentViewer-0.2b-format.patch
new file mode 100644
index 0000000000..9b1d7e3484
--- /dev/null
+++ b/network/gtorrentviewer/patches/GTorrentViewer-0.2b-format.patch
@@ -0,0 +1,48 @@
+diff -Naur GTorrentViewer-0.2b/src/mainwindow.c GTorrentViewer-0.2b.patched/src/mainwindow.c
+--- GTorrentViewer-0.2b/src/mainwindow.c 2004-10-26 00:37:58.000000000 -0400
++++ GTorrentViewer-0.2b.patched/src/mainwindow.c 2023-11-07 20:56:10.027535819 -0500
+@@ -634,7 +634,7 @@
+ /* create the open file thread */
+ if(g_thread_create(open_torrent_file, filename, FALSE, &err) == NULL)
+ {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_free(filename);
+ g_error_free(err);
+ }
+@@ -671,7 +671,7 @@
+
+ if(g_thread_create(tracker_scrape, tracker, FALSE, &err) == NULL)
+ {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_free(tracker);
+ g_error_free(err);
+ }
+@@ -722,7 +722,7 @@
+ filename = gtk_file_chooser_get_filename(GTK_FILE_CHOOSER(dialog));
+ if(g_thread_create(check_files, filename, FALSE, &err) == NULL)
+ {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_free(filename);
+ g_error_free(err);
+ }
+@@ -755,7 +755,7 @@
+
+ if(g_thread_create(tracker_scrape, tracker, FALSE, &err) == NULL)
+ {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_error_free(err);
+ }
+
+@@ -853,7 +853,7 @@
+ {
+ if(g_thread_create(open_torrent_file, filename, FALSE, &err) == NULL)
+ {
+- g_warning(err->message);
++ g_warning("%s", err->message);
+ g_free(filename);
+ g_error_free(err);
+ }
diff --git a/network/gtorrentviewer/patches/GTorrentViewer-0.2b-missing-tracker.patch b/network/gtorrentviewer/patches/GTorrentViewer-0.2b-missing-tracker.patch
new file mode 100644
index 0000000000..8e1f3a4a06
--- /dev/null
+++ b/network/gtorrentviewer/patches/GTorrentViewer-0.2b-missing-tracker.patch
@@ -0,0 +1,12 @@
+diff -Naur GTorrentViewer-0.2b/src/mainwindow.c GTorrentViewer-0.2b.patched/src/mainwindow.c
+--- GTorrentViewer-0.2b/src/mainwindow.c 2023-11-07 21:01:19.243506719 -0500
++++ GTorrentViewer-0.2b.patched/src/mainwindow.c 2023-11-07 21:02:04.947502418 -0500
+@@ -423,7 +423,7 @@
+
+ node = benc_node_find_key(torrent, "announce");
+ gtk_list_store_append(liststore, &iter);
+- gtk_list_store_set(liststore, &iter, 0, benc_node_data(node), -1);
++ gtk_list_store_set(liststore, &iter, 0, node!=NULL?benc_node_data(node):"", -1);
+
+ node = benc_node_find_key(torrent, "announce-list");
+ if(node != NULL) /* multi-tracker support */
diff --git a/network/gtorrentviewer/patches/fix_linking_libm.diff b/network/gtorrentviewer/patches/fix_linking_libm.diff
deleted file mode 100644
index 4be5b63bb3..0000000000
--- a/network/gtorrentviewer/patches/fix_linking_libm.diff
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Nur GTorrentViewer-0.2b.orig/src/Makefile.in GTorrentViewer-0.2b/src/Makefile.in
---- GTorrentViewer-0.2b.orig/src/Makefile.in 2004-10-25 23:42:16.000000000 -0500
-+++ GTorrentViewer-0.2b/src/Makefile.in 2012-09-09 23:31:34.092115981 -0500
-@@ -115,7 +115,7 @@
-
- CFLAGS = @CFLAGS@ @CURL_CFLAGS@ @GTK_CFLAGS@
-
--LDADD = @GTK_LIBS@ @CURL_LIBS@
-+LDADD = @GTK_LIBS@ @CURL_LIBS@ -lm
-
- bin_PROGRAMS = gtorrentviewer
-
diff --git a/network/gtorrentviewer/patches/gtorrentviewer-0.2b-desktop.patch b/network/gtorrentviewer/patches/gtorrentviewer-0.2b-desktop.patch
deleted file mode 100644
index ca12b05ec3..0000000000
--- a/network/gtorrentviewer/patches/gtorrentviewer-0.2b-desktop.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- GTorrentViewer-0.2b/data/gtorrentviewer.desktop.in.orig 2004-10-21 05:40:16.000000000 +0100
-+++ GTorrentViewer-0.2b/data/gtorrentviewer.desktop.in 2007-08-12 12:14:52.000000000 +0100
-@@ -2,7 +2,7 @@
- _Name=Torrent Metainfo Viewer
- _GenericName=Torrent Viewer
- _Comment=Viewer and Editor for .torrent files
--Exec=gtorrentviewer %U
-+Exec=gtorrentviewer %f
- Icon=gtorrentviewer.png
- StartupNotify=false
- Terminal=false
-@@ -10,4 +10,4 @@
- Encoding=UTF-8
- Categories=Application;Network;
- MimeType=application/x-bittorrent;
--Version=0.2
-+Version=1.0
diff --git a/network/gtorrentviewer/patches/gtorrentviewer-0.2b-trackerdetails.patch b/network/gtorrentviewer/patches/gtorrentviewer-0.2b-trackerdetails.patch
new file mode 100644
index 0000000000..dbdb68d62c
--- /dev/null
+++ b/network/gtorrentviewer/patches/gtorrentviewer-0.2b-trackerdetails.patch
@@ -0,0 +1,56 @@
+diff --git a/src/main.c b/src/main.c
+index fc51205..a770768 100644
+--- a/src/main.c
++++ b/src/main.c
+@@ -336,12 +336,8 @@ tracker_scrape(gpointer tracker)
+ SHA1((guint8*)string, number, (guint8*)torrent_sha);
+ g_free(string);
+
+- if(g_str_has_suffix((gchar*)tracker, "info_hash="))
+- string = util_convert_to_hex(torrent_sha, SHA_DIGEST_LENGTH, "%");
+- else
+- string = g_strdup(" ");
+-
+- host = g_strdup_printf("%s%s", (gchar*)tracker, string);
++ string = util_convert_to_hex(torrent_sha, SHA_DIGEST_LENGTH, "%");
++ host = g_strdup_printf("%s?info_hash=%s", (gchar*)tracker, string);
+ g_free(string);
+
+ string = g_strrstr(host, "announce");
+diff --git a/src/mainwindow.c b/src/mainwindow.c
+index 6b1bbf0..415098e 100644
+--- a/src/mainwindow.c
++++ b/src/mainwindow.c
+@@ -421,23 +421,23 @@ mainwindow_fill_trackers_tab(MainWindow const *mwin, BencNode *torrent)
+
+ gtk_combo_box_set_active(mwin->TrackerComboBox, -1);
+
++ node = benc_node_find_key(torrent, "announce");
++ gtk_list_store_append(liststore, &iter);
++ gtk_list_store_set(liststore, &iter, 0, benc_node_data(node), -1);
++
+ node = benc_node_find_key(torrent, "announce-list");
+- if(node == NULL) /* no multi-tracker */
+- {
+- node = benc_node_find_key(torrent, "announce");
+- gtk_list_store_append(liststore, &iter);
+- gtk_list_store_set(liststore, &iter, 0, benc_node_data(node), -1);
+- }
+- else /* multi-tracker support */
++ if(node != NULL) /* multi-tracker support */
+ {
+- node = benc_node_first_child(node);
+- if(node != NULL)
++ for (node = benc_node_first_child(node); node != NULL;
++ node = benc_node_next_sibling(node))
++ {
+ for(subnode = benc_node_first_child(node); subnode != NULL;
+ subnode = benc_node_next_sibling(subnode))
+ {
+ gtk_list_store_append(liststore, &iter);
+ gtk_list_store_set(liststore, &iter, 0, benc_node_data(subnode), -1);
+ }
++ }
+ }
+
+ gtk_combo_box_set_model(mwin->TrackerComboBox, GTK_TREE_MODEL(liststore));
diff --git a/network/gtorrentviewer/patches/manpage.diff b/network/gtorrentviewer/patches/manpage.diff
new file mode 100644
index 0000000000..99909b805e
--- /dev/null
+++ b/network/gtorrentviewer/patches/manpage.diff
@@ -0,0 +1,23 @@
+diff -Naur GTorrentViewer-0.2b/data/gtorrentviewer.1 GTorrentViewer-0.2b.patched/data/gtorrentviewer.1
+--- GTorrentViewer-0.2b/data/gtorrentviewer.1 2004-10-18 18:40:11.000000000 -0400
++++ GTorrentViewer-0.2b.patched/data/gtorrentviewer.1 2023-11-07 22:30:10.103005035 -0500
+@@ -14,8 +14,8 @@
+ .PP
+ The purpose of GTorrentViewer is to give the ability to see and modify all
+ the possible information from .torrent files without having to start
+-downloading and the ability to see in real time the current number of seeds
+-and peers on the torrent, so you will always know the status before start
++downloading, and the ability to see in real time the current number of seeds
++and peers on the torrent, so you will always know the status before starting
+ the download.
+ .SH OPTIONS
+ gtorrentviewer options:
+@@ -24,7 +24,7 @@
+ output version information and exit.
+ .TP
+ .B \-h, \-\-help
+-display a option overview and exit.
++display an option overview and exit.
+ .SH AUTHOR
+ GTorrentViewer was written by Alejandro Claro <ap0lly0n@users.sourceforge.net>.
+ .PP
diff --git a/network/gtorrentviewer/patches/series b/network/gtorrentviewer/patches/series
new file mode 100644
index 0000000000..c9c40df86d
--- /dev/null
+++ b/network/gtorrentviewer/patches/series
@@ -0,0 +1,5 @@
+GTorrentViewer-0.2b-tracker-details-refresh.patch
+gtorrentviewer-0.2b-trackerdetails.patch
+GTorrentViewer-0.2b-format.patch
+GTorrentViewer-0.2b-missing-tracker.patch
+manpage.diff
diff --git a/network/gui-ufw/gufw-open.diff b/network/gui-ufw/gufw-open.diff
new file mode 100644
index 0000000000..e972d8b921
--- /dev/null
+++ b/network/gui-ufw/gufw-open.diff
@@ -0,0 +1,10 @@
+--- 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/gufw.wrapper b/network/gui-ufw/gufw.wrapper
deleted file mode 100644
index b5eedf591b..0000000000
--- a/network/gui-ufw/gufw.wrapper
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/bash
-
-# 20220315 bkw: replacement wrapper script for gui-ufw, part of the
-# gui-ufw SlackBuilds.org build, by B. Watson. WTFPL licensed.
-
-# find the path to the script, in a way that won't break if the
-# python version gets upgraded, and works on either 32-bit or 64-bit
-# Slackware.
-PYVER="$( python3 --version | cut -d' ' -f2 | cut -d. -f1,2 )"
-for i in lib64 lib; do
- dir="/usr/$i/python$PYVER/site-packages/gufw"
- [ -d "$dir" ] && break
-done
-
-# kdesu takes care of allowing access to the X server (no need for
-# xhost commands) and works fine regardless of desktop environment or
-# window manager. it doesn't rely on policykit, which is a nice bonus.
-exec kdesu -c "python3 $dir/gufw.py"
diff --git a/network/gui-ufw/gui-ufw.SlackBuild b/network/gui-ufw/gui-ufw.SlackBuild
index 306d92af57..907e67fdf1 100644
--- a/network/gui-ufw/gui-ufw.SlackBuild
+++ b/network/gui-ufw/gui-ufw.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for gui-ufw
-# Copyright 2018, 2019 Skaendo <skaendo@linuxmail.org>
+# Copyright 2022-23 Jay Lanagan (j@lngn.net), Detroit, MI, USA
+# Previous script by Skaendo w/ bkw patches, this replaces it.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -11,28 +12,22 @@
# 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.
-
-# 20220315 bkw: Modified by SlackBuilds.org, BUILD=2:
-# - fix broken wrapper scripts that prevented the app from starting
-# on 32-bit Slackware, or after a python3 upgrade, or if the user
-# uses runlevel 3.
-# - fix repeated builds (we were missing "rm -rf $PRGNAM-$VERSION").
+# 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=gui-ufw
-VERSION=${VERSION:-19.10.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-24.04.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,9 +47,22 @@ fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-
-# 20220315 bkw: No compiled code here, and setup.py knows about
-# lib64 directories already.
+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
@@ -62,28 +70,20 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+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 \
+ -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 {} \+
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-python3 setup.py install --prefix=/usr --root=$PKG
+# path & opening app fixes from ubuntu
+patch -p1 < $CWD/gufw-open.diff
+patch -p1 < $CWD/path-fix.diff
-# 20220315 bkw: upstream's wrapper scripts are broken in multiple ways:
-# - hardcoded (wrong) path to gufw.py
-# - relies on loginctl, meaning it'll never work for users who
-# use runlevel 3 (console login + startx)
-# - the xhost stuff unconditionally removes localuser:root access
-# when gufw exits, even if the user put it there before the
-# script was run
-# Replace gufw and gufw-pkexec with something that actually works.
-rm -f $PKG/usr/bin/*
-install -oroot -groot -m0755 $CWD/gufw.wrapper $PKG/usr/bin/gufw
+python3 setup.py install --prefix=/usr --root=$PKG
# Move the manpage to a sane directory.
mv $PKG/usr/share/man $PKG/usr
@@ -91,16 +91,32 @@ mv $PKG/usr/share/man $PKG/usr
# Clean up some duplicates
rm -rf $PKG/usr/share/doc
-gzip -9 $PKG/usr/man/man*/*
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.*
+ )
+ done
+ )
+fi
+
+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 COPYING* README \
+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
+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/gui-ufw/gui-ufw.info b/network/gui-ufw/gui-ufw.info
index cb67c32ac9..4a03d79c95 100644
--- a/network/gui-ufw/gui-ufw.info
+++ b/network/gui-ufw/gui-ufw.info
@@ -1,10 +1,10 @@
PRGNAM="gui-ufw"
-VERSION="19.10.0"
-HOMEPAGE="https://gufw.org/"
-DOWNLOAD="https://launchpad.net/gui-ufw/trunk/19.10/+download/gui-ufw-19.10.0.tar.gz"
-MD5SUM="46ba50d59dfa96e36d04ab2f21fc2d21"
+VERSION="24.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_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="python-distutils-extra ufw webkit2gtk"
-MAINTAINER="Skaendo"
-EMAIL="skaendo@linuxmail.org"
+REQUIRES="python-distutils-extra webkit2gtk ufw"
+MAINTAINER="Jay Lanagan"
+EMAIL="j@lngn.net"
diff --git a/network/gui-ufw/path-fix.diff b/network/gui-ufw/path-fix.diff
new file mode 100644
index 0000000000..2ebfdb0c21
--- /dev/null
+++ b/network/gui-ufw/path-fix.diff
@@ -0,0 +1,16 @@
+--- 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/hakuneko/README b/network/hakuneko/README
new file mode 100644
index 0000000000..ea9a249bc1
--- /dev/null
+++ b/network/hakuneko/README
@@ -0,0 +1,14 @@
+Hakuneko is a cross platform downloader for Manga and Anime
+from various websites.Hakuneko was made to help users
+downloading media for circumstances that require offline usage.
+The philosophy is ad-hoc consumption, get it when you going to
+watch it. It is not meant to be a mass downloader to stock up
+thousands of chapters that are just collected and will probably
+never be read.
+
+Note:
+This build will self update with changes in the master branch.
+
+After uninstalling Hakuneko make sure to remove the following
+folders $HOME/.config/hakuneko-desktop and
+$HOME/.cache/hakuneko-desktop
diff --git a/network/hakuneko/doinst.sh b/network/hakuneko/doinst.sh
new file mode 100644
index 0000000000..5b35a0a29e
--- /dev/null
+++ b/network/hakuneko/doinst.sh
@@ -0,0 +1,14 @@
+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 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 usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/hakuneko/hakuneko.SlackBuild b/network/hakuneko/hakuneko.SlackBuild
new file mode 100644
index 0000000000..a333d3a7e3
--- /dev/null
+++ b/network/hakuneko/hakuneko.SlackBuild
@@ -0,0 +1,132 @@
+#!/bin/bash
+
+# Slackware build script for hakuneko
+
+# Copyright 2022 Vijay Marcel
+# 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=hakuneko
+VERSION=${VERSION:-8.3.4}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86)
+ DEBARCH=i386
+ ARCH=i586
+ LIBDIRSUFFIX=""
+ ;;
+ x86_64)
+ DEBARCH=amd64
+ ARCH=x86_64
+ LIBDIRSUFFIX="64"
+ ;;
+ # unsupported
+ *)
+ echo "ARCH $( uname -m ) is unsupported"
+ exit 1
+ ;;
+ esac
+else
+ case "$ARCH" in
+ i?86)
+ DEBARCH=i386
+ LIBDIRSUFFIX=""
+ ;;
+ x86_64)
+ DEBARCH=amd64
+ LIBDIRSUFFIX="64"
+ ;;
+ # unsupported
+ *)
+ echo "$ARCH is unsupported"
+ exit 1
+ ;;
+ 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
+trap 'echo "$0 FAILED at line $LINENO!" | tee -a $OUTPUT/error-${PRGNAM}.log' ERR
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -pv $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+
+if [ "$DEBARCH" = "i386" ]; then
+ echo "Building for the 32-bit architecture"
+ mv -v $CWD/hakuneko-desktop_8.3.4_linux_i386.deb $CWD/$PRGNAM-$VERSION.deb
+ ar -x $CWD/$PRGNAM-$VERSION.deb
+ tar xvf data.tar.xz -C $PKG
+ mv -v $PKG/usr/share/man $PKG/usr/man
+elif [ "$DEBARCH" = "amd64" ]; then
+ echo "Building for the 64-bit architecture"
+ mv -v $CWD/hakuneko-desktop_8.3.4_linux_amd64.deb $CWD/$PRGNAM-$VERSION.deb
+ ar -x $CWD/$PRGNAM-$VERSION.deb
+ tar xvf data.tar.xz -C $PKG
+ mv -v $PKG/usr/lib $PKG/usr/lib${LIBDIRSUFFIX}
+ mv -v $PKG/usr/share/man $PKG/usr/man
+ rm -rvf $PKG/usr/share/applications/hakuneko-desktop.desktop
+ cp -a $CWD/hakuneko.desktop $PKG/usr/share/applications/
+else
+ echo "This program is not supported"
+fi
+
+cd $PKG
+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
+
+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
+mv -v $PKG/usr/share/doc/hakuneko-desktop/* $PKG/usr/doc/$PRGNAM-$VERSION/
+rm -rvf $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/hakuneko/hakuneko.desktop b/network/hakuneko/hakuneko.desktop
new file mode 100644
index 0000000000..d04c10ee61
--- /dev/null
+++ b/network/hakuneko/hakuneko.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=HakuNeko Desktop
+Comment=Downloader
+Exec=/usr/lib64/hakuneko-desktop/hakuneko
+Icon=hakuneko-desktop
+Terminal=false
+Type=Application
+Categories=Network;FileTransfer;
+GenericName=Manga Downloader
diff --git a/network/hakuneko/hakuneko.info b/network/hakuneko/hakuneko.info
new file mode 100644
index 0000000000..952c6ce2f5
--- /dev/null
+++ b/network/hakuneko/hakuneko.info
@@ -0,0 +1,10 @@
+PRGNAM="hakuneko"
+VERSION="8.3.4"
+HOMEPAGE="https://hakuneko.download"
+DOWNLOAD="https://github.com/manga-download/hakuneko/releases/download/nightly-20200705.1/hakuneko-desktop_8.3.4_linux_i386.deb"
+MD5SUM="bdeb7eb96f74606c74c1359a8145a023"
+DOWNLOAD_x86_64="https://github.com/manga-download/hakuneko/releases/download/nightly-20200705.1/hakuneko-desktop_8.3.4_linux_amd64.deb"
+MD5SUM_x86_64="c6e5affbef2828708d806e890befe7db"
+REQUIRES=""
+MAINTAINER="Vijay Marcel"
+EMAIL="vijaymarcel@outlook.com"
diff --git a/network/hakuneko/slack-desc b/network/hakuneko/slack-desc
new file mode 100644
index 0000000000..13fefc9555
--- /dev/null
+++ b/network/hakuneko/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------------------------------------------------------|
+hakuneko: hakuneko (Manga and Anime Downloader)
+hakuneko:
+hakuneko: Hakuneko is a cross platform downloader for Manga and Anime
+hakuneko: from various websites.Hakuneko was made to help users
+hakuneko: downloading media for circumstances that require offline usage.
+hakuneko: The philosophy is ad-hoc consumption, get it when you going to
+hakuneko: watch it. It is not meant to be a mass downloader to stock up
+hakuneko: thousands of chapters that are just collected and will probably
+hakuneko: never be read.
+hakuneko:
+hakuneko: Homepage:https://hakuneko.download
diff --git a/network/haproxy/haproxy.SlackBuild b/network/haproxy/haproxy.SlackBuild
index 499a52b9e2..6347d65637 100644
--- a/network/haproxy/haproxy.SlackBuild
+++ b/network/haproxy/haproxy.SlackBuild
@@ -5,7 +5,7 @@
# Copyright 2018 T3slider <t3slider@gmail.com>
# All rights reserved.
#
-# Copyright 2022 Badchay <badchay@protonmail.com>
+# Copyright 2024 Badchay <badchay@protonmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=haproxy
-VERSION=${VERSION:-2.6.6}
+VERSION=${VERSION:-2.8.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,8 +76,8 @@ LUA=${LUA:-no}
# Perl Compatible Regular Expressions version 2 is enabled by default.
# You might want to use libpcre1 and/or JIT-enabled version instead.
PCRE=${PCRE:-PCRE2}
-# Include QUIC (HTTP/3) support? (experimental).
-# This requires QUICTLS.
+# Include QUIC (HTTP/3) support?
+# This requires QUICTLS or wolfSSL.
QUIC=${QUIC:-no}
set -e
@@ -124,6 +124,7 @@ make \
USE_ENGINE=1 \
USE_ZLIB=1 \
USE_NS=1 \
+ USE_PROMEX=1 \
USE_SYSTEMD= \
$LUAOPT \
EXTRA=""
diff --git a/network/haproxy/haproxy.info b/network/haproxy/haproxy.info
index a7491e8d63..b48d7a471d 100644
--- a/network/haproxy/haproxy.info
+++ b/network/haproxy/haproxy.info
@@ -1,8 +1,8 @@
PRGNAM="haproxy"
-VERSION="2.6.6"
+VERSION="2.8.9"
HOMEPAGE="https://www.haproxy.org/"
-DOWNLOAD="https://www.haproxy.org/download/2.6/src/haproxy-2.6.6.tar.gz"
-MD5SUM="09de5e3ad5a4be36ce6398ce37ce801e"
+DOWNLOAD="https://www.haproxy.org/download/2.8/src/haproxy-2.8.9.tar.gz"
+MD5SUM="ed6a0a5171b83c6fa6850fa2ed3639be"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/havp/havp.SlackBuild b/network/havp/havp.SlackBuild
index d4376a8a77..d4480368c0 100644
--- a/network/havp/havp.SlackBuild
+++ b/network/havp/havp.SlackBuild
@@ -81,6 +81,8 @@ patch -p1 < $CWD/patches/fixup_and_install_init_script.diff
patch -p1 < $CWD/patches/use_clamav_group_by_default.diff
patch -p1 < $CWD/patches/put_templates_in_usrshare.diff
+patch -p0 < $CWD/patches/patch-havp_scanners_clamlibscanner_cpp
+
CFLAGS="$SLKCFLAGS"
./configure \
--prefix=/usr \
diff --git a/network/havp/patches/patch-havp_scanners_clamlibscanner_cpp b/network/havp/patches/patch-havp_scanners_clamlibscanner_cpp
new file mode 100644
index 0000000000..fb6b1174c5
--- /dev/null
+++ b/network/havp/patches/patch-havp_scanners_clamlibscanner_cpp
@@ -0,0 +1,64 @@
+# clamav 1.0.0 mostly uses cl_error_t (aka unsigned int) for
+# returning error values, change type to match
+#
+# ...except cl_statchkdir, which returns cl_error_t type values
+# but is still an int, so bodge around that
+
+Index: havp/scanners/clamlibscanner.cpp
+--- havp/scanners/clamlibscanner.cpp.orig
++++ havp/scanners/clamlibscanner.cpp
+@@ -22,7 +22,7 @@ extern int LL;
+ bool ClamLibScanner::InitDatabase()
+ {
+ unsigned int sigs = 0;
+- int ret;
++ cl_error_t ret;
+ if (LL>2) cl_debug();
+
+ #ifdef CL_INIT_DEFAULT
+@@ -118,9 +118,10 @@ bool ClamLibScanner::InitDatabase()
+
+ int ClamLibScanner::ReloadDatabase()
+ {
+- int ret = cl_statchkdir(&dbstat);
++ cl_error_t ret;
++ int reti = cl_statchkdir(&dbstat);
+
+- if ( ret == 1 )
++ if ( reti == 1 )
+ {
+ unsigned int sigs = 0;
+ struct cl_settings *settings = NULL;
+@@ -191,9 +192,9 @@ int ClamLibScanner::ReloadDatabase()
+
+ return 1;
+ }
+- else if ( ret != 0 )
++ else if ( reti != 0 )
+ {
+- LogFile::ErrorMessage("ClamAV: Error on database check: %s\n", cl_strerror(ret));
++ LogFile::ErrorMessage("ClamAV: Error on database check\n");
+ }
+
+ return 0;
+@@ -203,9 +204,9 @@ int ClamLibScanner::ReloadDatabase()
+ string ClamLibScanner::Scan( const char *FileName )
+ {
+ #ifdef CL_INIT_DEFAULT
+- int ret = cl_scanfile(FileName, &virname, NULL, engine, &cl_options);
++ cl_error_t ret = cl_scanfile(FileName, &virname, NULL, engine, &cl_options);
+ #else
+- int ret = cl_scanfile(FileName, &virname, NULL, engine, &limits, scanopts);
++ cl_error_t ret = cl_scanfile(FileName, &virname, NULL, engine, &limits, scanopts);
+ #endif
+
+ //Clean?
+@@ -240,7 +241,7 @@ string ClamLibScanner::Scan( const char *FileName )
+ void ClamLibScanner::FreeDatabase()
+ {
+ #ifdef CL_INIT_DEFAULT
+- int ret = cl_engine_free(engine);
++ cl_error_t ret = cl_engine_free(engine);
+ if ( ret != CL_SUCCESS )
+ {
+ LogFile::ErrorMessage("ClamAV: cl_engine_free() failed: %s\n", cl_strerror(ret));
diff --git a/network/heimdal/heimdal.SlackBuild b/network/heimdal/heimdal.SlackBuild
index 5d08b5fddf..1b4d389115 100644
--- a/network/heimdal/heimdal.SlackBuild
+++ b/network/heimdal/heimdal.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for KTH Heimdal Kerberos
# Copyright 2010 Menno Duursma
-# Copyright 2011-2021 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2011-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=heimdal
-VERSION=${VERSION:-7.7.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-7.8.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -59,6 +59,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -112,7 +115,7 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make -j1 check
+#make -j1 check
make install-strip DESTDIR=$PKG
mkdir -p $PKG/etc/rc.d
@@ -130,7 +133,6 @@ mkdir -p $PKG/var/heimdal
cat $CWD/config/kdc.conf > $PKG/var/heimdal/kdc.conf.new
cat $CWD/config/kadmind.acl > $PKG/var/heimdal/kadmind.acl.new
-# Don't ship .la files:
rm -f $PKG/{,usr/}heimdal/lib/*.la
rm -rf $PKG/usr/heimdal/man/cat?
@@ -139,7 +141,6 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*
-( cd $PKG/usr/info ; ln -s heimdal.info.gz heimdal )
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
diff --git a/network/heimdal/heimdal.info b/network/heimdal/heimdal.info
index ccfe34d596..4c0c46b21e 100644
--- a/network/heimdal/heimdal.info
+++ b/network/heimdal/heimdal.info
@@ -1,8 +1,8 @@
PRGNAM="heimdal"
-VERSION="7.7.0"
+VERSION="7.8.0"
HOMEPAGE="http://www.h5l.org"
-DOWNLOAD="https://github.com/heimdal/heimdal/releases/download/heimdal-7.7.0/heimdal-7.7.0.tar.gz"
-MD5SUM="82da0bfbe89995c2ecb6cb9c354e06a3"
+DOWNLOAD="https://github.com/heimdal/heimdal/releases/download/heimdal-7.8.0/heimdal-7.8.0.tar.gz"
+MD5SUM="2389c0ad22f2cc2bbef7b27a090d27b5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/hiawatha/README b/network/hiawatha/README
index 094e670fb1..eb85247e56 100644
--- a/network/hiawatha/README
+++ b/network/hiawatha/README
@@ -27,4 +27,4 @@ Notes:
the default start file.
Hiawatha's documentation can be found at the following URL:
-https://www.hiawatha-webserver.org/support
+https://hiawatha.leisink.net/support
diff --git a/network/hiawatha/hiawatha.SlackBuild b/network/hiawatha/hiawatha.SlackBuild
index 6d6929996b..ae0d768cf7 100644
--- a/network/hiawatha/hiawatha.SlackBuild
+++ b/network/hiawatha/hiawatha.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=hiawatha
-VERSION=${VERSION:-10.10}
+VERSION=${VERSION:-11.5}
BUILD=${BUILD:-1}
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
@@ -83,7 +80,7 @@ mkdir -p build
cd build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
- -DCMAKE_INSTALL_PREFIX=/ \
+ -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_BINDIR=/usr/sbin \
-DCMAKE_INSTALL_SBINDIR=/usr/sbin \
-DCMAKE_INSTALL_SYSCONFDIR=/etc/$PRGNAM \
@@ -130,7 +127,6 @@ cat extra/newroot > $PKG/usr/share/$PRGNAM/extra/newroot
tar -caf $PKG/usr/share/$PRGNAM/extra/letsencrypt.tar.gz extra/letsencrypt/*
cp -a extra/{*.xml,index.html,*.in,tls*} \
$PKG/usr/share/$PRGNAM/extra/
-cp -a extra/nghttp2.tgz $PKG/usr/share/$PRGNAM/extra/
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/hiawatha/hiawatha.info b/network/hiawatha/hiawatha.info
index 8016841a33..35481cc97b 100644
--- a/network/hiawatha/hiawatha.info
+++ b/network/hiawatha/hiawatha.info
@@ -1,8 +1,8 @@
PRGNAM="hiawatha"
-VERSION="10.10"
-HOMEPAGE="https://www.hiawatha-webserver.org"
-DOWNLOAD="https://www.hiawatha-webserver.org/files/hiawatha-10.10.tar.gz"
-MD5SUM="3bf2c12c7037ecc3dfdbec72e7a2f04f"
+VERSION="11.5"
+HOMEPAGE="https://hiawatha.leisink.net/"
+DOWNLOAD="https://hiawatha.leisink.net/files/hiawatha-11.5.tar.gz"
+MD5SUM="9277f86b1065794ac89cea0699da3978"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/hiawatha/slack-desc b/network/hiawatha/slack-desc
index 05db98aa46..cb0c40d4eb 100644
--- a/network/hiawatha/slack-desc
+++ b/network/hiawatha/slack-desc
@@ -16,4 +16,4 @@ hiawatha: Hiawatha supports many web and HTTP features such as CGI/FastCGI,
hiawatha: HTTP authentication, virtual host support, request pipelining, keep
hiawatha: alive connections, URL rewriting and many more.
hiawatha:
-hiawatha: Homepage: https://www.hiawatha-webserver.org
+hiawatha: Homepage: https://hiawatha.leisink.net
diff --git a/network/host-sflow/README b/network/host-sflow/README
index 1426537c58..a805696a06 100644
--- a/network/host-sflow/README
+++ b/network/host-sflow/README
@@ -2,3 +2,10 @@ The Host sFlow agent exports physical and virtual server performance
metrics using the sFlow protocol. The agent provides scalable,
multi-vendor, multi-OS performance monitoring with minimal impact on
the systems being monitored.
+
+To start hsflowd at boot, add something like this to your
+/etc/rc.d/rc.local:
+
+if [ -x /etc/rc.d/rc.hsflowd ]; then
+ /etc/rc.d/rc.hsflowd start
+fi
diff --git a/network/host-sflow/doinst.sh b/network/host-sflow/doinst.sh
index 00c3dd9dfa..83420b7d7c 100644
--- a/network/host-sflow/doinst.sh
+++ b/network/host-sflow/doinst.sh
@@ -22,5 +22,5 @@ preserve_perms() {
config $NEW
}
-preserve_perms etc/init.d/hsflowd
+preserve_perms etc/rc.d/rc.hsflowd.new
config etc/hsflowd.conf.new
diff --git a/network/host-sflow/host-sflow.SlackBuild b/network/host-sflow/host-sflow.SlackBuild
index 60827f87b1..7c017930ce 100644
--- a/network/host-sflow/host-sflow.SlackBuild
+++ b/network/host-sflow/host-sflow.SlackBuild
@@ -22,13 +22,18 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230620 bkw: modified by SlackBuilds.org, BUILD=2:
+# - Install init script in Slackware standard location, and make it
+# a proper .new config file.
+# - Mention the init script in README.
+
# 02/Apr/2018 * First version
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=host-sflow
VERSION=${VERSION:-2.0.15}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +45,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,9 +79,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Soft-link in tarball causes x bit to be set below; nuke it
rm -f $PRGNAM-$VERSION/README
@@ -108,6 +110,8 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mv $PKG/etc/hsflowd.conf $PKG/etc/hsflowd.conf.new
+mv $PKG/etc/init.d $PKG/etc/rc.d
+mv $PKG/etc/rc.d/hsflowd $PKG/etc/rc.d/rc.hsflowd.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/hostapd/doinst.sh b/network/hostapd/doinst.sh
index 3babdb41ee..b32120085e 100644
--- a/network/hostapd/doinst.sh
+++ b/network/hostapd/doinst.sh
@@ -22,16 +22,4 @@ preserve_perms() {
config $NEW
}
-config etc/hostapd/hostapd.accept.new
-config etc/hostapd/hostapd.android.rc.new
-config etc/hostapd/hostapd.conf.new
-config etc/hostapd/hostapd.deny.new
-config etc/hostapd/hostapd.eap_user.new
-config etc/hostapd/hostapd.eap_user_sqlite.new
-config etc/hostapd/hostapd.radius_clients.new
-config etc/hostapd/hostapd.sim_db.new
-config etc/hostapd/hostapd.vlan.new
-config etc/hostapd/hostapd.wpa_psk.new
-config etc/hostapd/wired.conf.new
-
preserve_perms etc/rc.d/rc.hostapd.new
diff --git a/network/httpie/doinst.sh b/network/httpie/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/httpie/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/httpie/httpie.SlackBuild b/network/httpie/httpie.SlackBuild
index 7cf1218d08..5b6c73bef1 100644
--- a/network/httpie/httpie.SlackBuild
+++ b/network/httpie/httpie.SlackBuild
@@ -2,7 +2,9 @@
# Slackware build script for httpie
+# Copyright 2024 Dimitris Zlatanidis Orestiada, Greece
# Copyright 2014-2019 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023-2024 Juan M. Lasca <juanmlasca@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,77 +27,56 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=httpie
-VERSION=${VERSION:-1.0.3}
+VERSION=${VERSION:-3.2.2}
BUILD=${BUILD:-2}
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
+# Thanks to Alan Alberghini for pointing this out
+SRCNAME=cli
-# 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
+ 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
+rm -rf $SRCNAME-$VERSION
+tar xvf $CWD/$SRCNAME-$VERSION.tar.gz
+cd $SRCNAME-$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 {} \;
+ \( -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 {} \;
-python setup.py install --root=$PKG
+python3 setup.py install --root=$PKG
-# Python 3 support.
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
+mv $PKG/usr/share/man $PKG/usr/man
+rmdir $PKG/usr/share
-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 LICENSE PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS.md LICENSE SECURITY.md CHANGELOG.md \
+ README.md CONTRIBUTING.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/httpie/httpie.info b/network/httpie/httpie.info
index 00184be801..9be33bd6b4 100644
--- a/network/httpie/httpie.info
+++ b/network/httpie/httpie.info
@@ -1,10 +1,10 @@
PRGNAM="httpie"
-VERSION="1.0.3"
-HOMEPAGE="https://httpie.org/"
-DOWNLOAD="https://files.pythonhosted.org/packages/d5/a4/ab61c1dbfdef33c7b7f5f7df0d79eb5cd55a106601a4acc17f983f320b4a/httpie-1.0.3.tar.gz"
-MD5SUM="14bfec557e8c81a6cf0ec19140410965"
+VERSION="3.2.2"
+HOMEPAGE="https://httpie.io"
+DOWNLOAD="https://github.com/httpie/cli/archive/3.2.2/cli-3.2.2.tar.gz"
+MD5SUM="fd08e0001da0781a2f7038ea38ac8d08"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-multidict python3-rich python3-defusedxml PySocks requests-toolbelt"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/hydra/hydra.SlackBuild b/network/hydra/hydra.SlackBuild
index da81afd740..9808bbb91c 100644
--- a/network/hydra/hydra.SlackBuild
+++ b/network/hydra/hydra.SlackBuild
@@ -6,8 +6,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=hydra
-VERSION=${VERSION:-9.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-9.4}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -19,9 +19,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
@@ -97,7 +94,7 @@ fi
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE* README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CHANGES LICENSE* README $PKG/usr/doc/$PRGNAM-$VERSION
if [ "$XHYDRA" = "1" ]; then
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/hydra-gtk
cp -a hydra-gtk/COPYING hydra-gtk/INSTALL hydra-gtk/README \
diff --git a/network/hydra/hydra.info b/network/hydra/hydra.info
index 66f8d3e731..6ce60c725c 100644
--- a/network/hydra/hydra.info
+++ b/network/hydra/hydra.info
@@ -1,8 +1,8 @@
PRGNAM="hydra"
-VERSION="9.1"
+VERSION="9.4"
HOMEPAGE="https://github.com/vanhauser-thc/thc-hydra"
-DOWNLOAD="https://github.com/vanhauser-thc/thc-hydra/archive/v9.1/thc-hydra-9.1.tar.gz"
-MD5SUM="7a2f54980ce44aff0cc047fb75751dba"
+DOWNLOAD="https://github.com/vanhauser-thc/thc-hydra/archive/v9.4/thc-hydra-9.4.tar.gz"
+MD5SUM="5486ece8f48c80fee8a5e9f6a295f4c0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/i2pd/i2pd.SlackBuild b/network/i2pd/i2pd.SlackBuild
index 858e16eb65..3b3307f009 100644
--- a/network/i2pd/i2pd.SlackBuild
+++ b/network/i2pd/i2pd.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=i2pd
-VERSION=${VERSION:-2.43.0}
+VERSION=${VERSION:-2.48.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -98,7 +98,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a ChangeLog LICENSE README.md docs/ contrib/certificates/ contrib/tunnels.d/ \
+cp -a ChangeLog LICENSE README.md contrib/certificates/ contrib/tunnels.d/ \
contrib/i2pd.conf contrib/tunnels.conf contrib/subscriptions.txt \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/i2pd/i2pd.info b/network/i2pd/i2pd.info
index e94d5c3f2a..197490feb6 100644
--- a/network/i2pd/i2pd.info
+++ b/network/i2pd/i2pd.info
@@ -1,10 +1,10 @@
PRGNAM="i2pd"
-VERSION="2.43.0"
+VERSION="2.48.0"
HOMEPAGE="http://i2pd.website/"
-DOWNLOAD="https://github.com/PurpleI2P/i2pd/archive/2.43.0/i2pd-2.43.0.tar.gz"
-MD5SUM="58315ad7886eb69edefdc73389dc2d61"
+DOWNLOAD="https://github.com/PurpleI2P/i2pd/archive/2.48.0/i2pd-2.48.0.tar.gz"
+MD5SUM="392dfcedbd2492ab3a62e49e595e2a5c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="shelldweller"
-EMAIL="shelldweller@beauxbead.com"
+MAINTAINER="Markus Reichelt"
+EMAIL="slackbuilds@mareichelt.de"
diff --git a/network/icbm/README b/network/icbm/README
new file mode 100644
index 0000000000..6b4150be75
--- /dev/null
+++ b/network/icbm/README
@@ -0,0 +1,15 @@
+icbm (extensible threaded ICB client in Perl)
+
+ICB (Internet CB) is a teleconferencing system that allows Internet
+users to participate in realtime online discussions (similar to IRC).
+
+ICBM is a threaded ICB client written in Perl5 which supports a
+superset of the functionality of CICB (the ICB C Client, the de facto
+standard ICB client). This allows ICBM to be readily extended to
+support many features that CICB does not, and to gracefully do a
+number of things that CICB does poorly if at all.
+
+Note: in some terminals (e.g. urxvt), when icbm exits, it will
+leave the terminal in a state where the backspace key prints "^?"
+rather than backspacing. You can fix this with "stty erase ^?".
+Other terminals (e.g. xterm) don't have this problem.
diff --git a/network/suricata/doinst.sh b/network/icbm/doinst.sh
index d74b5bd771..0730667f7b 100644
--- a/network/suricata/doinst.sh
+++ b/network/icbm/doinst.sh
@@ -8,7 +8,4 @@ config() {
fi
}
-CONFIGS="classification.config reference.config suricata.yaml threshold.config"
-for file in $CONFIGS; do
- config etc/suricata/${file}.new
-done
+config usr/share/icb/icbserverdb.new
diff --git a/network/icbm/icbm.SlackBuild b/network/icbm/icbm.SlackBuild
new file mode 100644
index 0000000000..a5635b0034
--- /dev/null
+++ b/network/icbm/icbm.SlackBuild
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+# Slackware build script for icbm
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Note to self: tarballs with versioned filenames do exist, but the
+# link on the homepage is always icbm-current.tar.gz (presumably a
+# symlink). To check for updated versions, look at the the top of:
+# https://co.ordinate.org/icbm/Changelog
+
+# The crypto modules are actually optional: icbm will run without
+# them, with encryption disabled. I've made them required here, to
+# keep things simpler for me (and easier for users, too). If you
+# really object to this, just don't install them (you still need
+# perl-Curses, though).
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=icbm
+VERSION=${VERSION:-1.6.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+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
+chown -R root:root .
+# tarball perms suck, leave this as-is:
+chmod 644 *
+
+SHAREDIR=$PKG/usr/share/icb
+BINDIR=$PKG/usr/bin
+MANDIR=$PKG/usr/man/man1
+
+# There's no Makefile or install script, follow the directions
+# in INSTALL.
+# Note that icbserverdb is different from the one that ships
+# with cicb (some of the same servers listed, but the cicb one
+# has an extra 'server admin' field).
+mkdir -p $SHAREDIR/Net $BINDIR $MANDIR
+cp -a primes $SHAREDIR
+cp -a icbserverdb $SHAREDIR/icbserverdb.new
+cp -a ICB.pm $SHAREDIR/Net
+install -m0755 icbm $BINDIR
+gzip -9c < icbm.1 > $MANDIR/icbm.1.gz
+
+# BUGS is 0 bytes in 1.6.0. README.ICBM is actually troff, it's the
+# man page for an older version.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a Changelog README.ENCRYPTION TODO gpl.txt sample_* colors $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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/icbm/icbm.info b/network/icbm/icbm.info
new file mode 100644
index 0000000000..adc0656dc2
--- /dev/null
+++ b/network/icbm/icbm.info
@@ -0,0 +1,10 @@
+PRGNAM="icbm"
+VERSION="1.6.0"
+HOMEPAGE="https://co.ordinate.org/icbm/"
+DOWNLOAD="https://co.ordinate.org/icbm/icbm-1.6.0.tar.gz"
+MD5SUM="102801deeef49b8289153eedfbf046bc"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="perl-Curses perl-Crypt-Blowfish perl-Crypt-CBC perl-digest-sha1 perl-Math-BigInt-GMP perl-crypt-dh-gmp"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/icbm/slack-desc b/network/icbm/slack-desc
new file mode 100644
index 0000000000..210f04b79a
--- /dev/null
+++ b/network/icbm/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------------------------------------------------------|
+icbm: icbm (extensible threaded ICB client in Perl)
+icbm:
+icbm: ICB (Internet CB) is a teleconferencing system that allows Internet
+icbm: users to participate in realtime online discussions (similar to IRC).
+icbm:
+icbm: ICBM is a threaded ICB client written in Perl5 which supports a
+icbm: superset of the functionality of CICB (the ICB C Client, the de facto
+icbm: standard ICB client). This allows ICBM to be readily extended to
+icbm: support many features that CICB does not, and to gracefully do a
+icbm: number of things that CICB does poorly if at all.
+icbm:
diff --git a/network/ifplugd/README b/network/ifplugd/README
new file mode 100644
index 0000000000..a5e13017c4
--- /dev/null
+++ b/network/ifplugd/README
@@ -0,0 +1,22 @@
+ifplugd is a Linux daemon that can monitor network interfaces
+for a change in state (i.e. up or down) then trigger custom
+actions or scripts based on the change.
+
+This could be useful in a number of situations.
+For example where the network is configured manually
+(no NetworkManager etc), and you wish to reconfigure your
+network settings when an ethernet cable is connected
+and then deconfigure those same settings when the cable is
+disconnected.
+
+To change which interfaces are monitored by default, and
+the general start up options, edit "/etc/ifplugd/ifplugd.conf".
+Actions can be added/changed by editing "/etc/ifplugd/ifplugd.action".
+
+To make ifplugd auto start on boot.
+First run "chmod 644 /etc/rc.d/rc.ifplugd"
+Then add the following to the end of your "/etc/rc.local" file:
+
+if [ -x /etc/rc.d/rc.ifplugd ]; then
+ sh /etc/rc.d/rc.ifplugd start || /bin/true
+fi
diff --git a/network/ifplugd/doinst.sh b/network/ifplugd/doinst.sh
new file mode 100644
index 0000000000..ff6f992fef
--- /dev/null
+++ b/network/ifplugd/doinst.sh
@@ -0,0 +1,24 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+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.ifplugd.new
+config etc/ifplugd/ifplugd.conf.new
+config etc/ifplugd/ifplugd.action.new
diff --git a/network/ifplugd/ifplugd-0.28-interface.patch b/network/ifplugd/ifplugd-0.28-interface.patch
new file mode 100644
index 0000000000..9c2de464bb
--- /dev/null
+++ b/network/ifplugd/ifplugd-0.28-interface.patch
@@ -0,0 +1,13 @@
+--- src/interface.c 2004/12/19 00:08:01 114
++++ src/interface.c 2006/03/07 13:15:11 133
+@@ -22,9 +22,9 @@
+ #include <config.h>
+ #endif
+
++#include <sys/types.h>
+ #include <linux/sockios.h>
+ #include <linux/if_ether.h>
+-#include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/ioctl.h>
+ #include <linux/if.h>
diff --git a/network/ifplugd/ifplugd-action-slackware.patch b/network/ifplugd/ifplugd-action-slackware.patch
new file mode 100644
index 0000000000..80aeecf803
--- /dev/null
+++ b/network/ifplugd/ifplugd-action-slackware.patch
@@ -0,0 +1,18 @@
+--- conf/ifplugd.action 2022-10-21 04:32:02.560985145 +1100
++++ conf/ifplugd.action 2022-10-21 04:37:32.173998517 +1100
+@@ -24,7 +24,13 @@
+ exit 1
+ fi
+
+-[ "$2" = "up" ] && exec /sbin/ifup $1
+-[ "$2" = "down" ] && exec /sbin/ifdown $1
++# Place custom actions/commands/scripts below. The interface is passed
++# through "$1", and the state of interface is passed via "$2".
++# i.e. if [ "$1" = "eth0" ] && [ "$2" = "down" ]; then
++
++# This script originally used ifup and ifdown which Slackware does
++# not include by default. i.e. -
++#[ "$2" = "up" ] && exec /sbin/ifup $1
++#[ "$2" = "down" ] && exec /sbin/ifdown $1
+
+ exit 1
diff --git a/network/ifplugd/ifplugd-fix-return-value.patch b/network/ifplugd/ifplugd-fix-return-value.patch
new file mode 100644
index 0000000000..1b7d04af63
--- /dev/null
+++ b/network/ifplugd/ifplugd-fix-return-value.patch
@@ -0,0 +1,12 @@
+diff -Nur ifplugd-0.28.orig/src/ifplugd.c ifplugd-0.28/src/ifplugd.c
+--- ifplugd-0.28.orig/src/ifplugd.c 2005-06-04 21:21:51.000000000 +0200
++++ ifplugd-0.28/src/ifplugd.c 2012-08-29 21:51:53.137644163 +0200
+@@ -447,7 +447,7 @@
+ goto finish;
+
+ if (send_retval && daemonize && wait_on_fork) {
+- char c = status == IFSTATUS_UP ? 2 : (status == IFSTATUS_DOWN ? 3 : 1);
++ char c = status == IFSTATUS_UP ? 1 : (status == IFSTATUS_DOWN ? 2 : 3);
+ daemon_retval_send(c);
+ send_retval = 0;
+ }
diff --git a/network/ifplugd/ifplugd.SlackBuild b/network/ifplugd/ifplugd.SlackBuild
new file mode 100644
index 0000000000..fc26b7f7fb
--- /dev/null
+++ b/network/ifplugd/ifplugd.SlackBuild
@@ -0,0 +1,126 @@
+#!/bin/bash
+
+# Slackware build script for ifplugd
+
+# Copyright 2022 Anj Duvnjak
+# 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=ifplugd
+VERSION=${VERSION:-0.28}
+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 {} \;
+
+# Process patches - credits to Arch Linux for the first two
+patch -p1 < $CWD/ifplugd-fix-return-value.patch
+patch -p0 < $CWD/ifplugd-0.28-interface.patch
+patch -p0 < $CWD/ifplugd-action-slackware.patch
+
+CFLAGS="$SLKCFLAGS -fcommon" \
+CXXFLAGS="$SLKCFLAGS -fcommon" \
+./configure \
+ --prefix=/usr \
+ --sbindir=/usr/bin \
+ --mandir=/usr/man \
+ --infodir=/usr/info \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --disable-static \
+ --with-initdir=/etc/rc.d \
+ --disable-xmltoman \
+ --disable-subversion \
+ --disable-lynx \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+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 \
+ LICENSE README doc/SUPPORTED_DRIVERS \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mv $PKG/etc/ifplugd/ifplugd.action $PKG/etc/ifplugd/ifplugd.action.new
+mv $PKG/etc/ifplugd/ifplugd.conf $PKG/etc/ifplugd/ifplugd.conf.new
+mv $PKG/etc/rc.d/ifplugd $PKG/etc/rc.d/rc.ifplugd.new
+
+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/ifplugd/ifplugd.info b/network/ifplugd/ifplugd.info
new file mode 100644
index 0000000000..be4aeb31df
--- /dev/null
+++ b/network/ifplugd/ifplugd.info
@@ -0,0 +1,10 @@
+PRGNAM="ifplugd"
+VERSION="0.28"
+HOMEPAGE="http://0pointer.de/lennart/projects/ifplugd"
+DOWNLOAD="http://0pointer.de/lennart/projects/ifplugd/ifplugd-0.28.tar.gz"
+MD5SUM="df6f4bab52f46ffd6eb1f5912d4ccee3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libdaemon"
+MAINTAINER="Anj Duvnjak"
+EMAIL="alvind11@hotmail.com"
diff --git a/network/ifplugd/slack-desc b/network/ifplugd/slack-desc
new file mode 100644
index 0000000000..51d1cb91b3
--- /dev/null
+++ b/network/ifplugd/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------------------------------------------------------|
+ifplugd: ifplugd (daemon to reconfig network iface upon connect/disconnect)
+ifplugd:
+ifplugd: ifplugd is a Linux daemon which will automatically configure your
+ifplugd: ethernet device when a cable is plugged in and automatically
+ifplugd: unconfigure it if the cable is pulled. This is useful on laptops
+ifplugd: with onboard network adapters, since it will only configure the
+ifplugd: interface when a cable is really connected.
+ifplugd:
+ifplugd: ifplugd can interface with your distributions native network
+ifplugd: configuration utilities.
+ifplugd:
diff --git a/network/imapfilter/imapfilter.SlackBuild b/network/imapfilter/imapfilter.SlackBuild
index 459fb986a5..dc4aff74d6 100644
--- a/network/imapfilter/imapfilter.SlackBuild
+++ b/network/imapfilter/imapfilter.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2010 Šime Ramov
# Copyright 2016-2019,2021 Andrew Clemons, Wellington New Zealand
-# Copyright 2022 Andrew Clemons, Tokyo Japan
+# Copyright 2022-2023 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=imapfilter
-VERSION=${VERSION:-2.7.6}
+VERSION=${VERSION:-2.8.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/imapfilter/imapfilter.info b/network/imapfilter/imapfilter.info
index ca079f8988..881a0d1801 100644
--- a/network/imapfilter/imapfilter.info
+++ b/network/imapfilter/imapfilter.info
@@ -1,8 +1,8 @@
PRGNAM="imapfilter"
-VERSION="2.7.6"
+VERSION="2.8.2"
HOMEPAGE="https://github.com/lefcha/imapfilter"
-DOWNLOAD="https://github.com/lefcha/imapfilter/archive/v2.7.6/imapfilter-2.7.6.tar.gz"
-MD5SUM="da490ede660b8d399edc4c996f2748ff"
+DOWNLOAD="https://github.com/lefcha/imapfilter/archive/v2.8.2/imapfilter-2.8.2.tar.gz"
+MD5SUM="16c9f950978369687b6d6d00289678e8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="lua"
diff --git a/network/ip2location-c/ip2location-c.SlackBuild b/network/ip2location-c/ip2location-c.SlackBuild
index b887b31437..93fe2af9a6 100644
--- a/network/ip2location-c/ip2location-c.SlackBuild
+++ b/network/ip2location-c/ip2location-c.SlackBuild
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ip2location-c
SRCNAM=IP2Location-C-Library
-VERSION=${VERSION:-8.5.1}
+VERSION=${VERSION:-8.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,9 +41,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
@@ -116,7 +113,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 Developers_Guide.txt INSTALL LICENSE.TXT NEWS README README.md \
+ AUTHORS COPYING ChangeLog Developers_Guide.txt LICENSE.TXT NEWS README README.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/ip2location-c/ip2location-c.info b/network/ip2location-c/ip2location-c.info
index 1eb8c6851f..15237a5c78 100644
--- a/network/ip2location-c/ip2location-c.info
+++ b/network/ip2location-c/ip2location-c.info
@@ -1,8 +1,8 @@
PRGNAM="ip2location-c"
-VERSION="8.5.1"
+VERSION="8.6.1"
HOMEPAGE="http://www.ip2location.com/developers/c"
-DOWNLOAD="https://github.com/chrislim2888/IP2Location-C-Library/archive/8.5.1/IP2Location-C-Library-8.5.1.tar.gz"
-MD5SUM="dda212717bc285e9d1e5bd7937953ad9"
+DOWNLOAD="https://github.com/chrislim2888/IP2Location-C-Library/archive/8.6.1/IP2Location-C-Library-8.6.1.tar.gz"
+MD5SUM="d66cc49ecbe636a2a28aa7aee9725f25"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/iperf3/iperf3.SlackBuild b/network/iperf3/iperf3.SlackBuild
index 2f604c7273..c1d2d993d9 100644
--- a/network/iperf3/iperf3.SlackBuild
+++ b/network/iperf3/iperf3.SlackBuild
@@ -26,8 +26,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=iperf3
SRCNAM=iperf
-VERSION=${VERSION:-3.7}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.16}
+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
@@ -112,4 +109,3 @@ 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/iperf3/iperf3.info b/network/iperf3/iperf3.info
index 548a371dd6..28b4422268 100644
--- a/network/iperf3/iperf3.info
+++ b/network/iperf3/iperf3.info
@@ -1,8 +1,8 @@
PRGNAM="iperf3"
-VERSION="3.7"
+VERSION="3.16"
HOMEPAGE="https://github.com/esnet/iperf"
-DOWNLOAD="https://github.com/esnet/iperf/archive/3.7/iperf-3.7.tar.gz"
-MD5SUM="9534aae7430791b46d8cb8fc44afb6f8"
+DOWNLOAD="https://github.com/esnet/iperf/archive/3.16/iperf-3.16.tar.gz"
+MD5SUM="f084f221e829c5b9abee96c8f819de97"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/ipv6calc/README b/network/ipv6calc/README
index 4d2658ce8c..8b5209d498 100644
--- a/network/ipv6calc/README
+++ b/network/ipv6calc/README
@@ -10,14 +10,13 @@ external databases. The following build options may be used to include
support for these:
IP2LOCATION=yes Enable IP2Location support (requires ip2location-c)
- GEOIP=yes Enable GeoIP support (requires GeoIP)
GEOIP2=yes Enable GeoIP2 support (requires libmaxminddb)
EXTERNAL=yes Enable external db support
where each build option is passed to the slackbuild. Example of
enabling the IP2Location and GeoIP external database:
- IP2LOCATION=yes GEOIP=yes ./ipv6calc.SlackBuild
+ IP2LOCATION=yes GEOIP2=yes ./ipv6calc.SlackBuild
The ipv6calc Apache module can be built by passing MOD_IPV6CALC=yes to
the slackbuild as:
diff --git a/network/ipv6calc/ipv6calc.SlackBuild b/network/ipv6calc/ipv6calc.SlackBuild
index 58fecca7f4..e4aa1a91fe 100644
--- a/network/ipv6calc/ipv6calc.SlackBuild
+++ b/network/ipv6calc/ipv6calc.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2012, 2013 Chris Abela, Malta
# Copyright 2014 Ryan P.C. McQuen, WA, ryanpcmcquen@member.fsf.org
-# Copyright 2018-2019 Jason Graham, MD <jgraham@compukix.net>
+# Copyright 2018-2019, 2023 Jason Graham, MD <jgraham@compukix.net>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ipv6calc
-VERSION=${VERSION:-4.0.1}
+VERSION=${VERSION:-4.1.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -82,7 +82,6 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
ENABLE_IP2LOCATION="--disable-ip2location"
-ENABLE_GEOIP="--disable-geoip"
ENABLE_GEOIP2="--disable-geoip2"
ENABLE_EXTERNAL="--disable-external"
ENABLE_MOD_IPV6CALC="--disable-mod_ipv6calc"
@@ -91,10 +90,6 @@ if [ "$IP2LOCATION" = "yes" ]; then
ENABLE_IP2LOCATION="--enable-ip2location --with-ip2location-db=/usr/share/IP2Loc"
fi
-if [ "$GEOIP" = "yes" ]; then
- ENABLE_GEOIP="--enable-geoip --with-geoip-db=/usr/share/GeoIP"
-fi
-
if [ "$GEOIP2" = "yes" ]; then
ENABLE_GEOIP2="--enable-mmdb --with-geoip-db=/usr/share/GeoIP"
fi
@@ -119,7 +114,7 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux \
--disable-dbip \
--disable-dbip2 \
- $ENABLE_IP2LOCATION $ENABLE_GEOIP $ENABLE_GEOIP2 $ENABLE_EXTERNAL $ENABLE_MOD_IPV6CALC
+ $ENABLE_IP2LOCATION $ENABLE_GEOIP2 $ENABLE_EXTERNAL $ENABLE_MOD_IPV6CALC
make
make install DESTDIR=$PKG
diff --git a/network/ipv6calc/ipv6calc.info b/network/ipv6calc/ipv6calc.info
index 292ef3e824..14c8a2f9bd 100644
--- a/network/ipv6calc/ipv6calc.info
+++ b/network/ipv6calc/ipv6calc.info
@@ -1,8 +1,8 @@
PRGNAM="ipv6calc"
-VERSION="4.0.1"
+VERSION="4.1.0"
HOMEPAGE="http://www.deepspace6.net/projects/ipv6calc.html"
-DOWNLOAD="https://github.com/pbiering/ipv6calc/archive/4.0.1/ipv6calc-4.0.1.tar.gz"
-MD5SUM="b5269b9ade885b787471ac2301f32b94"
+DOWNLOAD="https://github.com/pbiering/ipv6calc/archive/4.1.0/ipv6calc-4.1.0.tar.gz"
+MD5SUM="4891e8f53606c78c77a8185fe1b02fde"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/ipxnet/ipxnet.SlackBuild b/network/ipxnet/ipxnet.SlackBuild
index a65b4cc486..f2b9ba8d63 100644
--- a/network/ipxnet/ipxnet.SlackBuild
+++ b/network/ipxnet/ipxnet.SlackBuild
@@ -11,12 +11,12 @@
# 20210911 bkw: fix missing space before ] in doinst.sh. Grr.
+cd $(dirname $0) ; CWD=$(pwd)
+
# We install the binary setuid nobody/nogroup by default.
IPXUSER="${IPXUSER:-nobody}"
IPXGROUP="${IPXGROUP:-nogroup}"
-cd $(dirname $0) ; CWD=$(pwd)
-
PRGNAM=ipxnet
VERSION=${VERSION:-20120808.0dce97e}
BUILD=${BUILD:-3}
diff --git a/network/irc.c/irc.c.SlackBuild b/network/irc.c/irc.c.SlackBuild
index 3a92469e2b..9ddfa64138 100644
--- a/network/irc.c/irc.c.SlackBuild
+++ b/network/irc.c/irc.c.SlackBuild
@@ -12,6 +12,7 @@ PRGNAM=irc.c
VERSION=${VERSION:-20210302_490f194}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -82,4 +83,4 @@ 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:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/ircd-hybrid/ircd-hybrid.SlackBuild b/network/ircd-hybrid/ircd-hybrid.SlackBuild
index 7f1399add2..33bf9bf445 100644
--- a/network/ircd-hybrid/ircd-hybrid.SlackBuild
+++ b/network/ircd-hybrid/ircd-hybrid.SlackBuild
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ircd-hybrid
BINNAM=ircd
-VERSION=${VERSION:-8.2.42}
+VERSION=${VERSION:-8.2.43}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/ircd-hybrid/ircd-hybrid.info b/network/ircd-hybrid/ircd-hybrid.info
index b1d6bbeb22..aecb5942fc 100644
--- a/network/ircd-hybrid/ircd-hybrid.info
+++ b/network/ircd-hybrid/ircd-hybrid.info
@@ -1,8 +1,8 @@
PRGNAM="ircd-hybrid"
-VERSION="8.2.42"
+VERSION="8.2.43"
HOMEPAGE="http://www.ircd-hybrid.org/"
-DOWNLOAD="https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.42/ircd-hybrid-8.2.42.tar.gz"
-MD5SUM="287b54f7bfa146434fbfba357f8984a9"
+DOWNLOAD="https://github.com/ircd-hybrid/ircd-hybrid/archive/8.2.43/ircd-hybrid-8.2.43.tar.gz"
+MD5SUM="00bb3ec521f59b8ec44aba09d05f04c8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/irssi-icb/README b/network/irssi-icb/README
new file mode 100644
index 0000000000..66d656a937
--- /dev/null
+++ b/network/irssi-icb/README
@@ -0,0 +1,9 @@
+irssi-icb (irssi plugin for ICB)
+
+ICB (International CB) is a teleconferencing system that allows
+Internet users to participate in realtime online discussions (similar
+to IRC). irssi-icb is a plugin for the irssi IRC client that allows it
+to chat on the ICB network.
+
+See /usr/doc/irssi-icb-*/README for directions on how to load the
+module into irssi and connect to an ICB server.
diff --git a/network/irssi-icb/git2tarxz.sh b/network/irssi-icb/git2tarxz.sh
new file mode 100644
index 0000000000..9f44fbdefc
--- /dev/null
+++ b/network/irssi-icb/git2tarxz.sh
@@ -0,0 +1,48 @@
+#!/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.
+
+# 20230919 bkw: contains irssi-icb specific code, don't use as a template.
+
+PRGNAM=irssi-icb
+CLONE_URL=https://github.com/landryb/irssi-icb
+
+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 )
+
+UPSTREAM_VER="$( grep "^AC_INIT" configure.ac | cut -d'[' -f3 |cut -d']' -f1 )"
+
+VERSION=$UPSTREAM_VER+${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/irssi-icb/irssi-icb.SlackBuild b/network/irssi-icb/irssi-icb.SlackBuild
new file mode 100644
index 0000000000..f945be5298
--- /dev/null
+++ b/network/irssi-icb/irssi-icb.SlackBuild
@@ -0,0 +1,99 @@
+#!/bin/bash
+
+# Slackware build script for irssi-icb
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# There's 3 forks of this on github (or, one original and two forks):
+# https://github.com/mglocker/irssi-icb - updated 2016
+# https://github.com/jperkin/irssi-icb - updated 2012
+# https://github.com/landryb/irssi-icb - updated 2022
+# The landryb fork is the only one that will work with irssi-1.4.x,
+# so that's what this build packages.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=irssi-icb
+VERSION=${VERSION:-0.17+20220616_4fd6aff}
+IRSSIVER=${IRSSIVER:-1.4.4}
+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.xz
+cd $PRGNAM-$VERSION
+tar xvf $CWD/irssi-$IRSSIVER.tar.xz
+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 {} +
+
+sh autorun.sh
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --with-irssi=$(pwd)/irssi-$IRSSIVER \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
+ --build=$ARCH-slackware-linux
+
+make
+make install-strip DESTDIR=$PKG
+
+# sed stuff below removes the compile/install instructions from README,
+# so all that's left is config instructions.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING $PKGDOC
+sed -n '/^load in/,$p' README > $PKGDOC/README
+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/irssi-icb/irssi-icb.info b/network/irssi-icb/irssi-icb.info
new file mode 100644
index 0000000000..f8d5ebacad
--- /dev/null
+++ b/network/irssi-icb/irssi-icb.info
@@ -0,0 +1,12 @@
+PRGNAM="irssi-icb"
+VERSION="0.17+20220616_4fd6aff"
+HOMEPAGE="https://github.com/landryb/irssi-icb"
+DOWNLOAD="https://slackware.uk/~urchlay/src/irssi-icb-0.17+20220616_4fd6aff.tar.xz \
+ https://github.com/irssi/irssi/releases/download/1.4.4/irssi-1.4.4.tar.xz"
+MD5SUM="9da79e53c48f606831e5ebc2fee7434a \
+ c1787858ede8d875be5e2ddb8c2bc95e"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/irssi-icb/slack-desc b/network/irssi-icb/slack-desc
new file mode 100644
index 0000000000..0223c6fe6a
--- /dev/null
+++ b/network/irssi-icb/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------------------------------------------------------|
+irssi-icb: irssi-icb (irssi plugin for ICB)
+irssi-icb:
+irssi-icb: ICB (International CB) is a teleconferencing system that allows
+irssi-icb: Internet users to participate in realtime online discussions (similar
+irssi-icb: to IRC). irssi-icb is a plugin for the irssi IRC client that allows it
+irssi-icb: to chat on the ICB network.
+irssi-icb:
+irssi-icb:
+irssi-icb:
+irssi-icb:
+irssi-icb:
diff --git a/network/irssi-python/README b/network/irssi-python/README
index 852bb488aa..efe5a65fb2 100644
--- a/network/irssi-python/README
+++ b/network/irssi-python/README
@@ -1,4 +1,4 @@
-irssi-python (Python 2.x scripting support for irssi)
+irssi-python (Python 3 scripting support for irssi)
irssi-python embeds Python into an Irssi module, providing most of the
functionality of the Perl wrapper to Python scripts using a similar
@@ -10,9 +10,15 @@ always load the module with a command like:
$ echo 'load python' >> ~/.irssi/startup
+Example python scripts can be found in /usr/share/irssi/scripts/*.py
+
+Note that previous versions of irssi-python used Python 2. If you've
+written any scripts, they may have to be modified for Python 3.
+
Beware of upgrades: if Slackware's irssi or python packages are ever
upgraded, you'll almost certainly have to rebuild & reinstall this.
-Symptoms may include irssi ABI version mismatch errors or segfaults.
+Symptoms may include irssi ABI version mismatch errors, undefined
+symbols, or segfaults.
If you get a warning about an irssi version mismatch when building
irssi-python, first update your irssi package to the latest one for
@@ -22,10 +28,10 @@ your Slackware version:
# slackpkg upgrade irssi
If you still get the warning, set the environment variable VERSION.
-The first part of VERSION (before the _) should not change, but the
-part after the _ is the irssi version. Example:
+The first part of VERSION (before the last _) should not change, but
+the part after the last _ is the irssi version. Example:
-# VERSION="test4_1.2.5" sh irssi-python.SlackBuild
+# VERSION="20230512_9ab753d_1.4.5" sh irssi-python.SlackBuild
You'll also have to have the irssi .tar.xz source tarball in the
SlackBuild directory. It should be available from:
diff --git a/network/irssi-python/abi18.diff b/network/irssi-python/abi18.diff
deleted file mode 100644
index 6248382771..0000000000
--- a/network/irssi-python/abi18.diff
+++ /dev/null
@@ -1,59 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index e2b630d..c962091 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -2,7 +2,7 @@
- # Process this file with autoconf to produce a configure script.
-
- #AC_PREREQ(2.59)
--AC_INIT([irssi-python], [test3], [loafier@gmail.com])
-+AC_INIT([irssi-python], [test5], [loafier@gmail.com])
- AC_CONFIG_SRCDIR([src/pycore.c])
- AC_CONFIG_HEADER([pyirssi-config.h])
- AC_CONFIG_MACRO_DIR([m4])
-diff --git a/src/objects/rawlog-object.c b/src/objects/rawlog-object.c
-index c872850..c5fa869 100644
---- a/src/objects/rawlog-object.c
-+++ b/src/objects/rawlog-object.c
-@@ -24,6 +24,10 @@
- #include "rawlog-object.h"
- #include "pycore.h"
-
-+#if defined(IRSSI_ABI_VERSION) && IRSSI_ABI_VERSION >= 18
-+#define RAWLOG18
-+#endif
-+
- /* monitor "????" signal */
- static void rawlog_cleanup(RAWLOG_REC *ban)
- {
-@@ -64,7 +68,13 @@ PyDoc_STRVAR(PyRawlog_nlines_doc,
- static PyObject *PyRawlog_nlines_get(PyRawlog *self, void *closure)
- {
- RET_NULL_IF_INVALID(self->data);
-- return PyInt_FromLong(self->data->nlines);
-+ return PyInt_FromLong(
-+#ifdef RAWLOG18
-+ self->data->lines->length
-+#else
-+ self->data->nlines
-+#endif
-+ );
- }
-
- /* specialized getters/setters */
-@@ -93,7 +103,14 @@ static PyObject *PyRawlog_get_lines(PyRawlog *self, PyObject *args)
- if (!lines)
- return NULL;
-
-- for (node = self->data->lines; node; node = node->next)
-+ for (node =
-+#ifdef RAWLOG18
-+ self->data->lines->head
-+#else
-+ self->data->lines
-+#endif
-+ ;
-+ node; node = node->next)
- {
- int ret;
- PyObject *line = PyString_FromString(node->data);
diff --git a/network/irssi-python/irssi-python.SlackBuild b/network/irssi-python/irssi-python.SlackBuild
index 18736ede84..3c92b9519c 100644
--- a/network/irssi-python/irssi-python.SlackBuild
+++ b/network/irssi-python/irssi-python.SlackBuild
@@ -18,18 +18,37 @@
# them). This build will have to be updated any time Pat does an irssi
# version update.
+# 20230707 bkw: update for 20230512_9ab753d_1.4.4 (latest git that
+# works with python-3.9; later commits break it). needed because
+# Slackware 15.0's patches/ has irssi-1.4.4, which is too new for the
+# irssi-python-test4 release. Source tarball made with:
+# sh git2tarxz.sh 9ab753db9a
+
# 20211208 bkw: update for vtest4_1.2.3.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=irssi-python
-VERSION=${VERSION:-test4_1.2.3}
+VERSION=${VERSION:-20230512_9ab753d_1.4.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-PYIRSSI_VER="$( echo $VERSION | cut -d_ -f1 )"
-IRSSI_VER="$( echo $VERSION | cut -d_ -f2 )"
+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
+
+PYIRSSI_VER="$( echo $VERSION | cut -d_ -f1,2 )"
+IRSSI_VER="$( echo $VERSION | cut -d_ -f3 )"
# Alert the user (but don't stop the build) if $IRSSI_VER doesn't match
# the installed version of irssi.
@@ -44,19 +63,6 @@ EOF
sleep 5
fi
-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}
@@ -83,7 +89,7 @@ cd $TMP
rm -rf $PRGNAM
mkdir -p $PRGNAM
cd $PRGNAM
-tar xvf $CWD/$PRGNAM-$PYIRSSI_VER.tar.gz
+tar xvf $CWD/$PRGNAM-$PYIRSSI_VER.tar.xz
tar xvf $CWD/irssi-$IRSSI_VER.tar.xz
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
@@ -110,11 +116,15 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
cd $PRGNAM-$PYIRSSI_VER
-# patch comes from upstream git, commit 84e90f7d.
-patch -p1 < $CWD/abi18.diff
-
autoreconf -ivf -I.
+# configure script expects to read this info via pkg-config, but our
+# irssi-1.pc file doesn't have the variables for it. not sure why not,
+# but this is what it would have read anyway.
+sed -i -e "/IRSSI_SIGNALSFILE/s,=.*,=/usr/doc/irssi-$IRSSI_VER/signals.txt," \
+ -e "/IRSSI_MODULEDIR/s,=.*,=/usr/lib$LIBDIRSUFFIX/irssi/modules," \
+ configure
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -127,7 +137,6 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--build=$ARCH-slackware-linux
-make -C src constants
make
make install-strip DESTDIR=$PKG
diff --git a/network/irssi-python/irssi-python.info b/network/irssi-python/irssi-python.info
index a90c0becba..3e0c36ec28 100644
--- a/network/irssi-python/irssi-python.info
+++ b/network/irssi-python/irssi-python.info
@@ -1,10 +1,10 @@
PRGNAM="irssi-python"
-VERSION="test4_1.2.3"
+VERSION="20230512_9ab753d_1.4.4"
HOMEPAGE="https://github.com/irssi-import/irssi-python"
-DOWNLOAD="https://github.com/irssi-import/irssi-python/archive/test4/irssi-python-test4.tar.gz \
- https://github.com/irssi/irssi/releases/download/1.2.3/irssi-1.2.3.tar.xz"
-MD5SUM="efd8c4b284cb2b2b3313e9109cbb324a \
- 381d3af259ad15d658be50c0a01f0c28"
+DOWNLOAD="https://slackware.uk/~urchlay/src/irssi-python-20230512_9ab753d.tar.xz \
+ https://github.com/irssi/irssi/releases/download/1.4.4/irssi-1.4.4.tar.xz"
+MD5SUM="8b28b4911eeb7aec97a05292e612e513 \
+ c1787858ede8d875be5e2ddb8c2bc95e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/irssi-python/slack-desc b/network/irssi-python/slack-desc
index a3607849ee..22f7a43ef1 100644
--- a/network/irssi-python/slack-desc
+++ b/network/irssi-python/slack-desc
@@ -6,7 +6,7 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-irssi-python: irssi-python (Python2 scripting support for irssi)
+irssi-python: irssi-python (Python3 scripting support for irssi)
irssi-python:
irssi-python: irssi-python embeds Python into an Irssi module, providing most
irssi-python: of the functionality of the Perl wrapper to Python scripts using a
diff --git a/network/irssi_otr/irssi_otr.SlackBuild b/network/irssi_otr/irssi_otr.SlackBuild
index f845c783e1..8be16f289b 100644
--- a/network/irssi_otr/irssi_otr.SlackBuild
+++ b/network/irssi_otr/irssi_otr.SlackBuild
@@ -11,6 +11,8 @@
# Slackware's irssi package doesn't include it because Slackware
# doesn't include libotr.
+# 20230711 bkw: updated for 1.4.4 (to stay in step with patches/).
+
# 20170302 bkw: use long-format github URL
# 20170121 bkw:
@@ -34,7 +36,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=irssi_otr
-VERSION=${VERSION:-1.2.3}
+VERSION=${VERSION:-1.4.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/irssi_otr/irssi_otr.info b/network/irssi_otr/irssi_otr.info
index d53649c40b..cd01ff1389 100644
--- a/network/irssi_otr/irssi_otr.info
+++ b/network/irssi_otr/irssi_otr.info
@@ -1,8 +1,8 @@
PRGNAM="irssi_otr"
-VERSION="1.2.3"
+VERSION="1.4.4"
HOMEPAGE="https://irssi.org/modules/"
-DOWNLOAD="https://github.com/irssi/irssi/releases/download/1.2.3/irssi-1.2.3.tar.xz"
-MD5SUM="381d3af259ad15d658be50c0a01f0c28"
+DOWNLOAD="https://github.com/irssi/irssi/releases/download/1.4.4/irssi-1.4.4.tar.xz"
+MD5SUM="c1787858ede8d875be5e2ddb8c2bc95e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libotr"
diff --git a/network/jitsi-meet-desktop/README b/network/jitsi-meet-desktop/README
new file mode 100644
index 0000000000..0233a9b22b
--- /dev/null
+++ b/network/jitsi-meet-desktop/README
@@ -0,0 +1,10 @@
+Jitsi Meet is the Secure, Simple and Scalable Video Conferences that
+you use as a standalone app or embed in your web application.
+This is the Jitsi Meet desktop application, powered by Electron.
+
+This SlackBuild repackages the upstream AppImage. The AppImage is only
+available for 64-bit systems.
+
+This is not to be confused with Jitsi Desktop (packaged as jitsi at
+SlackBuilds.org), the legacy desktop application that works with
+xmpp and sip servers for chat and video calls.
diff --git a/network/jitsi-meet-desktop/doinst.sh b/network/jitsi-meet-desktop/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/jitsi-meet-desktop/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/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild b/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild
new file mode 100644
index 0000000000..2c5424a40d
--- /dev/null
+++ b/network/jitsi-meet-desktop/jitsi-meet-desktop.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+
+# Slackware build script for jitsi-meet-desktop
+
+# Copyright 2022-2023 Isaac Yu <isaacyu@protonmail.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=jitsi-meet-desktop
+VERSION=${VERSION:-2024.3.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ ARCH=$(uname -m)
+fi
+
+case "$ARCH" in
+ # do nothing and pass through
+ x86_64) ;;
+ *)
+ echo "$ARCH is not supported for $PRGNAM-$VERSION"
+ exit 1
+ ;;
+esac
+
+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
+
+# Extract AppImage at the new jitsi-meet-desktop folder
+rm -rf jitsi-meet-desktop
+mkdir jitsi-meet-desktop
+cp $CWD/jitsi-meet-$ARCH.AppImage jitsi-meet-desktop
+cd jitsi-meet-desktop
+chmod u+x jitsi-meet-$ARCH.AppImage
+./jitsi-meet-$ARCH.AppImage --appimage-extract
+rm jitsi-meet-$ARCH.AppImage # Once AppImage is extracted, remove it from /tmp/SBo/jitsi-meet-desktop
+
+find squashfs-root/locales/ -type d -exec chmod 755 {} +
+find squashfs-root/resources/ -type d -exec chmod 755 {} +
+
+install -d $PKG/opt/$PRGNAM
+cp -r squashfs-root/* $PKG/opt/$PRGNAM
+
+# remove broken or unused files and directories
+rm -r $PKG/opt/$PRGNAM/usr/
+rm $PKG/opt/$PRGNAM/AppRun
+rm $PKG/opt/$PRGNAM/jitsi-meet.desktop
+rm $PKG/opt/$PRGNAM/jitsi-meet.png
+
+find squashfs-root/usr/share/icons/ -type d -exec chmod 755 {} +
+
+install -d $PKG/usr/share/icons
+cp -r squashfs-root/usr/share/icons/hicolor $PKG/usr/share/icons/hicolor
+
+install -d $PKG/usr/bin
+ln -s ../../opt/$PRGNAM/jitsi-meet $PKG/usr/bin/$PRGNAM
+
+# Install custom desktop file
+install -Dm644 "$CWD/$PRGNAM.desktop" $PKG/usr/share/applications/$PRGNAM.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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a squashfs-root/LICENSE.electron.txt $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/jitsi-meet-desktop/jitsi-meet-desktop.desktop b/network/jitsi-meet-desktop/jitsi-meet-desktop.desktop
new file mode 100644
index 0000000000..68bae15591
--- /dev/null
+++ b/network/jitsi-meet-desktop/jitsi-meet-desktop.desktop
@@ -0,0 +1,9 @@
+[Desktop Entry]
+Name=Jitsi Meet
+Comment=Jitsi Meet Desktop App
+Exec=jitsi-meet-desktop
+Terminal=false
+Type=Application
+Icon=jitsi-meet-desktop
+StartupWMClass=Jitsi Meet
+Categories=VideoConference;AudioVideo;Audio;Video;Network;
diff --git a/network/jitsi-meet-desktop/jitsi-meet-desktop.info b/network/jitsi-meet-desktop/jitsi-meet-desktop.info
new file mode 100644
index 0000000000..690983e6aa
--- /dev/null
+++ b/network/jitsi-meet-desktop/jitsi-meet-desktop.info
@@ -0,0 +1,10 @@
+PRGNAM="jitsi-meet-desktop"
+VERSION="2024.3.0"
+HOMEPAGE="https://jitsi.org/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/jitsi/jitsi-meet-electron/releases/download/v2024.3.0/jitsi-meet-x86_64.AppImage"
+MD5SUM_x86_64="bd3a9721e63982c85ce524dbb15e412c"
+REQUIRES=""
+MAINTAINER="Eugene Wissner"
+EMAIL="belka@caraus.de"
diff --git a/network/prosody-mod-smacks/slack-desc b/network/jitsi-meet-desktop/slack-desc
index f13467b579..58ff485eee 100644
--- a/network/prosody-mod-smacks/slack-desc
+++ b/network/jitsi-meet-desktop/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-prosody-mod-smacks: prosody-mod-smacks (XEP-0198: Stream Management)
-prosody-mod-smacks:
-prosody-mod-smacks: When using XEP-0198 both the client and the server keep a queue of
-prosody-mod-smacks: the most recently sent stanzas - this is cleared when the other end
-prosody-mod-smacks: acknowledges they have received the stanzas.
-prosody-mod-smacks:
-prosody-mod-smacks:
-prosody-mod-smacks:
-prosody-mod-smacks:
-prosody-mod-smacks: https://modules.prosody.im/mod_smacks.html
-prosody-mod-smacks:
+jitsi-meet-desktop: jitsi-meet-desktop (Jitsi Meet Desktop Application)
+jitsi-meet-desktop:
+jitsi-meet-desktop: Jitsi Meet is the Secure, Simple and Scalable Video Conferences that
+jitsi-meet-desktop: you use as a standalone app or embed in your web application.
+jitsi-meet-desktop: This is the Jitsi Meet desktop application, powered by Electron.
+jitsi-meet-desktop:
+jitsi-meet-desktop:
+jitsi-meet-desktop:
+jitsi-meet-desktop:
+jitsi-meet-desktop:
+jitsi-meet-desktop:
diff --git a/network/js185/js185.info b/network/js185/js185.info
index ccde8a4e42..dd1069a1c6 100644
--- a/network/js185/js185.info
+++ b/network/js185/js185.info
@@ -6,5 +6,5 @@ MD5SUM="d8e6e5aabf5cfbfb305282de62a441b6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/kdrive/README b/network/kdrive/README
new file mode 100644
index 0000000000..250d5e8432
--- /dev/null
+++ b/network/kdrive/README
@@ -0,0 +1,6 @@
+kDrive allows you to collaborate, store and share your data securely
+from your internet browser, mobile, tablet or computer.
+
+It is the official AppImage application from Infomaniak.
+
+You just need fuse to run it.
diff --git a/network/kdrive/doinst.sh b/network/kdrive/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/kdrive/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/kdrive/kDrive.desktop b/network/kdrive/kDrive.desktop
new file mode 100644
index 0000000000..a6f1df8fcb
--- /dev/null
+++ b/network/kdrive/kDrive.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=kDrive
+Comment=Infomaniak Drive desktop synchronization client
+Comment[fr]=Client de synchronisation de bureau Infomaniak Drive
+Exec=kDrive
+Icon=kDrive
+Type=Application
+Categories=Network;FileTransfer;
+Keywords=Infomaniak Drive;syncing;file;sharing;
+MimeType=application/vnd.kDrive;
diff --git a/network/kdrive/kDrive.png b/network/kdrive/kDrive.png
new file mode 100644
index 0000000000..7d9f1c803a
--- /dev/null
+++ b/network/kdrive/kDrive.png
Binary files differ
diff --git a/network/kdrive/kdrive.SlackBuild b/network/kdrive/kdrive.SlackBuild
new file mode 100644
index 0000000000..3ec0511354
--- /dev/null
+++ b/network/kdrive/kdrive.SlackBuild
@@ -0,0 +1,84 @@
+#!/bin/bash
+
+# Slackware build script for kDrive
+
+# Copyright 2023 Frederic Galusik Bordeaux, France
+# 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=kdrive
+VERSION=${VERSION:-3.3.7.20221109}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ x86_64) ARCH=x86_64 ;;
+ *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
+ 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}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+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 {} \;
+
+# install
+install -Dm 755 $CWD/kDrive-$VERSION.AppImage $PKG/usr/bin/kDrive
+
+# Desktop shortcut
+install -Dm 644 -o root -g root $CWD/kDrive.desktop $PKG/usr/share/applications/kDrive.desktop
+install -Dm 644 -o root -g root $CWD/kDrive.png $PKG/usr/share/icons/hicolor/512x512/apps/kDrive.png
+
+# Copy program documentation & SlackBuild script in the documentation directory
+install -Dm 644 -o root -g root $CWD/README $PKG/usr/doc/$PRGNAM-$VERSION/README
+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/kdrive/kdrive.info b/network/kdrive/kdrive.info
new file mode 100644
index 0000000000..450028c05d
--- /dev/null
+++ b/network/kdrive/kdrive.info
@@ -0,0 +1,10 @@
+PRGNAM="kdrive"
+VERSION="3.3.7.20221109"
+HOMEPAGE="https://kdrive.infomaniak.com"
+DOWNLOAD="https://download.storage.infomaniak.com/drive/desktopclient/kDrive-3.3.7.20221109.AppImage"
+MD5SUM="a00112049de074ad9d79b37dbdf7c560"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Frederic Galusik"
+EMAIL="f@galusik.fr"
diff --git a/network/kdrive/slack-desc b/network/kdrive/slack-desc
new file mode 100644
index 0000000000..48a667ed2b
--- /dev/null
+++ b/network/kdrive/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------------------------------------------------------|
+kdrive: kdrive (Infomaniak Drive desktop synchronization client)
+kdrive:
+kdrive: Infomaniak kDrive desktop synchronization client
+kdrive: (pre-compiled version).
+kdrive:
+kdrive: kDrive allows you to collaborate, store and share your data
+kdrive: securely from your internet browser, mobile, tablet or computer.
+kdrive:
+kdrive:
+kdrive:
+kdrive:
diff --git a/network/kea/doinst.sh b/network/kea/doinst.sh
index 1ab6bfac50..40c8fbc08a 100644
--- a/network/kea/doinst.sh
+++ b/network/kea/doinst.sh
@@ -23,3 +23,8 @@ preserve_perms() {
}
preserve_perms etc/rc.d/rc.kea.new
+config etc/kea/kea-ctrl-agent.conf.new
+config etc/kea/kea-dhcp-ddns.conf.new
+config etc/kea/kea-dhcp4.conf.new
+config etc/kea/kea-dhcp6.conf.new
+config etc/kea/keactrl.conf.new
diff --git a/network/kea/kea.SlackBuild b/network/kea/kea.SlackBuild
index bae53be524..d9de37586f 100644
--- a/network/kea/kea.SlackBuild
+++ b/network/kea/kea.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for kea
-# Copyright 2016-2017 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2016-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kea
-VERSION=${VERSION:-2.1.3}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-2.5.3}
+BUILD=${BUILD:-1}
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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -99,12 +99,20 @@ CXXFLAGS="$SLKCFLAGS" \
--disable-static \
--build=$ARCH-slackware-linux
-make
+make -j7
make install DESTDIR=$PKG
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.kea > $PKG/etc/rc.d/rc.kea.new
+mkdir -p $PKG/etc/kea
+
+# Change configuration files to .new
+find $PKG/etc/kea/ -name *.conf | while read cfg ; do mv $cfg $cfg.new ; done
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/kea/hooks/*.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
@@ -113,16 +121,9 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-rm -f $PKG/usr/lib*/*.la
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
-# add any configs found to doinst.sh
-find $PKG/etc/kea -name "*.conf" | xargs -I{} mv '{}' '{}'.new
-find $PKG/etc/kea -name "*.new" | xargs -I'{}' echo '{}' | cut -d/ -f5- |
- sed "s,^,config ," >> $PKG/install/doinst.sh
-
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/kea/kea.info b/network/kea/kea.info
index 9c7f7366ed..0949478dd9 100644
--- a/network/kea/kea.info
+++ b/network/kea/kea.info
@@ -1,8 +1,8 @@
PRGNAM="kea"
-VERSION="2.1.3"
+VERSION="2.5.3"
HOMEPAGE="http://kea.isc.org/"
-DOWNLOAD="http://ftp.isc.org/isc/kea/2.1.3/kea-2.1.3.tar.gz"
-MD5SUM="f049d0c6bc86c5605bfe99ee9e64e5ca"
+DOWNLOAD="http://ftp.isc.org/isc/kea/2.5.3/kea-2.5.3.tar.gz"
+MD5SUM="3cd3fca641f542c5c908615c332404bf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="log4cplus"
diff --git a/network/kea/rc.kea b/network/kea/rc.kea
index 2d57a1089b..b7214d2cf7 100644
--- a/network/kea/rc.kea
+++ b/network/kea/rc.kea
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
case "$1" in
'start')
diff --git a/network/keepalived/keepalived.SlackBuild b/network/keepalived/keepalived.SlackBuild
index 7604324464..60f0426e58 100644
--- a/network/keepalived/keepalived.SlackBuild
+++ b/network/keepalived/keepalived.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=keepalived
-VERSION=${VERSION:-2.2.7}
+VERSION=${VERSION:-2.2.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/keepalived/keepalived.info b/network/keepalived/keepalived.info
index f31ba31fca..5c3c527b13 100644
--- a/network/keepalived/keepalived.info
+++ b/network/keepalived/keepalived.info
@@ -1,8 +1,8 @@
PRGNAM="keepalived"
-VERSION="2.2.7"
+VERSION="2.2.8"
HOMEPAGE="https://www.keepalived.org/"
-DOWNLOAD="https://www.keepalived.org/software/keepalived-2.2.7.tar.gz"
-MD5SUM="5f310b66a043a1fb31acf65af15e95bc"
+DOWNLOAD="https://www.keepalived.org/software/keepalived-2.2.8.tar.gz"
+MD5SUM="8c26f75a8767e5341d82696e1e717115"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/kirc/kirc.SlackBuild b/network/kirc/kirc.SlackBuild
index 9b4cfe1ab0..1fcc027a58 100644
--- a/network/kirc/kirc.SlackBuild
+++ b/network/kirc/kirc.SlackBuild
@@ -6,12 +6,16 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230711 bkw: update for v0.3.2.
+# 20230103 bkw: update for v0.3.1, fix PKGTYPE, strip binary.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kirc
-VERSION=${VERSION:-0.2.8}
+VERSION=${VERSION:-0.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -57,20 +61,22 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
# fix the man page header.
-sed -i \
- "1s, [^ ]*\$, $(date +%Y-%m-%d) $PRGNAM-$VERSION SlackBuilds.org," \
- $PRGNAM.1
+sed -i "/^\\.TH/s, Linux .*, $PRGNAM-$VERSION SlackBuilds.org," $PRGNAM.1
+
+# 20230711 bkw: 0.3.2 has a derp in the Makefile that breaks 'make install'.
+sed -i '/^all:/s,clean,,' Makefile
-make CFLAGS="$SLKCFLAGS -Wl,-s"
+make CFLAGS="$SLKCFLAGS"
+strip $PRGNAM
make install DESTDIR=$PKG PREFIX=/usr MANDIR=/usr/man
gzip -9 $PKG/usr/man/man?/*.?
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README* $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:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/kirc/kirc.info b/network/kirc/kirc.info
index b83131174c..aa1a7fb26b 100644
--- a/network/kirc/kirc.info
+++ b/network/kirc/kirc.info
@@ -1,8 +1,8 @@
PRGNAM="kirc"
-VERSION="0.2.8"
+VERSION="0.3.2"
HOMEPAGE="https://github.com/mcpcpc/kirc"
-DOWNLOAD="https://github.com/mcpcpc/kirc/archive/0.2.8/kirc-0.2.8.tar.gz"
-MD5SUM="019e4aa2492e2ff035a9fbe1f42b4c56"
+DOWNLOAD="https://github.com/mcpcpc/kirc/archive/0.3.2/kirc-0.3.2.tar.gz"
+MD5SUM="09eb7e9e261f18e1d7823d689d0f04a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/kismet/kismet.SlackBuild b/network/kismet/kismet.SlackBuild
index 38617770b5..31c32c7fa4 100644
--- a/network/kismet/kismet.SlackBuild
+++ b/network/kismet/kismet.SlackBuild
@@ -28,8 +28,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kismet
-VERSION=${VERSION:-2022.02.R1}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2023.07.R1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -115,7 +115,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGELOG LICENSE README.OLD README.SSL README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE README.OLD README.SSL 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/kismet/kismet.info b/network/kismet/kismet.info
index bcc8071bdb..93aae74af6 100644
--- a/network/kismet/kismet.info
+++ b/network/kismet/kismet.info
@@ -1,10 +1,10 @@
PRGNAM="kismet"
-VERSION="2022.02.R1"
+VERSION="2023.07.R1"
HOMEPAGE="https://kismetwireless.net/"
-DOWNLOAD="https://www.kismetwireless.net/code/kismet-2022-02-R1.tar.xz"
-MD5SUM="35eda7c521e007e5b324ae05d576ab33"
+DOWNLOAD="https://www.kismetwireless.net/code/kismet-2023-07-R1.tar.xz"
+MD5SUM="d6c82b241de1be72d2dcb5e0102d8c99"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libwebsockets protobuf3 protobuf-c"
+REQUIRES="libwebsockets protobuf-c"
MAINTAINER="pyllyukko"
EMAIL="pyllyukko@maimed.org"
diff --git a/network/kivy-garden/kivy-garden.SlackBuild b/network/kivy-garden/kivy-garden.SlackBuild
index 15e1338b0d..12181a1edd 100644
--- a/network/kivy-garden/kivy-garden.SlackBuild
+++ b/network/kivy-garden/kivy-garden.SlackBuild
@@ -71,7 +71,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
diff --git a/network/kivy-garden/kivy-garden.info b/network/kivy-garden/kivy-garden.info
index bbfbae4f3f..5873c2cdc9 100644
--- a/network/kivy-garden/kivy-garden.info
+++ b/network/kivy-garden/kivy-garden.info
@@ -1,7 +1,7 @@
PRGNAM="kivy-garden"
VERSION="0.1.5"
HOMEPAGE="https://github.com/kivy-garden/garden"
-DOWNLOAD="https://github.com/kivy-garden/garden/archive/v0.1.5/kivy-garden-0.1.5.tar.gz"
+DOWNLOAD="https://github.com/kivy-garden/garden/archive/v0.1.5/garden-0.1.5.tar.gz"
MD5SUM="6c16edba32e897d65193b61638b96222"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/kstart/kstart.SlackBuild b/network/kstart/kstart.SlackBuild
index e46e6ce6ea..7836d652b4 100644
--- a/network/kstart/kstart.SlackBuild
+++ b/network/kstart/kstart.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for kstart
-# Copyright 2019 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2019-2022 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=kstart
-VERSION=${VERSION:-4.2}
+VERSION=${VERSION:-4.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -97,7 +97,7 @@ 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 LICENSE NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE NEWS README README.md TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/kstart/kstart.info b/network/kstart/kstart.info
index 445314a839..a5db550242 100644
--- a/network/kstart/kstart.info
+++ b/network/kstart/kstart.info
@@ -1,8 +1,8 @@
PRGNAM="kstart"
-VERSION="4.2"
+VERSION="4.3"
HOMEPAGE="http://www.eyrie.org/~eagle/software/kstart/"
-DOWNLOAD="http://archives.eyrie.org/software/kerberos/kstart-4.2.tar.gz"
-MD5SUM="3386a891f462e90108f77f520895d9e7"
+DOWNLOAD="http://archives.eyrie.org/software/kerberos/kstart-4.3.tar.gz"
+MD5SUM="029a57f503099263bf67688343cebf89"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/lagrange/README b/network/lagrange/README
new file mode 100644
index 0000000000..6eabc8dff1
--- /dev/null
+++ b/network/lagrange/README
@@ -0,0 +1,4 @@
+Lagrange is a desktop GUI client for browsing Geminispace. It offers
+modern conveniences familiar from web browsers, such as smooth
+scrolling, inline image viewing, multiple tabs, visual themes,
+Unicode fonts, bookmarks, history, and page outlines.
diff --git a/network/lagrange/doinst.sh b/network/lagrange/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/lagrange/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/lagrange/lagrange.SlackBuild b/network/lagrange/lagrange.SlackBuild
new file mode 100644
index 0000000000..0b154462c8
--- /dev/null
+++ b/network/lagrange/lagrange.SlackBuild
@@ -0,0 +1,130 @@
+#!/bin/bash
+
+# Slackware build script for lagrange
+
+# Copyright 2022 Frederic Galusik, Bordeaux, France
+
+# 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=lagrange
+VERSION=${VERSION:-1.15.6}
+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
+
+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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DENABLE_KERNING=OFF \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install DESTDIR=$PKG
+cd ..
+
+# 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
+
+# Move man page to the right place
+mkdir -p $PKG/usr/man
+cp -a $PKG/usr/share/man/* $PKG/usr/man/
+rm -Rf $PKG/usr/share
+
+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
+
+# move stuffs to the right places
+# see build/install_manifest.txt
+mkdir -p $PKG/usr/share/applications
+cp -a build/fi.skyjake.Lagrange.desktop $PKG/usr/share/applications/
+mkdir -p $PKG/usr/share/icons/hicolor/256x256/apps/
+cp -a res/lagrange-256.png $PKG/usr/share/icons/hicolor/256x256/apps/fi.skyjake.Lagrange.png
+mkdir -p $PKG/usr/share/metainfo/
+cp -a res/fi.skyjake.Lagrange.appdata.xml $PKG/usr/share/metainfo/
+mkdir -p $PKG/usr/share/lagrange/
+cp -a build/resources.lgr $PKG/usr/share/lagrange/
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ AUTHORS.md LICENSE.md 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/lagrange/lagrange.info b/network/lagrange/lagrange.info
new file mode 100644
index 0000000000..45ead71a4f
--- /dev/null
+++ b/network/lagrange/lagrange.info
@@ -0,0 +1,10 @@
+PRGNAM="lagrange"
+VERSION="1.15.6"
+HOMEPAGE="https://gmi.skyjake.fi/lagrange/"
+DOWNLOAD="https://git.skyjake.fi/skyjake/lagrange/releases/download/v1.15.6/lagrange-1.15.6.tar.gz"
+MD5SUM="6bf6dd7e5c7e7483ee26ec64fe6619fb"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Frederic Galusik"
+EMAIL="f@galusik.fr"
diff --git a/network/lagrange/slack-desc b/network/lagrange/slack-desc
new file mode 100644
index 0000000000..881668c252
--- /dev/null
+++ b/network/lagrange/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------------------------------------------------------|
+lagrange: lagrange (desktop GUI client for browsing Geminispace)
+lagrange:
+lagrange: Lagrange is a desktop GUI client for browsing Geminispace. It offers
+lagrange: modern conveniences familiar from web browsers, such as smooth
+lagrange: scrolling, inline image viewing, multiple tabs, visual themes,
+lagrange: Unicode fonts, bookmarks, history, and page outlines.
+lagrange:
+lagrange: Like Gemini, Lagrange has been designed with minimalism in mind. It
+lagrange: depends on a small number of essential libraries. It is written in C
+lagrange: and uses SDL for hardware-accelerated graphics. OpenSSL is used for
+lagrange: secure communications.
diff --git a/network/ldapvi/ldapvi.SlackBuild b/network/ldapvi/ldapvi.SlackBuild
index e2cca8e1e6..355cefd95c 100644
--- a/network/ldapvi/ldapvi.SlackBuild
+++ b/network/ldapvi/ldapvi.SlackBuild
@@ -38,14 +38,6 @@ BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
@@ -58,6 +50,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
diff --git a/network/librespeed-cli/README b/network/librespeed-cli/README
new file mode 100644
index 0000000000..d851665ecc
--- /dev/null
+++ b/network/librespeed-cli/README
@@ -0,0 +1,17 @@
+Speedtest CLI brings the trusted technology and global server network
+behind Speedtest to the command line. Built for software developers,
+system administrators and computer enthusiasts alike, Speedtest CLI is
+the first official Linux-native Speedtest application backed by Ookla®.
+
+With Speedtest CLI, you can easily:
+
+* Measure internet connection performance metrics like download, upload,
+ latency and packet loss natively without relying on a web browser
+* Test the internet connection of your Linux desktop, a remote server or
+ even lower-powered devices such as the Raspberry Pi with the
+ Speedtest Server Network
+* Set up automated scripts to collect connection performance data,
+ including trends over time
+* Use Speedtest in your programs by wrapping it in the programming
+ language of your choice
+* View test results via CSV, JSONL or JSON
diff --git a/network/prosody-mod-csi/prosody-mod-csi.SlackBuild b/network/librespeed-cli/librespeed-cli.SlackBuild
index bd3ac99328..ca1000b2d6 100644
--- a/network/prosody-mod-csi/prosody-mod-csi.SlackBuild
+++ b/network/librespeed-cli/librespeed-cli.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for prosody-mod-csi
+# Slackware build script for librespeed-cli
-# Copyright 2016-2018 Andrew Clemons, Wellington, New Zealand
+# Copyright 2024 Ivan Kovmir <i@kovmir.eu>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,12 +22,10 @@
# 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)
+cd "$(dirname "$0")" ; CWD=$(pwd)
-PRGNAM=prosody-mod-csi
-MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
-VERSION=${VERSION:-hg4785}
-REVISION=${REVISION:-05bea2f43d97}
+PRGNAM=librespeed-cli
+VERSION=${VERSION:-1.0.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,10 +38,7 @@ 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
+if [ -n "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
@@ -53,23 +48,25 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
- LIBDIRSUFFIX=""
+ PKG_ARCH=i386
elif [ "$ARCH" = "i686" ]; then
- LIBDIRSUFFIX=""
+ PKG_ARCH=i386
elif [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
+ PKG_ARCH=amd64
else
- LIBDIRSUFFIX=""
+ echo "$ARCH is not supported."
+ exit 1
fi
set -e
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf Community-Modules-$REVISION
-tar xvf $CWD/Community-Modules-$REVISION.tar.gz || tar xvf $CWD/$REVISION.tar.gz
-cd Community-Modules-$REVISION
+rm -rf "$PKG"
+mkdir -p "$TMP" "$PKG" "$OUTPUT"
+cd "$TMP"
+rm -rf "$PRGNAM-$VERSION"
+mkdir -p "$PRGNAM-$VERSION"
+tar xvf "$CWD/${PRGNAM}_${VERSION}_linux_${PKG_ARCH}.tar.gz" -C "$PRGNAM-$VERSION"
+cd "$PRGNAM-$VERSION"
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -77,17 +74,14 @@ 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 {} \;
-mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/
-cp -a $MDLNAM $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/
+mkdir -p "$PKG/usr/bin/$SRCNAM"
+install "$PRGNAM" "$PKG/usr/bin"
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv \
- $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/$MDLNAM/README.markdown \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+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
+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
+cd "$PKG"
+/sbin/makepkg -l y -c n "$OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
diff --git a/network/librespeed-cli/librespeed-cli.info b/network/librespeed-cli/librespeed-cli.info
new file mode 100644
index 0000000000..bc2e56a501
--- /dev/null
+++ b/network/librespeed-cli/librespeed-cli.info
@@ -0,0 +1,10 @@
+PRGNAM="librespeed-cli"
+VERSION="1.0.10"
+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"
+REQUIRES=""
+MAINTAINER="Ivan Kovmir"
+EMAIL="i@kovmir.eu"
diff --git a/network/librespeed-cli/slack-desc b/network/librespeed-cli/slack-desc
new file mode 100644
index 0000000000..aa6096d070
--- /dev/null
+++ b/network/librespeed-cli/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------------------------------------------------------|
+librespeed-cli: librespeed-cli (LibreSpeed CLI)
+librespeed-cli:
+librespeed-cli: Command line program to test internet connection speed.
+librespeed-cli:
+librespeed-cli:
+librespeed-cli:
+librespeed-cli:
+librespeed-cli:
+librespeed-cli:
+librespeed-cli:
+librespeed-cli: Homepage: https://github.com/librespeed/speedtest-cli
diff --git a/network/libressl/README b/network/libressl/README
new file mode 100644
index 0000000000..e2ef33ecf2
--- /dev/null
+++ b/network/libressl/README
@@ -0,0 +1,75 @@
+LibreSSL is a fork of OpenSSL 1.0.1g developed by the OpenBSD project.
+Our goal is to modernize the codebase, improve security, and apply best
+practice development processes from OpenBSD.
+
+The binaries are installed as libressl-openssl, libressl-ocspcheck, and
+libressl-nc.
+
+************************************************************************
+NOTE! This contains libtls so the standalone libtls package should be
+removed before building and installing libressl.
+************************************************************************
+
+Compatibility with OpenSSL:
+
+LibreSSL is API compatible with OpenSSL 1.0.1, but does not yet include
+all new APIs from OpenSSL 1.0.2 and later. LibreSSL also includes APIs
+not yet present in OpenSSL. The current common API subset is OpenSSL
+1.0.1.
+
+LibreSSL is not ABI compatible with any release of OpenSSL, or
+necessarily earlier releases of LibreSSL. You will need to relink your
+programs to LibreSSL in order to use it, just as in moving between major
+versions of OpenSSL. LibreSSL's installed library version numbers are
+incremented to account for ABI and API changes.
+
+Compatibility with other operating systems:
+
+While primarily developed on and taking advantage of APIs available on
+OpenBSD, the LibreSSL portable project attempts to provide working
+alternatives for other operating systems, and assists with improving
+OS-native implementations where possible.
+
+At the time of this writing, LibreSSL is known to build and work on:
+
+* Linux (kernel 3.17 or later recommended)
+* FreeBSD (tested with 9.2 and later)
+* NetBSD (7.0 or later recommended)
+* HP-UX (11i)
+* Solaris (11 and later preferred)
+* Mac OS X (tested with 10.8 and later)
+* AIX (5.3 and later)
+
+LibreSSL also supports the following Windows environments:
+* Microsoft Windows (Windows 7 / Windows Server 2008r2 or later, x86 and
+ x64)
+* Wine (32-bit and 64-bit)
+* Mingw-w64, Cygwin, and Visual Studio
+
+Please report bugs either to the public libressl@openbsd.org mailing
+list, or to the github
+
+Severe vulnerabilities or bugs requiring coordination with OpenSSL can
+be sent to the core team at libressl-security@openbsd.org.
+
+OPTIONS:
+
+By default a minimal set of man pages are installed:
+
+/usr/man/man1/libressl-nc
+/usr/man/man1/libressl-openssl
+/usr/man/man8/libressl-ocspcheck
+
+To install them all, use:
+
+MANPAGES=yes ./libressl.SlackBuild
+
+========================================================================
+
+MAINTAINER NOTES
+
+NOTE: PKG_CONFIG_PATH will likely need setting in your build scripts:
+
+PKG_CONFIG_PATH=/usr/lib$LIBDIRSUFFIX/libressl/pkgconfig:$PKG_CONFIG_PATH
+
+========================================================================
diff --git a/network/libressl/libressl.SlackBuild b/network/libressl/libressl.SlackBuild
new file mode 100644
index 0000000000..4572cfb570
--- /dev/null
+++ b/network/libressl/libressl.SlackBuild
@@ -0,0 +1,108 @@
+#!/bin/bash
+
+# slackbuild script for libressl
+# By D Woodfall <dave@slackbuilds.org>
+# Licensed under the WTFPL (http://www.wtfpl.net)
+#
+# 2023-04-18 12:11:51 +0100 Thanks to Naglfar: --with-openssldir=/etc/$PRGNAM
+# 2023-05-10 12:04:05 +0100 Remove ld.so.conf stuff.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=libressl
+VERSION=${VERSION:-3.7.1}
+BUILD=${BUILD:-2}
+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 . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + \
+ -o \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# Don't install man page symlinks
+sed -i '/ln -sf.*\.3"$/d' man/Makefile.in
+
+if [ "${MANPAGES:-no}" = no ]; then
+ sed -i '/man\/Makefile/d' configure.ac
+ autoreconf -f
+ sed -i "s, man , ,g; s, install-man , ,g" Makefile.in
+fi
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --enable-nc \
+ --disable-tests \
+ --disable-static \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX}/$PRGNAM \
+ --includedir=/usr/include/$PRGNAM \
+ --with-openssldir=/etc/$PRGNAM \
+ --program-prefix "$PRGNAM-" \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+rm -f $PKG/usr/lib${LIBDIRSUFFIX}/$PRGNAM/*.la
+
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+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 \
+ COPYING ChangeLog README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/$PRGNAM-$VERSION-relnotes.txt > \
+ $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM-$VERSION-relnotes.txt
+
+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/libressl/libressl.info b/network/libressl/libressl.info
new file mode 100644
index 0000000000..ca19db9fe0
--- /dev/null
+++ b/network/libressl/libressl.info
@@ -0,0 +1,12 @@
+PRGNAM="libressl"
+VERSION="3.7.1"
+HOMEPAGE="https://www.libressl.org"
+DOWNLOAD="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.7.1.tar.gz \
+ https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.7.1-relnotes.txt"
+MD5SUM="133f11e478f46528414245dccb6355f2 \
+ 0b1e4784b5c3b2672c9e7432e11d1fa3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="D Woodfall"
+EMAIL="dave@slackbuilds.org"
diff --git a/network/sendxmpp/slack-desc b/network/libressl/slack-desc
index 23ef92eae0..0e240ea20a 100644
--- a/network/sendxmpp/slack-desc
+++ b/network/libressl/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-sendxmpp: sendxmpp (send xmpp messages from the command line)
-sendxmpp:
-sendxmpp: sendxmpp is a program to send XMPP (Jabber) messages from the
-sendxmpp: command line, not unlike mail(1). Messages can be sent both to
-sendxmpp: individual recipients and chatrooms.
-sendxmpp:
-sendxmpp: XMPP is an open, non-proprietary protocol for instant messaging.
-sendxmpp:
-sendxmpp: Homepage: https://sendxmpp.hostname.sk
-sendxmpp:
-sendxmpp:
+libressl: libressl (OpenSSL fork by OpenBSD)
+libressl:
+libressl: LibreSSL is a fork of OpenSSL 1.0.1g developed by the OpenBSD
+libressl: project. Our goal is to modernize the codebase, improve security,
+libressl: and apply best practice development processes from OpenBSD.
+libressl:
+libressl: https://www.libressl.org
+libressl:
+libressl:
+libressl:
+libressl:
diff --git a/network/librewolf/README b/network/librewolf/README
new file mode 100644
index 0000000000..76c78d15f1
--- /dev/null
+++ b/network/librewolf/README
@@ -0,0 +1,12 @@
+This project is a custom and independent version of Firefox, with the
+primary goals of privacy, security and user freedom.
+
+LibreWolf is designed to increase protection against tracking and
+fingerprinting techniques, while also including a few security
+improvements. This is achieved through our privacy and security oriented
+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
+'/opt'.
diff --git a/network/DarTui/doinst.sh b/network/librewolf/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/network/DarTui/doinst.sh
+++ b/network/librewolf/doinst.sh
diff --git a/network/librewolf/librewolf.SlackBuild b/network/librewolf/librewolf.SlackBuild
new file mode 100644
index 0000000000..9a80ffed69
--- /dev/null
+++ b/network/librewolf/librewolf.SlackBuild
@@ -0,0 +1,78 @@
+#!/bin/bash
+
+# Slackware build script for librewolf
+
+# Copyright 2022-2023 Ivan Kovmir <i@kovmir.eu>
+# 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=librewolf
+VERSION=${VERSION:-124.0.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH="${ARCH:-$(uname -m)}"
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH is not supported for $PRGNAM-$VERSION."
+ exit 1;
+fi
+
+if [ -n "${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}"
+
+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"
diff --git a/network/librewolf/librewolf.info b/network/librewolf/librewolf.info
new file mode 100644
index 0000000000..1a5c55807e
--- /dev/null
+++ b/network/librewolf/librewolf.info
@@ -0,0 +1,10 @@
+PRGNAM="librewolf"
+VERSION="124.0.1"
+HOMEPAGE="https://librewolf.net/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://gitlab.com/api/v4/projects/24386000/packages/generic/librewolf/124.0.1-1/LibreWolf.x86_64.AppImage"
+MD5SUM_x86_64="25f0a7268dcf213eec4c20225e1c8b47"
+REQUIRES=""
+MAINTAINER="Ivan Kovmir"
+EMAIL="i@kovmir.eu"
diff --git a/network/librewolf/slack-desc b/network/librewolf/slack-desc
new file mode 100644
index 0000000000..f6c5fd0cae
--- /dev/null
+++ b/network/librewolf/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------------------------------------------------------|
+librewolf: librewolf (Private Web Browser)
+librewolf:
+librewolf: This project is a custom and independent version of Firefox, with the
+librewolf: LibreWolf: primary goals of privacy, security and user freedom.
+librewolf:
+librewolf:
+librewolf:
+librewolf:
+librewolf:
+librewolf: https://librewolf.net/
+librewolf:
diff --git a/network/libteam/libteam.SlackBuild b/network/libteam/libteam.SlackBuild
index 9e1fd399db..c8557c1968 100644
--- a/network/libteam/libteam.SlackBuild
+++ b/network/libteam/libteam.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=libteam
-VERSION=${VERSION:-1.31}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.32}
+BUILD=${BUILD:-1}
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
diff --git a/network/libteam/libteam.info b/network/libteam/libteam.info
index 5e16f8364b..0eee2dac7f 100644
--- a/network/libteam/libteam.info
+++ b/network/libteam/libteam.info
@@ -1,8 +1,8 @@
PRGNAM="libteam"
-VERSION="1.31"
+VERSION="1.32"
HOMEPAGE="http://libteam.org/"
-DOWNLOAD="https://github.com/jpirko/libteam/archive/v1.31/libteam-1.31.tar.gz"
-MD5SUM="3290ee003707684d84d1ff2bdaeda059"
+DOWNLOAD="https://github.com/jpirko/libteam/archive/v1.32/libteam-1.32.tar.gz"
+MD5SUM="89eea1af705886acbbc7f0685a2638df"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libdaemon"
diff --git a/network/libtls/README b/network/libtls/README
new file mode 100644
index 0000000000..960ec647d0
--- /dev/null
+++ b/network/libtls/README
@@ -0,0 +1,12 @@
+The tls family of functions establishes a secure communications channel
+using the TLS socket protocol. Both clients and servers are supported.
+
+A TLS connection object is created by tls_client(3) or tls_server(3) and
+configured with tls_configure(3).
+
+This also includes a TLS-enabled version of netcat (libressl-nc).
+
+************************************************************************
+NOTE! The libressl package already contains libtls.
+It's recommended to uninstall this before installing libressl.
+************************************************************************
diff --git a/network/libtls/libtls.SlackBuild b/network/libtls/libtls.SlackBuild
new file mode 100644
index 0000000000..a36c2f04d4
--- /dev/null
+++ b/network/libtls/libtls.SlackBuild
@@ -0,0 +1,110 @@
+#!/bin/bash
+
+# slackbuild script for libtls by D Woodfall
+#
+# WTFPL licence 2023
+
+# BUILD 2: Thanks to Naglfar:
+#
+# --with-openssldir=/etc/libressl \
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=libtls
+SRCNAM=libressl
+VERSION=${VERSION:-3.7.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 $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
+cd $SRCNAM-$VERSION
+chown -R root:root .
+find . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + \
+ -o \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --enable-libtls-only \
+ --enable-nc \
+ --disable-tests \
+ --disable-static \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc/libressl \
+ --with-openssldir=/etc/libressl \
+ --program-prefix "libressl-" \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+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
+
+gzip -9 $PKG/usr/man/man1/libressl-nc.1
+
+mkdir -p $PKG/usr/man/man3
+
+for page in \
+ tls_client.3 tls_config_ocsp_require_stapling.3 \
+ tls_config_set_protocols.3 tls_config_set_session_id.3 tls_config_verify.3 \
+ tls_conn_version.3 tls_connect.3 tls_init.3 tls_load_file.3 \
+ tls_ocsp_process_response.3 tls_read.3; do
+ gzip -9c man/$page > $PKG/usr/man/man3/$page.gz
+done
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING ChangeLog README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
+
+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/libtls/libtls.info b/network/libtls/libtls.info
new file mode 100644
index 0000000000..63e80c1de2
--- /dev/null
+++ b/network/libtls/libtls.info
@@ -0,0 +1,10 @@
+PRGNAM="libtls"
+VERSION="3.7.1"
+HOMEPAGE="https://www.libressl.org"
+DOWNLOAD="https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-3.7.1.tar.gz"
+MD5SUM="133f11e478f46528414245dccb6355f2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="D Woodfall"
+EMAIL="dave@slackbuilds.org"
diff --git a/network/libtls/slack-desc b/network/libtls/slack-desc
new file mode 100644
index 0000000000..df5dc9b3b8
--- /dev/null
+++ b/network/libtls/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------------------------------------------------------|
+libtls: libtls (a new TLS library by OpenBSD, part of libreSSL)
+libtls:
+libtls: The tls family of functions establishes a secure communications
+libtls: channel using the TLS socket protocol. Both clients and servers are
+libtls: supported.
+libtls:
+libtls: This also includes a TLS-enabled version of netcat (nc-tls).
+libtls:
+libtls: https://www.libtls.org
+libtls:
+libtls:
diff --git a/network/libvarlink/README b/network/libvarlink/README
new file mode 100644
index 0000000000..3311772b05
--- /dev/null
+++ b/network/libvarlink/README
@@ -0,0 +1,12 @@
+Varlink is an interface description format and protocol that aims to
+make services accessible to both humans and machines in the simplest
+feasible way.
+
+A varlink interface combines the classic UNIX command line options,
+STDIN/OUT/ERROR text formats, man pages, service metadata and provides
+the equivalent over a single file descriptor, a.k.a. “FD3”.
+
+Varlink is plain-text, type-safe, discoverable, self-documenting,
+remotable, testable, easy to debug. Varlink is accessible from any
+programming environment. See the Ideals page for more. And everybody
+likes Screenshots.
diff --git a/network/libvarlink/libvarlink.SlackBuild b/network/libvarlink/libvarlink.SlackBuild
new file mode 100644
index 0000000000..9153b3d44c
--- /dev/null
+++ b/network/libvarlink/libvarlink.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Slackware build script for libvarlink
+
+# Copyright 2023, Lockywolf
+# 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=libvarlink
+VERSION=${VERSION:-23}
+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 {} \;
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ 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
+
+
+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/libvarlink/libvarlink.info b/network/libvarlink/libvarlink.info
new file mode 100644
index 0000000000..e089879958
--- /dev/null
+++ b/network/libvarlink/libvarlink.info
@@ -0,0 +1,10 @@
+PRGNAM="libvarlink"
+VERSION="23"
+HOMEPAGE="https://github.com/varlink/libvarlink/"
+DOWNLOAD="https://github.com/varlink/libvarlink/archive/refs/tags/23/libvarlink-23.tar.gz"
+MD5SUM="f5fb14310ba55a67c1927cef41e759ad"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.libvarlink_2023-07-12@lockywolf.net"
diff --git a/network/libvarlink/slack-desc b/network/libvarlink/slack-desc
new file mode 100644
index 0000000000..3b4cc52c09
--- /dev/null
+++ b/network/libvarlink/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------------------------------------------------------|
+libvarlink: libvarlink (C implementation of the Varlink protocol and cmd tool)
+libvarlink:
+libvarlink: Varlink is an interface description format and protocol that aims to
+libvarlink: make services accessible to both humans and machines in the simplest
+libvarlink: feasible way.
+libvarlink:
+libvarlink:
+libvarlink:
+libvarlink:
+libvarlink:
+libvarlink:
diff --git a/network/light-firefox/README b/network/light-firefox/README
deleted file mode 100644
index a19b6d6338..0000000000
--- a/network/light-firefox/README
+++ /dev/null
@@ -1,4 +0,0 @@
-A light browser based on Mozilla source code. Many components
-are slimmed down. So it can start faster and use less memory. By
-default, Light can run along with firefox. Both x86 and x64 builds are
-available.
diff --git a/network/light-firefox/doinst.sh b/network/light-firefox/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/light-firefox/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/light-firefox/light-firefox.SlackBuild b/network/light-firefox/light-firefox.SlackBuild
deleted file mode 100644
index 40c7e171ea..0000000000
--- a/network/light-firefox/light-firefox.SlackBuild
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for light-firefox
-
-# Copyright 2016 Dimitris Zlatanidis Orestiada, Greece
-# 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=light-firefox
-SRCNAM=$(printf $PRGNAM | cut -c1-5)
-VERSION=${VERSION:-48.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
-
-set -e
-
-SRCARCH="linux-i686"
-if [ "$ARCH" = "x86_64" ]; then
- SRCARCH=linux-$ARCH
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-mkdir $PRGNAM-$VERSION && cd $PRGNAM-$VERSION
-rpm2cpio $CWD/$SRCNAM-$VERSION.$SRCARCH.rpm | cpio -idmv
-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 {} \;
-
-# Install data
-mkdir -p $PKG/opt/$PRGNAM-$VERSION
-cp -rf * $PKG/opt/$PRGNAM-$VERSION
-
-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
-
-# Create soft link for launcher
-mkdir -p $PKG/usr/bin
-(
- cd $PKG/usr/bin
- ln -sf /opt/$PRGNAM-$VERSION/usr/local/lib/light/light-bin $PRGNAM
-)
-
-# Fix .desktop file
-sed -i -e "s/Name=Light/Name=Light Firefox/" -e "s/Exec=light/Exec=$PRGNAM/" -e \
- "s/Icon=light/Icon=$PRGNAM/" usr/local/share/applications/mozilla-$SRCNAM.desktop
-
-# Install .desktop file
-mkdir -p $PKG/usr/share/applications
-cat usr/local/share/applications/mozilla-$SRCNAM.desktop > \
- $PKG/usr/share/applications/$PRGNAM.desktop
-
-# Install .desktop icon
-mkdir -p $PKG/usr/share/pixmaps
-install -D -m0644 usr/local/share/icons/hicolor/48x48/apps/$SRCNAM.png \
- $PKG/usr/share/pixmaps/$PRGNAM.png
-
-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/light-firefox/light-firefox.info b/network/light-firefox/light-firefox.info
deleted file mode 100644
index a6e691aa7f..0000000000
--- a/network/light-firefox/light-firefox.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="light-firefox"
-VERSION="48.0"
-HOMEPAGE="https://sourceforge.net/projects/lightfirefox/"
-DOWNLOAD="https://sourceforge.net/projects/lightfirefox/files/48/201607300954_gcc232/light-48.0.linux-i686.rpm"
-MD5SUM="a7bb40fbe7787c90a09e3f18de43e8ec"
-DOWNLOAD_x86_64="http://downloads.sourceforge.net/project/lightfirefox/48/201607300931_gcc2/light-48.0.linux-x86_64.rpm"
-MD5SUM_x86_64="c14047d4a173b699b6ed865e6ce38eb9"
-REQUIRES=""
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/lighttpd/conf/lighttpd.conf b/network/lighttpd/conf/lighttpd.conf
index 762ab75b7f..e54b720aa8 100644
--- a/network/lighttpd/conf/lighttpd.conf
+++ b/network/lighttpd/conf/lighttpd.conf
@@ -15,7 +15,7 @@
##
var.log_root = "/var/log/lighttpd"
var.server_root = "/srv/www"
-var.state_dir = "/run"
+var.state_dir = "/run/lighttpd"
var.home_dir = "/var/lib/lighttpd"
var.conf_dir = "/etc/lighttpd"
@@ -24,7 +24,7 @@ var.conf_dir = "/etc/lighttpd"
##
## This requires root permissions during startup.
##
-## If you run Chrooted set the the variables to directories relative to
+## If you run chroot'ed, set the variables to directories relative to
## the chroot dir.
##
## example chroot configuration:
@@ -88,12 +88,8 @@ include conf_dir + "/modules.conf"
server.port = 80
##
-## Use IPv6?
-##
-server.use-ipv6 = "enable"
-
-##
## bind to a specific IP
+## (default: "*" for all local IPv4 interfaces)
##
#server.bind = "localhost"
@@ -183,7 +179,6 @@ include conf_dir + "/conf.d/debug.conf"
## solaris-eventports (recommended on Solaris)
## poll (recommended if none of above are available)
## select (*not* recommended)
-## libev (*not* recommended)
##
#server.event-handler = "linux-sysepoll"
diff --git a/network/lighttpd/conf/rc.lighttpd b/network/lighttpd/conf/rc.lighttpd
index d2357dfc1a..d8db582c6f 100644
--- a/network/lighttpd/conf/rc.lighttpd
+++ b/network/lighttpd/conf/rc.lighttpd
@@ -21,7 +21,7 @@
#
LIGHTTPD=/usr/sbin/lighttpd
-PIDFILE=/var/run/lighttpd/lighttpd.pid
+PIDFILE=/run/lighttpd/lighttpd.pid
LIGHTTPD_OPTIONS="-f /etc/lighttpd/lighttpd.conf"
is_pidof() {
diff --git a/network/lighttpd/lighttpd.SlackBuild b/network/lighttpd/lighttpd.SlackBuild
index 6536dd3bce..6f11dbac3e 100644
--- a/network/lighttpd/lighttpd.SlackBuild
+++ b/network/lighttpd/lighttpd.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for lighttpd
# Copyright (c) 2007 Daniel de Kok <moc.mikciat@leinad>
-# Copyright 2016-2022 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2016-2024 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=lighttpd
-VERSION=${VERSION:-1.4.66}
+VERSION=${VERSION:-1.4.76}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -101,6 +101,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 {} \;
+./autogen.sh
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
diff --git a/network/lighttpd/lighttpd.info b/network/lighttpd/lighttpd.info
index 4007fa0edd..e66a015e97 100644
--- a/network/lighttpd/lighttpd.info
+++ b/network/lighttpd/lighttpd.info
@@ -1,8 +1,8 @@
PRGNAM="lighttpd"
-VERSION="1.4.66"
+VERSION="1.4.76"
HOMEPAGE="http://www.lighttpd.net/"
-DOWNLOAD="http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.66.tar.xz"
-MD5SUM="78b43d1dc36e1cf34d4003bc5e97a964"
+DOWNLOAD="http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.76.tar.xz"
+MD5SUM="f9018cda389b1aa6dae4c5f962c20825"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/limnoria/limnoria.SlackBuild b/network/limnoria/limnoria.SlackBuild
index 55a4abf652..e2545f2367 100644
--- a/network/limnoria/limnoria.SlackBuild
+++ b/network/limnoria/limnoria.SlackBuild
@@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=limnoria
SRCNAM=Limnoria-master
-VERSION=${VERSION:-2021_04_11}
+VERSION=${VERSION:-2023_02_11}
SRCVERSION=${VERSION//_/-}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/limnoria/limnoria.info b/network/limnoria/limnoria.info
index 98b1b04ded..cd4bac48a4 100644
--- a/network/limnoria/limnoria.info
+++ b/network/limnoria/limnoria.info
@@ -1,10 +1,10 @@
PRGNAM="limnoria"
-VERSION="2021_04_11"
+VERSION="2023_02_11"
HOMEPAGE="https://github.com/ProgVal/Limnoria"
-DOWNLOAD="https://github.com/ProgVal/Limnoria/archive/master-2021-04-11/Limnoria-master-2021-04-11.tar.gz"
-MD5SUM="5822c4292697e35d758d716d0a810327"
+DOWNLOAD="https://github.com/ProgVal/Limnoria/archive/master-2023-02-11/Limnoria-master-2023-02-11.tar.gz"
+MD5SUM="1bad4d31cf1e3d5a91a83e06b9f6bdd7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/linksys-tftp/README b/network/linksys-tftp/README
index 3a11f65459..892d659812 100644
--- a/network/linksys-tftp/README
+++ b/network/linksys-tftp/README
@@ -17,3 +17,5 @@ linksys-tftp>timeout 120
linksys-tftp>trace
linksys-tftp>put WRT54G_WRT54GL.bin admin
linksys-tftp>quit
+
+atftp can be used with the -P option, instead of linksys-tftp.
diff --git a/network/linksys-tftp/linksys-tftp-1.2.1-stdc-main.patch b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-main.patch
new file mode 100644
index 0000000000..ff27a1bfb6
--- /dev/null
+++ b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-main.patch
@@ -0,0 +1,292 @@
+--- linksys-tftp-1.2.1/main.c 2024-04-16 08:27:50.327449884 -0700
++++ linksys-tftp-1.2.1/main.c 2024-04-15 21:36:43.035399534 -0700
+@@ -33,6 +33,7 @@ static char sccsid[] = "@(#)main.c 5.8 (
+ #include <sys/file.h>
+
+ #include <netinet/in.h>
++#include <arpa/inet.h>
+
+ #include <signal.h>
+ #include <stdio.h>
+@@ -43,7 +44,11 @@ static char sccsid[] = "@(#)main.c 5.8 (
+ #include <stdlib.h>
+ #include <string.h>
+ #include <unistd.h>
+-#include <sys/sendfile.h>
++/* #include <sys/sendfile.h> */
++
++/* routines from tftp.c */
++extern void sendfile(int fd, char *name, char *mode, char *linkpass);
++extern void recvfile(int fd, char *name, char *mode, char *linkpass);
+
+ #define TIMEOUT 5 /* secs between rexmt's */
+
+@@ -64,9 +69,13 @@ struct servent *sp;
+
+ int segsize = 512;
+
+-int quit(), help(), setverbose(), settrace(), status();
+-int get(), put(), setpeer(), modecmd(), setrexmt(), settimeout();
+-int setbinary(), banner(), setascii(), setblocksize();
++/* local routines */
++int quit(), help(), setverbose(), settrace(), status(), command();
++int get(), getusage(), put(), putusage();
++int setpeer(), modecmd(), setrexmt(), settimeout(), status();
++int setbinary(), setascii();
++void setmode(), makeargv();
++int setblocksize(), banner();
+
+ #define HELPINDENT (sizeof("connect"))
+
+@@ -114,8 +123,7 @@ struct cmd *getcmd();
+ char *index();
+ char *rindex();
+
+-int main(argc, argv)
+- char *argv[];
++int main(int argc, char *argv[])
+ {
+ struct sockaddr_in sin;
+ int top;
+@@ -147,13 +155,12 @@ int main(argc, argv)
+ top = setjmp(toplevel) == 0;
+ for (;;)
+ command(top);
++ return 0;
+ }
+
+ char hostname[100];
+
+-setpeer(argc, argv)
+- int argc;
+- char *argv[];
++int setpeer(int argc, char *argv[])
+ {
+ struct hostent *host;
+
+@@ -187,6 +194,7 @@ setpeer(argc, argv)
+ port = htons(port);
+ }
+ connected = 1;
++ return 0;
+ }
+
+ struct modes {
+@@ -201,8 +209,7 @@ struct modes {
+ { 0, 0 }
+ };
+
+-modecmd(argc, argv)
+- char *argv[];
++int modecmd(int argc, char *argv[])
+ {
+ register struct modes *p;
+ char *sep;
+@@ -234,18 +241,17 @@ modecmd(argc, argv)
+ return 0;
+ }
+
+-setbinary(argc, argv)
+-char *argv[];
+-{ setmode("octet");
++int setbinary(int argc, char *argv[])
++{
++ setmode("octet");
+ }
+
+-setascii(argc, argv)
+-char *argv[];
+-{ setmode("netascii");
+-}
++int setascii(int argc, char *argv[])
++{
++ setmode("netascii");
++ }
+
+-setmode(newmode)
+-char *newmode;
++void setmode(char *newmode)
+ {
+ strcpy(mode, newmode);
+ if (verbose)
+@@ -256,8 +262,7 @@ char *newmode;
+ * Send file(s).
+ */
+
+-put(argc, argv)
+- char *argv[];
++int put(int argc, char *argv[])
+ {
+ int fd;
+ register int n;
+@@ -286,8 +291,7 @@ put(argc, argv)
+ return 0;
+ }
+
+-putusage(s)
+- char *s;
++int putusage(char *s)
+ {
+ printf("usage: %s file [linksys pass] (you must be connected)\n", s);
+ return 0;
+@@ -296,8 +300,7 @@ putusage(s)
+ /*
+ * Receive file(s).
+ */
+-get(argc, argv)
+- char *argv[];
++int get(int argc, char *argv[])
+ {
+ int fd;
+ register int n;
+@@ -327,16 +330,15 @@ get(argc, argv)
+ return 0;
+ }
+
+-getusage(s)
+-char * s;
++int getusage(char *s)
+ {
+ printf("usage: %s file [linksys pass] (you must be connected)\n", s);
++ return 0;
+ }
+
+ int rexmtval = TIMEOUT;
+
+-setrexmt(argc, argv)
+- char *argv[];
++int setrexmt(int argc, char *argv[])
+ {
+ int t;
+
+@@ -357,12 +359,12 @@ setrexmt(argc, argv)
+ printf("%d: bad value\n", t);
+ else
+ rexmtval = t;
++ return 0;
+ }
+
+ int maxtimeout = 5 * TIMEOUT;
+
+-settimeout(argc, argv)
+- char *argv[];
++int settimeout(int argc, char *argv[])
+ {
+ int t;
+
+@@ -383,10 +385,10 @@ settimeout(argc, argv)
+ printf("%d: bad value\n", t);
+ else
+ maxtimeout = t;
++ return 0;
+ }
+
+-status(argc, argv)
+- char *argv[];
++int status(int argc, char *argv[])
+ {
+ if (connected)
+ printf("Connected to %s.\n", hostname);
+@@ -396,6 +398,7 @@ status(argc, argv)
+ verbose ? "on" : "off", trace ? "on" : "off");
+ printf("Rexmt-interval: %d seconds, Max-timeout: %d seconds\n",
+ rexmtval, maxtimeout);
++ return 0;
+ }
+
+ void intr(int sig)
+@@ -408,8 +411,7 @@ void intr(int sig)
+ /*
+ * Command parser.
+ */
+-command(top)
+- int top;
++int command(int top)
+ {
+ register struct cmd *c;
+
+@@ -438,11 +440,10 @@ command(top)
+ }
+ (*c->handler)(margc, margv);
+ }
++ return 0;
+ }
+
+-struct cmd *
+-getcmd(name)
+- register char *name;
++struct cmd *getcmd(register char *name)
+ {
+ register char *p, *q;
+ register struct cmd *c, *found;
+@@ -473,7 +474,7 @@ getcmd(name)
+ /*
+ * Slice a string up into argc/argv.
+ */
+-makeargv()
++void makeargv()
+ {
+ register char *cp;
+ register char **argp = margv;
+@@ -496,7 +497,7 @@ makeargv()
+ }
+
+ /*VARARGS*/
+-quit()
++int quit()
+ {
+ exit(0);
+ }
+@@ -504,9 +505,7 @@ quit()
+ /*
+ * Help command.
+ */
+-help(argc, argv)
+- int argc;
+- char *argv[];
++int help(int argc, char *argv[])
+ {
+ register struct cmd *c;
+
+@@ -527,24 +526,26 @@ help(argc, argv)
+ else
+ printf("%s\n", c->help);
+ }
++ return 0;
+ }
+
+ /*VARARGS*/
+-settrace()
++int settrace()
+ {
+ trace = !trace;
+ printf("Packet tracing %s.\n", trace ? "on" : "off");
++ return 0;
+ }
+
+ /*VARARGS*/
+-setverbose()
++int setverbose()
+ {
+ verbose = !verbose;
+ printf("Verbose mode %s.\n", verbose ? "on" : "off");
++ return 0;
+ }
+
+-setblocksize(argc, argv)
+- char *argv[];
++int setblocksize(int argc, char *argv[])
+ {
+ int t;
+
+@@ -565,8 +566,9 @@ setblocksize(argc, argv)
+ printf("%d: bad value\n", t);
+ else
+ segsize = t;
++ return 0;
+ }
+-banner() {
++int banner() {
+ printf("TJ Shelton\tredsand [at] redsand.net\n");
+ printf("Mike Lynn\tabaddon [at] 802.11ninja.net\n");
+ printf("Linksys TFTP Client for *BSD/Linux\tThe Firmware gets sexier\n");
diff --git a/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftp.patch b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftp.patch
new file mode 100644
index 0000000000..e9a77ac722
--- /dev/null
+++ b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftp.patch
@@ -0,0 +1,157 @@
+--- linksys-tftp-1.2.1/tftp.c 2024-04-16 08:27:50.328449885 -0700
++++ linksys-tftp-1.2.1/tftp.c 2024-04-15 21:26:36.259371211 -0700
+@@ -47,6 +47,13 @@ extern int rexmtval;
+ extern int maxtimeout;
+ extern int segsize;
+
++/* functions from tftpsubs */
++extern int readit(FILE *file, struct tftphdr **dpp, int convert);
++extern int read_ahead(FILE *file, int convert);
++extern int writeit(FILE *file, struct tftphdr **dpp, int ct, int convert);
++extern int write_behind( FILE *file, int convert);
++extern int synchnet(int f);
++
+ #define PKTSIZE (1432+4) /* SEGSIZE+4 */
+ char ackbuf[PKTSIZE];
+ int timeout;
+@@ -57,6 +64,19 @@ jmp_buf timeoutbuf;
+ #define OACK 6
+ #endif
+
++/* functions declared herein */
++void timer(int sig);
++void parseoack(char *cp, int sz);
++void sendfile(int fd, char *name, char *mode, char *linkpass);
++void recvfile(int fd, char *name, char *mode, char *linkpass);
++int makerequest(int request, char *name, struct tftphdr *tp, char *mode, char *linkpass);
++void nak(int error);
++void topts(char *cp, int sz);
++void tpacket(char *s, struct tftphdr *tp, int n);
++void startclock();
++void stopclock();
++void printstats(char *direction, unsigned long amount);
++
+ void timer(int sig)
+ {
+
+@@ -72,9 +92,7 @@ void timer(int sig)
+ /*
+ * Parse an OACK package and set blocksize accordingly
+ */
+-parseoack(cp, sz)
+- char *cp;
+- int sz;
++void parseoack(char *cp, int sz)
+ {
+ int n;
+
+@@ -106,11 +124,7 @@ parseoack(cp, sz)
+ /*
+ * Send the requested file.
+ */
+-sendfile(fd, name, mode, linkpass)
+- int fd;
+- char *name;
+- char *mode;
+- char *linkpass;
++void sendfile(int fd, char *name, char *mode, char *linkpass)
+ {
+ register struct tftphdr *ap; /* data and ack packets */
+ struct tftphdr *r_init(), *dp;
+@@ -211,7 +225,7 @@ send_data:
+ printf("protocol violation\n");
+ longjmp(toplevel, -1);
+ }
+- parseoack(&ap->th_stuff, n - 2);
++ parseoack(ap->th_stuff, n - 2);
+ break;
+ }
+ }
+@@ -231,11 +245,7 @@ abort:
+ /*
+ * Receive a file.
+ */
+-recvfile(fd, name, mode, linkpass)
+- int fd;
+- char *name;
+- char *mode;
+- char *linkpass;
++void recvfile(int fd, char *name, char *mode, char *linkpass)
+ {
+ register struct tftphdr *ap;
+ struct tftphdr *dp, *w_init();
+@@ -336,7 +346,7 @@ send_ack:
+ longjmp(toplevel, -1);
+ }
+ waitforoack = 0;
+- parseoack(&dp->th_stuff, n - 2);
++ parseoack(dp->th_stuff, n - 2);
+ ap->th_opcode = htons((u_short)ACK);
+ ap->th_block = htons(0);
+ size = 4;
+@@ -362,10 +372,7 @@ abort:
+ printstats("Received", amount);
+ }
+
+-makerequest(request, name, tp, mode, linkpass)
+- int request;
+- char *name, *mode, *linkpass;
+- struct tftphdr *tp;
++int makerequest(int request, char *name, struct tftphdr *tp, char *mode, char *linkpass)
+ {
+ register char *cp;
+
+@@ -404,8 +411,7 @@ struct errmsg {
+ * standard TFTP codes, or a UNIX errno
+ * offset by 100.
+ */
+-nak(error)
+- int error;
++void nak(int error)
+ {
+ register struct tftphdr *tp;
+ int length;
+@@ -431,9 +437,7 @@ nak(error)
+ perror("nak");
+ }
+
+-topts(cp, sz)
+- char *cp;
+- int sz;
++void topts(char *cp, int sz)
+ {
+ int n, i = 0;
+
+@@ -454,10 +458,7 @@ topts(cp, sz)
+ }
+ }
+
+-tpacket(s, tp, n)
+- char *s;
+- struct tftphdr *tp;
+- int n;
++void tpacket(char *s, struct tftphdr *tp, int n)
+ {
+ static char *opcodes[] =
+ { "#0", "RRQ", "WRQ", "DATA", "ACK", "ERROR", "OACK" };
+@@ -505,17 +506,15 @@ struct timeval tstart;
+ struct timeval tstop;
+ struct timezone zone;
+
+-startclock() {
++void startclock() {
+ gettimeofday(&tstart, &zone);
+ }
+
+-stopclock() {
++void stopclock() {
+ gettimeofday(&tstop, &zone);
+ }
+
+-printstats(direction, amount)
+-char *direction;
+-unsigned long amount;
++void printstats(char *direction, unsigned long amount)
+ {
+ double delta;
+ /* compute delta in 1/10's second units */
diff --git a/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftpsubs.patch b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftpsubs.patch
new file mode 100644
index 0000000000..96149667a4
--- /dev/null
+++ b/network/linksys-tftp/linksys-tftp-1.2.1-stdc-tftpsubs.patch
@@ -0,0 +1,111 @@
+--- linksys-tftp-1.2.1/tftpsubs.c 2024-04-16 08:27:50.310449884 -0700
++++ linksys-tftp-1.2.1/tftpsubs.c 2024-04-16 08:53:26.084521570 -0700
+@@ -38,6 +38,7 @@ static char sccsid[] = "@(#)tftpsubs.c 5
+ // modified tftp header to include pass
+ #include <tftp.h>
+ #include <stdio.h>
++#include <unistd.h>
+
+ #define PKTSIZE (1432+4) /* SEGSIZE+4 */ /* should be moved to tftp.h */
+
+@@ -60,14 +61,22 @@ static int current; /* index of buff
+ int newline = 0; /* fillbuf: in middle of newline expansion */
+ int prevchar = -1; /* putbuf: previous char (cr check) */
+
+-struct tftphdr *rw_init();
++/* functions declared in this program */
++struct tftphdr *w_init();
++struct tftphdr *r_init();
++struct tftphdr *rw_init(int x);
++int readit(FILE *file, struct tftphdr **dpp, int convert);
++int read_ahead(FILE *file, int convert);
++int writeit(FILE *file, struct tftphdr **dpp, int ct, int convert);
++int write_behind( FILE *file, int convert);
++int synchnet(int f);
+
+ struct tftphdr *w_init() { return rw_init(0); } /* write-behind */
+ struct tftphdr *r_init() { return rw_init(1); } /* read-ahead */
+
+-struct tftphdr *
+-rw_init(x) /* init for either read-ahead or write-behind */
+-int x; /* zero for write-behind, one for read-head */
++/* init for either read-ahead or write-behind */
++struct tftphdr *rw_init(int x)
++ /* zero for write-behind, one for read-head */
+ {
+ newline = 0; /* init crlf flag */
+ prevchar = -1;
+@@ -82,10 +91,8 @@ int x; /* zero for writ
+ /* Have emptied current buffer by sending to net and getting ack.
+ Free it and return next buffer filled with data.
+ */
+-readit(file, dpp, convert)
+- FILE *file; /* file opened for read */
+- struct tftphdr **dpp;
+- int convert; /* if true, convert to ascii */
++int readit(FILE *file, struct tftphdr **dpp, int convert)
++ /* file opened for read if true, convert to ascii */
+ {
+ struct bf *b;
+
+@@ -104,9 +111,9 @@ readit(file, dpp, convert)
+ * fill the input buffer, doing ascii conversions if requested
+ * conversions are lf -> cr,lf and cr -> cr, nul
+ */
+-read_ahead(file, convert)
+- FILE *file; /* file opened for read */
+- int convert; /* if true, convert to ascii */
++int read_ahead(FILE *file, int convert)
++ /* file opened for read */
++ /* if true, convert to ascii */
+ {
+ register int i;
+ register char *p;
+@@ -154,16 +161,14 @@ read_ahead(file, convert)
+ *p++ = c;
+ }
+ b->counter = (int)(p - dp->th_data);
++ return 0;
+ }
+
+ /* Update count associated with the buffer, get new buffer
+ from the queue. Calls write_behind only if next buffer not
+ available.
+ */
+-writeit(file, dpp, ct, convert)
+- FILE *file;
+- struct tftphdr **dpp;
+- int convert;
++int writeit(FILE *file, struct tftphdr **dpp, int ct, int convert)
+ {
+ bfs[current].counter = ct; /* set size of data to write */
+ current = !current; /* switch to other buffer */
+@@ -180,9 +185,7 @@ writeit(file, dpp, ct, convert)
+ * Note spec is undefined if we get CR as last byte of file or a
+ * CR followed by anything else. In this case we leave it alone.
+ */
+-write_behind(file, convert)
+- FILE *file;
+- int convert;
++int write_behind( FILE *file, int convert)
+ {
+ char *buf;
+ int count;
+@@ -238,9 +241,8 @@ skipit:
+ * when trace is active).
+ */
+
+-int
+-synchnet(f)
+-int f; /* socket to flush */
++int synchnet(int f)
++ /* socket to flush */
+ {
+ int i, j = 0;
+ char rbuf[PKTSIZE];
+@@ -258,4 +260,5 @@ int f; /* socket to flush */
+ return(j);
+ }
+ }
++ return 0; /* should never get here */
+ }
diff --git a/network/linksys-tftp/linksys-tftp.SlackBuild b/network/linksys-tftp/linksys-tftp.SlackBuild
index 7af5722f6f..7c2b9b8cf3 100644
--- a/network/linksys-tftp/linksys-tftp.SlackBuild
+++ b/network/linksys-tftp/linksys-tftp.SlackBuild
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20231030 bkw: modified by SlackBuilds.org, BUILD=4:
+# - fix README.Slackware permission.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=linksys-tftp
VERSION=${VERSION:-1.2.1}
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-5}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +41,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
@@ -61,9 +61,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# patches thanks to Gentoo
(echo " " && cat $CWD/linksys-tftp-1.2.1-r1-Makefile.patch) | patch -b -p1
@@ -71,6 +71,11 @@ find -L . \
(echo " " && cat $CWD/linksys-tftp-1.2.1-r1-fno-common.patch) | patch -b -p1
(echo " " && cat $CWD/linksys-tftp-1.2.1-r1-header.patch) | patch -b -p1
+# patches from aaazen to convert K & R to Standard C
+(echo " " && cat $CWD/linksys-tftp-1.2.1-stdc-tftpsubs.patch) | patch -b -p1
+(echo " " && cat $CWD/linksys-tftp-1.2.1-stdc-tftp.patch) | patch -b -p1
+(echo " " && cat $CWD/linksys-tftp-1.2.1-stdc-main.patch) | patch -b -p1
+
CFLAGS="$SLKCFLAGS -fcommon" \
make
@@ -81,7 +86,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $CWD/README $PKG/usr/doc/$PRGNAM-$VERSION/README.slackware
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.slackware
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/linksys-tftp/linksys-tftp.info b/network/linksys-tftp/linksys-tftp.info
index 59caa9a0de..7de9c49369 100644
--- a/network/linksys-tftp/linksys-tftp.info
+++ b/network/linksys-tftp/linksys-tftp.info
@@ -1,7 +1,7 @@
PRGNAM="linksys-tftp"
VERSION="1.2.1"
HOMEPAGE="https://www.redsand.net/solutions/linksys_tftp.html"
-DOWNLOAD="https://distfiles.gentoo.org/distfiles/linksys-tftp-1.2.1.tar.bz2"
+DOWNLOAD="https://distfiles.gentoo.org/distfiles/82/linksys-tftp-1.2.1.tar.bz2"
MD5SUM="e201eab05d2344b32f8fdf96462c27a4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/livestreamer-curses/README b/network/livestreamer-curses/README
deleted file mode 100644
index 0d08b2a1f8..0000000000
--- a/network/livestreamer-curses/README
+++ /dev/null
@@ -1,3 +0,0 @@
-Livestreamer-curses is a limited front-end to Chrippa's Livestreamer
-for UNIX systems. With it you can manage a list of your favorite streams
-and play them.
diff --git a/network/livestreamer-curses/doinst.sh b/network/livestreamer-curses/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/livestreamer-curses/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/livestreamer-curses/livestreamer-curses.info b/network/livestreamer-curses/livestreamer-curses.info
deleted file mode 100644
index 68f21d5a94..0000000000
--- a/network/livestreamer-curses/livestreamer-curses.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="livestreamer-curses"
-VERSION="1.5.2"
-HOMEPAGE="https://github.com/gapato/livestreamer-curses"
-DOWNLOAD="https://pypi.python.org/packages/source/l/livestreamer-curses/livestreamer-curses-1.5.2.tar.gz"
-MD5SUM="ea07058f327a3acdc62dc4301a4a6b85"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="livestreamer"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/livestreamer-curses/slack-desc b/network/livestreamer-curses/slack-desc
deleted file mode 100644
index 375b4dd301..0000000000
--- a/network/livestreamer-curses/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-livestreamer-curses: livestreamer-curses (curses frontend to livestreamer)
-livestreamer-curses:
-livestreamer-curses: Livestreamer-curses is a limited front-end to Chrippa's Livestreamer
-livestreamer-curses: for UNIX systems. With it you can manage a list of your favorite
-livestreamer-curses: streams and play them.
-livestreamer-curses:
-livestreamer-curses: Homepage: https://github.com/gapato/livestreamer-curses
-livestreamer-curses:
-livestreamer-curses:
-livestreamer-curses:
-livestreamer-curses:
diff --git a/network/livestreamer/README b/network/livestreamer/README
deleted file mode 100644
index c39849094a..0000000000
--- a/network/livestreamer/README
+++ /dev/null
@@ -1,18 +0,0 @@
-Livestreamer is a Command Line Interface that pipes video streams from
-various services into a video player, such as VLC. The main purpose of
-Livestreamer is to allow the user to avoid buggy and CPU heavy flash
-plugins but still be able to enjoy various streamed content.
-
-There is also an API available for developers who want access to the
-video stream data.
-
-Optional dependencies:
-
-For RTMP based plugins:
- RTMPDump
-
-For decrypting encrypted HLS streams:
- PyCrypto
-
-For full UStream.tv support:
- python-librtmp
diff --git a/network/livestreamer/doinst.sh b/network/livestreamer/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/livestreamer/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/livestreamer/livestreamer.SlackBuild b/network/livestreamer/livestreamer.SlackBuild
deleted file mode 100644
index b68add244d..0000000000
--- a/network/livestreamer/livestreamer.SlackBuild
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for livestreamer
-
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
-# 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=livestreamer
-VERSION=${VERSION:-1.12.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 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 $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 {} \;
-
-python setup.py install --root=$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
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a PKG-INFO *.rst LICENSE* $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/livestreamer/livestreamer.info b/network/livestreamer/livestreamer.info
deleted file mode 100644
index a369ec9b0f..0000000000
--- a/network/livestreamer/livestreamer.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="livestreamer"
-VERSION="1.12.2"
-HOMEPAGE="http://livestreamer.tanuki.se/"
-DOWNLOAD="https://pypi.python.org/packages/source/l/livestreamer/livestreamer-1.12.2.tar.gz"
-MD5SUM="63fb477bb3e28b7fe26b3cbba6f7937c"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="singledispatch"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/lldpd/lldpd.SlackBuild b/network/lldpd/lldpd.SlackBuild
index f60069a6e8..c9a6433acf 100644
--- a/network/lldpd/lldpd.SlackBuild
+++ b/network/lldpd/lldpd.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for lldpd
-# Copyright 2017-2021 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2017-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=lldpd
-VERSION=${VERSION:-1.0.7}
+VERSION=${VERSION:-1.0.17}
BUILD=${BUILD:-2}
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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -112,6 +112,8 @@ make install-strip DESTDIR=$PKG
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.lldpd > $PKG/etc/rc.d/rc.lldpd.new
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
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
@@ -119,8 +121,6 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README.SBo > $PKG/usr/doc/$PRGNAM-$VERSION/README.SBo
-rm -f $PKG/usr/lib*/*.la
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/lldpd/lldpd.info b/network/lldpd/lldpd.info
index 0999957e77..7cab963fa6 100644
--- a/network/lldpd/lldpd.info
+++ b/network/lldpd/lldpd.info
@@ -1,8 +1,8 @@
PRGNAM="lldpd"
-VERSION="1.0.7"
+VERSION="1.0.17"
HOMEPAGE="https://vincentbernat.github.io/lldpd/"
-DOWNLOAD="https://media.luffy.cx/files/lldpd/lldpd-1.0.7.tar.gz"
-MD5SUM="509aa1675dafff5017bbcc22850e35a8"
+DOWNLOAD="https://media.luffy.cx/files/lldpd/lldpd-1.0.17.tar.gz"
+MD5SUM="047ab026dbc4b22b7ef37991e7e2afaa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/llhttp/README b/network/llhttp/README
new file mode 100644
index 0000000000..919dceec36
--- /dev/null
+++ b/network/llhttp/README
@@ -0,0 +1 @@
+This is a parser for HTTP messages written in C
diff --git a/network/llhttp/llhttp.SlackBuild b/network/llhttp/llhttp.SlackBuild
new file mode 100644
index 0000000000..6f514f1dfa
--- /dev/null
+++ b/network/llhttp/llhttp.SlackBuild
@@ -0,0 +1,105 @@
+#!/bin/bash
+
+# Slackware build script for llhttp
+
+# Copyright 2022-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.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=llhttp
+VERSION=${VERSION:-9.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 [ ! -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 llhttp-release-v$VERSION
+tar xvf $CWD/llhttp-release-v$VERSION.tar.gz
+cd llhttp-release-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 {} \;
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DBUILD_SHARED_LIBS=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+# 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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a *.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/llhttp/llhttp.info b/network/llhttp/llhttp.info
new file mode 100644
index 0000000000..5f45b17894
--- /dev/null
+++ b/network/llhttp/llhttp.info
@@ -0,0 +1,10 @@
+PRGNAM="llhttp"
+VERSION="9.2.1"
+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_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Willy Sudiarto Raharjo"
+EMAIL="willysr@slackbuilds.org"
diff --git a/network/midori/slack-desc b/network/llhttp/slack-desc
index 15edff5601..09038297cc 100644
--- a/network/midori/slack-desc
+++ b/network/llhttp/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-midori: midori (simple web-browser)
-midori:
-midori: midori is a simple web-browser, based on the webkit framework
-midori: and gtk+3.
-midori:
-midori: Homepage: https://midori-browser.org
-midori:
-midori:
-midori:
-midori:
-midori:
+llhttp: llhttp (Port of http_parser to llparse)
+llhttp:
+llhttp: This is a parser for HTTP messages written in C
+llhttp:
+llhttp:
+llhttp:
+llhttp: Project URL: https://github.com/nodejs/llhttp
+llhttp:
+llhttp:
+llhttp:
+llhttp:
diff --git a/network/lorawan-stack-cli/README b/network/lorawan-stack-cli/README
new file mode 100644
index 0000000000..7025d7f73c
--- /dev/null
+++ b/network/lorawan-stack-cli/README
@@ -0,0 +1,5 @@
+Command line interface for the TheThingsNetwork V3 and TheThingsStack V3
+
+Auto-completion is NOT working. You can test with:
+`source /usr/share/bash-completion/completions/ttn-lw-cli`
+Added in the hope that in future will work.
diff --git a/network/lorawan-stack-cli/lorawan-stack-cli.SlackBuild b/network/lorawan-stack-cli/lorawan-stack-cli.SlackBuild
new file mode 100644
index 0000000000..fcb178f674
--- /dev/null
+++ b/network/lorawan-stack-cli/lorawan-stack-cli.SlackBuild
@@ -0,0 +1,96 @@
+#!/bin/bash
+# Slackware build script for <lorawan-stack-cli>
+#
+# Copyright 2023, Michales Michaloudes (clavisound), Greece
+# 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=lorawan-stack-cli
+VERSION=${VERSION:-3.26.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
+
+TMP=${TMP:-/tmp/SBo}
+
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SRCNAME="${PRGNAM}_${VERSION}_linux_386"
+elif [ "$ARCH" = "x86_64" ]; then
+ SRCNAME="${PRGNAM}_${VERSION}_linux_amd64"
+elif [ "$ARCH" = "arm64" ]; then
+ SRCNAME="${PRGNAM}_${VERSION}_linux_arm64"
+elif [ "$ARCH" = "armv7" ]; then
+ SRCNAME="${PRGNAM}_${VERSION}_linux_armv7"
+elif [ "$ARCH" = "armv6" ]; then
+ SRCNAME="${PRGNAM}_${VERSION}_linux_armv6"
+else
+ echo "Error: suitables ARCH are i586, x86_64, arm64, armv7, armv6"
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$SRCNAME.tar.gz
+mv $SRCNAME $PRGNAM-$VERSION # lorawan-stack-cli_X.Y.Z_linux_ARCH to lorawan-stack-cli-X.Y.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 $PKG/usr/bin
+cp $TMP/$PRGNAM-$VERSION/ttn-lw-cli $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
+
+mkdir -p $PKG/usr/share/bash-completion/completions/
+cp $TMP/$PRGNAM-$VERSION/config/completion/bash/ttn-lw-cli $PKG/usr/share/bash-completion/completions/
+
+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/lorawan-stack-cli/lorawan-stack-cli.info b/network/lorawan-stack-cli/lorawan-stack-cli.info
new file mode 100644
index 0000000000..7bb128615e
--- /dev/null
+++ b/network/lorawan-stack-cli/lorawan-stack-cli.info
@@ -0,0 +1,10 @@
+PRGNAM="lorawan-stack-cli"
+VERSION="3.26.2"
+HOMEPAGE="https://www.thethingsnetwork.org"
+DOWNLOAD="https://github.com/TheThingsNetwork/lorawan-stack/releases/download/v3.26.2/lorawan-stack-cli_3.26.2_linux_386.tar.gz"
+MD5SUM="e2a2776d85c185fb491480dc4db37a26"
+DOWNLOAD_x86_64="https://github.com/TheThingsNetwork/lorawan-stack/releases/download/v3.26.2/lorawan-stack-cli_3.26.2_linux_amd64.tar.gz"
+MD5SUM_x86_64="eceb05e21599546935e70cc4909d99f2"
+REQUIRES=""
+MAINTAINER="Michales Michaloudes"
+EMAIL="korgie@gmail.com"
diff --git a/network/lorawan-stack-cli/slack-desc b/network/lorawan-stack-cli/slack-desc
new file mode 100644
index 0000000000..7ffce622f1
--- /dev/null
+++ b/network/lorawan-stack-cli/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------------------------------------------------------|
+lorawan-stack-cli: lorawan-stack-cli (cli for the TTN V3 / TTS)
+lorawan-stack-cli:
+lorawan-stack-cli: Command line interface for the TheThingsNetwork and TheThingsStack.
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
+lorawan-stack-cli:
diff --git a/network/luakit/gtk.patch b/network/luakit/gtk.patch
new file mode 100644
index 0000000000..3bed22b74b
--- /dev/null
+++ b/network/luakit/gtk.patch
@@ -0,0 +1,15 @@
+diff -rupN a/clib/unique.c b/clib/unique.c
+--- a/clib/unique.c 2024-01-30 20:31:08.000000000 +0100
++++ b/clib/unique.c 2024-01-31 08:22:48.919908308 +0100
+@@ -78,11 +78,7 @@ luaH_unique_new(lua_State *L)
+
+ GError *error = NULL;
+ if (!globalconf.application) {
+-#if GTK_CHECK_VERSION(2,74,0)
+- globalconf.application = gtk_application_new(name, G_APPLICATION_DEFAULT_FLAGS);
+-#else
+ globalconf.application = gtk_application_new(name, G_APPLICATION_FLAGS_NONE);
+-#endif
+ }
+
+ g_application_register(G_APPLICATION(globalconf.application), NULL, &error);
diff --git a/network/luakit/luakit.SlackBuild b/network/luakit/luakit.SlackBuild
index 68e3258216..e36c76ab38 100644
--- a/network/luakit/luakit.SlackBuild
+++ b/network/luakit/luakit.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for luakit
# Copyright 2013, Andrew Tkalia <anddt@yandex.ru>, Ukraine, Kyiv
-# Updates 2018-2022 by Marek Šrejma <marek@modweb.de>, Germany
+# Updates 2018-2024 by Marek Šrejma <marek@modweb.de>, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=luakit
-VERSION=${VERSION:-2.3.1}
+VERSION=${VERSION:-2.3.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,9 +41,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
@@ -80,6 +77,8 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
sed -e 's#(PREFIX)/lib/luakit#(LIBDIR)#g' -i Makefile
+sed -e "/^Exec=/ s/lua/env Malloc=1 lua/" -i extras/luakit.desktop
+patch -p1 < $CWD/gtk.patch
_CFLAGS=`grep CFLAGS config.mk | sed -e "s/CFLAGS\s*+=//g" | tr "\n" " "`
make install \
@@ -103,9 +102,8 @@ 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 CHANGELOG.md \
- CONTRIBUTING.md COPYING.GPLv3 \
- README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS CHANGELOG.md CONTRIBUTING.md COPYING.GPLv3 README.md MIGRATE.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/luakit/luakit.info b/network/luakit/luakit.info
index 1e8e43896e..8624e731de 100644
--- a/network/luakit/luakit.info
+++ b/network/luakit/luakit.info
@@ -1,10 +1,10 @@
PRGNAM="luakit"
-VERSION="2.3.1"
+VERSION="2.3.6"
HOMEPAGE="https://github.com/luakit/luakit"
-DOWNLOAD="https://github.com/luakit/luakit/archive/2.3.1/luakit-2.3.1.tar.gz"
-MD5SUM="c646c4bb187f547e8982c147e7ba42b0"
+DOWNLOAD="https://github.com/luakit/luakit/releases/download/2.3.6/luakit-2.3.6.tar.gz"
+MD5SUM="f9e623c23ce560fdfd14d9ccb9ef71e6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="webkit2gtk lua-filesystem"
+REQUIRES="webkit2gtk4.1 lua-filesystem"
MAINTAINER="Marek Šrejma"
EMAIL="marek@modweb.de"
diff --git a/network/lurch/lurch.SlackBuild b/network/lurch/lurch.SlackBuild
index f831420135..38d63c172c 100644
--- a/network/lurch/lurch.SlackBuild
+++ b/network/lurch/lurch.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for lurch
-# Copyright 2017 - 2022 Johannes Schoepfer, Germany
+# Copyright 2017-2023 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -49,16 +49,12 @@ 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
@@ -72,11 +68,11 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
-CFLAGS="$SLKCFLAGS" make -j1
+CFLAGS="$SLKCFLAGS" make
make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
diff --git a/network/maildrop/maildrop.SlackBuild b/network/maildrop/maildrop.SlackBuild
index 78d5f5518b..d1eb460382 100644
--- a/network/maildrop/maildrop.SlackBuild
+++ b/network/maildrop/maildrop.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for maildrop
#
# Copyright 2010 - 2019 Šime Ramov <s@ramov.com>
-# Copyright 2019 - 2022 Andrew Strong, Blue Mountains, Australia.
+# Copyright 2019 - 2023 Andrew Strong, Blue Mountains, Australia.
#
# Permission to use, copy, modify, and distribute this software for
# any purpose with or without fee is hereby granted, provided that
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=maildrop
-VERSION=${VERSION:-3.0.7}
+VERSION=${VERSION:-3.1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +40,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
@@ -96,7 +93,6 @@ CXXFLAGS="$SLKCFLAGS" \
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 \
diff --git a/network/maildrop/maildrop.info b/network/maildrop/maildrop.info
index 347b6dbc3e..6ea3f1380d 100644
--- a/network/maildrop/maildrop.info
+++ b/network/maildrop/maildrop.info
@@ -1,8 +1,8 @@
PRGNAM="maildrop"
-VERSION="3.0.7"
+VERSION="3.1.1"
HOMEPAGE="http://www.courier-mta.org/maildrop/"
-DOWNLOAD="https://download.sourceforge.net/courier/maildrop-3.0.7.tar.bz2"
-MD5SUM="7ae78e4dc2b0ad9a2d1d1d3e5d619e76"
+DOWNLOAD="https://download.sourceforge.net/courier/maildrop-3.1.1.tar.bz2"
+MD5SUM="a88ab3f29b5f20ad7cc80a6b94392cc8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="courier-unicode"
diff --git a/network/mailman/mailman.SlackBuild b/network/mailman/mailman.SlackBuild
index 1b6ebb50df..742d605766 100644
--- a/network/mailman/mailman.SlackBuild
+++ b/network/mailman/mailman.SlackBuild
@@ -7,7 +7,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mailman
VERSION=${VERSION:-2.1.39}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -73,7 +73,7 @@ mkdir -p $PKG
install -d $PKG/$PREFIX -g mailman -o root -m 2775
install -d $PKG/$VAR_PREFIX -g mailman -o root -m 2775
-set -e
+set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
@@ -117,12 +117,12 @@ chmod 0755 $PKG/etc/rc.d/rc.mailman.new
mv $PKG/opt/mailman/Mailman/mm_cfg.py $PKG/opt/mailman/Mailman/mm_cfg.py.new
-mkdir -p $PKG/$PREFIX/doc/$PRGNAM-$VERSION
-mkdir -p $PKG/usr/doc
+mkdir -p $PKG/$PREFIX/doc/
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a ACKNOWLEDGMENTS BUGS FAQ NEWS README* STYLEGUIDE.txt TODO \
- $PKG/$PREFIX/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/$PREFIX/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-( cd $PKG/usr/doc ; ln -s $PREFIX/doc/$PRGNAM-$VERSION )
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+( cd $PKG/$PREFIX/doc ; ln -s /usr/doc/$PRGNAM-$VERSION )
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/mailman/mailman.info b/network/mailman/mailman.info
index 0c62441ea8..596df193fd 100644
--- a/network/mailman/mailman.info
+++ b/network/mailman/mailman.info
@@ -1,10 +1,10 @@
PRGNAM="mailman"
VERSION="2.1.39"
-HOMEPAGE="http://www.gnu.org/software/mailman/index.html"
+HOMEPAGE="https://www.gnu.org/software/mailman/"
DOWNLOAD="http://ftp.gnu.org/gnu/mailman/mailman-2.1.39.tgz"
MD5SUM="6edf92c119da01ed42665530dfaa2c92"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="dnspython"
-MAINTAINER="Steven King"
-EMAIL="kingrst@gmail.com"
+REQUIRES="python2-dnspython"
+MAINTAINER="Yth - Arnaud"
+EMAIL="yth@ythogtha.org"
diff --git a/network/mailman/rc.mailman b/network/mailman/rc.mailman
index 21840941e3..5a9319a8ad 100644
--- a/network/mailman/rc.mailman
+++ b/network/mailman/rc.mailman
@@ -32,7 +32,7 @@
# config: /opt/mailman/Mailman/mm_cfg.py
# pidfile: /opt/mailman/var/mailman/data/master-qrunner.pid
-PYTHON=/usr/bin/python
+PYTHON=/usr/bin/python3
MAILMANHOME=/opt/mailman/var/mailman
MAILMANCTL=/opt/mailman/bin/mailmanctl
diff --git a/network/mailspring/doinst.sh b/network/mailspring/doinst.sh
index 7b676c401a..726ffe403b 100644
--- a/network/mailspring/doinst.sh
+++ b/network/mailspring/doinst.sh
@@ -1,6 +1,9 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications
fi
-if [ -x /usr/bin/gtk-update-icon-cache ]; then
- /usr/bin/gtk-update-icon-cache -q usr/share/icons/hicolor
+
+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/mailspring/mailspring.SlackBuild b/network/mailspring/mailspring.SlackBuild
index 598ceb67e9..e50fd580a0 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.10.5}
+VERSION=${VERSION:-1.13.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -55,7 +55,6 @@ if [ "$ARCH" = "i586" ]; then
exit 1
elif [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
- LIBDIRSUFFIX="64"
else
echo "Package for $(uname -m) architecture is not available."
exit 1
@@ -75,6 +74,14 @@ 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 some ELF binaries'/libraries' permissions
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | while read -r ELF_FILE; do
+ if [ ! -x "$ELF_FILE" ]; then
+ chmod +x "$ELF_FILE"
+ fi
+ done
+
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/mailspring/mailspring.info b/network/mailspring/mailspring.info
index 3e5d177cb8..e667dfd940 100644
--- a/network/mailspring/mailspring.info
+++ b/network/mailspring/mailspring.info
@@ -1,10 +1,10 @@
PRGNAM="mailspring"
-VERSION="1.10.5"
+VERSION="1.13.2"
HOMEPAGE="https://getmailspring.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/Foundry376/Mailspring/releases/download/1.10.5/mailspring-1.10.5-amd64.deb"
-MD5SUM_x86_64="fba8d7c7619aab80ccc703fe0c0843a0"
+DOWNLOAD_x86_64="https://github.com/Foundry376/Mailspring/releases/download/1.13.2/mailspring-1.13.2-amd64.deb"
+MD5SUM_x86_64="64686f30e7e16ed33a96d8ec3901bdaf"
REQUIRES=""
MAINTAINER="Muhammad Mahendra Subrata"
EMAIL="mumahendras3@gmail.com"
diff --git a/network/malheur/malheur.info b/network/malheur/malheur.info
index eb60c74988..57397f4182 100644
--- a/network/malheur/malheur.info
+++ b/network/malheur/malheur.info
@@ -1,7 +1,7 @@
PRGNAM="malheur"
VERSION="0.5.4"
HOMEPAGE="http://www.mlsec.org/malheur/"
-DOWNLOAD="http://www.mlsec.org/malheur/files/malheur-0.5.4.tar.gz"
+DOWNLOAD="https://slackware.uk/~urchlay/src/malheur-0.5.4.tar.gz"
MD5SUM="4fb8acff52cb5fd2c5922bc2cfc9b2ca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/masscan/masscan.SlackBuild b/network/masscan/masscan.SlackBuild
index 210ee17d5e..3d7d7236ce 100644
--- a/network/masscan/masscan.SlackBuild
+++ b/network/masscan/masscan.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=masscan
-VERSION=${VERSION:-1.0.5}
+VERSION=${VERSION:-1.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,7 +70,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/$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -79,10 +79,6 @@ 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 {} \;
-# gcc-5 fixes thanks to Arch Linux
-sed -i "s|#elif defined(__GNUC__) && (__GNUC__ == 4)|#elif defined(__GNUC__)|" src/string_s.h
-sed -i -r "s|(CFLAGS )=|\1+=|g" Makefile
-
make
make install DESTDIR=$PKG
install -pDm644 doc/masscan.8 $PKG/usr/man/man8/masscan.8
diff --git a/network/masscan/masscan.info b/network/masscan/masscan.info
index a92dde099f..1c2638624e 100644
--- a/network/masscan/masscan.info
+++ b/network/masscan/masscan.info
@@ -1,8 +1,8 @@
PRGNAM="masscan"
-VERSION="1.0.5"
+VERSION="1.3.2"
HOMEPAGE="https://github.com/robertdavidgraham/masscan"
-DOWNLOAD="https://github.com/robertdavidgraham/masscan/archive/1.0.5.tar.gz"
-MD5SUM="708e02d58bf21bb7c55ea880df0317f5"
+DOWNLOAD="https://github.com/robertdavidgraham/masscan/archive/1.3.2/masscan-1.3.2.tar.gz"
+MD5SUM="468dc7d2f756625a491f33fdb5fbdfd3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/memcached/memcached.SlackBuild b/network/memcached/memcached.SlackBuild
index bc6a680fcf..95bdb8ed75 100644
--- a/network/memcached/memcached.SlackBuild
+++ b/network/memcached/memcached.SlackBuild
@@ -31,7 +31,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM="memcached"
-VERSION=${VERSION:-1.6.9}
+VERSION=${VERSION:-1.6.26}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/memcached/memcached.info b/network/memcached/memcached.info
index 76d908aabf..77c3498598 100644
--- a/network/memcached/memcached.info
+++ b/network/memcached/memcached.info
@@ -1,8 +1,8 @@
PRGNAM="memcached"
-VERSION="1.6.9"
+VERSION="1.6.26"
HOMEPAGE="http://memcached.org/"
-DOWNLOAD="http://www.memcached.org/files/memcached-1.6.9.tar.gz"
-MD5SUM="ee802a316d7d622aaaec22382ca65004"
+DOWNLOAD="http://www.memcached.org/files/memcached-1.6.26.tar.gz"
+MD5SUM="68ad6ce4dbf7d9adb8a716e1ad3d798d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/microsoft-edge/README b/network/microsoft-edge/README
index c2eef051fa..4643e8a054 100644
--- a/network/microsoft-edge/README
+++ b/network/microsoft-edge/README
@@ -1,3 +1,7 @@
-Microsoft Edge is a cross-platform web browser created and
-developed by Microsoft. It is based on Chromium and offers a fast,
-reliabe and secure browsing experience.
+Microsoft Edge is a proprietary, cross-platform web browser
+created by Microsoft. It was first released in 2015 as part
+of Windows 10 and Xbox One and later ported to other
+platforms as a fork of Google's Chromium open-source
+project: Android and iOS, macOS, older Windows versions
+(Windows 7, Windows Server 2008 R2 and later), and most
+recently Linux.
diff --git a/network/microsoft-edge/icons/hicolor/128x128/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/128x128/apps/microsoft-edge.png
deleted file mode 100644
index 9f74d4c6cb..0000000000
--- a/network/microsoft-edge/icons/hicolor/128x128/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/16x16/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/16x16/apps/microsoft-edge.png
deleted file mode 100644
index 357971306d..0000000000
--- a/network/microsoft-edge/icons/hicolor/16x16/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/22x22/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/22x22/apps/microsoft-edge.png
deleted file mode 100644
index 4418d57d80..0000000000
--- a/network/microsoft-edge/icons/hicolor/22x22/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/24x24/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/24x24/apps/microsoft-edge.png
deleted file mode 100644
index 89307dcd14..0000000000
--- a/network/microsoft-edge/icons/hicolor/24x24/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/256x256/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/256x256/apps/microsoft-edge.png
deleted file mode 100644
index 907a668874..0000000000
--- a/network/microsoft-edge/icons/hicolor/256x256/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/32x32/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/32x32/apps/microsoft-edge.png
deleted file mode 100644
index 1a91512d0f..0000000000
--- a/network/microsoft-edge/icons/hicolor/32x32/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/48x48/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/48x48/apps/microsoft-edge.png
deleted file mode 100644
index 56d6a8fbf0..0000000000
--- a/network/microsoft-edge/icons/hicolor/48x48/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/icons/hicolor/64x64/apps/microsoft-edge.png b/network/microsoft-edge/icons/hicolor/64x64/apps/microsoft-edge.png
deleted file mode 100644
index f965dbc14c..0000000000
--- a/network/microsoft-edge/icons/hicolor/64x64/apps/microsoft-edge.png
+++ /dev/null
Binary files differ
diff --git a/network/microsoft-edge/microsoft-edge.SlackBuild b/network/microsoft-edge/microsoft-edge.SlackBuild
index 4729465f08..74965061bd 100644
--- a/network/microsoft-edge/microsoft-edge.SlackBuild
+++ b/network/microsoft-edge/microsoft-edge.SlackBuild
@@ -2,6 +2,7 @@
#
# Slackware build script for microsoft-edge.
#
+# Copyright 2023 Andrew Payne <phalange@komputermatrix.com>
# Copyright 2021 Reza Talebi, Shahin Shahr, Iran.
# All rights reserved.
#
@@ -22,14 +23,13 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-# Modified by Pouria Rezaei <Pouria.rz@outlook.com>
-
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=microsoft-edge
-SRCNAM=$PRGNAM-stable
-VERSION=${VERSION:-105.0.1343.27}
+BRANCH=stable
+VERSION=${VERSION:-117.0.2045.55}
BUILD=${BUILD:-1}
+DEBBUILD=${DEBBUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -45,7 +45,7 @@ fi
# 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"
+ echo "$PRGNAM-$BRANCH_$VERSION_$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
@@ -53,37 +53,33 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-
-set -e
-
if [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
+ BIT="amd64"
else
- echo "Package for $(uname -m) architecture is not available."
+ echo "$ARCH is not supported."
exit 1
fi
+set -e
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-${VERSION}
mkdir -p $PRGNAM-${VERSION}
-rpm2cpio $CWD/$SRCNAM-${VERSION}-${BUILD}.${ARCH}.rpm | cpio -D $PRGNAM-${VERSION} -idmv
+ar x $CWD/$PRGNAM-$BRANCH"_"${VERSION}-${DEBBUILD}_${BIT}.deb --output $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-mkdir usr/lib64
-mv opt/microsoft/msedge usr/lib64/
-
-# Move man where the man likes
-mv usr/share/man usr/
+rm {control.tar.xz,debian-binary,_gpgorigin}
-rm -fR etc opt
+xz -d data.tar.xz
+tar --extract -f data.tar
-# Moving icons to the source
-cp -r $CWD/icons usr/share/
-
-patch -p1 < "$CWD/updater.diff"
+# remove what won't work
+rm -rf etc
+rm -rf usr/share/gnome-control-center
+rm -rf usr/share/menu
+rm -rf usr/bin
chown -R root:root .
find -L . \
@@ -92,10 +88,20 @@ 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 {} \;
-mv * $PKG/
+mkdir -p $PKG/{usr/bin,usr/share,opt}
+ cp -a opt/ $PKG/
+ ln -s /opt/microsoft/msedge/$PRGNAM $PKG/usr/bin/$PRGNAM-$BRANCH
+ cp -a usr/share/man $PKG/usr/
+ cp -a usr/share/{appdata,applications} $PKG/usr/share/
+
+# move icon into place
+mkdir -p $PKG/usr/share/pixmaps
+cp -a opt/microsoft/msedge/product_logo_32.xpm \
+ $PKG/usr/share/pixmaps/microsoft-edge.xpm
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp -a usr/share/doc/microsoft-edge-stable/* $PKG/usr/doc/$PRGNAM-$VERSION/
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/microsoft-edge/microsoft-edge.info b/network/microsoft-edge/microsoft-edge.info
index 8638518742..d62cdcdd45 100644
--- a/network/microsoft-edge/microsoft-edge.info
+++ b/network/microsoft-edge/microsoft-edge.info
@@ -1,10 +1,10 @@
PRGNAM="microsoft-edge"
-VERSION="105.0.1343.27"
+VERSION="117.0.2045.55"
HOMEPAGE="https://www.microsoft.com/edge"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://packages.microsoft.com/yumrepos/edge/microsoft-edge-stable-105.0.1343.27-1.x86_64.rpm"
-MD5SUM_x86_64="99f1dbdc980d2b4c3f7a4fdfcc65e370"
+DOWNLOAD_x86_64="https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_117.0.2045.55-1_amd64.deb"
+MD5SUM_x86_64="79326169c59d70280515bc8fd8448fa9"
REQUIRES=""
-MAINTAINER="Reza Talebi"
-EMAIL="reza.talebi.73@outlook.com"
+MAINTAINER="Andrew Payne"
+EMAIL="phalange@komputermatrix.com"
diff --git a/network/microsoft-edge/slack-desc b/network/microsoft-edge/slack-desc
index 7db5b3f1fc..0413d92cad 100644
--- a/network/microsoft-edge/slack-desc
+++ b/network/microsoft-edge/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-microsoft-edge: microsoft-edge (A fast and secure cross-platform web browser)
+microsoft-edge: microsoft-edge (web browser)
microsoft-edge:
-microsoft-edge: Microsoft Edge is a cross-platform web browser created and
-microsoft-edge: developed by Microsoft. It is based on Chromium and offers a fast,
-microsoft-edge: reliabe and secure browsing experience.
+microsoft-edge: Microsoft Edge is a proprietary, cross-platform web browser created
+microsoft-edge: by Microsoft.
+microsoft-edge:
+microsoft-edge: Home page: https://www.microsoft.com/en-us/edge
microsoft-edge:
microsoft-edge:
-microsoft-edge: Home page: https://www.microsoft.com/edge
microsoft-edge:
microsoft-edge:
microsoft-edge:
diff --git a/network/microsoft-edge/updater.diff b/network/microsoft-edge/updater.diff
deleted file mode 100644
index 5022f320a9..0000000000
--- a/network/microsoft-edge/updater.diff
+++ /dev/null
@@ -1,82 +0,0 @@
-diff --git a/usr/bin/microsoft-edge-stable b/usr/bin/microsoft-edge-stable
-deleted file mode 120000
-index 275612f..0000000
---- a/usr/bin/microsoft-edge-stable
-+++ /dev/null
-@@ -1 +0,0 @@
--/opt/microsoft/msedge/microsoft-edge
-\ No newline at end of file
-diff --git a/usr/bin/microsoft-edge-stable b/usr/bin/microsoft-edge-stable
-new file mode 100755
-index 0000000..b8c06ea
---- /dev/null
-+++ b/usr/bin/microsoft-edge-stable
-@@ -0,0 +1,15 @@
-+#!/usr/bin/env sh
-+# Launches MS Edge with flags specified in $XDG_CONFIG_HOME/microsoft-edge-beta-flags.conf
-+
-+# Make script fail if `cat` fails for some reason
-+set -e
-+
-+# Set default value if variable is unset/null
-+XDG_CONFIG_HOME="${XDG_CONFIG_HOME:-${HOME}/.config}"
-+
-+# Attempt to read a config file if it exists
-+if [ -r "${XDG_CONFIG_HOME}/microsoft-edge-stable-flags.conf" ]; then
-+ EDGE_USER_FLAGS="$(cat "$XDG_CONFIG_HOME/microsoft-edge-stable-flags.conf")"
-+fi
-+
-+exec /usr/lib64/msedge/microsoft-edge $EDGE_USER_FLAGS "$@"
-diff --git a/usr/lib64/msedge/default-app-block b/usr/lib64/msedge/default-app-block
-index 7ac7165..7ad030e 100644
---- a/usr/lib64/msedge/default-app-block
-+++ b/usr/lib64/msedge/default-app-block
-@@ -1,10 +1,10 @@
- <web-browser>
- <name>Microsoft Edge</name>
-- <executable>/opt/microsoft/msedge/microsoft-edge</executable>
-- <command>/opt/microsoft/msedge/microsoft-edge %s</command>
-+ <executable>/usr/lib64/msedge/microsoft-edge</executable>
-+ <command>/usr/lib64/msedge/microsoft-edge %s</command>
- <icon-name>microsoft-edge</icon-name>
- <run-in-terminal>false</run-in-terminal>
- <netscape-remote>true</netscape-remote>
-- <tab-command>/opt/microsoft/msedge/microsoft-edge %s</tab-command>
-- <win-command>/opt/microsoft/msedge/microsoft-edge --new-window %s</win-command>
-+ <tab-command>/usr/lib64/msedge/microsoft-edge %s</tab-command>
-+ <win-command>/usr/lib64/msedge/microsoft-edge --new-window %s</win-command>
- </web-browser>
-diff --git a/usr/share/gnome-control-center/default-apps/microsoft-edge.xml b/usr/share/gnome-control-center/default-apps/microsoft-edge.xml
-index 80dec09..fbdf731 100644
---- a/usr/share/gnome-control-center/default-apps/microsoft-edge.xml
-+++ b/usr/share/gnome-control-center/default-apps/microsoft-edge.xml
-@@ -8,13 +8,13 @@
- <web-browsers>
- <web-browser>
- <name>Microsoft Edge</name>
-- <executable>/opt/microsoft/msedge/microsoft-edge</executable>
-- <command>/opt/microsoft/msedge/microsoft-edge %s</command>
-+ <executable>/usr/lib64/msedge/microsoft-edge</executable>
-+ <command>/usr/lib64/msedge/microsoft-edge %s</command>
- <icon-name>microsoft-edge</icon-name>
- <run-in-terminal>false</run-in-terminal>
- <netscape-remote>true</netscape-remote>
-- <tab-command>/opt/microsoft/msedge/microsoft-edge %s</tab-command>
-- <win-command>/opt/microsoft/msedge/microsoft-edge --new-window %s</win-command>
-+ <tab-command>/usr/lib64/msedge/microsoft-edge %s</tab-command>
-+ <win-command>/usr/lib64/msedge/microsoft-edge --new-window %s</win-command>
- </web-browser>
- </web-browsers>
- </default-apps>
-diff --git a/usr/share/menu/microsoft-edge.menu b/usr/share/menu/microsoft-edge.menu
-new file mode 100644
-index 0000000..7871356
---- /dev/null
-+++ b/usr/share/menu/microsoft-edge.menu
-@@ -0,0 +1,6 @@
-+?package(microsoft-edge-stable):needs="x11" \
-+ section="Applications/Network/Web Browsing" \
-+ hints="Web browsers" \
-+ title="Microsoft Edge" \
-+ icon="/usr/lib64/msedge/product_logo_32.xpm" \
-+ command="/usr/lib64/msedge/microsoft-edge"
diff --git a/network/midori/0115b02f43d23612366d0c5063e6b314d04e3853.patch b/network/midori/0115b02f43d23612366d0c5063e6b314d04e3853.patch
deleted file mode 100644
index 4c487b3502..0000000000
--- a/network/midori/0115b02f43d23612366d0c5063e6b314d04e3853.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 0115b02f43d23612366d0c5063e6b314d04e3853 Mon Sep 17 00:00:00 2001
-From: Klaus von der Heyde <39677540+asc-soc@users.noreply.github.com>
-Date: Mon, 16 Sep 2019 19:23:00 +0200
-Subject: [PATCH] Added special handling when Midori.Urlbar is in focus (#366)
-
-If the urlbar has focus and reacts on the event, stop further handling. This enables ^N and ^T again, as the edit field does not handle them. Any key binding in the edit field takes precedence.
-
-Fixes: #364
----
- core/browser.vala | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/core/browser.vala b/core/browser.vala
-index 3ce21e40..503aa301 100644
---- a/core/browser.vala
-+++ b/core/browser.vala
-@@ -453,6 +453,12 @@ namespace Midori {
- // No keyboard shortcuts in locked state
- if (is_locked) {
- return propagate_key_event (event);
-+ }
-+ // Default behaviour for navigation bar
-+ if (get_focus () is Midori.Urlbar) {
-+ if (navigationbar.urlbar.key_press_event (event)) {
-+ return true;
-+ }
- }
- // Default behavior for standard widgets
- if (!(get_focus () is WebKit.WebViewBase)) {
diff --git a/network/midori/README b/network/midori/README
deleted file mode 100644
index d8f163a4e0..0000000000
--- a/network/midori/README
+++ /dev/null
@@ -1,12 +0,0 @@
-Midori is a lightweight, webkit-based web browser.
-
-Features:
- * Full integration with GTK+3
- * Fast rendering with WebKit
- * Tabs, windows and session management
- * Flexibly configurable Web Search.
- * User scripts and user styles support.
- * Straightforward bookmark management.
- * Customizable and extensible interface.
- * Extensions such as Adblock, form history, mouse gestures
- or cookie management.
diff --git a/network/midori/midori.info b/network/midori/midori.info
deleted file mode 100644
index f7dc67bc55..0000000000
--- a/network/midori/midori.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="midori"
-VERSION="9.0"
-HOMEPAGE="https://midori-browser.org/"
-DOWNLOAD="https://github.com/midori-browser/core/archive/v9.0/core-9.0.tar.gz"
-MD5SUM="b39172aeb754e666f044d69828f82bcc"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libpeas webkit2gtk"
-MAINTAINER="Matteo Bernardini"
-EMAIL="ponce@slackbuilds.org"
diff --git a/network/milter-greylist/milter-greylist.info b/network/milter-greylist/milter-greylist.info
index 60f5f88d50..c28533bf1d 100644
--- a/network/milter-greylist/milter-greylist.info
+++ b/network/milter-greylist/milter-greylist.info
@@ -6,5 +6,5 @@ MD5SUM="8872008db2fc6b93dd9ab8576383fec2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/mitmproxy-bin/mitmproxy-bin.SlackBuild b/network/mitmproxy-bin/mitmproxy-bin.SlackBuild
index 261c314de1..d34ff53ce2 100644
--- a/network/mitmproxy-bin/mitmproxy-bin.SlackBuild
+++ b/network/mitmproxy-bin/mitmproxy-bin.SlackBuild
@@ -25,13 +25,16 @@
# stuff needed to build them). Use https://docs.mitmproxy.org/stable/
# for that.
+# 20230103 bkw: update for v9.0.1, fix PKGTYPE, update man page.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mitmproxy-bin
SRCNAM=mitmproxy
-VERSION=${VERSION:-7.0.4}
+VERSION=${VERSION:-9.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
# Binary repack, only supports:
ARCH=x86_64
@@ -98,4 +101,4 @@ 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:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/mitmproxy-bin/mitmproxy-bin.info b/network/mitmproxy-bin/mitmproxy-bin.info
index 3b49d650f3..dfbc38e4e8 100644
--- a/network/mitmproxy-bin/mitmproxy-bin.info
+++ b/network/mitmproxy-bin/mitmproxy-bin.info
@@ -1,12 +1,12 @@
PRGNAM="mitmproxy-bin"
-VERSION="7.0.4"
+VERSION="9.0.1"
HOMEPAGE="https://mitmproxy.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://snapshots.mitmproxy.org/7.0.4/mitmproxy-7.0.4-linux.tar.gz \
- https://github.com/mitmproxy/mitmproxy/archive/v7.0.4/mitmproxy-7.0.4.tar.gz"
-MD5SUM_x86_64="38d1298b356081aaa5ffd69e2f5ba2e5 \
- acbe2f24300c7a30479b0ad65ce319b9"
+DOWNLOAD_x86_64="https://snapshots.mitmproxy.org/9.0.1/mitmproxy-9.0.1-linux.tar.gz \
+ https://github.com/mitmproxy/mitmproxy/archive/9.0.1/mitmproxy-9.0.1.tar.gz"
+MD5SUM_x86_64="30da921ebfb0b4a5020e4eee82e4b0d6 \
+ 7cd164f90c348ca05f23606971f88e2b"
REQUIRES=""
MAINTAINER="B. Watson"
EMAIL="urchlay@slackware.uk"
diff --git a/network/mitmproxy-bin/mitmproxy.1 b/network/mitmproxy-bin/mitmproxy.1
index fb904eb895..1d13eaa47a 100644
--- a/network/mitmproxy-bin/mitmproxy.1
+++ b/network/mitmproxy-bin/mitmproxy.1
@@ -27,7 +27,7 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.TH "MITMPROXY" 1 "2022-01-27" "7.0.4" "SlackBuilds.org"
+.TH "MITMPROXY" 1 "2023-01-03" "9.0.1" "SlackBuilds.org"
.SH NAME
mitmproxy \- man-in-the-middle SSL/TLS intercepting proxy
.\" RST source for mitmproxy(1) man page. Convert with:
@@ -53,10 +53,10 @@ These commands have lots of options; each one can be run with
Full documentation is available at: \fI\%https://docs.mitmproxy.org/stable/\fP
.sp
Quite a few example scripts for \fBmitmproxy\fP are installed in
-/usr/doc/mitmproxy\-7.0.4/examples/
+/usr/doc/mitmproxy\-9.0.1/examples/
.SH COPYRIGHT
.sp
-See the file /usr/doc/mitmproxy\-7.0.4/LICENSE for license information.
+See the file /usr/doc/mitmproxy\-9.0.1/LICENSE for license information.
.SH AUTHORS
.sp
\fBmitmproxy\fP was written by Aldo Cortesi.
diff --git a/network/mitmproxy-bin/mitmproxy.rst b/network/mitmproxy-bin/mitmproxy.rst
index 4ac87169e6..caa6760876 100644
--- a/network/mitmproxy-bin/mitmproxy.rst
+++ b/network/mitmproxy-bin/mitmproxy.rst
@@ -2,7 +2,7 @@
.. rst2man.py mitmproxy.rst > mitmproxy.1
.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 7.0.4
+.. |version| replace:: 9.0.1
.. |date| date::
=========
diff --git a/network/mod_auth_gssapi/README b/network/mod_auth_gssapi/README
index 0753ac8a3f..c1d0f30968 100644
--- a/network/mod_auth_gssapi/README
+++ b/network/mod_auth_gssapi/README
@@ -6,3 +6,6 @@ mechanism used.
You will need to add the following line to /etc/httpd/httpd.conf:
Include /etc/httpd/extra/mod_auth_gssapi.conf
+
+gss-ntlmssp is an optional dependency (autodetected) for NTLMSSP
+support.
diff --git a/network/mod_auth_gssapi/mod_auth_gssapi.SlackBuild b/network/mod_auth_gssapi/mod_auth_gssapi.SlackBuild
index bdc1af0311..4837600a23 100644
--- a/network/mod_auth_gssapi/mod_auth_gssapi.SlackBuild
+++ b/network/mod_auth_gssapi/mod_auth_gssapi.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for mod_auth_gssapi
-# Copyright 2019-2022 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2019-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mod_auth_gssapi
VERSION=${VERSION:-1.6.5}
-BUILD=${BUILD:-1}
+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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -79,9 +79,9 @@ 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 {} \;
+autoreconf -fi
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
-LEXLIB="" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -97,6 +97,8 @@ mkdir -p $PKG/etc/httpd/extra
sed "s%@baselibdir@%lib${LIBDIRSUFFIX}%" $CWD/mod_auth_gssapi.conf > \
$PKG/etc/httpd/extra/mod_auth_gssapi.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
diff --git a/network/mod_auth_gssapi/mod_auth_gssapi.info b/network/mod_auth_gssapi/mod_auth_gssapi.info
index 391a754d38..eda56fb4a9 100644
--- a/network/mod_auth_gssapi/mod_auth_gssapi.info
+++ b/network/mod_auth_gssapi/mod_auth_gssapi.info
@@ -1,8 +1,8 @@
PRGNAM="mod_auth_gssapi"
VERSION="1.6.5"
-HOMEPAGE="https://github.com/modauthgssapi/mod_auth_gssapi"
-DOWNLOAD="https://github.com/modauthgssapi/mod_auth_gssapi/releases/download/v1.6.5/mod_auth_gssapi-1.6.5.tar.gz"
-MD5SUM="46dd24d9d629bcb124ff61fe20dbbfc6"
+HOMEPAGE="https://github.com/gssapi/mod_auth_gssapi"
+DOWNLOAD="https://github.com/gssapi/mod_auth_gssapi/archive/v1.6.5/mod_auth_gssapi-1.6.5.tar.gz"
+MD5SUM="c900f0207b9b8039fef7d9a22f31b335"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/mod_evasive/mod_evasive.info b/network/mod_evasive/mod_evasive.info
index 86e2dc9ea1..48e2246a15 100644
--- a/network/mod_evasive/mod_evasive.info
+++ b/network/mod_evasive/mod_evasive.info
@@ -1,7 +1,7 @@
PRGNAM="mod_evasive"
VERSION="1.10.1"
HOMEPAGE="https://github.com/shivaas/mod_evasive"
-DOWNLOAD="http://www.zdziarski.com/blog/wp-content/uploads/2010/02/mod_evasive_1.10.1.tar.gz"
+DOWNLOAD="https://src.fedoraproject.org/repo/pkgs/mod_evasive/mod_evasive_1.10.1.tar.gz/784fca4a124f25ccff5b48c7a69a65e5/mod_evasive_1.10.1.tar.gz"
MD5SUM="784fca4a124f25ccff5b48c7a69a65e5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/mod_wsgi-metrics/mod_wsgi-metrics.info b/network/mod_wsgi-metrics/mod_wsgi-metrics.info
index b15fce5236..69d45fda7b 100644
--- a/network/mod_wsgi-metrics/mod_wsgi-metrics.info
+++ b/network/mod_wsgi-metrics/mod_wsgi-metrics.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://pypi.python.org/packages/source/m/mod_wsgi-metrics/mod_wsgi-me
MD5SUM="be59d86c0e398614478b9e8b2feffcf2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="psutil"
+REQUIRES="python2-psutil"
MAINTAINER="Adis Nezirović"
EMAIL="adis_at_linux.org.ba"
diff --git a/network/mod_wsgi/mod_wsgi.info b/network/mod_wsgi/mod_wsgi.info
index 764760eb90..fa46ce633b 100644
--- a/network/mod_wsgi/mod_wsgi.info
+++ b/network/mod_wsgi/mod_wsgi.info
@@ -1,7 +1,7 @@
PRGNAM="mod_wsgi"
VERSION="4.4.6"
HOMEPAGE="http://www.modwsgi.org"
-DOWNLOAD="https://github.com/GrahamDumpleton/mod_wsgi/archive/4.4.6.tar.gz"
+DOWNLOAD="https://github.com/GrahamDumpleton/mod_wsgi/archive/4.4.6/mod_wsgi-4.4.6.tar.gz"
MD5SUM="bab68899e92a6ee328a02954a0818022"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/modsecurity-apache/modsecurity-apache.SlackBuild b/network/modsecurity-apache/modsecurity-apache.SlackBuild
index 7668af626a..90bdcc47e7 100644
--- a/network/modsecurity-apache/modsecurity-apache.SlackBuild
+++ b/network/modsecurity-apache/modsecurity-apache.SlackBuild
@@ -8,12 +8,12 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=modsecurity-apache
SRCNAM=modsecurity
-VERSION=${VERSION:-2.9.3}
+VERSION=${VERSION:-2.9.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-CRS_VERSION="3.1.0"
+CRS_VERSION="3.2.0"
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 80b7585c8b..a70b04bcf8 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.3"
+VERSION="2.9.7"
HOMEPAGE="https://www.modsecurity.org/"
-DOWNLOAD="https://www.modsecurity.org/tarball/2.9.3/modsecurity-2.9.3.tar.gz \
- https://github.com/SpiderLabs/owasp-modsecurity-crs/archive/v3.1.0/owasp-modsecurity-crs-3.1.0.tar.gz"
-MD5SUM="215a96d679a5b0fadcf13b5d09b35422 \
- 4e0a0fbaf077b50364c934083c4cb905"
+DOWNLOAD="https://github.com/SpiderLabs/ModSecurity/releases/download/v2.9.7/modsecurity-2.9.7.tar.gz \
+ https://github.com/SpiderLabs/owasp-modsecurity-crs/archive/v3.2.0/owasp-modsecurity-crs-3.2.0.tar.gz"
+MD5SUM="f2ccb0d6b3ba59a5677accb5569abbbd \
+ 9dd31ff7e74bd797d2013b93c02df304"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/mosaic-ck/doinst.sh b/network/mosaic-ck/doinst.sh
index 6723fb108e..0681523e4f 100644
--- a/network/mosaic-ck/doinst.sh
+++ b/network/mosaic-ck/doinst.sh
@@ -2,6 +2,12 @@ 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 usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
+
# If there's no Mosaic link, take over:
if [ ! -r usr/bin/Mosaic ]; then
( cd usr/bin ; ln -sf mosaic-ck Mosaic )
diff --git a/network/mosaic-ck/mosaic-ck.SlackBuild b/network/mosaic-ck/mosaic-ck.SlackBuild
index 7b186da0e4..556e223119 100644
--- a/network/mosaic-ck/mosaic-ck.SlackBuild
+++ b/network/mosaic-ck/mosaic-ck.SlackBuild
@@ -6,6 +6,7 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230108 bkw: BUILD=2, fix doinst.sh.
# 20211207 bkw: update for 2.7ck13, which contains build fixes
# for recent glibc (e.g. the one in Slackware -current). Also
# add new-style icons.
@@ -24,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mosaic-ck
VERSION=${VERSION:-2.7ck13}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/mosh/1282.patch b/network/mosh/1282.patch
new file mode 100644
index 0000000000..c8376a2c12
--- /dev/null
+++ b/network/mosh/1282.patch
@@ -0,0 +1,43 @@
+From 8012ca9c8d16f99679c171b36ad02655549ab7ff Mon Sep 17 00:00:00 2001
+From: Alex Chernyakhovsky <alex@achernya.com>
+Date: Sun, 30 Jul 2023 16:19:46 -0400
+Subject: [PATCH] Bump C++ version to C++17
+
+Protobuf versions since 3.6.0 have long had a C++11 dependency; even
+more recent versions have picked up an Abseil dependency bumping that
+to C++14. Since it is now 2023, defaulting to C++17 is reasonable, so
+remove the conditional C++ standards version check that mosh
+previously had and replace it with an unconditional C++17 check.
+
+This means that all future commits can use C++17 features. According
+to https://en.cppreference.com/w/cpp/compiler_support/17 this means
+that minimum effective compiler versions for mosh become:
+
+gcc 7 (May 2017)
+clang 5 (September 2017)
+
+This, in turn, implies that future versions of mosh will no longer be
+available for RHEL/CentOS 7 (June 2014).
+
+Closes: #1267
+---
+ configure.ac | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index ee70c7b86..7f7dc3bc2 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,9 +22,9 @@ AS_IF([test x"$PROTOC" = x],
+ # automake 1.12 seems to require this, but automake 1.11 doesn't recognize it
+ m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+
+-# Protobuf 3.6+ requires C++11.
+-AS_IF([pkg-config --atleast-version 3.6.0 protobuf],
+- [AX_CXX_COMPILE_STDCXX([11])])
++# Protobuf transitively requires at least C++14, get ahead of the
++# curve and require at least C++17.
++AX_CXX_COMPILE_STDCXX([17])
+
+ WARNING_CXXFLAGS=""
+ PICKY_CXXFLAGS=""
diff --git a/network/mosh/mosh.SlackBuild b/network/mosh/mosh.SlackBuild
index 86a192894f..8127e0ff4d 100644
--- a/network/mosh/mosh.SlackBuild
+++ b/network/mosh/mosh.SlackBuild
@@ -8,6 +8,8 @@
# Original script had no license; modified version licensed under
# the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230225 bkw: homepage/download changed.
+
# 20220425 bkw: BUILD=2
# - take over maintenance.
# - relicense script as WTFPL.
@@ -18,7 +20,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mosh
-VERSION=${VERSION:-1.3.2}
+VERSION=${VERSION:-1.4.0}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -63,12 +65,13 @@ 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 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+# patch to work with newer protobuf3
+patch -p1 < $CWD/1282.patch
+autoreconf -vif
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS -fpermissive" \
./configure \
diff --git a/network/mosh/mosh.info b/network/mosh/mosh.info
index e4d1a34cb1..9578dd57f8 100644
--- a/network/mosh/mosh.info
+++ b/network/mosh/mosh.info
@@ -1,8 +1,8 @@
PRGNAM="mosh"
-VERSION="1.3.2"
-HOMEPAGE="http://mosh.mit.edu/"
-DOWNLOAD="http://mosh.mit.edu/mosh-1.3.2.tar.gz"
-MD5SUM="5122f4d2b973ab7c38dcdac8c35cb61e"
+VERSION="1.4.0"
+HOMEPAGE="https://mosh.org"
+DOWNLOAD="https://mosh.org/mosh-1.4.0.tar.gz"
+MD5SUM="c34a647f8545565d79188acacaea7559"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="perl-IO-Tty protobuf3"
diff --git a/network/mpop/README b/network/mpop/README
index 00adf573b4..ea0ccad1cb 100644
--- a/network/mpop/README
+++ b/network/mpop/README
@@ -2,5 +2,3 @@ mpop is a small and fast POP3 client. Features include mail filtering,
delivery to mbox files, maildir folders or a mail delivery agent, a
very fast POP3 implementation, many authentication methods, good
TLS/SSL support, IPv6 support, and more.
-
-Optional Dependency: libgsasl
diff --git a/network/mpop/mpop.SlackBuild b/network/mpop/mpop.SlackBuild
index 3d3b71a724..a0522fd4e3 100644
--- a/network/mpop/mpop.SlackBuild
+++ b/network/mpop/mpop.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for mpop
-# Copyright 2014 Marek Buras Silesia,Poland
+# Copyright spaceman
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mpop
-VERSION=${VERSION:-1.2.6}
+VERSION=${VERSION:-1.4.18}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,8 +70,8 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xf $CWD/$PRGNAM-$VERSION.tar.xz || exit 1
-cd $PRGNAM-$VERSION || exit 1
+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 \) \
@@ -88,25 +88,25 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--infodir=/usr/info \
--mandir=/usr/man \
- --with-libgsasl \
+ --disable-rpath \
--build=$ARCH-slackware-linux
-make || exit 1
-make install-strip DESTDIR=$PKG || exit 1
+make
+make install-strip DESTDIR=$PKG
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
+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
rm -f $PKG/usr/info/dir
-gzip -9 $PKG/usr/info/*.info*
+gzip -n $PKG/usr/info/*.info*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/scripts/vim
cp -a AUTHORS COPYING ChangeLog NEWS NOTES README THANKS doc/mpoprc.example \
$PKG/usr/doc/$PRGNAM-$VERSION
-cp -a scripts/vim/README -a scripts/vim/mpop.vim \
+cp -a scripts/vim/README scripts/vim/mpop.vim \
$PKG/usr/doc/$PRGNAM-$VERSION/scripts/vim
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/mpop/mpop.info b/network/mpop/mpop.info
index 30cbe03004..7c491d38a8 100644
--- a/network/mpop/mpop.info
+++ b/network/mpop/mpop.info
@@ -1,10 +1,10 @@
PRGNAM="mpop"
-VERSION="1.2.6"
-HOMEPAGE="http://mpop.sourceforge.net/"
-DOWNLOAD="http://download.sourceforge.net/mpop/mpop-1.2.6.tar.xz"
-MD5SUM="2298ddcf1defbf8e7097a1869c8d39d3"
+VERSION="1.4.18"
+HOMEPAGE="https://marlam.de/mpop"
+DOWNLOAD="https://marlam.de/mpop/releases/mpop-1.4.18.tar.xz"
+MD5SUM="c7671abcdb3fedf429c3e1a01d1d53d1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libgsasl"
-MAINTAINER="Marek Buras"
-EMAIL="cyfr0n@onet.pl"
+REQUIRES=""
+MAINTAINER="spaceman"
+EMAIL="spaceman@antispaceman.com"
diff --git a/network/mpop/slack-desc b/network/mpop/slack-desc
index 783c9d5c75..bb93deddb4 100644
--- a/network/mpop/slack-desc
+++ b/network/mpop/slack-desc
@@ -13,7 +13,7 @@ mpop: delivery to mbox files, maildir folders or a mail delivery agent, a
mpop: very fast POP3 implementation, many authentication methods, good
mpop: TLS/SSL support, IPv6 support, and more.
mpop:
-mpop: Homepage: http://mpop.sourceforge.net/
+mpop: Homepage: https://marlam.de/mpop
mpop:
mpop:
mpop:
diff --git a/network/msmtp/doinst.sh b/network/msmtp/doinst.sh
index b7c8257e07..1bef502028 100644
--- a/network/msmtp/doinst.sh
+++ b/network/msmtp/doinst.sh
@@ -1 +1,6 @@
-chroot . /usr/bin/install-info /usr/info/msmtp.info.gz /usr/info/dir 2> /dev/null
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/network/msmtp/msmtp.SlackBuild b/network/msmtp/msmtp.SlackBuild
index 07a593c7b9..8f3cd8eb3b 100644
--- a/network/msmtp/msmtp.SlackBuild
+++ b/network/msmtp/msmtp.SlackBuild
@@ -20,11 +20,14 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230701 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - use correct template for install-info in doinst.sh, add douninst.sh.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=msmtp
VERSION=${VERSION:-1.8.20}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -36,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
@@ -76,9 +76,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -93,13 +93,9 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
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
+make install-strip DESTDIR=$PKG
-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
+gzip -9 $PKG/usr/man/man*/*
rm -f $PKG/usr/info/dir
gzip -9 $PKG/usr/info/*.info*
@@ -111,6 +107,7 @@ 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
+cat $CWD/doinst.sh > $PKG/install/douninst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/msmtp/msmtp.info b/network/msmtp/msmtp.info
index f6ccf5c2dd..2c24b07e49 100644
--- a/network/msmtp/msmtp.info
+++ b/network/msmtp/msmtp.info
@@ -6,5 +6,5 @@ MD5SUM="6fc0ce864d74992f6c6124c3611d15da"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/mstflint/README b/network/mstflint/README
new file mode 100644
index 0000000000..b5d4b54723
--- /dev/null
+++ b/network/mstflint/README
@@ -0,0 +1,15 @@
+The mstflint is a set of tools for changing firmware configuration of
+Mellanox ConnectX Ethernet NICs and Infiniband HCA/VPI cards,
+as well as diagnosing (mainly hardware) problems and
+burning firmware for these products.
+
+These open-source tools are based on a subset of the proprietary
+Mellanox Firmware Tools (MFT) package.
+
+The functionality needed to burn firmware for
+Mellanox Infiniband switches from a connected host can be enabled with:
+
+ env ENABLE_INBAND=YES ./mstflint.SlackBuild
+
+which then pulls in the optional dependency upon "rdma-core"
+(available on SlackBuilds.org).
diff --git a/network/mstflint/mstflint.SlackBuild b/network/mstflint/mstflint.SlackBuild
new file mode 100644
index 0000000000..c6be0b8c15
--- /dev/null
+++ b/network/mstflint/mstflint.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for mstflint
+
+# Copyright 2023,2024 GUAN Xin <guanx.bac@gmail.com> from Beijing
+# 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=mstflint
+VERSION=${VERSION:-4.26.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-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
+ENABLE_INBAND=${ENABLE_INBAND:-no}
+if ! [ `echo x$ENABLE_INBAND | tr '[:lower:]' '[:upper:]'` = XYES ]; then
+ CONFIG_PARAMS_EXTRA="${CONFIG_PARAMS_EXTRA} --disable-inband"
+ SLACK_DESC_SED_CMD='s/ENABLE_INBAND/ but disabled at build time/g'
+else
+ CONFIG_PARAMS_EXTRA=
+ SLACK_DESC_SED_CMD='s/ENABLE_INBAND//g'
+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-1.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} \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux \
+ --enable-xml2 \
+ --enable-cs \
+ --enable-adb-generic-tools \
+ --enable-dpa \
+ ${CONFIG_PARAMS_EXTRA}
+
+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
+
+chmod 0755 $PKG/usr/lib${LIBDIRSUFFIX}/mstflint/python_tools/*.so
+
+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 COPYING LICENSE README $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc | sed "$SLACK_DESC_SED_CMD" > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/mstflint/mstflint.info b/network/mstflint/mstflint.info
new file mode 100644
index 0000000000..60efcc2f30
--- /dev/null
+++ b/network/mstflint/mstflint.info
@@ -0,0 +1,10 @@
+PRGNAM="mstflint"
+VERSION="4.26.0"
+HOMEPAGE="https://github.com/Mellanox/mstflint"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/Mellanox/mstflint/releases/download/v4.26.0-1/mstflint-4.26.0-1.tar.gz"
+MD5SUM_x86_64="54b0f8f28d26aa82cacf1dab545be9c9"
+REQUIRES=""
+MAINTAINER="GUAN Xin"
+EMAIL="guanx.bac@gmail.com"
diff --git a/network/suricata/slack-desc b/network/mstflint/slack-desc
index ebad0dcb9d..b46242c6e5 100644
--- a/network/suricata/slack-desc
+++ b/network/mstflint/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-suricata: suricata (Network Security Monitoring)
-suricata:
-suricata: Suricata is a high performance open source Network Security
-suricata: and Intrusion Detection and Prevention Monitoring System for
-suricata: Linux, FreeBSD and Windows. It was designed and owned by a
-suricata: non-profit foundation OISF (Open Information Security Foundation)
-suricata:
-suricata: Homepage: https://suricata-ids.org/
-suricata:
-suricata:
-suricata:
+mstflint: mstflint (Mellanox firmware configuration tools)
+mstflint:
+mstflint: mstflint is a set of tools for firmware burning and configuration of
+mstflint: Mellanox Ethernet NICs, Infiniband HCA/VPI cards.
+mstflint:
+mstflint: Firmware burning for Mellanox Infiniband switches from a
+mstflint: connected host is supportedENABLE_INBAND.
+mstflint:
+mstflint:
+mstflint: Home: https://github.com/Mellanox/mstflint
+mstflint:
diff --git a/network/mullvadvpn-app/README b/network/mullvadvpn-app/README
new file mode 100644
index 0000000000..64d8bce43e
--- /dev/null
+++ b/network/mullvadvpn-app/README
@@ -0,0 +1,8 @@
+MullvadVPN-app Desktop Client
+
+This is a repackaged Debian binary package for MullvadVPN's
+Desktop Client.
+
+This SlackBuild also supports both x86_64 & aarch64 deb downloads and
+will install the correct package for your arch.
+
diff --git a/network/mullvadvpn-app/doinst.sh b/network/mullvadvpn-app/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/mullvadvpn-app/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/mullvadvpn-app/mullvadvpn-app.SlackBuild b/network/mullvadvpn-app/mullvadvpn-app.SlackBuild
new file mode 100644
index 0000000000..164a12feba
--- /dev/null
+++ b/network/mullvadvpn-app/mullvadvpn-app.SlackBuild
@@ -0,0 +1,113 @@
+#!/bin/bash
+
+# Slackware build script for mullvadvpn-app
+#
+# Copyright 2023 Jay Lanagan (j@lngn.net), Detroit, MI, 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=mullvadvpn-app
+SRCNAM=MullvadVPN
+VERSION=${VERSION:-2024.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
+ DEBARCH="i386"
+ LIBDIRSUFFIX=""
+ echo "This package is currently only available for 64bit."
+ exit 1
+elif [ "$ARCH" = "x86_64" ]; then
+ DEBARCH="amd64"
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ DEBARCH="arm64"
+ LIBDIRSUFFIX="64"
+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/$SRCNAM-${VERSION}_$DEBARCH.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
+
+# move and cleanup of debian package files
+
+# create rc file, there's no options to change so we'll just install it
+mkdir -p $PKG/etc/rc.d
+cp -a $CWD/rc.mullvad $PKG/etc/rc.d/rc.mullvad
+chmod 755 $PKG/etc/rc.d/rc.mullvad
+chown root:root $PKG/etc/rc.d/rc.mullvad
+
+# mullvad stores login settings here
+mkdir -p $PKG/etc/mullvad-vpn
+
+# location mullvad stores logs
+mkdir -p $PKG/var/log/mullvad-vpn
+
+# docs
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $PKG/usr/share/doc/mullvad-vpn/* $PKG/opt/Mullvad\ VPN\/LICENSE* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/share/zsh
+cp -a $PKG/usr/local/share/* $PKG/usr/share
+rm -rf $PKG/usr/share/doc
+rm -rf $PKG/usr/local
+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/mullvadvpn-app/mullvadvpn-app.info b/network/mullvadvpn-app/mullvadvpn-app.info
new file mode 100644
index 0000000000..12c12a9a7e
--- /dev/null
+++ b/network/mullvadvpn-app/mullvadvpn-app.info
@@ -0,0 +1,12 @@
+PRGNAM="mullvadvpn-app"
+VERSION="2024.1"
+HOMEPAGE="https://mullvad.net/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/mullvad/mullvadvpn-app/releases/download/2024.1/MullvadVPN-2024.1_amd64.deb \
+ https://github.com/mullvad/mullvadvpn-app/releases/download/2024.1/MullvadVPN-2024.1_arm64.deb"
+MD5SUM_x86_64="80a62dba93bdbce63f6468ccb2b41d46 \
+ 39b9868dbd2a48088c3143c82771b5aa"
+REQUIRES=""
+MAINTAINER="Jay Lanagan"
+EMAIL="j@lngn.net"
diff --git a/network/mullvadvpn-app/rc.mullvad b/network/mullvadvpn-app/rc.mullvad
new file mode 100644
index 0000000000..427f2e3fe6
--- /dev/null
+++ b/network/mullvadvpn-app/rc.mullvad
@@ -0,0 +1,34 @@
+#!/bin/sh
+#
+# /etc/rc.d/rc.mullvad
+#
+# Start/stop/restart - Mullvad VPN Service.
+#
+# To make Mullvad VPN start automatically at boot, make this
+# file executable: chmod 755 /etc/rc.d/rc.mullvad
+#
+# and also you must add this to /etc/rc.d/rc.local to
+# start MullvadVPN:
+#
+# if [ -x /etc/rc.d/rc.mullvad ]; then
+# /etc/rc.d/rc.mullvad start
+# fi
+
+
+case "$1" in
+ 'start')
+ /usr/bin/mullvad-daemon -v >/dev/null &
+ ;;
+ 'stop')
+ pkill -f /usr/bin/mullvad-daemon >/dev/null &
+ # Remove both possible .pid locations:
+ rm -f /var/run/mullvad-vpn.pid /var/run/mullvad-vpn/mullvad-vpn.pid
+ ;;
+ 'restart')
+ /usr/bin/mullvad-daemon -v >/dev/null &
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart}"
+ ;;
+esac
+
diff --git a/network/mullvadvpn-app/slack-desc b/network/mullvadvpn-app/slack-desc
new file mode 100644
index 0000000000..4cd201b014
--- /dev/null
+++ b/network/mullvadvpn-app/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------------------------------------------------------|
+mullvadvpn-app: mullvadvpn-app (vpn service desktop client)
+mullvadvpn-app:
+mullvadvpn-app: This is the VPN client software for the Mullvad VPN service. For more
+mullvadvpn-app: information about the service, please visit the website, mullvad.net.
+mullvadvpn-app:
+mullvadvpn-app: Homepage: https://github.com/mullvad/mullvadvpn-app
+mullvadvpn-app:
+mullvadvpn-app:
+mullvadvpn-app:
+mullvadvpn-app:
+mullvadvpn-app:
diff --git a/network/mumble-server/README b/network/mumble-server/README
index 71caa236e8..b4c6caeeee 100644
--- a/network/mumble-server/README
+++ b/network/mumble-server/README
@@ -1,14 +1,13 @@
mumble-sever is the VoIP server component for Mumble. Murmur is
-installed in a system-wide fashion, but can also be run by individual
-users. Each mumble-server process supports multiple virtual servers,
-each with their own user base and channel list. Administration of
-mumble-server is done through D-Bus.
+installed in a system-wide fashion, but can also be run by
+individual users. Each mumble-server process supports multiple virtual
+servers, each with their own user base and channel list.
+Administration of mumble-server is done through D-Bus.
This script requires the system to have a mumble-server user and group:
# groupadd -g 261 murmur
- # useradd -g murmur -u 261 \
- -d /var/lib/mumble-server -s /bin/false murmur
+ # useradd -g murmur -u 261 -d /var/lib/mumble-server -s /bin/false murmur
To use a different user and/or group:
@@ -29,5 +28,6 @@ Not all of the upstream documentation has been updated yet.
Notes:
- This does not build the mumble client (mumble).
-- For wget github download, you may need to use:
- wget --content-disposition ...
+- ZeroC Ice is optional for server RPC support. Build with
+ ICE=yes ./mumble-server.SlackBuild
+ See: https://wiki.mumble.info/wiki/Ice
diff --git a/network/mumble-server/mumble-server.SlackBuild b/network/mumble-server/mumble-server.SlackBuild
index c5a2589751..5d4e1ad82a 100644
--- a/network/mumble-server/mumble-server.SlackBuild
+++ b/network/mumble-server/mumble-server.SlackBuild
@@ -27,10 +27,11 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mumble-server
SRCNAM=mumble
-VERSION=${VERSION:-1.4.230}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.4.287}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+ICE=${ICE:-no}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -40,9 +41,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
@@ -70,6 +68,12 @@ if ! getent passwd $MURMUR_USER; then
exit 1
fi
+if [ "$ICE" = "no" ]; then
+ BUILD_ICE="-Dice=OFF"
+else
+ BUILD_ICE="-Dice=ON"
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -100,6 +104,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
+sed -e "s|CMAKE_CXX_STANDARD 14|CMAKE_CXX_STANDARD 17|" -i CMakeLists.txt
mkdir -p build
(cd build
@@ -111,7 +116,7 @@ cmake \
-DCMAKE_BUILD_TYPE=Release \
-Dclient=OFF \
-Dserver=ON \
- -Dice=OFF \
+ $BUILD_ICE \
-Dzeroconf=OFF ..
make
diff --git a/network/mumble-server/mumble-server.info b/network/mumble-server/mumble-server.info
index d453c2935f..e00b5956a1 100644
--- a/network/mumble-server/mumble-server.info
+++ b/network/mumble-server/mumble-server.info
@@ -1,8 +1,8 @@
PRGNAM="mumble-server"
-VERSION="1.4.230"
+VERSION="1.4.287"
HOMEPAGE="https://wiki.mumble.info/wiki/Main_Page"
-DOWNLOAD="https://github.com/mumble-voip/mumble/releases/download/v1.4.230/mumble-1.4.230.tar.gz"
-MD5SUM="8069db67ecb4b601f0e324c62dbed90a"
+DOWNLOAD="https://github.com/mumble-voip/mumble/releases/download/v1.4.287/mumble-1.4.287.tar.gz"
+MD5SUM="c9a2eb6413d165da606fb8d4657a1697"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="protobuf3"
diff --git a/network/mumble/README b/network/mumble/README
index ba5d6f914f..bb85a2cbe5 100644
--- a/network/mumble/README
+++ b/network/mumble/README
@@ -29,5 +29,4 @@ Text-to-speech is the default (speechd and espeak). Disable with
Notes:
- This does not build the mumble server (murmur).
-- For wget github download, you may need to use:
- wget --content-disposition ...
+
diff --git a/network/mumble/mumble.SlackBuild b/network/mumble/mumble.SlackBuild
index e9941cb66e..f9d372c349 100644
--- a/network/mumble/mumble.SlackBuild
+++ b/network/mumble/mumble.SlackBuild
@@ -27,8 +27,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=mumble
-VERSION=${VERSION:-1.4.230}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.4.287}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -46,9 +46,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
@@ -121,6 +118,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 {} \;
+# Apply missing GTAV plugin patch for 32-bit alignment
+# https://github.com/mumble-voip/mumble/issues/5849
+patch -p1 < $CWD/positional-audio-plugin-gtav-32-bit-fix.patch
+
+sed -e "s|CMAKE_CXX_STANDARD 14|CMAKE_CXX_STANDARD 17|" -i CMakeLists.txt
mkdir -p build
cd build
@@ -136,7 +138,7 @@ cmake \
-Dbundled-speex=OFF \
-Dupdate=OFF \
-Dbundle-qt-translations=OFF \
- -Dice=OFF \
+ -Dwarnings-as-errors=OFF \
-Dzeroconf=OFF \
$BUILD_CELT \
$BUILD_SPEECHD \
diff --git a/network/mumble/mumble.info b/network/mumble/mumble.info
index 210635647a..553d27e33f 100644
--- a/network/mumble/mumble.info
+++ b/network/mumble/mumble.info
@@ -1,8 +1,8 @@
PRGNAM="mumble"
-VERSION="1.4.230"
+VERSION="1.4.287"
HOMEPAGE="https://wiki.mumble.info/wiki/Main_Page"
-DOWNLOAD="https://github.com/mumble-voip/mumble/releases/download/v1.4.230/mumble-1.4.230.tar.gz"
-MD5SUM="8069db67ecb4b601f0e324c62dbed90a"
+DOWNLOAD="https://github.com/mumble-voip/mumble/releases/download/v1.4.287/mumble-1.4.287.tar.gz"
+MD5SUM="c9a2eb6413d165da606fb8d4657a1697"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="protobuf3 poco"
diff --git a/network/mumble/positional-audio-plugin-gtav-32-bit-fix.patch b/network/mumble/positional-audio-plugin-gtav-32-bit-fix.patch
new file mode 100644
index 0000000000..59cf2120b3
--- /dev/null
+++ b/network/mumble/positional-audio-plugin-gtav-32-bit-fix.patch
@@ -0,0 +1,30 @@
+From 13c051b36b387356815cff5d685bc628b74ba136 Mon Sep 17 00:00:00 2001
+From: Davide Beatrici <git@davidebeatrici.dev>
+Date: Thu, 1 Sep 2022 23:32:57 +0200
+Subject: [PATCH] FIX(positional-audio): Force 8 bytes alignment for
+ CCameraAngles in GTAV plugin
+
+https://en.cppreference.com/w/cpp/language/alignas
+
+This fixes compilation when the implicit alignment is not 8 bytes.
+
+It can be the case with 32 bit targets.
+---
+ plugins/gtav/structs.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/plugins/gtav/structs.h b/plugins/gtav/structs.h
+index 2829dc11e1..0e4f76edab 100644
+--- a/plugins/gtav/structs.h
++++ b/plugins/gtav/structs.h
+@@ -118,7 +118,7 @@ struct CCameraManagerAngles {
+ ptr_t cameraAngles; // CCameraAngles *
+ };
+
+-struct CCameraAngles {
++struct alignas(8) CCameraAngles {
+ uint8_t pad1[960];
+ ptr_t playerAngles; // CPlayerAngles *
+ uint8_t pad2[60];
+
+
diff --git a/network/munge/munge.SlackBuild b/network/munge/munge.SlackBuild
index 4fc926ed56..ba623c7452 100644
--- a/network/munge/munge.SlackBuild
+++ b/network/munge/munge.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Munge
-# Copyright 2015-2021 Emmanuel N. Millan, Mendoza, Argentina.
+# Copyright 2015-2024 Emmanuel N. Millan, Mendoza, Argentina.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=munge
-VERSION=${VERSION:-0.5.14}
+VERSION=${VERSION:-0.5.16}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/munge/munge.info b/network/munge/munge.info
index 58e3aba957..7419b7fca8 100644
--- a/network/munge/munge.info
+++ b/network/munge/munge.info
@@ -1,8 +1,8 @@
PRGNAM="munge"
-VERSION="0.5.14"
+VERSION="0.5.16"
HOMEPAGE="https://dun.github.io/munge/"
-DOWNLOAD="https://github.com/dun/munge/releases/download/munge-0.5.14/munge-0.5.14.tar.xz"
-MD5SUM="e81db7faf729611e23d0552334dfc212"
+DOWNLOAD="https://github.com/dun/munge/releases/download/munge-0.5.16/munge-0.5.16.tar.xz"
+MD5SUM="c68e5226f075d240582113396ccb1fcb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/nbwmon/nbwmon.SlackBuild b/network/nbwmon/nbwmon.SlackBuild
index e57c63377d..fc1b6be8df 100644
--- a/network/nbwmon/nbwmon.SlackBuild
+++ b/network/nbwmon/nbwmon.SlackBuild
@@ -4,7 +4,7 @@
# Slackware build script for nbwmon
-# Copyright 2015 Aaditya Bagga <aaditya_gnulinux@zoho.com>>
+# Copyright 2015 Aaditya <aaditya_gnulinux@zoho.com>>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
diff --git a/network/nbwmon/nbwmon.info b/network/nbwmon/nbwmon.info
index d5e5d46a79..e8afeaa521 100644
--- a/network/nbwmon/nbwmon.info
+++ b/network/nbwmon/nbwmon.info
@@ -1,10 +1,10 @@
PRGNAM="nbwmon"
VERSION="0.5.2"
HOMEPAGE="https://github.com/causes-/nbwmon"
-DOWNLOAD="https://github.com/causes-/nbwmon/archive/0.5.2.tar.gz"
+DOWNLOAD="https://github.com/causes-/nbwmon/archive/0.5.2/nbwmon-0.5.2.tar.gz"
MD5SUM="d337ba71c670823e5878fa87c94d9c4d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Aaditya Bagga"
+MAINTAINER="Aaditya"
EMAIL="aaditya_gnulinux@zoho.com"
diff --git a/network/ncp/ncp.SlackBuild b/network/ncp/ncp.SlackBuild
index 31f67954aa..4f18477fee 100644
--- a/network/ncp/ncp.SlackBuild
+++ b/network/ncp/ncp.SlackBuild
@@ -6,13 +6,15 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 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.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ncp
VERSION=${VERSION:-1.2.4}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -66,11 +68,18 @@ sed -i 's,ln -f,ln -s,' GNUmakefile
# The libowfat detection stuff needs a little help...
-make PREFIX=/usr CFLAGS="$SLKCFLAGS -Wl,-s -I/opt/diet/include/libowfat -L$L"
+INC="-I/opt/diet/include/libowfat -I/opt/diet/include"
+make PREFIX=/usr CFLAGS="$SLKCFLAGS -Wl,-s $INC -L$L"
make install PREFIX=$PKG/usr
gzip $PKG/usr/man/man1/*.1
ln -s npush.1.gz $PKG/usr/man/man1/npoll.1.gz
+# 20230103 bkw: grrr. no DESTDIR support in the Makefile, so we get
+# broken symlinks.
+rm -f $PKG/usr/bin/{npush,npoll}
+ln -s ncp $PKG/usr/bin/npush
+ln -s ncp $PKG/usr/bin/npoll
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a NEWS $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/neomutt/README b/network/neomutt/README
index 210577c6e7..bb806f5098 100644
--- a/network/neomutt/README
+++ b/network/neomutt/README
@@ -7,7 +7,6 @@ for selecting groups of messages.
Optional dependencies:
* notmuch - fast mail indexer for maildir
-* kyotocabinet - straightforward implementation of DBM
* lua53 - Powerful, fast, light-weight, embeddable scripting language
NOTE: this won't work if you have multiple versions of lua installed.
@@ -15,4 +14,4 @@ This script builds neomutt without optional support
for idn2, notmuch, lua and kyotocabinet.
You can be enabled with:
-# USENOTMUCH=yes USEKYOTO=yes USELUA=yes ./neomutt.SlackBuild
+# USENOTMUCH=yes USELUA=yes ./neomutt.SlackBuild
diff --git a/network/neomutt/neomutt.SlackBuild b/network/neomutt/neomutt.SlackBuild
index e92e031a66..51d1f52858 100644
--- a/network/neomutt/neomutt.SlackBuild
+++ b/network/neomutt/neomutt.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=neomutt
-VERSION=${VERSION:-20220429}
+VERSION=${VERSION:-20240329}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -68,7 +68,6 @@ else
fi
[ ${USELUA:-no} == 'yes' ] && LUA="--lua" || LUA=""
-[ ${USEKYOTO:-no} == 'yes' ] && KYOTO="--kyotocabinet" || KYOTO=""
[ ${USENOTMUCH:-no} == 'yes' ] && NOTMUCH="--notmuch" || NOTMUCH=""
set -eu
@@ -105,11 +104,11 @@ CXXFLAGS="$SLKCFLAGS" \
--sqlite \
--full-doc \
--idn2 \
- --disable-idn \
--autocrypt \
+ --lmdb \
--host=$ARCH-slackware-linux \
--build=$ARCH-slackware-linux \
- $NOTMUCH $KYOTO $LUA
+ $NOTMUCH $LUA
make
make DESTDIR=$PKG install
@@ -123,9 +122,10 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
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
+# install desktop file and icons
install -Dm644 $CWD/files/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
for i in 32 64 128 256; do
- install -Dm644 contrib/logo/$PRGNAM-$i.png $PKG/usr/share/icons/hicolor/${i}x${i}/apps/$PRGNAM.png
+ install -Dm644 data/logo/$PRGNAM-$i.png $PKG/usr/share/icons/hicolor/${i}x${i}/apps/$PRGNAM.png
done
# Rename conf files
diff --git a/network/neomutt/neomutt.info b/network/neomutt/neomutt.info
index 79ac0fbddc..fab43ad595 100644
--- a/network/neomutt/neomutt.info
+++ b/network/neomutt/neomutt.info
@@ -1,8 +1,8 @@
PRGNAM="neomutt"
-VERSION="20220429"
+VERSION="20240329"
HOMEPAGE="https://github.com/neomutt/neomutt"
-DOWNLOAD="https://github.com/neomutt/neomutt/archive/20220429/neomutt-20220429.tar.gz"
-MD5SUM="1233999eac07995bc42d583896670685"
+DOWNLOAD="https://github.com/neomutt/neomutt/archive/20240329/neomutt-20240329.tar.gz"
+MD5SUM="3ea5e0b732ecff28a2105041602e6222"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/nessus/README b/network/nessus/README
new file mode 100644
index 0000000000..6833489890
--- /dev/null
+++ b/network/nessus/README
@@ -0,0 +1,7 @@
+Nessus Vulnerability Scanner
+
+Nessus Professional, the industry's most widely deployed vulnerability
+assessment solution helps you reduce your organization's attack surface
+and ensure compliance. Nessus features high-speed asset discovery,
+configuration auditing, target profiling, malware detection, sensitive
+data discovery, and more.
diff --git a/network/nessus/doinst.sh b/network/nessus/doinst.sh
new file mode 100644
index 0000000000..d27a6df2c1
--- /dev/null
+++ b/network/nessus/doinst.sh
@@ -0,0 +1,43 @@
+#!/bin/sh
+
+
+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
+}
+
+if [ -e /etc/rc.d/rc.nessusd ]; then
+ chroot . sh /etc/rc.d/rc.nessusd status > /dev/null 2>&1
+ RETVAL=$?
+ if [ "$RETVAL" == "0" ]; then
+ chroot . sh /etc/rc.d/rc.nessusd stop > /dev/null 2>&1
+ fi
+fi
+
+preserve_perms etc/rc.d/rc.nessusd.new
+
+echo ""
+echo "Unpacking Nessus Core Components..."
+chroot . /opt/nessus/sbin/nessuscli install /opt/nessus/var/nessus/plugins-core.tar.gz
+
+echo " - You can start Nessus by typing sh /etc/rc.d/rc.nessusd start"
+echo " - Then go to https://"`hostname`":8834/ to configure your scanner"
+echo ""
diff --git a/network/nessus/nessus.SlackBuild b/network/nessus/nessus.SlackBuild
new file mode 100644
index 0000000000..780603c7f3
--- /dev/null
+++ b/network/nessus/nessus.SlackBuild
@@ -0,0 +1,89 @@
+#!/bin/bash
+
+# Slackware build script for Tenable(TM) Nessus Vulnerability Scanner
+
+# Copyright 2019-2024 Giuseppe Di Terlizzi <giuseppe.diterlizzi@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=nessus
+VERSION=${VERSION:-10.7.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 [ "$ARCH" != "x86_64" ]; then
+ echo "Unsupported platform"
+ exit 1
+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
+cd $PKG
+
+rpm2cpio $CWD/Nessus-$VERSION-*.rpm | cpio --extract --make-directories --verbose
+
+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 $PKG/etc/rc.d
+
+# Remove SystemD and Firewalld rules
+rm -rf $PKG/usr/lib
+
+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
+cat $CWD/rc.nessusd > $PKG/etc/rc.d/rc.nessusd.new
+
+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/nessus/nessus.info b/network/nessus/nessus.info
new file mode 100644
index 0000000000..aabe4b852c
--- /dev/null
+++ b/network/nessus/nessus.info
@@ -0,0 +1,10 @@
+PRGNAM="nessus"
+VERSION="10.7.0"
+HOMEPAGE="https://www.tenable.com/products/nessus"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://www.tenable.com/downloads/api/v2/pages/nessus/files/Nessus-10.7.0-el7.x86_64.rpm"
+MD5SUM_x86_64="618234819d2fc39c49890abb595c87e8"
+REQUIRES=""
+MAINTAINER="Giuseppe Di Terlizzi"
+EMAIL="giuseppe.diterlizzi@gmail.com"
diff --git a/network/nessus/rc.nessusd b/network/nessus/rc.nessusd
new file mode 100644
index 0000000000..a4a9c47376
--- /dev/null
+++ b/network/nessus/rc.nessusd
@@ -0,0 +1,112 @@
+#!/bin/sh
+
+# Tenable(TM) Nessus Scanner Start & Stop script
+#
+
+# Source function library.
+if [ -f /etc/init.d/functions ] ; then
+ . /etc/init.d/functions
+else
+ exit 0
+fi
+
+# Load nessusd environment
+[ -f /etc/sysconfig/nessusd ] && . /etc/sysconfig/nessusd
+
+# Avoid using root's TMPDIR
+unset TMPDIR
+
+test -x /opt/nessus/sbin/nessus-service || {
+ echo "Nessus not properly installed"
+ exit 1
+}
+
+RETVAL=0
+
+NESSUS_PID_FILE="/opt/nessus/var/nessus/nessus-service.pid"
+NESSUS_NAME="Nessus"
+
+start() {
+
+ echo -n $"Starting Nessus services: "
+
+ /opt/nessus/sbin/nessus-service -q -D
+ RETVAL=$?
+
+ if [ "$RETVAL" == "0" ]; then
+ success
+ else
+ failure
+ fi
+
+ echo
+ return 0
+
+}
+
+stop() {
+
+ echo -n $"Shutting down Nessus services: "
+
+ test -f "$NESSUS_PID_FILE" && kill `cat /opt/nessus/var/nessus/nessus-service.pid`
+ RETVAL=$?
+
+ sleep 4
+
+ if [ "$RETVAL" == "0" ]; then
+ success
+ else
+ failure
+ fi
+
+ echo
+ return 0
+
+}
+
+restart() {
+ stop
+ start
+}
+
+status() {
+
+ if [ -f "$NESSUS_PID_FILE" ]; then
+
+ exp_pid=$(cat $NESSUS_PID_FILE)
+ pid_dir="/proc/$exp_pid"
+
+ if [ -d "$pid_dir" ]; then
+ if [ "$(cat ${pid_dir}/stat | awk '{print $2}' | tr -d '()')" == "nessus-service" ]; then
+ echo "$NESSUS_NAME is running"
+ return 0
+ fi
+ fi
+
+ fi
+
+ echo "$NESSUS_NAME is not running"
+ return 3
+
+}
+
+
+case "$1" in
+ start)
+ start
+ ;;
+ status)
+ status
+ ;;
+ stop)
+ stop
+ ;;
+ restart)
+ restart
+ ;;
+ *)
+ echo $"Usage: $0 {start|stop|restart|status}"
+ exit 1
+esac
+
+exit $?
diff --git a/network/nessus/slack-desc b/network/nessus/slack-desc
new file mode 100644
index 0000000000..f89856a44a
--- /dev/null
+++ b/network/nessus/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------------------------------------------------------|
+nessus: nessus (Nessus Vulnerability Scanner)
+nessus:
+nessus: Nessus Professional, the industry's most widely deployed
+nessus: vulnerability assessment solution helps you reduce your
+nessus: organization's attack surface and ensure compliance. Nessus features
+nessus: high-speed asset discovery, configuration auditing, target profiling,
+nessus: malware detection, sensitive data discovery, and more.
+nessus:
+nessus:
+nessus: Homepage: https://www.tenable.com/products/nessus
+nessus:
diff --git a/network/netcat-openbsd/netcat-openbsd.SlackBuild b/network/netcat-openbsd/netcat-openbsd.SlackBuild
index fff55242b0..eb0218d7ea 100644
--- a/network/netcat-openbsd/netcat-openbsd.SlackBuild
+++ b/network/netcat-openbsd/netcat-openbsd.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=netcat-openbsd
-VERSION=${VERSION:-1.217_1}
+VERSION=${VERSION:-7.4_1}
SRCVER=$(echo $VERSION | tr _ -)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -89,7 +89,7 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-make CFLAGS="$SLKCFLAGS -DNETCAT_VERSION=\"\\\"$VERSION\\\"\""
+make
mkdir -p $PKG/usr/bin/ $PKG/usr/man/man1/
install -s -m 0755 nc $PKG/usr/bin/nc.openbsd
diff --git a/network/netcat-openbsd/netcat-openbsd.info b/network/netcat-openbsd/netcat-openbsd.info
index 3f136b9596..d28e0d33d7 100644
--- a/network/netcat-openbsd/netcat-openbsd.info
+++ b/network/netcat-openbsd/netcat-openbsd.info
@@ -1,8 +1,8 @@
PRGNAM="netcat-openbsd"
-VERSION="1.217_1"
+VERSION="7.4_1"
HOMEPAGE="https://github.com/duncan-roe/netcat-openbsd"
-DOWNLOAD="https://github.com/duncan-roe/netcat-openbsd/archive/refs/tags/1.217-1/netcat-openbsd-1.217-1.tar.gz"
-MD5SUM="8babccac46097ae5b746ffa00c01ac0f"
+DOWNLOAD="https://github.com/duncan-roe/netcat-openbsd/archive/refs/tags/7.4-1/netcat-openbsd-7.4-1.tar.gz"
+MD5SUM="f38105e0185390273075177379e6273d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="%README% libbsd"
diff --git a/network/nethogs/nethogs.SlackBuild b/network/nethogs/nethogs.SlackBuild
index 760dfb1e8c..181782a549 100644
--- a/network/nethogs/nethogs.SlackBuild
+++ b/network/nethogs/nethogs.SlackBuild
@@ -9,7 +9,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nethogs
-VERSION=${VERSION:-0.8.5}
+VERSION=${VERSION:-0.8.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -22,9 +22,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
@@ -83,7 +80,7 @@ gzip -9 $PKG/usr/man/man8/*.?
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd $TMP/$PRGNAM-$VERSION/
-cp -a DESIGN Changelog INSTALL README.* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING DESIGN INSTALL 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/nethogs/nethogs.info b/network/nethogs/nethogs.info
index cd4b591ee4..6abd087985 100644
--- a/network/nethogs/nethogs.info
+++ b/network/nethogs/nethogs.info
@@ -1,8 +1,8 @@
PRGNAM="nethogs"
-VERSION="0.8.5"
+VERSION="0.8.6"
HOMEPAGE="https://github.com/raboof/nethogs"
-DOWNLOAD="https://github.com/raboof/nethogs/archive/v0.8.5/nethogs-0.8.5.tar.gz"
-MD5SUM="002fd7227d8ed2a8b0fcb0a1b44731bf"
+DOWNLOAD="https://github.com/raboof/nethogs/archive/v0.8.6/nethogs-0.8.6.tar.gz"
+MD5SUM="e7acdcf0fd73975eb8bdf3704c952b2a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/netperf/netperf.SlackBuild b/network/netperf/netperf.SlackBuild
index 4f96abb969..a7c1b3b5a6 100644
--- a/network/netperf/netperf.SlackBuild
+++ b/network/netperf/netperf.SlackBuild
@@ -47,7 +47,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
fi
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
diff --git a/network/newsboat/newsboat.SlackBuild b/network/newsboat/newsboat.SlackBuild
index 92fbbe0f69..5a66aba35e 100644
--- a/network/newsboat/newsboat.SlackBuild
+++ b/network/newsboat/newsboat.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2017-2018 Benjamin Trigona-Harany <slackbuilds@jaxartes.net>
# Copyright 2019-2022 Andrew Clemons, Wellington New Zealand
-# Copyright 2022 Andrew Clemons, Tokyo Japan
+# Copyright 2022-2023 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=newsboat
-VERSION=${VERSION:-2.29}
+VERSION=${VERSION:-2.34}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -58,15 +58,15 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
- CARGOTARGET="--target i586-unknown-linux-gnu"
+ CARGOTARGET="--target $ARCH-unknown-linux-gnu"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
- CARGOTARGET="--target i686-unknown-linux-gnu"
-elif [ "$ARCH" = "x86_64" ]; then
+ CARGOTARGET="--target $ARCH-unknown-linux-gnu"
+elif [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "aarch64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
- CARGOTARGET="--target x86_64-unknown-linux-gnu"
+ CARGOTARGET="--target $ARCH-unknown-linux-gnu"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -84,7 +84,7 @@ cd $PRGNAM-$VERSION
# build offline
# configuration tells cargo to use the configured directory
-# for dependencies intead of downloading from crates.io
+# for dependencies instead of downloading from crates.io
mkdir .cargo
cat << EOF >> .cargo/config
[source.crates-io]
@@ -100,11 +100,19 @@ mkdir vendor
(
cd vendor
- grep -h -A 3 "\[\[package\]\]" $(find ../ -maxdepth 1 -mindepth 1 -name Cargo.lock | tr '\n' ' ') | \
- sed 's/[[:space:]]*=[[:space:]]*/=/g;s/^--//;s/^\[\[/--\n[[/' | \
- awk 'BEGIN { RS = "--\n" ; FS="\n" } { print $2, $3, $4 }' | sed 's/"//g;s/name=//;s/ version=/=/' | \
- grep crates\.io-index | sed 's/ source=.*$//' | sort -u | while read -r dep ; do
-
+ grep -h -A 4 "\[\[package\]\]" \
+ $(find "../" -maxdepth 1 -mindepth 1 -name Cargo.lock | tr '\n' ' ') | \
+ sed 's/[[:space:]]*=[[:space:]]*/=/g;s/^--//;s/^\[\[/--\n[[/' | \
+ awk 'BEGIN { RS = "--\n" ; FS="\n" } { print $2, $3, $4, $5 }' | \
+ sed 's/"//g;s/name=//;s/ version=/=/' | \
+ grep " source=" | \
+ sed 's/ dependencies=.*$//' | \
+ sed 's/ source=[^ ]*//' | \
+ sed 's/ checksum=/=/' | \
+ sort -u | \
+ while read -r dep ; do
+
+ cksum="$(printf "%s\n" "$dep" | cut -d= -f3)"
ver="$(printf "%s\n" "$dep" | cut -d= -f2)"
dep="$(printf "%s\n" "$dep" | cut -d= -f1)"
@@ -123,9 +131,7 @@ mkdir vendor
) | sed '$ s/,$//'
printf " },\n"
- printf ' "package": "'
-
- sha256sum "$CWD/$dep-$ver.crate" | cut -f1 -d' ' | sed 's/$/"/'
+ printf ' "package": "%s"' "$cksum"
printf "}\n"
} > $dep-$ver/.cargo-checksum.json
@@ -144,6 +150,13 @@ if [ "$CARGOTARGET" != "" ] ; then
sed -i "s|target/release|target/$RELEASEDIR/release|" Makefile
fi
+export PATH="/opt/rust16/bin:$PATH"
+if [ -z "$LD_LIBRARY_PATH" ]; then
+ export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX"
+else
+ export LD_LIBRARY_PATH="/opt/rust16/lib$LIBDIRSUFFIX:$LD_LIBRARY_PATH"
+fi
+
export CARGO_HOME=.cargo
CXXFLAGS="$SLKCFLAGS" \
diff --git a/network/newsboat/newsboat.info b/network/newsboat/newsboat.info
index c56527dd26..57a50f27b5 100644
--- a/network/newsboat/newsboat.info
+++ b/network/newsboat/newsboat.info
@@ -1,220 +1,240 @@
PRGNAM="newsboat"
-VERSION="2.29"
+VERSION="2.34"
HOMEPAGE="https://www.newsboat.org/"
-DOWNLOAD="https://newsboat.org/releases/2.29/newsboat-2.29.tar.xz \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/addr2line/addr2line-0.17.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/adler/adler-1.0.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/aho-corasick/aho-corasick-0.7.18.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/android_system_properties/android_system_properties-0.1.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/autocfg/autocfg-1.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/backtrace/backtrace-0.3.65.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bit-set/bit-set-0.5.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bit-vec/bit-vec-0.6.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bitflags/bitflags-1.3.2.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/block/block-0.1.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/bumpalo/bumpalo-3.10.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/byteorder/byteorder-1.4.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cc/cc-1.0.73.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cfg-if/cfg-if-1.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/chrono/chrono-0.4.22.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/codespan-reporting/codespan-reporting-0.11.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/core-foundation-sys/core-foundation-sys-0.8.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/curl-sys/curl-sys-0.4.57+curl-7.85.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cxx-build/cxx-build-1.0.76.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cxx/cxx-1.0.76.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cxxbridge-flags/cxxbridge-flags-1.0.76.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/cxxbridge-macro/cxxbridge-macro-1.0.76.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs-sys/dirs-sys-0.3.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/dirs/dirs-4.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/fastrand/fastrand-1.8.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/fnv/fnv-1.0.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/form_urlencoded/form_urlencoded-1.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/getrandom/getrandom-0.2.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gettext-rs/gettext-rs-0.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gettext-sys/gettext-sys-0.21.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/gimli/gimli-0.26.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/iana-time-zone/iana-time-zone-0.1.47.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/idna/idna-0.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/instant/instant-0.1.12.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/js-sys/js-sys-0.3.59.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/lazy_static/lazy_static-1.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/lexopt/lexopt-0.2.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/libc/libc-0.2.133.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/libz-sys/libz-sys-1.1.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/link-cplusplus/link-cplusplus-1.0.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/locale_config/locale_config-0.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/log/log-0.4.17.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/malloc_buf/malloc_buf-0.0.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/md5/md5-0.7.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/memchr/memchr-2.5.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/minimal-lexical/minimal-lexical-0.2.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/miniz_oxide/miniz_oxide-0.5.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/natord/natord-1.0.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/nom/nom-7.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-integer/num-integer-0.1.45.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/num-traits/num-traits-0.2.15.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/objc-foundation/objc-foundation-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/objc/objc-0.2.7.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/objc_id/objc_id-0.1.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/object/object-0.28.4.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/once_cell/once_cell-1.15.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/percent-encoding/percent-encoding-2.2.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/pkg-config/pkg-config-0.3.25.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/ppv-lite86/ppv-lite86-0.2.16.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/proc-macro2/proc-macro2-1.0.40.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/proptest/proptest-1.0.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/quick-error/quick-error-1.2.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/quick-error/quick-error-2.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/quote/quote-1.0.20.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand/rand-0.8.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_chacha/rand_chacha-0.3.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_core/rand_core-0.6.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rand_xorshift/rand_xorshift-0.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_syscall/redox_syscall-0.2.13.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/redox_users/redox_users-0.4.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex-syntax/regex-syntax-0.6.26.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/regex/regex-1.5.6.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/remove_dir_all/remove_dir_all-0.5.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rustc-demangle/rustc-demangle-0.1.21.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/rusty-fork/rusty-fork-0.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/scratch/scratch-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/section_testing/section_testing-0.0.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/syn/syn-1.0.98.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/temp-dir/temp-dir-0.1.11.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tempfile/tempfile-3.3.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/termcolor/termcolor-1.1.3.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror-impl/thiserror-impl-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/thiserror/thiserror-1.0.31.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/time/time-0.1.44.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec/tinyvec-1.6.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/tinyvec_macros/tinyvec_macros-0.1.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-bidi/unicode-bidi-0.3.8.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-ident/unicode-ident-1.0.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-normalization/unicode-normalization-0.1.20.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/unicode-width/unicode-width-0.1.10.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/url/url-2.3.1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/vcpkg/vcpkg-0.2.15.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wait-timeout/wait-timeout-0.2.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasi/wasi-0.10.0+wasi-snapshot-preview1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasi/wasi-0.11.0+wasi-snapshot-preview1.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasm-bindgen-backend/wasm-bindgen-backend-0.2.82.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.82.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.82.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.82.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/wasm-bindgen/wasm-bindgen-0.2.82.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-i686-pc-windows-gnu/winapi-i686-pc-windows-gnu-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-util/winapi-util-0.1.5.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi-x86_64-pc-windows-gnu/winapi-x86_64-pc-windows-gnu-0.4.0.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/winapi/winapi-0.3.9.crate \
- https://crates-io.s3-us-west-1.amazonaws.com/crates/xdg/xdg-2.4.1.crate"
-MD5SUM="b61b0defc7fde6f101edba38c9e40490 \
- c4c6ae55973b5054bf10f574fe49317f \
+DOWNLOAD="https://newsboat.org/releases/2.34/newsboat-2.34.tar.xz \
+ https://static.crates.io/crates/addr2line/addr2line-0.21.0.crate \
+ https://static.crates.io/crates/adler/adler-1.0.2.crate \
+ https://static.crates.io/crates/aho-corasick/aho-corasick-1.1.1.crate \
+ https://static.crates.io/crates/android-tzdata/android-tzdata-0.1.1.crate \
+ https://static.crates.io/crates/android_system_properties/android_system_properties-0.1.5.crate \
+ https://static.crates.io/crates/autocfg/autocfg-1.1.0.crate \
+ https://static.crates.io/crates/backtrace/backtrace-0.3.69.crate \
+ https://static.crates.io/crates/bit-set/bit-set-0.5.3.crate \
+ https://static.crates.io/crates/bit-vec/bit-vec-0.6.3.crate \
+ https://static.crates.io/crates/bitflags/bitflags-1.3.2.crate \
+ https://static.crates.io/crates/bitflags/bitflags-2.4.1.crate \
+ https://static.crates.io/crates/block/block-0.1.6.crate \
+ https://static.crates.io/crates/bumpalo/bumpalo-3.14.0.crate \
+ https://static.crates.io/crates/byteorder/byteorder-1.4.3.crate \
+ https://static.crates.io/crates/cc/cc-1.0.83.crate \
+ https://static.crates.io/crates/cfg-if/cfg-if-1.0.0.crate \
+ https://static.crates.io/crates/chrono/chrono-0.4.31.crate \
+ https://static.crates.io/crates/codespan-reporting/codespan-reporting-0.11.1.crate \
+ https://static.crates.io/crates/core-foundation-sys/core-foundation-sys-0.8.4.crate \
+ https://static.crates.io/crates/curl-sys/curl-sys-0.4.70%2Bcurl-8.5.0.crate \
+ https://static.crates.io/crates/cxx-build/cxx-build-1.0.111.crate \
+ https://static.crates.io/crates/cxx/cxx-1.0.111.crate \
+ https://static.crates.io/crates/cxxbridge-flags/cxxbridge-flags-1.0.111.crate \
+ https://static.crates.io/crates/cxxbridge-macro/cxxbridge-macro-1.0.111.crate \
+ https://static.crates.io/crates/errno-dragonfly/errno-dragonfly-0.1.2.crate \
+ https://static.crates.io/crates/errno/errno-0.3.3.crate \
+ https://static.crates.io/crates/fastrand/fastrand-2.0.1.crate \
+ https://static.crates.io/crates/fnv/fnv-1.0.7.crate \
+ https://static.crates.io/crates/form_urlencoded/form_urlencoded-1.2.1.crate \
+ https://static.crates.io/crates/getrandom/getrandom-0.2.10.crate \
+ https://static.crates.io/crates/gettext-rs/gettext-rs-0.7.0.crate \
+ https://static.crates.io/crates/gettext-sys/gettext-sys-0.21.3.crate \
+ https://static.crates.io/crates/gimli/gimli-0.28.0.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.57.crate \
+ https://static.crates.io/crates/idna/idna-0.5.0.crate \
+ https://static.crates.io/crates/js-sys/js-sys-0.3.64.crate \
+ https://static.crates.io/crates/lazy_static/lazy_static-1.4.0.crate \
+ https://static.crates.io/crates/lexopt/lexopt-0.3.0.crate \
+ https://static.crates.io/crates/libc/libc-0.2.151.crate \
+ https://static.crates.io/crates/libm/libm-0.2.7.crate \
+ https://static.crates.io/crates/libz-sys/libz-sys-1.1.12.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.10.crate \
+ https://static.crates.io/crates/locale_config/locale_config-0.3.0.crate \
+ https://static.crates.io/crates/log/log-0.4.20.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.6.3.crate \
+ https://static.crates.io/crates/minimal-lexical/minimal-lexical-0.2.1.crate \
+ https://static.crates.io/crates/miniz_oxide/miniz_oxide-0.7.1.crate \
+ https://static.crates.io/crates/natord/natord-1.0.9.crate \
+ https://static.crates.io/crates/nom/nom-7.1.3.crate \
+ https://static.crates.io/crates/num-traits/num-traits-0.2.16.crate \
+ https://static.crates.io/crates/objc-foundation/objc-foundation-0.1.1.crate \
+ 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.32.1.crate \
+ https://static.crates.io/crates/once_cell/once_cell-1.18.0.crate \
+ https://static.crates.io/crates/percent-encoding/percent-encoding-2.3.1.crate \
+ https://static.crates.io/crates/pkg-config/pkg-config-0.3.27.crate \
+ https://static.crates.io/crates/ppv-lite86/ppv-lite86-0.2.17.crate \
+ https://static.crates.io/crates/proc-macro2/proc-macro2-1.0.67.crate \
+ https://static.crates.io/crates/proptest/proptest-1.2.0.crate \
+ https://static.crates.io/crates/quick-error/quick-error-1.2.3.crate \
+ https://static.crates.io/crates/quote/quote-1.0.33.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.4.1.crate \
+ https://static.crates.io/crates/regex-automata/regex-automata-0.3.8.crate \
+ https://static.crates.io/crates/regex-syntax/regex-syntax-0.6.29.crate \
+ https://static.crates.io/crates/regex-syntax/regex-syntax-0.7.5.crate \
+ https://static.crates.io/crates/regex/regex-1.9.5.crate \
+ https://static.crates.io/crates/rustc-demangle/rustc-demangle-0.1.23.crate \
+ https://static.crates.io/crates/rustix/rustix-0.38.21.crate \
+ https://static.crates.io/crates/rusty-fork/rusty-fork-0.3.0.crate \
+ https://static.crates.io/crates/scratch/scratch-1.0.7.crate \
+ https://static.crates.io/crates/section_testing/section_testing-0.0.5.crate \
+ https://static.crates.io/crates/syn/syn-2.0.37.crate \
+ https://static.crates.io/crates/temp-dir/temp-dir-0.1.11.crate \
+ https://static.crates.io/crates/tempfile/tempfile-3.8.1.crate \
+ https://static.crates.io/crates/termcolor/termcolor-1.3.0.crate \
+ https://static.crates.io/crates/tinyvec/tinyvec-1.6.0.crate \
+ https://static.crates.io/crates/tinyvec_macros/tinyvec_macros-0.1.1.crate \
+ https://static.crates.io/crates/unarray/unarray-0.1.4.crate \
+ https://static.crates.io/crates/unicode-bidi/unicode-bidi-0.3.13.crate \
+ https://static.crates.io/crates/unicode-ident/unicode-ident-1.0.12.crate \
+ https://static.crates.io/crates/unicode-normalization/unicode-normalization-0.1.22.crate \
+ https://static.crates.io/crates/unicode-width/unicode-width-0.1.11.crate \
+ https://static.crates.io/crates/url/url-2.5.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/wasi/wasi-0.11.0%2Bwasi-snapshot-preview1.crate \
+ https://static.crates.io/crates/wasm-bindgen-backend/wasm-bindgen-backend-0.2.87.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro-support/wasm-bindgen-macro-support-0.2.87.crate \
+ https://static.crates.io/crates/wasm-bindgen-macro/wasm-bindgen-macro-0.2.87.crate \
+ https://static.crates.io/crates/wasm-bindgen-shared/wasm-bindgen-shared-0.2.87.crate \
+ https://static.crates.io/crates/wasm-bindgen/wasm-bindgen-0.2.87.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.6.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-sys/windows-sys-0.48.0.crate \
+ https://static.crates.io/crates/windows-targets/windows-targets-0.48.5.crate \
+ https://static.crates.io/crates/windows/windows-0.48.0.crate \
+ https://static.crates.io/crates/windows_aarch64_gnullvm/windows_aarch64_gnullvm-0.48.5.crate \
+ https://static.crates.io/crates/windows_aarch64_msvc/windows_aarch64_msvc-0.48.5.crate \
+ https://static.crates.io/crates/windows_i686_gnu/windows_i686_gnu-0.48.5.crate \
+ https://static.crates.io/crates/windows_i686_msvc/windows_i686_msvc-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnu/windows_x86_64_gnu-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_gnullvm/windows_x86_64_gnullvm-0.48.5.crate \
+ https://static.crates.io/crates/windows_x86_64_msvc/windows_x86_64_msvc-0.48.5.crate \
+ https://static.crates.io/crates/xdg/xdg-2.5.2.crate"
+MD5SUM="e2dedca7d28e53fbc2f117bad343ec27 \
+ 55e15000c4c210f0bb2aca6f38fbe424 \
669215548c64019c08c92b2c1afd3deb \
- 425b8fdf70df59998d9b7c89083e48d1 \
+ 245579618dd635377c5987690a7e2153 \
+ e0a03581a6aea080315323651f272d65 \
bf23cd323c33a8c283c41bb9b79e4ce4 \
05d77ef52e90ad161fdd41b252420467 \
- b47959c03cf9213e50a15ab86090c9d9 \
- 8f8acc3c1caff2043085a0cc28a92757 \
+ 66c5beb5a77eccb0d86ce626651f393b \
+ b174984f0ec889f5c32e90bddb80f674 \
45a867175c81501378699f80724393c0 \
a295edb6953237ebbdfa8e731229f9a3 \
+ ebcf604c44976809506192718f439dc1 \
ea2d23ceb9f98853a7dffc6c02884464 \
- 67b7cc02856cad7f081e9dc0d8a74427 \
+ d8cacbb844fca8c0ca102c7576946131 \
1e704be5ddde9d6b5383ef1035309f91 \
- 8e3a4d0980acef2c4e74485a45de29a9 \
+ 9241fa90ea8b17c00010be46c9aa1ac5 \
74634128440dbc3766bda76fdf0aaa05 \
- 0a6cbf6ef95c7e7db7837f58db8d1773 \
+ ddca5e4cff2fcc78d99a9efe991c5cf2 \
faa32da3be14130a4525bb7ba601c62e \
- d05cbf26ed52299487a802688a1d22cb \
- ec8b5fffb8251a857db8631a99dd47e4 \
- 2402ffb95feb2a817d3ed821bae0ae8c \
- da15fed63afc39f9f47e169563237a79 \
- 1608d6f70e9aad6e624c9fb1e92ce02f \
- e757c8dec5e2e121a035dda717d85c88 \
- 4c21da37e71a52f26c8c5490f3ec4837 \
- 889fdcd1499ef5939caaafab5c09729e \
- d59e1fe9834d52c50e2414a34945e479 \
+ b477cc1c7b45e2187b3cad0377b504d8 \
+ b4b1c9ce4db1569f17f64239adcdbeae \
+ e198b52b3219b6be4a3f6bea2158f03e \
+ 7608f1c36c68ce36c1428a5183b9c419 \
+ 89d343b23ff81dc1af48a1043f7a7202 \
+ 52dc52f9c2adfdba6f0d90ca7b92042f \
+ fc65414dcac661c46f2cfad7722304f9 \
+ 33479bc3e6a76008f4d1654925cd3a94 \
+ 80e1c1b89d858c93fc5946b4a8266504 \
8dab3b3ec00dc56cffde0b0c410d47b5 \
- 357f2bcdc622476ad883fe9d07f874c3 \
- 62864db03072aaae4f855126d502b8c7 \
+ c3e51926c9853b714191ef1bec90e2ce \
+ f204ba6fc9394724826f177433fe9a98 \
bb072f15d5e4067bea6933a4fbeb9c0a \
9486190bcfe1c4af6a50d265a113ac12 \
- ac4775c8640cd2c698e1639e7cd6e788 \
- 72d4eb0369ce403d9e997690d6c59743 \
- c3425a02781d0bb3c4f8d5d025d12266 \
- 5f153f7135dceb02f88266121c836b4e \
- 4604e64e42b38b20a8ca446e2253ca1f \
+ 6646a563c6f7e9b24d9db2271b720a2b \
+ 87b1b7cb12ef4dfe842c212b98263048 \
+ 7ff000f771e742396faed3c83c82fab4 \
+ b5305bde14813da51d536a9df564db69 \
+ d580c0380408c62e04e018eaaf4258af \
fba3b040a55c01be7376d3dd5c4d4920 \
- 51444bfd1a6184a7a4921d993f2818a4 \
- cd6868b580f6901cfb16071a0f1e3833 \
- 591b0243c421bf8e6df09e3209fce861 \
- 3c40fc3b1a1484ef260cc3237eb97588 \
+ d71093319a2c1efa90475bd45d34fab3 \
+ 181cb83a57d327b26ebc21db41b28480 \
+ 71bf1bf53c8321f7f1cbc13575353d6b \
+ 779addfdf18a31c1d8d3f53b7a8395e0 \
+ d6c6a27e29d9270a2ac318eacdf8e436 \
+ 70bd18c57397442e0abc67dfa1c99e0f \
6fa7c4b0da26b511570845e41527bc8f \
- b31bf94ffe7e0f2ada93afae1076eaeb \
+ 8ee79b4fe4c43d9ab09f16344612a656 \
7c81e7a61ec172a229d6fdbc553e883d \
65470cdfd1fa2a2de9fdf873a58d72aa \
- 94b8bf179385ff071bdc33b58bf047c0 \
+ 0f6cf3b35ff80cee7da9243e76c94532 \
8b708bc4b33c5e1683467444c9ed41b0 \
- 4b343c4628bdfa094b2bb027d7853561 \
+ eb7e04508518ed8f29935ec874e1740a \
5a9b94ba54ea1f52f2a496ba982e3282 \
- b4f83cacd53b7dc0d12ba582d27cbc1a \
- 073b4c53e303ccf2a807dfce7f5e986a \
- a0de6eabdeb1320350abcbd7c02df6ac \
+ f17aecb8887cf0ecd823623160aed7db \
+ 256ede6773f2f67e26e92f36c04eb4f7 \
aecd889de42c8168e1bc97a6f2720d8f \
b4dcac855af5df71f3383d86c4a96b78 \
fd9aa273ad560dedd00ddcf3dbe808ce \
- 382e93f458f75ba7fa3dc1ab0f4294eb \
- 81bd380ba31052f9c84f5e71e8c0ee52 \
- c7ce684666ac9c76223b1a0a5034ce99 \
- b478ee84018082806ea8da763f0b3f1f \
- ae91c97885d67994a342820cf7d59fb2 \
- 76c12c914deb8149bffb7437aab133b0 \
- 8d51f1453db7c4751e4759f1895f5574 \
+ ecddc695e4dba2383b326dc361e9e07d \
+ 2dc8aacabbc090f8025a4789d4d6d8f0 \
+ 0ba30a94d7b8865c23e86d4d64e5b91e \
+ 73d4dff694f3acab34c217b4f4943a37 \
+ 5c69337d37e58a380e00eac9ce0373bb \
+ 80235d435deb3e8c2f28a8e666cae1a2 \
+ 61b3316c1f5c6059bef9022fe8a08685 \
3181dca31efe33cbed29a45d0ec67848 \
- 3c1cc07f7d54984f8189eb08401b7a7e \
- 37812acc7a616d54221d786d215ef8cf \
+ 0ddb8bccd3198892d0dd0ec7151f7cd3 \
ee7a5f842c39bc47c474196e83b0df5f \
e30085994bbeb4b7f4895d48216d5476 \
- ae5dab3db7dc317e16bb6f9e7eb15d14 \
+ a1626b8f4d165b1b60d960862eba4cf0 \
f9e79ef04a0f168cd981aaf93eb25272 \
- 2e69b77050ab91b1d0bb941e843a05cb \
- 2793ed3e6807d79ff72271baec586531 \
- c3789f11772f0c40ad7cc1f6e4b7bf2c \
- 8cfc5b8dac188c6b4b790175902df1bc \
- 0538d1da369f3e3f0412aa4d735c1b61 \
- 6eb014e73f66bc13226e0ef6d815d375 \
+ ff1d093069cfc9eb161907e17a51208b \
+ 9e3731fbbac07e3f5363d5527765fb41 \
+ f2303650593b13e30a85e39d8c79c961 \
+ 5ad40eb548ec91179c2e5bafd26f1d30 \
+ 32f2a2626ae2f18e34cbb7d814ca8d37 \
+ 24fcbc2986fad09b25c9a4f9aef0a9e4 \
+ 3bd91868192fbb6c457c856a1a430a3d \
13268e6ab4023043e6dd8e993ce8b88a \
- f916d920d28ad7f52304f683b1fd5523 \
+ bb56e53d09b09eb11536cb69734564de \
b13390ad50aa277e39e4d46f7ed3eb14 \
- 56aba66d1843b03c542c3558631eecbd \
+ 344753a95db4f193f068b3cf4b75d83b \
73ff8cffc66d065488dcf50e3b8c0c1f \
- f29a1bb1b5f3f29cedb36f40f720d765 \
- 40ce77bc7803d0ff8734f6a11c4e8814 \
- ac76b35d8c76c7fa25c73b8863d5d055 \
- a8ae09f39c6e68744ca70bf8db61df71 \
- c6c50e4feea5f4cc4e1fb3c7e88606a5 \
+ f80faded72df19d43134e2b44137376a \
+ be0724e892719d0813323cbb4bfb5372 \
5f0470696baaa4e5953bddbf196998f9 \
- 7bfcad253aff26bc26c5e3521f3ba891 \
- bd0cd532c61dac2087ecd7e0fef0d011 \
- 07327370ffe0d5e4c5b49a7d7a1452aa \
- 20f7a1bfea93765ad8104298e214a018 \
- 7d6d4fc9fad200d6e295f6930e97e022 \
- 41a9cb1cc86d75f991241c9c3f725556 \
+ c678a7da0ee4b850ebde0474144a0415 \
+ 00dda16f17b456d99fb1cafa9125ed22 \
+ 04c5de5f2fcb441ced909a45cff020bd \
+ ca65153603a1a7240bbd9d2ce19f2d67 \
+ c12d182417999fc365f952e701f6071f \
+ 908ec8a89821b72f3a35726bab24461f \
+ e547b0e754cd61f24f9ef8c9e26fcd95 \
e900a384ac7dbb320fe6a7279fbfef89 \
6708629acf3d2ecb7404e43255d2df85 \
- a312b55a428f827a91097d1d8497b02b \
e972ea58ec203bfa6c79c1207852298b \
- 278dd3da79cc1bcf5bd22fdc2b27b929 \
- 69715da66bbce335e925305a89d700a0 \
- f682163a28f67505957df4e8a1c10e6e \
- fe970530473f5def15262606e730ab79 \
- 1a7c8f83d6e0c000fe06fe006c41e666 \
+ e1aaf0d487ef02def77307a74ee35606 \
+ b3139f7d066250bfaf96b99e913ee75d \
+ e41541041285d9f05d372cdac02a4bf7 \
+ 4185de0682e5e5f3a9f13285218e59aa \
+ 64f9f5c520b25087ba70e4194d6aea9c \
db96b50050277bf05a3c68534bbb9586 \
- b9e37d5fc4ad28b612b78ad37816684d \
+ 306c0281447d1876e8220007b7a7e053 \
09de9d01e7331ff3da11f58be8bef0df \
0498c4a11448bfc35dc7bb2caa64c753 \
- 236543796b708fd01b4087696067a225"
+ f2797ade0e36f1e5d6be9d11b5076582 \
+ 24c64817e85ef77765ed0f26c31c9b4c \
+ f4620d6217497ee2c54090cd353ceec4 \
+ dae6d89034a6988042fd8be4cf5e037d \
+ de2839e16d9d7a9fd1c397da62f62b4a \
+ e0c35ffb8cfdb74a39bf799811f79304 \
+ d990172b607020701f9e84ca8e1c043c \
+ 0a68848588e847ceccf504891584d00b \
+ 45b469ad607b912256b7c80141fa2d17 \
+ 7799baff9a5664205d9110a2624e8989 \
+ 1613d0f9e24d4b05e81748ea1f355f6c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="stfl"
+REQUIRES="stfl rust16"
MAINTAINER="Andrew Clemons"
EMAIL="andrew.clemons@gmail.com"
diff --git a/network/nextcloud-desktop/nextcloud-desktop.SlackBuild b/network/nextcloud-desktop/nextcloud-desktop.SlackBuild
index 396271d4db..7bd204277b 100644
--- a/network/nextcloud-desktop/nextcloud-desktop.SlackBuild
+++ b/network/nextcloud-desktop/nextcloud-desktop.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Nextcloud Desktop Client
-# Copyright 2022 Andrew Payne <phalange@komputermatrix.com>
+# Copyright 2022-2024 Andrew Payne <phalange@komputermatrix.com>
# Copyright 2017-2018 Rodrigo Gimenez <estrod@zoho.com>, Argentina
# Copyright 2016-2018 Chris Abela <kristofru@gmail.com>, Malta
# Copyright 2013-2016 Christopher Walker Copperas Cove, TX
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nextcloud-desktop
SRCNAM=desktop
-VERSION=${VERSION:-3.6.0}
+VERSION=${VERSION:-3.12.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -42,9 +42,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
@@ -97,6 +94,10 @@ cmake \
make
make install DESTDIR=$PKG
+# Strip binaries and libraries
+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
+
# Don't overwrite existing config file:
mv $PKG/etc/Nextcloud/sync-exclude.lst $PKG/etc/Nextcloud/sync-exclude.lst.new
diff --git a/network/nextcloud-desktop/nextcloud-desktop.info b/network/nextcloud-desktop/nextcloud-desktop.info
index d34b570ad5..a6a8559331 100644
--- a/network/nextcloud-desktop/nextcloud-desktop.info
+++ b/network/nextcloud-desktop/nextcloud-desktop.info
@@ -1,10 +1,10 @@
PRGNAM="nextcloud-desktop"
-VERSION="3.6.0"
+VERSION="3.12.3"
HOMEPAGE="https://nextcloud.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/nextcloud/desktop/archive/refs/tags/v3.6.0/desktop-3.6.0.tar.gz"
-MD5SUM_x86_64="bde47b6eb64a1434c5695ef0075c3076"
+DOWNLOAD_x86_64="https://github.com/nextcloud/desktop/archive/refs/tags/v3.12.3/desktop-3.12.3.tar.gz"
+MD5SUM_x86_64="e018bec41afc23060ea6afea6108e94f"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/nginx/nginx.SlackBuild b/network/nginx/nginx.SlackBuild
index 9463f1b427..4f1d69da2e 100644
--- a/network/nginx/nginx.SlackBuild
+++ b/network/nginx/nginx.SlackBuild
@@ -30,7 +30,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nginx
-VERSION=${VERSION:-1.21.6}
+VERSION=${VERSION:-1.23.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/nginx/nginx.info b/network/nginx/nginx.info
index f111113dfd..05ddb11d29 100644
--- a/network/nginx/nginx.info
+++ b/network/nginx/nginx.info
@@ -1,8 +1,8 @@
PRGNAM="nginx"
-VERSION="1.21.6"
+VERSION="1.23.2"
HOMEPAGE="https://nginx.org/"
-DOWNLOAD="https://nginx.org/download/nginx-1.21.6.tar.gz"
-MD5SUM="e7a9b0388d8812ba6063de4e7e7969be"
+DOWNLOAD="https://nginx.org/download/nginx-1.23.2.tar.gz"
+MD5SUM="131948d88349e20afd69a1b43b3c1d47"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/ngrep/README b/network/ngrep/README
index c1534b64bf..b9d5da3356 100644
--- a/network/ngrep/README
+++ b/network/ngrep/README
@@ -9,8 +9,3 @@ and snoop.
ngrep is built with IPV6 support by default; to disable it, do this:
NGREP_IPV6=no ./ngrep.SlackBuild
-
-A patch is included for IPV4 and IPV6 packet reassembly applied by
-default. The patch adds the -r switch to ngrep. To disable the patch,
-do this:
- ASSEM_PATCH=no ./ngrep.SlackBuild
diff --git a/network/ngrep/ngrep-1.45-reasm.diff b/network/ngrep/ngrep-1.45-reasm.diff
deleted file mode 100644
index ed33fb6f65..0000000000
--- a/network/ngrep/ngrep-1.45-reasm.diff
+++ /dev/null
@@ -1,939 +0,0 @@
-diff -urN ngrep-1.45/ipreasm.c ngrep-1.45-reasm/ipreasm.c
---- ngrep-1.45/ipreasm.c 1970-01-01 01:00:00.000000000 +0100
-+++ ngrep-1.45-reasm/ipreasm.c 2007-06-16 19:17:20.124795623 +0200
-@@ -0,0 +1,717 @@
-+/*
-+ * ipreasm -- Routines for reassembly of fragmented IPv4 and IPv6 packets.
-+ *
-+ * Copyright (c) 2007 Jan Andres <jandres@gmx.net>
-+ *
-+ */
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <stddef.h>
-+
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif /* HAVE_CONFIG_H */
-+
-+#include <netinet/ip.h>
-+#include <netinet/udp.h>
-+#if USE_IPv6
-+#include <netinet/ip6.h>
-+#endif /* USE_IPv6 */
-+
-+#include "ipreasm.h"
-+
-+
-+#define REASM_IP_HASH_SIZE 1021U
-+
-+
-+enum entry_state {
-+ STATE_ACTIVE,
-+ STATE_INVALID,
-+};
-+
-+
-+enum reasm_proto {
-+ PROTO_IPV4,
-+#if USE_IPv6
-+ PROTO_IPV6,
-+#endif /* USE_IPv6 */
-+};
-+
-+
-+/*
-+ * This tuple uniquely identifies all fragments belonging to
-+ * the same IPv4 packet.
-+ */
-+struct reasm_id_ipv4 {
-+ uint8_t ip_src[4], ip_dst[4];
-+ uint16_t ip_id;
-+ uint8_t ip_proto;
-+};
-+
-+
-+/*
-+ * Same for IPv6.
-+ */
-+struct reasm_id_ipv6 {
-+ uint8_t ip_src[16], ip_dst[16];
-+ uint32_t ip_id;
-+};
-+
-+
-+union reasm_id {
-+ struct reasm_id_ipv4 ipv4;
-+ struct reasm_id_ipv6 ipv6;
-+};
-+
-+
-+struct reasm_frag_entry {
-+ unsigned len; /* payload length of this fragment */
-+ unsigned offset; /* offset of this fragment into the payload of the reassembled packet */
-+ unsigned data_offset; /* offset to the data pointer where payload starts */
-+ unsigned char *data; /* payload starts at data + data_offset */
-+ struct reasm_frag_entry *next;
-+};
-+
-+
-+/*
-+ * Reception of a complete packet is detected by counting the number
-+ * of "holes" that remain between the cached fragments. A hole is
-+ * assumed to exist at the upper end of the packet until the final
-+ * fragment has been received. When the number of holes drops to 0,
-+ * all fragments have been received and the packet can be reassembled.
-+ */
-+struct reasm_ip_entry {
-+ union reasm_id id;
-+ unsigned len, holes, frag_count, hash;
-+ reasm_time_t timeout;
-+ enum entry_state state;
-+ enum reasm_proto protocol;
-+ struct reasm_frag_entry *frags;
-+ struct reasm_ip_entry *prev, *next;
-+ struct reasm_ip_entry *time_prev, *time_next;
-+};
-+
-+
-+/*
-+ * This struct contains some metadata, the main hash table, and a pointer
-+ * to the first entry that will time out. A linked list is kept in the
-+ * order in which packets will time out. Using a linked list for this
-+ * purpose requires that packets are input in chronological order, and
-+ * that a constant timeout value is used, which doesn't change even when
-+ * the entry's state transitions from active to invalid.
-+ */
-+struct reasm_ip {
-+ struct reasm_ip_entry *table[REASM_IP_HASH_SIZE];
-+ struct reasm_ip_entry *time_first, *time_last;
-+ unsigned waiting, max_waiting, timed_out, dropped_frags;
-+ reasm_time_t timeout;
-+};
-+
-+
-+/*
-+ * Hash functions.
-+ */
-+static unsigned reasm_ipv4_hash (const struct reasm_id_ipv4 *id);
-+#if USE_IPv6
-+static unsigned reasm_ipv6_hash (const struct reasm_id_ipv6 *id);
-+#endif /* USE_IPv6 */
-+
-+/*
-+ * Insert a new fragment to the correct position in the list of fragments.
-+ * Check for fragment overlap and other error conditions. Update the
-+ * "hole count".
-+ */
-+static bool add_fragment (struct reasm_ip_entry *entry, struct reasm_frag_entry *frag, bool last_frag);
-+
-+/*
-+ * Is the entry complete, ready for reassembly?
-+ */
-+static bool is_complete (struct reasm_ip_entry *entry);
-+
-+/*
-+ * Create the reassembled packet.
-+ */
-+static unsigned char *assemble (struct reasm_ip_entry *entry, unsigned *output_len);
-+
-+/*
-+ * Drop and free entries.
-+ */
-+static void drop_entry (struct reasm_ip *reasm, struct reasm_ip_entry *entry);
-+static void free_entry (struct reasm_ip_entry *entry);
-+
-+/*
-+ * Dispose of any entries which have expired before "now".
-+ */
-+static void process_timeouts (struct reasm_ip *reasm, reasm_time_t now);
-+
-+/*
-+ * Create fragment structure from IPv6 packet. Returns NULL if the input
-+ * is not a fragment.
-+ * This function is called by parse_packet(), don't call it directly.
-+ */
-+#if USE_IPv6
-+static struct reasm_frag_entry *frag_from_ipv6 (unsigned char *packet, uint32_t *ip_id, bool *last_frag);
-+#endif /* USE_IPv6 */
-+
-+/*
-+ * Compare packet identification tuples for specified protocol.
-+ */
-+static bool reasm_id_equal (enum reasm_proto proto, const union reasm_id *left, const union reasm_id *right);
-+
-+/*
-+ * Create fragment structure from an IPv4 or IPv6 packet. Returns NULL
-+ * if the input is not a fragment.
-+ */
-+static struct reasm_frag_entry *parse_packet (unsigned char *packet, unsigned len, enum reasm_proto *protocol, union reasm_id *id, unsigned *hash, bool *last_frag);
-+
-+
-+static unsigned
-+reasm_ipv4_hash (const struct reasm_id_ipv4 *id)
-+{
-+ unsigned hash = 0;
-+ int i;
-+
-+ for (i = 0; i < 4; i++) {
-+ hash = 37U * hash + id->ip_src[i];
-+ hash = 37U * hash + id->ip_dst[i];
-+ }
-+
-+ hash = 59U * hash + id->ip_id;
-+
-+ hash = 47U * hash + id->ip_proto;
-+
-+ return hash;
-+}
-+
-+
-+#if USE_IPv6
-+static unsigned
-+reasm_ipv6_hash (const struct reasm_id_ipv6 *id)
-+{
-+ unsigned hash = 0;
-+ int i;
-+
-+ for (i = 0; i < 16; i++) {
-+ hash = 37U * hash + id->ip_src[i];
-+ hash = 37U * hash + id->ip_dst[i];
-+ }
-+
-+ hash = 59U * hash + id->ip_id;
-+
-+ return hash;
-+}
-+#endif /* USE_IPv6 */
-+
-+
-+unsigned char *
-+reasm_ip_next (struct reasm_ip *reasm, unsigned char *packet, unsigned len, reasm_time_t timestamp, unsigned *output_len)
-+{
-+ enum reasm_proto proto;
-+ union reasm_id id;
-+ unsigned hash;
-+ bool last_frag;
-+
-+ process_timeouts (reasm, timestamp);
-+
-+ struct reasm_frag_entry *frag = parse_packet (packet, len, &proto, &id, &hash, &last_frag);
-+ if (frag == NULL) {
-+ *output_len = len;
-+ return packet; /* some packet that we don't recognize as a fragment */
-+ }
-+
-+ hash %= REASM_IP_HASH_SIZE;
-+ struct reasm_ip_entry *entry = reasm->table[hash];
-+ while (entry != NULL && (proto != entry->protocol || !reasm_id_equal (proto, &id, &entry->id)))
-+ entry = entry->next;
-+
-+ if (entry == NULL) {
-+ entry = malloc (sizeof (*entry));
-+ if (entry == NULL) {
-+ free (frag);
-+ abort ();
-+ }
-+
-+ struct reasm_frag_entry *list_head = malloc (sizeof (*list_head));
-+ if (list_head == NULL) {
-+ free (frag);
-+ free (entry);
-+ abort ();
-+ }
-+
-+ *entry = (struct reasm_ip_entry) {
-+ .id = id,
-+ .len = 0,
-+ .holes = 1,
-+ .frags = list_head,
-+ .hash = hash,
-+ .protocol = proto,
-+ .timeout = timestamp + reasm->timeout,
-+ .state = STATE_ACTIVE,
-+ .prev = NULL,
-+ .next = reasm->table[hash],
-+ .time_prev = reasm->time_last,
-+ .time_next = NULL,
-+ };
-+
-+ *list_head = (struct reasm_frag_entry) {
-+ .len = 0,
-+ .offset = 0,
-+ .data_offset = 0,
-+ .data = NULL,
-+ };
-+
-+ if (entry->next != NULL)
-+ entry->next->prev = entry;
-+ reasm->table[hash] = entry;
-+
-+ if (reasm->time_last != NULL)
-+ reasm->time_last->time_next = entry;
-+ else
-+ reasm->time_first = entry;
-+ reasm->time_last = entry;
-+
-+ reasm->waiting++;
-+ if (reasm->waiting > reasm->max_waiting)
-+ reasm->max_waiting = reasm->waiting;
-+ }
-+
-+ if (entry->state != STATE_ACTIVE) {
-+ reasm->dropped_frags++;
-+ return NULL;
-+ }
-+
-+ if (!add_fragment (entry, frag, last_frag)) {
-+ entry->state = STATE_INVALID;
-+ reasm->dropped_frags += entry->frag_count + 1;
-+ return NULL;
-+ }
-+
-+ if (!is_complete (entry))
-+ return NULL;
-+
-+ unsigned char *r = assemble (entry, output_len);
-+ drop_entry (reasm, entry);
-+ return r;
-+}
-+
-+
-+static bool
-+add_fragment (struct reasm_ip_entry *entry, struct reasm_frag_entry *frag, bool last_frag)
-+{
-+ /*
-+ * When a fragment is inserted into the list, different cases can occur
-+ * concerning the number of holes.
-+ * - The new fragment can be inserted in the middle of a hole, such that
-+ * it will split the hole in two. The number of holes increases by 1.
-+ * - The new fragment can be attached to one end of a hole, such that
-+ * the rest of the hole remains at the opposite side of the fragment.
-+ * The number of holes remains constant.
-+ * - The new fragment can fill a hole completely. The number of holes
-+ * decreases by 1.
-+ */
-+
-+ /*
-+ * If more fragments follow and the payload size is not an integer
-+ * multiple of 8, the packet will never be reassembled completely.
-+ */
-+ if (!last_frag && (frag->len & 7) != 0)
-+ return false;
-+
-+ if (entry->len != 0 && frag->len + frag->offset > entry->len)
-+ return false; /* fragment extends past end of packet */
-+
-+ bool fit_left = false, fit_right = false;
-+
-+ if (last_frag) {
-+ if (entry->len != 0) {
-+ fprintf (stderr, "* ERROR: Multiple final fragments.\n");
-+ return false;
-+ }
-+ entry->len = frag->offset + frag->len;
-+ fit_right = true;
-+ }
-+
-+ struct reasm_frag_entry *cur = entry->frags, *next = cur->next;
-+
-+ while (cur->next != NULL && cur->next->offset <= frag->offset)
-+ cur = cur->next;
-+ next = cur->next;
-+
-+ /* Fragment is to be inserted between cur and next; next may be NULL. */
-+
-+ /* Overlap checks. */
-+ if (cur->offset + cur->len > frag->offset)
-+ return false; /* overlaps with cur */
-+ else if (cur->offset + cur->len == frag->offset)
-+ fit_left = true;
-+
-+ if (next != NULL) {
-+ if (last_frag)
-+ return false; /* next extends past end of packet */
-+ if (frag->offset + frag->len > next->offset)
-+ return false; /* overlaps with next */
-+ else if (frag->offset + frag->len == next->offset)
-+ fit_right = true;
-+ }
-+
-+ /*
-+ * Everything's fine, insert it.
-+ */
-+ if (frag->len != 0) {
-+ frag->next = cur->next;
-+ cur->next = frag;
-+
-+ if (fit_left && fit_right)
-+ entry->holes--;
-+ else if (!fit_left && !fit_right)
-+ entry->holes++;
-+
-+ entry->frag_count++;
-+ } else {
-+ /*
-+ * If the fragment has zero size, we don't insert it into the list,
-+ * but one case remains to be handled: If the zero-size fragment
-+ * is the last fragment, and fits exactly with the fragment to its
-+ * left, the number of holes decreases.
-+ */
-+ if (last_frag && fit_left)
-+ entry->holes--;
-+ }
-+
-+
-+ return true;
-+}
-+
-+
-+struct reasm_ip *
-+reasm_ip_new (void)
-+{
-+ struct reasm_ip *reasm = malloc (sizeof (*reasm));
-+ if (reasm == NULL)
-+ return NULL;
-+
-+ memset (reasm, 0, sizeof (*reasm));
-+ return reasm;
-+}
-+
-+
-+void
-+reasm_ip_free (struct reasm_ip *reasm)
-+{
-+ while (reasm->time_first != NULL)
-+ drop_entry (reasm, reasm->time_first);
-+ free (reasm);
-+}
-+
-+
-+static bool
-+is_complete (struct reasm_ip_entry *entry)
-+{
-+ return entry->holes == 0;
-+}
-+
-+
-+static unsigned char *
-+assemble (struct reasm_ip_entry *entry, unsigned *output_len)
-+{
-+ struct reasm_frag_entry *frag = entry->frags->next; /* skip list head */
-+ unsigned offset0 = frag->data_offset;
-+ unsigned char *p = malloc (entry->len + offset0);
-+ if (p == NULL)
-+ abort ();
-+
-+ switch (entry->protocol) {
-+ case PROTO_IPV4:
-+ break;
-+
-+#if USE_IPv6
-+ case PROTO_IPV6:
-+ offset0 -= 8; /* size of frag header */
-+ break;
-+#endif /* USE_IPv6 */
-+
-+ default:
-+ abort ();
-+ }
-+
-+ *output_len = entry->len + offset0;
-+
-+ /* copy the (unfragmentable) header from the first fragment received */
-+ memcpy (p, frag->data, offset0);
-+
-+ /* join all the payload fragments together */
-+ while (frag != NULL) {
-+ memcpy (p + offset0 + frag->offset, frag->data + frag->data_offset, frag->len);
-+ frag = frag->next;
-+ }
-+
-+ /* some cleanups, e.g. update the length field of reassembled packet */
-+ switch (entry->protocol) {
-+ case PROTO_IPV4: {
-+ struct ip *ip_header = (struct ip *) p;
-+ ip_header->ip_len = htons (offset0 + entry->len);
-+ ip_header->ip_off = 0;
-+ // XXX recompute the checksum
-+ break;
-+ }
-+
-+#if USE_IPv6
-+ case PROTO_IPV6: {
-+ struct ip6_hdr *ip6_header = (struct ip6_hdr *) p;
-+ ip6_header->ip6_plen = htons (offset0 + entry->len - 40);
-+ break;
-+ }
-+#endif /* USE_IPv6 */
-+
-+ default:
-+ abort ();
-+ }
-+
-+ return p;
-+}
-+
-+
-+static void
-+drop_entry (struct reasm_ip *reasm, struct reasm_ip_entry *entry)
-+{
-+ if (entry->prev != NULL)
-+ entry->prev->next = entry->next;
-+ else
-+ reasm->table[entry->hash] = entry->next;
-+
-+ if (entry->next != NULL)
-+ entry->next->prev = entry->prev;
-+
-+ if (entry->time_prev != NULL)
-+ entry->time_prev->time_next = entry->time_next;
-+ else
-+ reasm->time_first = entry->time_next;
-+
-+ if (entry->time_next != NULL)
-+ entry->time_next->time_prev = entry->time_prev;
-+ else
-+ reasm->time_last = entry->time_prev;
-+
-+ reasm->waiting--;
-+
-+ free_entry (entry);
-+}
-+
-+
-+static void
-+free_entry (struct reasm_ip_entry *entry)
-+{
-+ struct reasm_frag_entry *frag = entry->frags, *next;
-+ while (frag != NULL) {
-+ next = frag->next;
-+ if (frag->data != NULL)
-+ free (frag->data);
-+ free (frag);
-+ frag = next;
-+ }
-+
-+ free (entry);
-+}
-+
-+
-+unsigned
-+reasm_ip_waiting (const struct reasm_ip *reasm)
-+{
-+ return reasm->waiting;
-+}
-+
-+
-+unsigned
-+reasm_ip_max_waiting (const struct reasm_ip *reasm)
-+{
-+ return reasm->max_waiting;
-+}
-+
-+
-+unsigned
-+reasm_ip_timed_out (const struct reasm_ip *reasm)
-+{
-+ return reasm->timed_out;
-+}
-+
-+
-+unsigned
-+reasm_ip_dropped_frags (const struct reasm_ip *reasm)
-+{
-+ return reasm->dropped_frags;
-+}
-+
-+
-+bool
-+reasm_ip_set_timeout (struct reasm_ip *reasm, reasm_time_t timeout)
-+{
-+ if (reasm->time_first != NULL)
-+ return false;
-+
-+ reasm->timeout = timeout;
-+ return true;
-+}
-+
-+
-+static void
-+process_timeouts (struct reasm_ip *reasm, reasm_time_t now)
-+{
-+ while (reasm->time_first != NULL && reasm->time_first->timeout < now) {
-+ reasm->timed_out++;
-+ drop_entry (reasm, reasm->time_first);
-+ }
-+}
-+
-+
-+#if USE_IPv6
-+static struct reasm_frag_entry *
-+frag_from_ipv6 (unsigned char *packet, uint32_t *ip_id, bool *last_frag)
-+{
-+ struct ip6_hdr *ip6_header = (struct ip6_hdr *) packet;
-+ unsigned offset = 40; /* IPv6 header size */
-+ uint8_t nxt = ip6_header->ip6_nxt;
-+ unsigned total_len = 40 + ntohs (ip6_header->ip6_plen);
-+ unsigned last_nxt = offsetof (struct ip6_hdr, ip6_nxt);
-+
-+ /*
-+ * IPv6 extension headers from RFC 2460:
-+ * 0 Hop-by-Hop Options
-+ * 43 Routing
-+ * 44 Fragment
-+ * 60 Destination Options
-+ *
-+ * We look out for the Fragment header; the other 3 header
-+ * types listed above are recognized and considered safe to
-+ * skip over if they occur before the Fragment header.
-+ * Any unrecognized header will cause processing to stop and
-+ * a subsequent Fragment header to stay unrecognized.
-+ */
-+ while (nxt == IPPROTO_HOPOPTS || nxt == IPPROTO_ROUTING || nxt == IPPROTO_DSTOPTS) {
-+ if (offset + 2 > total_len)
-+ return NULL; /* header extends past end of packet */
-+
-+ unsigned exthdr_len = 8 + 8 * packet[offset + 1];
-+ if (offset + exthdr_len > total_len)
-+ return NULL; /* header extends past end of packet */
-+
-+ nxt = packet[offset];
-+ last_nxt = offset;
-+ offset += exthdr_len;
-+ }
-+
-+ if (nxt != IPPROTO_FRAGMENT)
-+ return NULL;
-+
-+ if (offset + 8 > total_len)
-+ return NULL; /* Fragment header extends past end of packet */
-+
-+ struct reasm_frag_entry *frag = malloc (sizeof (*frag));
-+ if (frag == NULL)
-+ abort ();
-+
-+ struct ip6_frag *frag_header = (struct ip6_frag *) (packet + offset);
-+ offset += 8;
-+
-+ /*
-+ * The Fragment header will be removed on reassembly, so we have to
-+ * replace the Next Header field of the previous header (which is
-+ * currently IPPROTO_FRAGMENT), with the Next Header field of the
-+ * Fragment header.
-+ *
-+ * XXX We really shouldn't manipulate the input packet in-place.
-+ */
-+ packet[last_nxt] = frag_header->ip6f_nxt;
-+
-+ *frag = (struct reasm_frag_entry) {
-+ .len = total_len - offset,
-+ .data_offset = offset,
-+ .offset = ntohs (frag_header->ip6f_offlg & IP6F_OFF_MASK),
-+ .data = packet,
-+ };
-+
-+ *ip_id = ntohl (frag_header->ip6f_ident);
-+ *last_frag = (frag_header->ip6f_offlg & IP6F_MORE_FRAG) == 0;
-+
-+ return frag;
-+}
-+#endif /* USE_IPv6 */
-+
-+
-+static bool
-+reasm_id_equal (enum reasm_proto proto, const union reasm_id *left, const union reasm_id *right)
-+{
-+ switch (proto) {
-+ case PROTO_IPV4:
-+ return memcmp (left->ipv4.ip_src, right->ipv4.ip_src, 4) == 0
-+ && memcmp (left->ipv4.ip_dst, right->ipv4.ip_dst, 4) == 0
-+ && left->ipv4.ip_id == right->ipv4.ip_id
-+ && left->ipv4.ip_proto == right->ipv4.ip_proto;
-+#if USE_IPv6
-+ case PROTO_IPV6:
-+ return memcmp (left->ipv6.ip_src, right->ipv6.ip_src, 16) == 0
-+ && memcmp (left->ipv6.ip_dst, right->ipv6.ip_dst, 16) == 0
-+ && left->ipv6.ip_id == right->ipv6.ip_id;
-+#endif /* USE_IPv6 */
-+ default:
-+ abort ();
-+ }
-+}
-+
-+
-+static struct reasm_frag_entry *
-+parse_packet (unsigned char *packet, unsigned len, enum reasm_proto *protocol, union reasm_id *id, unsigned *hash, bool *last_frag)
-+{
-+ struct ip *ip_header = (struct ip *) packet;
-+ struct reasm_frag_entry *frag = NULL;
-+
-+ switch (ip_header->ip_v) {
-+ case 4: {
-+ *protocol = PROTO_IPV4;
-+ uint16_t offset = ntohs (ip_header->ip_off);
-+ if (len >= ntohs (ip_header->ip_len) && (offset & (IP_MF | IP_OFFMASK)) != 0) {
-+ frag = malloc (sizeof (*frag));
-+ if (frag == NULL)
-+ abort ();
-+
-+ *frag = (struct reasm_frag_entry) {
-+ .len = ntohs (ip_header->ip_len) - ip_header->ip_hl * 4,
-+ .offset = (offset & IP_OFFMASK) * 8,
-+ .data_offset = ip_header->ip_hl * 4,
-+ .data = packet,
-+ };
-+
-+ *last_frag = (offset & IP_MF) == 0;
-+
-+ memcpy (id->ipv4.ip_src, &ip_header->ip_src, 4);
-+ memcpy (id->ipv4.ip_dst, &ip_header->ip_dst, 4);
-+ id->ipv4.ip_id = ntohs (ip_header->ip_id);
-+ id->ipv4.ip_proto = ip_header->ip_p;
-+
-+ *hash = reasm_ipv4_hash (&id->ipv4);
-+ }
-+ break;
-+ }
-+
-+#if USE_IPv6
-+ case 6: {
-+ struct ip6_hdr *ip6_header = (struct ip6_hdr *) packet;
-+ *protocol = PROTO_IPV6;
-+ if (len >= ntohs (ip6_header->ip6_plen) + 40)
-+ frag = frag_from_ipv6 (packet, &id->ipv6.ip_id, last_frag);
-+ if (frag != NULL) {
-+ memcpy (id->ipv6.ip_src, &ip6_header->ip6_src, 16);
-+ memcpy (id->ipv6.ip_dst, &ip6_header->ip6_dst, 16);
-+ *hash = reasm_ipv6_hash (&id->ipv6);
-+ }
-+ break;
-+ }
-+#endif /* USE_IPv6 */
-+
-+ default:
-+ break;
-+ }
-+
-+ return frag;
-+}
-diff -urN ngrep-1.45/ipreasm.h ngrep-1.45-reasm/ipreasm.h
---- ngrep-1.45/ipreasm.h 1970-01-01 01:00:00.000000000 +0100
-+++ ngrep-1.45-reasm/ipreasm.h 2007-06-16 19:17:20.124795623 +0200
-@@ -0,0 +1,57 @@
-+#ifndef _IPREASM_H
-+#define _IPREASM_H
-+
-+#include <stdbool.h>
-+
-+#include <pcap.h>
-+
-+
-+/*
-+ * This is an abstract time stamp. ipreasm doesn't care whether it is
-+ * in seconds, milliseconds, or nanodecades. All it does it add the
-+ * configured timeout value to it, and then compare it to the timstamps
-+ * of subsequent packets to decide whether a fragment has expired.
-+ */
-+typedef uint64_t reasm_time_t;
-+
-+struct reasm_ip;
-+
-+/*
-+ * Functions to create and destroy the reassembly environment.
-+ */
-+struct reasm_ip *reasm_ip_new (void);
-+void reasm_ip_free (struct reasm_ip *reasm);
-+
-+/*
-+ * This is the main packet processing function. It inputs one packet,
-+ * and MAY output one packet in turn. If the input was not a fragment,
-+ * it is passed unmodified. If the input was a fragment that completed
-+ * reassembly of a packet, the reassembled packet is output.
-+ * If more fragments are required for reassembly, or the input packet
-+ * is invalid for some reason, a NULL pointer is returned.
-+ *
-+ * The input must be a pointer allocated by malloc(). The output will
-+ * be a pointer allocated by malloc().
-+ *
-+ * Note that in the case of an IPv6 fragment, the input buffer will be
-+ * modified in-place. This is considered a bug and should be fixed in
-+ * the future.
-+ */
-+unsigned char *reasm_ip_next (struct reasm_ip *reasm, unsigned char *packet, unsigned len, reasm_time_t timestamp, unsigned *output_len);
-+
-+/*
-+ * Set the timeout after which a noncompleted reassembly expires, in
-+ * abstract time units (see above for the definition of reasm_time_t).
-+ */
-+bool reasm_ip_set_timeout (struct reasm_ip *reasm, reasm_time_t timeout);
-+
-+/*
-+ * Query certain information about the current state.
-+ */
-+unsigned reasm_ip_waiting (const struct reasm_ip *reasm);
-+unsigned reasm_ip_max_waiting (const struct reasm_ip *reasm);
-+unsigned reasm_ip_timed_out (const struct reasm_ip *reasm);
-+unsigned reasm_ip_dropped_frags (const struct reasm_ip *reasm);
-+
-+
-+#endif /* _IPREASM_H */
-diff -urN ngrep-1.45/Makefile.in ngrep-1.45-reasm/Makefile.in
---- ngrep-1.45/Makefile.in 2006-11-28 14:35:37.000000000 +0100
-+++ ngrep-1.45-reasm/Makefile.in 2007-06-16 15:41:22.859876074 +0200
-@@ -15,8 +15,8 @@
-
- STRIPFLAG=@STRIPFLAG@
-
--SRC=ngrep.c
--OBJS=ngrep.o
-+SRC=ngrep.c ipreasm.c
-+OBJS=ngrep.o ipreasm.o
- TARGET=ngrep
- MANPAGE=ngrep.8
-
-@@ -65,7 +65,7 @@
- $(REGEX_OBJS): $(REGEX_OBJS:.o=.c) $(REGEX_DIR)/*.h
- $(MAKE) $(MAKEFLAGS) -C $(REGEX_DIR) $(notdir $(REGEX_OBJS))
-
--$(OBJS): Makefile ngrep.c ngrep.h
-+$(OBJS): Makefile ngrep.c ngrep.h ipreasm.c ipreasm.h
-
- tardist:
- @( VERSION=`perl -ne '/VERSION\s+"(.*)"/ && print "$$1\n"' ngrep.h` ; \
-diff -urN ngrep-1.45/ngrep.c ngrep-1.45-reasm/ngrep.c
---- ngrep-1.45/ngrep.c 2006-11-28 14:38:43.000000000 +0100
-+++ ngrep-1.45-reasm/ngrep.c 2007-06-16 21:41:43.142117150 +0200
-@@ -98,6 +98,7 @@
- #endif
-
- #include "ngrep.h"
-+#include "ipreasm.h"
-
-
- static char rcsver[] = "$Revision: 1.93 $";
-@@ -156,7 +157,7 @@
- uint8_t link_offset;
- uint8_t radiotap_present = 0;
-
--pcap_t *pd = NULL;
-+pcap_t *pd = NULL, *pd_dumppcap = NULL;
- pcap_dumper_t *pd_dump = NULL;
- struct bpf_program pcapfilter;
- struct in_addr net, mask;
-@@ -183,6 +184,12 @@
- uint32_t ws_row, ws_col = 80, ws_col_forced = 0;
-
-
-+/*
-+ * Reassembly
-+ */
-+struct reasm_ip *reasm = NULL;
-+
-+
- int main(int argc, char **argv) {
- int32_t c;
-
-@@ -195,7 +202,7 @@
- signal(SIGWINCH, update_windowsize);
- #endif
-
-- while ((c = getopt(argc, argv, "LNhXViwqpevxlDtTRMs:n:c:d:A:I:O:S:P:F:W:")) != EOF) {
-+ while ((c = getopt(argc, argv, "LNhXViwqpevxlDtTrRMs:n:c:d:A:I:O:S:P:F:W:")) != EOF) {
- switch (c) {
- case 'W': {
- if (!strcasecmp(optarg, "normal"))
-@@ -260,6 +267,10 @@
- case 'M':
- re_multiline_match = 0;
- break;
-+ case 'r':
-+ reasm = reasm_ip_new ();
-+ reasm_ip_set_timeout (reasm, 30000000);
-+ break;
- case 'R':
- dont_dropprivs = 1;
- break;
-@@ -585,7 +596,15 @@
- }
-
- if (dump_file) {
-- if (!(pd_dump = pcap_dump_open(pd, dump_file))) {
-+ if (reasm != NULL) {
-+ if (!(pd_dumppcap = pcap_open_dead(DLT_RAW, 65535))) {
-+ fprintf(stderr, "fatal: pcap_open_dead failed\n");
-+ clean_exit(-1);
-+ }
-+ pd_dump = pcap_dump_open(pd_dumppcap, dump_file);
-+ } else
-+ pd_dump = pcap_dump_open(pd, dump_file);
-+ if (!pd_dump) {
- fprintf(stderr, "fatal: %s\n", pcap_geterr(pd));
- clean_exit(-1);
- } else printf("output: %s\n", dump_file);
-@@ -641,6 +660,23 @@
- }
- #endif
-
-+ if (reasm != NULL) {
-+ unsigned new_len;
-+ u_char *new_p = malloc(len - link_offset);
-+ memcpy(new_p, ip4_pkt, len - link_offset);
-+ p = reasm_ip_next(reasm, new_p, len - link_offset, (reasm_time_t) 1000000UL * h->ts.tv_sec + h->ts.tv_usec, &new_len);
-+ if (p == NULL)
-+ return;
-+ len = new_len + link_offset;
-+ h->len = new_len;
-+ h->caplen = new_len;
-+
-+ ip4_pkt = (struct ip *) p;
-+#if USE_IPv6
-+ ip6_pkt = (struct ip6_hdr*)p;
-+#endif
-+ }
-+
- ip_ver = ip4_pkt->ip_v;
-
- switch (ip_ver) {
-@@ -802,6 +838,9 @@
-
- if (match_after && keep_matching)
- keep_matching--;
-+
-+ if (reasm != NULL)
-+ free(p);
- }
-
- void dump_packet(struct pcap_pkthdr *h, u_char *p, uint8_t proto, unsigned char *data, uint32_t len,
-@@ -1242,6 +1281,7 @@
- " -s is set the bpf caplen\n"
- " -S is set the limitlen on matched packets\n"
- " -W is set the dump format (normal, byline, single, none)\n"
-+ " -r is reassemble any fragmented IPV4 or IPV6 packets\n"
- " -c is force the column width to the specified size\n"
- " -P is set the non-printable display char to what is specified\n"
- " -F is read the bpf filter from the specified file\n"
-@@ -1292,8 +1331,9 @@
- && pd && !pcap_stats(pd, &s))
- printf("%u received, %u dropped\n", s.ps_recv, s.ps_drop);
-
-- if (pd) pcap_close(pd);
-- if (pd_dump) pcap_dump_close(pd_dump);
-+ if (pd) pcap_close(pd);
-+ if (pd_dumppcap) pcap_close(pd_dumppcap);
-+ if (pd_dump) pcap_dump_close(pd_dump);
-
- #if defined(_WIN32)
- if (delay_socket) closesocket(delay_socket);
-@@ -1301,6 +1341,9 @@
- if (usedev) free(usedev);
- #endif
-
-+ if (reasm != NULL)
-+ reasm_ip_free(reasm);
-+
- exit(sig);
- }
-
diff --git a/network/ngrep/ngrep.SlackBuild b/network/ngrep/ngrep.SlackBuild
index 2575543129..84422910d0 100644
--- a/network/ngrep/ngrep.SlackBuild
+++ b/network/ngrep/ngrep.SlackBuild
@@ -2,13 +2,34 @@
# Slackware build script for ngrep
-# Written by Larry Hajali <larryhaja[at]gmail[dot]com>
+# Copyright 2023 Yossi Neiman, mishehu+sbo@shavedgoats.net
+# 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.
+
+# Based upon the script written by Larry Hajali <larryhaja[at]gmail[dot]com>
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ngrep
-VERSION=${VERSION:-1.45}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.47}
+SOURCEVERSION=${VERSION/./_}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -20,9 +41,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
@@ -48,18 +66,15 @@ fi
set -e
-# Option to add packet reassembly patch (default = yes)
-REASSEM_PATCH=${ASSEM_PATCH:-yes}
-
# Enable IPV6; either yes or no
NGREP_IPV6=${NGREP_IPV6:-yes}
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-$SOURCEVERSION
+tar xvf $CWD/$PRGNAM-$SOURCEVERSION.tar.gz
+cd $PRGNAM-$SOURCEVERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -67,11 +82,6 @@ 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 adds IPv4 and IPv6 fragment reassembly for ngrep 1.45
-if [ $REASSEM_PATCH == yes ]; then
- patch -p1 < $CWD/ngrep-1.45-reasm.diff
-fi
-
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -80,9 +90,6 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--enable-ipv6=${NGREP_IPV6} \
- --with-pcap-includes=/usr/include/pcap \
- --disable-static \
- --disable-pcap-restart \
--build=$ARCH-slackware-linux
make
@@ -94,7 +101,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
find $PKG/usr/man -type f -exec gzip -9 {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a LICENSE.txt doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp CHANGES CREDITS 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/ngrep/ngrep.info b/network/ngrep/ngrep.info
index 0866f50fd1..906619b38d 100644
--- a/network/ngrep/ngrep.info
+++ b/network/ngrep/ngrep.info
@@ -1,10 +1,10 @@
PRGNAM="ngrep"
-VERSION="1.45"
-HOMEPAGE="http://ngrep.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/ngrep/ngrep-1.45.tar.bz2"
-MD5SUM="bc8150331601f3b869549c94866b4f1c"
+VERSION="1.47"
+HOMEPAGE="https://github.com/jpr5/ngrep/"
+DOWNLOAD="https://github.com/jpr5/ngrep/archive/refs/tags/V1_47.tar.gz"
+MD5SUM="03cb1229ad586495852ea316262e8f38"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Larry Hajali"
-EMAIL="larryhaja[at]gmail[dot]com"
+MAINTAINER="Yossi Neiman"
+EMAIL="mishehu+sbo@shavedgoats.net"
diff --git a/network/ngrep/slack-desc b/network/ngrep/slack-desc
index d6c0756893..90762ea885 100644
--- a/network/ngrep/slack-desc
+++ b/network/ngrep/slack-desc
@@ -15,5 +15,5 @@ ngrep: to match against data payloads of packets. It currently recognizes
ngrep: IPv4/6, TCP, UDP and ICMPv4/6, IGMP and Raw across Ethernet, PPP,
ngrep: SLIP, FDDI, Token Ring and null interfaces.
ngrep:
-ngrep: Homepage: http://ngrep.sourceforge.net/
+ngrep: Homepage: https://github.com/jpr5/ngrep/
ngrep:
diff --git a/network/ngrok/ngrok.SlackBuild b/network/ngrok/ngrok.SlackBuild
index 2fda90a89a..17a21d9468 100644
--- a/network/ngrok/ngrok.SlackBuild
+++ b/network/ngrok/ngrok.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for ngrok
-# Copyright 2020-2022 Ebben Aries <slackbuilds@dscp.org>
+# Copyright 2020-2023 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=ngrok
-VERSION=${VERSION:-3.0.7}
+VERSION=${VERSION:-3.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/ngrok/ngrok.info b/network/ngrok/ngrok.info
index 9d42a6552a..99ae27e927 100644
--- a/network/ngrok/ngrok.info
+++ b/network/ngrok/ngrok.info
@@ -1,10 +1,10 @@
PRGNAM="ngrok"
-VERSION="3.0.7"
+VERSION="3.5.0"
HOMEPAGE="https://ngrok.com"
-DOWNLOAD="https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-3.0.7-linux-386.tar.gz"
-MD5SUM="3b8b5010ef3a07b434e5145ecbde89e7"
-DOWNLOAD_x86_64="https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-3.0.7-linux-amd64.tar.gz"
-MD5SUM_x86_64="bd80ca7174721f0796bd3dac8f4a7965"
+DOWNLOAD="https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-3.5.0-linux-386.tar.gz"
+MD5SUM="a6049195365e77c3cc30abc53d57fc5a"
+DOWNLOAD_x86_64="https://bin.equinox.io/c/bNyj1mQVY4c/ngrok-v3-3.5.0-linux-amd64.tar.gz"
+MD5SUM_x86_64="0fff0e38125e1b90663b1a7a9c90c701"
REQUIRES=""
MAINTAINER="Ebben Aries"
EMAIL="slackbuilds@dscp.org"
diff --git a/network/nheko/README b/network/nheko/README
new file mode 100644
index 0000000000..c8f3acf246
--- /dev/null
+++ b/network/nheko/README
@@ -0,0 +1,26 @@
+nheko is a native client for the Matrix network.
+
+Most of the features you would expect from a chat application are
+missing right now but we are getting close to a more feature complete
+client. Specifically there is support for:
+
+E2E encryption.
+VoIP calls (voice & video).
+User registration.
+Creating, joining & leaving rooms.
+Sending & receiving invites.
+Sending & receiving files and emoji (inline widgets for images, audio
+and file messages).
+Replies with text, images and other media (and actually render them
+as inline widgets).
+Typing notifications.
+Username auto-completion.
+Message & mention notifications.
+Redacting messages.
+Read receipts.
+Basic communities support.
+Room switcher (ctrl-K).
+Light, Dark & System themes.
+Creating separate profiles (command line only, use -p name).
+D-Bus API to allow integration with third-party plugins (does not
+support Windows or macOS).
diff --git a/network/nheko/doinst.sh b/network/nheko/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/nheko/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/nheko/douninst.sh b/network/nheko/douninst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/nheko/douninst.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/nheko/nheko.SlackBuild b/network/nheko/nheko.SlackBuild
new file mode 100644
index 0000000000..3785ce2f90
--- /dev/null
+++ b/network/nheko/nheko.SlackBuild
@@ -0,0 +1,145 @@
+#!/bin/bash
+
+# Slackware build script for nheko
+
+# Copyright 2023, Lockywolf
+# 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=nheko
+VERSION=${VERSION:-0.11.3}
+BUILD=${BUILD:-2}
+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"
+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
+
+cp $CWD/lmdb++.h includes/
+
+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/nheko-0.11.3-fix-for-fmt-10.patch
+patch -p1 < $CWD/871e403f6799df48cfbbe08eba56d473a0c34216.patch
+
+mkdir -p build
+cd build
+cmake \
+ -DHUNTER_ENABLED=OFF \
+ -DUSE_BUNDLED_SPDLOG=OFF \
+ -DUSE_BUNDLED_OLM=OFF \
+ -DUSE_BUNDLED_CMARK=OFF \
+ -DUSE_BUNDLED_JSON=OFF \
+ -DUSE_BUNDLED_OPENSSL=OFF \
+ -DUSE_BUNDLED_MTXCLIENT=OFF \
+ -DUSE_BUNDLED_LMDB=OFF \
+ -DUSE_BUNDLED_LMDBXX=OFF \
+ -DUSE_BUNDLED_QTKEYCHAIN=OFF \
+ -DUSE_BUNDLED_COEURL=OFF \
+ -DUSE_BUNDLED_LIBEVENT=OFF \
+ -DUSE_BUNDLED_LIBCURL=OFF \
+ -DUSE_BUNDLED_RE2=OFF \
+ -DUSE_BUNDLED_CPPHTTPLIB=ON \
+ -DUSE_BUNDLED_BLURHASH=ON \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+
+mkdir -p $PKG/usr/man/
+mv $PKG/usr/share/man/* $PKG/usr/man/
+rmdir $PKG/usr/share/man
+
+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 \
+ README.md CHANGELOG.md 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
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/nheko/nheko.info b/network/nheko/nheko.info
new file mode 100644
index 0000000000..2f17d23f69
--- /dev/null
+++ b/network/nheko/nheko.info
@@ -0,0 +1,16 @@
+PRGNAM="nheko"
+VERSION="0.11.3"
+HOMEPAGE="https://github.com/Nheko-Reborn/nheko/"
+DOWNLOAD="https://github.com/Nheko-Reborn/nheko/archive/v0.11.3/nheko-0.11.3.tar.gz \
+https://raw.githubusercontent.com/hoytech/lmdbxx/1.0.0/lmdb++.h \
+https://gitlab.archlinux.org/archlinux/packaging/packages/nheko/-/raw/main/nheko-0.11.3-fix-for-fmt-10.patch \
+https://nheko.im/nheko-reborn/nheko/-/commit/871e403f6799df48cfbbe08eba56d473a0c34216.patch"
+MD5SUM="ec254f372b397d0c24c6d9075aac1335 \
+153c1d78ae29c4251afb7fbd8148d6eb \
+201b729f89ffdc33074758de0c27149f \
+772d4d2338c43a5fe7b45c6b71052e4c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="mtxclient cmark"
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.nheko_2023-10-18@lockywolf.net"
diff --git a/network/nheko/slack-desc b/network/nheko/slack-desc
new file mode 100644
index 0000000000..cd8cbef1cd
--- /dev/null
+++ b/network/nheko/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------------------------------------------------------|
+nheko: nheko (matrix client written in C++)
+nheko:
+nheko: The motivation behind the project is to provide a native desktop app
+nheko: for Matrix.
+nheko:
+nheko:
+nheko:
+nheko:
+nheko:
+nheko:
+nheko:
diff --git a/network/nicotine+/nicotine+.SlackBuild b/network/nicotine+/nicotine+.SlackBuild
index 6505a2f086..7c5c828c06 100644
--- a/network/nicotine+/nicotine+.SlackBuild
+++ b/network/nicotine+/nicotine+.SlackBuild
@@ -27,7 +27,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nicotine+
SRCNAM=nicotine-plus
-VERSION=${VERSION:-3.0.0}
+VERSION=${VERSION:-3.3.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -76,6 +76,7 @@ python3 setup.py install --root=$PKG
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 COPYING $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/nicotine+/nicotine+.info b/network/nicotine+/nicotine+.info
index 68c4f4b798..cf73ff8d7e 100644
--- a/network/nicotine+/nicotine+.info
+++ b/network/nicotine+/nicotine+.info
@@ -1,8 +1,8 @@
PRGNAM="nicotine+"
-VERSION="3.0.0"
+VERSION="3.3.2"
HOMEPAGE="https://nicotine-plus.org/"
-DOWNLOAD="https://github.com/Nicotine-Plus/nicotine-plus/archive/3.0.0/nicotine-plus-3.0.0.tar.gz"
-MD5SUM="51bea3cfd9df3fac7fe7631edc3b2f70"
+DOWNLOAD="https://github.com/Nicotine-Plus/nicotine-plus/archive/3.3.2/nicotine-plus-3.3.2.tar.gz"
+MD5SUM="40dd230cfac61eda0c0500e5aab6e586"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/nmh/nmh.SlackBuild b/network/nmh/nmh.SlackBuild
index 6371ecd855..6d5abd51a0 100644
--- a/network/nmh/nmh.SlackBuild
+++ b/network/nmh/nmh.SlackBuild
@@ -8,7 +8,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nmh
-VERSION=${VERSION:-1.7.1}
+VERSION=${VERSION:-1.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/nmh/nmh.info b/network/nmh/nmh.info
index f04d375ac6..f90a2634f3 100644
--- a/network/nmh/nmh.info
+++ b/network/nmh/nmh.info
@@ -1,8 +1,8 @@
PRGNAM="nmh"
-VERSION="1.7.1"
+VERSION="1.8"
HOMEPAGE="https://www.nongnu.org/nmh/"
-DOWNLOAD="https://download.savannah.nongnu.org/releases/nmh/nmh-1.7.1.tar.gz"
-MD5SUM="0f2e117eb3acbe949af43b5048de28c5"
+DOWNLOAD="https://download.savannah.nongnu.org/releases/nmh/nmh-1.8.tar.gz"
+MD5SUM="a9bb7636cd8a75c522a48f5d942314fb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/nordvpn/nordvpn.SlackBuild b/network/nordvpn/nordvpn.SlackBuild
index 5f3ec4b9e4..742c2b86c7 100644
--- a/network/nordvpn/nordvpn.SlackBuild
+++ b/network/nordvpn/nordvpn.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nordvpn
-VERSION=${VERSION:-3.14.2}
+VERSION=${VERSION:-3.17.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -92,6 +92,7 @@ rm -fR etc usr/lib
# Move man where the man likes
mv usr/share/man usr/
+rm -rf $PKG/usr/share/doc
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/nordvpn/nordvpn.info b/network/nordvpn/nordvpn.info
index ea392369a9..4b04fd56b2 100644
--- a/network/nordvpn/nordvpn.info
+++ b/network/nordvpn/nordvpn.info
@@ -1,10 +1,10 @@
PRGNAM="nordvpn"
-VERSION="3.14.2"
+VERSION="3.17.2"
HOMEPAGE="https://www.nordvpn.com/"
-DOWNLOAD="https://repo.nordvpn.com/deb/nordvpn/debian/pool/main/nordvpn_3.14.2_i386.deb"
-MD5SUM="972080ffcf6b1287760d298ecc8e2292"
-DOWNLOAD_x86_64="https://repo.nordvpn.com/deb/nordvpn/debian/pool/main/nordvpn_3.14.2_amd64.deb"
-MD5SUM_x86_64="3a0c2b374c2154e3c04702ab8891d7ec"
+DOWNLOAD="https://repo.nordvpn.com/deb/nordvpn/debian/pool/main/nordvpn_3.17.2_i386.deb"
+MD5SUM="cfa324fa4b8280710f00e5c4634711cb"
+DOWNLOAD_x86_64="https://repo.nordvpn.com/deb/nordvpn/debian/pool/main/nordvpn_3.17.2_amd64.deb"
+MD5SUM_x86_64="9fe543322dd827857a9de14241b1b38f"
REQUIRES=""
MAINTAINER="Reza Talebi"
EMAIL="reza.talebi.73@outlook.com"
diff --git a/network/nss-tls/README b/network/nss-tls/README
new file mode 100644
index 0000000000..fe975e3661
--- /dev/null
+++ b/network/nss-tls/README
@@ -0,0 +1,23 @@
+nss-tls (DNS-over-HTTPS resolver)
+
+nss-tls is an alternative, encrypted name resolving library for Linux
+distributions with glibc which uses DNS-over-HTTPS. The glibc name
+resolver can be configured through nsswitch.conf(5) to use nss-tls
+instead of the DNS resolver, or fall back to DNS when nss-tls fails.
+
+This way, all applications that use the standard resolver API
+(getaddrinfo(), gethostbyname(), etc'), are transparently
+migrated from DNS to encrypted means of name resolving, with
+zero application-side changes and minimal resource consumption
+footprint. However, nss-tls does not deal with applications that use
+their own, built-in DNS resolver.
+
+See README_SBo.txt for instructions on setting things up, once the
+package is installed. It won't "just work", you really do have to
+configure it.
+
+The default servers in the config file are provided by Google, Quad9,
+and Cloudflare. If you'd like to change these, there is a list of
+public DoH servers here:
+
+https://zenodo.org/records/4923371
diff --git a/network/nss-tls/README_SBo.txt b/network/nss-tls/README_SBo.txt
new file mode 100644
index 0000000000..6c82bc23ee
--- /dev/null
+++ b/network/nss-tls/README_SBo.txt
@@ -0,0 +1,64 @@
+Slackware-specific nss-tls HOWTO
+--------------------------------
+
+1. Make sure /etc/nss-tls.conf has at least one DNS-over-HTTPS server URL
+ listed. The default config file has 3, so you shouldn't need to
+ change it unless you don't trust the default servers (one of which
+ belongs to Google). Although it's possible to use hostnames in the
+ config file, I highly recommend using IP addresses.
+
+2. Add this code to your /etc/rc.d/rc.local:
+
+ [ -x /etc/rc.d/rc.nss-tlsd ] && /etc/rc.d/rc.nss-tlsd start
+
+3. Make sure /etc/rc.d/rc.nss-tlsd is executable (it is, by default).
+
+4. Manually start the daemon with the command: /etc/rc.d/rc.nss-tlsd start
+ Or, you could reboot instead.
+
+ At this point, you should be able to use the tlslookup(1) tool to
+ do some test lookups. Try "tlslookup www.slackware.com". You should
+ get output similar to:
+
+ $ tlslookup www.slackware.com
+ 23.218.93.137
+ 23.218.93.171
+ 2600:1402:9800:d::b833:2ac7
+ 2600:1402:9800:d::b833:2acd
+
+5. Edit /etc/nsswitch.conf and find the line that reads "hosts: files dns".
+ Replace the "dns" with "tls", so the line looks like:
+
+ hosts: files tls
+
+ Now, try "ping www.slackware.com". If this works, you should be
+ able to use normal clients (web browsers, mail, etc). nss-tls
+ transparently replaces the DNS resolver... but not everything
+ will work. In particular, git, curl, and alpine (the mail client)
+ are known not to work in this configuration. To support these
+ applications, see the next step.
+
+6. To keep regular DNS as a fallback option, change the line in
+ /etc/nss-tls.conf again, so it looks like:
+
+ hosts: files tls dns
+
+ This allows applications that don't work with nss-tls to use regular
+ DNS instead. Notably, git won't work without fallback DNS.
+
+7. Optional: users can run their own instances of the daemon, with
+ caching support. Run the command /usr/bin/nss-tlsd-user from
+ your startup scripts (~/.bash_profile for console logins, or
+ whatever your desktop environment uses if you use GUI login).
+
+ This isn't really required, though it can provide some extra
+ security on multi-user systems. If you're the only person who uses
+ your Slackware box, you probably don't need this.
+
+Running a server
+----------------
+
+nss-tls is just the client side of DNS-over-HTTPS. If you want to run
+a server, look into unbound (on SBo). In future Slackware versions,
+you may be able to use Slackware's bind for this (the version in 15.0
+doesn't support it, but the one in -current should).
diff --git a/network/nss-tls/doinst.sh b/network/nss-tls/doinst.sh
new file mode 100644
index 0000000000..6f2d8b6559
--- /dev/null
+++ b/network/nss-tls/doinst.sh
@@ -0,0 +1,12 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+config etc/nss-tls.conf.new
+config etc/default/nss-tls.new
diff --git a/network/nss-tls/nss-tls.SlackBuild b/network/nss-tls/nss-tls.SlackBuild
new file mode 100644
index 0000000000..88db43b377
--- /dev/null
+++ b/network/nss-tls/nss-tls.SlackBuild
@@ -0,0 +1,120 @@
+#!/bin/bash
+
+# Slackware build script for nss-tls
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Notes:
+
+# Building with --buildtype=debug makes the daemon write HTTP request
+# and response headers to its stdout. This isn't very useful, so this
+# script doesn't support it.
+
+# It would be nice if the daemon would log to syslog, or had some
+# runtime-configurable verbose/debug options.
+
+# I wish git would work with this. If it would, it'd be possible
+# to use 'hosts: files tls' in nsswitch.conf (curl and alpine still
+# wouldn't work, but there are decent workarounds for those).
+
+# By default, when the daemon runs as root, it switches UID/GID to
+# daemon/daemon. This seems fine to me. It would be possible to
+# reserve a UID/GID and build with -Duser=<blah> -Dgroup=<blah>, if
+# there were any real need for it.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=nss-tls
+VERSION=${VERSION:-1.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 /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# This patch makes the client and server agree on the per-user socket path.
+patch -p1 < $CWD/per_user_dir.diff
+
+mkdir build
+cd build
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ meson .. \
+ --buildtype=release \
+ --infodir=/usr/info \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ -Dstrip=true
+ "${NINJA:=ninja}"
+ DESTDIR=$PKG $NINJA install
+cd ..
+
+gzip -9 $PKG/usr/man/man*/*
+rm -f $PKG/etc/nss-tls.conf
+cat $CWD/nss-tls.conf > $PKG/etc/nss-tls.conf.new
+
+install -D -m0755 -oroot -groot $CWD/nss-tlsd-user.sh $PKG/usr/bin/nss-tlsd-user
+
+mkdir -p $PKG/etc/rc.d $PKG/etc/default
+cat $CWD/rc.nss-tlsd > $PKG/etc/rc.d/rc.nss-tlsd
+cat $CWD/nss-tlsd.default > $PKG/etc/default/nss-tlsd.new
+chmod 755 $PKG/etc/rc.d/rc.nss-tlsd
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS COPYING README* $PKGDOC
+cat $CWD/README_SBo.txt > $PKGDOC/README_SBo.txt
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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/nss-tls/nss-tls.conf b/network/nss-tls/nss-tls.conf
new file mode 100644
index 0000000000..5227d4d752
--- /dev/null
+++ b/network/nss-tls/nss-tls.conf
@@ -0,0 +1,27 @@
+# nss-tls.conf - config for nss-tlsd daemon, part of nss-tls SBo package.
+
+# The only setting here is 'resolvers=', which must be a comma-separated
+# list of one or more DNS-over-HTTPS server URLs. Although it's possible
+# to use hostnames, it's better to use IP addresses in the URLs.
+
+# There's a list of public DoH servers found by port-scanning, here:
+# https://zenodo.org/records/4923371
+
+# Or, you could run your own (with unbound).
+
+# Do not remove this line:
+[global]
+
+# Google, DNS9, Cloudflare. These are the default servers from Debian's
+# nss-tls package.
+resolvers=https://9.9.9.9/dns-query,https://1.1.1.1/dns-query,https://8.8.8.8/dns-query
+
+# AdGuards's default (ad/tracker blocking, but no content filtering) servers.
+# These can be IPv6, too. See https://adguard-dns.io/en/public-dns.html
+# resolvers=https://94.140.14.14/dns-query,https://94.140.15.15/dns-query
+
+# AdGuards's non-filtering servers
+# resolvers=https://94.140.14.140/dns-query,https://94.140.15.141/dns-query
+
+# AdGuards's "family protection" content-filtering server
+# resolvers=https://94.140.14.15/dns-query,https://94.140.15.16/dns-query
diff --git a/network/nss-tls/nss-tls.info b/network/nss-tls/nss-tls.info
new file mode 100644
index 0000000000..ada3217a79
--- /dev/null
+++ b/network/nss-tls/nss-tls.info
@@ -0,0 +1,10 @@
+PRGNAM="nss-tls"
+VERSION="1.1"
+HOMEPAGE="https://github.com/dimkr/nss-tls/"
+DOWNLOAD="https://github.com/dimkr/nss-tls/archive/1.1/nss-tls-1.1.tar.gz"
+MD5SUM="a9e8c63856bf63ad2d1bedf46a01a48d"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/nss-tls/nss-tlsd-user.sh b/network/nss-tls/nss-tlsd-user.sh
new file mode 100644
index 0000000000..0b395ea2ba
--- /dev/null
+++ b/network/nss-tls/nss-tlsd-user.sh
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+# Launch a per-user nss-tlsd process, with caching.
+# Part of the SBo nss-tls build, by B. Watson, WTFPL licensed.
+# Other distributions use systemd to launch this when a user logs
+# in, we have to have users launch it from e.g. .bash_profile. This
+# wrapper script simplifies the setup.
+
+# Note that launching the user daemon isn't required, but since the
+# system daemon doesn't do caching for security reasons, the user
+# daemon might help performance a bit.
+
+# Using setsid --fork here prevents this script from hanging around
+# waiting for nss-tlsd to exit.
+
+if [ -x /usr/sbin/nss-tlsd ]; then
+ [ -e ~/.cache/nss-tlsd.sock ] || setsid --fork /usr/sbin/nss-tlsd -c &>/dev/null &
+fi
+
+exit 0
diff --git a/network/nss-tls/nss-tlsd.default b/network/nss-tls/nss-tlsd.default
new file mode 100644
index 0000000000..60cbbdf542
--- /dev/null
+++ b/network/nss-tls/nss-tlsd.default
@@ -0,0 +1,8 @@
+# Default options for the nss-tlsd daemon:
+#
+# Supported options:
+# -c: cache results. This is really intended for per-user daemons.
+# -r: use a random server, when multiple servers are configured.
+# By default, all the above are disabled.
+
+NSS_TLSD_OPTS=""
diff --git a/network/nss-tls/per_user_dir.diff b/network/nss-tls/per_user_dir.diff
new file mode 100644
index 0000000000..d833c6ea95
--- /dev/null
+++ b/network/nss-tls/per_user_dir.diff
@@ -0,0 +1,23 @@
+diff -Naur nss-tls-1.1/nss-tls.c nss-tls-1.1.patched/nss-tls.c
+--- nss-tls-1.1/nss-tls.c 2020-07-16 19:09:59.000000000 -0400
++++ nss-tls-1.1.patched/nss-tls.c 2024-01-17 15:57:03.989437314 -0500
+@@ -68,7 +68,7 @@
+ if (geteuid() == 0)
+ strcpy(sun.sun_path, NSS_TLS_SOCKET_PATH);
+ else {
+- dir = getenv("XDG_RUNTIME_DIR");
++ dir = getenv("HOME");
+ if (dir) {
+ len = strlen(dir);
+ if (len > sizeof(sun.sun_path) - sizeof("/"NSS_TLS_SOCKET_NAME))
+@@ -77,6 +77,10 @@
+ memcpy(sun.sun_path, dir, len);
+ sun.sun_path[len] = '/';
+ ++len;
++ memcpy(sun.sun_path + len, ".cache", 6);
++ len += 6;
++ sun.sun_path[len] = '/';
++ ++len;
+ strncpy(sun.sun_path + len,
+ NSS_TLS_SOCKET_NAME,
+ sizeof(sun.sun_path) - len);
diff --git a/network/nss-tls/rc.nss-tlsd b/network/nss-tls/rc.nss-tlsd
new file mode 100644
index 0000000000..752027b0f5
--- /dev/null
+++ b/network/nss-tls/rc.nss-tlsd
@@ -0,0 +1,55 @@
+#!/bin/sh
+
+# rc.nss-tlsd - by B. Watson (urchlay@slackware.uk). Part of the
+# SlackBuilds.org nss-tlsd package. WTFPL licensed.
+
+DAEMON=/usr/sbin/nss-tlsd
+PIDFILE=/run/nss-tlsd.pid
+
+[ -f /etc/default/nss-tlsd ] && . /etc/default/nss-tlsd
+
+# we try to make sure not only that the PID file exists, but that the
+# PID is actually that of a running nss-tlsd process. the 'cut' stuff
+# is in case the package was upgraded, which results in /proc/<pid>/exe
+# pointing to "/usr/sbin/nss-tlsd (deleted)".
+daemon_is_running() {
+ [ -e "$PIDFILE" ] || return 1
+ [ "$( readlink /proc/$( cat $PIDFILE )/exe 2>/dev/null | cut -d' ' -f1 )" = "$DAEMON" ] || return 1
+ return 0
+}
+
+start_daemon() {
+ if daemon_is_running; then
+ echo "$DAEMON is already running, PID $( cat $PIDFILE )"
+ else
+ echo "Starting $DAEMON"
+ nohup $DAEMON $NSS_TLSD_OPTS >/dev/null 2>&1 &
+ echo "${!}" > $PIDFILE
+ fi
+}
+
+stop_daemon() {
+ if daemon_is_running; then
+ echo "Stopping $DAEMON"
+ kill "$( cat $PIDFILE )"
+ sleep 1
+ kill -9 "$( cat $PIDFILE )" >/dev/null 2>&1
+ rm -f $PIDFILE
+ else
+ echo "$DAEMON not running"
+ fi
+}
+
+# most rc scripts don't need this: daemons will fail to start as non-root.
+# this one is designed to work either way.
+if [ "$(id -u)" != "0" ]; then
+ echo "$0: must run as root."
+ exit 1
+fi
+
+case "$1" in
+ start|"") start_daemon ;;
+ stop) stop_daemon ;;
+ restart) stop_daemon; sleep 1; start_daemon ;;
+ *) echo "Usage: $0 start|stop|restart" ;;
+esac
diff --git a/network/nss-tls/slack-desc b/network/nss-tls/slack-desc
new file mode 100644
index 0000000000..8965e2029d
--- /dev/null
+++ b/network/nss-tls/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------------------------------------------------------|
+nss-tls: nss-tls (DNS-over-HTTPS resolver)
+nss-tls:
+nss-tls: nss-tls is an alternative, encrypted name resolving library for Linux
+nss-tls: distributions with glibc which uses DNS-over-HTTPS. The glibc name
+nss-tls: resolver can be configured through nsswitch.conf(5) to use nss-tls
+nss-tls: instead of the DNS resolver, or fall back to DNS when nss-tls fails.
+nss-tls:
+nss-tls:
+nss-tls:
+nss-tls:
+nss-tls:
diff --git a/network/nweb/nweb.info b/network/nweb/nweb.info
index 1690b8b5b1..74e51e8a34 100644
--- a/network/nweb/nweb.info
+++ b/network/nweb/nweb.info
@@ -6,5 +6,5 @@ MD5SUM="7570ab89a441f1b11f2ab099660b9daa"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/nxclient/nxclient.SlackBuild b/network/nxclient/nxclient.SlackBuild
index 9a5c1f8a6a..8a0e18f677 100644
--- a/network/nxclient/nxclient.SlackBuild
+++ b/network/nxclient/nxclient.SlackBuild
@@ -15,12 +15,20 @@ LVERSION=$(printf $VERSION|tr _ -)
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) ARCH=i386 ;;
- arm*) ARCH=arm ;;
+ i?86) ARCH=i586 ;;
*) ARCH=$( uname -m ) ;;
esac
fi
+if [ "$ARCH" = "x86_64" ]; then
+ SRCARCH=$ARCH
+elif [[ $ARCH = i?86 ]]; then
+ SRCARCH=i386
+else
+ echo "$ARCH architecture is unsupported." >/dev/stderr
+ exit 1
+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.
@@ -42,17 +50,16 @@ mkdir -p $PKG/usr/bin
# installing in /usr/NX looks pretty ugly, maybe better symlink from /opt
mkdir -p $PKG/opt
-tar xvf $CWD/$PRGNAM-$LVERSION.$ARCH.tar.gz -C $PKG/opt
+tar xvf $CWD/$PRGNAM-$LVERSION.$SRCARCH.tar.gz -C $PKG/opt
chown -R root:root $PKG
find $PKG \
\( -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 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \;
-ln -s /opt/NX $PKG/usr/NX
-cd $PKG/usr/bin
-ln -s /usr/NX/bin/$PRGNAM $PRGNAM
+( cd $PKG/usr ; ln -s ../opt/NX NX )
+( cd $PKG/usr/bin ; ln -s ../../opt/NX/bin/$PRGNAM . )
mkdir -p $PKG/usr/share/applications
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
diff --git a/network/nyxt/README b/network/nyxt/README
new file mode 100644
index 0000000000..376aba2c78
--- /dev/null
+++ b/network/nyxt/README
@@ -0,0 +1,3 @@
+Nyxt is a keyboard-driven web browser designed for power users.
+Inspired by Emacs and Vim, it has familiar keybindings
+(Emacs, vi, CUA), and is infinitely extensible in Lisp.
diff --git a/network/nyxt/doinst.sh b/network/nyxt/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/nyxt/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/nyxt/nyxt.SlackBuild b/network/nyxt/nyxt.SlackBuild
new file mode 100644
index 0000000000..bf714dae9e
--- /dev/null
+++ b/network/nyxt/nyxt.SlackBuild
@@ -0,0 +1,89 @@
+#!/bin/bash
+
+# Slackware build script for nyxt
+
+# Copyright 2023, Pu Du
+# 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=nyxt
+VERSION=${VERSION:-3.11.5}
+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
+mkdir $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-source-with-submodules.tar.xz
+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 {} \;
+
+# use $TMP/$PRGNAM-$VERSION/.cache dir instead of $HOME/.cache/common-lisp/
+(
+ code="(setf asdf:*user-cache* \"$TMP/$PRGNAM-$VERSION/.cache/\")"
+ sed "s,--eval '(require \"asdf\")',& --eval '$code'," -i makefile
+)
+
+(
+ export PREFIX=/usr NASDF_COMPRESS=t
+ make -j1 doc nyxt LIBDIR=$PREFIX/lib${LIBDIRSUFFIX} NASDF_SOURCE_PATH=$PREFIX/share/nyxt
+ make install DESTDIR=$PKG LIBDIR=$PKG/$PREFIX/lib${LIBDIRSUFFIX}
+)
+
+# It's not a good idea to strip the lisp image, so we don't
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a manual.html $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/nyxt/nyxt.info b/network/nyxt/nyxt.info
new file mode 100644
index 0000000000..144fd0164a
--- /dev/null
+++ b/network/nyxt/nyxt.info
@@ -0,0 +1,10 @@
+PRGNAM="nyxt"
+VERSION="3.11.5"
+HOMEPAGE="https://nyxt.atlas.engineer/"
+DOWNLOAD="https://github.com/atlas-engineer/nyxt/releases/download/3.11.5/nyxt-3.11.5-source-with-submodules.tar.xz"
+MD5SUM="0adaeb586f5ebc4653f0effbd13747c3"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libfixposix sbcl webkit2gtk"
+MAINTAINER="Pu Du"
+EMAIL="pu.du@ro.ru"
diff --git a/network/nyxt/slack-desc b/network/nyxt/slack-desc
new file mode 100644
index 0000000000..05367e0fb4
--- /dev/null
+++ b/network/nyxt/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------------------------------------------------------|
+nyxt: nyxt (hacker's power-browser)
+nyxt:
+nyxt: Nyxt is a keyboard-driven web browser designed for power users.
+nyxt: Inspired by Emacs and Vim, it has familiar keybindings
+nyxt: (Emacs, vi, CUA), and is infinitely extensible in Lisp.
+nyxt:
+nyxt:
+nyxt:
+nyxt:
+nyxt:
+nyxt:
diff --git a/network/ocserv/README b/network/ocserv/README
new file mode 100644
index 0000000000..82510b0a05
--- /dev/null
+++ b/network/ocserv/README
@@ -0,0 +1,39 @@
+The OpenConnect VPN server (ocserv) is an open source Linux SSL VPN
+server designed for organizations that require a remote access VPN with
+enterprise user management and control. It follows the openconnect
+protocol and is the counterpart of the openconnect VPN client. It is
+also compatible with CISCO's AnyConnect SSL VPN.
+
+The OpenConnect VPN is less vulnerable to detection than OpenVPN, IPSec,
+and WireGuard because it looks like a normal https connection (if udp is
+not used).
+
+The program consists of:
+
+1. ocserv, the main server application
+2. occtl, the server's control tool. A tool which allows one to query
+ the server for information.
+3. ocpasswd, a tool to administer simple password files.
+
+A user and group "ocserv" must exist prior to running this script.
+To create them run as root:
+ groupadd -g 382 ocserv
+ useradd -u 382 -g 382 -s /sbin/nologin -M ocserv
+
+
+In order to start ocserv at boot and stop it properly at shutdown,
+make sure rc.local and rc.local_shutdown contain the following lines:
+
+ /etc/rc.d/rc.local
+ ==================
+ # Start ocserv
+ if [ -x /etc/rc.d/rc.ocserv ]; then
+ /etc/rc.d/rc.ocserv start
+ fi
+
+ /etc/rc.d/rc.local_shutdown
+ ===========================
+ # Stop ocserv
+ if [ -x /etc/rc.d/rc.ocserv ]; then
+ /etc/rc.d/rc.ocserv stop
+ fi
diff --git a/network/ocserv/doinst.sh b/network/ocserv/doinst.sh
new file mode 100644
index 0000000000..1d3e5778f8
--- /dev/null
+++ b/network/ocserv/doinst.sh
@@ -0,0 +1,23 @@
+config() {
+ NEW="$1"
+ OLD="$(dirname $NEW)/$(basename $NEW .new)"
+ if [ ! -r $OLD ]; then
+ mv $NEW $OLD
+ elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
+ rm $NEW
+ fi
+}
+
+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.ocserv.new
+config etc/ocserv/ocserv.conf.new
diff --git a/network/telegram-cli/telegram-cli.SlackBuild b/network/ocserv/ocserv.SlackBuild
index 2588d23fda..0636d788d7 100644
--- a/network/telegram-cli/telegram-cli.SlackBuild
+++ b/network/ocserv/ocserv.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for telegram-cli
+# Slackware build script for ocserv
-# Copyright 2017 Azure Zanculmarktum <zanculmarktum@gmail.com>
+# Copyright 2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,17 +24,12 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=telegram-cli
-SRCNAM=tg
-VERSION=${VERSION:-20200106}
+PRGNAM=ocserv
+VERSION=${VERSION:-1.2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# Git module
-SRCNAM2=tgl
-VERSION2=57f1bc41ae13297e6c3e23ac465fd45ec6659f50
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -61,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -71,12 +69,9 @@ 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
-rm -rf $SRCNAM2
-tar xvf $CWD/$SRCNAM2-$VERSION2.tar.gz
-mv $SRCNAM2-$VERSION2 tgl
+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 \
@@ -84,9 +79,7 @@ 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/libreadline.patch
-
-CFLAGS="$SLKCFLAGS -fcommon" \
+CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
@@ -95,31 +88,32 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--mandir=/usr/man \
--docdir=/usr/doc/$PRGNAM-$VERSION \
+ --disable-static \
--build=$ARCH-slackware-linux
make
+make install DESTDIR=$PKG
-install -Dm755 bin/telegram-cli $PKG/usr/bin/telegram-cli
-install -Dm644 tg-server.pub $PKG/etc/telegram-cli/server.pub
-chmod 644 README-Cygwin.md
+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 \
- LICENSE \
- README-Cygwin.md \
- README-LUA \
- README-PY.md \
- README.es \
- README.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS CONTRIBUTING* ChangeLog NEWS README* \
+ doc/README* doc/sample.* doc/scripts/ $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
+
+mkdir -p $PKG/etc/{rc.d,ocserv}
+cat $CWD/rc.ocserv > $PKG/etc/rc.d/rc.ocserv.new
+cat $CWD/ocserv.conf > $PKG/etc/ocserv/ocserv.conf.new
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/ocserv/ocserv.conf b/network/ocserv/ocserv.conf
new file mode 100644
index 0000000000..d00fdcb414
--- /dev/null
+++ b/network/ocserv/ocserv.conf
@@ -0,0 +1,779 @@
+### The following directives do not change with server reload.
+
+# User authentication method. To require multiple methods to be
+# used for the user to login, add multiple auth directives. The values
+# in the 'auth' directive are AND composed (if multiple all must
+# succeed).
+# Available options: certificate, plain, pam, radius, gssapi.
+# Note that authentication methods utilizing passwords cannot be
+# combined (e.g., the plain, pam or radius methods).
+
+# certificate:
+# This indicates that all connecting users must present a certificate.
+# The username and user group will be then extracted from it (see
+# cert-user-oid and cert-group-oid). The certificate to be accepted
+# it must be signed by the CA certificate as specified in 'ca-cert' and
+# it must not be listed in the CRL, as specified by the 'crl' option.
+#
+# pam[gid-min=1000]:
+# This enabled PAM authentication of the user. The gid-min option is used
+# by auto-select-group option, in order to select the minimum valid group ID.
+#
+# plain[passwd=/etc/ocserv/ocpasswd,otp=/etc/ocserv/users.otp]
+# The plain option requires specifying a password file which contains
+# entries of the following format.
+# "username:groupname1,groupname2:encoded-password"
+# One entry must be listed per line, and 'ocpasswd' should be used
+# to generate password entries. The 'otp' suboption allows one to specify
+# an oath password file to be used for one time passwords; the format of
+# the file is described in https://github.com/archiecobbs/mod-authn-otp/wiki/UsersFile
+#
+# radius[config=/etc/radiusclient/radiusclient.conf,groupconfig=true,nas-identifier=name]:
+# The radius option requires specifying freeradius-client configuration
+# file. If the groupconfig option is set, then config-per-user/group will be overridden,
+# and all configuration will be read from radius. That also includes the
+# Acct-Interim-Interval, and Session-Timeout values.
+#
+# See doc/README-radius.md for the supported radius configuration attributes.
+#
+# gssapi[keytab=/etc/key.tab,require-local-user-map=true,tgt-freshness-time=900]
+# The gssapi option allows one to use authentication methods supported by GSSAPI,
+# such as Kerberos tickets with ocserv. It should be best used as an alternative
+# to PAM (i.e., have pam in auth and gssapi in enable-auth), to allow users with
+# tickets and without tickets to login. The default value for require-local-user-map
+# is true. The 'tgt-freshness-time' if set, it would require the TGT tickets presented
+# to have been issued within the provided number of seconds. That option is used to
+# restrict logins even if the KDC provides long time TGT tickets.
+
+#auth = "pam"
+#auth = "pam[gid-min=1000]"
+#auth = "plain[passwd=./sample.passwd,otp=./sample.otp]"
+auth = "plain[passwd=/etc/ocserv/passwd]"
+#auth = "certificate"
+#auth = "radius[config=/etc/radiusclient/radiusclient.conf,groupconfig=true]"
+
+# Specify alternative authentication methods that are sufficient
+# for authentication. That is, if set, any of the methods enabled
+# will be sufficient to login, irrespective of the main 'auth' entries.
+# When multiple options are present, they are OR composed (any of them
+# succeeding allows login).
+#enable-auth = "certificate"
+#enable-auth = "gssapi"
+#enable-auth = "gssapi[keytab=/etc/key.tab,require-local-user-map=true,tgt-freshness-time=900]"
+
+# Accounting methods available:
+# radius: can be combined with any authentication method, it provides
+# radius accounting to available users (see also stats-report-time).
+#
+# pam: can be combined with any authentication method, it provides
+# a validation of the connecting user's name using PAM. It is
+# superfluous to use this method when authentication is already
+# PAM.
+#
+# Only one accounting method can be specified.
+#acct = "radius[config=/etc/radiusclient/radiusclient.conf]"
+
+# Use listen-host to limit to specific IPs or to the IPs of a provided
+# hostname.
+#listen-host = [IP|HOSTNAME]
+
+# Use udp-listen-host to limit udp to specific IPs or to the IPs of a provided
+# hostname. if not set, listen-host will be used
+#udp-listen-host = [IP|HOSTNAME]
+
+# When the server has a dynamic DNS address (that may change),
+# should set that to true to ask the client to resolve again on
+# reconnects.
+#listen-host-is-dyndns = true
+
+# move the listen socket within the specified network namespace
+# listen-netns = "foo"
+
+# TCP and UDP port number
+tcp-port = 443
+udp-port = 443
+
+# The user the worker processes will be run as. This should be a dedicated
+# unprivileged user (e.g., 'ocserv') and no other services should run as this
+# user.
+run-as-user = ocserv
+run-as-group = ocserv
+
+# socket file used for IPC with occtl. You only need to set that,
+# if you use more than a single servers.
+#occtl-socket-file = /var/run/occtl.socket
+
+# socket file used for server IPC (worker-main), will be appended with .PID
+# It must be accessible within the chroot environment (if any), so it is best
+# specified relatively to the chroot directory.
+socket-file = /var/run/ocserv-socket
+
+# The default server directory. Does not require any devices present.
+#chroot-dir = /var/lib/ocserv
+
+# The key and the certificates of the server
+# The key may be a file, or any URL supported by GnuTLS (e.g.,
+# tpmkey:uuid=xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx;storage=user
+# or pkcs11:object=my-vpn-key;object-type=private)
+#
+# The server-cert file may contain a single certificate, or
+# a sorted certificate chain.
+# There may be multiple server-cert and server-key directives,
+# but each key should correspond to the preceding certificate.
+# The certificate files will be reloaded when changed allowing for in-place
+# certificate renewal (they are checked and reloaded periodically;
+# a SIGHUP signal to main server will force reload).
+
+#server-cert = /etc/ocserv/fullchain.pem
+#server-key = /etc/ocserv/privkey.pem
+
+# Diffie-Hellman parameters. Only needed if for old (pre 3.6.0
+# versions of GnuTLS for supporting DHE ciphersuites.
+# Can be generated using:
+# certtool --generate-dh-params --outfile /etc/ocserv/dh.pem
+#dh-params = /etc/ocserv/dh.pem
+
+# In case PKCS #11, TPM or encrypted keys are used the PINs should be available
+# in files. The srk-pin-file is applicable to TPM keys only, and is the
+# storage root key.
+#pin-file = /etc/ocserv/pin.txt
+#srk-pin-file = /etc/ocserv/srkpin.txt
+
+# The password or PIN needed to unlock the key in server-key file.
+# Only needed if the file is encrypted or a PKCS #11 object. This
+# is an alternative method to pin-file.
+#key-pin = 1234
+
+# The SRK PIN for TPM.
+# This is an alternative method to srk-pin-file.
+#srk-pin = 1234
+
+# The Certificate Authority that will be used to verify
+# client certificates (public keys) if certificate authentication
+# is set.
+#ca-cert = /etc/ocserv/ca.pem
+
+# The number of sub-processes to use for the security module (authentication)
+# processes. Typically this should not be set as the number of processes
+# is determined automatically by the initially set maximum number of clients.
+#sec-mod-scale = 4
+
+
+
+### All configuration options below this line are reloaded on a SIGHUP.
+### The options above, will remain unchanged. Note however, that the
+### server-cert, server-key, dh-params and ca-cert options will be reloaded
+### if the provided file changes, on server reload. That allows certificate
+### rotation, but requires the server key to remain the same for seamless
+### operation. If the server key changes on reload, there may be connection
+### failures during the reloading time.
+
+
+# Whether to enable seccomp/Linux namespaces worker isolation. That restricts the number of
+# system calls allowed to a worker process, in order to reduce damage from a
+# bug in the worker process. It is available on Linux systems at a performance cost.
+# The performance cost is roughly 2% overhead at transfer time (tested on a Linux 3.17.8).
+# Note however, that process isolation is restricted to the specific libc versions
+# the isolation was tested at. If you get random failures on worker processes, try
+# disabling that option and report the failures you, along with system and debugging
+# information at: https://gitlab.com/openconnect/ocserv/issues
+isolate-workers = true
+
+# A banner to be displayed on clients after connection
+#banner = "Welcome"
+
+# A banner to be displayed on clients before connection
+#pre-login-banner = "Welcome"
+
+# Limit the number of clients. Unset or set to zero if unknown. In
+# that case the maximum value is ~8k clients.
+#max-clients = 1024
+max-clients = 16
+
+# Limit the number of identical clients (i.e., users connecting
+# multiple times). Unset or set to zero for unlimited.
+max-same-clients = 2
+
+# When the server receives connections from a proxy, like haproxy
+# which supports the proxy protocol, set this to obtain the correct
+# client addresses. The proxy protocol would then be expected in
+# the TCP or UNIX socket (not the UDP one). Although both v1
+# and v2 versions of proxy protocol are supported, the v2 version
+# is recommended as it is more efficient in parsing.
+#listen-proxy-proto = true
+
+# Rate limit the number of incoming connections to one every X milliseconds
+# (X is the provided value), as the secmod backlog grows. This
+# makes the server more resilient (and prevents connection failures) on
+# multiple concurrent connections. Set to zero for no limit.
+rate-limit-ms = 100
+
+# Stats report time. The number of seconds after which each
+# worker process will report its usage statistics (number of
+# bytes transferred etc). This is useful when accounting like
+# radius is in use.
+#stats-report-time = 360
+
+# Stats reset time. The period of time statistics kept by main/sec-mod
+# processes will be reset. These are the statistics shown by cmd
+# 'occtl show stats'. For daily: 86400, weekly: 604800
+# This is unrelated to stats-report-time.
+server-stats-reset-time = 604800
+
+# Keepalive in seconds
+keepalive = 32400
+
+# Dead peer detection in seconds.
+# Note that when the client is behind a NAT this value
+# needs to be short enough to prevent the NAT disassociating
+# his UDP session from the port number. Otherwise the client
+# could have his UDP connection stalled, for several minutes.
+dpd = 90
+
+# Dead peer detection for mobile clients. That needs to
+# be higher to prevent such clients being awaken too
+# often by the DPD messages, and save battery.
+# The mobile clients are distinguished from the header
+# 'X-AnyConnect-Identifier-Platform'.
+mobile-dpd = 1800
+
+# If using DTLS, and no UDP traffic is received for this
+# many seconds, attempt to send future traffic over the TCP
+# connection instead, in an attempt to wake up the client
+# in the case that there is a NAT and the UDP translation
+# was deleted. If this is unset, do not attempt to use this
+# recovery mechanism.
+switch-to-tcp-timeout = 25
+
+# MTU discovery (DPD must be enabled)
+try-mtu-discovery = false
+
+# To enable load-balancer connection draining, set server-drain-ms to a value
+# higher than your load-balancer health probe interval.
+#server-drain-ms = 15000
+
+# If you have a certificate from a CA that provides an OCSP
+# service you may provide a fresh OCSP status response within
+# the TLS handshake. That will prevent the client from connecting
+# independently on the OCSP server.
+# You can update this response periodically using:
+# ocsptool --ask --load-cert=your_cert --load-issuer=your_ca --outfile response
+# Make sure that you replace the following file in an atomic way.
+#ocsp-response = /etc/ocserv/ocsp.der
+
+# The object identifier that will be used to read the user ID in the client
+# certificate. The object identifier should be part of the certificate's DN
+# Useful OIDs are:
+# CN = 2.5.4.3, UID = 0.9.2342.19200300.100.1.1, SAN(rfc822name)
+cert-user-oid = 0.9.2342.19200300.100.1.1
+
+# The object identifier that will be used to read the user group in the
+# client certificate. The object identifier should be part of the certificate's
+# DN. If the user may belong to multiple groups, then use multiple such fields
+# in the certificate's DN. Useful OIDs are:
+# OU (organizational unit) = 2.5.4.11
+#cert-group-oid = 2.5.4.11
+
+# The revocation list of the certificates issued by the 'ca-cert' above.
+# See the manual to generate an empty CRL initially. The CRL will be reloaded
+# periodically when ocserv detects a change in the file. To force a reload use
+# SIGHUP.
+#crl = /etc/ocserv/crl.pem
+
+# Uncomment this to enable compression negotiation (LZS, LZ4).
+#compression = true
+
+# Set the minimum size under which a packet will not be compressed.
+# That is to allow low-latency for VoIP packets. The default size
+# is 256 bytes. Modify it if the clients typically use compression
+# as well of VoIP with codecs that exceed the default value.
+#no-compress-limit = 256
+
+# GnuTLS priority string; note that SSL 3.0 is disabled by default
+# as there are no openconnect (and possibly anyconnect clients) using
+# that protocol. The string below does not enforce perfect forward
+# secrecy, in order to be compatible with legacy clients.
+#
+# Note that the most performant ciphersuites are the moment are the ones
+# involving AES-GCM. These are very fast in x86 and x86-64 hardware, and
+# in addition require no padding, thus taking full advantage of the MTU.
+# For that to be taken advantage of, the openconnect client must be
+# used, and the server must be compiled against GnuTLS 3.2.7 or later.
+# Use "gnutls-cli --benchmark-tls-ciphers", to see the performance
+# difference with AES_128_CBC_SHA1 (the default for anyconnect clients)
+# in your system.
+
+tls-priorities = "NORMAL:%SERVER_PRECEDENCE:%COMPAT:-VERS-SSL3.0:-VERS-TLS1.0:-VERS-TLS1.1"
+
+# More combinations in priority strings are available, check
+# http://gnutls.org/manual/html_node/Priority-Strings.html
+# E.g., the string below enforces perfect forward secrecy (PFS)
+# on the main channel.
+#tls-priorities = "NORMAL:%SERVER_PRECEDENCE:%COMPAT:-RSA:-VERS-SSL3.0:-ARCFOUR-128"
+
+# That option requires the established DTLS channel to use the same
+# cipher as the primary TLS channel.Note also, that this option implies
+# that the dtls-legacy option is false; this option cannot be enforced
+# in the legacy/compat protocol.
+#match-tls-dtls-ciphers = true
+
+# The time (in seconds) that a client is allowed to stay connected prior
+# to authentication
+auth-timeout = 240
+
+# The time (in seconds) that a client is allowed to stay idle (no traffic)
+# before being disconnected. Unset to disable.
+#idle-timeout = 1200
+
+# The time (in seconds) that a client is allowed to stay connected
+# Unset to disable. When set a client will be disconnected after being
+# continuously connected for this amount of time, and its cookies will
+# be invalidated (i.e., re-authentication will be required).
+#session-timeout = 86400
+
+# The time (in seconds) that a mobile client is allowed to stay idle (no
+# traffic) before being disconnected. Unset to disable.
+#mobile-idle-timeout = 2400
+
+# The time (in seconds) that a client is not allowed to reconnect after
+# a failed authentication attempt.
+min-reauth-time = 300
+
+# Banning clients in ocserv works with a point system. IP addresses
+# that get a score over that configured number are banned for
+# min-reauth-time seconds. By default a wrong password attempt is 10 points,
+# a KKDCP POST is 1 point, and a connection is 1 point. Note that
+# due to different processes being involved the count of points
+# will not be real-time precise. Local subnet IPs are exempt to allow
+# services that check for process health.
+#
+# Set to zero to disable.
+max-ban-score = 80
+
+# The time (in seconds) that all score kept for a client is reset.
+ban-reset-time = 1200
+
+# In case you'd like to change the default points.
+#ban-points-wrong-password = 10
+#ban-points-connection = 1
+#ban-points-kkdcp = 1
+
+# Cookie timeout (in seconds)
+# Once a client is authenticated he's provided a cookie with
+# which he can reconnect. That cookie will be invalidated if not
+# used within this timeout value. This cookie remains valid, during
+# the user's connected time, and after user disconnection it
+# remains active for this amount of time. That setting should allow a
+# reasonable amount of time for roaming between different networks.
+cookie-timeout = 300
+
+# If this is enabled (not recommended) the cookies will stay
+# valid even after a user manually disconnects, and until they
+# expire. This may improve roaming with some broken clients.
+#persistent-cookies = true
+
+# Whether roaming is allowed, i.e., if true a cookie is
+# restricted to a single IP address and cannot be reused
+# from a different IP.
+deny-roaming = false
+
+# ReKey time (in seconds)
+# ocserv will ask the client to refresh keys periodically once
+# this amount of seconds is elapsed. Set to zero to disable (note
+# that, some clients fail if rekey is disabled).
+rekey-time = 172800
+
+# ReKey method
+# Valid options: ssl, new-tunnel
+# ssl: Will perform an efficient rehandshake on the channel allowing
+# a seamless connection during rekey.
+# new-tunnel: Will instruct the client to discard and re-establish the channel.
+# Use this option only if the connecting clients have issues with the ssl
+# option.
+rekey-method = ssl
+
+# Script to call when a client connects and obtains an IP.
+# The following parameters are passed on the environment.
+# REASON, VHOST, USERNAME, GROUPNAME, DEVICE, IP_REAL (the real IP of the client),
+# REMOTE_HOSTNAME (the remotely advertised hostname), IP_REAL_LOCAL
+# (the local interface IP the client connected), IP_LOCAL
+# (the local IP in the P-t-P connection), IP_REMOTE (the VPN IP of the client),
+# IPV6_LOCAL (the IPv6 local address if there are both IPv4 and IPv6
+# assigned), IPV6_REMOTE (the IPv6 remote address), IPV6_PREFIX, and
+# ID (a unique numeric ID); REASON may be "connect" or "disconnect".
+# In addition the following variables OCSERV_ROUTES (the applied routes for this
+# client), OCSERV_NO_ROUTES, OCSERV_DNS (the DNS servers for this client),
+# will contain a space separated list of routes or DNS servers. A version
+# of these variables with the 4 or 6 suffix will contain only the IPv4 or
+# IPv6 values. The connect script must return zero as exit code, or the
+# client connection will be refused.
+
+# The disconnect script will receive the additional values: STATS_BYTES_IN,
+# STATS_BYTES_OUT, STATS_DURATION that contain a 64-bit counter of the bytes
+# output from the tun device, and the duration of the session in seconds.
+
+#connect-script = /usr/bin/myscript
+#disconnect-script = /usr/bin/myscript
+
+# This script is to be called when the client's advertised hostname becomes
+# available. It will contain REASON with "host-update" value and the
+# variable REMOTE_HOSTNAME in addition to the connect variables.
+
+#host-update-script = /usr/bin/myhostnamescript
+
+# UTMP
+# Register the connected clients to utmp. This will allow viewing
+# the connected clients using the command 'who'.
+#use-utmp = true
+
+# Whether to enable support for the occtl tool (i.e., either through D-BUS,
+# or via a unix socket).
+use-occtl = true
+
+# PID file. It can be overridden in the command line.
+pid-file = /run/ocserv.pid
+
+# Log Level. Ocserv sends the logging messages to standard error
+# as well as the system log. The log level can be overridden in the
+# command line with the -d option. All messages at the configured
+# level and lower will be displayed.
+# Supported levels (default 0):
+# 0 default (Same as info)
+# 1 basic
+# 2 info
+# 3 debug
+# 4 http
+# 8 sensitive
+# 9 TLS
+log-level = 2
+
+# Set the protocol-defined priority (SO_PRIORITY) for packets to
+# be sent. That is a number from 0 to 6 with 0 being the lowest
+# priority. Alternatively this can be used to set the IP Type-
+# Of-Service, by setting it to a hexadecimal number (e.g., 0x20).
+# This can be set per user/group or globally.
+#net-priority = 3
+
+# Set the VPN worker process into a specific cgroup. This is Linux
+# specific and can be set per user/group or globally.
+#cgroup = "cpuset,cpu:test"
+
+#
+# Network settings
+#
+
+# The name to use for the tun device
+device = vpns
+
+# Whether the generated IPs will be predictable, i.e., IP stays the
+# same for the same user when possible.
+predictable-ips = true
+
+# The default domain to be advertised. Multiple domains (functional on
+# openconnect clients) can be provided in a space separated list.
+default-domain = example.com
+#default-domain = "example.com one.example.com"
+
+# The pool of addresses that leases will be given from. If the leases
+# are given via Radius, or via the explicit-ip? per-user config option then
+# these network values should contain a network with at least a single
+# address that will remain under the full control of ocserv (that is
+# to be able to assign the local part of the tun device address).
+# Note that, you could use addresses from a subnet of your LAN network if you
+# enable [proxy arp in the LAN interface](http://ocserv.gitlab.io/www/recipes-ocserv-pseudo-bridge.html);
+# in that case it is recommended to set ping-leases to true.
+ipv4-network = 192.168.1.0
+ipv4-netmask = 255.255.255.0
+
+# An alternative way of specifying the network:
+#ipv4-network = 192.168.1.0/24
+
+# The IPv6 subnet that leases will be given from.
+#ipv6-network = fda9:4efe:7e3b:03ea::/48
+
+# Specify the size of the network to provide to clients. It is
+# generally recommended to provide clients with a /64 network in
+# IPv6, but any subnet may be specified. To provide clients only
+# with a single IP use the prefix 128.
+#ipv6-subnet-prefix = 128
+#ipv6-subnet-prefix = 64
+
+# Whether to tunnel all DNS queries via the VPN. This is the default
+# when a default route is set.
+#tunnel-all-dns = true
+
+# The advertised DNS server. Use multiple lines for
+# multiple servers.
+# dns = fc00::4be0
+dns = 192.168.1.1
+
+# The NBNS server (if any)
+#nbns = 192.168.1.3
+
+# The domains over which the provided DNS should be used. Use
+# multiple lines for multiple domains.
+#split-dns = example.com
+
+# Prior to leasing any IP from the pool ping it to verify that
+# it is not in use by another (unrelated to this server) host.
+# Only set to true, if there can be occupied addresses in the
+# IP range for leases.
+ping-leases = false
+
+# Use this option to set a link MTU value to the incoming
+# connections. Unset to use the default MTU of the TUN device.
+# Note that the MTU is negotiated using the value set and the
+# value sent by the peer.
+#mtu = 1420
+
+# Unset to enable bandwidth restrictions (in bytes/sec). The
+# setting here is global, but can also be set per user or per group.
+# The RX direction refers to received data on the server from the
+# VPN client, and the TX refers to transmitted data by the server
+# to the client.
+#rx-data-per-sec = 40000
+#tx-data-per-sec = 40000
+
+# The number of packets (of MTU size) that are available in
+# the output buffer. The default is low to improve latency.
+# Setting it higher will improve throughput.
+#output-buffer = 10
+
+# Routes to be forwarded to the client. If you need the
+# client to forward routes to the server, you may use the
+# config-per-user/group or even connect and disconnect scripts.
+#
+# To set the server as the default gateway for the client just
+# comment out all routes from the server, or use the special keyword
+# 'default'.
+
+#route = 10.10.10.0/255.255.255.0
+#route = 192.168.0.0/255.255.0.0
+#route = fef4:db8:1000:1001::/64
+#route = default
+
+route = 10.10.10.0/24
+route = 192.168.0.0/16
+
+# Subsets of the routes above that will not be routed by
+# the server.
+
+#no-route = 192.168.5.0/255.255.255.0
+
+# Note the that following two firewalling options currently are available
+# in Linux systems with iptables software.
+
+# If set, the script /usr/libexec/ocserv-fw will be called to restrict
+# the user to its allowed routes and prevent him from accessing
+# any other routes. In case of defaultroute, the no-routes are restricted.
+# All the routes applied by ocserv can be reverted using /usr/libexec/ocserv-fw
+# --removeall. This option can be set globally or in the per-user configuration.
+#restrict-user-to-routes = true
+
+# This option implies restrict-user-to-routes set to true. If set, the
+# script /usr/libexec/ocserv-fw will be called to restrict the user to
+# access specific ports in the network. This option can be set globally
+# or in the per-user configuration.
+#restrict-user-to-ports = "tcp(443), tcp(80), udp(443), sctp(99), tcp(583), icmp(), icmpv6()"
+
+# You could also use negation, i.e., block the user from accessing these ports only.
+#restrict-user-to-ports = "!(tcp(443), tcp(80))"
+
+# When set to true, all client's iroutes are made visible to all
+# connecting clients except for the ones offering them. This option
+# only makes sense if config-per-user is set.
+#expose-iroutes = true
+
+# Groups that a client is allowed to select from.
+# A client may belong in multiple groups, and in certain use-cases
+# it is needed to switch between them. For these cases the client can
+# select prior to authentication. Add multiple entries for multiple groups.
+# The group may be followed by a user-friendly name in brackets.
+#select-group = group1
+#select-group = group2[My special group]
+
+# The name of the (virtual) group that if selected it would assign the user
+# to its default group.
+#default-select-group = DEFAULT
+
+# Instead of specifying manually all the allowed groups, you may instruct
+# ocserv to scan all available groups and include the full list.
+#auto-select-group = true
+
+# Configuration files that will be applied per user connection or
+# per group. Each file name on these directories must match the username
+# or the groupname.
+# The options allowed in the configuration files are dns, nbns,
+# ipv?-network, ipv4-netmask, rx/tx-data-per-sec, iroute, route, no-route,
+# explicit-ipv4, explicit-ipv6, net-priority, deny-roaming, no-udp,
+# keepalive, dpd, mobile-dpd, max-same-clients, tunnel-all-dns,
+# restrict-user-to-routes, cgroup, stats-report-time,
+# mtu, idle-timeout, mobile-idle-timeout, restrict-user-to-ports,
+# split-dns and session-timeout.
+#
+# Note that the 'iroute' option allows one to add routes on the server
+# based on a user or group. The syntax depends on the input accepted
+# by the commands route-add-cmd and route-del-cmd (see below). The no-udp
+# is a boolean option (e.g., no-udp = true), and will prevent a UDP session
+# for that specific user or group. The hostname option will set a
+# hostname to override any proposed by the user. Note also, that, any
+# routes, no-routes, DNS or NBNS servers present will overwrite the global ones.
+
+#config-per-user = /etc/ocserv/config-per-user/
+#config-per-group = /etc/ocserv/config-per-group/
+
+# When config-per-xxx is specified and there is no group or user that
+# matches, then utilize the following configuration.
+#default-user-config = /etc/ocserv/defaults/user.conf
+#default-group-config = /etc/ocserv/defaults/group.conf
+
+# The system command to use to setup a route. %{R} will be replaced with the
+# route/mask, %{RI} with the route in CIDR format, and %{D} with the (tun) device.
+#
+# The following example is from linux systems. %{R} should be something
+# like 192.168.2.0/255.255.255.0 and %{RI} 192.168.2.0/24 (the argument of iroute).
+
+#route-add-cmd = "ip route add %{R} dev %{D}"
+#route-del-cmd = "ip route delete %{R} dev %{D}"
+
+# This option allows one to forward a proxy. The special keywords '%{U}'
+# and '%{G}', if present will be replaced by the username and group name.
+#proxy-url = http://example.com/
+#proxy-url = http://example.com/%{U}/
+
+# This option allows you to specify a URL location where a client can
+# post using MS-KKDCP, and the message will be forwarded to the provided
+# KDC server. That is a translation URL between HTTP and Kerberos.
+# In MIT kerberos you'll need to add in realms:
+# EXAMPLE.COM = {
+# kdc = https://ocserv.example.com/KdcProxy
+# http_anchors = FILE:/etc/ocserv-ca.pem
+# }
+# In some distributions the krb5-k5tls plugin of kinit is required.
+#
+# The following option is available in ocserv, when compiled with GSSAPI support.
+
+#kkdcp = "SERVER-PATH KERBEROS-REALM PROTOCOL@SERVER:PORT"
+#kkdcp = "/KdcProxy KERBEROS.REALM udp@127.0.0.1:88"
+#kkdcp = "/KdcProxy KERBEROS.REALM tcp@127.0.0.1:88"
+#kkdcp = "/KdcProxy KERBEROS.REALM tcp@[::1]:88"
+
+# Client profile xml. This can be used to advertise alternative servers
+# to the client. A minimal file can be:
+# <?xml version="1.0" encoding="UTF-8"?>
+# <AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
+# <ServerList>
+# <HostEntry>
+# <HostName>VPN Server name</HostName>
+# <HostAddress>localhost</HostAddress>
+# </HostEntry>
+# </ServerList>
+# </AnyConnectProfile>
+#
+# Other fields may be used by some of the CISCO clients.
+# This file must be accessible from inside the worker's chroot.
+# Note that:
+# (1) enabling this option is not recommended as it will allow the
+# worker processes to open arbitrary files (when isolate-workers is
+# set to true).
+# (2) This option cannot be set per-user or per-group; only the global
+# version is being sent to client.
+#user-profile = profile.xml
+
+#
+# The following options are for (experimental) AnyConnect client
+# compatibility.
+
+# This option will enable the pre-draft-DTLS version of DTLS, and
+# will not require clients to present their certificate on every TLS
+# connection. It must be set to true to support legacy CISCO clients
+# and openconnect clients < 7.08. When set to true, it implies dtls-legacy = true.
+cisco-client-compat = true
+
+# This option allows one to disable the DTLS-PSK negotiation (enabled by default).
+# The DTLS-PSK negotiation was introduced in ocserv 0.11.5 to deprecate
+# the pre-draft-DTLS negotiation inherited from AnyConnect. It allows the
+# DTLS channel to negotiate its ciphers and the DTLS protocol version.
+#dtls-psk = false
+
+# This option allows one to disable the legacy DTLS negotiation (enabled by default,
+# but that may change in the future).
+# The legacy DTLS uses a pre-draft version of the DTLS protocol and was
+# from AnyConnect protocol. It has several limitations, that are addressed
+# by the dtls-psk protocol supported by openconnect 7.08+.
+dtls-legacy = true
+
+# This option will enable the settings needed for Cisco SVC IPPhone clients
+# to connect. It implies dtls-legacy = true and tls-priorities is changed to
+# only the ciphers the device supports.
+cisco-svc-client-compat = false
+
+# This option will enable the X-CSTP-Client-Bypass-Protocol (disabled by default).
+# If the server has not configured an IPv6 or IPv4 address pool, enabling this option
+# will instruct the client to bypass the server for that IP protocol. The option is
+# currently only understood by Anyconnect clients.
+client-bypass-protocol = false
+
+# The following options are related to server camouflage (hidden service)
+
+# This option allows you to enable the camouflage feature of ocserv that makes it look
+# like a web server to unauthorized parties.
+# With "camouflage" enabled, connection to the VPN can be established only if the client provided a specific
+# "secret string" in the connection URL, e.g. "https://example.com/?mysecretkey",
+# otherwise the server will return HTTP error for all requests.
+camouflage = false
+
+# The URL prefix that should be set on the client (after '?' sign) to pass through the camouflage check,
+# e.g. in case of 'mysecretkey', the server URL on the client should be like "https://example.com/?mysecretkey".
+camouflage_secret = "mysecretkey"
+
+# Defines the realm (browser prompt) for HTTP authentication.
+# If no realm is set, the server will return 404 Not found error instead of 401 Unauthorized.
+# Better change it from the default value to avoid fingerprinting.
+camouflage_realm = "Restricted Content"
+
+#Advanced options
+
+# Option to allow sending arbitrary custom headers to the client after
+# authentication and prior to VPN tunnel establishment. You shouldn't
+# need to use this option normally; if you do and you think that
+# this may help others, please send your settings and reason to
+# the openconnect mailing list. The special keywords '%{U}'
+# and '%{G}', if present will be replaced by the username and group name.
+#custom-header = "X-My-Header: hi there"
+
+
+
+# An example virtual host with different authentication methods serviced
+# by this server.
+
+#[vhost:www.example.com]
+#auth = "certificate"
+
+#ca-cert = ../tests/certs/ca.pem
+
+# The certificate set here must include a 'dns_name' corresponding to
+# the virtual host name.
+
+#server-cert = ../tests/certs/server-cert-secp521r1.pem
+#server-key = ../tests/certs/server-key-secp521r1.pem
+
+#ipv4-network = 192.168.2.0
+#ipv4-netmask = 255.255.255.0
+
+#cert-user-oid = 0.9.2342.19200300.100.1.1
+
+# HTTP headers
+#included-http-headers = Strict-Transport-Security: max-age=31536000 ; includeSubDomains
+#included-http-headers = X-Frame-Options: deny
+#included-http-headers = X-Content-Type-Options: nosniff
+#included-http-headers = Content-Security-Policy: default-src 'none'
+#included-http-headers = X-Permitted-Cross-Domain-Policies: none
+#included-http-headers = Referrer-Policy: no-referrer
+#included-http-headers = Clear-Site-Data: "cache","cookies","storage"
+#included-http-headers = Cross-Origin-Embedder-Policy: require-corp
+#included-http-headers = Cross-Origin-Opener-Policy: same-origin
+#included-http-headers = Cross-Origin-Resource-Policy: same-origin
+#included-http-headers = X-XSS-Protection: 0
+#included-http-headers = Pragma: no-cache
+#included-http-headers = Cache-control: no-store, no-cache
diff --git a/network/ocserv/ocserv.info b/network/ocserv/ocserv.info
new file mode 100644
index 0000000000..da8951388a
--- /dev/null
+++ b/network/ocserv/ocserv.info
@@ -0,0 +1,10 @@
+PRGNAM="ocserv"
+VERSION="1.2.4"
+HOMEPAGE="https://ocserv.openconnect-vpn.net"
+DOWNLOAD="https://www.infradead.org/ocserv/download/ocserv-1.2.4.tar.xz"
+MD5SUM="6f82a924f998a646512714c4544aaee2"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="http-parser libev protobuf-c rubygem-ronn"
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/ocserv/rc.ocserv b/network/ocserv/rc.ocserv
new file mode 100644
index 0000000000..83fa395888
--- /dev/null
+++ b/network/ocserv/rc.ocserv
@@ -0,0 +1,55 @@
+#!/bin/bash
+# Start/stop/restart the ocserv vpn server
+# This script uses the occtl tool
+
+start_ocserv() {
+ if [ -S /var/run/occtl.socket ]; then
+ echo "ocserv is already running"
+ exit 0
+ fi
+ echo "Starting ocserv"
+ /usr/sbin/ocserv 2>/dev/null
+}
+
+stop_ocserv() {
+ /usr/bin/occtl stop now
+}
+
+restart_ocserv() {
+ stop_ocserv
+ sleep 1
+ start_ocserv
+}
+
+reload_ocserv() {
+ /usr/bin/occtl reload
+}
+
+status_ocserv() {
+ if [ -S /var/run/occtl.socket ]; then
+ /usr/bin/occtl show status
+ else
+ echo "ocserv is stopped"
+ exit 1
+ fi
+}
+
+case "$1" in
+'start')
+ start_ocserv
+ ;;
+'stop')
+ stop_ocserv
+ ;;
+'restart')
+ restart_ocserv
+ ;;
+'reload')
+ reload_ocserv
+ ;;
+'status')
+ status_ocserv
+ ;;
+*)
+ echo "usage $0 start|stop|restart|reload|status"
+esac
diff --git a/network/ocserv/slack-desc b/network/ocserv/slack-desc
new file mode 100644
index 0000000000..c62e2e9f87
--- /dev/null
+++ b/network/ocserv/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------------------------------------------------------|
+ocserv: ocserv (OpenConnect SSL VPN server)
+ocserv:
+ocserv: The OpenConnect VPN server (ocserv) is an open source Linux SSL VPN
+ocserv: server designed for organizations that require a remote access VPN
+ocserv: with enterprise user management and control. It follows the
+ocserv: openconnect protocol and is the counterpart of the openconnect VPN
+ocserv: client. It is also compatible with CISCO's AnyConnect SSL VPN.
+ocserv:
+ocserv: Homepage: https://ocserv.openconnect-vpn.net
+ocserv:
+ocserv:
diff --git a/network/oinkmaster/oinkmaster.info b/network/oinkmaster/oinkmaster.info
index da176fd0c1..ae5139aa1a 100644
--- a/network/oinkmaster/oinkmaster.info
+++ b/network/oinkmaster/oinkmaster.info
@@ -6,5 +6,5 @@ MD5SUM="d2a1b56f51cf40e919c63206ca4ec8f8"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/onedrive/onedrive.SlackBuild b/network/onedrive/onedrive.SlackBuild
index 0a8d85cff1..b15aa0b989 100644
--- a/network/onedrive/onedrive.SlackBuild
+++ b/network/onedrive/onedrive.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Slackware build script for onedrive
-# Copyright 2019-2022 Rob van Nues
+# Copyright 2019-2023 Rob van Nues
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=onedrive
-VERSION=${VERSION:-2.4.19}
+VERSION=${VERSION:-2.4.25}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/onedrive/onedrive.info b/network/onedrive/onedrive.info
index e229dea2c8..f7ca138caa 100644
--- a/network/onedrive/onedrive.info
+++ b/network/onedrive/onedrive.info
@@ -1,8 +1,8 @@
PRGNAM="onedrive"
-VERSION="2.4.19"
+VERSION="2.4.25"
HOMEPAGE="https://github.com/abraunegg/onedrive/releases"
-DOWNLOAD="https://github.com/abraunegg/onedrive/archive/v2.4.19/onedrive-2.4.19.tar.gz"
-MD5SUM="bc799a322cfa7f79a5b57fcafae0b419"
+DOWNLOAD="https://github.com/abraunegg/onedrive/archive/v2.4.25/onedrive-2.4.25.tar.gz"
+MD5SUM="09a7b7be0f24006ec7afd10e2ba194da"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="dmd"
diff --git a/network/onioncat/onioncat.SlackBuild b/network/onioncat/onioncat.SlackBuild
index 573e94f971..cfa73b3300 100644
--- a/network/onioncat/onioncat.SlackBuild
+++ b/network/onioncat/onioncat.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for onioncat
-# Copyright 2013-2021 Markus Reichelt, Aachen, DE
+# Copyright 2013-2023 Markus Reichelt, Aachen, DE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=onioncat
-VERSION=${VERSION:-0.3.8}
+VERSION=${VERSION:-4.11.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -105,12 +105,11 @@ 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
+gzip -9 $PKG/usr/man/man1/*
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- AUTHORS COPYING ChangeLog INSTALL NEWS TODO \
+ AUTHORS COPYING ChangeLog NEWS TODO \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/onioncat/onioncat.info b/network/onioncat/onioncat.info
index ea846300c0..1372a96b27 100644
--- a/network/onioncat/onioncat.info
+++ b/network/onioncat/onioncat.info
@@ -1,8 +1,8 @@
PRGNAM="onioncat"
-VERSION="0.3.8"
-HOMEPAGE="https://www.cypherpunk.at/onioncat/"
-DOWNLOAD="https://www.cypherpunk.at/ocat/download/Source/0.3/onioncat-0.3.8.tar.gz"
-MD5SUM="928e4bc2d2454d178d3ebddbf5a0436e"
+VERSION="4.11.0"
+HOMEPAGE="https://www.onioncat.org/"
+DOWNLOAD="https://github.com/rahra/onioncat/releases/download/v4.11.0/onioncat-4.11.0.tar.gz"
+MD5SUM="8c12109c84aac6d0e1ee3bcc89c7b084"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/onioncat/slack-desc b/network/onioncat/slack-desc
index 8d2f9d9fdc..20e1864969 100644
--- a/network/onioncat/slack-desc
+++ b/network/onioncat/slack-desc
@@ -15,5 +15,5 @@ onioncat: -multipoint VPN between hidden services.
onioncat:
onioncat: I2P is also supported.
onioncat:
-onioncat: Website : https://www.cypherpunk.at/onioncat/
+onioncat: Website : https://www.onioncat.org/
onioncat:
diff --git a/network/onyx/onyx.SlackBuild b/network/onyx/onyx.SlackBuild
index 9a36ecddc2..e59e1066ed 100644
--- a/network/onyx/onyx.SlackBuild
+++ b/network/onyx/onyx.SlackBuild
@@ -22,6 +22,9 @@
# 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=onyx
VERSION=${VERSION:-0.9.2.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -32,9 +35,6 @@ PKGTYPE=${PKGTYPE:-tgz}
# user should obtain through the usual interface), so we've got to keep the
# two names straight.
-cd $(dirname $0) ; CWD=$(pwd)
-
-PRGNAM=onyx
APP=overbitenx
if [ -z "$ARCH" ]; then
diff --git a/network/ookla-speedtest/README b/network/ookla-speedtest/README
new file mode 100644
index 0000000000..d851665ecc
--- /dev/null
+++ b/network/ookla-speedtest/README
@@ -0,0 +1,17 @@
+Speedtest CLI brings the trusted technology and global server network
+behind Speedtest to the command line. Built for software developers,
+system administrators and computer enthusiasts alike, Speedtest CLI is
+the first official Linux-native Speedtest application backed by Ookla®.
+
+With Speedtest CLI, you can easily:
+
+* Measure internet connection performance metrics like download, upload,
+ latency and packet loss natively without relying on a web browser
+* Test the internet connection of your Linux desktop, a remote server or
+ even lower-powered devices such as the Raspberry Pi with the
+ Speedtest Server Network
+* Set up automated scripts to collect connection performance data,
+ including trends over time
+* Use Speedtest in your programs by wrapping it in the programming
+ language of your choice
+* View test results via CSV, JSONL or JSON
diff --git a/network/ookla-speedtest/ookla-speedtest.SlackBuild b/network/ookla-speedtest/ookla-speedtest.SlackBuild
new file mode 100644
index 0000000000..075d8ca5b7
--- /dev/null
+++ b/network/ookla-speedtest/ookla-speedtest.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Slackware build script for ookla-speedtest
+
+# Copyright 2023 Ebben Aries <slackbuilds@dscp.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=ookla-speedtest
+SRCNAM=speedtest
+VERSION=${VERSION:-1.2.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
+ PKG_ARCH=i386
+elif [ "$ARCH" = "i686" ]; then
+ PKG_ARCH=i386
+elif [ "$ARCH" = "x86_64" ]; then
+ PKG_ARCH=$ARCH
+else
+ echo "$ARCH is not supported."
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION-linux-$PKG_ARCH.tgz -C $PRGNAM-$VERSION
+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 $PKG/{usr/bin,usr/man/man5}
+install -D -m 0755 $SRCNAM $PKG/usr/bin/$SRCNAM
+install -m 0644 $SRCNAM.5 $PKG/usr/man/man5/
+
+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 $SRCNAM.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/ookla-speedtest/ookla-speedtest.info b/network/ookla-speedtest/ookla-speedtest.info
new file mode 100644
index 0000000000..b579aa19d4
--- /dev/null
+++ b/network/ookla-speedtest/ookla-speedtest.info
@@ -0,0 +1,10 @@
+PRGNAM="ookla-speedtest"
+VERSION="1.2.0"
+HOMEPAGE="https://www.speedtest.net/apps/cli"
+DOWNLOAD="https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-linux-i386.tgz"
+MD5SUM="d573e2ab8fa4f0951a5f32adaf1913b4"
+DOWNLOAD_x86_64="https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-linux-x86_64.tgz"
+MD5SUM_x86_64="76de75a734cf98d70eee0d362bad365a"
+REQUIRES=""
+MAINTAINER="Ebben Aries"
+EMAIL="slackbuilds@dscp.org"
diff --git a/network/ookla-speedtest/slack-desc b/network/ookla-speedtest/slack-desc
new file mode 100644
index 0000000000..96a8eaa471
--- /dev/null
+++ b/network/ookla-speedtest/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------------------------------------------------------|
+ookla-speedtest: ookla-speedtest (Speedtest CLI)
+ookla-speedtest:
+ookla-speedtest: Speedtest CLI brings the trusted technology and global server network
+ookla-speedtest: behind Speedtest to the command line. Built for software developers,
+ookla-speedtest: system administrators and computer enthusiasts alike, Speedtest CLI
+ookla-speedtest: is the first official Linux-native Speedtest application backed by
+ookla-speedtest: Ookla.
+ookla-speedtest:
+ookla-speedtest:
+ookla-speedtest: Homepage: https://www.speedtest.net/apps/cli
+ookla-speedtest:
diff --git a/network/open-iscsi/doinst.sh b/network/open-iscsi/doinst.sh
index 718295b2e7..a4797f0184 100644
--- a/network/open-iscsi/doinst.sh
+++ b/network/open-iscsi/doinst.sh
@@ -1,16 +1,19 @@
+# 20230620 bkw: reverted this to the config() function from SBo
+# template. Please leave this as-is. It works, and it won't confuse
+# us (we have over 8000 scripts to look after...)
config() {
- NEW="${1}.new"
- OLD="$1"
+ 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 [ "$(md5sum <$OLD)" = "$(md5sum <$NEW)" ]; then
+ 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/iscsi/iscsid.conf
-config etc/iscsi/initiatorname.iscsi
+config etc/iscsi/iscsid.conf.new
+config etc/iscsi/initiatorname.iscsi.new
diff --git a/network/open-iscsi/open-iscsi.SlackBuild b/network/open-iscsi/open-iscsi.SlackBuild
index aa81b2ff0a..fe0c9a4274 100644
--- a/network/open-iscsi/open-iscsi.SlackBuild
+++ b/network/open-iscsi/open-iscsi.SlackBuild
@@ -23,6 +23,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230620 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - Fix doinst.sh (conf files were missing .new suffix).
+# - Do not install /usr/include headers with +x permission.
+
#
# 2019/09/08 - add patch to support building on Slackware "current"
#
@@ -31,7 +35,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=open-iscsi
VERSION=${VERSION:-2.1.5}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -43,9 +47,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
@@ -86,13 +87,15 @@ patch -p1 <$CWD/remove_werror.patch
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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
make OPTFLAGS="-DNO_SYSTEMD" NO_SYSTEMD=1
make install DESTDIR=$PKG
+chmod -x $PKG/usr/include/*.h
+
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/open-isns/doinst.sh b/network/open-isns/doinst.sh
index 8fad217bd6..ffe6583a67 100644
--- a/network/open-isns/doinst.sh
+++ b/network/open-isns/doinst.sh
@@ -1,17 +1,18 @@
+# 20230620 bkw: Please stick with the config() from our template.
config() {
- NEW="${1}.new"
- OLD="$1"
+ 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 [ "$(md5sum <$OLD)" = "$(md5sum <$NEW)" ]; then
+ 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/isns/isnsd.conf
-config etc/isns/isnsdd.conf
-config etc/isns/isnsadm.conf
+config etc/isns/isnsd.conf.new
+config etc/isns/isnsdd.conf.new
+config etc/isns/isnsadm.conf.new
diff --git a/network/open-isns/open-isns.SlackBuild b/network/open-isns/open-isns.SlackBuild
index d159a06768..93207785d0 100644
--- a/network/open-isns/open-isns.SlackBuild
+++ b/network/open-isns/open-isns.SlackBuild
@@ -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
@@ -76,9 +73,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
diff --git a/network/openconnect-sso/openconnect-sso.SlackBuild b/network/openconnect-sso/openconnect-sso.SlackBuild
index 18ddd5e663..3b263267af 100644
--- a/network/openconnect-sso/openconnect-sso.SlackBuild
+++ b/network/openconnect-sso/openconnect-sso.SlackBuild
@@ -43,7 +43,6 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
diff --git a/network/openconnect/libxml-fix.patch b/network/openconnect/libxml-fix.patch
new file mode 100644
index 0000000000..f6ee59a16a
--- /dev/null
+++ b/network/openconnect/libxml-fix.patch
@@ -0,0 +1,10 @@
+--- openconnect-internal.h.org 2023-05-19 18:12:15.000000000 +0200
++++ openconnect-internal.h 2023-12-12 18:38:19.651357296 +0100
+@@ -85,6 +85,7 @@
+ #define N_(s) s
+
+ #include <libxml/tree.h>
++#include <libxml/parser.h>
+ #include <zlib.h>
+
+ #ifdef _WIN32
diff --git a/network/openconnect/openconnect.SlackBuild b/network/openconnect/openconnect.SlackBuild
index f931dacdc3..918ca05b51 100644
--- a/network/openconnect/openconnect.SlackBuild
+++ b/network/openconnect/openconnect.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=openconnect
-VERSION=${VERSION:-9.01}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-9.12}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -72,6 +72,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+patch -p0 < $CWD/libxml-fix.patch
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
diff --git a/network/openconnect/openconnect.info b/network/openconnect/openconnect.info
index e3e63619f2..d0caf6691a 100644
--- a/network/openconnect/openconnect.info
+++ b/network/openconnect/openconnect.info
@@ -1,8 +1,8 @@
PRGNAM="openconnect"
-VERSION="9.01"
+VERSION="9.12"
HOMEPAGE="https://www.infradead.org/openconnect/"
-DOWNLOAD="ftp://ftp.infradead.org/pub/openconnect/openconnect-9.01.tar.gz"
-MD5SUM="97226a006a984224f18df54fc9fcd868"
+DOWNLOAD="https://www.infradead.org/openconnect/download/openconnect-9.12.tar.gz"
+MD5SUM="39060dcb58ebfb261bb6faf17755b98b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/openfortivpn/openfortivpn.SlackBuild b/network/openfortivpn/openfortivpn.SlackBuild
index 8496625326..bcc28fe805 100644
--- a/network/openfortivpn/openfortivpn.SlackBuild
+++ b/network/openfortivpn/openfortivpn.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=openfortivpn
-VERSION=${VERSION:-1.17.1}
+VERSION=${VERSION:-1.20.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/openfortivpn/openfortivpn.info b/network/openfortivpn/openfortivpn.info
index 3f8375d095..2c01532cce 100644
--- a/network/openfortivpn/openfortivpn.info
+++ b/network/openfortivpn/openfortivpn.info
@@ -1,8 +1,8 @@
PRGNAM="openfortivpn"
-VERSION="1.17.1"
+VERSION="1.20.3"
HOMEPAGE="https://github.com/adrienverge/openfortivpn"
-DOWNLOAD="https://github.com/adrienverge/openfortivpn/archive/v1.17.1/openfortivpn-1.17.1.zip"
-MD5SUM="b4eb72201321aa3cc8f063f03868bb28"
+DOWNLOAD="https://github.com/adrienverge/openfortivpn/archive/v1.20.3/openfortivpn-1.20.3.zip"
+MD5SUM="b977bf460bcb0be55c7b01f7e810d1e4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/openresty/README b/network/openresty/README
new file mode 100644
index 0000000000..e2acd5778c
--- /dev/null
+++ b/network/openresty/README
@@ -0,0 +1,40 @@
+openresty is a dynamic web platform based on NGINX and LuaJIT.
+
+Install dependence packages
+ slackpkg -batch=on -default_answer=y install zlib \
+ gd libxslt fontconfig libxcb libX11 libXau libXdmcp libXpm
+
+By default, openresty will use the "nobody" user and group accounts.
+You may specify alternate values on the command line if desired;
+for example:
+
+ OPENRESTYUSER=backup OPENRESTYGROUP=backup ./openresty.SlackBuild
+
+Regardless of which user and group you decide to use, you will need to
+make sure they exist on both the build system and the target system.
+
+Geoip support is now available as an option using the GeopIP
+package. If you wish to enable GeoIP the pass GEOIP variable to the
+slackbuild:
+
+ GEOIP=yes ./openresty.SlackBuild
+
+Support for gperftools is available as an option using the gperftools
+package. If you wish to enable gperftools pass the GPERF variable to
+the slackbuild:
+
+ GPERF=yes ./openresty.SlackBuild
+
+Extra modules not included with stock openresty can be added by passing
+them as a variable to the slackbuild as a space separated list of
+full paths to modules. List of extra 3rd party modules available at
+http://wiki.openresty.org/3rdPartyModules.
+
+ ADDMODULE="/tmp/passenger-release-5.0.13/ext/openresty" \
+ ./openresty.SlackBuild
+
+Using the optional dynamic loadable module support in openresty >=
+1.10.0. Understand that dynamic modules are a new feature in \
+openresty and issues may arise until further testing is done.
+
+ DYNAMIC=yes ./openresty.SlackBuild
diff --git a/network/openresty/doinst.sh b/network/openresty/doinst.sh
new file mode 100644
index 0000000000..ea975c41a5
--- /dev/null
+++ b/network/openresty/doinst.sh
@@ -0,0 +1,35 @@
+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.openresty.new
+config etc/logrotate.d/openresty.new
+config etc/openresty/fastcgi_params.new
+config etc/openresty/fastcgi.conf.new
+config etc/openresty/mime.types.new
+config etc/openresty/nginx.conf.new
+config etc/openresty/koi-utf.new
+config etc/openresty/koi-win.new
+config etc/openresty/scgi_params.new
+config etc/openresty/uwsgi_params.new
+config etc/openresty/win-utf.new
diff --git a/network/openresty/openresty.SlackBuild b/network/openresty/openresty.SlackBuild
new file mode 100644
index 0000000000..62ba6dba89
--- /dev/null
+++ b/network/openresty/openresty.SlackBuild
@@ -0,0 +1,195 @@
+#!/bin/bash
+
+# Slackware build script for openresty
+
+# Copyright 2008 Cherife Li <cherife-#-dotimes.com>
+# Copyright 2011 Diogo Leal <diogo@diogoleal.com>
+# Copyright 2012-13 Francisco Ambrozio <sbo@franciscoambrozio.com>
+# Copyright 2014-2017 Larry Hajali <larryhaja[at]gmail[dot]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.
+
+# Special thanks to Thomas Morper for some configuration adjustments tips
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=openresty
+VERSION=${VERSION:-1.21.4.3}
+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=""
+ 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=/opt/openresty \
+ --conf-path=/etc/openresty/nginx.conf \
+ --pid-path=/var/run/openresty.pid \
+ --user=${NGINXUSER:=nobody} \
+ --group=${NGINXGROUP:=nogroup} \
+ --error-log-path=/var/log/openresty/error.log \
+ --http-log-path=/var/log/openresty/access.log \
+ --with-file-aio \
+ --with-select_module \
+ --with-poll_module \
+ --with-threads \
+ --with-http_ssl_module \
+ --with-http_v2_module \
+ --with-http_realip_module \
+ --with-http_addition_module \
+ --with-http_xslt_module${DYNAMIC_MODULE} \
+ --with-http_image_filter_module${DYNAMIC_MODULE} \
+ --with-http_sub_module \
+ --with-http_dav_module \
+ --with-http_flv_module \
+ --with-http_mp4_module \
+ --with-http_gunzip_module \
+ --with-http_gzip_static_module \
+ --with-http_auth_request_module \
+ --with-http_random_index_module \
+ --with-http_secure_link_module \
+ --with-http_degradation_module \
+ --with-http_slice_module \
+ --with-http_stub_status_module \
+ --with-http_perl_module${DYNAMIC_MODULE} \
+ --with-mail${DYNAMIC_MODULE} \
+ --with-mail_ssl_module \
+ --with-stream${DYNAMIC_MODULE} \
+ --with-stream_ssl_module \
+ --with-stream_realip_module \
+ --with-stream_ssl_preread_module \
+ --with-cpp_test_module \
+ --with-compat \
+ --with-pcre \
+ --with-pcre-jit \
+ --with-libatomic \
+ $GEOIP_MOD \
+ $GPERF_MOD \
+ $ADD_MODULE
+
+gmake
+gmake install \
+ DESTDIR=$PKG \
+ INSTALLDIRS=vendor \
+ INSTALLVENDORMAN3DIR=/usr/man/man3
+
+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/man/man8
+install -m 0644 ./build/nginx-1.21.4/docs/man/nginx.8 $PKG/usr/man/man8
+find $PKG/usr/man -type f -exec gzip -9 {} \;
+
+find $PKG -name perllocal.pod \
+ -o -name ".packlist" \
+ -o -name "*.bs" \
+ | xargs rm -f
+
+find $PKG/opt/openresty/ -type d -empty -delete
+
+find $PKG -perm 444 -exec chmod 0644 {} \;
+find $PKG -perm 555 -exec chmod 0755 {} \;
+
+# Make the temp path.
+mkdir -p $PKG/var/lib/$PRGNAM
+chmod 0700 $PKG/var/lib/$PRGNAM
+chown $NGINXUSER $PKG/var/lib/$PRGNAM
+
+# Move html directory
+#mkdir -p $PKG/var/www
+#mv $PKG/usr/html $PKG/var/www
+
+# Add an init script
+mkdir -p $PKG/etc/rc.d
+cat $CWD/rc.openresty > $PKG/etc/rc.d/rc.openresty.new
+
+mkdir -p $PKG/etc/logrotate.d
+sed -e "s,@USER@,$NGINXUSER," -e "s,@GROUP@,$NGINXGROUP," $CWD/openresty.logrotate \
+ > $PKG/etc/logrotate.d/openresty.new
+
+# Set the permissions for the log directory.
+chown $NGINXUSER $PKG/var/log/$PRGNAM
+chmod 750 $PKG/var/log/$PRGNAM
+
+# Create sub-directory for virtual servers.
+mkdir $PKG/etc/$PRGNAM/conf.d
+
+mkdir -p $PKG/usr/doc/openresty-$VERSION
+#cp -a CHANGES* LICENSE README $PKG/usr/doc/openresty-$VERSION
+cat $CWD/openresty.SlackBuild > $PKG/usr/doc/openresty-$VERSION/openresty.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+ln -sf $PKG/opt/openresty/nginx/sbin/nginx /usr/bin/openresty
+
+# Don't clobber config files
+for i in $(find $PKG/etc/$PRGNAM -type f ! -name "*\.default"); do
+ mv "$i" "$i".new
+done
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/openresty/openresty.info b/network/openresty/openresty.info
new file mode 100644
index 0000000000..e371a6cbf1
--- /dev/null
+++ b/network/openresty/openresty.info
@@ -0,0 +1,10 @@
+PRGNAM="openresty"
+VERSION="1.21.4.3"
+HOMEPAGE="https://openresty.org/"
+DOWNLOAD="https://openresty.org/download/openresty-1.21.4.3.tar.gz"
+MD5SUM="9bb434e21a71d891b233fc1636186060"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="janshuez"
+EMAIL="janshuez[at]outlook[dot]com"
diff --git a/network/openresty/openresty.logrotate b/network/openresty/openresty.logrotate
new file mode 100644
index 0000000000..44a32e710e
--- /dev/null
+++ b/network/openresty/openresty.logrotate
@@ -0,0 +1,12 @@
+/var/log/openresty/*.log {
+ su @USER@ @GROUP@
+ rotate 10
+ notifempty
+ size 5M
+ compress
+ delaycompress
+ sharedscripts
+ postrotate
+ /etc/rc.d/rc.openresty rotate
+ endscript
+}
diff --git a/network/openresty/rc.openresty b/network/openresty/rc.openresty
new file mode 100644
index 0000000000..5df133ffc4
--- /dev/null
+++ b/network/openresty/rc.openresty
@@ -0,0 +1,96 @@
+#!/bin/sh
+#
+# Openresty daemon control script.
+# Written for Slackware Linux by Cherife Li <cherife-#-dotimes.com>.
+
+BIN=/usr/bin/openresty
+CONF=/etc/openresty/nginx.conf
+PID=/var/run/openresty.pid
+
+openresty_start() {
+ # Sanity checks.
+ if [ ! -r $CONF ]; then # no config file, exit:
+ echo "$CONF does not appear to exist. Abort."
+ exit 1
+ fi
+
+ if [ -s $PID ]; then
+ echo "Openresty appears to already be running?"
+ exit 1
+ fi
+
+ echo "Starting Openresty server daemon..."
+ if [ -x $BIN ]; then
+ $BIN -c $CONF
+ fi
+}
+
+openresty_test_conf() {
+ echo "Checking configuration for correct syntax and"
+ echo "then trying to open files referenced in configuration..."
+ $BIN -t -c $CONF
+}
+
+openresty_term() {
+ echo "Shutdown Openresty quickly..."
+ kill -TERM $(cat $PID)
+}
+
+openresty_stop() {
+ echo "Shutdown Openresty gracefully..."
+ kill -QUIT $(cat $PID)
+}
+
+openresty_reload() {
+ echo "Reloading Openresty configuration..."
+ kill -HUP $(cat $PID)
+}
+
+openresty_upgrade() {
+ echo "Upgrading to the new Openresty binary."
+ echo "Make sure the Openresty binary has been replaced with new one"
+ echo "or Openresty server modules were added/removed."
+ kill -USR2 $(cat $PID)
+ sleep 3
+ kill -QUIT $(cat $PID.oldbin)
+}
+
+openresty_rotate() {
+ echo "Rotating Openresty logs..."
+ kill -USR1 $(cat $PID)
+}
+
+openresty_restart() {
+ openresty_stop
+ sleep 3
+ openresty_start
+}
+
+case "$1" in
+ check)
+ openresty_test_conf
+ ;;
+ start)
+ openresty_start
+ ;;
+ term)
+ openresty_term
+ ;;
+ stop)
+ openresty_stop
+ ;;
+ reload)
+ openresty_reload
+ ;;
+ restart)
+ openresty_restart
+ ;;
+ upgrade)
+ openresty_upgrade
+ ;;
+ rotate)
+ openresty_rotate
+ ;;
+ *)
+ echo "usage: `basename $0` {check|start|term|stop|reload|restart|upgrade|rotate}"
+esac
diff --git a/network/openresty/slack-desc b/network/openresty/slack-desc
new file mode 100644
index 0000000000..7ad72b60a9
--- /dev/null
+++ b/network/openresty/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------------------------------------------------------|
+openresty: openresty (a full-fledged web application server)
+openresty:
+openresty: bundling the standard nginx core.
+openresty: lots of 3rd-party nginx modules.
+openresty: as well as most of their external dependencies.
+openresty: as well as an IMAP/POP3 proxy server.
+openresty:
+openresty: Openresty is maintained by Yichun Zhang (agentzh).
+openresty: Nginx was written by Igor Sysoev.
+openresty: Homepage: https://openresty.org/
+openresty:
diff --git a/network/opensm/README b/network/opensm/README
index ba703b0980..7b58311899 100644
--- a/network/opensm/README
+++ b/network/opensm/README
@@ -4,9 +4,9 @@ for in order to initialize the InfiniBand hardware (at least
one per each InfiniBand subnet).
Run the SlackBild script with the environment variable METIS set to
-anything but "no" to enable metis support for nue routing:
+"YES" to enable metis support for nue routing:
- env METIS=yes ./opensm.SlackBuild
+ env METIS=YES ./opensm.SlackBuild
The optional dependency "metis" can be installed from either the
"metis" or the "suitesparse" package, both of which are available
diff --git a/network/opensm/opensm.SlackBuild b/network/opensm/opensm.SlackBuild
index 0edc0e550d..2b51a9254e 100644
--- a/network/opensm/opensm.SlackBuild
+++ b/network/opensm/opensm.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=opensm
-VERSION=${VERSION:-3.3.22}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.3.24}
+BUILD=${BUILD:-1}
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
@@ -66,13 +63,17 @@ fi
METIS=${METIS:-no}
WITH_METIS=
-if [ "$METIS" != no ]; then
+if [ "`echo $METIS | tr 'a-z' 'A-Z'`" = YES ]; then
for inc_dir in /usr/include/metis /usr/include/suitesparse; do
if [ -e $inc_dir/metis.h ]; then
WITH_METIS="--with-metis --with-metis-includes=$inc_dir"
break
fi
done
+ if [ -z "$WITH_METIS" ]; then
+ echo "Error: metis enabled but headers not found."
+ exit 1
+ fi
fi
set -e
diff --git a/network/opensm/opensm.info b/network/opensm/opensm.info
index a930e63f08..33a698e965 100644
--- a/network/opensm/opensm.info
+++ b/network/opensm/opensm.info
@@ -1,8 +1,8 @@
PRGNAM="opensm"
-VERSION="3.3.22"
+VERSION="3.3.24"
HOMEPAGE="https://github.com/linux-rdma"
-DOWNLOAD="https://github.com/linux-rdma/opensm/archive/3.3.22/opensm-3.3.22.tar.gz"
-MD5SUM="d29495665edbfede565cfa2958d7cf01"
+DOWNLOAD="https://github.com/linux-rdma/opensm/archive/3.3.24/opensm-3.3.24.tar.gz"
+MD5SUM="e469eb593366b22cea7415a860886338"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="rdma-core"
diff --git a/network/opensmtpd-filter-dkimsign/README b/network/opensmtpd-filter-dkimsign/README
new file mode 100644
index 0000000000..94f0e2330a
--- /dev/null
+++ b/network/opensmtpd-filter-dkimsign/README
@@ -0,0 +1,13 @@
+opensmtpd-filter-dkimsign adds a dkim signature to the email message.
+It supports the rsa and ed25519 signing algorithms.
+
+mandoc is needed only at build time.
+
+It is recommended to run filter-dkimsign as a non root user. For
+example, create a user and group "_dkimsign" (this name has come from
+an example in smtpd.conf(5)):
+
+ groupadd -g 376 _dkimsign
+ useradd -u 376 -g 376 -s /sbin/nologin -M _dkimsign
+
+The private key must be readable by this user.
diff --git a/network/RYMTracks/RYMTracks.SlackBuild b/network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.SlackBuild
index e51cd46edd..9101a0c36c 100644
--- a/network/RYMTracks/RYMTracks.SlackBuild
+++ b/network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for RYMTracks
+# Slackware build script for opensmtpd-filter-dkimsign
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,9 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=RYMTracks
-VERSION=${VERSION:-0.1.4}
+PRGNAM=opensmtpd-filter-dkimsign
+SPRGNAM=${PRGNAM#*-}
+VERSION=${VERSION:-0.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,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
@@ -69,9 +67,9 @@ 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
+rm -rf $SPRGNAM-$VERSION
+tar xvf $CWD/$SPRGNAM-$VERSION.tar.gz
+cd $SPRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -79,13 +77,18 @@ 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 {} \;
-python setup.py install --root=$PKG
+make -f Makefile.gnu
+make -f Makefile.gnu CFLAGS="$SLKCFLAGS" MANDIR=/usr/man/man8 install DESTDIR=$PKG
+
+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 PKG-INFO README.rst $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.info b/network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.info
new file mode 100644
index 0000000000..35f3aa9e1e
--- /dev/null
+++ b/network/opensmtpd-filter-dkimsign/opensmtpd-filter-dkimsign.info
@@ -0,0 +1,10 @@
+PRGNAM="opensmtpd-filter-dkimsign"
+VERSION="0.6"
+HOMEPAGE="https://imperialat.at/dev/filter-dkimsign/"
+DOWNLOAD="https://imperialat.at/releases/filter-dkimsign-0.6.tar.gz"
+MD5SUM="f1ec294c9f1526d07c569e66d2d90d18"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libopensmtpd"
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/opensmtpd-filter-dkimsign/slack-desc b/network/opensmtpd-filter-dkimsign/slack-desc
new file mode 100644
index 0000000000..4a66d92236
--- /dev/null
+++ b/network/opensmtpd-filter-dkimsign/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------------------------------------------------------|
+opensmtpd-filter-dkimsign: opensmtpd-filter-dkimsign (OpenSMTPD filter for DKIM signing)
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign: opensmtpd-filter-dkimsign adds a dkim signature to the email message.
+opensmtpd-filter-dkimsign: It supports the rsa and ed25519 signing algorithms.
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign: Homepage: https://imperialat.at/dev/filter-dkimsign/
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign:
+opensmtpd-filter-dkimsign:
diff --git a/network/opensmtpd/README b/network/opensmtpd/README
index d4f1281b7b..fba4cc0dd4 100644
--- a/network/opensmtpd/README
+++ b/network/opensmtpd/README
@@ -3,6 +3,10 @@ as defined by RFC 5321, with some additional standard extensions.
It allows ordinary machines to exchange e-mails with other systems
speaking the SMTP protocol.
+This package conflicts with the stock postfix (or sendmail) package
+included in Slackware and overwrites some of its files,
+so remove the postfix (or sendmail) package before installing opensmtpd
+
You must have smtpd and smtpq users and groups on the system for
privilege separation - something like this should suffice:
@@ -11,20 +15,18 @@ privilege separation - something like this should suffice:
groupadd -g 271 smtpq
useradd -u 271 -g 271 -r -s /bin/false -d /var/empty smtpq
-You will want to add /etc/rc.d/rc.opensmtpd to rc.local so that it
-will start on boot (or perhaps consider symlinking rc.sendmail to
-rc.opensmtpd).
-
-This package conflicts with the stock sendmail package included in
-Slackware and overwrites some of its files, so remove the sendmail
-package before installing opensmtpd.
+You will want to modify rc.local so that OpenSMTPD
+will start on boot something like this:
-Alpine hangs when sending mail using the opensmtp sendmail command and
-the opensmtpd server is down.
+ # start opensmtpd a replacement for sendmail and postfix
+ if [ -x /etc/rc.d/rc.opensmtpd ]; then
+ . /etc/rc.d/rc.opensmtpd start
+ fi
-To prevent this, modify the /etc/pine.conf or the user .pinerc to
-send the mail directly to the server instead of using the
-opensmtpd sendmail command:
+Optional Dependency: LibreSSL
- smtp-server=localhost
+To use the LibreSSL runtime libraries
+ First install LibreSSL
+ then build OpenSMTPD
+For hints on using alpine with OpenSMTPD see the README.alpine file
diff --git a/network/opensmtpd/README.alpine b/network/opensmtpd/README.alpine
new file mode 100644
index 0000000000..e1d149b683
--- /dev/null
+++ b/network/opensmtpd/README.alpine
@@ -0,0 +1,21 @@
+
+Alpine hangs when sending mail using the opensmtp sendmail command and
+the opensmtpd server is down.
+
+To prevent this, modify the /etc/pine.conf or the user .pinerc to
+send the mail directly to the server instead of using the
+opensmtpd sendmail command:
+
+ smtp-server=localhost
+
+If the OpenSMTPD server is down, then alpine will indicate that
+the localhost has refused the connection.
+
+Or modify the sendmail command to have the -t option:
+
+ sendmail-path=/usr/sbin/sendmail -t
+
+And if the OpenSMTPD server is down, then alpine will indicate that
+the sendmail command has gotten an error.
+
+
diff --git a/network/opensmtpd/opensmtpd.SlackBuild b/network/opensmtpd/opensmtpd.SlackBuild
index e97260abd7..342996614b 100644
--- a/network/opensmtpd/opensmtpd.SlackBuild
+++ b/network/opensmtpd/opensmtpd.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for opensmtpd
# Copyright 2013-2014 Robby Workman, Northport, Alabama, USA
-# Copyright 2015-2020 Richard Narron, California, USA
+# Copyright 2015-2024 Richard Narron, California, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=opensmtpd
-VERSION=${VERSION:-6.8.0p2}
+VERSION=${VERSION:-7.5.0p0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -91,9 +91,10 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cd $PRGNAM-$VERSION
+
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -102,8 +103,10 @@ 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 {} \;
-CFLAGS="$SLKCFLAGS -D_DEFAULT_SOURCE" \
-CXXFLAGS="$SLKCFLAGS" \
+# pickup files from libressl if it is installed
+CFLAGS="$SLKCFLAGS -I/usr/include/libressl" \
+LDFLAGS="-L/usr/lib${LIBDIRSUFFIX}/libressl -lcrypto -lssl \
+-Wl,-rpath=/usr/lib${LIBDIRSUFFIX}/libressl" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -111,7 +114,6 @@ CXXFLAGS="$SLKCFLAGS" \
--localstatedir=/var \
--with-path-socket=/var/run \
--mandir=/usr/man \
- --with-mantype=doc \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--without-rpath \
--with-path-mbox=/var/spool/mail \
@@ -176,14 +178,15 @@ chmod 0700 $PKG/var/spool/smtpd/purge
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 INSTALL LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.slackware
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CHANGES.md LICENSE README.md $PKG/usr/doc/$PRGNAM-$VERSION/
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.slackware
+cat $CWD/README.alpine > $PKG/usr/doc/$PRGNAM-$VERSION/README.alpine
+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
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -p -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/opensmtpd/opensmtpd.info b/network/opensmtpd/opensmtpd.info
index dd58cac9a1..31413fe623 100644
--- a/network/opensmtpd/opensmtpd.info
+++ b/network/opensmtpd/opensmtpd.info
@@ -1,10 +1,10 @@
PRGNAM="opensmtpd"
-VERSION="6.8.0p2"
-HOMEPAGE="https://www.opensmtpd.org/"
-DOWNLOAD="https://www.opensmtpd.org/archives/opensmtpd-6.8.0p2.tar.gz"
-MD5SUM="57209fc2bedf540b4649a42eb95341c5"
+VERSION="7.5.0p0"
+HOMEPAGE="https://opensmtpd.org/"
+DOWNLOAD="https://www.opensmtpd.org/archives/opensmtpd-7.5.0p0.tar.gz"
+MD5SUM="81d1987ab1bdbb04dbbedffb3334cc01"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libasr"
+REQUIRES=""
MAINTAINER="Richard Narron"
EMAIL="richard@aaazen.com"
diff --git a/network/opensmtpd/rc.opensmtpd b/network/opensmtpd/rc.opensmtpd
index b75e3c53e4..f3154061c5 100644
--- a/network/opensmtpd/rc.opensmtpd
+++ b/network/opensmtpd/rc.opensmtpd
@@ -10,7 +10,7 @@ smtpd_start() {
smtpd_stop() {
echo "Stopping OpenSMTPD"
- /usr/sbin/smtpctl stop 1>/dev/null 2>/dev/null || /usr/bin/pkill smtpd
+ /usr/bin/pkill -f /usr/sbin/smtpd
}
# Restart smtpd:
@@ -20,6 +20,12 @@ smtpd_restart() {
smtpd_start
}
+# Test the smtpd configuration:
+smtpd_testconf() {
+ echo "testing OpenSMTPD configuration: /usr/sbin/smtpd -n"
+ /usr/sbin/smtpd -n
+}
+
case "$1" in
'start')
smtpd_start
@@ -30,6 +36,9 @@ case "$1" in
'restart')
smtpd_restart
;;
+'testconf')
+ smtpd_testconf
+ ;;
*)
- echo "usage $0 start|stop|restart"
+ echo "usage $0 start|stop|restart|testconf"
esac
diff --git a/network/opera-developer/README b/network/opera-developer/README
deleted file mode 100644
index a1658f5329..0000000000
--- a/network/opera-developer/README
+++ /dev/null
@@ -1,9 +0,0 @@
-opera-developer (A fast and secure web browser)
-
-Opera is a graphical Web browser available on several platforms.
-The desktop version runs on GNU/Linux and FreeBSD. Versions for
-Macintosh and Windows are also available.
-
-This is a Development version of Opera browser, for Stable version
-please see "opera" and for a old version based on
-Presto engine, please see a SlackBuild called "opera-legacy".
diff --git a/network/opera-developer/eula.html b/network/opera-developer/eula.html
deleted file mode 100644
index 339f72dd33..0000000000
--- a/network/opera-developer/eula.html
+++ /dev/null
@@ -1,287 +0,0 @@
- <!DOCTYPE html>
-<html lang="en">
- <head>
-
-
- <meta http-equiv="content-type" content="text/html; charset=utf-8">
- <meta name="viewport" content="initial-scale=1, width=device-width">
- <meta name="msvalidate.01" content="070C6E8E67D398B03BD8D8E9408A7045">
- <meta name="yandex-verification" content="780cc78194f8c462">
-
- <meta name="robots" content="noyaca, noodp">
-
- <meta name="description" content="EULA Opera for computers">
-
-
- <meta property="og:image" content="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
- <meta property="og:title" content="EULA Opera for computers | Opera">
- <meta property="og:url" content="https://www.opera.com/eula/computers">
- <meta property="og:description" content="EULA Opera for computers">
- <meta property="og:type" content="website">
-
-
- <title>EULA Opera for computers | Opera</title>
-
-
- <link rel="dns-prefetch" href="//www-static.operacdn.com">
- <link rel="apple-touch-icon" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="57x57" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="72x72" href="https://www-static.operacdn.com/static-heap/1d/1db0d666779ad5dc2bde071f1e64223cbc898079/opera-72.png">
- <link rel="apple-touch-icon" sizes="76x76" href="https://www-static.operacdn.com/static-heap/ca/cab9c89aeabd94f19da89e4aae5fac8077f40288/opera-76.png">
- <link rel="apple-touch-icon" sizes="114x114" href="https://www-static.operacdn.com/static-heap/3e/3eb93f40546e3dd463deb58e5a5b59ace97d8cff/opera-114.png">
- <link rel="apple-touch-icon" sizes="120x120" href="https://www-static.operacdn.com/static-heap/ab/ab7832e9d56e106488f110e871c46f774576b093/opera-120.png">
- <link rel="apple-touch-icon" sizes="144x144" href="https://www-static.operacdn.com/static-heap/5e/5ed11b7f90d7abe5af33392636f1e1fd40f8d40f/opera-144.png">
- <link rel="apple-touch-icon" sizes="152x152" href="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
-
-
- <meta name="application-name" content="EULA Opera for computers - Opera">
- <meta name="msapplication-TileColor" content="#FE1B2C">
- <meta name="msapplication-TileImage" content="https://www-static.operacdn.com/static-heap/6a/6aa0021764af934c8431d64fbf508a90ef30846d/opera-windows-144.png">
- <meta name="msapplication-square70x70logo" content="https://www-static.operacdn.com/static-heap/27/27d2de5f321780e481fcd3cf8e7a4800295ed5bd/opera-windows-70.png">
- <meta name="msapplication-square150x150logo" content="https://www-static.operacdn.com/static-heap/05/0556dff691cc07304d9f12204548ab63c3142368/opera-windows-150.png">
- <meta name="msapplication-wide310x150logo" content="https://www-static.operacdn.com/static-heap/42/42554ff6fabadcc22853c011b777923e56a2a94c/opera-windows-310-150.png">
- <meta name="msapplication-square310x310logo" content="https://www-static.operacdn.com/static-heap/99/9938c6221aba7d87edf2ec2795206bf92d4c3d29/opera-windows-310.png">
-
-
- <link rel="alternate" hreflang="id" href="https://www.opera.com/id/eula/computers" />
- <link rel="alternate" hreflang="ms" href="https://www.opera.com/ms/eula/computers" />
- <link rel="alternate" hreflang="cs" href="https://www.opera.com/cs/eula/computers" />
- <link rel="alternate" hreflang="da" href="https://www.opera.com/da/eula/computers" />
- <link rel="alternate" hreflang="de" href="https://www.opera.com/de/eula/computers" />
- <link rel="canonical" hreflang="en" href="https://www.opera.com/eula/computers" />
- <link rel="alternate" hreflang="es" href="https://www.opera.com/es/eula/computers" />
- <link rel="alternate" hreflang="es-419" href="https://www.opera.com/es-419/eula/computers" />
- <link rel="alternate" hreflang="tl" href="https://www.opera.com/tl/eula/computers" />
- <link rel="alternate" hreflang="fr" href="https://www.opera.com/fr/eula/computers" />
- <link rel="alternate" hreflang="it" href="https://www.opera.com/it/eula/computers" />
- <link rel="alternate" hreflang="hu" href="https://www.opera.com/hu/eula/computers" />
- <link rel="alternate" hreflang="nl" href="https://www.opera.com/nl/eula/computers" />
- <link rel="alternate" hreflang="no" href="https://www.opera.com/no/eula/computers" />
- <link rel="alternate" hreflang="pl" href="https://www.opera.com/pl/eula/computers" />
- <link rel="alternate" hreflang="pt" href="https://www.opera.com/pt/eula/computers" />
- <link rel="alternate" hreflang="pt-br" href="https://www.opera.com/pt-br/eula/computers" />
- <link rel="alternate" hreflang="ro" href="https://www.opera.com/ro/eula/computers" />
- <link rel="alternate" hreflang="sk" href="https://www.opera.com/sk/eula/computers" />
- <link rel="alternate" hreflang="fi" href="https://www.opera.com/fi/eula/computers" />
- <link rel="alternate" hreflang="sv" href="https://www.opera.com/sv/eula/computers" />
- <link rel="alternate" hreflang="vi" href="https://www.opera.com/vi/eula/computers" />
- <link rel="alternate" hreflang="tr" href="https://www.opera.com/tr/eula/computers" />
- <link rel="alternate" hreflang="el" href="https://www.opera.com/el/eula/computers" />
- <link rel="alternate" hreflang="bg" href="https://www.opera.com/bg/eula/computers" />
- <link rel="alternate" hreflang="ru" href="https://www.opera.com/ru/eula/computers" />
- <link rel="alternate" hreflang="uk" href="https://www.opera.com/uk/eula/computers" />
- <link rel="alternate" hreflang="he" href="https://www.opera.com/he/eula/computers" />
- <link rel="alternate" hreflang="ar" href="https://www.opera.com/ar/eula/computers" />
- <link rel="alternate" hreflang="hi" href="https://www.opera.com/hi/eula/computers" />
- <link rel="alternate" hreflang="th" href="https://www.opera.com/th/eula/computers" />
- <link rel="alternate" hreflang="ko" href="https://www.opera.com/ko/eula/computers" />
- <link rel="alternate" hreflang="zh-cn" href="https://www.opera.com/zh-cn/eula/computers" />
- <link rel="alternate" hreflang="zh-tw" href="https://www.opera.com/zh-tw/eula/computers" />
- <link rel="alternate" hreflang="ja" href="https://www.opera.com/ja/eula/computers" />
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/latin_latinext-634dce27.css">
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/header-footer-8618b3a3.css">
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/opera2-3353345c.css">
-
-
-
-
- </head>
- <body>
- <!-- Google Tag Manager -->
-
- <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-Q5SW"
- height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
- <script>
- (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
- new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
- j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
- '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
- })(window,document,'script','dataLayer','GTM-Q5SW');
- </script>
-
-<!-- End Google Tag Manager -->
-
- <header id="header" class="ns--hf">
- <div class="hf--primary">
- <div class="hf--width-holder">
- <div class="hf--main-nav" role="navigation">
- <a class="hf--brand" href="/">
- <img src="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png" srcset="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png 1x, https://www-static.operacdn.com/static-heap/28/2820d98042080cc51dea518980d80293bf732770/logo-header-opera2x.png 2x" alt="Opera">
- </a>
- <div class="hf--menu">
- <input id="hf--menu-switcher" class="hf--hide" type="checkbox">
- <label class="hf--menu-switcher" for="hf--menu-switcher"></label>
- <div>
- <div>
- <ul class="hf--main-nav-items" role="menu">
-
- <li><a href="/computer" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Computer browsers</a></li>
- <li><a href="/mobile" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Mobile apps</a></li>
-
-
- <li class="hf--menu-opposite">
- <a href="//blogs.opera.com/" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Blogs</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-
-
-
-
- </header>
-
-
-
- <main class="page">
- <div class="page--content">
-
-
-
-
-
-
-
-
-<section class="top-padding--oneline">
- <div class="content-width"><h1>End User License Agreement</h1>
-<h2>Opera for Computers</h2>
-<p>Last Updated: December 8, 2017</p><p>This end user license agreement (“EULA”) governs your download and/or use of the executable code for the Opera for Computers desktop software application, including any update or upgrade thereto (“Software”). This EULA forms a binding contract between you and Opera Software AS, a Norwegian company with an address at P.O. Box 4214 Nydalen, NO-0401 Oslo, Norway (“Opera”).</p><h3>Terms &amp; Conditions</h3>
-<p><b>1. This is a contract.</b>&nbsp;This EULA constitutes a contract between you and Opera. You may not use the Software if you do not accept the terms in this EULA. By downloading and/or using the Software, you agree to be bound by all the terms and conditions set forth in this EULA. If you are under thirteen (13) years of age, or at least thirteen (13) years of age but a minor where you live, you must have your parent or legal guardian accept this EULA on your behalf and approve your use of the Software.</p><p><b>2. You are only granted a limited license to the Software.</b>&nbsp;Subject to the terms and conditions of this EULA, Opera hereby grants you a personal, limited, non-exclusive, non-transferable, non-sublicensable license to:</p><p>(A) use the executable code version of the Software solely as installed on your personal computer; and</p><p>(B) reproduce and distribute the Software solely as included in an application repository for a desktop open source operating system distribution PROVIDED THAT in all cases the Software is distributed: (i) without modification; (ii) free of charge to end-users; and (iii) with a copy of this EULA. Distribution for embedded open source operating systems is not permitted. For the avoidance of doubt, the Software must be distributed without modification (including as to the default search engine(s) in the Software settings), both at the time of distribution as well as after the Software is installed.</p><p>You may only use the Software as expressly authorized in this Section 2.</p><p><b>3. You must respect our rights in the Software.</b>&nbsp;Unless expressly permitted by law, you may not copy, decompile, reverse engineer, disassemble, attempt to derive the source code of, modify, or create derivative works of the Software. You may not remove, obscure, or alter any copyright notice or other proprietary rights notices affixed to or contained within the Software. You may not separate the component programs of the Software for use on different computers or sublicense, lease, rent, loan, or distribute the Software to any third party. You may not permit, direct or authorize any third party to take any action with respect to the Software which is inconsistent with the terms set forth in this EULA.</p><p><b>4. The Software contains our valuable intellectual property.</b>&nbsp;You acknowledge and agree that the Software, including its sequence, structure, organization, source code and applicable documentation, contains valuable trade secrets and other intellectual property of Opera and its suppliers. The Software is licensed and not sold to you, and no title or ownership to such Software or the intellectual property rights embodied therein is granted to you. The Software is the exclusive property of Opera and its suppliers, and all rights in and to the Software not expressly granted to you in this Agreement are reserved. Nothing in this EULA will be deemed to grant, by implication, estoppel or otherwise, a license under any existing or future patents of Opera, except to the extent necessary for you to use the Software as expressly permitted under this EULA. You acknowledge and agree that any actual or threatened breach of this EULA will constitute immediate, irreparable harm to Opera for which monetary damages would be an inadequate remedy, and that injunctive relief is an appropriate remedy for any such breach or violation.</p><p><b>5. Components from third parties may be delivered along with the Software.</b>&nbsp;The Software is delivered along with certain software components provide by third parties (“Third Party Software”). Opera shall not be responsible for any such Third-Party Software. Third-Party Software, particularly open source software, may be subject to separate license terms included with, or contained in the setup installation segments of such Third-Party Software. The terms set forth in this EULA do not apply to Third-Party Software to the extent they are inconsistent with such Third-Party Software licenses. This EULA governs your use of the Software in executable form. Source code for any open source Third-Party Software delivered along with the Software can be obtained at&nbsp;<a href="http://sourcecode.opera.com" target="_self">http://sourcecode.opera.com</a>&nbsp;or by sending an email message to&nbsp;<a href="mailto:opensource&#x0040;opera.com" target="_self">opensource&#x0040;opera.com</a>.</p><p><b>6. The Software may provide for access to additional services.</b> Various services may be offered where available via or as integrated into the Software (“Services”). By using any such Services, you agreed to the terms of service at&nbsp;<a href="https://www.opera.com/terms" target="_self">https://www.opera.com/terms</a> (“Terms of Service”). The Terms of Service are incorporated into this EULA by this reference. As is more fully explained in the Terms of Service, some Services are offered by Opera, others by third parties (which may be subject to separate terms – please refer to the Terms of Service for more information). Opera reserves the right at any time and from time to time to modify or discontinue, temporarily or permanently, the Services (or any part thereof) with or without notice. You agree that Opera shall not be liable to you or to any third party for any modification, suspension or discontinuance of the Services.</p><p><b>7. Your privacy is important to us.</b>&nbsp;Opera takes the matters of protection and security of its users’ information very seriously and will treat any and all such information in accordance with our privacy statement, which is currently posted at&nbsp;<a href="https://www.opera.com/privacy" target="_self">https://www.opera.com/privacy</a>&nbsp;(“Privacy Statement”). The Privacy Statement is incorporated into this EULA by this reference. You agree to the use of your data in accordance with Opera’s Privacy Statement.</p><p><b>8. Your license to use the Software terminates if you breach this EULA.</b>&nbsp;This EULA will commence upon your download of the Software and continue in perpetuity unless terminated earlier as provided herein. This EULA will immediately terminate upon your breach of any of the terms or conditions set forth herein. Upon the termination of the EULA, you will discontinue all use of the Software, promptly destroy or have destroyed the Software and any copies thereof, and, upon request by Opera, certify in writing that such destruction has taken place. These remedies are cumulative and in addition to any other remedies which may be available. Section 1, as well as Sections 3 through 14 of this EULA shall survive termination.</p><p><b>9. The Software is provided without any warranties or guarantees.</b>&nbsp;THE SOFTWARE IS PROVIDED “AS IS”, AND OPERA DISCLAIMS ALL WARRANTIES WITH REGARD TO THE SOFTWARE WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR USE, SATISFACTORY QUALITY, OR QUIET ENJOYMENT. OPERA DOES NOT WARRANT THAT THE USE OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR FREE OR THAT THE SOFTWARE DOES NOT CONTAIN ANY VIRUSES. THIS WARRANTY DISCLAIMER IS A FUNDAMENTAL ELEMENT OF THE BASIS OF THE BARGAIN BETWEEN YOU AND OPERA. OPERA WOULD NOT PROVIDE THE SOFTWARE ABSENT SUCH DISCLAIMER. NO REPRESENTATIONS OR WARRANTIES ARE MADE BY ANY OF OPERA’S CUSTOMERS OR SUPPLIERS UNDER OR BY VIRTUE OF THIS AGREEMENT. IF YOU ARE DISSATISFIED WITH ANY PORTION OF THE SOFTWARE, OR WITH ANY OF THESE TERMS, YOUR SOLE AND EXCLUSIVE REMEDY IS TO DISCONTINUE USING THE SOFTWARE.</p><p><b>10. Opera is not liable for any damages you may incur.</b>&nbsp;IN NO EVENT SHALL OPERA, ITS AFFILIATES, OR THEIR RESPECTIVE SUPPLIERS OR CUSTOMERS BE LIABLE FOR ANY INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR INDIRECT DAMAGES OF ANY KIND (INCLUDING WITHOUT LIMITATION DAMAGES FOR INTERRUPTION OF BUSINESS, LOST DATA, LOST PROFITS, OR THE LIKE) REGARDLESS OF THE FORM OF ACTION, WHETHER IN CONTRACT, TORT (INCLUDING WITHOUT LIMITATION NEGLIGENCE), PRODUCT LIABILITY, OR OTHER THEORY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO EVENT WILL THE CUMULATIVE LIABILITY OF OPERA ARISING OUT OF OR RELATED TO THIS AGREEMENT EXCEED THE AMOUNT PAID TO OPERA IN RESPECT OF THE SOFTWARE GIVING RISE TO THE CLAIM OR, IF NO FEES WERE PAID, THEN FIVE HUNDRED EUROS. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THE FOREGOING EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. THIS LIMITATION OF LIABILITY WILL APPLY NOTWITHSTANDING THE FAILURE OF ESSENTIAL PURPOSE OF ANY LIMITED REMEDY SET FORTH HEREIN. THIS LIMITATION OF LIABILITY IS A FUNDAMENTAL ELEMENT OF THE BASIS OF THE BARGAIN BETWEEN YOU AND OPERA. OPERA WOULD NOT PROVIDE THE SOFTWARE TO YOU ABSENT SUCH LIMITATION.</p><p><b>11. This contract is based on Norwegian law.</b>&nbsp;This EULA will be governed by the laws of Norway without giving effect to any conflicts of law principles that may require the application of the laws of a different country. The United Nations Convention on Contracts for the International Sale of Goods does not apply to this Agreement. All actions or proceedings arising under or related to this Agreement must be brought in the Oslo City Court, and you hereby agree to irrevocably submit to the exclusive jurisdiction and venue of any such court in all such actions or proceedings. Notwithstanding this, you agree that Opera shall still be allowed to apply for injunctive remedies (or an equivalent type of urgent legal relief) in any jurisdiction. If any provision of this EULA is determined by a court of competent jurisdiction to be invalid, illegal, or unenforceable, the remaining provisions of this EULA shall not be affected or impaired thereby.</p><p><b>12. Opera may modify these Terms.</b>&nbsp;Opera may update the terms of this EULA, the Privacy Statement or the Terms of Service. The current version of this EULA is posted at&nbsp;<a href="https://www.opera.com/eula/computers" target="_self">https://www.opera.com/eula/computers</a>, the latest version of the Privacy Statement is posted at&nbsp;<a href="https://www.opera.com/privacy" target="_self">https://www.opera.com/privacy</a>, and the Terms of Service are posted at&nbsp;<a href="https://www.opera.com/terms" target="_self">https://www.opera.com/terms</a>. It is your responsibility to remain informed of any changes as you are bound by the latest version of the EULA, Privacy Statement and Terms of Service.</p><p><b>13. General.</b>&nbsp;You acknowledge and agree that the Software may contain cryptographic functionality the export of which may be restricted under applicable export control law. You will comply with all applicable laws and regulations in your activities with regard to the Software. You will not export or re-export the Software in violation of such laws or regulations or without all required licenses and authorizations. You may not assign or transfer this contract without obtaining Opera’s prior written consent, and any purported assignment or transfer in violation of this restriction will be null and void.</p></div>
-</section>
-
- </div>
- </main>
-
-
- <footer class="ns--hf">
- <div class="hf--top-side">
- <div class="hf--width-holder">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Select your language:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/eula/computers">Bahasa Indonesia</option><option data-name="ms" value="/ms/eula/computers">Bahasa Melayu</option><option data-name="cs" value="/cs/eula/computers">Čeština</option><option data-name="da" value="/da/eula/computers">Dansk</option><option data-name="de" value="/de/eula/computers">Deutsch</option><option data-name="en" value="/eula/computers" selected>English</option><option data-name="es" value="/es/eula/computers">Español</option><option data-name="es-419" value="/es-419/eula/computers">Español (Latinoamérica)</option><option data-name="tl" value="/tl/eula/computers">Filipino</option><option data-name="fr" value="/fr/eula/computers">Français</option><option data-name="it" value="/it/eula/computers">Italiano</option><option data-name="hu" value="/hu/eula/computers">Magyar</option><option data-name="nl" value="/nl/eula/computers">Nederlands</option><option data-name="no" value="/no/eula/computers">Norsk (bokmål)</option><option data-name="pl" value="/pl/eula/computers">Polski</option><option data-name="pt" value="/pt/eula/computers">Português</option><option data-name="pt-br" value="/pt-br/eula/computers">Português (Brasil)</option><option data-name="ro" value="/ro/eula/computers">Română</option><option data-name="sk" value="/sk/eula/computers">Slovenčina</option><option data-name="fi" value="/fi/eula/computers">Suomi</option><option data-name="sv" value="/sv/eula/computers">Svenska</option><option data-name="vi" value="/vi/eula/computers">Tiếng Việt</option><option data-name="tr" value="/tr/eula/computers">Türkçe</option><option data-name="el" value="/el/eula/computers">Ελληνικά</option><option data-name="bg" value="/bg/eula/computers">Български</option><option data-name="ru" value="/ru/eula/computers">Русский</option><option data-name="uk" value="/uk/eula/computers">Українська</option><option data-name="he" value="/he/eula/computers">עברית</option><option data-name="ar" value="/ar/eula/computers">العربية</option><option data-name="hi" value="/hi/eula/computers">हिंदी</option><option data-name="th" value="/th/eula/computers">ไทย</option><option data-name="ko" value="/ko/eula/computers">한국어</option><option data-name="zh-cn" value="/zh-cn/eula/computers">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/eula/computers">中文(台灣)</option><option data-name="ja" value="/ja/eula/computers">日本語</option> </select>
- </span>
- </div> <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">Top</a>
- </p> </div>
- <div class="hf--social">
- <div class="hf--width-holder">
- <p class="hf--social-headline hf--hide">Follow Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- </div>
- </div>
- <div class="hf--links">
- <div class="hf--width-holder">
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/download">Download Opera</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/computer">Computer browsers</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/mobile">Mobile apps</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><a class="hf--text-uppercase" href="//www.opera.com/help">Help &amp; support</a></li>
- <li><a class="hf--text-uppercase" href="//blogs.opera.com/">Opera blogs</a></li>
- <li><a class="hf--text-uppercase last-link" href="//forums.opera.com">Opera forums</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://dev.opera.com/">Dev.Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/beta">Beta version</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/neon">Opera Neon</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><strong class="hf--text-uppercase">Services</strong></li>
- <li><a class="hf--text-regular" href="https://addons.opera.com">Add-ons</a></li>
- <li><a class="hf--text-regular" href="https://auth.opera.com/account/login">Opera account</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://www.operasoftware.com">Opera B2B</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/operators">Operator solutions</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/mobile-oems">OEM solutions</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/content-partners">Partner with Opera</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/blog">Business blog</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/about">About Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/jobs">Jobs</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/investors">Investors</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/press">Press info</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/contact">Contact us</a></li>
- </ul>
- </div>
- </div>
- <div class="hf--bottom-side hf--width-holder">
- <div class="hf--bottom-wrapper">
- <div class="hf--social">
- <p class="hf--social-headline hf--hide">Follow Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- <div class="hf--copyrights">
- <ul class="hf--copyrights-items">
- <li><strong>&copy; Opera Software</strong></li>
- <li><a href="https://www.opera.com/privacy">Privacy</a></li>
- <li><a href="https://www.opera.com/terms">Terms of Use</a></li>
- </ul>
- </div>
- <div class="hf--controls">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Select your language:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/eula/computers">Bahasa Indonesia</option><option data-name="ms" value="/ms/eula/computers">Bahasa Melayu</option><option data-name="cs" value="/cs/eula/computers">Čeština</option><option data-name="da" value="/da/eula/computers">Dansk</option><option data-name="de" value="/de/eula/computers">Deutsch</option><option data-name="en" value="/eula/computers" selected>English</option><option data-name="es" value="/es/eula/computers">Español</option><option data-name="es-419" value="/es-419/eula/computers">Español (Latinoamérica)</option><option data-name="tl" value="/tl/eula/computers">Filipino</option><option data-name="fr" value="/fr/eula/computers">Français</option><option data-name="it" value="/it/eula/computers">Italiano</option><option data-name="hu" value="/hu/eula/computers">Magyar</option><option data-name="nl" value="/nl/eula/computers">Nederlands</option><option data-name="no" value="/no/eula/computers">Norsk (bokmål)</option><option data-name="pl" value="/pl/eula/computers">Polski</option><option data-name="pt" value="/pt/eula/computers">Português</option><option data-name="pt-br" value="/pt-br/eula/computers">Português (Brasil)</option><option data-name="ro" value="/ro/eula/computers">Română</option><option data-name="sk" value="/sk/eula/computers">Slovenčina</option><option data-name="fi" value="/fi/eula/computers">Suomi</option><option data-name="sv" value="/sv/eula/computers">Svenska</option><option data-name="vi" value="/vi/eula/computers">Tiếng Việt</option><option data-name="tr" value="/tr/eula/computers">Türkçe</option><option data-name="el" value="/el/eula/computers">Ελληνικά</option><option data-name="bg" value="/bg/eula/computers">Български</option><option data-name="ru" value="/ru/eula/computers">Русский</option><option data-name="uk" value="/uk/eula/computers">Українська</option><option data-name="he" value="/he/eula/computers">עברית</option><option data-name="ar" value="/ar/eula/computers">العربية</option><option data-name="hi" value="/hi/eula/computers">हिंदी</option><option data-name="th" value="/th/eula/computers">ไทย</option><option data-name="ko" value="/ko/eula/computers">한국어</option><option data-name="zh-cn" value="/zh-cn/eula/computers">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/eula/computers">中文(台灣)</option><option data-name="ja" value="/ja/eula/computers">日本語</option> </select>
- </span>
- </div> <div class="hf--nav">
- <div class="hf--width-holder">
- <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">Top</a>
- </p> </div>
- </div>
- </div>
- </div>
- </div>
- </footer>
- <script src="https://www-static.operacdn.com/static-heap/4d/4d7f76c8987efba7e997c2cead49c858f7966ebb/linkfeedback.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/30/305ba43f6e26911dcc3a6c564473af33b85c804d/browserinfo.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/98/98f88227912fc67b44662e8392f3779e4e6ccab5/opera.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/3d/3d254f1aec48f4b9990a19c04c7355d29c995fd5/promoassets.js"></script>
- </body>
-</html> \ No newline at end of file
diff --git a/network/opera-developer/opera-developer.SlackBuild b/network/opera-developer/opera-developer.SlackBuild
deleted file mode 100644
index c4a86b95ec..0000000000
--- a/network/opera-developer/opera-developer.SlackBuild
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/bash
-#
-# Slackware build script for opera-developer.
-#
-# Copyright 2016-2022 Edinaldo P. Silva, Rio de Janeiro, 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=opera-developer
-VERSION=${VERSION:-91.0.4498.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}
-
-set -e
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
- BITS="i386"
- echo "This package is currently only available for 64bit."
- exit 1
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
- BITS="i386"
- echo "This package is currently only available for 64bit."
- exit 1
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
- BITS="amd64"
-else
- echo "Package for $(uname -m) architecture is not available."
- exit 1
-fi
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-${VERSION}
-mkdir -p $PRGNAM-${VERSION}
-ar p $CWD/${PRGNAM}_${VERSION}_${BITS}.deb data.tar.xz | xz -d | tar -xvf- \
- --transform="s,/lib/.*-linux-gnu,/lib$LIBDIRSUFFIX," \
- --exclude="./usr/share/lintian" --exclude="./usr/share/menu" -C $PRGNAM-${VERSION}
-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 {} \;
-
-mv usr $PKG
-
-mv $PKG/usr/share/doc $PKG/usr/
-mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/${PRGNAM}-$VERSION
-cd $PKG/usr/doc/${PRGNAM}-$VERSION/
-gzip -dc changelog.gz > ChangeLog; rm -f changelog.gz;
-
-install -Dm644 copyright $PKG/usr/share/licenses/$PRGNAM/copyright
-install -Dm644 $CWD/eula.html $PKG/usr/share/licenses/$PRGNAM/eula.html
-install -Dm644 $CWD/terms.html $PKG/usr/share/licenses/$PRGNAM/terms.html
-install -Dm644 $CWD/privacy.html $PKG/usr/share/licenses/$PRGNAM/privacy.html
-
-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/opera-developer/opera-developer.info b/network/opera-developer/opera-developer.info
deleted file mode 100644
index a1db72a1e1..0000000000
--- a/network/opera-developer/opera-developer.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opera-developer"
-VERSION="91.0.4498.0"
-HOMEPAGE="https://www.opera.com/"
-DOWNLOAD="UNSUPPORTED"
-MD5SUM=""
-DOWNLOAD_x86_64="https://get.geo.opera.com/pub/opera-developer/91.0.4498.0/linux/opera-developer_91.0.4498.0_amd64.deb"
-MD5SUM_x86_64="0592d290acb004da28ecbc0e6ccc1344"
-REQUIRES=""
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
diff --git a/network/opera-developer/privacy.html b/network/opera-developer/privacy.html
deleted file mode 100644
index 2d4a2e52d7..0000000000
--- a/network/opera-developer/privacy.html
+++ /dev/null
@@ -1,353 +0,0 @@
- <!DOCTYPE html>
-<html lang="it">
- <head>
-
-
- <meta http-equiv="content-type" content="text/html; charset=utf-8">
- <meta name="viewport" content="initial-scale=1, width=device-width">
- <meta name="msvalidate.01" content="070C6E8E67D398B03BD8D8E9408A7045">
- <meta name="yandex-verification" content="780cc78194f8c462">
-
-
- <meta name="robots" content="noindex, noyaca, noodp">
-
- <meta name="description" content="Privacy Statement">
-
-
- <meta property="og:image" content="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
- <meta property="og:title" content="Privacy Statement | Opera">
- <meta property="og:url" content="https://www.opera.com/it/privacy">
- <meta property="og:description" content="Privacy Statement">
- <meta property="og:type" content="website">
-
-
- <title>Privacy Statement | Opera</title>
-
-
- <link rel="dns-prefetch" href="//www-static.operacdn.com">
- <link rel="apple-touch-icon" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="57x57" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="72x72" href="https://www-static.operacdn.com/static-heap/1d/1db0d666779ad5dc2bde071f1e64223cbc898079/opera-72.png">
- <link rel="apple-touch-icon" sizes="76x76" href="https://www-static.operacdn.com/static-heap/ca/cab9c89aeabd94f19da89e4aae5fac8077f40288/opera-76.png">
- <link rel="apple-touch-icon" sizes="114x114" href="https://www-static.operacdn.com/static-heap/3e/3eb93f40546e3dd463deb58e5a5b59ace97d8cff/opera-114.png">
- <link rel="apple-touch-icon" sizes="120x120" href="https://www-static.operacdn.com/static-heap/ab/ab7832e9d56e106488f110e871c46f774576b093/opera-120.png">
- <link rel="apple-touch-icon" sizes="144x144" href="https://www-static.operacdn.com/static-heap/5e/5ed11b7f90d7abe5af33392636f1e1fd40f8d40f/opera-144.png">
- <link rel="apple-touch-icon" sizes="152x152" href="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
-
-
- <meta name="application-name" content="Privacy Statement - Opera">
- <meta name="msapplication-TileColor" content="#FE1B2C">
- <meta name="msapplication-TileImage" content="https://www-static.operacdn.com/static-heap/6a/6aa0021764af934c8431d64fbf508a90ef30846d/opera-windows-144.png">
- <meta name="msapplication-square70x70logo" content="https://www-static.operacdn.com/static-heap/27/27d2de5f321780e481fcd3cf8e7a4800295ed5bd/opera-windows-70.png">
- <meta name="msapplication-square150x150logo" content="https://www-static.operacdn.com/static-heap/05/0556dff691cc07304d9f12204548ab63c3142368/opera-windows-150.png">
- <meta name="msapplication-wide310x150logo" content="https://www-static.operacdn.com/static-heap/42/42554ff6fabadcc22853c011b777923e56a2a94c/opera-windows-310-150.png">
- <meta name="msapplication-square310x310logo" content="https://www-static.operacdn.com/static-heap/99/9938c6221aba7d87edf2ec2795206bf92d4c3d29/opera-windows-310.png">
-
-
- <link rel="alternate" hreflang="id" href="https://www.opera.com/id/privacy" />
- <link rel="alternate" hreflang="ms" href="https://www.opera.com/ms/privacy" />
- <link rel="alternate" hreflang="cs" href="https://www.opera.com/cs/privacy" />
- <link rel="alternate" hreflang="da" href="https://www.opera.com/da/privacy" />
- <link rel="alternate" hreflang="de" href="https://www.opera.com/de/privacy" />
- <link rel="alternate" hreflang="en" href="https://www.opera.com/privacy" />
- <link rel="alternate" hreflang="es" href="https://www.opera.com/es/privacy" />
- <link rel="alternate" hreflang="es-419" href="https://www.opera.com/es-419/privacy" />
- <link rel="alternate" hreflang="tl" href="https://www.opera.com/tl/privacy" />
- <link rel="alternate" hreflang="fr" href="https://www.opera.com/fr/privacy" />
- <link rel="canonical" hreflang="it" href="https://www.opera.com/it/privacy" />
- <link rel="alternate" hreflang="hu" href="https://www.opera.com/hu/privacy" />
- <link rel="alternate" hreflang="nl" href="https://www.opera.com/nl/privacy" />
- <link rel="alternate" hreflang="no" href="https://www.opera.com/no/privacy" />
- <link rel="alternate" hreflang="pl" href="https://www.opera.com/pl/privacy" />
- <link rel="alternate" hreflang="pt" href="https://www.opera.com/pt/privacy" />
- <link rel="alternate" hreflang="pt-br" href="https://www.opera.com/pt-br/privacy" />
- <link rel="alternate" hreflang="ro" href="https://www.opera.com/ro/privacy" />
- <link rel="alternate" hreflang="sk" href="https://www.opera.com/sk/privacy" />
- <link rel="alternate" hreflang="fi" href="https://www.opera.com/fi/privacy" />
- <link rel="alternate" hreflang="sv" href="https://www.opera.com/sv/privacy" />
- <link rel="alternate" hreflang="vi" href="https://www.opera.com/vi/privacy" />
- <link rel="alternate" hreflang="tr" href="https://www.opera.com/tr/privacy" />
- <link rel="alternate" hreflang="el" href="https://www.opera.com/el/privacy" />
- <link rel="alternate" hreflang="bg" href="https://www.opera.com/bg/privacy" />
- <link rel="alternate" hreflang="ru" href="https://www.opera.com/ru/privacy" />
- <link rel="alternate" hreflang="uk" href="https://www.opera.com/uk/privacy" />
- <link rel="alternate" hreflang="he" href="https://www.opera.com/he/privacy" />
- <link rel="alternate" hreflang="ar" href="https://www.opera.com/ar/privacy" />
- <link rel="alternate" hreflang="hi" href="https://www.opera.com/hi/privacy" />
- <link rel="alternate" hreflang="th" href="https://www.opera.com/th/privacy" />
- <link rel="alternate" hreflang="ko" href="https://www.opera.com/ko/privacy" />
- <link rel="alternate" hreflang="zh-cn" href="https://www.opera.com/zh-cn/privacy" />
- <link rel="alternate" hreflang="zh-tw" href="https://www.opera.com/zh-tw/privacy" />
- <link rel="alternate" hreflang="ja" href="https://www.opera.com/ja/privacy" />
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/latin_latinext-634dce27.css">
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/header-footer-8618b3a3.css">
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/opera2-3353345c.css">
-
-
-
-
- </head>
- <body>
- <!-- Google Tag Manager -->
-
- <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-Q5SW"
- height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
- <script>
- (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
- new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
- j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
- '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
- })(window,document,'script','dataLayer','GTM-Q5SW');
- </script>
-
-<!-- End Google Tag Manager -->
-
- <header id="header" class="ns--hf">
- <div class="hf--primary">
- <div class="hf--width-holder">
- <div class="hf--main-nav" role="navigation">
- <a class="hf--brand" href="/it">
- <img src="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png" srcset="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png 1x, https://www-static.operacdn.com/static-heap/28/2820d98042080cc51dea518980d80293bf732770/logo-header-opera2x.png 2x" alt="Opera">
- </a>
- <div class="hf--menu">
- <input id="hf--menu-switcher" class="hf--hide" type="checkbox">
- <label class="hf--menu-switcher" for="hf--menu-switcher"></label>
- <div>
- <div>
- <ul class="hf--main-nav-items" role="menu">
-
- <li><a href="/it/computer" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Browser per PC</a></li>
- <li><a href="/it/mobile" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">App per dispositivi mobili</a></li>
-
-
- <li class="hf--menu-opposite">
- <a href="//blogs.opera.com/" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Blog</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-
-
-
-
- </header>
-
-
-
- <main lang="en" class="page">
- <div class="page--content">
-
-
-
-
-
-
-
-
-<section class="top-padding--none">
- <div class="content-width"><h1>Privacy Statement</h1>
-<p><i>Updated May 6, 2016</i><a id="top"></a>
-</p><h3>Summary</h3>
-<p>We at Opera Software AS (&quot;Opera&quot;) take your privacy seriously. This privacy statement explains what data we collect, how we store and transfer it and how we use it. The exact set of the data we collect, its purpose and your opt-out choices depend on the product or service you use. Please refer to the relevant product or service sections of this privacy statement to learn more specific details.</p><p>Some of the data we collect, either individually or aggregated, may be considered personal. We treat this data in a special way, as required by law.</p><p>We'll always honor your decisions for how your data is used. We have safeguards in place to protect your data from loss, misuse, and unauthorized access, disclosure, alteration, or destruction.</p><p>When we post changes to this privacy statement, we will include the date when the statement was last updated. If we significantly change this statement or how we use your personal information, we will notify you either by prominently posting a notice prior to implementing the change or by sending you a notification directly. We encourage you to respect review this statement periodically.</p><h3>Why do we collect data?</h3>
-<p>We only process your data for purposes that are objectively justified by our products and services. We process this data with respect to your fundamental right to privacy, including the need to protect personal integrity and private life and to ensure that your personal data is of adequate quality. Unless otherwise stated, we determine the purposes for and manners in which your data is collected (in legalese, we act as a &quot;data controller&quot; regarding personal data).</p><p>We collect data to:</p>
-<ul>
-
-<li>Improve, debug, and maintain Opera products and services</li>
-
-<li>Study and personalize user experiences</li>
-
-<li>Fulfill legal requirements</li>
-
-<li>Conduct business analysis and research, and marketing campaigns</li>
-
-<li>Ensure better security and fraud protection</li>
-
-</ul>
-<p>We may also use your data to send personalized information regarding updates, upgrades, enhancements, surveys, recommendations and/or advertisements, if we believe these are relevant for you.</p><h3>What data do we collect?</h3>
-<p>The information we collect may include: personal data, for example your name, email, IP-address, location; and non-personal technical data, for example who manufactured your device, your screen's resolution, your mobile operator's region and code. A complete list of the data we collect and purpose of collection may vary between our products and services. You can find detailed descriptions in the product/service-related sections below.</p><h3>How do we collect data?</h3>
-<p>Generally, we collect data:</p>
-<ul>
-
-<li>When you provide it explicitly to us; for example, when you submit a form on our websites</li>
-
-<li>When you install and run our products, use our services, or visit our websites</li>
-
-<li>When third parties share information with us</li>
-
-</ul>
-<p>Some products may require your personal data to function properly. Wherever technically possible, we'll ask for your consent to collect your personal data and offer you the choice to opt-out. Please read product-specific information to learn how to opt-out.</p><p>When we collect your data, we associate it with a unique ID and a unique device ID that are generated when you install an Opera product or begin using one of our services. These identifiers are anonymized and cannot be linked to you as an individual person. We also take measures to remove any possible connections between these IDs and other types of personal data.</p><p>To collect information automatically, we may use <a href="https://en.wikipedia.org/wiki/HTTP_cookie" target="_self">cookies</a>, <a href="https://en.wikipedia.org/wiki/Web_beacon" target="_self">web beacons</a>, our own data-collection tools or various third-party services.</p><p>Some third-party sites may monitor data traffic from our products and services, such as numbers of hits and the search terms used. We do not make available any personally identifiable information to these services.</p><p>This privacy statement does not cover third-party apps you access and use through our products and services, nor does it cover links to other websites. We do not control the privacy and security practices and policies of these third parties and their sites. We encourage you to read the privacy statements of the third-party apps and websites you use.</p><h3>How do we protect your data?</h3>
-<p>We treat your personal data as required by law. We are a Norwegian company and we follow Norwegian data-security laws as well as other national legislation, as needed. We require that our suppliers successfully pass security assessments and prove their compliance with applicable laws and industry standards.</p><p>Only a limited number of Opera employees have access to the data we collect. We review and update our working procedures regularly to improve your privacy and ensure that our internal policies are followed. We immediately correct any non-conformance regarding these policies.</p><p>Our commitment to your privacy does not extend to third-party products and services you may access from Opera products and services. We encourage you to read the privacy statements of the third-party products and services you use.</p><h3>How do we share your data?</h3>
-<p>We may share your data:</p>
-<ul>
-
-<li>To government bodies and law enforcement agencies to comply with the law, for example in judicial proceedings, by court order or other legal process</li>
-
-<li>To third parties (including professional advisors) to enforce or defend our legal rights, including our terms and conditions</li>
-
-<li>To a third-party purchaser or seller (including professional advisors) in connection with a corporate event such as a merger, business acquisition or insolvency situation</li>
-
-<li>As described elsewhere in this statement</li>
-
-</ul>
-<p>Some of our products and services include third-party technology or code that may use the collected data. We may share anonymized and/or aggregated sets of data with our partners and other trusted third parties.</p><p>Because we are an international company with data-centers around the world, your data may be transferred to countries which do not have the same level of data protection laws as those in the country where you are located. We will ensure that your data is protected to a strict standard.</p><h3>What else should I know?</h3>
-<p>We aim to be transparent as to what data we collect and how we use it. Your rights are not limited to consent and opt-out choices only. If you've provided personal information to us, you may change or modify this information at any time.</p><p>We retain personal data only as long as necessary for processing it in accordance with the purposes described in this statement, or as otherwise necessary to comply with applicable laws. When your data is no longer necessary or relevant for our purposes, or required by applicable laws, we take steps to have it deleted, aggregated or made anonymous.</p><p>You can find out if we hold any personal data about you by contacting us. You may be asked to prove your identification so that we can verify who is making the request. If we hold information about you, you can ask us to correct any mistakes and delete any excessive information.</p><h3>Contact information</h3>
-<p>If you have any questions about this statement or any privacy issues regarding Opera and our products or services, we can be reached&nbsp;by post at:</p><p>
-Opera Software AS<br />
-P.O. Box 4214 Nydalen<br />
-NO-0401 OSLO<br />Norway</p><h1>Privacy policies</h1>
-<p>For privacy policies and questions specifically related to the Opera products and services, please see the appropriate section below:</p>
-<ul>
-
-<li><a href="/it/privacy/computers" target="_self">Opera for computers</a></li>
-
-<li><a href="/it/privacy/operaforandroid" target="_self">Opera for Android</a></li>
-
-<li><a href="/it/privacy/mini" target="_self">Opera Mini</a></li>
-
-<li><a href="/it/privacy/mini/android" target="_self">Opera Mini for Android</a></li>
-
-<li><a href="/it/privacy/mini/ios" target="_self">Opera Mini for iOS</a></li>
-
-<li><a href="/it/privacy/websites" target="_self">Opera websites</a></li>
-
-<li><a href="/it/privacy/services" target="_self">Opera services</a></li>
-
-</ul>
-</div>
-</section>
-
- </div>
- </main>
-
-
- <footer class="ns--hf">
- <div class="hf--top-side">
- <div class="hf--width-holder">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Seleziona la lingua:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/privacy">Bahasa Indonesia</option><option data-name="ms" value="/ms/privacy">Bahasa Melayu</option><option data-name="cs" value="/cs/privacy">Čeština</option><option data-name="da" value="/da/privacy">Dansk</option><option data-name="de" value="/de/privacy">Deutsch</option><option data-name="en" value="/privacy">English</option><option data-name="es" value="/es/privacy">Español</option><option data-name="es-419" value="/es-419/privacy">Español (Latinoamérica)</option><option data-name="tl" value="/tl/privacy">Filipino</option><option data-name="fr" value="/fr/privacy">Français</option><option data-name="it" value="/it/privacy" selected>Italiano</option><option data-name="hu" value="/hu/privacy">Magyar</option><option data-name="nl" value="/nl/privacy">Nederlands</option><option data-name="no" value="/no/privacy">Norsk (bokmål)</option><option data-name="pl" value="/pl/privacy">Polski</option><option data-name="pt" value="/pt/privacy">Português</option><option data-name="pt-br" value="/pt-br/privacy">Português (Brasil)</option><option data-name="ro" value="/ro/privacy">Română</option><option data-name="sk" value="/sk/privacy">Slovenčina</option><option data-name="fi" value="/fi/privacy">Suomi</option><option data-name="sv" value="/sv/privacy">Svenska</option><option data-name="vi" value="/vi/privacy">Tiếng Việt</option><option data-name="tr" value="/tr/privacy">Türkçe</option><option data-name="el" value="/el/privacy">Ελληνικά</option><option data-name="bg" value="/bg/privacy">Български</option><option data-name="ru" value="/ru/privacy">Русский</option><option data-name="uk" value="/uk/privacy">Українська</option><option data-name="he" value="/he/privacy">עברית</option><option data-name="ar" value="/ar/privacy">العربية</option><option data-name="hi" value="/hi/privacy">हिंदी</option><option data-name="th" value="/th/privacy">ไทย</option><option data-name="ko" value="/ko/privacy">한국어</option><option data-name="zh-cn" value="/zh-cn/privacy">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/privacy">中文(台灣)</option><option data-name="ja" value="/ja/privacy">日本語</option> </select>
- </span>
- </div> <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">In alto</a>
- </p> </div>
- <div class="hf--social">
- <div class="hf--width-holder">
- <p class="hf--social-headline hf--hide">Segui Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- </div>
- </div>
- <div class="hf--links">
- <div class="hf--width-holder">
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/download">Scarica Opera</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/computer">Browser per PC</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/mobile">App per dispositivi mobili</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><a class="hf--text-uppercase" href="//www.opera.com/help">Guida e supporto</a></li>
- <li><a class="hf--text-uppercase" href="//blogs.opera.com/">Blog di Opera</a></li>
- <li><a class="hf--text-uppercase last-link" href="//forums.opera.com">Forum di Opera</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://dev.opera.com/">Dev.Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/beta">Versione beta</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/neon">Opera Neon</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><strong class="hf--text-uppercase">Servizi</strong></li>
- <li><a class="hf--text-regular" href="https://addons.opera.com">Componenti aggiuntivi</a></li>
- <li><a class="hf--text-regular" href="https://auth.opera.com/account/login">Account Opera</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://www.operasoftware.com">Opera B2B</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/operators">Soluzioni per operatori</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/mobile-oems">Soluzioni OEM</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/content-partners">Collaborare con Opera</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/blog">Aziende</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/about">Informazioni su Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/jobs">Lavori</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/investors">Investitori</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/press">Info stampa</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/contact">Contatti</a></li>
- </ul>
- </div>
- </div>
- <div class="hf--bottom-side hf--width-holder">
- <div class="hf--bottom-wrapper">
- <div class="hf--social">
- <p class="hf--social-headline hf--hide">Segui Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- <div class="hf--copyrights">
- <ul class="hf--copyrights-items">
- <li><strong>&copy; Opera Software</strong></li>
- <li><a href="https://www.opera.com/privacy">Riservatezza</a></li>
- <li><a href="https://www.opera.com/terms">Termini d'utilizzo</a></li>
- </ul>
- </div>
- <div class="hf--controls">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Seleziona la lingua:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/privacy">Bahasa Indonesia</option><option data-name="ms" value="/ms/privacy">Bahasa Melayu</option><option data-name="cs" value="/cs/privacy">Čeština</option><option data-name="da" value="/da/privacy">Dansk</option><option data-name="de" value="/de/privacy">Deutsch</option><option data-name="en" value="/privacy">English</option><option data-name="es" value="/es/privacy">Español</option><option data-name="es-419" value="/es-419/privacy">Español (Latinoamérica)</option><option data-name="tl" value="/tl/privacy">Filipino</option><option data-name="fr" value="/fr/privacy">Français</option><option data-name="it" value="/it/privacy" selected>Italiano</option><option data-name="hu" value="/hu/privacy">Magyar</option><option data-name="nl" value="/nl/privacy">Nederlands</option><option data-name="no" value="/no/privacy">Norsk (bokmål)</option><option data-name="pl" value="/pl/privacy">Polski</option><option data-name="pt" value="/pt/privacy">Português</option><option data-name="pt-br" value="/pt-br/privacy">Português (Brasil)</option><option data-name="ro" value="/ro/privacy">Română</option><option data-name="sk" value="/sk/privacy">Slovenčina</option><option data-name="fi" value="/fi/privacy">Suomi</option><option data-name="sv" value="/sv/privacy">Svenska</option><option data-name="vi" value="/vi/privacy">Tiếng Việt</option><option data-name="tr" value="/tr/privacy">Türkçe</option><option data-name="el" value="/el/privacy">Ελληνικά</option><option data-name="bg" value="/bg/privacy">Български</option><option data-name="ru" value="/ru/privacy">Русский</option><option data-name="uk" value="/uk/privacy">Українська</option><option data-name="he" value="/he/privacy">עברית</option><option data-name="ar" value="/ar/privacy">العربية</option><option data-name="hi" value="/hi/privacy">हिंदी</option><option data-name="th" value="/th/privacy">ไทย</option><option data-name="ko" value="/ko/privacy">한국어</option><option data-name="zh-cn" value="/zh-cn/privacy">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/privacy">中文(台灣)</option><option data-name="ja" value="/ja/privacy">日本語</option> </select>
- </span>
- </div> <div class="hf--nav">
- <div class="hf--width-holder">
- <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">In alto</a>
- </p> </div>
- </div>
- </div>
- </div>
- </div>
- </footer>
- <script src="https://www-static.operacdn.com/static-heap/4d/4d7f76c8987efba7e997c2cead49c858f7966ebb/linkfeedback.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/30/305ba43f6e26911dcc3a6c564473af33b85c804d/browserinfo.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/98/98f88227912fc67b44662e8392f3779e4e6ccab5/opera.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/3d/3d254f1aec48f4b9990a19c04c7355d29c995fd5/promoassets.js"></script>
- </body>
-</html> \ No newline at end of file
diff --git a/network/opera-developer/slack-desc b/network/opera-developer/slack-desc
deleted file mode 100644
index 810ab1f375..0000000000
--- a/network/opera-developer/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-opera-developer: opera-developer (A fast and secure web browser)
-opera-developer:
-opera-developer: Opera is a graphical Web browser available on several platforms.
-opera-developer: The desktop version runs on GNU/Linux and FreeBSD. Versions for
-opera-developer: Macintosh and Windows are also available.
-opera-developer:
-opera-developer: Homepage: https://www.opera.com/
-opera-developer:
-opera-developer:
-opera-developer:
-opera-developer:
diff --git a/network/opera-developer/terms.html b/network/opera-developer/terms.html
deleted file mode 100644
index 38e4af0aaf..0000000000
--- a/network/opera-developer/terms.html
+++ /dev/null
@@ -1,285 +0,0 @@
- <!DOCTYPE html>
-<html lang="en">
- <head>
-
-
- <meta http-equiv="content-type" content="text/html; charset=utf-8">
- <meta name="viewport" content="initial-scale=1, width=device-width">
- <meta name="msvalidate.01" content="070C6E8E67D398B03BD8D8E9408A7045">
- <meta name="yandex-verification" content="780cc78194f8c462">
-
- <meta name="robots" content="noyaca, noodp">
-
- <meta name="description" content="These terms of service (“Terms”), along with Opera’s privacy policy located at https://www.opera.com/privacy (“Privacy Policy”), form a binding contract between you and Opera Software AS">
-
-
- <meta property="og:image" content="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
- <meta property="og:title" content="Terms of Service | Opera">
- <meta property="og:url" content="https://www.opera.com/terms">
- <meta property="og:description" content="These terms of service (“Terms”), along with Opera’s privacy policy located at https://www.opera.com/privacy (“Privacy Policy”), form a binding contract between you and Opera Software AS">
- <meta property="og:type" content="website">
-
-
- <title>Terms of Service | Opera</title>
-
-
- <link rel="dns-prefetch" href="//www-static.operacdn.com">
- <link rel="apple-touch-icon" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="57x57" href="https://www-static.operacdn.com/static-heap/91/91051bd6095b8484c359274af1ec222b6bd293d4/opera-57.png">
- <link rel="apple-touch-icon" sizes="72x72" href="https://www-static.operacdn.com/static-heap/1d/1db0d666779ad5dc2bde071f1e64223cbc898079/opera-72.png">
- <link rel="apple-touch-icon" sizes="76x76" href="https://www-static.operacdn.com/static-heap/ca/cab9c89aeabd94f19da89e4aae5fac8077f40288/opera-76.png">
- <link rel="apple-touch-icon" sizes="114x114" href="https://www-static.operacdn.com/static-heap/3e/3eb93f40546e3dd463deb58e5a5b59ace97d8cff/opera-114.png">
- <link rel="apple-touch-icon" sizes="120x120" href="https://www-static.operacdn.com/static-heap/ab/ab7832e9d56e106488f110e871c46f774576b093/opera-120.png">
- <link rel="apple-touch-icon" sizes="144x144" href="https://www-static.operacdn.com/static-heap/5e/5ed11b7f90d7abe5af33392636f1e1fd40f8d40f/opera-144.png">
- <link rel="apple-touch-icon" sizes="152x152" href="https://www-static.operacdn.com/static-heap/75/759b5d5a74e1be5fdfd0fd1fed338c9d1c6cbb33/opera-152.png">
-
-
- <meta name="application-name" content="Terms of Service - Opera">
- <meta name="msapplication-TileColor" content="#FE1B2C">
- <meta name="msapplication-TileImage" content="https://www-static.operacdn.com/static-heap/6a/6aa0021764af934c8431d64fbf508a90ef30846d/opera-windows-144.png">
- <meta name="msapplication-square70x70logo" content="https://www-static.operacdn.com/static-heap/27/27d2de5f321780e481fcd3cf8e7a4800295ed5bd/opera-windows-70.png">
- <meta name="msapplication-square150x150logo" content="https://www-static.operacdn.com/static-heap/05/0556dff691cc07304d9f12204548ab63c3142368/opera-windows-150.png">
- <meta name="msapplication-wide310x150logo" content="https://www-static.operacdn.com/static-heap/42/42554ff6fabadcc22853c011b777923e56a2a94c/opera-windows-310-150.png">
- <meta name="msapplication-square310x310logo" content="https://www-static.operacdn.com/static-heap/99/9938c6221aba7d87edf2ec2795206bf92d4c3d29/opera-windows-310.png">
-
-
- <link rel="alternate" hreflang="id" href="https://www.opera.com/id/terms" />
- <link rel="alternate" hreflang="ms" href="https://www.opera.com/ms/terms" />
- <link rel="alternate" hreflang="cs" href="https://www.opera.com/cs/terms" />
- <link rel="alternate" hreflang="da" href="https://www.opera.com/da/terms" />
- <link rel="alternate" hreflang="de" href="https://www.opera.com/de/terms" />
- <link rel="canonical" hreflang="en" href="https://www.opera.com/terms" />
- <link rel="alternate" hreflang="es" href="https://www.opera.com/es/terms" />
- <link rel="alternate" hreflang="es-419" href="https://www.opera.com/es-419/terms" />
- <link rel="alternate" hreflang="tl" href="https://www.opera.com/tl/terms" />
- <link rel="alternate" hreflang="fr" href="https://www.opera.com/fr/terms" />
- <link rel="alternate" hreflang="it" href="https://www.opera.com/it/terms" />
- <link rel="alternate" hreflang="hu" href="https://www.opera.com/hu/terms" />
- <link rel="alternate" hreflang="nl" href="https://www.opera.com/nl/terms" />
- <link rel="alternate" hreflang="no" href="https://www.opera.com/no/terms" />
- <link rel="alternate" hreflang="pl" href="https://www.opera.com/pl/terms" />
- <link rel="alternate" hreflang="pt" href="https://www.opera.com/pt/terms" />
- <link rel="alternate" hreflang="pt-br" href="https://www.opera.com/pt-br/terms" />
- <link rel="alternate" hreflang="ro" href="https://www.opera.com/ro/terms" />
- <link rel="alternate" hreflang="sk" href="https://www.opera.com/sk/terms" />
- <link rel="alternate" hreflang="fi" href="https://www.opera.com/fi/terms" />
- <link rel="alternate" hreflang="sv" href="https://www.opera.com/sv/terms" />
- <link rel="alternate" hreflang="vi" href="https://www.opera.com/vi/terms" />
- <link rel="alternate" hreflang="tr" href="https://www.opera.com/tr/terms" />
- <link rel="alternate" hreflang="el" href="https://www.opera.com/el/terms" />
- <link rel="alternate" hreflang="bg" href="https://www.opera.com/bg/terms" />
- <link rel="alternate" hreflang="ru" href="https://www.opera.com/ru/terms" />
- <link rel="alternate" hreflang="uk" href="https://www.opera.com/uk/terms" />
- <link rel="alternate" hreflang="he" href="https://www.opera.com/he/terms" />
- <link rel="alternate" hreflang="ar" href="https://www.opera.com/ar/terms" />
- <link rel="alternate" hreflang="hi" href="https://www.opera.com/hi/terms" />
- <link rel="alternate" hreflang="th" href="https://www.opera.com/th/terms" />
- <link rel="alternate" hreflang="ko" href="https://www.opera.com/ko/terms" />
- <link rel="alternate" hreflang="zh-cn" href="https://www.opera.com/zh-cn/terms" />
- <link rel="alternate" hreflang="zh-tw" href="https://www.opera.com/zh-tw/terms" />
- <link rel="alternate" hreflang="ja" href="https://www.opera.com/ja/terms" />
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/latin_latinext-634dce27.css">
-
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/header-footer-8618b3a3.css">
- <link rel="stylesheet" type="text/css" media="all" href="https://www-static.operacdn.com/extension/opera/design/opera/static/css/opera2-3353345c.css">
-
-
-
-
- </head>
- <body>
- <!-- Google Tag Manager -->
-
- <noscript><iframe src="//www.googletagmanager.com/ns.html?id=GTM-Q5SW"
- height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
- <script>
- (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
- new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
- j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
- '//www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
- })(window,document,'script','dataLayer','GTM-Q5SW');
- </script>
-
-<!-- End Google Tag Manager -->
-
- <header id="header" class="ns--hf">
- <div class="hf--primary">
- <div class="hf--width-holder">
- <div class="hf--main-nav" role="navigation">
- <a class="hf--brand" href="/">
- <img src="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png" srcset="https://www-static.operacdn.com/static-heap/11/11bb20439edcccff33dbfa6df6f4c9ad564f91e4/logo-header-opera.png 1x, https://www-static.operacdn.com/static-heap/28/2820d98042080cc51dea518980d80293bf732770/logo-header-opera2x.png 2x" alt="Opera">
- </a>
- <div class="hf--menu">
- <input id="hf--menu-switcher" class="hf--hide" type="checkbox">
- <label class="hf--menu-switcher" for="hf--menu-switcher"></label>
- <div>
- <div>
- <ul class="hf--main-nav-items" role="menu">
-
- <li><a href="/computer" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Computer browsers</a></li>
- <li><a href="/mobile" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Mobile apps</a></li>
-
-
- <li class="hf--menu-opposite">
- <a href="//blogs.opera.com/" data-event-action="hf-main-nav-item" data-event-category="hf" role="menuitem">Blogs</a>
- </li>
- </ul>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
-
-
-
-
- </header>
-
-
-
- <main class="page">
- <div class="page--content">
-
-
-
-
-
-
-
-
-<section class="top-padding--oneline bottom-padding--twolines">
- <div class="content-width"><h1>Terms of Service</h1>
-<p><i>Last updated: December 5, 2017</i></p><p>Opera Software AS and its affiliates offer a number of different services through their respective websites and software. The terms of this document govern your use of those services. Please read this document carefully.</p><p><b>1. This is a contract.</b></p><p>a. These Terms of Service (“Terms”), along with Opera’s Privacy Statement, form a legally-binding contract between you and Opera Software AS a Norwegian company whose principal place of business is Gjerdrumsvei 19, 0484, Oslo, Norway, as well as its affiliates (“Opera” and “we,” “us” and “our”). By using the Services (as defined below), you are agreeing to be legally bound by these Terms. If you don’t agree with these Terms, you must discontinue using the Services.</p><p>b. As used in these Terms, the word “Services” applies to the services provided to you via Opera’s websites, user forums, your user account system, and software applications.</p><p><b>2. We expect you to be a responsible user.</b></p><p>a. You agree that you will not use the Services for any purpose that is unlawful or prohibited by these Terms. You agree to follow all applicable local, state, national, and international laws and regulations. You are solely responsible for all acts or omissions that occur while using any Services, including the content of any transmissions you send through the Services and any content you upload or publish using the Services.</p><p>b. We expect you to respect the rights of others. By using the Services, you agree that you will not upload, transfer, or otherwise make available files, images, code, materials, or other information or content (“Content”) that violates the rights of any third party, including their intellectual property rights, however defined.</p><p>c. You also agree not to upload, transfer, or otherwise make available any Content that is obscene, vulgar, sexually-oriented, hateful, or threatening. Opera strictly forbids unsolicited messaging and unauthorized advertisements while using the Services.</p><p>d. Opera has a zero-tolerance policy against child sexual abuse content and will terminate the access of any user who publishes or distributes child sexual abuse content. Furthermore, we will report such user to the appropriate authorities.</p><p>e. You are responsible for the security of your user account. Certain Services (including use of Opera’s forums) allow you to create a user account to access to certain Services. You are entirely responsible for maintaining the confidentiality of your user account and password. Additionally, you are also responsible for any and all activities that occur under your user account.</p><p>f. You acknowledge that information of any kind presented to you via the Services may be protected by copyright, trademark, patent and/or other proprietary rights and laws. You agree not to violate these laws or infringe these rights in any way.</p><p>g. Certain features of the Services may allow you to publish or send content that can be viewed by others (“User Generated Content”). You agree that Opera is not liable for User Generated Content that is provided by others. Opera has no duty to pre-screen User Generated Content, but Opera has the right to refuse to post, edit, or deliver User Generated Content. Opera reserves the right to remove User Generated Content for any reason, but Opera is not responsible for any failure or delay in removing such material. Opera reserves the right to block any user’s access to any content, website or webpage at our sole discretion.</p><p>h. Opera does not claim ownership of any User Generated Content. However, by submitting User Generated Content on any Service, including any ideas, concepts, know-how, or techniques described therein, you consent to Opera’s unrestricted use of those items.</p><p>i. If you upload any Content or User Generated Content to Opera’s sites, you warrant that you have the necessary rights and authority to do so, including the necessary consent to upload and distribute any personal information about third persons. You agree that you will not upload viruses or other forms of malware.</p><p><b>3. Details.</b> For clarity, and consistent with the rest of these Terms, here are further details on specific Services that may be available through the Opera websites or software applications.</p><p>a. Extension catalog: Opera may offer a portfolio of third party browser extensions and themes (“Add-Ons”) at <a href="https://addons.opera.com/extensions" target="_self">https://addons.opera.com/extensions</a>. Opera exercises no editorial control over the Add-Ons that you access through this Service.</p><p>b. Compression: Opera’s software applications include compression functionality to enable users to boost the download of web content such as webpages and/or videos. This functionality requests web content through Opera’s proxy or compression servers. Your browsing experience may change due to increased loading speeds. Certain webpages may not be available through proxy servers.</p><p>c. News recommendations: Opera’s software applications may include a current news feed feature to help you discover and access news content made available by third parties on the internet. Opera exercises no editorial control over any content that you access through this Service.</p><p>d. Synchronization: Opera allows you to enable synchronization of browser data such as your speed dials between Opera browsers on the devices you are using. This Service requires that you login to a social network service or create an Opera account.</p><p>e. Contextual hints: Opera’s browser for computers may include “Browser Assistant”, a component that provides contextual hints about certain Opera browser features and other useful information which you might be interested in. Browser Assistant is an optional component of the software.</p><p>f. Virtual Private Network: Through Opera’s browser for computers you may have access to a virtual private network (“VPN”). Consistent with other provisions of these terms, you agree not to use the VPN service in a manner that violates applicable law or otherwise infringes any third party’s rights. Opera does not guarantee that VPN service will always be available. The VPN feature is not an end-to-end service and it does not guarantee that any transmissions of information made while using VPN will be secure. Note that certain websites may not be accessible while using VPN.</p><p>g. Snapshot: Opera’s browser for computers may include functions that enable you to easily take screenshots of content viewed through the browser. This feature is for your personal, non-commercial use only. You agree never to use the feature in any way that violates applicable law, or the rights of any third party, including copyrights.</p><p>h. Virtual Reality functions: Opera’s browser for computers may include functions that facilitate access to virtual reality content using your virtual reality hardware. Your use of any virtual reality hardware and related services are governed by separate terms and conditions. Opera is not responsible for your use of your hardware, or for any virtual reality content produced by third parties.</p><p><b>4. The Services are provided without any warranties or guarantees.</b> Opera does not guarantee that your use of the Services will be problem free. Although we work hard to provide the highest quality software and services, we cannot and do not guarantee that they will work perfectly every time or in every respect.</p><p>a. The Services are provided “as is” without warranties of any kind. Opera and/or its respective suppliers hereby disclaim all warranties and conditions with regard to the Services, including all implied warranties and conditions of merchantability, fitness for a particular purpose, title, and non-infringement.</p><p>b. Opera does not represent or warrant that the Services will be uninterrupted or error free, that defects will be corrected, or that the Services or the server that makes them available are free of viruses or other harmful components.</p><p>c. In compliance with local law, certain Services and websites may not be available in some countries.</p><p><b>5. Certain Services are provided by third parties.</b> Some Services accessible through the Opera software applications are provided by other companies (“Third Party Services”). Third Party Services may be subject to separate terms and conditions. These Third Party Services may include the following:</p><p>a. WhatsApp: A messaging service provided by WhatsApp, Inc. Terms of use and other important legal information is available at <a href="https://www.whatsapp.com/legal" target="_blank">https://www.whatsapp.com/legal</a>; and</p><p>b. Messenger: A messaging service provided by Facebook, Inc. with Terms of use available at <a href="https://www.facebook.com/legal/terms" target="_blank">https://www.facebook.com/legal/terms</a>.</p><p><b>6. Your access to the Services is subject to change.</b> Opera reserves the right at any time to modify or discontinue the Services in whole or in part, and to terminate your access to the Services at any time, with or without notice. You agree that Opera shall not be liable to you or to any third party for any modification, suspension or discontinuance of the Services. Opera may also terminate or suspend your user account for inactivity, which is defined as failing to sign-in to the Services for an extended period of time, as determined by Opera. Opera reserves the right to assign its rights and responsibilities under these Terms to any third party.</p><p><b>7. Links to the Third Party Sites are available through the Services.</b> The Services may contain links to other websites (“Third Party Sites”), as well as articles, photographs, text, graphics, pictures, designs, music, sound, video, information, applications, software, and other content or items belonging to or originating from third parties (“Third Party Content”). Opera has no control over and no responsibility for Third Party Sites or Third Party Content. Inclusion of, linking to, or permitting the use or installation of any Third Party Site or any Third Party Content does not imply approval or endorsement thereof by Opera.</p><p><b>8. Opera is not responsible for any damages you may incur as a result of your use of the Services.</b></p><p>a. You agree that Opera shall not be responsible for unauthorized access to or alteration of your transmissions or data, any material or data sent or received or not sent or received, or any transactions entered into through the Services.</p><p>b. You agree that Opera is not responsible or liable for any threatening, defamatory, obscene, offensive, or illegal content or conduct of any other party or any infringement of another’s rights, including intellectual property rights. You specifically agree that Opera is not responsible for any content sent using and/or included in the Services by any third party.</p><p>c. In no event shall Opera and/or its suppliers be liable for any direct, indirect, punitive, incidental, special, consequential damages, or any damages whatsoever including, without limitation, damages for loss of use, data, or profits, arising out of or in any way connected with the use or performance of the Services, with the delay or inability to use the Services, the provision of or failure to provide any Services, or for any information, software, products, services, and related graphics obtained through the Services, or otherwise arising out of the use of the Services, whether based on contract, tort, negligence, strict liability, or otherwise, even if opera or any of its suppliers has been advised of the possibility of damages. Because some states/jurisdictions do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply in every instance. If you are dissatisfied with any portion of the Services, or with any of these terms, your sole and exclusive remedy is to discontinue using the Services and related websites.</p><p>d. You agree to indemnify and hold Opera, its parents, subsidiaries, affiliates, officers, and employees, harmless from any claim, demand, or damage, including reasonable attorneys’ fees, asserted by any third party due to or arising out of your use of or conduct on the Services.</p><p><b>9. We need you to respect our trademarks.</b> The Opera word mark and the Opera and “O” logos are trademarks of Opera Software AS in Norway, the European Union and other countries. You agree that all of Opera’s trademarks, trade names, service marks and other Opera logos and brand features, and product and service names are trademarks and the property of Opera (the “Opera Marks”). Without Opera’s prior written permission, you agree not to display or use in any manner the Opera Marks.</p><p><b>10. These Terms are based on Norwegian law.</b> These Terms are governed by the laws of Norway without giving effect to any conflicts of law principles that may require the application of the laws of a different country. The United Nations Convention on Contracts for the International Sale of Goods does not apply to these Terms. All actions or proceedings arising under or related to these Terms must be brought in the Oslo City Court, and each party hereby agree to irrevocably submit to the jurisdiction and venue of any such court in all such actions or proceedings. If any provision of these Terms is determined by a court of competent jurisdiction to be invalid, illegal, or unenforceable, the remaining provisions of these Terms shall not be affected or impaired thereby. You may not assign or transfer your rights under these Terms without obtaining Opera’s prior written consent, and any purported assignment or transfer in violation of this section will be null and void.</p><p><b>11. Opera may modify these Terms.</b> Opera may update these Terms or the Privacy Statement from time to time. The current version of these Terms are posted at <a href="https://www.opera.com/terms" target="_self">https://www.opera.com/terms</a>. The Privacy Statement is posted at <a href="https://www.opera.com/privacy" target="_self">https://www.opera.com/privacy</a>. It is your responsibility to remain informed of any changes, because you are legally obligated to abide by the latest versions of these Terms and the Privacy Statement.</p><p><b>12. Notice to rights holders.</b> If you believe that any content accessible via the Services infringes your rights, you may submit a notification to Opera in which you provide the following information: (a) identification of the rights/works that are being infringed upon; (b) identification of the content that is infringing your rights (including URL(s) for the content); (c) your name, address, telephone number, and electronic mail address; (d) a statement that you have a good faith belief that use of the content in the manner complained of is not authorized by the rights holder, its agent, or the law; (e) a statement that the information in the notification is accurate and, under penalty of perjury, that you are authorized to act on behalf of the owner of an exclusive right that is allegedly infringed; and (f) your physical or electronic signature, or that of a person authorized to act on your behalf, of the owner of an exclusive right that is allegedly infringed. Notices may be sent to <a href="mailto:legal&#x0040;opera.com" target="_self">legal&#x0040;opera.com</a>, attention: Content Team.</p></div>
-</section>
-
- </div>
- </main>
-
-
- <footer class="ns--hf">
- <div class="hf--top-side">
- <div class="hf--width-holder">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Select your language:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/terms">Bahasa Indonesia</option><option data-name="ms" value="/ms/terms">Bahasa Melayu</option><option data-name="cs" value="/cs/terms">Čeština</option><option data-name="da" value="/da/terms">Dansk</option><option data-name="de" value="/de/terms">Deutsch</option><option data-name="en" value="/terms" selected>English</option><option data-name="es" value="/es/terms">Español</option><option data-name="es-419" value="/es-419/terms">Español (Latinoamérica)</option><option data-name="tl" value="/tl/terms">Filipino</option><option data-name="fr" value="/fr/terms">Français</option><option data-name="it" value="/it/terms">Italiano</option><option data-name="hu" value="/hu/terms">Magyar</option><option data-name="nl" value="/nl/terms">Nederlands</option><option data-name="no" value="/no/terms">Norsk (bokmål)</option><option data-name="pl" value="/pl/terms">Polski</option><option data-name="pt" value="/pt/terms">Português</option><option data-name="pt-br" value="/pt-br/terms">Português (Brasil)</option><option data-name="ro" value="/ro/terms">Română</option><option data-name="sk" value="/sk/terms">Slovenčina</option><option data-name="fi" value="/fi/terms">Suomi</option><option data-name="sv" value="/sv/terms">Svenska</option><option data-name="vi" value="/vi/terms">Tiếng Việt</option><option data-name="tr" value="/tr/terms">Türkçe</option><option data-name="el" value="/el/terms">Ελληνικά</option><option data-name="bg" value="/bg/terms">Български</option><option data-name="ru" value="/ru/terms">Русский</option><option data-name="uk" value="/uk/terms">Українська</option><option data-name="he" value="/he/terms">עברית</option><option data-name="ar" value="/ar/terms">العربية</option><option data-name="hi" value="/hi/terms">हिंदी</option><option data-name="th" value="/th/terms">ไทย</option><option data-name="ko" value="/ko/terms">한국어</option><option data-name="zh-cn" value="/zh-cn/terms">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/terms">中文(台灣)</option><option data-name="ja" value="/ja/terms">日本語</option> </select>
- </span>
- </div> <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">Top</a>
- </p> </div>
- <div class="hf--social">
- <div class="hf--width-holder">
- <p class="hf--social-headline hf--hide">Follow Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- </div>
- </div>
- <div class="hf--links">
- <div class="hf--width-holder">
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/download">Download Opera</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/computer">Computer browsers</a></li>
- <li><a class="hf--text-regular" href="//www.opera.com/mobile">Mobile apps</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><a class="hf--text-uppercase" href="//www.opera.com/help">Help &amp; support</a></li>
- <li><a class="hf--text-uppercase" href="//blogs.opera.com/">Opera blogs</a></li>
- <li><a class="hf--text-uppercase last-link" href="//forums.opera.com">Opera forums</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://dev.opera.com/">Dev.Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/beta">Beta version</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/computer/neon">Opera Neon</a></li>
- <li><span class="hf--links-sep"><span class="hf--hide">-</span></span></li>
- <li><strong class="hf--text-uppercase">Services</strong></li>
- <li><a class="hf--text-regular" href="https://addons.opera.com">Add-ons</a></li>
- <li><a class="hf--text-regular" href="https://auth.opera.com/account/login">Opera account</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="http://www.operasoftware.com">Opera B2B</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/operators">Operator solutions</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/mobile-oems">OEM solutions</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/content-partners">Partner with Opera</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/blog">Business blog</a></li>
- </ul>
- <ul class="hf--links-section">
- <li><a class="hf--text-uppercase" href="https://www.opera.com/about">About Opera</a></li>
- <li><a class="hf--text-regular" href="https://www.opera.com/jobs">Jobs</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/investors">Investors</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/press">Press info</a></li>
- <li><a class="hf--text-regular" href="http://www.operasoftware.com/company/contact">Contact us</a></li>
- </ul>
- </div>
- </div>
- <div class="hf--bottom-side hf--width-holder">
- <div class="hf--bottom-wrapper">
- <div class="hf--social">
- <p class="hf--social-headline hf--hide">Follow Opera</p>
-
- <div class="hf--social-icons">
- <a class="facebook" href="https://facebook.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Facebook</span>
- </a>
- <a class="twitter" href="https://twitter.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Twitter</span>
- </a>
- <a class="youtube" href="https://www.youtube.com/opera" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Youtube</span>
- </a>
- <a class="linkedin" href="https://www.linkedin.com/company/opera-software" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">LinkedIn</span>
- </a>
- <a class="instagram" href="https://instagram.com/operabrowser" data-event-action="hf-footer-social-item" data-event-category="hf">
- <span class="hf--hide">Instagram</span>
- </a>
- </div>
- </div>
- <div class="hf--copyrights">
- <ul class="hf--copyrights-items">
- <li><strong>&copy; Opera Software</strong></li>
- <li><a href="https://www.opera.com/privacy">Privacy</a></li>
- <li><a href="https://www.opera.com/terms">Terms of Use</a></li>
- </ul>
- </div>
- <div class="hf--controls">
- <div class="hf--language">
- <span class="hf--language-selector-icon"><span class="hf--hide">Select your language:</span></span>
- <span>
- <select class="hf--language-selector" onchange="location=this.options[this.selectedIndex].value;">
- <option data-name="id" value="/id/terms">Bahasa Indonesia</option><option data-name="ms" value="/ms/terms">Bahasa Melayu</option><option data-name="cs" value="/cs/terms">Čeština</option><option data-name="da" value="/da/terms">Dansk</option><option data-name="de" value="/de/terms">Deutsch</option><option data-name="en" value="/terms" selected>English</option><option data-name="es" value="/es/terms">Español</option><option data-name="es-419" value="/es-419/terms">Español (Latinoamérica)</option><option data-name="tl" value="/tl/terms">Filipino</option><option data-name="fr" value="/fr/terms">Français</option><option data-name="it" value="/it/terms">Italiano</option><option data-name="hu" value="/hu/terms">Magyar</option><option data-name="nl" value="/nl/terms">Nederlands</option><option data-name="no" value="/no/terms">Norsk (bokmål)</option><option data-name="pl" value="/pl/terms">Polski</option><option data-name="pt" value="/pt/terms">Português</option><option data-name="pt-br" value="/pt-br/terms">Português (Brasil)</option><option data-name="ro" value="/ro/terms">Română</option><option data-name="sk" value="/sk/terms">Slovenčina</option><option data-name="fi" value="/fi/terms">Suomi</option><option data-name="sv" value="/sv/terms">Svenska</option><option data-name="vi" value="/vi/terms">Tiếng Việt</option><option data-name="tr" value="/tr/terms">Türkçe</option><option data-name="el" value="/el/terms">Ελληνικά</option><option data-name="bg" value="/bg/terms">Български</option><option data-name="ru" value="/ru/terms">Русский</option><option data-name="uk" value="/uk/terms">Українська</option><option data-name="he" value="/he/terms">עברית</option><option data-name="ar" value="/ar/terms">العربية</option><option data-name="hi" value="/hi/terms">हिंदी</option><option data-name="th" value="/th/terms">ไทย</option><option data-name="ko" value="/ko/terms">한국어</option><option data-name="zh-cn" value="/zh-cn/terms">中文(中国)</option><option data-name="zh-tw" value="/zh-tw/terms">中文(台灣)</option><option data-name="ja" value="/ja/terms">日本語</option> </select>
- </span>
- </div> <div class="hf--nav">
- <div class="hf--width-holder">
- <p class="hf--back">
- <a class="hf--text-uppercase back-to-top" href="#" onclick="return false;">Top</a>
- </p> </div>
- </div>
- </div>
- </div>
- </div>
- </footer>
- <script src="https://www-static.operacdn.com/static-heap/4d/4d7f76c8987efba7e997c2cead49c858f7966ebb/linkfeedback.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/30/305ba43f6e26911dcc3a6c564473af33b85c804d/browserinfo.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/98/98f88227912fc67b44662e8392f3779e4e6ccab5/opera.js"></script>
- <script src="https://www-static.operacdn.com/static-heap/3d/3d254f1aec48f4b9990a19c04c7355d29c995fd5/promoassets.js"></script>
- </body>
-</html> \ No newline at end of file
diff --git a/network/opera-legacy/README b/network/opera-legacy/README
deleted file mode 100644
index 12fe62a83e..0000000000
--- a/network/opera-legacy/README
+++ /dev/null
@@ -1,14 +0,0 @@
-opera-legacy (Fast and secure web browser and Internet suite)
-
-opera-legacy is a small, fast, customizable, powerful, and
-user-friendly web browser, as well as an Internet suite, including an
-email client, IRC client, BiTorrent client and web developer tools
-(Opera Dragonfly).
-
-This browser uses a old engine "Presto", for new engine "Blink please
-see "opera" or "opera-developer" SlackBuilds.
-
-This is a old (and unmaintained) version of Opera browser,
-USE AT YOUR OWN RISK!
-
-Optional dependencies: jdk, openjdk8, zulu-openjdk8.
diff --git a/network/opera-legacy/opera-legacy.SlackBuild b/network/opera-legacy/opera-legacy.SlackBuild
deleted file mode 100644
index b4a9ac92f3..0000000000
--- a/network/opera-legacy/opera-legacy.SlackBuild
+++ /dev/null
@@ -1,102 +0,0 @@
-#!/bin/bash
-#
-# Slackware build script for opera-legacy.
-#
-# Copyright 2016-2017 Edinaldo P. Silva, Rio de Janeiro, 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=opera-legacy
-VERSION=${VERSION:-12.16.1860}
-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}
-
-SRCNAM=${SRCNAM:-opera}
-SRCVER=${SRCVER:-12.16-1860}
-
-set -e
-
-case "$ARCH" in
- i?86) OARCH=i386 ; LIBDIRSUFFIX="" ;;
- x86_64) OARCH=$ARCH ; LIBDIRSUFFIX="64" ;;
- *) printf "\n\n$ARCH is not supported...\n" ; exit 1 ;;
-esac
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-${VERSION}
-tar xf $CWD/$SRCNAM-${SRCVER}.${OARCH}.linux.tar.xz
-mv $SRCNAM-${SRCVER}.${OARCH}.linux $PRGNAM-${VERSION}
-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 {} \;
-
-./install --name $PRGNAM \
- --prefix /usr \
- --repackage $PKG/usr
-
-if [ -n "$LIBDIRSUFFIX" ]; then
- mv $PKG/usr/lib $PKG/usr/lib$LIBDIRSUFFIX
- sed -i "s,/lib/,/lib$LIBDIRSUFFIX/," $PKG/usr/bin/$PRGNAM
-fi
-
-mv $PKG/usr/share/{man,doc} $PKG/usr
-mv $PKG/usr/doc/$PRGNAM $PKG/usr/doc/${PRGNAM}-$VERSION
-if [ -f "$PKG/usr/doc/${PRGNAM}-$VERSION/LICENSE" ]; then
- find $PKG/usr/share/$PRGNAM/{defaults,locale/en*} -name license.txt -type l -delete
- mv $PKG/usr/doc/${PRGNAM}-$VERSION/LICENSE $PKG/usr/share/$PRGNAM/defaults/license.txt
- ( cd $PKG/usr/doc/${PRGNAM}-$VERSION/ ; ln -s ../../share/$PRGNAM/defaults/license.txt LICENSE )
-fi
-
-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 -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/opera-legacy/opera-legacy.info b/network/opera-legacy/opera-legacy.info
deleted file mode 100644
index 9870b53649..0000000000
--- a/network/opera-legacy/opera-legacy.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="opera-legacy"
-VERSION="12.16.1860"
-HOMEPAGE="https://www.opera.com"
-DOWNLOAD="http://ftp.opera.com/pub/opera/linux/1216/opera-12.16-1860.i386.linux.tar.xz"
-MD5SUM="08545c66ba00a568324b1a393c8782f7"
-DOWNLOAD_x86_64="http://ftp.opera.com/pub/opera/linux/1216/opera-12.16-1860.x86_64.linux.tar.xz"
-MD5SUM_x86_64="ead647964ace52f44ced98adbc568ae7"
-REQUIRES=""
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
diff --git a/network/opera-legacy/slack-desc b/network/opera-legacy/slack-desc
deleted file mode 100644
index 3c83c029ab..0000000000
--- a/network/opera-legacy/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-opera-legacy: opera-legacy (Fast and secure web browser and Internet suite)
-opera-legacy:
-opera-legacy: opera-legacy is a small, fast, customizable, powerful, and
-opera-legacy: user-friendly web browser, as well as an Internet suite, including an
-opera-legacy: email client, IRC client, BitTorrent client, web developer tools
-opera-legacy: (Opera Dragonfly).
-opera-legacy:
-opera-legacy: Home page: https://www.opera.com/browser/
-opera-legacy:
-opera-legacy:
-opera-legacy:
diff --git a/network/opera/opera.SlackBuild b/network/opera/opera.SlackBuild
index 8842600d30..23ef5941f3 100644
--- a/network/opera/opera.SlackBuild
+++ b/network/opera/opera.SlackBuild
@@ -2,6 +2,7 @@
#
# Slackware build script for opera.
#
+# Copyright 2023-2024 Dimitris Zlatanidis, Orestiada, Greece.
# Copyright 2016-2022 Edinaldo P. Silva, Rio de Janeiro, Brazil.
# All rights reserved.
#
@@ -25,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=opera
-VERSION=${VERSION:-89.0.4447.83}
+VERSION=${VERSION:-109.0.5097.45}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -106,6 +107,8 @@ install -Dm644 $CWD/eula.html $PKG/usr/share/licenses/$PRGNAM/eula.html
install -Dm644 $CWD/terms.html $PKG/usr/share/licenses/$PRGNAM/terms.html
install -Dm644 $CWD/privacy.html $PKG/usr/share/licenses/$PRGNAM/privacy.html
+sed -i '/^TargetEnvironment/d' $PKG/usr/share/applications/$PRGNAM.desktop
+
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/opera/opera.info b/network/opera/opera.info
index fb385fa7b3..302d6b2447 100644
--- a/network/opera/opera.info
+++ b/network/opera/opera.info
@@ -1,10 +1,10 @@
PRGNAM="opera"
-VERSION="89.0.4447.83"
+VERSION="109.0.5097.45"
HOMEPAGE="https://www.opera.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://get.geo.opera.com/pub/opera/desktop/89.0.4447.83/linux/opera-stable_89.0.4447.83_amd64.deb"
-MD5SUM_x86_64="32e1cc32b415076213cd85ff27655ad2"
+DOWNLOAD_x86_64="https://get.geo.opera.com/pub/opera/desktop/109.0.5097.45/linux/opera-stable_109.0.5097.45_amd64.deb"
+MD5SUM_x86_64="8f42e3889190c6ef7de87101dff70028"
REQUIRES=""
-MAINTAINER="Edinaldo P. Silva"
-EMAIL="edps.mundognu@gmail.com"
+MAINTAINER="Dimitris Zlatanidis"
+EMAIL="dslackw@gmail.com"
diff --git a/network/otter/otter.SlackBuild b/network/otter/otter.SlackBuild
index a61f1cfb92..725d8e97c9 100644
--- a/network/otter/otter.SlackBuild
+++ b/network/otter/otter.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for otter
-# Copyright 2014-2022 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=otter
-VERSION=${VERSION:-1.0.02}
+VERSION=${VERSION:-1.0.03}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/otter/otter.info b/network/otter/otter.info
index 4900d6fa90..8c887e0e7f 100644
--- a/network/otter/otter.info
+++ b/network/otter/otter.info
@@ -1,10 +1,10 @@
PRGNAM="otter"
-VERSION="1.0.02"
+VERSION="1.0.03"
HOMEPAGE="https://otter-browser.org/"
-DOWNLOAD="https://github.com/OtterBrowser/otter-browser/archive/v1.0.02/otter-browser-1.0.02.tar.gz"
-MD5SUM="108022f3f07eefa90da117366c88c114"
+DOWNLOAD="https://github.com/OtterBrowser/otter-browser/archive/v1.0.03/otter-browser-1.0.03.tar.gz"
+MD5SUM="6c34113c7a35f810346d5cc2a3b9d66f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/owncloud-client/owncloud-client.SlackBuild b/network/owncloud-client/owncloud-client.SlackBuild
index 6b43409036..7a014c6a9d 100644
--- a/network/owncloud-client/owncloud-client.SlackBuild
+++ b/network/owncloud-client/owncloud-client.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=owncloud-client
-VERSION=${VERSION:-2.11.1.8438}
+VERSION=${VERSION:-2.11.1.8946}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,9 +41,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
diff --git a/network/owncloud-client/owncloud-client.info b/network/owncloud-client/owncloud-client.info
index daa0ab16f6..b2e1f344be 100644
--- a/network/owncloud-client/owncloud-client.info
+++ b/network/owncloud-client/owncloud-client.info
@@ -1,10 +1,10 @@
PRGNAM="owncloud-client"
-VERSION="2.11.1.8438"
+VERSION="2.11.1.8946"
HOMEPAGE="https://owncloud.org/"
-DOWNLOAD="https://download.owncloud.com/desktop/ownCloud/stable/2.11.1.8438/source/ownCloud-2.11.1.8438.tar.xz"
-MD5SUM="b8f7dfaca8479e8e9885fb9efb89efb8"
+DOWNLOAD="https://download.owncloud.com/desktop/ownCloud/stable/2.11.1.8946/source/ownCloud-2.11.1.8946.tar.xz"
+MD5SUM="0143df7cea72bf29874ae429e7a5f6f9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libcloudproviders"
-MAINTAINER="Isaac Yu"
-EMAIL="isaacyu1@isaacyu1.com"
+MAINTAINER="orphaned (no maintainer)"
+EMAIL="nobody@domain.com"
diff --git a/network/packETH/packETH.SlackBuild b/network/packETH/packETH.SlackBuild
index 83ad08fd81..596cb540e1 100644
--- a/network/packETH/packETH.SlackBuild
+++ b/network/packETH/packETH.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=packETH
-VERSION=${VERSION:-2.1}
+VERSION=${VERSION:-3.0}
BUILD=${BUILD:-2}
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
@@ -106,7 +103,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING CHANGELOG INSTALL README $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING CHANGELOG 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/packETH/packETH.info b/network/packETH/packETH.info
index e61e66f3cd..35bdd80ecc 100644
--- a/network/packETH/packETH.info
+++ b/network/packETH/packETH.info
@@ -1,8 +1,8 @@
PRGNAM="packETH"
-VERSION="2.1"
+VERSION="3.0"
HOMEPAGE="https://github.com/jemcek/packETH"
-DOWNLOAD="https://github.com/jemcek/packETH/archive/2.1/packETH-2.1.tar.gz"
-MD5SUM="31f72ebe0ff6ae0398d4e0abc04eaa34"
+DOWNLOAD="https://github.com/jemcek/packETH/archive/3.0/packETH-3.0.tar.gz"
+MD5SUM="04cb7a1cff7e64e3dbcc8e050de6e030"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/palemoon-bin/palemoon-bin.SlackBuild b/network/palemoon-bin/palemoon-bin.SlackBuild
index d2c4f20d29..294ee0f2c8 100644
--- a/network/palemoon-bin/palemoon-bin.SlackBuild
+++ b/network/palemoon-bin/palemoon-bin.SlackBuild
@@ -28,7 +28,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=palemoon-bin
SRCNAM=palemoon
-VERSION=${VERSION:-30.0.0}
+VERSION=${VERSION:-32.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/palemoon-bin/palemoon-bin.info b/network/palemoon-bin/palemoon-bin.info
index 37c5726205..0cc4e2cddd 100644
--- a/network/palemoon-bin/palemoon-bin.info
+++ b/network/palemoon-bin/palemoon-bin.info
@@ -1,10 +1,10 @@
PRGNAM="palemoon-bin"
-VERSION="30.0.0"
+VERSION="32.5.0"
HOMEPAGE="https://www.palemoon.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="http://linux.palemoon.org/datastore/release/palemoon-30.0.0.linux-x86_64-gtk2.tar.xz"
-MD5SUM_x86_64="e9a14c4b92fcebb5fbbbeeb616b02191"
+DOWNLOAD_x86_64="http://repo.schotynet.org/sources/palemoon-bin/palemoon-32.5.0.linux-x86_64-gtk2.tar.xz"
+MD5SUM_x86_64="433ae2d09c6e8ed2ef1a958eec484d02"
REQUIRES=""
MAINTAINER="khronosschoty"
EMAIL="khronosschoty@posteo.org"
diff --git a/network/palemoon/0001-Issue-7-Add-GCC-11-initial-support.patch b/network/palemoon/0001-Issue-7-Add-GCC-11-initial-support.patch
deleted file mode 100644
index 38ec82aad9..0000000000
--- a/network/palemoon/0001-Issue-7-Add-GCC-11-initial-support.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From 27b19218f0d3df9aaf76e784ed2348dc308437d7 Mon Sep 17 00:00:00 2001
-From: khronosschoty <khronosschoty@posteo.org>
-Date: Fri, 4 Mar 2022 07:15:50 -0800
-Subject: [PATCH 1/1] Issue #7 - Add GCC 11 initial support
-
----
- platform/system/graphics/2d/BaseRect.h | 1 +
- platform/system/network/base/nsURLParsers.cpp | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/platform/system/graphics/2d/BaseRect.h b/platform/system/graphics/2d/BaseRect.h
-index 57d01ba09..b1eed9ddb 100644
---- a/platform/system/graphics/2d/BaseRect.h
-+++ b/platform/system/graphics/2d/BaseRect.h
-@@ -9,6 +9,7 @@
- #include <algorithm>
- #include <cmath>
- #include <ostream>
-+#include <limits>
-
- #include "mozilla/Assertions.h"
- #include "mozilla/FloatingPoint.h"
-diff --git a/platform/system/network/base/nsURLParsers.cpp b/platform/system/network/base/nsURLParsers.cpp
-index b75ee0c4d..ed4a216a8 100644
---- a/platform/system/network/base/nsURLParsers.cpp
-+++ b/platform/system/network/base/nsURLParsers.cpp
-@@ -4,6 +4,7 @@
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
-
- #include <string.h>
-+#include <limits>
-
- #include "mozilla/RangedPtr.h"
-
---
-2.35.1
-
diff --git a/network/palemoon/README b/network/palemoon/README
index 8894515c8e..bc814b6490 100644
--- a/network/palemoon/README
+++ b/network/palemoon/README
@@ -49,6 +49,10 @@ passing the variable:
BLACKLIST_JACK=yes ./palemoon.SlackBuild
+ALSA=1 will disable pulse audio and build a pure alsa Pale Moon.
+GLIB-C-1PATCH=1 is a patch that will enable compiling on newer glibc
+(such as is found in Slackware current).
+
To enable debug information, pass the script the parameter
ENABLE_DEBUG=yes
diff --git a/network/palemoon/glib-c-arc4random.c.patch b/network/palemoon/glib-c-arc4random.c.patch
new file mode 100644
index 0000000000..467434614b
--- /dev/null
+++ b/network/palemoon/glib-c-arc4random.c.patch
@@ -0,0 +1,20 @@
+--- a/palemoon-31.3.0.1_Release/platform/ipc/chromium/src/third_party/libevent/arc4random.c 2022-09-27 20:12:40.000000000 -0000
++++ b/palemoon-31.3.0.1_Release/platform/ipc/chromium/src/third_party/libevent/arc4random.c 2022-10-03 10:09:16.859171354 -0000
+@@ -481,7 +481,8 @@
+ }
+ #endif
+
+-#ifndef HAVE_ARC4RANDOM_BUF
++#if defined(_we_have_arc4random_buf) || !defined(XP_SOLARIS)
++#if (__GLIBC__ <= 2 && __GLIBC_MINOR__ < 36) || !defined(XP_LINUX)
+ ARC4RANDOM_EXPORT void
+ arc4random_buf(void *_buf, size_t n)
+ {
+@@ -496,6 +497,7 @@
+ _ARC4_UNLOCK();
+ }
+ #endif
++#endif
+
+ #ifndef ARC4RANDOM_NOUNIFORM
+ /*
diff --git a/network/palemoon/palemoon.SlackBuild b/network/palemoon/palemoon.SlackBuild
index 87bb76a400..eddee9ec7a 100644
--- a/network/palemoon/palemoon.SlackBuild
+++ b/network/palemoon/palemoon.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Pale Moon
-# Copyright 2018,2019 Vasily Sora USA
+# Copyright 2018,2019,2022,2023 Vasily Sora USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,16 +28,13 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=palemoon
-VERSION=${VERSION:-30.0.0}
-SRCNAM1=${SRCNAM1:-Pale-Moon-${VERSION}_Release}
-SRCNAM2=${SRCNAM2:-GRE-RELBASE_20220310}
+VERSION=${VERSION:-32.5.0}
+SRCNAM1=${SRCNAM1:-$PRGNAM-${VERSION}_Release}
+SRCNAM2=${SRCNAM2:-uxp-RB_20231030}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-DOCS="AUTHORS LICENSE README.md"
-DOCS_GRE="AUTHORS LEGAL SECURITY.md"
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -46,9 +43,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
@@ -61,6 +55,8 @@ OUTPUT=${OUTPUT:-/tmp}
OBJ=${OBJ:-obj-$PRGNAM}
GTK=${GTK:-gtk2}
+DOCS="AUTHORS LICENSE README.md SECURITY.md"
+ALSA=${ALSA:-0}
# You can try changing the optimization level to simply "-O2" if your processor
# doesn't support sse2 instructions.
# "-Os" might help if you experience segfaults.
@@ -72,18 +68,13 @@ elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
+ SLKCFLAGS="-O2 -fPIC -Wno-format-overflow"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-# look into adding this as an option:
-# elif [ "$ARCH" = "x86_64" ]; then
-# SLKCFLAGS="-O2 -D_FORTIFY_SOURCE=2 -fstack-protector --param ssp-buffer-size=4 -fPIE -pie -Wl,-z,relro,-z,now -mindirect-branch=th
-
-
# The default is to build with official branding. This SlackBuild is used to
# produce officially approved third party "contributed builds" of Pale Moon.
# This SlackBuild can also be used to produce unapproved packages -- which
@@ -92,10 +83,9 @@ fi
# master trunck of the Pale Moon github repository.
BRANDING=${BRANDING:---enable-official-branding}
if [ "$BRANDING" = "NewMoon" ]; then
- BRANDING="--disable-official-branding --with-branding=browser/branding/unofficial"
-elif
- [ "$BRANDING" = "unstable" ]; then
- BRANDING="--disable-official-branding --with-branding=other-licenses/branding/palemoon/unstable"
+ BRANDING="--disable-official-branding --with-branding=palemoon/branding/unofficial"
+elif [ "$BRANDING" = "unstable" ]; then
+ BRANDING="--disable-official-branding --with-branding=palemoon/branding/unstable"
fi
rm -rf $PKG $TMP/gold $TMP/$OBJ
@@ -157,13 +147,14 @@ PATH=$TMP/autoconf-tmp/usr/bin:$PATH
# Build Pale Moon
cd $TMP
rm -rf $SRCNAM1
-tar -xvf $CWD/$SRCNAM1.tar.gz --transform="flags=r;s/pale-moon/$SRCNAM1/"
+tar -xvzf $CWD/$SRCNAM1.tar.gz # --transform s/pale-moon/${SRCNAM1}/
cd $SRCNAM1
-tar -xvf $CWD/$SRCNAM2.tar.gz --transform="flags=r;s/gre/platform/"
+tar -xvzf $CWD/$SRCNAM2.tar.gz --transform s/${SRCNAM2}/platform/
-patch -p1 < $CWD/0001-Issue-7-Add-GCC-11-initial-support.patch
-if [ "${ADNAUSEAM:-block}" = "unblock" ]; then
- patch -p1 < $CWD/adNauseam-unblock.patch
+#patch -p1 < $CWD/basilisk-include-limits.patch
+GLIB_C_1PATCH=${GLIB_C_1PATCH:-0}
+if [ $GLIB_C_1PATCH = 1 ]; then
+ patch -p2 < $CWD/glib-c-arc4random.c.patch
fi
chown -R root:root .
@@ -212,7 +203,7 @@ OPTIONS="\
--disable-accessibility \
$DEBUG \
$DEVTOOLS \
- --enable-application=browser \
+ --enable-application=$PRGNAM \
--disable-crashreporter \
--disable-updater \
--disable-tests \
@@ -226,7 +217,11 @@ for option in $OPTIONS; do echo "ac_add_options $option" >> .mozconfig; done
echo "ac_add_options --enable-optimize=\"$OPTIMIZE\"" >> .mozconfig
if ! pkg-config --exists libpulse; then
-echo "ac_add_options --disable-pulseaudio" >> .mozconfig; fi
+ echo "ac_add_options --disable-pulseaudio" >> .mozconfig
+ TAG=${TAG}_alsa
+elif [ $ALSA = 1 ]; then
+ echo "ac_add_options --disable-pulseaudio" >> .mozconfig
+TAG=${TAG}_alsa; fi
if pkg-config --exists jack && [ "${BLACKLIST_JACK:-no}" != "yes" ]; then
echo "ac_add_options --enable-jack" >> .mozconfig; fi
@@ -234,9 +229,9 @@ echo "ac_add_options --enable-jack" >> .mozconfig; fi
./mach build
## Clean up; and package Pale Moon.
-DESTDIR=$PKG ./mach install
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
cd $TMP/$OBJ
+make install DESTDIR=$PKG
cd $PKG
@@ -257,23 +252,21 @@ fi
# Install icons:
for PX in 16 32 48 ; do
mkdir -p $PKG/usr/share/icons/hicolor/${PX}x${PX}/apps
- ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/chrome/icons/default/default${PX}.png \
+ ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/browser/chrome/icons/default/default${PX}.png \
$PKG/usr/share/icons/hicolor/${PX}x${PX}/apps/$PRGNAM.png
done
# ... and the 128px icon file too:
mkdir -p $PKG/usr/share/icons/hicolor/128x128/apps
-ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/icons/mozicon128.png \
+ln -s /usr/lib${LIBDIRSUFFIX}/$PRGNAM-$VERSION/browser/icons/mozicon128.png \
$PKG/usr/share/icons/hicolor/128x128/apps/$PRGNAM.png
mkdir -p $PKG/usr/share/applications
cat $CWD/palemoon.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/GRE
-for i in $DOCS; do
- cp $TMP/$SRCNAM1/$i $PKG/usr/doc/$PRGNAM-$VERSION
-done
-for i in $DOCS_GRE; do
- cp $TMP/$SRCNAM1/platform/$i $PKG/usr/doc/$PRGNAM-$VERSION/GRE/
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/UXP
+for docs in $DOCS; do
+ cp $TMP/${SRCNAM1}/$docs $PKG/usr/doc/$PRGNAM-$VERSION/ || true
+ cp $TMP/${SRCNAM1}/platform/$docs $PKG/usr/doc/$PRGNAM-$VERSION/UXP/ || true
done
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/palemoon/palemoon.info b/network/palemoon/palemoon.info
index d495a982cd..7b472121b0 100644
--- a/network/palemoon/palemoon.info
+++ b/network/palemoon/palemoon.info
@@ -1,11 +1,11 @@
PRGNAM="palemoon"
-VERSION="30.0.0"
+VERSION="32.5.0"
HOMEPAGE="http://www.palemoon.org/"
-DOWNLOAD="http://repo.schotynet.org/sources/palemoon/Pale-Moon-30.0.0_Release.tar.gz \
- http://repo.schotynet.org/sources/GRE/GRE-RELBASE_20220310.tar.gz \
+DOWNLOAD="http://git.schotynet.org/palemoon/snapshot/palemoon-32.5.0_Release.tar.gz \
+ http://git.schotynet.org/uxp/snapshot/uxp-RB_20231030.tar.gz \
http://ponce.cc/slackware/sources/repo/autoconf-2.13.tar.xz"
-MD5SUM="57b9accd80f17553be2a6f4042db0560 \
- 9d4d6715cf475a11455cae4e6fc6cefe \
+MD5SUM="cddcee238979eaa9b9d945acff2b2ed5 \
+ 0c8a09957c2617e128de391278397cd6 \
f2994d302cf736e7e71974edfa51da3c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/persepolis/persepolis.info b/network/persepolis/persepolis.info
index 857de27304..957562e97d 100644
--- a/network/persepolis/persepolis.info
+++ b/network/persepolis/persepolis.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/persepolisdm/persepolis/archive/3.2.0/persepolis-3.
MD5SUM="9a3bf686da0385f78eadca457a9f43fe"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="setproctitle psutil aria2 youtube-dl"
-MAINTAINER="David Woodfall"
+REQUIRES="setproctitle python3-psutil aria2 youtube-dl"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/phodav/phodav.SlackBuild b/network/phodav/phodav.SlackBuild
index b5e621bcc6..d4652f6c61 100644
--- a/network/phodav/phodav.SlackBuild
+++ b/network/phodav/phodav.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for phodav
-# Copyright 2016-2019 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2016-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=phodav
-VERSION=${VERSION:-2.3}
+VERSION=${VERSION:-3.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -64,7 +64,7 @@ else
LIBDIRSUFFIX=""
fi
-DOCS="COPYING NEWS README TODO"
+DOCS="COPYING NEWS README.md TODO"
set -e
diff --git a/network/phodav/phodav.info b/network/phodav/phodav.info
index 5fc7a8b668..0ff45a9a36 100644
--- a/network/phodav/phodav.info
+++ b/network/phodav/phodav.info
@@ -1,10 +1,10 @@
PRGNAM="phodav"
-VERSION="2.3"
+VERSION="3.0"
HOMEPAGE="https://wiki.gnome.org/phodav"
-DOWNLOAD="http://ftp.gnome.org/pub/GNOME/sources/phodav/2.3/phodav-2.3.tar.xz"
-MD5SUM="0f4bbe83181037577c808acea166b26a"
+DOWNLOAD="http://ftp.gnome.org/pub/GNOME/sources/phodav/3.0/phodav-3.0.tar.xz"
+MD5SUM="33081519b273385976360bf3047fa704"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="libsoup3"
MAINTAINER="Matteo Bernardini"
EMAIL="ponce@slackbuilds.org"
diff --git a/network/phpmyadmin/phpmyadmin.SlackBuild b/network/phpmyadmin/phpmyadmin.SlackBuild
index 0d537fb885..4a036d787f 100644
--- a/network/phpmyadmin/phpmyadmin.SlackBuild
+++ b/network/phpmyadmin/phpmyadmin.SlackBuild
@@ -30,7 +30,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM="phpmyadmin"
-VERSION=${VERSION:-5.2.0}
+VERSION=${VERSION:-5.2.1}
ARCH="noarch" # hardcode ARCH
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/phpmyadmin/phpmyadmin.info b/network/phpmyadmin/phpmyadmin.info
index 659020277b..ca5cc736f1 100644
--- a/network/phpmyadmin/phpmyadmin.info
+++ b/network/phpmyadmin/phpmyadmin.info
@@ -1,8 +1,8 @@
PRGNAM="phpmyadmin"
-VERSION="5.2.0"
+VERSION="5.2.1"
HOMEPAGE="http://www.phpmyadmin.net/home_page/index.php"
-DOWNLOAD="https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.tar.xz"
-MD5SUM="38ef03fdf4d9ea3608c053a4efed1a9e"
+DOWNLOAD="https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.tar.xz"
+MD5SUM="167836c4fbd76e968fae78913c4bdb7c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/phppgadmin/README b/network/phppgadmin/README
new file mode 100644
index 0000000000..e081f4f0ac
--- /dev/null
+++ b/network/phppgadmin/README
@@ -0,0 +1,12 @@
+PhpPgAdmin is a Web-based application written in PHP that can manage one
+or more PostgreSQL databases. It is 100% compatible with PostgreSQL. It
+performs all the standard Data Definition Language (DDL) and Data
+Manipulation Language (DML) statements. It can back up and restore an
+entire cluster, and can manage a Slony replication cluster, all in an
+easy-to-understand interface.
+
+Of course a Postgresql server must be accessible, mod_php enabled and
+package 'php-pgsql' installed.
+
+Please adapt 'config.inc.php', 'phppgadmin.conf' for apache, ...
+to your needs.
diff --git a/network/axel/doinst.sh b/network/phppgadmin/doinst.sh
index fa6f314c12..9e17dcbecd 100644
--- a/network/axel/doinst.sh
+++ b/network/phppgadmin/doinst.sh
@@ -11,4 +11,4 @@ config() {
# Otherwise, we leave the .new copy for the admin to consider...
}
-config etc/axelrc.new
+config etc/httpd/conf.d/phppgadmin.conf.new
diff --git a/network/phppgadmin/http-pgadmin.conf b/network/phppgadmin/http-pgadmin.conf
new file mode 100644
index 0000000000..1bd0381933
--- /dev/null
+++ b/network/phppgadmin/http-pgadmin.conf
@@ -0,0 +1,17 @@
+Alias /phppgadmin /usr/share/phppgadmin/
+
+<Directory /usr/share/phppgadmin>
+# SSLRequireSSL
+ Options FollowSymlinks
+ AllowOverride None
+ DirectoryIndex index.php
+ Require ip 127.0.0.1
+</Directory>
+
+<Directory /usr/share/phppgadmin/conf>
+ Require all denied
+</Directory>
+
+<Directory /usr/share/phppgadmin/libraries>
+ Require all denied
+</Directory>
diff --git a/network/midori/midori.SlackBuild b/network/phppgadmin/phppgadmin.SlackBuild
index a4f89197da..86bd57a71b 100644
--- a/network/midori/midori.SlackBuild
+++ b/network/phppgadmin/phppgadmin.SlackBuild
@@ -1,12 +1,8 @@
#!/bin/bash
-# Slackware build script for midori.
+# Slackware build script for phppgadmin
-# Copyright 2008 Andrew Brouwers <abrouwers@gmail.com>
-# Copyright 2009-2011 Pierre Cazenave <pwcazenave {at} gmail [dot] com>
-# Copyright 2012-2013 Roberto Neri, Palermo, Italy
-# Copyright 2013-2019 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
-#
+# Copyright 2023 Michel A. Begue <mab974@misouk.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,24 +24,25 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=midori
-SRCNAM=core
-VERSION=${VERSION:-9.0}
+PRGNAM='phppgadmin'
+VERSION=${VERSION:-7.13.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+SRCNAM=phpPgAdmin
+
+DOCROOT=${DOCROOT:-/usr/share}
+PHPUSER=${PHPUSER:-root}
+PHPGROUP=${PHPGROUP:-apache}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
+ *) 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
@@ -55,30 +52,13 @@ 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" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
set -eu
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.?z
+tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
@@ -87,30 +67,25 @@ 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 wrong focus
-patch -p1 < $CWD/0115b02f43d23612366d0c5063e6b314d04e3853.patch
-
-mkdir -p build
-cd build
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=/usr/lib$LIBDIRSUFFIX \
- -DCMAKE_C_FLAGS="$SLKCFLAGS" \
- -DVALA_CFLAGS="$SLKCFLAGS" \
- -G Ninja \
- ..
- "${NINJA:=ninja}"
- DESTDIR=$PKG $NINJA install
-cd ..
-
-rm -fR $PKG/usr/share/doc
+mkdir -p $PKG$DOCROOT
+cp -a $TMP/$SRCNAM-$VERSION $PKG$DOCROOT
+( cd $PKG$DOCROOT; ln -s ./$SRCNAM-$VERSION ./$PRGNAM )
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING *.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ [A-Z]* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mkdir -p $PKG/etc/httpd/conf.d
+cp -a $CWD/http-pgadmin.conf $PKG/etc/httpd/conf.d/phppgadmin.conf.new
+
+chown -R $PHPUSER:$PHPGROUP $PKG$DOCROOT/$SRCNAM-$VERSION
+chmod -R o-rwx $PKG$DOCROOT/$SRCNAM-$VERSION
+
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
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-${BUILD}$TAG.$PKGTYPE
diff --git a/network/phppgadmin/phppgadmin.info b/network/phppgadmin/phppgadmin.info
new file mode 100644
index 0000000000..73bfd5f275
--- /dev/null
+++ b/network/phppgadmin/phppgadmin.info
@@ -0,0 +1,10 @@
+PRGNAM="phppgadmin"
+VERSION="7.13.0"
+HOMEPAGE="https://github.com/phppgadmin/phppgadmin"
+DOWNLOAD="https://github.com/phppgadmin/phppgadmin/releases/download/REL_7-13-0/phpPgAdmin-7.13.0.tar.gz"
+MD5SUM="8a38dca6bd0bcdc9481c88f1ac0c0f80"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="php-pgsql"
+MAINTAINER="Michel A. Begue"
+EMAIL="mab974@misouk.com"
diff --git a/network/phppgadmin/slack-desc b/network/phppgadmin/slack-desc
new file mode 100644
index 0000000000..9c1fb25d46
--- /dev/null
+++ b/network/phppgadmin/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------------------------------------------------------|
+phppgadmin: phppgadmin (a php webapp for Postgresql)
+phppgadmin:
+phppgadmin: phpPgAdmin is a Web-based application written in PHP that can manage
+phppgadmin: one or more PostgreSQL databases. It is 100% compatible with
+phppgadmin: PostgreSQL. It performs all the standard Data Definition Language
+phppgadmin: (DDL) and Data Manipulation Language (DML) statements. It can back up
+phppgadmin: and restore an entire cluster, and can manage a Slony replication
+phppgadmin: cluster, all in an easy-to-understand interface.
+phppgadmin:
+phppgadmin:
+phppgadmin:
diff --git a/network/pidgin-opensteamworks/pidgin-opensteamworks.info b/network/pidgin-opensteamworks/pidgin-opensteamworks.info
index 63e540bf43..ae83f8a441 100644
--- a/network/pidgin-opensteamworks/pidgin-opensteamworks.info
+++ b/network/pidgin-opensteamworks/pidgin-opensteamworks.info
@@ -1,7 +1,7 @@
PRGNAM="pidgin-opensteamworks"
VERSION="1.6.1"
HOMEPAGE="https://github.com/EionRobb/pidgin-opensteamworks"
-DOWNLOAD="https://github.com/EionRobb/pidgin-opensteamworks/archive/1.6.1.tar.gz"
+DOWNLOAD="https://github.com/EionRobb/pidgin-opensteamworks/archive/1.6.1/pidgin-opensteamworks-1.6.1.tar.gz"
MD5SUM="a397dbb2fd1d58769506567bd2aa6f1b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/pidgin-privacy-please/pidgin-privacy-please.SlackBuild b/network/pidgin-privacy-please/pidgin-privacy-please.SlackBuild
index 372775693d..063382693d 100644
--- a/network/pidgin-privacy-please/pidgin-privacy-please.SlackBuild
+++ b/network/pidgin-privacy-please/pidgin-privacy-please.SlackBuild
@@ -30,14 +30,6 @@ BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
@@ -50,6 +42,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
diff --git a/network/pidgin-whatsapp/pidgin-whatsapp.info b/network/pidgin-whatsapp/pidgin-whatsapp.info
index e442c22075..ef52c5163d 100644
--- a/network/pidgin-whatsapp/pidgin-whatsapp.info
+++ b/network/pidgin-whatsapp/pidgin-whatsapp.info
@@ -1,7 +1,7 @@
PRGNAM="pidgin-whatsapp"
VERSION="0.8.6"
HOMEPAGE="https://github.com/davidgfnet/whatsapp-purple"
-DOWNLOAD="https://github.com/davidgfnet/whatsapp-purple/archive/v0.8.6.tar.gz"
+DOWNLOAD="https://github.com/davidgfnet/whatsapp-purple/archive/v0.8.6/whatsapp-purple-0.8.6.tar.gz"
MD5SUM="1aff0445ec9960b67082c0992ce21b45"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/polipo/doinst.sh b/network/polipo/doinst.sh
index 22e39ecac9..a3be83cfe3 100644
--- a/network/polipo/doinst.sh
+++ b/network/polipo/doinst.sh
@@ -18,8 +18,11 @@ if [ -e etc/rc.d/rc.polipo ]; then
mv etc/rc.d/rc.polipo.new.incoming etc/rc.d/rc.polipo.new
fi
-if [ -x /usr/bin/install-info ]; then
- chroot . /usr/bin/install-info --info-dir=/usr/info /usr/info/polipo.info.gz 2> /dev/null
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
fi
config etc/rc.d/rc.polipo.new
diff --git a/network/polipo/douninst.sh b/network/polipo/douninst.sh
new file mode 100644
index 0000000000..1bef502028
--- /dev/null
+++ b/network/polipo/douninst.sh
@@ -0,0 +1,6 @@
+if [ -x /usr/bin/install-info -a -d usr/info ]; then
+ ( cd usr/info
+ rm -f dir
+ for i in *.info*; do /usr/bin/install-info $i dir 2>/dev/null; done
+ )
+fi
diff --git a/network/polipo/polipo.SlackBuild b/network/polipo/polipo.SlackBuild
index e623a64743..0f9e399932 100644
--- a/network/polipo/polipo.SlackBuild
+++ b/network/polipo/polipo.SlackBuild
@@ -23,12 +23,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20240331 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - handle /usr/info properly in doinst.sh, add douninst.sh
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=polipo
VERSION=${VERSION:-1.1.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +42,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
@@ -83,9 +82,9 @@ patch -p1 < $CWD/makefile.diff
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 \
+ -exec chmod 755 {} + -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ -exec chmod 644 {} +
make CDEBUGFLAGS="$SLKCFLAGS"
make install DESTDIR=$PKG
@@ -110,6 +109,7 @@ 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
+cat $CWD/douninst.sh > $PKG/install/douninst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/polipo/polipo.info b/network/polipo/polipo.info
index 7f8de43505..86c583f827 100644
--- a/network/polipo/polipo.info
+++ b/network/polipo/polipo.info
@@ -1,7 +1,7 @@
PRGNAM="polipo"
VERSION="1.1.1"
HOMEPAGE="http://www.pps.jussieu.fr/~jch/software/polipo/"
-DOWNLOAD="https://github.com/jech/polipo/archive/polipo-1.1.1.tar.gz"
+DOWNLOAD="https://github.com/jech/polipo/archive/polipo-1.1.1/polipo-polipo-1.1.1.tar.gz"
MD5SUM="bfbe3222a517d7c4153c4dc7cd9fd2ef"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/postfix-pgsql/postfix-pgsql.SlackBuild b/network/postfix-pgsql/postfix-pgsql.SlackBuild
index 0a0d6b7b7e..770b52557e 100644
--- a/network/postfix-pgsql/postfix-pgsql.SlackBuild
+++ b/network/postfix-pgsql/postfix-pgsql.SlackBuild
@@ -3,7 +3,7 @@
# Copyright 2006, 2011 Alan Hicks, Lizella, GA
# Copyright 2010, 2011, 2013, 2014, 2015, 2016, 2017 Mario Preksavec, Zagreb, Croatia
# Copyright 2017, 2018 Patrick J. Volkerding, Sebeka, MN USA
-# Copyright 2020, 2021, 2022 Eugen Wissner, Dachau, Germany
+# Copyright 2020, 2021, 2022, 2023, 2024 Eugen Wissner, Mannheim, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=postfix-pgsql
-VERSION=${VERSION:-3.6.4}
+VERSION=${VERSION:-3.6.15}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/postfix-pgsql/postfix-pgsql.info b/network/postfix-pgsql/postfix-pgsql.info
index f961be8e24..63998fb4ee 100644
--- a/network/postfix-pgsql/postfix-pgsql.info
+++ b/network/postfix-pgsql/postfix-pgsql.info
@@ -1,8 +1,8 @@
PRGNAM="postfix-pgsql"
-VERSION="3.6.4"
+VERSION="3.6.15"
HOMEPAGE="https://www.postfix.org/"
-DOWNLOAD="http://cdn.postfix.johnriley.me/mirrors/postfix-release/official/postfix-3.6.4.tar.gz"
-MD5SUM="fcc071c864d3b152a14b30b399ffda7f"
+DOWNLOAD="http://ftp.porcupine.org/mirrors/postfix-release/official/postfix-3.6.15.tar.gz"
+MD5SUM="88471ed95d8f779d16e5c77c000367d5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="postgresql"
diff --git a/network/pounce/README b/network/pounce/README
new file mode 100644
index 0000000000..5e62e85d38
--- /dev/null
+++ b/network/pounce/README
@@ -0,0 +1,19 @@
+pounce(1) is a multi-client, TLS-only IRC bouncer. It maintains a
+persistent connection to an IRC server, acting as a proxy and buffer for
+a number of clients. When a client connects, any messages received
+since it last disconnected will be relayed to it. Unlike some other
+bouncers, pounce uses a single buffer for all IRC messages, which acts
+as a queue from which each client reads messages independently.
+
+pounce speaks regular modern IRC to both servers and clients, using the
+server-time extension to indicate when messages originally occurred.
+Clients identify themselves to pounce by their IRC usernames. See
+QUIRKS(7) for notes on connecting pounce with particular networks and
+clients.
+
+Also included are pounce-notify(1) and pounce-palaver(1)
+
+DEPENDENCIES
+
+pounce requires either libtls or libressl. libtls is the smaller,
+faster build of the two.
diff --git a/network/pounce/pounce.SlackBuild b/network/pounce/pounce.SlackBuild
new file mode 100644
index 0000000000..0da6dc5a65
--- /dev/null
+++ b/network/pounce/pounce.SlackBuild
@@ -0,0 +1,92 @@
+#!/bin/bash
+
+# slackbuild script for pounce
+# By D Woodfall <dave@slackbuilds.org>
+# Licensed under the WTFPL (http://www.wtfpl.net)
+#
+# 2023-05-10 11:38:55 +0100 Added rpath. DW.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=pounce
+VERSION=${VERSION:-3.1}
+BUILD=${BUILD:-2}
+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 . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + \
+ -o \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+# NOTE in case libressl is installed instead of libtls
+export PKG_CONFIG_PATH=/usr/lib${LIBDIRSUFFIX}/libressl/pkgconfig:$PKG_CONFIG_PATH
+export CFLAGS="$SLKCFLAGS -L/usr/lib${LIBDIRSUFFIX}/libressl"
+export LDFLAGS="-Wl,-rpath=/usr/lib${LIBDIRSUFFIX}/libressl"
+
+./configure \
+ --prefix=/usr \
+ --mandir=/usr/man \
+ --enable-notify \
+ --enable-palaver
+
+make all
+make install DESTDIR=$PKG
+
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
+
+strip --strip-unneeded $PKG/usr/bin/$PRGNAM
+
+gzip -9 $PKG/usr/man/man1/*.1
+gzip -9 -c pounce-palaver.1 > $PKG/usr/man/man1/pounce-palaver.1.gz
+gzip -9 -c pounce-notify.1 > $PKG/usr/man/man1/pounce-notify.1.gz
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ LICENSE README.7 QUIRKS.7 \
+ $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/pounce/pounce.info b/network/pounce/pounce.info
new file mode 100644
index 0000000000..e31f88a0d5
--- /dev/null
+++ b/network/pounce/pounce.info
@@ -0,0 +1,10 @@
+PRGNAM="pounce"
+VERSION="3.1"
+HOMEPAGE="https://git.causal.agency/pounce/about/"
+DOWNLOAD="https://git.causal.agency/pounce/snapshot/pounce-3.1.tar.gz"
+MD5SUM="db31cc00c084bb803f21615f6ac899c8"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libtls"
+MAINTAINER="D Woodfall"
+EMAIL="dave@slackbuilds.org"
diff --git a/network/pounce/slack-desc b/network/pounce/slack-desc
new file mode 100644
index 0000000000..f869d4ff6c
--- /dev/null
+++ b/network/pounce/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------------------------------------------------------|
+pounce: pounce (multi-client, TLS-only IRC bouncer)
+pounce:
+pounce: pounce(1) is a multi-client, TLS-only IRC bouncer. It maintains a
+pounce: persistent connection to an IRC server, acting as a proxy and
+pounce: buffer for a number of clients.
+pounce:
+pounce: https://git.causal.agency/pounce/about/
+pounce:
+pounce:
+pounce:
+pounce:
diff --git a/network/privoxy/privoxy.SlackBuild b/network/privoxy/privoxy.SlackBuild
index 9915433525..8ebfd726b4 100644
--- a/network/privoxy/privoxy.SlackBuild
+++ b/network/privoxy/privoxy.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for privoxy
# Copyright (c) 2007 alkos333 <me@alkos333.net>
-# Copyright 2014-2022 Kyle Guinn <elyk03@gmail.com>
+# Copyright 2014-2023 Kyle Guinn <elyk03@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=privoxy
-VERSION=${VERSION:-3.0.33}
+VERSION=${VERSION:-3.0.34}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -45,7 +45,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
fi
TMP=${TMP:-/tmp/SBo}
-PKG=$TMP/package-$PRGNAM-$VERSION
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
diff --git a/network/privoxy/privoxy.info b/network/privoxy/privoxy.info
index 561bf7f690..846feeeb0b 100644
--- a/network/privoxy/privoxy.info
+++ b/network/privoxy/privoxy.info
@@ -1,8 +1,8 @@
PRGNAM="privoxy"
-VERSION="3.0.33"
+VERSION="3.0.34"
HOMEPAGE="https://www.privoxy.org/"
-DOWNLOAD="https://sourceforge.net/projects/ijbswa/files/Sources/3.0.33%20%28stable%29/privoxy-3.0.33-stable-src.tar.gz"
-MD5SUM="d6caf3eaad4812f0658b68d5b3ba3a06"
+DOWNLOAD="https://sourceforge.net/projects/ijbswa/files/Sources/3.0.34%20%28stable%29/privoxy-3.0.34-stable-src.tar.gz"
+MD5SUM="08fba0352666820c8ffbe8a25e76c2c0"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/profanity/README b/network/profanity/README
index 706f979469..025a283eb3 100644
--- a/network/profanity/README
+++ b/network/profanity/README
@@ -3,3 +3,5 @@ and libstrophe, inspired by Irssi.
libotr (https://otr.cypherpunks.ca/) is an optional dependency for
verifiable end-to-end encryption.
+
+libsignal-protocol-c is an optional dependency for OMEMO support.
diff --git a/network/profanity/profanity.SlackBuild b/network/profanity/profanity.SlackBuild
index 619dd884ce..9e458a875a 100644
--- a/network/profanity/profanity.SlackBuild
+++ b/network/profanity/profanity.SlackBuild
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=profanity
-VERSION=${VERSION:-0.5.1}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-0.14.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/profanity/profanity.info b/network/profanity/profanity.info
index 5d8479bb2e..129fd03a60 100644
--- a/network/profanity/profanity.info
+++ b/network/profanity/profanity.info
@@ -1,8 +1,8 @@
PRGNAM="profanity"
-VERSION="0.5.1"
+VERSION="0.14.0"
HOMEPAGE="http://www.profanity.im/"
-DOWNLOAD="http://www.profanity.im/profanity-0.5.1.tar.gz"
-MD5SUM="1a955de0bd55c111c46838a215866bb8"
+DOWNLOAD="https://github.com/profanity-im/profanity/releases/download/0.14.0/profanity-0.14.0.tar.gz"
+MD5SUM="ecadfd67f43d96841b68781a7254552a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="libstrophe"
diff --git a/network/prosody-mod-block-strangers/prosody-mod-block-strangers.info b/network/prosody-mod-block-strangers/prosody-mod-block-strangers.info
index 3032f16633..47984f06ce 100644
--- a/network/prosody-mod-block-strangers/prosody-mod-block-strangers.info
+++ b/network/prosody-mod-block-strangers/prosody-mod-block-strangers.info
@@ -2,7 +2,7 @@ PRGNAM="prosody-mod-block-strangers"
VERSION="hg3023"
HOMEPAGE="https://modules.prosody.im/mod_block_strangers.html"
DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/38365c1f1fe4.tar.gz"
-MD5SUM="d2932e966d188bd9b884b501104ad7dc"
+MD5SUM="37a1e61479b0f625cd10ed1046dde1a1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="prosody"
diff --git a/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.SlackBuild b/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.SlackBuild
index c83208f5cc..64c9edf271 100644
--- a/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.SlackBuild
+++ b/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.SlackBuild
@@ -27,8 +27,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=prosody-mod-cloud-notify
MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
-VERSION=${VERSION:-hg4996}
-REVISION=${REVISION:-031e0dd90f4b}
+VERSION=${VERSION:-hg5216}
+REVISION=${REVISION:-1d9dbe84b6e8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.info b/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.info
index ae57e4cf82..2942b3b99b 100644
--- a/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.info
+++ b/network/prosody-mod-cloud-notify/prosody-mod-cloud-notify.info
@@ -1,8 +1,8 @@
PRGNAM="prosody-mod-cloud-notify"
-VERSION="hg4996"
+VERSION="hg5216"
HOMEPAGE="https://modules.prosody.im/mod_cloud_notify.html"
-DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/031e0dd90f4b.tar.gz"
-MD5SUM="515c25635fdca9f11e0a4b14ef4bd664"
+DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/1d9dbe84b6e8.tar.gz"
+MD5SUM="1e71af1e02d2d94d42a41a204ad692cb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="prosody"
diff --git a/network/prosody-mod-csi/README b/network/prosody-mod-csi/README
deleted file mode 100644
index de0f96f4bc..0000000000
--- a/network/prosody-mod-csi/README
+++ /dev/null
@@ -1,5 +0,0 @@
-prosody-mod-csi (XEP-0352: Client State Indication)
-
-This module implements Client State Indication, a way for mobile
-clients to tell the server that they are sitting in someone's pocket
-and would rather not get some less urgent things pushed to it.
diff --git a/network/prosody-mod-csi/prosody-mod-csi.info b/network/prosody-mod-csi/prosody-mod-csi.info
deleted file mode 100644
index ef46fc667b..0000000000
--- a/network/prosody-mod-csi/prosody-mod-csi.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="prosody-mod-csi"
-VERSION="hg4785"
-HOMEPAGE="https://modules.prosody.im/mod_csi.html"
-DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/05bea2f43d97.tar.gz"
-MD5SUM="84d78366cecb1e233772ae80b61e0519"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="prosody"
-MAINTAINER="Andrew Clemons"
-EMAIL="andrew.clemons@gmail.com"
diff --git a/network/prosody-mod-csi/slack-desc b/network/prosody-mod-csi/slack-desc
deleted file mode 100644
index d9779e78af..0000000000
--- a/network/prosody-mod-csi/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-prosody-mod-csi: prosody-mod-csi (XEP-0352: Client State Indication)
-prosody-mod-csi:
-prosody-mod-csi: This module implements Client State Indication, a way for mobile
-prosody-mod-csi: clients to tell the server that they are sitting in someones pocket
-prosody-mod-csi: and would rather not get some less urgent things pushed to it.
-prosody-mod-csi:
-prosody-mod-csi:
-prosody-mod-csi:
-prosody-mod-csi:
-prosody-mod-csi: https://modules.prosody.im/mod_csi.html
-prosody-mod-csi:
diff --git a/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.SlackBuild b/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.SlackBuild
index 2533508a02..9ad34f4e10 100644
--- a/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.SlackBuild
+++ b/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for prosody-mod-filter-chatstates
# Copyright 2016-2018 Andrew Clemons, Wellington, New Zealand
+# Copyright 2022 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +29,7 @@ PRGNAM=prosody-mod-filter-chatstates
MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
VERSION=${VERSION:-hg1873}
REVISION=${REVISION:-9283a6bcf512}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.info b/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.info
index 829ca9ef32..16f40c07b3 100644
--- a/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.info
+++ b/network/prosody-mod-filter-chatstates/prosody-mod-filter-chatstates.info
@@ -2,9 +2,9 @@ PRGNAM="prosody-mod-filter-chatstates"
VERSION="hg1873"
HOMEPAGE="https://modules.prosody.im/mod_filter_chatstates.html"
DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/9283a6bcf512.tar.gz"
-MD5SUM="4cc5c574c1c3db6f2ec6b0ae626c69c9"
+MD5SUM="e178bd314060037ddd44dd1b7dcc7330"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="prosody-mod-csi"
+REQUIRES="prosody"
MAINTAINER="Andrew Clemons"
EMAIL="andrew.clemons@gmail.com"
diff --git a/network/prosody-mod-http-upload/prosody-mod-http-upload.info b/network/prosody-mod-http-upload/prosody-mod-http-upload.info
index aaf61ae894..30def8352a 100644
--- a/network/prosody-mod-http-upload/prosody-mod-http-upload.info
+++ b/network/prosody-mod-http-upload/prosody-mod-http-upload.info
@@ -2,7 +2,7 @@ PRGNAM="prosody-mod-http-upload"
VERSION="hg4976"
HOMEPAGE="https://modules.prosody.im/mod_http_upload.html"
DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/75b6e5df65f9.tar.gz"
-MD5SUM="a698c71111f7298301c33ffc665378f7"
+MD5SUM="404293dd5b134ece98f95f2e4c7e682b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="prosody"
diff --git a/network/prosody-mod-smacks/README b/network/prosody-mod-smacks/README
deleted file mode 100644
index 504fff1bde..0000000000
--- a/network/prosody-mod-smacks/README
+++ /dev/null
@@ -1,5 +0,0 @@
-prosody-mod-smacks (XEP-0198: Stream Management)
-
-When using XEP-0198 both the client and the server keep a queue of
-the most recently sent stanzas - this is cleared when the other end
-acknowledges they have received the stanzas.
diff --git a/network/prosody-mod-smacks/prosody-mod-smacks.SlackBuild b/network/prosody-mod-smacks/prosody-mod-smacks.SlackBuild
deleted file mode 100644
index ef28f7d732..0000000000
--- a/network/prosody-mod-smacks/prosody-mod-smacks.SlackBuild
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for prosody-mod-smacks
-
-# Copyright 2016-2021 Andrew Clemons, Wellington, New Zealand
-# 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=prosody-mod-smacks
-MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
-VERSION=${VERSION:-hg4771}
-REVISION=${REVISION:-e227af629736}
-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
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- LIBDIRSUFFIX=""
-fi
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf Community-Modules-$REVISION
-tar xvf $CWD/Community-Modules-$REVISION.tar.gz || tar xvf $CWD/$REVISION.tar.gz
-cd Community-Modules-$REVISION
-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 $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/
-cp -a $MDLNAM $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-mv \
- $PKG/usr/lib$LIBDIRSUFFIX/prosody/modules/$MDLNAM/README.markdown \
- $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/prosody-mod-smacks/prosody-mod-smacks.info b/network/prosody-mod-smacks/prosody-mod-smacks.info
deleted file mode 100644
index b5bc1368f4..0000000000
--- a/network/prosody-mod-smacks/prosody-mod-smacks.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="prosody-mod-smacks"
-VERSION="hg4771"
-HOMEPAGE="https://modules.prosody.im/mod_smacks.html"
-DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/e227af629736.tar.gz"
-MD5SUM="660c1c5703bb11cb131cf15009f22067"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="prosody"
-MAINTAINER="Andrew Clemons"
-EMAIL="andrew.clemons@gmail.com"
diff --git a/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.SlackBuild b/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.SlackBuild
index df3529e5af..8de0f01060 100644
--- a/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.SlackBuild
+++ b/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.SlackBuild
@@ -3,6 +3,7 @@
# Slackware build script for prosody-mod-throttle-presence
# Copyright 2016-2018 Andrew Clemons, Wellington, New Zealand
+# Copyright 2022 Andrew Clemons, Tokyo Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +29,7 @@ PRGNAM=prosody-mod-throttle-presence
MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
VERSION=${VERSION:-hg1925}
REVISION=${REVISION:-552faee596b7}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +41,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
diff --git a/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.info b/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.info
index 79f4221da3..68f9b3f136 100644
--- a/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.info
+++ b/network/prosody-mod-throttle-presence/prosody-mod-throttle-presence.info
@@ -2,9 +2,9 @@ PRGNAM="prosody-mod-throttle-presence"
VERSION="hg1925"
HOMEPAGE="https://modules.prosody.im/mod_throttle_presence.html"
DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/552faee596b7.tar.gz"
-MD5SUM="94987f1464834bf1f4b076579be1a16d"
+MD5SUM="abd61c3cd1b26a2d78c23c46e3cbad34"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="prosody-mod-csi"
+REQUIRES="prosody"
MAINTAINER="Andrew Clemons"
EMAIL="andrew.clemons@gmail.com"
diff --git a/network/prosody-mod-turncredentials/prosody-mod-turncredentials.info b/network/prosody-mod-turncredentials/prosody-mod-turncredentials.info
index 863aeb8bf3..209363ee05 100644
--- a/network/prosody-mod-turncredentials/prosody-mod-turncredentials.info
+++ b/network/prosody-mod-turncredentials/prosody-mod-turncredentials.info
@@ -2,7 +2,7 @@ PRGNAM="prosody-mod-turncredentials"
VERSION="hg4055"
HOMEPAGE="https://modules.prosody.im/mod_turncredentials.html"
DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/cf1304ad2336.tar.gz"
-MD5SUM="65f21e5bde5186f0281d731aeadfcb3e"
+MD5SUM="eb89df678299b6a29fe4ba0b5c2dcc24"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="prosody"
diff --git a/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.SlackBuild b/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.SlackBuild
index aec08995e6..0b201f8167 100644
--- a/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.SlackBuild
+++ b/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for prosody-mod-vcard-muc
-# Copyright 2019 Andrew Clemons, Wellington, New Zealand
+# Copyright 2019-2022 Andrew Clemons, Wellington, New Zealand
+# Copyright 2023 Andrew Clemons, Tokyo, Japan
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,8 +27,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=prosody-mod-vcard-muc
MDLNAM=$(echo $PRGNAM | sed 's/prosody-//' | tr '-' '_')
-VERSION=${VERSION:-hg4879}
-REVISION=${REVISION:-883d45d2082a}
+VERSION=${VERSION:-hg5290}
+REVISION=${REVISION:-dddac5a3f447}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.info b/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.info
index f5c8852560..5fcc7a8363 100644
--- a/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.info
+++ b/network/prosody-mod-vcard-muc/prosody-mod-vcard-muc.info
@@ -1,8 +1,8 @@
PRGNAM="prosody-mod-vcard-muc"
-VERSION="hg4879"
+VERSION="hg5290"
HOMEPAGE="https://modules.prosody.im/mod_vcard_muc.html"
-DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/883d45d2082a.tar.gz"
-MD5SUM="d39b39af6e29d51be9520afcc61ed0af"
+DOWNLOAD="https://hg.prosody.im/prosody-modules/archive/dddac5a3f447.tar.gz"
+MD5SUM="325626de81a8b2a6f250b02611b27cb1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="prosody"
diff --git a/network/prosody/prosody.SlackBuild b/network/prosody/prosody.SlackBuild
index 947cadfcdf..00fc0bc3e4 100644
--- a/network/prosody/prosody.SlackBuild
+++ b/network/prosody/prosody.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=prosody
-VERSION=${VERSION:-0.11.13}
+VERSION=${VERSION:-0.12.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/prosody/prosody.info b/network/prosody/prosody.info
index ad54e78f02..7844b0f097 100644
--- a/network/prosody/prosody.info
+++ b/network/prosody/prosody.info
@@ -1,8 +1,8 @@
PRGNAM="prosody"
-VERSION="0.11.13"
+VERSION="0.12.3"
HOMEPAGE="http://prosody.im/"
-DOWNLOAD="https://prosody.im/downloads/source/prosody-0.11.13.tar.gz"
-MD5SUM="7214ee57d4702585bd0d3428e69790b4"
+DOWNLOAD="https://prosody.im/downloads/source/prosody-0.12.3.tar.gz"
+MD5SUM="264d51cffd9e1d9c1a02352786eabfca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="luasec luasocket luaexpat lua-filesystem"
diff --git a/network/protonmail-bridge/README b/network/protonmail-bridge/README
index c14d227afc..fc62c44680 100644
--- a/network/protonmail-bridge/README
+++ b/network/protonmail-bridge/README
@@ -1,9 +1,8 @@
-The ProtonMail Bridge is an application for paid users that runs on your
-computer in the background and seamlessly encrypts and decrypts your
-mail as it enters and leaves your computer. It allows for full
-integration of your ProtonMail account with any program that supports
-IMAP and SMTP such as Microsoft Outlook, Mozilla Thunderbird and Apple
-Mail.
+Proton Mail Bridge is a desktop application for paid users that runs in
+the background, encrypting and decrypting messages as they enter and
+leave your computer. It allows for full integration of your ProtonMail
+account with any program that supports IMAP and SMTP such as Microsoft
+Outlook, Mozilla Thunderbird and Apple Mail.
Once you've installed and adder your account(s) to the Bridge you will
need to configure your email client. The setup guide for Thunderbird
diff --git a/network/protonmail-bridge/protonmail-bridge.SlackBuild b/network/protonmail-bridge/protonmail-bridge.SlackBuild
index 4ea6d4e665..8a8ab342e2 100644
--- a/network/protonmail-bridge/protonmail-bridge.SlackBuild
+++ b/network/protonmail-bridge/protonmail-bridge.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for protonmail-bridge
-# Copyright 2018-2022 Erich Ritz, Jenks, Oklahoma, USA
+# Copyright 2018-2024 Erich Ritz, Jenks, Oklahoma, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,20 +25,12 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=protonmail-bridge
-VERSION=${VERSION:-2.3.0}
+VERSION=${VERSION:-3.10.0}
DEBVERSION=${DEBVERSION:--1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
@@ -51,6 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
# Upstream only has binary support for x86_64 at present.
if [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
@@ -71,11 +68,17 @@ find -L . \
-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 {} \;
+# Upstream claims "not a bug" https://github.com/ProtonMail/proton-bridge/issues/436
+# so remove SGID bit here. Thanks to sbopkglint for catching it.
+chmod -R g-s .
mv $PKG/usr/lib $PKG/usr/lib64
-strip --strip-unneeded $PKG/usr/lib64/protonmail/bridge/proton-bridge-launcher
+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 -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs chmod 755 2> /dev/null || true
rm $PKG/usr/bin/protonmail-bridge
-ln -s /usr/lib64/protonmail/bridge/proton-bridge-launcher $PKG/usr/bin/protonmail-bridge
+ln -s /usr/lib64/protonmail/bridge/proton-bridge $PKG/usr/bin/protonmail-bridge
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
mv $PKG/usr/share/doc/protonmail/bridge/* $PKG/usr/doc/$PRGNAM-$VERSION/
diff --git a/network/protonmail-bridge/protonmail-bridge.info b/network/protonmail-bridge/protonmail-bridge.info
index 25394f55ff..dbfc012d09 100644
--- a/network/protonmail-bridge/protonmail-bridge.info
+++ b/network/protonmail-bridge/protonmail-bridge.info
@@ -1,10 +1,10 @@
PRGNAM="protonmail-bridge"
-VERSION="2.3.0"
+VERSION="3.10.0"
HOMEPAGE="https://proton.me/mail/bridge"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://proton.me/download/bridge/protonmail-bridge_2.3.0-1_amd64.deb"
-MD5SUM_x86_64="471e21512b1eca69633e68633be235e5"
+DOWNLOAD_x86_64="https://proton.me/download/bridge/protonmail-bridge_3.10.0-1_amd64.deb"
+MD5SUM_x86_64="93a2a675cb5d51be2bcbc616f8a5745b"
REQUIRES=""
MAINTAINER="Erich Ritz"
EMAIL="erich.public@protonmail.com"
diff --git a/network/protonmail-import-export-app/protonmail-import-export-app.SlackBuild b/network/protonmail-import-export-app/protonmail-import-export-app.SlackBuild
index 797cbb754e..50ae0ff1be 100644
--- a/network/protonmail-import-export-app/protonmail-import-export-app.SlackBuild
+++ b/network/protonmail-import-export-app/protonmail-import-export-app.SlackBuild
@@ -31,11 +31,6 @@ BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-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}
@@ -48,6 +43,11 @@ if [ -z "$ARCH" ]; then
esac
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
# Upstream only has binary support for x86_64 at present.
if [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
diff --git a/network/protonvpn-cli/protonvpn-cli.SlackBuild b/network/protonvpn-cli/protonvpn-cli.SlackBuild
index 8477a7631a..66d4182521 100644
--- a/network/protonvpn-cli/protonvpn-cli.SlackBuild
+++ b/network/protonvpn-cli/protonvpn-cli.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for protonvpn-cli
-# Copyright 2019-2021 Erich Ritz, Jenks, Oklahoma, USA
+# Copyright 2019-2024 Erich Ritz, Jenks, Oklahoma, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=protonvpn-cli
SRCNAM=linux-cli-community
-VERSION=${VERSION:-2.2.11}
+VERSION=${VERSION:-2.2.12}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/protonvpn-cli/protonvpn-cli.info b/network/protonvpn-cli/protonvpn-cli.info
index 7ced143000..f112b73fa1 100644
--- a/network/protonvpn-cli/protonvpn-cli.info
+++ b/network/protonvpn-cli/protonvpn-cli.info
@@ -1,10 +1,10 @@
PRGNAM="protonvpn-cli"
-VERSION="2.2.11"
+VERSION="2.2.12"
HOMEPAGE="https://github.com/Rafficer/linux-cli-community"
-DOWNLOAD="https://github.com/Rafficer/linux-cli-community/archive/refs/tags/v2.2.11/linux-cli-community-2.2.11.tar.gz"
-MD5SUM="851e340eb2f419129844cd084c9d17ec"
+DOWNLOAD="https://github.com/Rafficer/linux-cli-community/archive/refs/tags/v2.2.12/linux-cli-community-2.2.12.tar.gz"
+MD5SUM="cd9ebf7d3767b8df2156fcbe325c5cae"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="docopt python3-pythondialog"
+REQUIRES="python3-docopt python3-pythondialog"
MAINTAINER="Erich Ritz"
EMAIL="erich.public@protonmail.com"
diff --git a/network/protonvpn-cli/slack-desc b/network/protonvpn-cli/slack-desc
index 8039a9cbfe..7ad3361d51 100644
--- a/network/protonvpn-cli/slack-desc
+++ b/network/protonvpn-cli/slack-desc
@@ -13,7 +13,7 @@ protonvpn-cli: is a full rewrite of the original bash protonvpn-cli in Python, w
protonvpn-cli: adds more features and functionality with the purpose of improving
protonvpn-cli: readability, speed, and reliability.
protonvpn-cli:
-protonvpn-cli: Homepage: https://github.com/ProtonVPN/linux-cli-community
+protonvpn-cli: Homepage: https://github.com/Rafficer/linux-cli-community
protonvpn-cli:
protonvpn-cli:
protonvpn-cli:
diff --git a/network/proxychains/proxychains.SlackBuild b/network/proxychains/proxychains.SlackBuild
index 60a33773f7..be3f2df062 100644
--- a/network/proxychains/proxychains.SlackBuild
+++ b/network/proxychains/proxychains.SlackBuild
@@ -29,8 +29,8 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=proxychains
SRCNAM=proxychains-ng
-VERSION=${VERSION:-4.14}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-4.16}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/proxychains/proxychains.info b/network/proxychains/proxychains.info
index 2f344a4236..d5f44eac86 100644
--- a/network/proxychains/proxychains.info
+++ b/network/proxychains/proxychains.info
@@ -1,10 +1,10 @@
PRGNAM="proxychains"
-VERSION="4.14"
+VERSION="4.16"
HOMEPAGE="https://github.com/rofl0r/proxychains-ng/"
-DOWNLOAD="https://github.com/rofl0r/proxychains-ng/archive/v4.14/proxychains-ng-4.14.tar.gz"
-MD5SUM="3232630140fe39d53796775285bb6652"
+DOWNLOAD="https://github.com/rofl0r/proxychains-ng/archive/v4.16/proxychains-ng-4.16.tar.gz"
+MD5SUM="acd5807e89df4cca70270260e85e9373"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/psi-plus/psi-plus.SlackBuild b/network/psi-plus/psi-plus.SlackBuild
index 8e0f5c0638..5afe5acb2a 100644
--- a/network/psi-plus/psi-plus.SlackBuild
+++ b/network/psi-plus/psi-plus.SlackBuild
@@ -47,7 +47,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-TMP=${TMP:-/tmp/$TAG}
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
diff --git a/network/psi-plus/psi-plus.info b/network/psi-plus/psi-plus.info
index ad3de96bab..1183d57ba6 100644
--- a/network/psi-plus/psi-plus.info
+++ b/network/psi-plus/psi-plus.info
@@ -6,5 +6,5 @@ MD5SUM="0ec48977544d9f69375b946b2a012505"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/psi/psi.info b/network/psi/psi.info
index a9a3719b7e..1539635931 100644
--- a/network/psi/psi.info
+++ b/network/psi/psi.info
@@ -6,5 +6,5 @@ MD5SUM="7c89b9140dd667db45523a2a14eb15c4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/pulse-sms/pulse-sms.SlackBuild b/network/pulse-sms/pulse-sms.SlackBuild
index 0a874716df..a7b99df6f1 100644
--- a/network/pulse-sms/pulse-sms.SlackBuild
+++ b/network/pulse-sms/pulse-sms.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Pulse SMS
-# Copyright 2020-2021 Ebben Aries <slackbuilds@dscp.org>
+# Copyright 2020-2023 Ebben Aries <slackbuilds@dscp.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,19 +25,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pulse-sms
-VERSION=${VERSION:-4.5.2}
+VERSION=${VERSION:-4.5.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
@@ -46,6 +38,11 @@ if [ -z "$ARCH" ]; then
ARCH=$( uname -m )
fi
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
# Upstream only has binary support for x86_64 at present.
if [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
diff --git a/network/pulse-sms/pulse-sms.info b/network/pulse-sms/pulse-sms.info
index cac99f1ebd..2649fe8728 100644
--- a/network/pulse-sms/pulse-sms.info
+++ b/network/pulse-sms/pulse-sms.info
@@ -1,10 +1,10 @@
PRGNAM="pulse-sms"
-VERSION="4.5.2"
+VERSION="4.5.3"
HOMEPAGE="https://messenger.klinkerapps.com/overview/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/klinker-apps/pulse-sms-desktop/releases/download/v4.5.2/pulse-sms-4.5.2-amd64.deb"
-MD5SUM_x86_64="6fb6f43226707c5b44a260436f29676f"
+DOWNLOAD_x86_64="https://github.com/klinker-apps/pulse-sms-desktop/releases/download/v4.5.3/pulse-sms-4.5.3-amd64.deb"
+MD5SUM_x86_64="55612d99de3dc72946ef2a17c5a63880"
REQUIRES=""
MAINTAINER="Ebben Aries"
EMAIL="slackbuilds@dscp.org"
diff --git a/network/pure-ftpd/pure-ftpd.SlackBuild b/network/pure-ftpd/pure-ftpd.SlackBuild
index ad98eb42f0..2263ce1277 100644
--- a/network/pure-ftpd/pure-ftpd.SlackBuild
+++ b/network/pure-ftpd/pure-ftpd.SlackBuild
@@ -4,6 +4,7 @@
# Copyright (c) 2017, Christophe Trussardi, Paris, France
# All rights reserved.
+# Modified to v1.0.51 by glennmcc 2023-09-16
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
@@ -24,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=pure-ftpd
-VERSION=${VERSION:-1.0.49}
+VERSION=${VERSION:-1.0.51}
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
@@ -115,7 +113,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
install -m 0644 \
- AUTHORS COPYING ChangeLog FAQ HISTORY INSTALL NEWS README* THANKS pureftpd* \
+ AUTHORS COPYING ChangeLog FAQ HISTORY NEWS README* THANKS pureftpd* \
$PKG/usr/doc/$PRGNAM-$VERSION/
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/pure-ftpd/pure-ftpd.info b/network/pure-ftpd/pure-ftpd.info
index 6fd77ce1e7..37601bbd16 100644
--- a/network/pure-ftpd/pure-ftpd.info
+++ b/network/pure-ftpd/pure-ftpd.info
@@ -1,10 +1,10 @@
PRGNAM="pure-ftpd"
-VERSION="1.0.49"
+VERSION="1.0.51"
HOMEPAGE="http://www.pureftpd.org/"
-DOWNLOAD="https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.49.tar.gz"
-MD5SUM="451879495ba61c1d7dcfca8dd231119f"
+DOWNLOAD="https://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.51.tar.gz"
+MD5SUM="b5199142482d64fbd288adc79b98a5c5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Christophe Trussardi"
-EMAIL="chris@teria.org"
+MAINTAINER="Glenn McCorkle"
+EMAIL="glennmcc@glennmcc.org"
diff --git a/network/purple-facebook/purple-facebook.info b/network/purple-facebook/purple-facebook.info
index 423c265723..6766df85bb 100644
--- a/network/purple-facebook/purple-facebook.info
+++ b/network/purple-facebook/purple-facebook.info
@@ -6,5 +6,5 @@ MD5SUM="fe58b39f835fac3e7616c34364d869a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/purple-googlechat/README b/network/purple-googlechat/README
index 0b28249c28..fd164e0f46 100644
--- a/network/purple-googlechat/README
+++ b/network/purple-googlechat/README
@@ -4,6 +4,3 @@ A replacement prpl for Google Chat in Pidgin/libpurple to support the
proprietary protocol that Google uses for its "Google Chat" service.
This plugin is written by Eion Robb based on the old Hangouts plugin
written by Eion Robb and Mike 'Maiku' Ruprecht.
-
-
-Homepage: https://bitbucket.org/EionRobb/purple-googlechat
diff --git a/network/purple-googlechat/purple-googlechat.SlackBuild b/network/purple-googlechat/purple-googlechat.SlackBuild
index c40e474b99..dcddbe48b5 100644
--- a/network/purple-googlechat/purple-googlechat.SlackBuild
+++ b/network/purple-googlechat/purple-googlechat.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=purple-googlechat
-VERSION=${VERSION:-dfdd9c9a428b}
+VERSION=${VERSION:-b6b824a4764b}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/purple-googlechat/purple-googlechat.info b/network/purple-googlechat/purple-googlechat.info
index b14b6637da..597e2a0788 100644
--- a/network/purple-googlechat/purple-googlechat.info
+++ b/network/purple-googlechat/purple-googlechat.info
@@ -1,8 +1,8 @@
PRGNAM="purple-googlechat"
-VERSION="dfdd9c9a428b"
+VERSION="b6b824a4764b"
HOMEPAGE="https://github.com/EionRobb/purple-googlechat"
-DOWNLOAD="https://ihacksh.it/slackbuilds/src/purple-googlechat-dfdd9c9a428b.tar.gz"
-MD5SUM="e945cc03a032e5b27f87e8d74b5b05ac"
+DOWNLOAD="https://ihacksh.it/slackbuilds/src/purple-googlechat-b6b824a4764b.tar.gz"
+MD5SUM="3d0fb3551095a45acdc54853ff20f1a5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="protobuf-c"
diff --git a/network/purple-plugin-pack/purple-plugin-pack.info b/network/purple-plugin-pack/purple-plugin-pack.info
index f3f47cf349..3679ac7953 100644
--- a/network/purple-plugin-pack/purple-plugin-pack.info
+++ b/network/purple-plugin-pack/purple-plugin-pack.info
@@ -6,5 +6,5 @@ MD5SUM="a1ee405e81ad955798af7b2a6a8564fb"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/purple-teams/purple-teams.SlackBuild b/network/purple-teams/purple-teams.SlackBuild
index a0275d2f93..6a185e4e61 100644
--- a/network/purple-teams/purple-teams.SlackBuild
+++ b/network/purple-teams/purple-teams.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Slackware build script for purple-googlechat
+# Slackware build script for purple-teams
# Copyright 2022 Dustin Metcalf - USA
# All rights reserved.
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=purple-teams
-VERSION=${VERSION:-7c7bc282f9ae}
+VERSION=${VERSION:-20230625_9065c077}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/purple-teams/purple-teams.info b/network/purple-teams/purple-teams.info
index fabefc04aa..3e1a0f07c8 100644
--- a/network/purple-teams/purple-teams.info
+++ b/network/purple-teams/purple-teams.info
@@ -1,8 +1,8 @@
PRGNAM="purple-teams"
-VERSION="7c7bc282f9ae"
+VERSION="20230625_9065c077"
HOMEPAGE="https://github.com/EionRobb/purple-teams"
-DOWNLOAD="https://ihacksh.it/slackbuilds/src/purple-teams-7c7bc282f9ae.tar.gz"
-MD5SUM="71379c1b6332d17bc06630712fc31e1f"
+DOWNLOAD="https://ihacksh.it/slackbuilds/src/purple-teams-20230625_9065c077.tar.gz"
+MD5SUM="6b5b5d332f1c4f1c205597e2dd46b88e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/putty/putty.SlackBuild b/network/putty/putty.SlackBuild
index 005c3a921d..d1b9e16dca 100644
--- a/network/putty/putty.SlackBuild
+++ b/network/putty/putty.SlackBuild
@@ -33,7 +33,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=putty
-VERSION=${VERSION:-0.77}
+VERSION=${VERSION:-0.81}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/putty/putty.info b/network/putty/putty.info
index 8792a4a48f..2d491d8ea4 100644
--- a/network/putty/putty.info
+++ b/network/putty/putty.info
@@ -1,8 +1,8 @@
PRGNAM="putty"
-VERSION="0.77"
+VERSION="0.81"
HOMEPAGE="https://www.chiark.greenend.org.uk/~sgtatham/putty/"
-DOWNLOAD="https://the.earth.li/~sgtatham/putty/latest/putty-0.77.tar.gz"
-MD5SUM="a6ffe10f1a3f63e7bfff0b212244fdf7"
+DOWNLOAD="https://the.earth.li/~sgtatham/putty/latest/putty-0.81.tar.gz"
+MD5SUM="351ef5e546091003a10b309455659ec4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="%README%"
diff --git a/network/pyNeighborhood/pyNeighborhood.info b/network/pyNeighborhood/pyNeighborhood.info
index fbe0d10677..72458c26ea 100644
--- a/network/pyNeighborhood/pyNeighborhood.info
+++ b/network/pyNeighborhood/pyNeighborhood.info
@@ -6,5 +6,5 @@ MD5SUM="32e2c0c5a3cb0fa750922088a18f4c01"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/python3-CherryMusic/python3-CherryMusic.SlackBuild b/network/python3-CherryMusic/python3-CherryMusic.SlackBuild
index 23fefedd7b..ac249c1577 100644
--- a/network/python3-CherryMusic/python3-CherryMusic.SlackBuild
+++ b/network/python3-CherryMusic/python3-CherryMusic.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=python3-CherryMusic
-SRCNAM=$(echo $PRGNAM | sed "s/python3-//")
+SRCNAM=${PRGNAM#python3-*}
VERSION=${VERSION:-0.41.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/python3-PyRSS2Gen/python3-PyRSS2Gen.SlackBuild b/network/python3-PyRSS2Gen/python3-PyRSS2Gen.SlackBuild
index ba44982550..32ee67daea 100644
--- a/network/python3-PyRSS2Gen/python3-PyRSS2Gen.SlackBuild
+++ b/network/python3-PyRSS2Gen/python3-PyRSS2Gen.SlackBuild
@@ -29,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=python3-PyRSS2Gen
-SRCNAM=$(echo $PRGNAM | sed "s/python3-//")
+SRCNAM=${PRGNAM#python3-*}
VERSION=${VERSION:-1.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/qbittorrent/qbittorrent.SlackBuild b/network/qbittorrent/qbittorrent.SlackBuild
index f82f75d999..e6a61244d4 100644
--- a/network/qbittorrent/qbittorrent.SlackBuild
+++ b/network/qbittorrent/qbittorrent.SlackBuild
@@ -23,11 +23,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230630 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - BUILD needed to be bumped due to the .desktop file change.
+# - Install README.SBo with correct ownership.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qbittorrent
-SRCNAM=qBittorrent
-VERSION=${VERSION:-4.4.5}
+#SRCNAM=qBittorrent
+VERSION=${VERSION:-4.6.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +44,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
@@ -71,15 +72,15 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-release-$VERSION
-tar xvf $CWD/$SRCNAM-release-$VERSION.tar.?z*
-cd $SRCNAM-release-$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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# Build graphical version by default
gui="-DGUI=ON"; [[ "${GUI:-yes}" != "yes" ]] && gui="-DGUI=OFF"
@@ -96,6 +97,12 @@ cmake -B build -G "Ninja" \
cmake --build build
DESTDIR=$PKG cmake --install build --strip
+# adjust .desktop file to be compliant with Slackware 15.0 supported
+# version of desktop spec (1.4) (SingleMainWindow was added to version
+# 1.5 Desktop Entry Specification).
+# https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html
+[[ "${GUI:-yes}" != "yes" ]] || sed -i '/^SingleMainWindow/d' $PKG/usr/share/applications/*.desktop
+
# Don't ship .la files:
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
@@ -108,10 +115,13 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/etc/rc.d
cp $CWD/rc.qbittorrent-nox.new $PKG/etc/rc.d/.
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS Changelog NEWS TODO COPYING README.md \
- $CWD/README.SBo $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a AUTHORS Changelog COPYING COPYING.GPLv? README.md $PKGDOC
+# 20230630 bkw: use cat instead of "cp -a" to install files from $CWD,
+# there's no way to tell what the $CWD ownership/permission is.
+cat $CWD/README.SBo > $PKGDOC/README.SBo
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/qbittorrent/qbittorrent.info b/network/qbittorrent/qbittorrent.info
index ea117a69b7..06c0e31186 100644
--- a/network/qbittorrent/qbittorrent.info
+++ b/network/qbittorrent/qbittorrent.info
@@ -1,10 +1,10 @@
PRGNAM="qbittorrent"
-VERSION="4.4.5"
+VERSION="4.6.4"
HOMEPAGE="https://www.qbittorrent.org/"
-DOWNLOAD="https://github.com/qbittorrent/qBittorrent/archive/release-4.4.5/qBittorrent-release-4.4.5.tar.gz"
-MD5SUM="1358ad61fec1e26f5402c88e9bda7643"
+DOWNLOAD="https://sourceforge.net/projects/qbittorrent/files/qbittorrent/qbittorrent-4.6.4/qbittorrent-4.6.4.tar.xz"
+MD5SUM="ffc528cbdf1ab4ff40a51753e5e9b030"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="libtorrent-rasterbar"
+REQUIRES="libtorrent2"
MAINTAINER="David O'Shaughnessy"
EMAIL="dev@osh.id.au"
diff --git a/network/qodem/README b/network/qodem/README
new file mode 100644
index 0000000000..577222ae81
--- /dev/null
+++ b/network/qodem/README
@@ -0,0 +1,20 @@
+qodem (BBS-oriented terminal emulator)
+
+qodem is a from-scratch clone implementation of the Qmodem
+communications program made popular in the days when Bulletin Board
+Systems ruled the night. Qodem emulates the dialing directory and
+the terminal screen features of Qmodem over both modem and Internet
+connections.
+
+qodem also emulates ATASCII (Atari 8-bit) and PETSCII (Commodore
+8-bit), and can be used to run a local shell.
+
+Note: qodem-x11 doesn't handle PETSCII correctly. Instead, launch
+qodem in a terminal with the PETSCII font (adjust the size= to your
+taste):
+
+$ urxvt -fn "xft:C64 Pro Mono:size=13" -e qodem
+
+More information on BBSes can be found here, along with an up-to-date
+list of telnet BBSes:
+https://www.telnetbbsguide.com/
diff --git a/network/qodem/doinst.sh b/network/qodem/doinst.sh
new file mode 100644
index 0000000000..12b14570f0
--- /dev/null
+++ b/network/qodem/doinst.sh
@@ -0,0 +1,17 @@
+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 [ -x /usr/bin/mkfontdir -a -x /usr/bin/mkfontscale ]; then
+ ( cd usr/share/fonts/TTF
+ /usr/bin/mkfontscale .
+ /usr/bin/mkfontdir . )
+fi
+
+[ -x /usr/bin/fc-cache ] && /usr/bin/fc-cache -f
diff --git a/network/qodem/qodem-convert.1 b/network/qodem/qodem-convert.1
new file mode 100644
index 0000000000..e92a4d9bfa
--- /dev/null
+++ b/network/qodem/qodem-convert.1
@@ -0,0 +1,101 @@
+.\" Man page generated from reStructuredText.
+.
+.
+.nr rst2man-indent-level 0
+.
+.de1 rstReportMargin
+\\$1 \\n[an-margin]
+level \\n[rst2man-indent-level]
+level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
+-
+\\n[rst2man-indent0]
+\\n[rst2man-indent1]
+\\n[rst2man-indent2]
+..
+.de1 INDENT
+.\" .rstReportMargin pre:
+. RS \\$1
+. nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin]
+. nr rst2man-indent-level +1
+.\" .rstReportMargin post:
+..
+.de UNINDENT
+. RE
+.\" indent \\n[an-margin]
+.\" old: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.nr rst2man-indent-level -1
+.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
+.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
+..
+.TH "QODEM-CONVERT" 1 "2023-07-29" "1.0.1" "SlackBuilds.org"
+.SH NAME
+qodem-convert \- convert BBS dialing lists to qodem format
+.\" RST source for qodem-convert(1) man page. Convert with:
+.
+.\" rst2man.py qodem-convert.rst > qodem-convert.1
+.
+.SH SYNOPSIS
+.sp
+qodem\-convert\-syncterm \fBinput.lst\fP \fBoutput.txt\fP
+.sp
+qodem\-convert\-ibbs \fBinput.txt\fP \fBoutput.txt\fP
+.SH DESCRIPTION
+.sp
+These utilities convert BBS dialing lists to the \fBfonebook.txt\fP
+format used by \fBqodem\fP(1).
+.sp
+To convert a \fBsyncterm\fP(1) list, use a command like:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+qodem\-convert\-syncterm ~/.syncterm/syncterm.lst ~/.qodem/fonebook.txt
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.sp
+To convert the telnetbbsguide list, first download it from:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+https://www.telnetbbsguide.com/lists/download\-list/
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.sp
+Get either the Monthly or Daily zip file. Extract it, and find the
+"short form" list, which will have a filename like \fBshort_Jul_23.txt\fP\&.
+Use a command like:
+.INDENT 0.0
+.INDENT 3.5
+.sp
+.nf
+.ft C
+qodem\-convert\-ibbs short_Jul_23.txt ~/.qodem/fonebook.txt
+.ft P
+.fi
+.UNINDENT
+.UNINDENT
+.SH COPYRIGHT
+.sp
+Public Domain, or CC0 License in jurisdictions that do not recognize
+the public domain.
+.SH AUTHORS
+.sp
+\fBqodem\fP, \fBqodem\-convert\-syncterm\fP, and \fBqodem\-convert\-ibbs\fP were
+written by Autumn Lamonte.
+.sp
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+.SH SEE ALSO
+.sp
+\fBqodem\fP(1), \fBqodem\-x11\fP(1), \fBsyncterm\fP(1)
+.sp
+The qodem homepage: \fI\%https://qodem.sourceforge.io/\fP
+.\" Generated by docutils manpage writer.
+.
diff --git a/network/qodem/qodem-convert.rst b/network/qodem/qodem-convert.rst
new file mode 100644
index 0000000000..e51935eee0
--- /dev/null
+++ b/network/qodem/qodem-convert.rst
@@ -0,0 +1,67 @@
+.. RST source for qodem-convert(1) man page. Convert with:
+.. rst2man.py qodem-convert.rst > qodem-convert.1
+
+.. |version| replace:: 1.0.1
+.. |date| date::
+
+=============
+qodem-convert
+=============
+
+-----------------------------------------
+convert BBS dialing lists to qodem format
+-----------------------------------------
+
+:Manual section: 1
+:Manual group: SlackBuilds.org
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+qodem-convert-syncterm **input.lst** **output.txt**
+
+qodem-convert-ibbs **input.txt** **output.txt**
+
+DESCRIPTION
+===========
+
+These utilities convert BBS dialing lists to the **fonebook.txt**
+format used by **qodem**\(1).
+
+To convert a **syncterm**\(1) list, use a command like::
+
+ qodem-convert-syncterm ~/.syncterm/syncterm.lst ~/.qodem/fonebook.txt
+
+To convert the telnetbbsguide list, first download it from::
+
+ https://www.telnetbbsguide.com/lists/download-list/
+
+Get either the Monthly or Daily zip file. Extract it, and find the
+"short form" list, which will have a filename like **short_Jul_23.txt**.
+Use a command like::
+
+ qodem-convert-ibbs short_Jul_23.txt ~/.qodem/fonebook.txt
+
+COPYRIGHT
+=========
+
+Public Domain, or CC0 License in jurisdictions that do not recognize
+the public domain.
+
+AUTHORS
+=======
+
+**qodem**, **qodem-convert-syncterm**, and **qodem-convert-ibbs** were
+written by Autumn Lamonte.
+
+This man page written for the SlackBuilds.org project
+by B. Watson, and is licensed under the WTFPL.
+
+SEE ALSO
+========
+
+**qodem**\(1), **qodem-x11**\(1), **syncterm**\(1)
+
+The qodem homepage: https://qodem.sourceforge.io/
diff --git a/network/qodem/qodem-x11.desktop b/network/qodem/qodem-x11.desktop
new file mode 100644
index 0000000000..e1cdcadca8
--- /dev/null
+++ b/network/qodem/qodem-x11.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Type=Application
+Name=Qodem (X11)
+Comment=ANSI-BBS Terminal
+Comment[es]=Emulador de Terminal ANSI-BBS
+Icon=qodem
+Exec=qodem-x11 %u
+Terminal=false
+Categories=TerminalEmulator;Network;Dialup;
+Keywords=BBS;Terminal;Ansi;
diff --git a/network/qodem/qodem.SlackBuild b/network/qodem/qodem.SlackBuild
new file mode 100644
index 0000000000..87c818eec3
--- /dev/null
+++ b/network/qodem/qodem.SlackBuild
@@ -0,0 +1,172 @@
+#!/bin/bash
+
+# Slackware build script for qodem
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Notes:
+# - Package includes both terminal (qodem) and X11 (qodem-x11) binaries.
+# - qodem-x11 always builds with its bundled copy of pdcurses, regardless of
+# whether our PDCurses package is installed. Perfectly OK, just worth
+# mentioning why PDCurses isn't a dependency.
+# - Two choices for ssh support: build with bundled cryptlib (like syncterm
+# does), or run an external ssh command. Upstream's default is the latter,
+# I won't change it. Plus, using the ssh binary has the useful side effect
+# of respecting your ~/.ssh/config.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=qodem
+VERSION=${VERSION:-1.0.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-v$VERSION
+tar xvf $CWD/$PRGNAM-v$VERSION.tar.gz
+cd $PRGNAM-v$VERSION
+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 {} +
+
+# There's no configure option to override use of the system miniupnp
+# library; it'll fall back to its own bundled version if not found.
+# This makes it always use the bundled one, for a reproducible build
+# and to avoid a hidden dependency.
+sed -i '/Q_USE_SYSTEM_UPNP="yes"/s,yes,no,' configure
+
+# Use our flags for sub-makes.
+sed -i -e 's,-ggdb,,' \
+ -e "s,-O0,$SLKCFLAGS," \
+ lib/pdcurses/Makefile \
+ lib/upnp/Makefile
+
+# The X11 build runs external commands in a separate terminal. Change
+# the default terminal to something that actually exists on Slackware.
+# This is just the default (can still be changed in ~/.qodem/qodemrc).
+sed -i 's,x-terminal-emulator,xterm,g' source/{options,help}.c
+
+# Don't repeat myself (much, anyway):
+buildit() {
+ CFLAGS="$SLKCFLAGS" \
+ CXXFLAGS="$SLKCFLAGS" \
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --build=$ARCH-slackware-linux \
+ "$@"
+ make
+ make install-strip DESTDIR=$PKG
+}
+
+### this builds the terminal binary (qodem):
+buildit
+
+### now start over, prepare to build the x11 binary (qodem-x11):
+make distclean
+
+# we have to build these separately, for parallel builds (-jN, N>1):
+make -C lib/pdcurses
+make -C lib/upnp
+
+# sub-projects built, now we can build qodem-x11:
+buildit --enable-x11
+
+### everything else:
+
+# This script isn't useful. All it would ever do is "exec qodem-x11", since
+# our package includes that.
+rm -f $PKG/usr/bin/x$PRGNAM $PKG/usr/man/man1/x$PRGNAM.1
+
+# There was no documentation for the conversion scripts, so I wrote some:
+cat $CWD/qodem-convert.1 > $PKG/usr/man/man1/qodem-convert.1
+
+# All man pages in place, so:
+gzip -9 $PKG/usr/man/man*/*
+
+# useful-looking stuff in misc/, include in package:
+for i in ibbs syncterm; do
+ cp -a misc/convert_${i}.pl $PKG/usr/bin/qodem-convert-$i
+ ln -s qodem-convert.1.gz $PKG/usr/man/man1/qodem-convert-$i.1.gz
+done
+
+# qodem-x11 doesn't seem to use this font when in PETSCII mode, but
+# it works OK if you run qodem in a terminal using the font:
+mkdir -p $PKG/usr/share/fonts/TTF
+cp -a misc/fonts/C64_Pro_Mono-STYLE.ttf $PKG/usr/share/fonts/TTF
+
+# .desktop files written by SlackBuild author:
+mkdir -p $PKG/usr/share/applications
+install -oroot -groot -m0644 $CWD/$PRGNAM*.desktop $PKG/usr/share/applications
+
+# Upstream provided icons at various sizes:
+cp build/icons/qodem.png build/osx/icons/qodem-64.png
+for png in build/osx/icons/qodem-*.png; do
+ px="$( basename $png .png | cut -d- -f2 )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $png > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+# Most of what's in docs/ is developer-oriented, but the PD
+# announcement is the closest thing we've got to a license...
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a C* README* docs/pd_announcement2.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# It works out OK to use the same script for doinst.sh and douninst.sh.
+# Result is that it truly does clean up after itself.
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/doinst.sh > $PKG/install/douninst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/qodem/qodem.desktop b/network/qodem/qodem.desktop
new file mode 100644
index 0000000000..523db54cde
--- /dev/null
+++ b/network/qodem/qodem.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Type=Application
+Name=Qodem (curses)
+Comment=ANSI-BBS Terminal
+Comment[es]=Emulador de Terminal ANSI-BBS
+Icon=qodem
+Exec=qodem %u
+Terminal=true
+Categories=TerminalEmulator;Network;Dialup;
+Keywords=BBS;Terminal;Ansi;
diff --git a/network/qodem/qodem.info b/network/qodem/qodem.info
new file mode 100644
index 0000000000..b542a46e41
--- /dev/null
+++ b/network/qodem/qodem.info
@@ -0,0 +1,10 @@
+PRGNAM="qodem"
+VERSION="1.0.1"
+HOMEPAGE="https://qodem.sourceforge.net/"
+DOWNLOAD="https://gitlab.com/AutumnMeowMeow/qodem/-/archive/v1.0.1/qodem-v1.0.1.tar.gz"
+MD5SUM="57d58342377a7232e7bf66246d6a18e6"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/qodem/slack-desc b/network/qodem/slack-desc
new file mode 100644
index 0000000000..12885b8c96
--- /dev/null
+++ b/network/qodem/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------------------------------------------------------|
+qodem: qodem (BBS-oriented terminal emulator)
+qodem:
+qodem: qodem is a from-scratch clone implementation of the Qmodem
+qodem: communications program made popular in the days when Bulletin Board
+qodem: Systems ruled the night. Qodem emulates the dialing directory and
+qodem: the terminal screen features of Qmodem over both modem and Internet
+qodem: connections.
+qodem:
+qodem: qodem also emulates ATASCII (Atari 8-bit) and PETSCII (Commodore
+qodem: 8-bit), and can be used to run a local shell.
+qodem:
diff --git a/network/qtmib/qtmib.SlackBuild b/network/qtmib/qtmib.SlackBuild
index 3691475893..5fe40fe72b 100644
--- a/network/qtmib/qtmib.SlackBuild
+++ b/network/qtmib/qtmib.SlackBuild
@@ -26,6 +26,10 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230103 bkw: BUILD=2
+# - one of upstream's icons is the wrong size...
+# - slack-desc, s/Qt4/Qt/ to match the README.
+
# 20211210 bkw:
# - update for 1.1.1+20190827_e62ab95 (latest git, supports qt5).
# - new-style icons.
@@ -39,7 +43,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qtmib
VERSION=${VERSION:-1.1.1+20190827_e62ab95}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -101,6 +105,10 @@ make
make install DESTDIR=$PKG
strip $PKG/usr/bin/*
+# 20230103 bkw: this icon is 256x257 (huh?)
+convert -resize 256x256! src/art/$PRGNAM-256.png x.png
+mv x.png src/art/$PRGNAM-256.png
+
HICOLOR=$PKG/usr/share/icons/hicolor/
PIXMAPS=$PKG/usr/share/pixmaps
for png in src/art/$PRGNAM-*.png; do
diff --git a/network/qtmib/slack-desc b/network/qtmib/slack-desc
index b38ac5aeef..bc4720a14a 100644
--- a/network/qtmib/slack-desc
+++ b/network/qtmib/slack-desc
@@ -8,7 +8,7 @@
|-----handy-ruler------------------------------------------------------|
qtmib: qtmib (graphical SNMP MIB Browser)
qtmib:
-qtmib: qtmib is an easy-to-use SNMP MIB Browser based on the Qt4 library. It
+qtmib: qtmib is an easy-to-use SNMP MIB Browser based on the Qt library. It
qtmib: is a front-end for net-snmp, and it allows the user to query any
qtmib: SNMP-enabled device. It implements SNMPv1 and SNMPv2c, and it is
qtmib: released under the GPLv2 license.
diff --git a/network/qutebrowser-bin/README b/network/qutebrowser-bin/README
index f386ebb9b6..49fca7d063 100644
--- a/network/qutebrowser-bin/README
+++ b/network/qutebrowser-bin/README
@@ -10,3 +10,10 @@ pre-compiled QtWebEngine binary, but has a couple of caveats:
* It only works on 64-bit x86 systems.
* It comes with a QtWebEngine compiled without proprietary codec support
(such as h.264).
+
+qt6 needed for this script can be built without webengine to speed up
+compilation. If such an option is not available, just replace the line
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz
+with
+tar xvf $CWD/$SRCNAM-$VERSION.tar.xz --exclude=qtwebengine
+in qt6.SlackBuild.
diff --git a/network/qutebrowser-bin/qutebrowser-bin.SlackBuild b/network/qutebrowser-bin/qutebrowser-bin.SlackBuild
index a2e4b8ab64..81c434bd9f 100644
--- a/network/qutebrowser-bin/qutebrowser-bin.SlackBuild
+++ b/network/qutebrowser-bin/qutebrowser-bin.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for qutebrowser-bin
-# Copyright 2019-2022, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2019-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,9 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qutebrowser-bin
-VERSION=${VERSION:-2.5.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-3.1.0}
+SSLVERSION=${SSLVERSION:-3.2.1}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -86,6 +87,8 @@ find ./ -type f -exec sed -i -e \
scripts/setupcommon.py scripts/utils.py -fq
.venv/bin/python3 -m compileall .venv/lib -fq
+find -L .venv/lib -type f -name "*.so" -exec chmod 755 {} \;
+
.venv/bin/python3 scripts/asciidoc2html.py
a2x -f manpage doc/qutebrowser.1.asciidoc
gzip -9 doc/qutebrowser.1
@@ -99,12 +102,12 @@ install -m 0644 misc/org.qutebrowser.qutebrowser.desktop \
$PKG/usr/share/applications
for res in 16 24 32 48 64 96 128 256 512; do
mkdir -p $PKG/usr/share/icons/hicolor/${res}x${res}/apps/;
- install -m 0644 "icons/qutebrowser-${res}x${res}.png" \
+ install -m 0644 "qutebrowser/icons/qutebrowser-${res}x${res}.png" \
"$PKG/usr/share/icons/hicolor/${res}x${res}/apps/qutebrowser.png"
done
-install -m 0644 "icons/qutebrowser.svg" \
+install -m 0644 "qutebrowser/icons/qutebrowser.svg" \
$PKG/usr/share/icons/hicolor/scalable/apps/
-install -m 0644 "icons/qutebrowser.xpm" $PKG/usr/share/pixmaps/
+install -m 0644 "qutebrowser/icons/qutebrowser.xpm" $PKG/usr/share/pixmaps/
cp -a misc/userscripts $PKG/usr/share/qutebrowser
cp -a scripts $PKG/usr/share/qutebrowser
@@ -121,6 +124,35 @@ unzip $CWD/pdfjs-*-dist.zip
chown -R root:root $PKG/usr/share/qutebrowser/pdf.js
find ./ -type f -exec chmod 644 {} \;
+cd $TMP
+rm -rf openssl-$SSLVERSION
+tar xvf $CWD/openssl-$SSLVERSION.tar.gz
+cd openssl-$SSLVERSION
+./config \
+ zlib \
+ enable-camellia \
+ enable-seed \
+ enable-rfc3779 \
+ enable-cms \
+ enable-md2 \
+ enable-rc5 \
+ enable-ssl3 \
+ enable-ssl3-method \
+ no-weak-ssl-ciphers \
+ no-mdc2 \
+ no-ec2m \
+ no-sm2 \
+ no-sm4 \
+ no-sse2 \
+ shared
+
+make
+
+mv libcrypto.so.3 libssl.so.3 $PKG/opt/qutebrowser
+cd $PKG/opt/qutebrowser
+ln -s libssl.so.3 libssl.so
+ln -s libcrypto.so.3 libcrypto.so
+
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/qutebrowser-bin/qutebrowser-bin.info b/network/qutebrowser-bin/qutebrowser-bin.info
index e735da836f..61e6f74757 100644
--- a/network/qutebrowser-bin/qutebrowser-bin.info
+++ b/network/qutebrowser-bin/qutebrowser-bin.info
@@ -1,42 +1,46 @@
PRGNAM="qutebrowser-bin"
-VERSION="2.5.2"
+VERSION="3.1.0"
HOMEPAGE="https://qutebrowser.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/qutebrowser/qutebrowser/archive/v2.5.2/qutebrowser-2.5.2.tar.gz \
- https://files.pythonhosted.org/packages/96/2f/caec18213f6a67852f6997fb0673ae08d2e93d1b81573edb93ba4ef06970/pip-22.1.2-py3-none-any.whl \
- https://files.pythonhosted.org/packages/e9/86/b2ede1d87122a6d4da86d84cc35d0e48b4aa2476e4281d06101c772c1961/setuptools-62.6.0-py3-none-any.whl \
- https://files.pythonhosted.org/packages/27/d6/003e593296a85fd6ed616ed962795b2f87709c3eee2bca4f6d0fe55c6d00/wheel-0.37.1-py2.py3-none-any.whl \
- https://files.pythonhosted.org/packages/36/66/19983d471c702e551a19a7225a92a7c1efadd961f6c650110ed906dd0ed7/PyQt5-5.15.6-cp36-abi3-manylinux1_x86_64.whl \
- https://files.pythonhosted.org/packages/83/d4/241a6a518d0bcf0a9fcdcbad5edfed18d43e884317eab8d5230a2b27e206/PyQt5_Qt5-5.15.2-py3-none-manylinux2014_x86_64.whl \
- https://files.pythonhosted.org/packages/71/f7/52c15afe87e769a5892cbe3da8e38db6dee8fc58ce1fb6091dba975c6202/PyQt5_sip-12.9.1-cp39-cp39-manylinux1_x86_64.whl \
- https://files.pythonhosted.org/packages/a1/45/667e82a0f584be10d785213b04c8ce01ae4d2f63cd23ab6307312c69be89/PyQtWebEngine-5.15.5-cp36-abi3-manylinux1_x86_64.whl \
- https://files.pythonhosted.org/packages/48/62/117c9c96837287b181fce6da481065ddda68b3a8c0fa5f00ea62cc08b877/PyQtWebEngine_Qt5-5.15.2-py3-none-manylinux2014_x86_64.whl \
- https://files.pythonhosted.org/packages/27/2e/2d98eba665d3d70f4d0bc8e807bac660be0db66330e990978168c05a51a1/adblock-0.5.2-cp36-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl \
- https://files.pythonhosted.org/packages/44/98/5b86278fbbf250d239ae0ecb724f8572af1c91f4a11edf4d36a206189440/colorama-0.4.4-py2.py3-none-any.whl \
- https://files.pythonhosted.org/packages/76/02/af4045156cde8feeefa30cb1c051e10321d4960c418bd52346a497feb302/Jinja2-3.1.1-py3-none-any.whl \
- https://files.pythonhosted.org/packages/df/06/c515c5bc43b90462e753bc768e6798193c6520c9c7eb2054c7466779a9db/MarkupSafe-2.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl \
- https://files.pythonhosted.org/packages/1d/17/ed4d2df187995561b28f1073df24137cb750e12f9879d291cc8ab67c65d2/Pygments-2.11.2-py3-none-any.whl \
- https://files.pythonhosted.org/packages/12/fc/a4d5a7554e0067677823f7265cb3ae22aed8a238560b5133b58cda252dad/PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl \
- https://files.pythonhosted.org/packages/52/c5/df7953fe6065185af5956265e3b16f13c2826c2b1ba23d43154f3af453bc/zipp-3.7.0-py3-none-any.whl \
- https://github.com/mozilla/pdf.js/releases/download/v2.16.105/pdfjs-2.16.105-dist.zip"
-MD5SUM_x86_64="11265a3e578abb79bdeaafccf8c348ba \
- 564799f1b166d9d4f87a6921c35e0008 \
- 24a5e9a34b00dcbcbec8bb19c6eca86c \
- f7e1c5e641a4a0eea8379f43bceaa564 \
- 0e637e2d6f117699f41ba163e6a0e73e \
- 038f56bd7af99133f591c7497b64ea17 \
- 022756b2a8744a111f622092ed36dee4 \
- 094f8349af070ad35255184061b6d62a \
- d9fe06e7758913f32dc09324ff9abfdf \
- d45a0ceee0df8ec1a6f62c4697355074 \
- 1dcd07acf2b1875ed09428e1ddf7e028 \
- cae2986094602b6c2d6f4405e8d0eb3b \
- 68a29c49e695e11d59af9e33d7e4cfd4 \
- 9b19b40b048b2897d0af1b6af62f3799 \
- aba0c6954cd00aaf39f3619a0bfce3ae \
- fe228758662bbf708699fe52d0232b3b \
- 80252a11b4af40acaa0acd32a3be4ef2"
-REQUIRES=""
+DOWNLOAD_x86_64="https://github.com/qutebrowser/qutebrowser/archive/v3.1.0/qutebrowser-3.1.0.tar.gz \
+ https://files.pythonhosted.org/packages/47/6a/453160888fab7c6a432a6e25f8afe6256d0d9f2cbd25971021da6491d899/pip-23.3.1-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/bb/e1/ed2dd0850446b8697ad28d118df885ad04140c64ace06c4bd559f7c8a94f/setuptools-69.0.2-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/c7/c3/55076fc728723ef927521abaa1955213d094933dc36d4a2008d5101e1af5/wheel-0.42.0-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/0b/5a/51f4762b9f314b5577d17704bc1280532a725ba359d6cc177ab6de692035/PyQt6-6.6.1-cp38-abi3-manylinux_2_28_x86_64.whl \
+ https://files.pythonhosted.org/packages/d5/64/7b8983341e4f8748f0d76ebc69c2740cb0d19a49f14f7d83db3b079c4abe/PyQt6_Qt6-6.6.1-py3-none-manylinux_2_28_x86_64.whl \
+ https://files.pythonhosted.org/packages/e2/21/be11813fb40cce933afa2a3e523aa998ca1089f1678bdb5ab11d19b305e2/PyQt6_sip-13.6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl \
+ https://files.pythonhosted.org/packages/36/91/50982f28730c893a8c68b0e92debc761e8a475cf1df686dee22a4c255316/PyQt6_WebEngine-6.6.0-cp37-abi3-manylinux_2_28_x86_64.whl \
+ https://files.pythonhosted.org/packages/45/56/ac52d42ad9949714dffbbaee29717a79273fbeb2ea1f8a0b63a7b6b75f40/PyQt6_WebEngine_Qt6-6.6.1-py3-none-manylinux_2_28_x86_64.whl \
+ https://files.pythonhosted.org/packages/06/26/39fad77ba6fe8bd5b1c5ebe411ea84a768075f40caa5400e889678de39b3/adblock-0.6.0-cp37-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.whl \
+ https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl \
+ https://files.pythonhosted.org/packages/bc/c3/f068337a370801f372f2f8f6bad74a5c140f6fda3d9de154052708dd3c65/Jinja2-3.1.2-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/de/63/cb7e71984e9159ec5f45b5e81e896c8bdd0e45fe3fc6ce02ab497f0d790e/MarkupSafe-2.1.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl \
+ https://files.pythonhosted.org/packages/97/9c/372fef8377a6e340b1704768d20daaded98bf13282b5327beb2e2fe2c7ef/pygments-2.17.2-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/7d/39/472f2554a0f1e825bd7c5afc11c817cd7a2f3657460f7159f691fbb37c51/PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl \
+ https://files.pythonhosted.org/packages/d9/66/48866fc6b158c81cc2bfecc04c480f105c6040e8b077bc54c634b4a67926/zipp-3.17.0-py3-none-any.whl \
+ https://files.pythonhosted.org/packages/ff/1d/8f96eb0ce05f20e5d0722a3e910627a26a382c81f40c7292faa91545e43f/asciidoc-10.2.0-py2.py3-none-any.whl \
+ https://www.openssl.org/source/openssl-3.2.1.tar.gz \
+ https://github.com/mozilla/pdf.js/releases/download/v4.0.379/pdfjs-4.0.379-dist.zip"
+MD5SUM_x86_64="a4613158902f61af23c2b38f1ad427aa \
+ 5d2d058044a3ae2800d18e358ddc72ca \
+ f096ed836f4036a11aa277fa16dc09ff \
+ 779d91395ceb12e15e3a585b30b53f9f \
+ 8e724abf93f1861c98705a1eaaf2eabf \
+ bde446baa891d9c22a3ddb1496476aea \
+ 260fb515820b6dc4878df9288a8eea55 \
+ 5086b644a2e12f110878aee8d3282a2b \
+ d8d0d2f0c6ec1dafefac241836a0712b \
+ c8653c10db5900c22054b27a03924988 \
+ 3fc7a89530d68d7ea231ebe779c0db9c \
+ 00ccdb509d3592cc2163b286177d75c8 \
+ c2388278e7f7c4bb11ae830da5a071cc \
+ 05bab8cd38860c62d6e146ec2949fefe \
+ 4d6e421811f9057f61344a07257dbc26 \
+ d93f0b8485000b37800a6de09ed6c1cb \
+ d47ea986a8945257f0f54e92455d198f \
+ c239213887804ba00654884918b37441 \
+ 0e74e78c467097afeb1ddafbc290a05a"
+REQUIRES="qt6"
MAINTAINER="Alexander Verbovetsky"
EMAIL="alik@ejik.org"
diff --git a/network/qutebrowser-bin/wrapper.qutebrowser b/network/qutebrowser-bin/wrapper.qutebrowser
index 754786748c..179325561c 100644
--- a/network/qutebrowser-bin/wrapper.qutebrowser
+++ b/network/qutebrowser-bin/wrapper.qutebrowser
@@ -1,2 +1,3 @@
#!/bin/bash
+LD_LIBRARY_PATH="/opt/qutebrowser" \
setsid /opt/qutebrowser/.venv/bin/python3 -m qutebrowser "$@"
diff --git a/network/qutebrowser/qutebrowser.SlackBuild b/network/qutebrowser/qutebrowser.SlackBuild
index 0f74302f8b..66a1688230 100644
--- a/network/qutebrowser/qutebrowser.SlackBuild
+++ b/network/qutebrowser/qutebrowser.SlackBuild
@@ -1,31 +1,14 @@
#!/bin/bash
# Slackware build script for qutebrowser
-# Copyright 2017 Dave Woodfall <dave@slackbuilds.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.
+# written by Dave Woodfall <dave@slackbuilds.org>
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=qutebrowser
-VERSION=${VERSION:-2.5.2}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-2.5.4}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -66,6 +49,9 @@ find -L . \
make -f misc/Makefile install DESTDIR=$PKG PREFIX=/usr MANDIR=/usr/man
+# shouldn't be executable
+chmod -x $PKG/usr/share/$PRGNAM/userscripts/README.md
+
find $PKG -name \*\.opt-1.pyc -exec rm -f {} \;
install -D -m 0644 icons/qutebrowser.xpm \
diff --git a/network/qutebrowser/qutebrowser.info b/network/qutebrowser/qutebrowser.info
index f4de1bd92d..6e55f18a6f 100644
--- a/network/qutebrowser/qutebrowser.info
+++ b/network/qutebrowser/qutebrowser.info
@@ -1,10 +1,10 @@
PRGNAM="qutebrowser"
-VERSION="2.5.2"
+VERSION="2.5.4"
HOMEPAGE="https://qutebrowser.org/"
-DOWNLOAD="https://github.com/qutebrowser/qutebrowser/releases/download/v2.5.2/qutebrowser-2.5.2.tar.gz"
-MD5SUM="e8ccef1a3bf52dec925694fd1f7be5a7"
+DOWNLOAD="https://github.com/qutebrowser/qutebrowser/releases/download/v2.5.4/qutebrowser-2.5.4.tar.gz"
+MD5SUM="121f4329ec6b36604da73f7563cea384"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="python3-PyQtWebEngine"
-MAINTAINER="Dave Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/radicale/README b/network/radicale/README
index be71661fe3..662b6b0f99 100644
--- a/network/radicale/README
+++ b/network/radicale/README
@@ -5,3 +5,9 @@ distant accessess for reading, creating, modifying and deleting
multiple calendars through a simplified CalDAV protocol. Data can be
encrypted by SSL, and their access can be restricted thanks to
different authentication methods.
+
+You need a "radicale" user and group prior to building radicale.
+Something like this will suffice for most systems:
+
+ groupadd -g 375 radicale
+ useradd -u 375 -d /var/lib/radicale -s /bin/false -g radicale radicale
diff --git a/network/radicale/doinst.sh b/network/radicale/doinst.sh
index 969cf1a0f8..219f5d0692 100644
--- a/network/radicale/doinst.sh
+++ b/network/radicale/doinst.sh
@@ -22,6 +22,6 @@ preserve_perms() {
config $NEW
}
-for i in etc/radicale/config.new etc/radicale/logging.new; do
- preserve_perms $i
-done
+preserve_perms etc/rc.d/rc.radicale.new
+config etc/radicale/config.new
+config etc/radicale/rights.new
diff --git a/network/radicale/radicale.SlackBuild b/network/radicale/radicale.SlackBuild
index 1bbdd2b7ea..a08dc21dfe 100644
--- a/network/radicale/radicale.SlackBuild
+++ b/network/radicale/radicale.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for radicale
-# Copyright 2016-2017 Johannes Schoepfer, Germany
+# Copyright 2022 Ruben Schuller
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=radicale
-VERSION=${VERSION:-1.1.6}
+VERSION=${VERSION:-3.1.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -50,6 +50,9 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
+RADICALE_GID=${RADICALE_GID:-375}
+RADICALE_UID=${RADICALE_UID:-375}
+
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -66,11 +69,28 @@ fi
set -e
+if ! getent passwd radicale 1>/dev/null 2>/dev/null; then
+cat << EOF
+ You must have a radicale user to run this script
+
+ # groupadd -g $RADICALE_GID radicale
+ # useradd -u $RADICALE_UID -d /var/lib/$PRGNAM -s /bin/false -g radicale radicale
+EOF
+ exit 1
+elif ! getent group radicale 1>/dev/null 2>/dev/null; then
+cat << EOF
+ You must have a radicale group to run this script
+
+ # groupadd -g $RADICALE_GID radicale
+EOF
+ exit 1
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf Radicale-$VERSION
-tar vxf $CWD/Radicale-$VERSION.tar.gz
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/Radicale-$VERSION.tar.gz || tar xvf v$VERSION.tar.gz
cd Radicale-$VERSION
chown -R root:root .
find -L . \
@@ -79,33 +99,31 @@ 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 {} \;
-python setup.py install --prefix=/usr --root=$PKG
-install -m0644 -D config $PKG/etc/radicale/config.new
-install -m0644 logging $PKG/etc/radicale/logging.new
-install -m0644 -D radicale.wsgi $PKG/var/lib/radicale/radicale.wsgi
-install -m0644 radicale.fcgi $PKG/var/lib/radicale/radicale.fcgi
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp COPYING README schema.sql config logging $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/etc/logrotate.d
-cat << EOF > $PKG/etc/logrotate.d/radicale
-/var/log/radicale {
- rotate 10
- notifempty
- size=1M
- compress
- delaycompress
-}
-EOF
+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
+install -v -m 0755 -g radicale -o radicale -d $PKG/etc/radicale
+install -v -m 0755 -g radicale -o radicale -d $PKG/var/lib/radicale
+install -v -m 0644 -g radicale -o radicale config $PKG/etc/radicale/config.new
+install -v -m 0644 -g radicale -o radicale rights $PKG/etc/radicale/rights.new
+install -v -m 0755 -g root -o root -d $PKG/etc/rc.d
+install -g root -o root -m 0644 $CWD/rc.radicale $PKG/etc/rc.d/rc.radicale.new
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ radicale.wsgi \
+ Dockerfile \
+ DOCUMENTATION.md \
+ README.md \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
mkdir -p $PKG/install
-cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
-/sbin/makepkg -p -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/radicale/radicale.info b/network/radicale/radicale.info
index 390d4f0595..7f1ce74341 100644
--- a/network/radicale/radicale.info
+++ b/network/radicale/radicale.info
@@ -1,10 +1,10 @@
PRGNAM="radicale"
-VERSION="1.1.6"
+VERSION="3.1.8"
HOMEPAGE="https://radicale.org/"
-DOWNLOAD="https://files.pythonhosted.org/packages/source/R/Radicale/Radicale-1.1.6.tar.gz"
-MD5SUM="ab2c00771d5bfaab218ce6e930d3a113"
+DOWNLOAD="https://github.com/Kozea/Radicale/archive/refs/tags/v3.1.8/radicale-3.1.8.tar.gz"
+MD5SUM="4c886b54c6926c5c463bbb80cf555998"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="mod_wsgi"
-MAINTAINER="Johannes Schoepfer"
-EMAIL="slackbuilds@schoepfer.info"
+REQUIRES="python3-passlib python3-bcrypt python3-build python3-defusedxml pytz vobject python3-wheel"
+MAINTAINER="Ruben Schuller"
+EMAIL="sb@rbn.im"
diff --git a/network/radicale/rc.radicale b/network/radicale/rc.radicale
new file mode 100644
index 0000000000..3fb0515ec2
--- /dev/null
+++ b/network/radicale/rc.radicale
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+# start/stop/restart radicale
+
+radicale_start() {
+ daemon -n radicale -u radicale -o local1.warning -e "HOME=/var/lib/radicale" -D /var/lib/radicale -- python3 -m radicale
+}
+
+radicale_stop() {
+ daemon -n radicale -u radicale --stop
+}
+
+radicale_restart() {
+ radicale_stop
+ sleep 1
+ radicale_start
+}
+
+case "$1" in
+'start')
+ radicale_start
+ ;;
+'stop')
+ radicale_stop
+ ;;
+'restart')
+ radicale_restart
+ ;;
+*)
+ echo "usage $0 start|stop|restart"
+esac
diff --git a/network/rclone/rclone.SlackBuild b/network/rclone/rclone.SlackBuild
index f5b123006a..4855d2c199 100644
--- a/network/rclone/rclone.SlackBuild
+++ b/network/rclone/rclone.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2019-2022 Andrew Payne <phalange@komputermatrix.com>
+# Copyright 2019-2024 Andrew Payne <phalange@komputermatrix.com>
# Copyright 2017-2018 Rodrigo Gimenez <estrod[at]zoho[dot]com>
# All rights reserved.
#
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rclone
-VERSION=${VERSION:-1.59.2}
+VERSION=${VERSION:-1.66.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -55,7 +55,6 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
fi
TMP=${TMP:-/tmp/SBo}
-CWD=$(pwd)
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
mkdir -p $TMP $PKG $OUTPUT
@@ -90,4 +89,4 @@ 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:-tgz}
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/rclone/rclone.info b/network/rclone/rclone.info
index 763c651815..7ce95fbbcc 100644
--- a/network/rclone/rclone.info
+++ b/network/rclone/rclone.info
@@ -1,10 +1,10 @@
PRGNAM="rclone"
-VERSION="1.59.2"
+VERSION="1.66.0"
HOMEPAGE="https://rclone.org"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://github.com/rclone/rclone/releases/download/v1.59.2/rclone-v1.59.2-linux-amd64.zip"
-MD5SUM_x86_64="e16e34f09f3212a757857d4f39ed33ca"
+DOWNLOAD_x86_64="https://github.com/rclone/rclone/releases/download/v1.66.0/rclone-v1.66.0-linux-amd64.zip"
+MD5SUM_x86_64="59a19a5f31c258aacf99970ae7d028cd"
REQUIRES=""
MAINTAINER="Andrew Payne"
EMAIL="phalange@komputermatrix.com"
diff --git a/network/rdma-core/optional_pandoc.patch b/network/rdma-core/optional_pandoc.patch
index 1e435a94b2..6fba97e818 100644
--- a/network/rdma-core/optional_pandoc.patch
+++ b/network/rdma-core/optional_pandoc.patch
@@ -1,10 +1,7 @@
-The master "CMakeLists.txt" listed "pandoc" as an optional dependency,
-but subsequent "make install" fails if "pandoc" is missing.
-This patch makes "pandoc" really optional.
-diff -ru rdma-core-25.0.orig/CMakeLists.txt rdma-core-25.0/CMakeLists.txt
---- rdma-core-25.0.orig/CMakeLists.txt 2019-07-26 02:17:21.000000000 +0800
-+++ rdma-core-25.0/CMakeLists.txt 2019-07-31 00:08:41.485085990 +0800
-@@ -602,11 +602,17 @@
+diff -ru rdma-core-51.0.orig/CMakeLists.txt rdma-core-51.0/CMakeLists.txt
+--- rdma-core-51.0.orig/CMakeLists.txt 2024-04-01 05:29:36.000000000 +0000
++++ rdma-core-51.0/CMakeLists.txt 2024-04-12 09:23:05.833329702 +0000
+@@ -723,28 +723,44 @@
add_subdirectory(kernel-headers)
# Libraries
add_subdirectory(libibumad)
@@ -22,15 +19,22 @@ diff -ru rdma-core-25.0.orig/CMakeLists.txt rdma-core-25.0/CMakeLists.txt
# Providers
if (HAVE_COHERENT_DMA)
-@@ -614,13 +620,19 @@
- add_subdirectory(providers/cxgb3) # NO SPARSE
+ add_subdirectory(providers/bnxt_re)
add_subdirectory(providers/cxgb4) # NO SPARSE
add_subdirectory(providers/efa)
+if (PANDOC_FOUND)
add_subdirectory(providers/efa/man)
+endif()
+ add_subdirectory(providers/erdma)
add_subdirectory(providers/hns)
- add_subdirectory(providers/i40iw) # NO SPARSE
++if (PANDOC_FOUND)
+ add_subdirectory(providers/hns/man)
++endif()
+ add_subdirectory(providers/irdma)
+ add_subdirectory(providers/mana)
++if (PANDOC_FOUND)
+ add_subdirectory(providers/mana/man)
++endif()
add_subdirectory(providers/mlx4)
+if (PANDOC_FOUND)
add_subdirectory(providers/mlx4/man)
@@ -40,10 +44,22 @@ diff -ru rdma-core-25.0.orig/CMakeLists.txt rdma-core-25.0/CMakeLists.txt
add_subdirectory(providers/mlx5/man)
+endif()
add_subdirectory(providers/mthca)
- add_subdirectory(providers/nes) # NO SPARSE
add_subdirectory(providers/ocrdma)
-@@ -639,7 +651,9 @@
+ add_subdirectory(providers/qedr)
+@@ -754,15 +770,21 @@
+ add_subdirectory(providers/hfi1verbs)
+ add_subdirectory(providers/ipathverbs)
+ add_subdirectory(providers/rxe)
++if (PANDOC_FOUND)
+ add_subdirectory(providers/rxe/man)
++endif()
+ add_subdirectory(providers/siw)
+
+ add_subdirectory(libibmad)
+ add_subdirectory(libibnetdisc)
++if (PANDOC_FOUND)
add_subdirectory(libibnetdisc/man)
++endif()
add_subdirectory(infiniband-diags)
add_subdirectory(infiniband-diags/scripts)
+if (PANDOC_FOUND)
diff --git a/network/rdma-core/rdma-core.SlackBuild b/network/rdma-core/rdma-core.SlackBuild
index 8e5a8624c6..834e4ae362 100644
--- a/network/rdma-core/rdma-core.SlackBuild
+++ b/network/rdma-core/rdma-core.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for rdma-core
-# Copyright 2019 GUAN Xin from Beijing
+# Copyright 2019-2023 GUAN Xin from Beijing
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rdma-core
-VERSION=${VERSION:-25.0}
+VERSION=${VERSION:-51.0}
BUILD=${BUILD:-1}
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
@@ -98,6 +95,9 @@ cd build
make install DESTDIR=$PKG
cd ..
+# Remove systemd stuff
+(cd $PKG/usr/lib && rm -r udev/rules.d/60-srp_daemon.rules systemd)
+
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/rdma-core/rdma-core.info b/network/rdma-core/rdma-core.info
index d212158b1d..bc119b4913 100644
--- a/network/rdma-core/rdma-core.info
+++ b/network/rdma-core/rdma-core.info
@@ -1,8 +1,8 @@
PRGNAM="rdma-core"
-VERSION="25.0"
+VERSION="51.0"
HOMEPAGE="https://github.com/linux-rdma"
-DOWNLOAD="https://github.com/linux-rdma/rdma-core/archive/v25.0/rdma-core-25.0.tar.gz"
-MD5SUM="48b2bec693fec7d1755a5e99a5d3678b"
+DOWNLOAD="https://github.com/linux-rdma/rdma-core/releases/download/v51.0/rdma-core-51.0.tar.gz"
+MD5SUM="ed95d79f782ea00bd7233d453abd60b3"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/remmina/remmina.SlackBuild b/network/remmina/remmina.SlackBuild
index 52782ae6b7..7100e30948 100644
--- a/network/remmina/remmina.SlackBuild
+++ b/network/remmina/remmina.SlackBuild
@@ -5,7 +5,7 @@
# Copyright 2013 Luis Henrique
# Copyright 2013 Niels Horn, Rio de Janeiro, RJ, Brazil
# Copyright 2015-2018 Philip van der Hoeven, Almere, The Netherlands
-# Copyright 2019-2022 Tim Danforth, USA
+# Copyright 2019-2023 Tim Danforth, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,12 +28,12 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=remmina
-VERSION=${VERSION:-1.4.24}
+VERSION=${VERSION:-1.4.33}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-DIRNAME=Remmina-v$VERSION
+DIRNAME=Remmina-v.$VERSION
AVAHI=${AVAHI:-OFF}
KWALLET=${KWALLET:-ON}
@@ -79,7 +79,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $DIRNAME
-tar xvf $CWD/$DIRNAME.tar.gz
+tar xvf $CWD/$DIRNAME.tar.bz2
cd $DIRNAME
chown -R root:root .
find -L . \
diff --git a/network/remmina/remmina.info b/network/remmina/remmina.info
index e156446d7f..8fa24fb064 100644
--- a/network/remmina/remmina.info
+++ b/network/remmina/remmina.info
@@ -1,8 +1,8 @@
PRGNAM="remmina"
-VERSION="1.4.24"
+VERSION="1.4.33"
HOMEPAGE="https://www.remmina.org"
-DOWNLOAD="https://gitlab.com/Remmina/Remmina/-/archive/v1.4.24/Remmina-v1.4.24.tar.gz"
-MD5SUM="c17f7b8d302936d9c3fb1bb4ce604901"
+DOWNLOAD="https://gitlab.com/Remmina/Remmina/-/archive/v.1.4.33/Remmina-v.1.4.33.tar.bz2"
+MD5SUM="e3f0be9198e826938223c0e0ef402837"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="spice-gtk"
diff --git a/network/remotebox/README b/network/remotebox/README
new file mode 100644
index 0000000000..801d9eb894
--- /dev/null
+++ b/network/remotebox/README
@@ -0,0 +1,8 @@
+RemoteBox is an open-source VirtualBox client which means you can
+remotely administer (ie over the network) an installation of
+VirtualBox on a server, including its guests and interact with them
+as if they were running locally. VirtualBox is installed on the
+server machine and RemoteBox runs on the client machine. RemoteBox
+provides a complete Gtk 3 graphical interface with a look and feel
+similar to that of VirtualBox's native GUI and supports the vast
+majority of features.
diff --git a/network/remotebox/doinst.sh b/network/remotebox/doinst.sh
new file mode 100644
index 0000000000..00dd0228da
--- /dev/null
+++ b/network/remotebox/doinst.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+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/livestreamer-curses/livestreamer-curses.SlackBuild b/network/remotebox/remotebox.SlackBuild
index d0546f1f7f..e7fb09d0f1 100644
--- a/network/livestreamer-curses/livestreamer-curses.SlackBuild
+++ b/network/remotebox/remotebox.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for livestreamer-curses
+# Slackware build script for remotebox
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2023 Charadon
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,24 +24,18 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=livestreamer-curses
-VERSION=${VERSION:-1.5.2}
+PRGNAM=remotebox
+SRCNAM=RemoteBox
+VERSION=${VERSION:-3.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
+ARCH="noarch"
# 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
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
@@ -50,28 +44,14 @@ 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
+rm -rf $SRCNAM-$VERSION
+tar xvf $CWD/$SRCNAM-$VERSION.tar.bz2
+cd $SRCNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -79,13 +59,23 @@ 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 {} \;
-python setup.py install --root=$PKG
+# Set the locations of Remotebox's files.
+sed -i 's|$Bin/share/remotebox|/usr/share/remotebox|g' remotebox
+
+mkdir -p $PKG/usr/share
+cp -r share/remotebox $PKG/usr/share
+
+install -Dm755 remotebox $PKG/usr/bin/remotebox
+install -Dm644 packagers-readme/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
+install -Dm644 share/$PRGNAM/icons/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+install -Dm644 packagers-readme/$PRGNAM.appdata.xml \
+ $PKG/usr/share/appdata/$PRGNAM.appdata.xml
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 README.rst $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a docs/COPYING docs/changelog.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/remotebox/remotebox.info b/network/remotebox/remotebox.info
new file mode 100644
index 0000000000..67a2ace890
--- /dev/null
+++ b/network/remotebox/remotebox.info
@@ -0,0 +1,10 @@
+PRGNAM="remotebox"
+VERSION="3.2"
+HOMEPAGE="https://remotebox.knobgoblin.org.uk/"
+DOWNLOAD="https://remotebox.knobgoblin.org.uk/downloads/RemoteBox-3.2.tar.bz2"
+MD5SUM="04a4c2be0802aea1fcae7d14bca0fc71"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="perl-SOAP-Lite perl-Gtk3"
+MAINTAINER="Charadon"
+EMAIL="dev@iotib.net"
diff --git a/network/remotebox/slack-desc b/network/remotebox/slack-desc
new file mode 100644
index 0000000000..d6d6c2a42f
--- /dev/null
+++ b/network/remotebox/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------------------------------------------------------|
+remotebox: remotebox (An open-source VirtualBox client)
+remotebox:
+remotebox: RemoteBox is an open-source VirtualBox client which means you can
+remotebox: remotely administer (ie over the network) an installation of
+remotebox: VirtualBox on a server, including its guests and interact with them
+remotebox: as if they were running locally. VirtualBox is installed on the
+remotebox: server machine and RemoteBox runs on the client machine. RemoteBox
+remotebox: provides a complete Gtk 3 graphical interface with a look and feel
+remotebox: similar to that of VirtualBox's native GUI and supports the vast
+remotebox: majority of features.
+remotebox:
diff --git a/network/rhapsody/rhapsody.SlackBuild b/network/rhapsody/rhapsody.SlackBuild
index 8c034dd4eb..f23ad5dce9 100644
--- a/network/rhapsody/rhapsody.SlackBuild
+++ b/network/rhapsody/rhapsody.SlackBuild
@@ -6,6 +6,10 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230103 bkw: BUILD=3
+# - use https URL for homepage in info file.
+# - remove useless INSTALL from doc dir.
+
# 20210923 bkw: fix build on -current, mitigate buffer overflow.
# TODO: see if there's anything to these:
@@ -22,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rhapsody
VERSION=${VERSION:-0.28b}
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-3}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -70,6 +74,8 @@ 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 {} \+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+
# This patch does:
# - prevent input buffer overflow if user types/pastes > 1023 chars
# into the input window.
@@ -81,10 +87,11 @@ make LOCALFLAGS="$SLKCFLAGS -fcommon"
strip $PRGNAM
make install \
INSTALLPATH=$PKG/usr/bin \
- INSTDOCSPATH=$PKG/usr/doc/$PRGNAM-$VERSION
+ INSTDOCSPATH=$PKGDOC
-cp README $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp README $PKGDOC
+rm -f $PKGDOC/INSTALL
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
# Man page borrowed from Ubuntu and modified a bit.
# rhapsody doesn't really need a man page,
diff --git a/network/rhapsody/rhapsody.info b/network/rhapsody/rhapsody.info
index dc86708113..ad0deab6f9 100644
--- a/network/rhapsody/rhapsody.info
+++ b/network/rhapsody/rhapsody.info
@@ -1,6 +1,6 @@
PRGNAM="rhapsody"
VERSION="0.28b"
-HOMEPAGE="http://rhapsody.sourceforge.net/"
+HOMEPAGE="https://rhapsody.sourceforge.net/"
DOWNLOAD="https://downloads.sourceforge.net/rhapsody/rhapsody_0.28b.tgz"
MD5SUM="0792de636a2625a826491e387fcb1305"
DOWNLOAD_x86_64=""
diff --git a/network/roundcubemail/roundcubemail.SlackBuild b/network/roundcubemail/roundcubemail.SlackBuild
index f215694b13..81857a2de5 100644
--- a/network/roundcubemail/roundcubemail.SlackBuild
+++ b/network/roundcubemail/roundcubemail.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for roundcube
-# Copyright 2022 Johannes Schoepfer, Germany
+# Copyright 2022-2023 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=roundcubemail
-VERSION=${VERSION:-1.4.13}
+VERSION=${VERSION:-1.4.15}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -52,9 +52,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
mkdir -p $PKG/usr/share/$PRGNAM
cp -R \
diff --git a/network/roundcubemail/roundcubemail.info b/network/roundcubemail/roundcubemail.info
index fb29aa5b91..490db962be 100644
--- a/network/roundcubemail/roundcubemail.info
+++ b/network/roundcubemail/roundcubemail.info
@@ -1,8 +1,8 @@
PRGNAM="roundcubemail"
-VERSION="1.4.13"
+VERSION="1.4.15"
HOMEPAGE="https://roundcube.net/"
-DOWNLOAD="https://github.com/roundcube/roundcubemail/releases/download/1.4.13/roundcubemail-1.4.13-complete.tar.gz"
-MD5SUM="d1ba0657d86cef43a647307bf6492887"
+DOWNLOAD="https://github.com/roundcube/roundcubemail/releases/download/1.4.15/roundcubemail-1.4.15-complete.tar.gz"
+MD5SUM="70da491b8b16514bc39e4c76174f93b4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/rspamd/0007-fix-i386-compilation.patch b/network/rspamd/0007-fix-i386-compilation.patch
deleted file mode 100644
index 0c1dda747a..0000000000
--- a/network/rspamd/0007-fix-i386-compilation.patch
+++ /dev/null
@@ -1,110 +0,0 @@
-From: Vsevolod Stakhov <vsevolod@highsecure.ru>
-From: Duncan Bellamy <dunk@denkimushi.com>
-Subject: [Fix] Restrict x86_64 assembly to x86_64
-Origin: upstream, https://github.com/rspamd/rspamd/commit/f6dc828c3d8c015779eea7fb662198c6d58def14
-Origin: upstream, https://github.com/rspamd/rspamd/commit/eee7acb309bae98e17c19b53bbd72cc9b798c281
-Origin: upstream, https://github.com/rspamd/rspamd/commit/9766a457eb860b2eeb5e3e37ff86e82e89fe8c8d
-
----
- src/libcryptobox/CMakeLists.txt | 19 +++++++++++++------
- src/libcryptobox/chacha20/chacha.c | 12 ++++++------
- src/libcryptobox/cryptobox.c | 4 ++--
- 3 files changed, 21 insertions(+), 14 deletions(-)
-
-diff --git a/src/libcryptobox/CMakeLists.txt b/src/libcryptobox/CMakeLists.txt
-index 272701b..a7f8665 100644
---- a/src/libcryptobox/CMakeLists.txt
-+++ b/src/libcryptobox/CMakeLists.txt
-@@ -5,17 +5,24 @@ SET(BASE64SRC ${CMAKE_CURRENT_SOURCE_DIR}/base64/ref.c
- ${CMAKE_CURRENT_SOURCE_DIR}/base64/base64.c)
-
- IF(HAVE_AVX2)
-- SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx2.S)
-+ IF ("${ARCH}" STREQUAL "x86_64")
-+ SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx2.S)
-+ MESSAGE(STATUS "Cryptobox: AVX2 support is added (chacha20)")
-+ ENDIF()
- SET(BASE64SRC ${BASE64SRC} ${CMAKE_CURRENT_SOURCE_DIR}/base64/avx2.c)
-- MESSAGE(STATUS "Cryptobox: AVX2 support is added (chacha20, avx2)")
-+ MESSAGE(STATUS "Cryptobox: AVX2 support is added (base64)")
- ENDIF(HAVE_AVX2)
- IF(HAVE_AVX)
-- SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx.S)
-- MESSAGE(STATUS "Cryptobox: AVX support is added (chacha20)")
-+ IF ("${ARCH}" STREQUAL "x86_64")
-+ SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx.S)
-+ MESSAGE(STATUS "Cryptobox: AVX support is added (chacha20)")
-+ ENDIF()
- ENDIF(HAVE_AVX)
- IF(HAVE_SSE2)
-- SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/sse2.S)
-- MESSAGE(STATUS "Cryptobox: SSE2 support is added (chacha20)")
-+ IF ("${ARCH}" STREQUAL "x86_64")
-+ SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/sse2.S)
-+ MESSAGE(STATUS "Cryptobox: SSE2 support is added (chacha20)")
-+ ENDIF()
- ENDIF(HAVE_SSE2)
- IF(HAVE_SSE42)
- SET(BASE64SRC ${BASE64SRC} ${CMAKE_CURRENT_SOURCE_DIR}/base64/sse42.c)
-diff --git a/src/libcryptobox/chacha20/chacha.c b/src/libcryptobox/chacha20/chacha.c
-index e4543d3..653c614 100644
---- a/src/libcryptobox/chacha20/chacha.c
-+++ b/src/libcryptobox/chacha20/chacha.c
-@@ -52,15 +52,15 @@ typedef struct chacha_impl_t {
- #define CHACHA_IMPL(cpuflags, desc, ext) \
- {(cpuflags), desc, chacha_##ext, xchacha_##ext, chacha_blocks_##ext, hchacha_##ext}
-
--#if defined(HAVE_AVX2)
-+#if defined(HAVE_AVX2) && defined(__x86_64__)
- CHACHA_DECLARE(avx2)
- #define CHACHA_AVX2 CHACHA_IMPL(CPUID_AVX2, "avx2", avx2)
- #endif
--#if defined(HAVE_AVX)
-+#if defined(HAVE_AVX) && defined(__x86_64__)
- CHACHA_DECLARE(avx)
- #define CHACHA_AVX CHACHA_IMPL(CPUID_AVX, "avx", avx)
- #endif
--#if defined(HAVE_SSE2)
-+#if defined(HAVE_SSE2) && defined(__x86_64__)
- CHACHA_DECLARE(sse2)
- #define CHACHA_SSE2 CHACHA_IMPL(CPUID_SSE2, "sse2", sse2)
- #endif
-@@ -70,13 +70,13 @@ CHACHA_DECLARE(ref)
-
- static const chacha_impl_t chacha_list[] = {
- CHACHA_GENERIC,
--#if defined(CHACHA_AVX2)
-+#if defined(CHACHA_AVX2) && defined(__x86_64__)
- CHACHA_AVX2,
- #endif
--#if defined(CHACHA_AVX)
-+#if defined(CHACHA_AVX) && defined(__x86_64__)
- CHACHA_AVX,
- #endif
--#if defined(CHACHA_SSE2)
-+#if defined(CHACHA_SSE2) && defined(__x86_64__)
- CHACHA_SSE2
- #endif
- };
-diff --git a/src/libcryptobox/cryptobox.c b/src/libcryptobox/cryptobox.c
-index 3139bb1..f34cd13 100644
---- a/src/libcryptobox/cryptobox.c
-+++ b/src/libcryptobox/cryptobox.c
-@@ -118,7 +118,7 @@ rspamd_cryptobox_test_instr (gint instr)
- }
-
- switch (instr) {
--#ifdef HAVE_SSE2
-+#if defined HAVE_SSE2 && defined (__x86_64__)
- case CPUID_SSE2:
- __asm__ volatile ("psubb %xmm0, %xmm0");
- break;
-@@ -146,7 +146,7 @@ rspamd_cryptobox_test_instr (gint instr)
- __asm__ volatile ("pcmpeqq %xmm0, %xmm0");
- break;
- #endif
--#ifdef HAVE_SSE42
-+#if defined HAVE_SSE42 && defined(__x86_64__)
- case CPUID_SSE42:
- __asm__ volatile ("pushq %rax\n"
- "xorq %rax, %rax\n"
diff --git a/network/rspamd/Toolset.cmake.patch b/network/rspamd/Toolset.cmake.patch
deleted file mode 100644
index f70735d899..0000000000
--- a/network/rspamd/Toolset.cmake.patch
+++ /dev/null
@@ -1,16 +0,0 @@
---- cmake/Toolset.cmake 2020-09-23 18:31:57.275661294 -0600
-+++ cmake/Toolset.cmake 2020-09-23 18:32:34.812659218 -0600
-@@ -45,10 +45,10 @@
- find_program(GOLD_PATH NAMES "ld.gold" "gold")
-
- if(NOT LINKER_NAME)
-- if(LLD_PATH)
-- set(LINKER_NAME "lld")
-- elseif(GOLD_PATH)
-+ if(GOLD_PATH)
- set(LINKER_NAME "gold")
-+ elseif(LLD_PATH)
-+ set(LINKER_NAME "lld")
- else()
- message(STATUS "Use generic 'ld' as a linker")
- endif()
diff --git a/network/rspamd/rspamd.SlackBuild b/network/rspamd/rspamd.SlackBuild
index 8c7ebddcf2..071fadc54f 100644
--- a/network/rspamd/rspamd.SlackBuild
+++ b/network/rspamd/rspamd.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Rspamd
-# Copyright 2018-2021 Ebben Aries <slackbuilds@dscp.org>
+# Copyright 2018-2024 Ebben Aries <slackbuilds@dscp.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rspamd
-VERSION=${VERSION:-3.1}
+VERSION=${VERSION:-3.8.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -91,15 +91,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 to use correct linker
-# https://github.com/rspamd/rspamd/issues/3168#issuecomment-583849873
-patch -p0 < $CWD/Toolset.cmake.patch
-
-# 20220320 bkw: patch from Debian, allows building on 32-bit.
-patch -p1 < $CWD/0007-fix-i386-compilation.patch
-
-mkdir -p build
-cd build
+mkdir -p rspamd.build
+cd rspamd.build
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
@@ -109,10 +102,11 @@ cd build
-DENABLE_STATIC=OFF \
-DENABLE_HYPERSCAN=ON \
-DENABLE_JEMALLOC=ON \
+ -DENABLE_LUAJIT=ON \
-DENABLE_OPTIMIZATION=ON \
-DCMAKE_BUILD_TYPE=Release \
..
- make VERBOSE=1
+ make
make install/strip DESTDIR=$PKG
cd ..
gzip $PKG/usr/man/man*/*
diff --git a/network/rspamd/rspamd.info b/network/rspamd/rspamd.info
index 40a4102733..a533c96955 100644
--- a/network/rspamd/rspamd.info
+++ b/network/rspamd/rspamd.info
@@ -1,10 +1,10 @@
PRGNAM="rspamd"
-VERSION="3.1"
+VERSION="3.8.4"
HOMEPAGE="https://rspamd.com"
-DOWNLOAD="https://github.com/rspamd/rspamd/archive/3.1/rspamd-3.1.tar.gz"
-MD5SUM="8b87ee04a0ec561e81ecf8808a5f9f95"
+DOWNLOAD="https://github.com/rspamd/rspamd/archive/3.8.4/rspamd-3.8.4.tar.gz"
+MD5SUM="b0277cbdcca54bd6873b1fd2ea7e61de"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="ragel luajit redis hyperscan"
+REQUIRES="luajit redis hyperscan"
MAINTAINER="Ebben Aries"
EMAIL="slackbuilds@dscp.org"
diff --git a/network/rss2email/4b36e28.patch b/network/rss2email/4b36e28.patch
deleted file mode 100644
index 5b6a050c7e..0000000000
--- a/network/rss2email/4b36e28.patch
+++ /dev/null
@@ -1,239 +0,0 @@
-diff -Naur orig/CHANGELOG new/CHANGELOG
---- orig/CHANGELOG 2020-08-31 18:03:24.000000000 +0300
-+++ new/CHANGELOG 2020-09-05 16:09:45.000000000 +0300
-@@ -1,4 +1,7 @@
- UNRELEASED
-+ * Improve log messages
-+ * Remove documentation of `smtp-ssl-protocol` as this option was dropped in 2016
-+ * Stop forging SMTP and sendmail envelope sender (#134)
-
- v3.12.2 (2020-08-31)
- * Fix bug `AttributeError: 'NoneType' object has no attribute 'close'` (#126)
-diff -Naur orig/r2e.1 new/r2e.1
---- orig/r2e.1 2020-08-31 18:03:24.000000000 +0300
-+++ new/r2e.1 2020-09-05 16:09:45.000000000 +0300
-@@ -253,8 +253,6 @@
- SMTP server
- .IP smtp-ssl
- Connect to the SMTP server using SSL
--.IP smtp-ssl-protocol
--TLS/SSL version to use on STARTTLS when not using 'smtp-ssl'.
- .RE
- .SS IMAP configuration
- .IP imap-auth
-diff -Naur orig/rss2email/__init__.py new/rss2email/__init__.py
---- orig/rss2email/__init__.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/__init__.py 2020-09-05 16:09:45.000000000 +0300
-@@ -26,7 +26,7 @@
- import sys as _sys
-
-
--__version__ = '3.12.2'
-+__version__ = '3.12.1'
- __url__ = 'https://github.com/rss2email/rss2email'
- __author__ = 'The rss2email maintainers'
- __email__ = 'rss2email@tremily.us'
-diff -Naur orig/rss2email/config.py new/rss2email/config.py
---- orig/rss2email/config.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/config.py 2020-09-05 16:09:45.000000000 +0300
-@@ -83,11 +83,11 @@
- # Transfer-Encoding. For local mailing it is safe and
- # convenient to use 8bit.
- ('use-8bit', str(False)),
-- # True: Only use the 'from' address.
-+ # True: Only use the 'from' address. Overrides the use-publisher-email setting.
- # False: Use the email address specified by the feed, when possible.
- ('force-from', str(False)),
-- # True: Use the publisher's email if you can't find the author's.
-- # False: Just use the 'from' email instead.
-+ # True: Use author's email if found, or use publisher's email if found, or use the 'from' setting.
-+ # False: Use author's email if found, or use the 'from' setting.
- ('use-publisher-email', str(False)),
- # If empty, only use the feed email address rather than
- # friendly name plus email address. Available attributes may
-@@ -132,7 +132,7 @@
- # because the old entries will not be recorded under their new
- # link-based ids.
- ('trust-link', str(False)),
-- # If 'trust-guid' or 'trust-link' is True, this settings allows to receive
-+ # If 'trust-guid' or 'trust-link' is True, this setting allows to receive
- # a new email message in reply to the previous one when the post changes.
- ('reply-changes', str(False)),
- # To most correctly encode emails with international
-diff -Naur orig/rss2email/email.py new/rss2email/email.py
---- orig/rss2email/email.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/email.py 2020-09-05 16:09:45.000000000 +0300
-@@ -151,7 +151,7 @@
- message[key] = _Header(value, encoding)
- return message
-
--def smtp_send(sender, recipient, message, config=None, section='DEFAULT'):
-+def smtp_send(recipient, message, config=None, section='DEFAULT'):
- if config is None:
- config = _config.CONFIG
- server = config.get(section, 'smtp-server')
-@@ -190,7 +190,7 @@
- except Exception as e:
- raise _error.SMTPAuthenticationError(
- server=server, username=username)
-- smtp.send_message(message, sender, recipient.split(','))
-+ smtp.send_message(message, config.get(section, 'from'), recipient.split(','))
- smtp.quit()
-
- def imap_send(message, config=None, section='DEFAULT'):
-@@ -345,12 +345,12 @@
- else:
- return bytesio.getvalue()
-
--def sendmail_send(sender, recipient, message, config=None, section='DEFAULT'):
-+def sendmail_send(recipient, message, config=None, section='DEFAULT'):
- if config is None:
- config = _config.CONFIG
- message_bytes = _flatten(message)
- sendmail = config.get(section, 'sendmail')
-- sender_name,sender_addr = _parseaddr(sender)
-+ sender_name,sender_addr = _parseaddr(config.get(section, 'from'))
- _LOG.debug(
- 'sending message to {} via {}'.format(recipient, sendmail))
- try:
-@@ -366,11 +366,11 @@
- except Exception as e:
- raise _error.SendmailError() from e
-
--def send(sender, recipient, message, config=None, section='DEFAULT'):
-+def send(recipient, message, config=None, section='DEFAULT'):
- protocol = config.get(section, 'email-protocol')
- if protocol == 'smtp':
- smtp_send(
-- sender=sender, recipient=recipient, message=message,
-+ recipient=recipient, message=message,
- config=config, section=section)
- elif protocol == 'imap':
- imap_send(message=message, config=config, section=section)
-@@ -378,5 +378,5 @@
- maildir_send(message=message, config=config, section=section)
- else:
- sendmail_send(
-- sender=sender, recipient=recipient, message=message,
-+ recipient=recipient, message=message,
- config=config, section=section)
-diff -Naur orig/rss2email/error.py new/rss2email/error.py
---- orig/rss2email/error.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/error.py 2020-09-05 16:09:45.000000000 +0300
-@@ -42,15 +42,14 @@
-
-
- class TimeoutError (RSS2EmailError):
-- def __init__(self, time_limited_function, message=None):
-- if message is None:
-- if time_limited_function.error is not None:
-- message = (
-- 'error while running time limited function: {}'.format(
-- time_limited_function.error[1]))
-- else:
-- message = '{} second timeout exceeded'.format(
-- time_limited_function.timeout)
-+ def __init__(self, time_limited_function):
-+ if time_limited_function.error is not None:
-+ message = (
-+ 'error while running time limited function in {}: {}'.format(
-+ time_limited_function.name, time_limited_function.error[1]))
-+ else:
-+ message = '{} second timeout exceeded in {}'.format(
-+ time_limited_function.timeout, time_limited_function.name)
- super(TimeoutError, self).__init__(message=message)
- self.time_limited_function = time_limited_function
-
-@@ -148,8 +147,9 @@
- class InvalidFeedConfig (FeedError):
- def __init__(self, setting, feed, message=None, **kwargs):
- if not message:
-- message = "invalid feed configuration {}".format(
-- {setting: getattr(feed, setting)})
-+ message = (
-+ "invalid feed configuration '{setting}' in {feed}".format(
-+ setting=getattr(feed, setting), feed=feed))
- super(InvalidFeedConfig, self).__init__(
- feed=feed, message=message, **kwargs)
- self.setting = setting
-diff -Naur orig/rss2email/feed.py new/rss2email/feed.py
---- orig/rss2email/feed.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/feed.py 2020-09-05 16:09:45.000000000 +0300
-@@ -373,7 +373,7 @@
- kwargs = {}
- if proxy:
- kwargs['handlers'] = [_urllib_request.ProxyHandler({'http':proxy})]
-- f = _util.TimeLimitedFunction(timeout, _feedparser.parse)
-+ f = _util.TimeLimitedFunction('feed {}'.format(self.name), timeout, _feedparser.parse)
- return f(self.url, self.etag, modified=self.modified, **kwargs)
-
- def _process(self, parsed):
-@@ -773,9 +773,9 @@
- if entry.get('summary_detail', None):
- contents.append(entry.summary_detail)
- if self.html_mail:
-- types = ['text/html', 'text/plain']
-+ types = ['application/xhtml+xml', 'text/html', 'text/plain']
- else:
-- types = ['text/plain', 'text/html']
-+ types = ['text/plain', 'text/html', 'application/xhtml+xml']
- for content_type in types:
- for content in contents:
- if content['type'] == content_type:
-@@ -871,7 +871,7 @@
- section = self.section
- if section not in self.config:
- section = 'DEFAULT'
-- _email.send(sender=sender, recipient=self.to, message=message,
-+ _email.send(recipient=self.to, message=message,
- config=self.config, section=section)
-
- def run(self, send=True):
-diff -Naur orig/rss2email/feeds.py new/rss2email/feeds.py
---- orig/rss2email/feeds.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/feeds.py 2020-09-05 16:09:45.000000000 +0300
-@@ -239,11 +239,10 @@
- def load(self, require=False):
- _LOG.debug('load feed configuration from {}'.format(self.configfiles))
- if self.configfiles:
-- self.read_configfiles = self.config.read(self.configfiles)
-+ read_configfiles = self.config.read(self.configfiles)
- else:
-- self.read_configfiles = []
-- _LOG.debug('loaded configuration from {}'.format(
-- self.read_configfiles))
-+ read_configfiles = []
-+ _LOG.debug('loaded configuration from {}'.format(read_configfiles))
- self._load_feeds(require=require)
-
- def _load_feeds(self, require):
-diff -Naur orig/rss2email/util.py new/rss2email/util.py
---- orig/rss2email/util.py 2020-08-31 18:03:24.000000000 +0300
-+++ new/rss2email/util.py 2020-09-05 16:09:45.000000000 +0300
-@@ -35,19 +35,20 @@
- >>> def sleeping_return(sleep, x):
- ... time.sleep(sleep)
- ... return x
-- >>> TimeLimitedFunction(0.5, sleeping_return)(0.1, 'x')
-+ >>> TimeLimitedFunction('sleeping', 0.5, sleeping_return)(0.1, 'x')
- 'x'
-- >>> TimeLimitedFunction(0.5, sleeping_return)(10, 'y')
-+ >>> TimeLimitedFunction('sleeping', 0.5, sleeping_return)(10, 'y')
- Traceback (most recent call last):
- ...
-- rss2email.error.TimeoutError: 0.5 second timeout exceeded
-- >>> TimeLimitedFunction(0.5, time.sleep)('x')
-+ rss2email.error.TimeoutError: 0.5 second timeout exceeded in sleeping
-+ >>> TimeLimitedFunction('sleep', 0.5, time.sleep)('x')
- Traceback (most recent call last):
- ...
-- rss2email.error.TimeoutError: error while running time limited function: a float is required
-+ rss2email.error.TimeoutError: error while running time limited function in sleep: a float is required
- """
-- def __init__(self, timeout, target, **kwargs):
-+ def __init__(self, name, timeout, target, **kwargs):
- super(TimeLimitedFunction, self).__init__(target=target, daemon=True, **kwargs)
-+ self.name = name
- self.timeout = timeout
- self.result = None
- self.error = None
diff --git a/network/rss2email/README b/network/rss2email/README
index 1981e478bb..d21b699b77 100644
--- a/network/rss2email/README
+++ b/network/rss2email/README
@@ -1,6 +1,6 @@
-A python script that converts RSS/Atom newsfeeds to email.
+A python script that forward RSS feeds to your email address. This
+allows you to view RSS feeds in an interface you are already familiar
+with and to apply filters to incoming feeds.
-It is the successor to the rss2email by Aaron Swartz, available on SBo
-as r2e.
-
-rss2email will conflict with r2e.
+It is the community maintained successor to the rss2email by Aaron
+Swartz.
diff --git a/network/rss2email/rss2email.SlackBuild b/network/rss2email/rss2email.SlackBuild
index 762952240a..e5aa792998 100644
--- a/network/rss2email/rss2email.SlackBuild
+++ b/network/rss2email/rss2email.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for rss2email
-# Copyright 2020, Alexander Verbovetsky, Moscow, Russia
+# Copyright 2020-2022, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=rss2email
-VERSION=${VERSION:-3.12.2} # Don't forget to remove the patch below!!!
+VERSION=${VERSION:-3.14}
BUILD=${BUILD:-1}
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
@@ -73,9 +70,6 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-# For ver. 3.12.2 only
-patch -p1 < $CWD/4b36e28.patch
-
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/network/rss2email/rss2email.info b/network/rss2email/rss2email.info
index d5f116ba70..8d14e4d856 100644
--- a/network/rss2email/rss2email.info
+++ b/network/rss2email/rss2email.info
@@ -1,8 +1,8 @@
PRGNAM="rss2email"
-VERSION="3.12.2"
+VERSION="3.14"
HOMEPAGE="https://github.com/rss2email/rss2email"
-DOWNLOAD="https://github.com/rss2email/rss2email/archive/v3.12.2/rss2email-3.12.2.tar.gz"
-MD5SUM="9975f0c0f637daaa025d09ae54c33a8c"
+DOWNLOAD="https://github.com/rss2email/rss2email/archive/v3.14/rss2email-3.14.tar.gz"
+MD5SUM="68ed27825b1a7fb7fa7c3396954ed654"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="feedparser html2text"
diff --git a/network/rss2email/slack-desc b/network/rss2email/slack-desc
index 9c4d4fb883..63a31dbb53 100644
--- a/network/rss2email/slack-desc
+++ b/network/rss2email/slack-desc
@@ -8,7 +8,7 @@
|-----handy-ruler------------------------------------------------------|
rss2email: rss2email (rss to email gateway)
rss2email:
-rss2email: A python script that converts RSS/Atom newsfeeds to email.
+rss2email: A python script that forward RSS feeds to your email address.
rss2email:
rss2email:
rss2email:
diff --git a/network/rtl8188fu/README b/network/rtl8188fu/README
new file mode 100644
index 0000000000..06296a3485
--- /dev/null
+++ b/network/rtl8188fu/README
@@ -0,0 +1,4 @@
+rtl8188fu (rtl8188fu / rtl8188ftv wireless network adaptors driver)
+
+Driver for Realtek wireless adaptors using the rtl8188fu chipset,
+including the rtl8188ftv
diff --git a/network/rtl8188fu/conf/disable-random-mac.conf b/network/rtl8188fu/conf/disable-random-mac.conf
new file mode 100644
index 0000000000..0763348bdb
--- /dev/null
+++ b/network/rtl8188fu/conf/disable-random-mac.conf
@@ -0,0 +1,2 @@
+[device]
+wifi.scan-rand-mac-address=no
diff --git a/network/rtl8188fu/conf/r8188eu-blacklist.conf b/network/rtl8188fu/conf/r8188eu-blacklist.conf
new file mode 100644
index 0000000000..483e3418c8
--- /dev/null
+++ b/network/rtl8188fu/conf/r8188eu-blacklist.conf
@@ -0,0 +1 @@
+alias usb:v0BDApF179d*dc*dsc*dp*icFFiscFFipFFin* rtl8188fu
diff --git a/network/rtl8188fu/conf/rtl8188fu.conf b/network/rtl8188fu/conf/rtl8188fu.conf
new file mode 100644
index 0000000000..7f3e13b8d3
--- /dev/null
+++ b/network/rtl8188fu/conf/rtl8188fu.conf
@@ -0,0 +1 @@
+options rtl8188fu rtw_power_mgnt=0 rtw_enusbss=0 rtw_ips_mode=0
diff --git a/network/rtl8188fu/conf/rtl8xxxu-blacklist.conf b/network/rtl8188fu/conf/rtl8xxxu-blacklist.conf
new file mode 100644
index 0000000000..483e3418c8
--- /dev/null
+++ b/network/rtl8188fu/conf/rtl8xxxu-blacklist.conf
@@ -0,0 +1 @@
+alias usb:v0BDApF179d*dc*dsc*dp*icFFiscFFipFFin* rtl8188fu
diff --git a/network/rtl8188fu/doinst.sh b/network/rtl8188fu/doinst.sh
new file mode 100644
index 0000000000..b17f2a6739
--- /dev/null
+++ b/network/rtl8188fu/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x sbin/depmod ]; then
+ chroot . /sbin/depmod -a 1> /dev/null 2> /dev/null
+fi
diff --git a/network/rtl8188fu/rtl8188fu.SlackBuild b/network/rtl8188fu/rtl8188fu.SlackBuild
new file mode 100644
index 0000000000..5d7afce3e2
--- /dev/null
+++ b/network/rtl8188fu/rtl8188fu.SlackBuild
@@ -0,0 +1,80 @@
+#!/bin/bash
+
+# Slackware build script for rtl8188fu
+# Written by Juan M. Lasca <juanmlasca@gmail.com>
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Based on rtl8812bu.SlackBuild
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rtl8188fu
+VERSION=${VERSION:-1.0+20231018_68ced40}
+COMMIT=68ced40d862d13663294496bac2e9a91ffa0e5c7
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+KERNEL=${KERNEL:-$(uname -r)}
+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}
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$COMMIT
+tar xvf $CWD/$PRGNAM-$COMMIT.tar.gz
+cd $PRGNAM-$COMMIT
+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 {} \+
+
+make
+
+install -D -m0644 rtl8188fu.ko \
+ $PKG/lib/modules/$KERNEL/kernel/drivers/net/wireless/rtl8188fu.ko
+
+mkdir -p $PKG/lib/modprobe.d/
+mkdir -p $PKG/etc/NetworkManager/conf.d/
+
+# disable power management
+cp $CWD/conf/rtl8188fu.conf $PKG/lib/modprobe.d/
+
+# disable MAC address spoofing
+cp $CWD/conf/disable-random-mac.conf $PKG/etc/NetworkManager/conf.d/
+
+# blacklist (alias) for kernel 5.15 and 5.16
+cp $CWD/conf/r8188eu-blacklist.conf $PKG/lib/modprobe.d/
+
+# blacklist (alias) for kernel 6.2 and up
+cp $CWD/conf/rtl8xxxu-blacklist.conf $PKG/lib/modprobe.d/
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$PKGVER
+mkdir -p $PKGDOC
+cp -a LICENSE README.md $PKGDOC
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/rtl8188fu/rtl8188fu.info b/network/rtl8188fu/rtl8188fu.info
new file mode 100644
index 0000000000..d171f807c5
--- /dev/null
+++ b/network/rtl8188fu/rtl8188fu.info
@@ -0,0 +1,10 @@
+PRGNAM="rtl8188fu"
+VERSION="1.0+20231018_68ced40"
+HOMEPAGE="https://github.com/kelebek333/rtl8188fu"
+DOWNLOAD="https://github.com/kelebek333/rtl8188fu/archive/68ced40/rtl8188fu-68ced40d862d13663294496bac2e9a91ffa0e5c7.tar.gz"
+MD5SUM="5d80f8aa03b281ef759499dd9448ceea"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Juan M. Lasca"
+EMAIL="juanmlasca@gmail.com"
diff --git a/network/PyRSS2Gen/slack-desc b/network/rtl8188fu/slack-desc
index a859f9cc7a..8895bfc993 100644
--- a/network/PyRSS2Gen/slack-desc
+++ b/network/rtl8188fu/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-PyRSS2Gen: PyRSS2Gen (python RSS feed generator)
-PyRSS2Gen:
-PyRSS2Gen: PyRSS2Gen is a Python module that makes it easy to generate valid
-PyRSS2Gen: RSS feeds. You can use it to generate RSS feeds for web pages that
-PyRSS2Gen: don't have them.
-PyRSS2Gen:
-PyRSS2Gen: Home: http://www.dalkescientific.com/Python/PyRSS2Gen.html
-PyRSS2Gen:
-PyRSS2Gen:
-PyRSS2Gen:
-PyRSS2Gen:
+rtl8188fu: rtl8188fu (rtl8188fu / rtl8188ftv wireless network adaptors driver)
+rtl8188fu:
+rtl8188fu: Driver for Realtek wireless adaptors using the rtl8188fu or the
+rtl8188fu: rtl8188ftv chipset.
+rtl8188fu:
+rtl8188fu: For more information, see: https://github.com/kelebek333/rtl8188fu
+rtl8188fu:
+rtl8188fu:
+rtl8188fu:
+rtl8188fu:
+rtl8188fu:
diff --git a/network/rtl8812bu/README b/network/rtl8812bu/README
new file mode 100644
index 0000000000..2b614552c5
--- /dev/null
+++ b/network/rtl8812bu/README
@@ -0,0 +1,15 @@
+rtl8812bu (driver for rtl8812bu wireless network adaptors)
+
+Driver for Realtek wireless adaptors using the rtl8812bu chipset,
+including:
+
+* Cudy WU1200 AC1200 High Gain USB Wi-Fi Adapter
+* TP-Link Archer T3U
+* TP-Link Archer T3U Plus
+* TP-Link Archer T4U V3
+* Linksys WUSB6400M
+* Dlink DWA-181
+* Dlink DWA-182
+
+For more information, visit the project's home page at:
+https://github.com/fastoe/RTL8812BU
diff --git a/network/rtl8812bu/README.md b/network/rtl8812bu/README.md
new file mode 100644
index 0000000000..10533ba069
--- /dev/null
+++ b/network/rtl8812bu/README.md
@@ -0,0 +1,72 @@
+# Realtek RTL8812BU Driver for Linux
+
+[![Build Status](https://github.com/fastoe/RTL8812BU/actions/workflows/rtl8812bu.yml/badge.svg)](https://github.com/fastoe/RTL8812BU/actions)
+
+Driver for 802.11ac USB adapter with RTL8812BU chipset, only STA/Monitor mode is supported, no AP mode.
+
+A few known wireless cards that use this driver include:
+* [Fastoe AC1200 USB Wi-Fi Adapter](https://www.amazon.com/1200Mbps-ChromeBook-802-11ac-Compatible-Raspbian/dp/B081TGWCVB/ref=as_li_ss_tl?m=A9879GOT1YWJ2&marketplaceID=ATVPDKIKX0DER&qid=1581225299&s=merchant-items&sr=1-3&linkCode=ll1&tag=fastoe-20&linkId=5648949a51280f0323dd599dc27dbae4&language=en_US)
+* Cudy WU1200 AC1200 High Gain USB Wi-Fi Adapter
+* TP-Link Archer T3U
+* TP-Link Archer T3U Plus
+* TP-Link Archer T4U V3
+* Linksys WUSB6400M
+* Dlink DWA-181
+* Dlink DWA-182
+
+Currently tested with Linux kernel 4.12.14/4.15.0/5.3.0/5.15.0 on X86_64 platform **only**.
+
+### For Raspberry Pi
+* https://github.com/fastoe/RTL8812BU_for_Raspbian
+
+
+### For kernel 5.11 or later, please clone the v5.13.1 branch:
+```bash
+sudo apt update
+sudo apt install -y build-essential dkms git bc
+git clone -b v5.13.1 https://github.com/fastoe/RTL8812BU.git
+cd RTL8812BU
+make
+sudo make install
+sudo reboot
+```
+
+### For 5.10 kernel, please clone the v5.6.1 branch:
+```bash
+sudo apt update
+sudo apt install -y build-essential dkms git bc
+git clone -b v5.6.1 https://github.com/fastoe/RTL8812BU.git
+cd RTL8812BU
+make
+sudo make install
+sudo reboot
+```
+
+### For 5.9 and previous versions:
+```bash
+sudo apt update
+sudo apt install -y build-essential dkms git bc
+git clone https://github.com/fastoe/RTL8812BU.git
+cd RTL8812BU
+make
+sudo make install
+sudo reboot
+```
+
+For setting monitor mode:
+
+```bash
+# configure for monitor mode
+sed -i 's/CONFIG_80211W = n/CONFIG_80211W = y/' Makefile
+sed -i 's/CONFIG_WIFI_MONITOR = n/CONFIG_WIFI_MONITOR = y/' Makefile
+
+make
+sudo make install
+sudo ip link set wlx1cbfcea97791 down
+sudo iw wlx1cbfcea97791 set monitor none
+sudo ip link set wlx1cbfcea97791 up
+```
+
+![image](https://www.fastoe.com/images/2020/05/8812bu-monitor-mode.png)
+
+Enjoy!
diff --git a/network/rtl8812bu/doinst.sh b/network/rtl8812bu/doinst.sh
new file mode 100644
index 0000000000..b17f2a6739
--- /dev/null
+++ b/network/rtl8812bu/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x sbin/depmod ]; then
+ chroot . /sbin/depmod -a 1> /dev/null 2> /dev/null
+fi
diff --git a/network/rtl8812bu/git2tarxz.sh b/network/rtl8812bu/git2tarxz.sh
new file mode 100644
index 0000000000..fab3f79ae8
--- /dev/null
+++ b/network/rtl8812bu/git2tarxz.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+# Create source tarball from git repo. Takes a branch (not a commit or tag)
+# as an argument! Warning, this is different from all the other git2tarxz
+# scripts on SBo!
+
+# 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 *branch* to create a
+# tarball of. With no arg, this is used:
+BRANCH=${1:-v5.13.1}
+
+PRGNAM=rtl8812bu
+CLONE_URL=https://github.com/fastoe/RTL8812BU
+
+set -e
+
+GITDIR=$( mktemp -dt $PRGNAM.git.XXXXXX )
+rm -rf $GITDIR
+git clone -b $BRANCH $CLONE_URL $GITDIR
+
+CWD="$( pwd )"
+cd $GITDIR
+
+GIT_SHA=$( git rev-parse --short HEAD )
+
+DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+
+# don't want our tarball's version number to start with "v":
+VERTAG=$( echo $BRANCH | sed 's,^v,,' )
+
+VERSION=${VERTAG}+${DATE}_${GIT_SHA}
+
+find . -name .git\* -print0 | xargs -0 rm -rf
+
+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/rtl8812bu/rtl8812bu.SlackBuild b/network/rtl8812bu/rtl8812bu.SlackBuild
new file mode 100644
index 0000000000..3993198d61
--- /dev/null
+++ b/network/rtl8812bu/rtl8812bu.SlackBuild
@@ -0,0 +1,79 @@
+#!/bin/bash
+
+# Slackware build script for rtl8812bu
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230124 bkw: Just bought one of these devices today, shocked there
+# was no driver in Slackware or SBo already. So here it is.
+
+# Based on rtl8188eu.SlackBuild and rtl8821ce.SlackBuild.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=rtl8812bu
+VERSION=${VERSION:-5.13.1+20230115_36deb90}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+KERNEL=${KERNEL:-$(uname -r)}
+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}
+
+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 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+
+export KVER=$KERNEL
+if [ "$ARCH" = "i586" ] || [ "$ARCH" = "i686" ] ; then
+ # auto detect in the Makefile does not work and sets ARCH to `uname -m`, but
+ # it only builds if it is set to i386
+ ARCH=i386 make
+else
+ env -u ARCH make
+fi
+install -D -m0644 88x2bu.ko \
+ $PKG/lib/modules/$KERNEL/kernel/drivers/net/wireless/88x2bu.ko
+
+# No docs other than the license, so include our own README.
+# Note: don't use $VERSION here, use $PKGVER. The rtl8188eu slackbuild
+# doesn't do this (but it should), the rtl8821ce one does.
+PKGDOC=$PKG/usr/doc/$PRGNAM-$PKGVER
+mkdir -p $PKGDOC
+cp -a LICENSE $PKGDOC
+cat $CWD/README > $PKGDOC/README
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/rtl8812bu/rtl8812bu.info b/network/rtl8812bu/rtl8812bu.info
new file mode 100644
index 0000000000..9651127653
--- /dev/null
+++ b/network/rtl8812bu/rtl8812bu.info
@@ -0,0 +1,10 @@
+PRGNAM="rtl8812bu"
+VERSION="5.13.1+20230115_36deb90"
+HOMEPAGE="https://github.com/fastoe/RTL8812BU"
+DOWNLOAD="https://slackware.uk/~urchlay/src/rtl8812bu-5.13.1+20230115_36deb90.tar.xz"
+MD5SUM="2d6832b9925682f111d7b3c0a7e9cf93"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/rtl8812bu/slack-desc b/network/rtl8812bu/slack-desc
new file mode 100644
index 0000000000..638e3b5afe
--- /dev/null
+++ b/network/rtl8812bu/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------------------------------------------------------|
+rtl8812bu: rtl8812bu (driver for rtl8812bu wireless network adaptors)
+rtl8812bu:
+rtl8812bu: Driver for Realtek wireless adaptors using the rtl8812bu chipset.
+rtl8812bu:
+rtl8812bu: For more information, visit the project's home page at:
+rtl8812bu: https://github.com/fastoe/RTL8812BU
+rtl8812bu:
+rtl8812bu:
+rtl8812bu:
+rtl8812bu:
+rtl8812bu:
diff --git a/network/rtl8821ce/rtl8821ce.SlackBuild b/network/rtl8821ce/rtl8821ce.SlackBuild
index dc2164a399..628260a5ac 100644
--- a/network/rtl8821ce/rtl8821ce.SlackBuild
+++ b/network/rtl8821ce/rtl8821ce.SlackBuild
@@ -48,7 +48,7 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
fi
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
set -e
diff --git a/network/scapy/scapy.SlackBuild b/network/scapy/scapy.SlackBuild
index 6acad51ad6..44a2db956e 100644
--- a/network/scapy/scapy.SlackBuild
+++ b/network/scapy/scapy.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for scapy (http://www.secdev.org/projects/scapy/)
#
-# Copyright 2008-2022 Corrado Franco (http://conraid.net)
+# Copyright 2008-2023 Corrado Franco (http://conraid.net)
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=scapy
-VERSION=${VERSION:-2.4.5}
+VERSION=${VERSION:-2.5.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -68,8 +68,13 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
sed "s|share/man/man1|man/man1|g" -i setup.py
-python setup.py build
-python setup.py install --root=$PKG
+python2 setup.py build
+python2 setup.py install --root=$PKG
+
+if [ -d $PKG/usr/man ]; then
+ find $PKG/usr/man -type f -exec chmod 644 {} \; -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
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/scapy/scapy.info b/network/scapy/scapy.info
index 75a68107d3..417e962fca 100644
--- a/network/scapy/scapy.info
+++ b/network/scapy/scapy.info
@@ -1,8 +1,8 @@
PRGNAM="scapy"
-VERSION="2.4.5"
+VERSION="2.5.0"
HOMEPAGE="http://www.secdev.org/projects/scapy/"
-DOWNLOAD="https://github.com/secdev/scapy/archive/v2.4.5/scapy-2.4.5.tar.gz"
-MD5SUM="fdbb2c8d614bc3836a670e458cae6604"
+DOWNLOAD="https://github.com/secdev/scapy/archive/v2.5.0/scapy-2.5.0.tar.gz"
+MD5SUM="953cd03bde6fe31e361a83487d75dbcf"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/sendxmpp/README b/network/sendxmpp/README
deleted file mode 100644
index 0424290288..0000000000
--- a/network/sendxmpp/README
+++ /dev/null
@@ -1,5 +0,0 @@
-sendxmpp is a program to send XMPP (Jabber) messages from the command
-line, not unlike mail(1). Messages can be sent both to individual
-recipients and chatrooms.
-
-XMPP is an open, non-proprietary protocol for instant messaging.
diff --git a/network/sendxmpp/patches/01.patch b/network/sendxmpp/patches/01.patch
deleted file mode 100644
index 59b85c0bb0..0000000000
--- a/network/sendxmpp/patches/01.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Restore the ability to send normal messages.
-By Helmut Grohne <helmut@subdivi.de>, 2013-05-29
-
-Normal messages are like headline messages except they are not discarded
-when the contact is unavailable but queued instead.
-
-See https://bugs.debian.org/710285
-
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -49,7 +49,7 @@
- my $VERBOSE = 0;
- my $DEBUG = 0;
- # http://tools.ietf.org/html/rfc3921#section-2 section 2.1.1 - Types of Message
--my @suppported_message_types = qw( chat error groupchat headline );
-+my @suppported_message_types = qw( chat error groupchat headline normal);
- my $message_type = 'chat'; # default message type
-
- # start!
-@@ -642,9 +642,9 @@
-
- Backward compatibility option. You should use B<--message-type=headline> instead. Send a headline type message (not stored in offline messages)
-
--=item B<--messages-type>
-+=item B<--message-type>
-
--Set type of message. Supported types are: B<message chat headline>. Default message type is B<message>. Headline type message can be set also with B<--headline> option, see B<--headline>
-+Set type of message. Supported types are: B<chat error groupchat headline normal>. Default message type is B<chat>. Headline type message can be set also with B<--headline> option, see B<--headline>
-
- =item B<-c>,B<--chatroom>
-
diff --git a/network/sendxmpp/patches/02.patch b/network/sendxmpp/patches/02.patch
deleted file mode 100644
index 1c0dd70210..0000000000
--- a/network/sendxmpp/patches/02.patch
+++ /dev/null
@@ -1,277 +0,0 @@
-From 48f6fe83589b04b77dd4fe52b810f1415aa2835c Mon Sep 17 00:00:00 2001
-From: Lubomir Host <lubomir.host@gmail.com>
-Date: Tue, 7 Oct 2014 19:38:00 +0200
-Subject: [PATCH] Add spaces after comma.
-
----
- sendxmpp | 78 ++++++++++++++++++++++++++++----------------------------
- 1 file changed, 39 insertions(+), 39 deletions(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index 91ae1ef..74d95c0 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -102,7 +102,7 @@ sub main () { # {{{
- $txt .= $_ while (<STDIN>);
- }
-
-- xmpp_send ($cnx,$cmdline,$config,$txt);
-+ xmpp_send ($cnx, $cmdline, $config, $txt);
-
- }
- else {
-@@ -115,7 +115,7 @@ sub main () { # {{{
- # line by line...
- while (<STDIN>) {
- chomp;
-- xmpp_send ($cnx,$cmdline,$config,$_);
-+ xmpp_send ($cnx, $cmdline, $config, $_);
- }
- }
-
-@@ -141,7 +141,7 @@ sub read_config_file ($) { # {{{
- error_exit ("$cfg_file must not be accessible by others")
- if ($mode & 0077);
-
-- open (CFG,"<$cfg_file")
-+ open (CFG, "<$cfg_file")
- or error_exit("cannot open $cfg_file for reading: $!");
-
- my %config;
-@@ -193,7 +193,7 @@ sub read_config_file ($) { # {{{
- unless (scalar(%config));
-
- if ($DEBUG || $VERBOSE) {
-- while (my ($key,$val) = each %config) {
-+ while (my ($key, $val) = each %config) {
- debug_print ("config: '$key' => '$val'");
- }
- }
-@@ -309,7 +309,7 @@ sub parse_cmdline () { # {{{
- );
-
- if ($DEBUG || $VERBOSE) {
-- while (my ($key,$val) = each %dict) {
-+ while (my ($key, $val) = each %dict) {
- debug_print ("cmdline: '$key' => '$val'");
- }
- }
-@@ -319,7 +319,7 @@ sub parse_cmdline () { # {{{
-
- #
- # xmpp_login: login to the xmpp (jabber) server
--# input: hostname,port,username,password,resource,tls,ssl,debug
-+# input: hostname, port, username, password, resource, tls, ssl, debug
- # output: an XMPP connection object
- #
- sub xmpp_login ($$$$$$$$$$$$) { # {{{
-@@ -374,7 +374,7 @@ sub xmpp_login ($$$$$$$$$$$$) { # {{{
- error_exit ("Could not connect to server '$host': ".($cnx->GetErrorCode()||$@)) unless @res;
- }
-
-- xmpp_check_result("Connect",\@res,$cnx);
-+ xmpp_check_result("Connect", \@res, $cnx);
-
- if ($comp) {
- my $sid = $cnx->{SESSION}->{id};
-@@ -385,7 +385,7 @@ sub xmpp_login ($$$$$$$$$$$$) { # {{{
- 'username' => $user,
- 'password' => $pw,
- 'resource' => $res);
-- xmpp_check_result('AuthSend',\@res,$cnx);
-+ xmpp_check_result('AuthSend', \@res, $cnx);
-
- return $cnx;
- } # }}}
-@@ -426,20 +426,20 @@ sub xmpp_send ($$$$) { # {{{
-
- #
- # xmpp_send_raw_xml: send a raw XML packet
--# input: connection,packet
-+# input: connection, packet
- #
- sub xmpp_send_raw_xml ($$) { # {{{
-
-- my ($cnx,$packet) = @_;
-+ my ($cnx, $packet) = @_;
-
- # for some reason, Send does not return anything
- $cnx->Send($packet);
-- xmpp_check_result('Send',0,$cnx);
-+ xmpp_check_result('Send', 0, $cnx);
- } # }}}
-
- #
- # xmpp_send_message: send a message to some xmpp user
--# input: connection,recipient,subject,msg
-+# input: connection, recipient, subject, msg
- #
- sub xmpp_send_message ($$$$$$) { # {{{
-
-@@ -452,16 +452,16 @@ sub xmpp_send_message ($$$$$$) { # {{{
- 'subject' => $subject,
- 'body' => $msg);
-
-- xmpp_check_result('MessageSend',0,$cnx);
-+ xmpp_check_result('MessageSend', 0, $cnx);
- } # }}}
-
- #
- # xmpp_send_chatroom_message: send a message to a chatroom
--# input: connection,resource,subject,recipient,message
-+# input: connection, resource, subject, recipient, message
- #
- sub xmpp_send_chatroom_message ($$$$$) { # {{{
-
-- my ($cnx,$resource,$subject,$rcpt,$msg) = @_;
-+ my ($cnx, $resource, $subject, $rcpt, $msg) = @_;
-
- # set the presence
- my $pres = new Net::XMPP::Presence;
-@@ -476,10 +476,10 @@ sub xmpp_send_chatroom_message ($$$$$) { # {{{
- type => 'groupchat');
-
- $res = $cnx->Send($groupmsg);
-- xmpp_check_result ('Send',$res,$cnx);
-+ xmpp_check_result ('Send', $res, $cnx);
-
- # leave the group
-- $pres->SetPresence (Type=>'unavailable',To=>$rcpt);
-+ $pres->SetPresence (Type=>'unavailable', To=>$rcpt);
- } # }}}
-
- #
-@@ -494,7 +494,7 @@ sub xmpp_logout($) { # {{{
-
- my $cnx = shift;
- $cnx->Disconnect();
-- xmpp_check_result ('Disconnect',0); # well, nothing to check, really
-+ xmpp_check_result ('Disconnect', 0); # well, nothing to check, really
- } # }}}
-
- #
-@@ -518,7 +518,7 @@ sub xmpp_check_result { # {{{
- }
- else {
- my $errmsg = $cnx->GetErrorCode() || '?';
-- error_exit ("Error '$txt': " . join (': ',@$res) . "[$errmsg]", $cnx);
-+ error_exit ("Error '$txt': " . join (': ', @$res) . "[$errmsg]", $cnx);
- }
- } # }}}
-
-@@ -547,7 +547,7 @@ sub debug_print { # {{{
- #
- sub error_exit { # {{{
-
-- my ($err,$cnx) = @_;
-+ my ($err, $cnx) = @_;
- print STDERR "$err\n";
- xmpp_logout ($cnx)
- if ($cnx);
-@@ -594,15 +594,15 @@ unlike L<mail(1)>. Messages can be sent both to individual recipients and chatro
-
- =over
-
--=item B<-f>,B<--file> I<file>
-+=item B<-f>, B<--file> I<file>
-
- Use I<file> configuration file instead of F<~/.sendxmpprc>
-
--=item B<-u>,B<--username> I<user>
-+=item B<-u>, B<--username> I<user>
-
- Use I<user> instead of the one in the configuration file
-
--=item B<-p>,B<--password> I<password>
-+=item B<-p>, B<--password> I<password>
-
- Use I<password> instead of the one in the configuration file
-
-@@ -610,35 +610,35 @@ Use I<password> instead of the one in the configuration file
-
- Instead of specifying username or password, attempt to use system level SSO (e.g. kerberos) if supported.
-
--=item B<-j>,B<--jserver> I<server>
-+=item B<-j>, B<--jserver> I<server>
-
- Use jabber I<server> instead of the one in the configuration file.
-
--=item B<-o>,B<--component> I<componentname>
-+=item B<-o>, B<--component> I<componentname>
-
- Use componentname in connect call. Seems needed for Google talk.
-
--=item B<-r>,B<--resource> I<res>
-+=item B<-r>, B<--resource> I<res>
-
- Use resource I<res> for the sender [default: 'sendxmpp']; when sending to a chatroom, this determines the 'alias'
-
--=item B<-t>,B<--tls>
-+=item B<-t>, B<--tls>
-
- Connect securely, using TLS
-
--=item B<-e>,B<--ssl>
-+=item B<-e>, B<--ssl>
-
- Connect securely, using SSL
-
--=item B<-n>,B<--no-tls-verify>
-+=item B<-n>, B<--no-tls-verify>
-
- Deactivate the verification of SSL certificates. Better way is to use parameter B<--tls-ca-path> with the needed path to CA certificates.
-
--=item B<-a>,B<--tls-ca-path>
-+=item B<-a>, B<--tls-ca-path>
-
- Path to your custom CA certificates, so you can verificate SSL certificates during connecting.
-
--=item B<-l>,B<--headline>
-+=item B<-l>, B<--headline>
-
- Backward compatibility option. You should use B<--message-type=headline> instead. Send a headline type message (not stored in offline messages)
-
-@@ -646,35 +646,35 @@ Backward compatibility option. You should use B<--message-type=headline> instead
-
- Set type of message. Supported types are: B<message chat headline>. Default message type is B<message>. Headline type message can be set also with B<--headline> option, see B<--headline>
-
--=item B<-c>,B<--chatroom>
-+=item B<-c>, B<--chatroom>
-
- Send the message to a chatroom
-
--=item B<-s>,B<--subject> I<subject>
-+=item B<-s>, B<--subject> I<subject>
-
- Set the subject for the message to I<subject> [default: '']; when sending to a chatroom, this will set the subject for the chatroom
-
--=item B<-m>,B<--message> I<message>
-+=item B<-m>, B<--message> I<message>
-
- Read the message from I<message> (a file) instead of stdin
-
--=item B<-i>,B<--interactive>
-+=item B<-i>, B<--interactive>
-
- Work in interactive mode, reading lines from stdin and sending the one-at-time
-
--=item B<-w>,B<--raw>
-+=item B<-w>, B<--raw>
-
- Send raw XML message to jabber server
-
--=item B<-v>,B<--verbose>
-+=item B<-v>, B<--verbose>
-
- Give verbose output about what is happening
-
--=item B<-h>,B<--help>,B<--usage>
-+=item B<-h>, B<--help>, B<--usage>
-
- Show a 'Usage' message
-
--=item B<-d>,B<--debug>
-+=item B<-d>, B<--debug>
-
- Show debugging info while running. B<WARNING>: This will include passwords etc. so be careful with the output! Specify multiple times to increase debug level.
-
diff --git a/network/sendxmpp/patches/03.patch b/network/sendxmpp/patches/03.patch
deleted file mode 100644
index aefabbf41d..0000000000
--- a/network/sendxmpp/patches/03.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 92af6b9bf4a583f6cec00a38d2fd3948654a64bc Mon Sep 17 00:00:00 2001
-From: Lubomir Host <lubomir.host@gmail.com>
-Date: Fri, 23 Jan 2015 00:22:02 +0100
-Subject: [PATCH] Enable SRV record lookup by default
-
----
- sendxmpp | 27 ++++++++++++++-------------
- 1 file changed, 14 insertions(+), 13 deletions(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index 74d95c0..0d7c4ff 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -344,26 +344,27 @@ sub xmpp_login ($$$$$$$$$$$$) { # {{{
- ssl_ca_path => $tls_ca_path,
- ssl => $ssl,
- connectiontype => 'tcpip',
-- componentname => $comp
-+ componentname => $comp,
-+ srv => 1, # enable SRV lookups
- };
-
- if ($sso) {
-- $user = join('@', scalar getpwuid($<), Net::Domain::hostdomain());
-- debug_print "using SSO user $user";
-+ $user = join('@', scalar getpwuid($<), Net::Domain::hostdomain());
-+ debug_print "using SSO user $user";
- }
-
- # use the xmpp domain as the host and enable SRV lookups
-- if (!$host) {
-- if ($user =~ /@(.*)/) {
-- $arghash->{hostname} = $host = $1;
-- $arghash->{srv} = 1;
-- debug_print "enabling SRV lookups";
--
-- } else {
-- error_exit "unable to determine a host to connect to (no cmdline, no config, no SRV possible)";
-- }
-+ if (!$host) {
-+ if ($user =~ /@(.*)/) {
-+ $arghash->{hostname} = $host = $1;
-+ $arghash->{srv} = 1;
-+ debug_print "enabling SRV lookups";
-
-- }
-+ } else {
-+ error_exit "unable to determine a host to connect to (no cmdline, no config, no SRV possible)";
-+ }
-+
-+ }
-
- delete $arghash->{port} unless $port;
- if ($arghash->{port}) {
diff --git a/network/sendxmpp/patches/04.patch b/network/sendxmpp/patches/04.patch
deleted file mode 100644
index b980247794..0000000000
--- a/network/sendxmpp/patches/04.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 17fa8783527fcbfb7624889cdf5de12375517924 Mon Sep 17 00:00:00 2001
-From: Andrey Shertsinger <andrey@shertsinger.ru>
-Date: Thu, 14 May 2015 14:18:46 +0600
-Subject: [PATCH] Fix for support virtual domain user names
-
----
- sendxmpp | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index 0d7c4ff..7045c16 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -355,8 +355,10 @@ sub xmpp_login ($$$$$$$$$$$$) { # {{{
-
- # use the xmpp domain as the host and enable SRV lookups
- if (!$host) {
-- if ($user =~ /@(.*)/) {
-- $arghash->{hostname} = $host = $1;
-+ if ($user =~ /([\.\w_#-]+)@(.*)/) {
-+ $arghash->{hostname} = $host = $2;
-+ $arghash->{componentname} = $2;
-+ $user = $1;
- $arghash->{srv} = 1;
- debug_print "enabling SRV lookups";
-
diff --git a/network/sendxmpp/patches/05.patch b/network/sendxmpp/patches/05.patch
deleted file mode 100644
index 363a56017f..0000000000
--- a/network/sendxmpp/patches/05.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From a2f9265d49dc000d5becf65da0ec42a92eac19cb Mon Sep 17 00:00:00 2001
-From: Martin Stefany <martinstefany@users.noreply.github.com>
-Date: Sun, 7 Jun 2015 15:39:12 +0200
-Subject: [PATCH] support '-' (dash) in config file
-
-support options like 'no-tls-verify', 'tls-ca-path' in config file
----
- sendxmpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index 0d7c4ff..8b2bebe 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -155,7 +155,7 @@ sub read_config_file ($) { # {{{
-
- #s/\#.*$//; # ignore comments in lines
-
-- if (/^([a-z]+):\s*(.*)$/) {
-+ if (/^([a-z-]+):\s*(.*)$/) {
- $config{$1} = $2;
- }
- # Hugo van der Kooij <hvdkooij AT vanderkooij.org> has account with '#' as username
diff --git a/network/sendxmpp/patches/06.patch b/network/sendxmpp/patches/06.patch
deleted file mode 100644
index 70325685d3..0000000000
--- a/network/sendxmpp/patches/06.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 8f8a15614f0dfddc349c101ce4f5d4edb5133815 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <james.le-cuirot@yakara.com>
-Date: Tue, 17 May 2016 12:05:29 +0100
-Subject: [PATCH] Add --http option for connecting over HTTP
-
-This allows the use of HTTP proxies.
----
- sendxmpp | 19 +++++++++++++------
- 1 file changed, 13 insertions(+), 6 deletions(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index fafb0a5..8a9758e 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -28,7 +28,7 @@ use open ':utf8';
- use open ':std';
-
- # subroutines decls
--sub xmpp_login($$$$$$$$$$$$);
-+sub xmpp_login($$$$$$$$$$$$$);
- sub xmpp_send ($$$$);
- sub xmpp_send_raw_xml($$);
- sub xmpp_send_message($$$$$$);
-@@ -82,6 +82,7 @@ sub main () { # {{{
- $$cmdline{'no-tls-verify'} || $$config{'no-tls-verify'},
- $$cmdline{'tls-ca-path'} || $$config{'tls-ca-path'} || '',
- $$cmdline{'ssl'},
-+ $$cmdline{'http'} || $$config{'http'} || 0,
- $$cmdline{'debug'},
- $$cmdline{'sso'}
- ) or error_exit("cannot login: $!");
-@@ -211,7 +212,7 @@ sub parse_cmdline () { # {{{
-
- my ($subject, $file, $resource, $jserver, $port, $username, $password, $sso, $component,
- $message, $chatroom, $headline, $debug, $tls, $ssl,
-- $no_tls_verify, $tls_ca_path,
-+ $no_tls_verify, $tls_ca_path, $http,
- $interactive, $help, $raw, $verbose
- );
- $debug = 0;
-@@ -232,6 +233,7 @@ sub parse_cmdline () { # {{{
- 'no-tls-verify|n' => \$no_tls_verify,
- 'tls-ca-path|a=s' => \$tls_ca_path,
- 'ssl|e' => \$ssl,
-+ 'http' => \$http,
- 'interactive|i' => \$interactive,
- 'help|usage|h' => \$help,
- 'debug|d:i' => sub { $debug = $_[1] ? $_[1] : $debug + 1 },
-@@ -301,6 +303,7 @@ sub parse_cmdline () { # {{{
- 'no-tls-verify' => ($no_tls_verify or 0),
- 'tls-ca-path' => ($tls_ca_path or ''),
- 'ssl' => ($ssl or 0),
-+ 'http' => ($http or 0),
- 'debug' => ($debug or 0),
- 'verbose' => ($verbose or 0),
- 'raw' => ($raw or 0),
-@@ -319,12 +322,12 @@ sub parse_cmdline () { # {{{
-
- #
- # xmpp_login: login to the xmpp (jabber) server
--# input: hostname, port, username, password, resource, tls, ssl, debug
-+# input: hostname, port, username, password, resource, tls, ssl, http, debug
- # output: an XMPP connection object
- #
--sub xmpp_login ($$$$$$$$$$$$) { # {{{
-+sub xmpp_login ($$$$$$$$$$$$$) { # {{{
-
-- my ($host, $port, $user, $pw, $comp, $res, $tls, $no_tls_verify, $tls_ca_path, $ssl, $debug, $sso) = @_;
-+ my ($host, $port, $user, $pw, $comp, $res, $tls, $no_tls_verify, $tls_ca_path, $ssl, $http, $debug, $sso) = @_;
- my $cnx = new Net::XMPP::Client(debuglevel=>$debug);
- error_exit "could not create XMPP client object: $!"
- unless ($cnx);
-@@ -343,7 +346,7 @@ sub xmpp_login ($$$$$$$$$$$$) { # {{{
- ssl_verify => $ssl_verify,
- ssl_ca_path => $tls_ca_path,
- ssl => $ssl,
-- connectiontype => 'tcpip',
-+ connectiontype => $http ? 'http' : 'tcpip',
- componentname => $comp,
- srv => 1, # enable SRV lookups
- };
-@@ -641,6 +644,10 @@ Deactivate the verification of SSL certificates. Better way is to use parameter
-
- Path to your custom CA certificates, so you can verificate SSL certificates during connecting.
-
-+=item B<--http>
-+
-+Connect over HTTP, allowing the use of a proxy.
-+
- =item B<-l>, B<--headline>
-
- Backward compatibility option. You should use B<--message-type=headline> instead. Send a headline type message (not stored in offline messages)
diff --git a/network/sendxmpp/patches/07.patch b/network/sendxmpp/patches/07.patch
deleted file mode 100644
index 600e8a89fc..0000000000
--- a/network/sendxmpp/patches/07.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 9186b8c49e54cf59ace4e5ddf52aa10b1a386fa5 Mon Sep 17 00:00:00 2001
-From: Lubomir Host <lubomir.host@gmail.com>
-Date: Sun, 13 Nov 2016 18:25:44 +0100
-Subject: [PATCH] Remove 'I<something>' markers from configuration example.
-
----
- sendxmpp | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/sendxmpp b/sendxmpp
-index 8a9758e..4d06ab9 100755
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -695,19 +695,19 @@ Show debugging info while running. B<WARNING>: This will include passwords etc.
- You may define a 'F<~/.sendxmpprc>' file with the necessary data for your
- xmpp-account. Since version 1.24 the following format is supported:
-
-- username: I<your_username>
-- jserver: I<jabber_server>
-- port: I<jabber_port>
-- password: I<your_jabber_password>
-- component: I<optional_component_name>
-+ username: <your_username>
-+ jserver: <jabber_server>
-+ port: <jabber_port>
-+ password: <your_jabber_password>
-+ component: <optional_component_name>
-
-
- Example for Google Talk servers:
-
-- username: I<lubomir.host>
-- jserver: I<talk.google.com>
-- password: I<my-secure-password>
-- component: I<gmail.com>
-+ username: <lubomir.host>
-+ jserver: <talk.google.com>
-+ password: <my-secure-password>
-+ component: <gmail.com>
-
- With version 1.23 and older only one-line format is supported:
-
diff --git a/network/sendxmpp/patches/08.patch b/network/sendxmpp/patches/08.patch
deleted file mode 100644
index ca78d3f0d4..0000000000
--- a/network/sendxmpp/patches/08.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-See https://bugs.debian.org/854210
---- a/sendxmpp
-+++ b/sendxmpp
-@@ -299,7 +299,7 @@
- 'interactive' => ($interactive or 0),
- 'tls' => ($tls or 0),
- 'no-tls-verify' => ($no_tls_verify or 0),
-- 'tls-ca-path' => ($tls_ca_path or ''),
-+ 'tls-ca-path' => ($tls_ca_path or '/etc/ssl/certs'),
- 'ssl' => ($ssl or 0),
- 'debug' => ($debug or 0),
- 'verbose' => ($verbose or 0),
diff --git a/network/sendxmpp/sendxmpp.info b/network/sendxmpp/sendxmpp.info
deleted file mode 100644
index 6d6ec78d5d..0000000000
--- a/network/sendxmpp/sendxmpp.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sendxmpp"
-VERSION="1.24"
-HOMEPAGE="https://sendxmpp.hostname.sk"
-DOWNLOAD="https://github.com/lhost/sendxmpp/archive/1.24/sendxmpp-1.24.tar.gz"
-MD5SUM="7145fb0d05f4c774b0ecec78bc787117"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="perl-Net-XMPP perl-net-dns"
-MAINTAINER="Alexander Verbovetsky"
-EMAIL="alik@ejik.org"
diff --git a/network/session/README b/network/session/README
new file mode 100644
index 0000000000..cb5d34b24f
--- /dev/null
+++ b/network/session/README
@@ -0,0 +1,19 @@
+Session is an end-to-end encrypted messenger that minimises sensitive
+metadata, designed and built for people who want absolute privacy
+and freedom from any form of surveillance.
+
+* No Phone Numbers
+
+* No Data Breaches
+
+* No Footprints
+
+* Open Source
+
+* Censorship Resistant
+
+Session has also undergone a security audit by Quarkslab
+
+------------------------------------------------------------------------
+This SlackBuild downloads and installs the official AppImage under
+'/opt'.
diff --git a/network/session/doinst.sh b/network/session/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/session/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/session/session-desktop.desktop b/network/session/session-desktop.desktop
new file mode 100644
index 0000000000..3beaeef9f0
--- /dev/null
+++ b/network/session/session-desktop.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Session
+Exec=session-desktop
+Terminal=false
+Type=Application
+Icon=session-desktop
+StartupWMClass=Session
+X-AppImage-Version=1.10.3
+Comment=Private messaging from your desktop
+Categories=Network;
diff --git a/network/session/session.SlackBuild b/network/session/session.SlackBuild
new file mode 100644
index 0000000000..bdca396271
--- /dev/null
+++ b/network/session/session.SlackBuild
@@ -0,0 +1,92 @@
+#!/bin/bash
+# Slackware build script for Session Messenger
+
+# Copyright 2023 Slackjeff <slackjeff@riseup.net>
+# 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.
+
+#########################################################################
+# ChangeLog
+#
+# IMPORTANT: update this if you change this script!)
+#########################################################################
+# 2.0 04-JULY-2023 UPGRADE (Version: 1.10.8)
+# 2.1 01-AGO-2023 UPGRADE (Version: 1.11.0)
+
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=session
+VERSION=${VERSION:-1.11.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=${ARCH:-$(uname -m)}
+
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH is not supported for $PRGNAM-$VERSION."
+ exit 1
+fi
+
+if [ -n "${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}
+APPIMGNAM=$PRGNAM-desktop-linux-$ARCH-$VERSION.AppImage
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+mkdir -p $PKG/install
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/share/$PRGNAM-$VERSION
+mkdir -p $PKG/usr/share/applications
+mkdir -p $PKG/usr/share/pixmaps
+mkdir -p $PKG/usr/bin
+mkdir -p $PKG/opt
+
+cd $PKG/opt
+install -m 0755 $CWD/$APPIMGNAM .
+./$APPIMGNAM --appimage-extract
+mv squashfs-root $PRGNAM-$VERSION
+rm -f $APPIMGNAM
+
+chown -R root:root .
+find . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
+
+ln -s "/opt/$PRGNAM-$VERSION/session-desktop-bin" "$PKG/usr/bin/${PRGNAM}-desktop"
+ln -s "/opt/$PRGNAM-$VERSION/session-desktop.png" "$PKG/usr/share/pixmaps/$PRGNAM-desktop.png"
+
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+cat $CWD/$PRGNAM-desktop.desktop > $PKG/usr/share/applications/$PRGNAM-desktop.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
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/session/session.info b/network/session/session.info
new file mode 100644
index 0000000000..d36a082e8e
--- /dev/null
+++ b/network/session/session.info
@@ -0,0 +1,10 @@
+PRGNAM="session"
+VERSION="1.11.0"
+HOMEPAGE="https://getsession.org/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/oxen-io/session-desktop/releases/download/v1.11.0/session-desktop-linux-x86_64-1.11.0.AppImage"
+MD5SUM_x86_64="423f3fb9d0f60617d9983d14749f9c61"
+REQUIRES=""
+MAINTAINER="slackjeff"
+EMAIL="slackjeff@riseup.net"
diff --git a/network/session/slack-desc b/network/session/slack-desc
new file mode 100644
index 0000000000..d96bfe3186
--- /dev/null
+++ b/network/session/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------------------------------------------------------|
+session: session (Send Messages,Not Metadata.)
+session:
+session: Session is an end-to-end encrypted messenger that minimises sensitive
+session: metadata, designed and built for people who want absolute privacy and
+session: freedom from any form of surveillance.
+session:
+session:
+session:
+session:
+session: https://getsession.org/
+session:
diff --git a/network/sfeed/README b/network/sfeed/README
index 6e930e0dc0..b1d49f1024 100644
--- a/network/sfeed/README
+++ b/network/sfeed/README
@@ -1,4 +1,4 @@
-SFeed is a simple RSS and Atom parser.
+Sfeed is a simple RSS and Atom parser.
README.SLACKWARE contains starter tips.
/usr/doc/sfeed-*/README contains detailed post-install
diff --git a/network/sfeed/README.SLACKWARE b/network/sfeed/README.SLACKWARE
index a8a501e9b4..8b2309ed20 100644
--- a/network/sfeed/README.SLACKWARE
+++ b/network/sfeed/README.SLACKWARE
@@ -1,6 +1,4 @@
The following instructions are taken from /usr/doc/sfeed-*/README
-Note that the slackbuild removes /usr/share/doc/sfeed; thus, please
-copy necessary files from /usr/doc/sfeed-*
- Initialize sfeed folders:
mkdir -p "$HOME/.sfeed/feeds"
diff --git a/network/sfeed/sfeed.SlackBuild b/network/sfeed/sfeed.SlackBuild
index 2db9400b53..2dac8c1bd4 100644
--- a/network/sfeed/sfeed.SlackBuild
+++ b/network/sfeed/sfeed.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for sfeed
-# Copyright 2019-2022 Isaac Yu <isaacyu1@isaacyu1.com>
+# Copyright 2019-2023 Isaac Yu <isaacyu@protonmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sfeed
-VERSION=${VERSION:-1.6}
+VERSION=${VERSION:-2.0}
BUILD=${BUILD:-1}
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
diff --git a/network/sfeed/sfeed.info b/network/sfeed/sfeed.info
index 8007c45f89..37a9bc739e 100644
--- a/network/sfeed/sfeed.info
+++ b/network/sfeed/sfeed.info
@@ -1,10 +1,10 @@
PRGNAM="sfeed"
-VERSION="1.6"
+VERSION="2.0"
HOMEPAGE="https://codemadness.org/sfeed-simple-feed-parser.html"
-DOWNLOAD="https://codemadness.org/releases/sfeed/sfeed-1.6.tar.gz"
-MD5SUM="b6374289fb19e8483e05e86386aee9af"
+DOWNLOAD="https://codemadness.org/releases/sfeed/sfeed-2.0.tar.gz"
+MD5SUM="02f0af9a09782d3b5a66c34d3e7b0a7b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Isaac Yu"
-EMAIL="isaacyu1@isaacyu1.com"
+MAINTAINER="Hiltjo Posthuma"
+EMAIL="hiltjo@codemadness.org"
diff --git a/network/sftp-cloudfs/sftp-cloudfs.info b/network/sftp-cloudfs/sftp-cloudfs.info
index 1c0c88e884..5f4e6e4735 100644
--- a/network/sftp-cloudfs/sftp-cloudfs.info
+++ b/network/sftp-cloudfs/sftp-cloudfs.info
@@ -1,7 +1,7 @@
PRGNAM="sftp-cloudfs"
VERSION="0.19"
HOMEPAGE="https://github.com/Memset/sftpcloudfs/"
-DOWNLOAD="https://github.com/Memset/sftpcloudfs/archive/0.19.tar.gz"
+DOWNLOAD="https://github.com/Memset/sftpcloudfs/archive/0.19/sftpcloudfs-0.19.tar.gz"
MD5SUM="e772f8b114725720f428b4e7e7f19b2a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/shibboleth-sp/shibboleth-sp.SlackBuild b/network/shibboleth-sp/shibboleth-sp.SlackBuild
index 82f8cc86bc..655ce51e01 100644
--- a/network/shibboleth-sp/shibboleth-sp.SlackBuild
+++ b/network/shibboleth-sp/shibboleth-sp.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Shibboleth Service Provider.
-# Copyright 2013-2018 Thibaut Notteboom, Paris, FRANCE
+# Copyright 2013-2023 Thibaut Notteboom, Paris, FRANCE
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=shibboleth-sp
-VERSION=${VERSION:-3.0.4}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-3.4.1}
+BUILD=${BUILD:-1}
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
@@ -59,6 +56,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -117,13 +117,13 @@ find $PKG/etc/shibboleth/ -name *.pem | while read cfg ; do mv $cfg $cfg.new ; d
chown shibd:shibd $PKG/etc/shibboleth/sp-*.pem.new
+rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/{,shibboleth/}*.la
+
mv $PKG/usr/share/doc $PKG/usr
mv $PKG/usr/doc/shibboleth-$VERSION $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
-rm -f $PKG/usr/lib*/*.la
-
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/shibboleth-sp/shibboleth-sp.info b/network/shibboleth-sp/shibboleth-sp.info
index ab57441716..90147f8d59 100644
--- a/network/shibboleth-sp/shibboleth-sp.info
+++ b/network/shibboleth-sp/shibboleth-sp.info
@@ -1,8 +1,8 @@
PRGNAM="shibboleth-sp"
-VERSION="3.0.4"
+VERSION="3.4.1"
HOMEPAGE="http://shibboleth.net/"
-DOWNLOAD="http://shibboleth.net/downloads/service-provider/3.0.4/shibboleth-sp-3.0.4.tar.gz"
-MD5SUM="dd7fbff4de495197ffeb834df6cebf05"
+DOWNLOAD="https://shibboleth.net/downloads/service-provider/3.4.1/shibboleth-sp-3.4.1.tar.gz"
+MD5SUM="e6bd05784653057b18340de8c4517ce4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="opensaml"
diff --git a/network/sic/sic.SlackBuild b/network/sic/sic.SlackBuild
index c058f1f2f5..cc4b1bf885 100644
--- a/network/sic/sic.SlackBuild
+++ b/network/sic/sic.SlackBuild
@@ -22,6 +22,8 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230103 bkw: update for v1.3, strip binary.
+
# 20210924 bkw:
# - update for latest git.
# - add support for SLASH=yes.
@@ -42,7 +44,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sic
-VERSION=${VERSION:-1.2+20210506_058547e}
+VERSION=${VERSION:-1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -84,7 +86,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z
+tar xvf $CWD/$PRGNAM-$VERSION.tar.[xg]z
cd $PRGNAM-$VERSION
chown -R root:root .
chmod 644 *
@@ -125,7 +127,7 @@ if [ "${SLASH:-no}" = "yes" ]; then
sed -i '/^\.BI :/s,:,/,' $PRGNAM.1
fi
-CFLAGS="$SLKCFLAGS -Wl,-s" \
+CFLAGS="$SLKCFLAGS" \
DESTDIR=$PKG \
make \
VERSION="$VERSION" \
@@ -134,6 +136,7 @@ make \
MANPREFIX=/usr/man \
install
+strip $PKG/usr/bin/$PRGNAM
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/sic/sic.info b/network/sic/sic.info
index 6d2388abe8..d48f3c4b93 100644
--- a/network/sic/sic.info
+++ b/network/sic/sic.info
@@ -1,8 +1,8 @@
PRGNAM="sic"
-VERSION="1.2+20210506_058547e"
+VERSION="1.3"
HOMEPAGE="http://tools.suckless.org/sic"
-DOWNLOAD="https://slackware.uk/~urchlay/src/sic-1.2+20210506_058547e.tar.xz"
-MD5SUM="e28bbec757711fd3a8883200e467b088"
+DOWNLOAD="http://dl.suckless.org/tools/sic-1.3.tar.gz"
+MD5SUM="be0a6fd28738d3c626d70f1b1f33adb5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/sickrage/README b/network/sickrage/README
deleted file mode 100644
index 57f7f28ce0..0000000000
--- a/network/sickrage/README
+++ /dev/null
@@ -1,11 +0,0 @@
-sickrage (Automatic Video Library Manager for TV Shows)
-
-SickRage is an automatic Video Library Manager for TV Shows. It
-watches for new episodes of your favorite shows, and when they
-are posted it does its magic: automatic torrent/nzb searching,
-downloading, and processing at the qualities you want.
-
-NOTE: Requires sickrage user and group.
-(uid/gid assigned by SBo -- see https://slackbuilds.org/uid_gid.txt)
- groupadd -g 324 sickrage
- useradd -u 324 -g sickrage -d /var/lib/sickrage -s /bin/false sickrage
diff --git a/network/sickrage/config.ini b/network/sickrage/config.ini
deleted file mode 100644
index acd3227551..0000000000
--- a/network/sickrage/config.ini
+++ /dev/null
@@ -1,3 +0,0 @@
-[General]
-log_dir = /var/log/sickrage
-version_notify = 0
diff --git a/network/sickrage/rc.sickrage b/network/sickrage/rc.sickrage
deleted file mode 100644
index a5aa2e5fe2..0000000000
--- a/network/sickrage/rc.sickrage
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/bin/sh
-# Start/stop/restart sickrage.
-
-# rc.sickrage created by Jeremy Brent Hansen for Slackware
-
-# Set program name in case you want to run sick{beard|rage|gear|etc}
-PROG=${PROG:-sickrage}
-
-# Source SickRage configuration
-if [ -f /etc/${PROG}.conf ]; then
- . /etc/${PROG}.conf
-fi
-
-# Ensure all required variables are set in conf file
-# Edit conf file in /etc/sickrage.conf for any changes
-for var in USERNAME HOMEDIR DATADIR PIDFILE PORT; do
- if [ -z "${!var}" ]; then
- echo "/etc/${PROG}.conf is missing some or all required variables ($var)."
- echo "Please check the file and try again."
- exit 1
- fi
-done
-
-# Check if the pid file exists
-check() {
- STATUS=stopped
- if [ -e $PIDFILE ]; then
- if ps -p $(cat $PIDFILE); then
- STATUS=running
- else
- STATUS=stopped
- fi
- fi
-}
-
-status() {
- if [ $STATUS == "running" ]; then
- echo "${PROG} currently running or not shut down properly."
- echo "PIDfile: $PIDFILE already exists."
- elif [ $STATUS == "stopped" ]; then
- echo "${PROG} not started."
- echo "PIDfile: $PIDFILE does not exist."
- else
- echo "Status unknown."
- fi
-}
-
-start() {
- if [ $STATUS == "running" ]; then
- echo "$PROG already running or not shut down properly."
- else
- echo -n "Starting ${PROG}: "
- su $USERNAME -s /bin/sh -c "python ${HOMEDIR}/SickBeard.py --daemon --pidfile=${PIDFILE} --datadir=${DATADIR} --port=${PORT} &> /dev/null"
- if (( $? == 0 )); then
- echo "Startup Successful"
- else
- echo "Startup Failed. Please try running the following to see the errors."
- echo "su $USERNAME -s /bin/sh -c \"python ${HOMEDIR}/SickBeard.py --daemon --pidfile=${PIDFILE} --datadir=${DATADIR} --port=${PORT}\""
- fi
- fi
-}
-
-stop() {
- if [ $STATUS == "stopped" ]; then
- echo "${PROG} doesn't seem to be running. Please try running"
- echo "$0 start"
- else
- if [ "$EUID" -ne 0 ];then
- echo "Please run as root"
- exit 1
- fi
- PID=$(cat $PIDFILE)
- echo -n $"Shutting down ${PROG}: "
- curl -f http://localhost:${PORT}/home/shutdown/?pid=${PID} &> /dev/null
- if [ $? -gt 0 ]; then
- echo "Normal Shutdown Failed - Attempting to kill the process."
- echo $?
- sleep 7
- kill -9 $PID
- else
- echo "Shutdown Successful"
- fi
- fi
-}
-
-case "$1" in
- start)
- check
- start
- ;;
- stop)
- check
- stop
- ;;
- restart)
- check
- stop
- start
- ;;
- status)
- check
- status
- ;;
- *)
- echo "Usage: $0 {start|stop|restart|status}"
- exit 1
-esac
diff --git a/network/sickrage/sickrage.SlackBuild b/network/sickrage/sickrage.SlackBuild
deleted file mode 100644
index 33c4743836..0000000000
--- a/network/sickrage/sickrage.SlackBuild
+++ /dev/null
@@ -1,107 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for sickrage
-# Copyright 2016-2018 Jeremy Hansen <jebrhansen+SBo -at- 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=sickrage
-SRCNAM=SiCKRAGE
-VERSION=${VERSION:-10.0.50}
-SRCVER=$(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
-
-SICKUSER=${SICKUSER:-sickrage}
-SICKGROUP=${SICKGROUP:-sickrage}
-
-# The user and group accounts need to be created manually.
-# For slackbuilds.org, assigned sickrage uid/gid are 324/324.
-# See http://slackbuilds.org/uid_gid.txt
-if ! grep ^$SICKGROUP: /etc/group 2>&1 > /dev/null; then
- echo " You must have a \"$SICKGROUP\" group to run this script."
- echo " # groupadd -g 324 $SICKGROUP"
- exit 1
-elif ! grep ^$SICKUSER: /etc/passwd 2>&1 > /dev/null; then
- echo " You must have a \"$SICKUSER\" user to run this script."
- echo " # useradd -u 324 -g $SICKGROUP -d /var/lib/sickrage -s /bin/false $SICKUSER"
- exit 1
-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}
-
-set -e
-
-rm -rf $PKG
-mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $SRCNAM-$SRCVER
-tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
-cd $SRCNAM-$SRCVER
-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 {} \;
-
-# "Install" sickrage
-echo "Installing sickrage"
-mkdir -p $PKG/usr/share/sickrage
-cp -r ./* $PKG/usr/share/sickrage
-
-# Copy documentation to correct folder
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING.txt readme.md $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mkdir -p $PKG/etc/rc.d/
-install -m 0644 $CWD/rc.sickrage $PKG/etc/rc.d/rc.sickrage.new
-install -m 0644 $CWD/sickrage.conf $PKG/etc/sickrage.conf.new
-install -dm 0755 --owner=$SICKUSER $PKG/var/lib/sickrage/
-install -m 0644 --owner=$SICKUSER $CWD/config.ini $PKG/var/lib/sickrage/config.ini.new
-install -dm 0755 --owner=$SICKUSER $PKG/var/log/sickrage/
-
-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/sickrage/sickrage.conf b/network/sickrage/sickrage.conf
deleted file mode 100644
index 1b99f0b756..0000000000
--- a/network/sickrage/sickrage.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-USERNAME=sickrage
-HOMEDIR=/usr/share/sickrage
-DATADIR=/var/lib/sickrage
-PIDFILE=${DATADIR}/sickrage.pid
-PORT=8081
-LOGDIR=/var/log/sickrage \ No newline at end of file
diff --git a/network/sickrage/sickrage.info b/network/sickrage/sickrage.info
deleted file mode 100644
index 6977514859..0000000000
--- a/network/sickrage/sickrage.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sickrage"
-VERSION="10.0.50"
-HOMEPAGE="https://sickrage.github.io/"
-DOWNLOAD="https://github.com/SiCKRAGE/SiCKRAGE/archive/10.0.50/SiCKRAGE-10.0.50.tar.gz"
-MD5SUM="c85a3072cae5d8825c12c2a9664376e8"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES=""
-MAINTAINER="Kevin Matthew"
-EMAIL="kevin@kevinmatthew.com"
diff --git a/network/signal-desktop/signal-desktop.SlackBuild b/network/signal-desktop/signal-desktop.SlackBuild
index ddf60f7cec..935ba82bf3 100644
--- a/network/signal-desktop/signal-desktop.SlackBuild
+++ b/network/signal-desktop/signal-desktop.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for signal-desktop
# Copyright 2018 David O'Shaughnessy
-# Copyright 2022 Gregory J. L. Tourte <artourter@gmail.com>
+# Copyright 2022-2024 Gregory J. L. Tourte <artourter@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,19 +26,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=signal-desktop
-VERSION=${VERSION:-5.61.1}
+VERSION=${VERSION:-7.4.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
@@ -51,6 +43,14 @@ 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
+fi
+
# Upstream only has binary support for x86_64 at present.
if [ "$ARCH" = "x86_64" ]; then
DEBARCH="amd64"
@@ -67,10 +67,8 @@ cd $PKG
ar p $CWD/${PRGNAM}_${VERSION}_$DEBARCH.deb data.tar.xz | tar xJv
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 {} \;
+ -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
diff --git a/network/signal-desktop/signal-desktop.info b/network/signal-desktop/signal-desktop.info
index c1fd15360b..c828a99176 100644
--- a/network/signal-desktop/signal-desktop.info
+++ b/network/signal-desktop/signal-desktop.info
@@ -1,10 +1,10 @@
PRGNAM="signal-desktop"
-VERSION="5.61.1"
+VERSION="7.4.0"
HOMEPAGE="https://signal.org/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://updates.signal.org/desktop/apt/pool/main/s/signal-desktop/signal-desktop_5.61.1_amd64.deb"
-MD5SUM_x86_64="ed56a3b9e3dabacb9d0d47dd905ad849"
+DOWNLOAD_x86_64="https://updates.signal.org/desktop/apt/pool/s/signal-desktop/signal-desktop_7.4.0_amd64.deb"
+MD5SUM_x86_64="6bf4be996883f361d25bdff81ffc3120"
REQUIRES=""
MAINTAINER="ArTourter"
EMAIL="artourter@gmail.com"
diff --git a/network/sipp/sipp.SlackBuild b/network/sipp/sipp.SlackBuild
index 9836f90954..5fc0c32175 100644
--- a/network/sipp/sipp.SlackBuild
+++ b/network/sipp/sipp.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sipp
-VERSION=${VERSION:-3.6.0}
+VERSION=${VERSION:-3.7.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,23 +79,21 @@ 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 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --build=$ARCH-slackware-linux \
- --with-gsl \
- --with-openssl \
- --with-pcap \
- --with-rtpstream
-
-make
-make install DESTDIR=$PKG
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DUSE_SSL=1 \
+ -DUSE_PCAP=1 \
+ -DUSE_GSL=1 ..
+ make
+ make install/strip DESTDIR=$PKG
+cd ..
+mkdir -p $PKG/usr/man/man1
+cp -a sipp.1 $PKG/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
diff --git a/network/sipp/sipp.info b/network/sipp/sipp.info
index 519aa0a9de..d67a67bcae 100644
--- a/network/sipp/sipp.info
+++ b/network/sipp/sipp.info
@@ -1,8 +1,8 @@
PRGNAM="sipp"
-VERSION="3.6.0"
+VERSION="3.7.1"
HOMEPAGE="http://sipp.sourceforge.net"
-DOWNLOAD="https://github.com/SIPp/sipp/releases/download/v3.6.0/sipp-3.6.0.tar.gz"
-MD5SUM="1fd27333d179d786d3f6a67ee451fae9"
+DOWNLOAD="https://github.com/SIPp/sipp/releases/download/v3.7.1/sipp-3.7.1.tar.gz"
+MD5SUM="518fec9bc71602a0e858f07b1192df1c"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/skypeforlinux/skypeforlinux.SlackBuild b/network/skypeforlinux/skypeforlinux.SlackBuild
index 8b5717ea0b..8172e0fb75 100644
--- a/network/skypeforlinux/skypeforlinux.SlackBuild
+++ b/network/skypeforlinux/skypeforlinux.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for skypeforlinux
-# Copyright 2017, 2022 Mario Preksavec, Zagreb, Croatia
+# Copyright 2017, 2024 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=skypeforlinux
-VERSION=${VERSION:-8.88.0.401}
+VERSION=${VERSION:-8.109.0.209}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/skypeforlinux/skypeforlinux.info b/network/skypeforlinux/skypeforlinux.info
index 2df6214aac..e7fc326e6f 100644
--- a/network/skypeforlinux/skypeforlinux.info
+++ b/network/skypeforlinux/skypeforlinux.info
@@ -1,10 +1,10 @@
PRGNAM="skypeforlinux"
-VERSION="8.88.0.401"
+VERSION="8.109.0.209"
HOMEPAGE="https://www.skype.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_8.88.0.401_amd64.deb"
-MD5SUM_x86_64="34aaeeaf6e1e18f49647a91d9ee7bea1"
+DOWNLOAD_x86_64="https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_8.109.0.209_amd64.deb"
+MD5SUM_x86_64="0b44e0494b00b337e7e31f72c3d826c1"
REQUIRES="%README%"
MAINTAINER="Mario Preksavec"
EMAIL="mario at slackware dot hr"
diff --git a/network/slack/slack.SlackBuild b/network/slack/slack.SlackBuild
index 0e0c4a5e96..90c0e97523 100644
--- a/network/slack/slack.SlackBuild
+++ b/network/slack/slack.SlackBuild
@@ -5,7 +5,7 @@
# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
# Harald Achitz | Stockholm/Sweden | harald.achitz@gmail.com
# Pedro R.M. Júnior | Campinas, SP, Brazil | pedrormjunior@gmail.com
-
+# Ruari Oedegaard | Oslo, Norway | sbo@ruari.com
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -28,29 +28,23 @@
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.17.0}
+VERSION=${VERSION:-4.37.101}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
+SNAPREVISION=${SNAPREVISION:-142}
+SNAPPKG=JUJH91Ved74jd4ZgJCpzMBtYbPOzTlsD_$SNAPREVISION.snap
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i586 ;;
- arm*) export ARCH=arm ;;
- *) export ARCH=$( uname -m ) ;;
+ x86_64) ARCH=x86_64 ;;
+ *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
esac
fi
-DEBARCH=${DEBARCH:-$(uname -m)}
-
-case "$DEBARCH" in
- i?86) DEBARCH="i386" ;;
- x86_64) DEBARCH="amd64" ;;
- *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
-esac
-
-
# 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.
@@ -63,20 +57,6 @@ 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
@@ -85,7 +65,11 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-ar p $CWD/${PRGNAM}-desktop-${VERSION}-${DEBARCH}.deb data.tar.xz | tar xJv
+unsquashfs -q -f -d . $CWD/$SNAPPKG usr/lib/slack usr/share/pixmaps/slack.png meta/gui/slack.desktop
+mkdir -p usr/bin usr/share/applications
+ln -s ../../usr/lib/slack/slack usr/bin/slack
+sed 's,\${SNAP},,' meta/gui/slack.desktop > usr/share/applications/slack.desktop
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -93,12 +77,7 @@ 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 {} \;
-mv * $PKG/
-
-## we do not need a debian cron job :^)
-rm -rf $PKG/etc/
-## nor lintian stuff and another copy of LICENSE
-rm -rf $PKG/usr/share/{doc,lintian}
+mv usr $PKG/
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
cp -a $PKG/usr/lib/slack/LICENSE $PKG/usr/doc/$PRGNAM-$VERSION/
diff --git a/network/slack/slack.info b/network/slack/slack.info
index 8ff3bb478d..5fa332568b 100644
--- a/network/slack/slack.info
+++ b/network/slack/slack.info
@@ -1,10 +1,10 @@
PRGNAM="slack"
-VERSION="4.17.0"
+VERSION="4.37.101"
HOMEPAGE="https://slack.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://downloads.slack-edge.com/linux_releases/slack-desktop-4.17.0-amd64.deb"
-MD5SUM_x86_64="e754a18b1cae74e5b8fb0fd73344f00c"
+DOWNLOAD_x86_64="https://api.snapcraft.io/api/v1/snaps/download/JUJH91Ved74jd4ZgJCpzMBtYbPOzTlsD_142.snap"
+MD5SUM_x86_64="14567aa40b8d3db83cae4e2af4e89a96"
REQUIRES=""
-MAINTAINER="Pedro R.M. Júnior"
-EMAIL="pedrormjunior@gmail.com"
+MAINTAINER="Ruari Oedegaard"
+EMAIL="sbo@ruari.com"
diff --git a/network/slirp4netns/slirp4netns.SlackBuild b/network/slirp4netns/slirp4netns.SlackBuild
index e6c3e13b46..3ebb9aa588 100644
--- a/network/slirp4netns/slirp4netns.SlackBuild
+++ b/network/slirp4netns/slirp4netns.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=slirp4netns
-VERSION=${VERSION:-0.4.1}
+VERSION=${VERSION:-1.2.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/slirp4netns/slirp4netns.info b/network/slirp4netns/slirp4netns.info
index c9fd17abca..93a68914d9 100644
--- a/network/slirp4netns/slirp4netns.info
+++ b/network/slirp4netns/slirp4netns.info
@@ -1,10 +1,10 @@
PRGNAM="slirp4netns"
-VERSION="0.4.1"
+VERSION="1.2.2"
HOMEPAGE="https://github.com/rootless-containers/slirp4netns"
-DOWNLOAD="https://github.com/rootless-containers/slirp4netns/archive/v0.4.1/slirp4netns-0.4.1.tar.gz"
-MD5SUM="2511da14fcacff3a4c5d6c501f04e20b"
+DOWNLOAD="https://github.com/rootless-containers/slirp4netns/archive/v1.2.2/slirp4netns-1.2.2.tar.gz"
+MD5SUM="c18a686e1bd34042c08cc8861bcad869"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="libslirp"
MAINTAINER="Vincent Batts"
EMAIL="vbatts@hashbangbash.com"
diff --git a/network/slurm/slurm.SlackBuild b/network/slurm/slurm.SlackBuild
index f4817d6bae..8b7eab0a4f 100644
--- a/network/slurm/slurm.SlackBuild
+++ b/network/slurm/slurm.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Slurm
-# Copyright 2015-2021 Emmanuel N. Millan, Mendoza, Argentina.
+# Copyright 2015-2024 Emmanuel N. Millan, Mendoza, Argentina.
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -29,8 +29,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=slurm
-VERSION=${VERSION:-20.11.4}
-BUILD=${BUILD:-3}
+VERSION=${VERSION:-23.11.6}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/slurm/slurm.info b/network/slurm/slurm.info
index 82ae6a612e..9feaead676 100644
--- a/network/slurm/slurm.info
+++ b/network/slurm/slurm.info
@@ -1,8 +1,8 @@
PRGNAM="slurm"
-VERSION="20.11.4"
+VERSION="23.11.6"
HOMEPAGE="https://slurm.schedmd.com/"
-DOWNLOAD="https://slackware.uk/~urchlay/src/slurm-20.11.4.tar.bz2"
-MD5SUM="4b5ff978527f73eff9691d559d19a494"
+DOWNLOAD="https://download.schedmd.com/slurm/slurm-23.11.6.tar.bz2"
+MD5SUM="ad9fc9cb455a56ab699725d383d1ff30"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="munge"
diff --git a/network/smstools3/smstools3.info b/network/smstools3/smstools3.info
index a41b978ac3..08cdb6da0a 100644
--- a/network/smstools3/smstools3.info
+++ b/network/smstools3/smstools3.info
@@ -6,5 +6,5 @@ MD5SUM="6a9f038fb38a49cc3a4f8f14a88fb8af"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/sngrep/README b/network/sngrep/README
new file mode 100644
index 0000000000..512a002652
--- /dev/null
+++ b/network/sngrep/README
@@ -0,0 +1,17 @@
+sngrep is a tool for displaying SIP calls message flows from terminal.
+
+It supports live capture to display realtime SIP packets and can also
+be used as PCAP viewer.
+
+The following options are available for compilation:
+
+ENABLE_IPV6: Default is yes, adds IPv6 support. Setting this
+ variable to any value other than yes will disable IPv6 support.
+
+OPENSSL_TLS: Default is yes, uses OpenSSL for TLS support. Setting
+ this variable to any value other than yes results in gnutls being
+ used instead for TLS support.
+
+PCRE2: Default is yes, uses pcre2 for regex support. Setting this
+ variable to any value other than yes results in the use of pcre
+ instead for regex support.
diff --git a/network/sngrep/slack-desc b/network/sngrep/slack-desc
new file mode 100644
index 0000000000..417def5b76
--- /dev/null
+++ b/network/sngrep/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------------------------------------------------------|
+sngrep: sngrep (SIP analysis tool)
+sngrep:
+sngrep: sngrep is a tool for displaying SIP calls message flows from
+sngrep: terminal.
+sngrep:
+sngrep: It supports live capture to display realtime SIP packets and can
+sngrep: also be used as PCAP viewer.
+sngrep:
+sngrep:
+sngrep:
+sngrep:
diff --git a/network/sslstrip/sslstrip.SlackBuild b/network/sngrep/sngrep.SlackBuild
index 78aaf4e3dc..c03bab7796 100644
--- a/network/sslstrip/sslstrip.SlackBuild
+++ b/network/sngrep/sngrep.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for sslstrip
+# Slackware build script for sngrep
-# Copyright 2011 Vincent Batts, Vienna, VA, USA
+# Copyright 2023 Yossi Neiman, mishehu+sbo@shavedgoats.net
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=sslstrip
-VERSION=${VERSION:-0.9}
+PRGNAM=sngrep
+VERSION=${VERSION:-1.7.0}
BUILD=${BUILD:-1}
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
@@ -66,6 +63,31 @@ fi
set -e
+# Options. Saying no to OPENSSL_TLS results in gnutls linkage. no to PCRE2 results in PCRE linkage.
+ENABLE_IPV6=${ENABLE_IPV6:-yes}
+OPENSSL_TLS=${OPENSSL_TLS:-yes}
+PCRE2=${PCRE2:-yes}
+COMPOPTIONS=""
+
+if [ "$ENABLE_IPV6" = "yes" ]
+then
+ COMPOPTIONS="$COMPOPTIONS --enable-ipv6"
+fi
+
+if [ "$OPENSSL_TLS" = "yes" ]
+then
+ COMPOPTIONS="$COMPOPTIONS --with-openssl"
+else
+ COMPOPTIONS="$COMPOPTIONS --with-gnutls"
+fi
+
+if [ "$PCRE2" = "yes" ]
+then
+ COMPOPTIONS="$COMPOPTIONS --with-pcre2"
+else
+ COMPOPTIONS="$COMPOPTIONS --with-pcre"
+fi
+
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
@@ -74,20 +96,36 @@ 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 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \;
+ \( -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 {} \;
-python setup.py install --root=$PKG
+./bootstrap.sh
+
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
+./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --enable-eep \
+ --enable-unicode \
+ --with-zlib \
+ $COMPOPTIONS \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG mandir=/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 {} \;
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a \
- README COPYING \
- $PKG/usr/doc/$PRGNAM-$VERSION
+cp AUTHORS COPYING LICENSE LICENSE.OpenSSL README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/sngrep/sngrep.info b/network/sngrep/sngrep.info
new file mode 100644
index 0000000000..44bdf7327b
--- /dev/null
+++ b/network/sngrep/sngrep.info
@@ -0,0 +1,10 @@
+PRGNAM="sngrep"
+VERSION="1.7.0"
+HOMEPAGE="https://github.com/irontec/sngrep"
+DOWNLOAD="https://github.com/irontec/sngrep/releases/download/v1.7.0/sngrep-1.7.0.tar.gz"
+MD5SUM="ee3cc7bd75adeb713411aa678e45ae4c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Yossi Neiman"
+EMAIL="mishehu+sbo@shavedgoats.net"
diff --git a/network/speedometer/speedometer.SlackBuild b/network/speedometer/speedometer.SlackBuild
index 09bf16a72b..2d7397b59b 100644
--- a/network/speedometer/speedometer.SlackBuild
+++ b/network/speedometer/speedometer.SlackBuild
@@ -69,10 +69,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-mv $PRGNAM-release-$VERSION $PRGNAM-$VERSION
-cd $PRGNAM-$VERSION
+rm -rf $PRGNAM-release-$VERSION
+tar xvf $CWD/$PRGNAM-release-$VERSION.tar.gz
+cd $PRGNAM-release-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/network/speedometer/speedometer.info b/network/speedometer/speedometer.info
index 428ec871c6..bb8a78b6d6 100644
--- a/network/speedometer/speedometer.info
+++ b/network/speedometer/speedometer.info
@@ -1,10 +1,10 @@
PRGNAM="speedometer"
VERSION="2.9"
HOMEPAGE="https://excess.org/speedometer/"
-DOWNLOAD="https://github.com/wardi/speedometer/archive/release-2.9/speedometer-2.9.tar.gz"
+DOWNLOAD="https://github.com/wardi/speedometer/archive/release-2.9/speedometer-release-2.9.tar.gz"
MD5SUM="8ed83643533af4fdd7aa867c8369f201"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="psutil python-urwid"
+REQUIRES="python3-psutil python-urwid"
MAINTAINER="Edinaldo P. Silva"
EMAIL="edps.mundognu@gmail.com"
diff --git a/network/spice-gtk/spice-gtk.SlackBuild b/network/spice-gtk/spice-gtk.SlackBuild
index 860576c9f4..bf2696d61f 100644
--- a/network/spice-gtk/spice-gtk.SlackBuild
+++ b/network/spice-gtk/spice-gtk.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for spice-gtk
-# Copyright 2013-2021 Matteo Bernardini <ponce@slackbuilds.org> Pisa, Italy
+# Copyright 2013-2023 Matteo Bernardini <ponce@slackbuilds.org> Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=spice-gtk
-VERSION=${VERSION:-0.40}
+VERSION=${VERSION:-0.42}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/spice-gtk/spice-gtk.info b/network/spice-gtk/spice-gtk.info
index fe8f48da50..d66f523ebb 100644
--- a/network/spice-gtk/spice-gtk.info
+++ b/network/spice-gtk/spice-gtk.info
@@ -1,8 +1,8 @@
PRGNAM="spice-gtk"
-VERSION="0.40"
+VERSION="0.42"
HOMEPAGE="https://www.spice-space.org"
-DOWNLOAD="https://www.spice-space.org/download/gtk/spice-gtk-0.40.tar.xz"
-MD5SUM="03dcb437afb31151a421de1d7922e2b1"
+DOWNLOAD="https://www.spice-space.org/download/gtk/spice-gtk-0.42.tar.xz"
+MD5SUM="68becfc1192a61265e9981621e9d3dc6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="spice"
diff --git a/network/spice/spice.SlackBuild b/network/spice/spice.SlackBuild
index 4b336a9bce..4a95f53261 100644
--- a/network/spice/spice.SlackBuild
+++ b/network/spice/spice.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Slackware build script for spice
-# Copyright 2013-2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2013-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=spice
-VERSION=${VERSION:-0.15.0}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-0.15.2}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/spice/spice.info b/network/spice/spice.info
index ce2cc4b044..1aca0b1790 100644
--- a/network/spice/spice.info
+++ b/network/spice/spice.info
@@ -1,8 +1,8 @@
PRGNAM="spice"
-VERSION="0.15.0"
+VERSION="0.15.2"
HOMEPAGE="https://www.spice-space.org"
-DOWNLOAD="https://www.spice-space.org/download/releases/spice-server/spice-0.15.0.tar.bz2"
-MD5SUM="840c5284ebc78c15fc7c3a146931bc01"
+DOWNLOAD="https://www.spice-space.org/download/releases/spice-server/spice-0.15.2.tar.bz2"
+MD5SUM="1de1e9157a1e2396884017978e7cf086"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="spice-protocol"
diff --git a/network/squid/README b/network/squid/README
index da92c66796..9c36fcc1b9 100644
--- a/network/squid/README
+++ b/network/squid/README
@@ -9,10 +9,5 @@ caches can be arranged in a hierarchy or mesh for additional bandwidth
savings.
See /usr/doc/squid-*/README.SBo for configuration help.
-Note that the default squid.conf and /etc/logrotate.d/squid files have
-changed in this release, so be sure to merge the changes into place.
-
-To build squid with ICAP client support, specify the option "ICAP=yes",
-for example:
-
- ICAP=yes ./squid.SlackBuild
+Note that the default files in /etc/squid and /etc/logrotate.d may
+change between releases, so be sure to merge the changes into place.
diff --git a/network/squid/README.SBo b/network/squid/README.SBo
index 5dcc214a06..5a93ccda45 100644
--- a/network/squid/README.SBo
+++ b/network/squid/README.SBo
@@ -10,7 +10,7 @@ executable and add the following to /etc/rc.d/rc.local:
==============================================================================
-Uncomment and edit the following lines in /etc/squid.conf:
+Uncomment and edit the following lines in /etc/squid/squid.conf:
http_port <port> <option>
diff --git a/network/squid/doinst.sh b/network/squid/doinst.sh
index 664a873749..b79c23655f 100644
--- a/network/squid/doinst.sh
+++ b/network/squid/doinst.sh
@@ -26,5 +26,6 @@ preserve_perms etc/rc.d/rc.squid.new
preserve_perms etc/squid/mime.conf.new
preserve_perms etc/squid/squid.conf.new
preserve_perms etc/squid/cachemgr.conf.new
+preserve_perms etc/squid/errorpage.css.new
preserve_perms etc/logrotate.d/squid.new
diff --git a/network/squid/squid.SlackBuild b/network/squid/squid.SlackBuild
index faadb3da17..d819c88077 100644
--- a/network/squid/squid.SlackBuild
+++ b/network/squid/squid.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=squid
-VERSION=${VERSION:-4.16}
+VERSION=${VERSION:-6.6}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,11 +83,6 @@ 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 {} \;
-OPT_ICAP=""
-if [ "${ICAP:-no}" = "yes" ]; then
- OPT_ICAP="--enable-icap-client"
-fi
-
# last option is needed on current
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
@@ -103,11 +98,34 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-snmp \
--enable-auth \
--enable-auth-basic \
+ --enable-auth-ntlm \
+ --enable-auth-digest \
+ --enable-auth-negotiate \
+ --enable-removal-policies="lru,heap" \
+ --enable-storeio="aufs,ufs,diskd,rock" \
+ --enable-delay-pools \
+ --enable-arp-acl \
+ --with-openssl \
+ --enable-snmp \
--enable-linux-netfilter \
+ --enable-ident-lookups \
+ --enable-useragent-log \
+ --enable-cache-digests \
+ --enable-referer-log \
+ --enable-arp-acl \
+ --enable-htcp \
+ --enable-carp \
+ --enable-epoll \
+ --with-large-files \
+ --enable-arp-acl \
+ --with-default-user=$SQUIDUSER \
--enable-async-io \
- $OPT_ICAP \
- --build=$ARCH-slackware-linux \
- --disable-strict-error-checking
+ --enable-truncate \
+ --enable-icap-client \
+ --enable-ssl-crtd \
+ --disable-arch-native \
+ --disable-strict-error-checking \
+ --enable-wccpv2
make all
make install DESTDIR=$PKG
@@ -135,7 +153,8 @@ sed -e "s,@SQUIDUSER@,$SQUIDUSER," -e "s,@SQUIDGROUP@,$SQUIDGROUP," $CWD/squid.l
> $PKG/etc/logrotate.d/squid.new
( cd $PKG/etc/squid
- for i in mime cachemgr squid ; do mv $i.conf $i.conf.new ; done )
+ for i in mime cachemgr squid ; do mv $i.conf $i.conf.new ; done
+ mv errorpage.css errorpage.css.new )
cp src/squid.conf.documented $PKG/etc/squid/squid.conf.documented
mkdir -p $PKG/var/{cache,lib,run}/squid
diff --git a/network/squid/squid.info b/network/squid/squid.info
index 792521047d..e925b15dca 100644
--- a/network/squid/squid.info
+++ b/network/squid/squid.info
@@ -1,8 +1,8 @@
PRGNAM="squid"
-VERSION="4.16"
+VERSION="6.6"
HOMEPAGE="http://www.squid-cache.org/"
-DOWNLOAD="http://www.squid-cache.org/Versions/v4/squid-4.16.tar.xz"
-MD5SUM="d200064f7050969680f628d26b8c704d"
+DOWNLOAD="http://www.squid-cache.org/Versions/v6/squid-6.6.tar.xz"
+MD5SUM="5a41134ee1b7e75f62088acdec92d2ca"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/squirrelmail/config.php b/network/squirrelmail/config.php.txt
index d901ee1885..d901ee1885 100644
--- a/network/squirrelmail/config.php
+++ b/network/squirrelmail/config.php.txt
diff --git a/network/squirrelmail/config_local.php b/network/squirrelmail/config_local.php.txt
index fb4ee5967a..fb4ee5967a 100644
--- a/network/squirrelmail/config_local.php
+++ b/network/squirrelmail/config_local.php.txt
diff --git a/network/squirrelmail/squirrelmail.SlackBuild b/network/squirrelmail/squirrelmail.SlackBuild
index 5ed49d0eb6..4ed8d6d18b 100644
--- a/network/squirrelmail/squirrelmail.SlackBuild
+++ b/network/squirrelmail/squirrelmail.SlackBuild
@@ -151,10 +151,10 @@ rm -f plugins/make_archive.pl
mkdir -p $PKG/etc/squirrelmail
-cp $CWD/config.php $PKG/etc/squirrelmail/config.php
+cp $CWD/config.php.txt $PKG/etc/squirrelmail/config.php
ln -sf /etc/squirrelmail/config.php config/config.php
-cp $CWD/config_local.php $PKG/etc/squirrelmail/config_local.php
+cp $CWD/config_local.php.txt $PKG/etc/squirrelmail/config_local.php
ln -sf /etc/squirrelmail/config_local.php config/config_local.php
mv plugins/squirrelspell/sqspell_config.php \
diff --git a/network/sshfp/sshfp.info b/network/sshfp/sshfp.info
index 652ed15313..6d3fc1c2bb 100644
--- a/network/sshfp/sshfp.info
+++ b/network/sshfp/sshfp.info
@@ -1,7 +1,7 @@
PRGNAM="sshfp"
VERSION="1.2.2"
HOMEPAGE="https://github.com/xelerance/sshfp"
-DOWNLOAD="https://github.com/xelerance/sshfp/archive/1.2.2.tar.gz"
+DOWNLOAD="https://github.com/xelerance/sshfp/archive/1.2.2/sshfp-1.2.2.tar.gz"
MD5SUM="3cedcc3463e72196ee2028543d03ebfc"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/sshuttle/sshuttle.SlackBuild b/network/sshuttle/sshuttle.SlackBuild
index 97c592b836..75a3fd87c8 100644
--- a/network/sshuttle/sshuttle.SlackBuild
+++ b/network/sshuttle/sshuttle.SlackBuild
@@ -28,7 +28,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sshuttle
-VERSION=${VERSION:-1.1.1}
+VERSION=${VERSION:-1.1.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -62,6 +62,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -82,15 +85,13 @@ 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 {} \;
-python3 setup.py install --root=$PKG
-
-mkdir -p $PKG/usr/man/man8
-cat $TMP/$PRGNAM-$VERSION/Documentation/$PRGNAM.8 | gzip -9c > \
-$PKG/usr/man/man8/$PRGNAM.8.gz
+python3 -m build --no-isolation
+python3 -m installer -d "$PKG" dist/*.whl
+# python3 setup.py install --root=$PKG
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- CHANGES.rst LICENSE README.rst \
+ *.rst LICENSE README* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/sshuttle/sshuttle.info b/network/sshuttle/sshuttle.info
index 78adb71eea..c82c310300 100644
--- a/network/sshuttle/sshuttle.info
+++ b/network/sshuttle/sshuttle.info
@@ -1,10 +1,10 @@
PRGNAM="sshuttle"
-VERSION="1.1.1"
+VERSION="1.1.2"
HOMEPAGE="https://github.com/sshuttle/sshuttle"
-DOWNLOAD="https://pypi.python.org/packages/source/s/sshuttle/sshuttle-1.1.1.tar.gz"
-MD5SUM="40d53cc95aa594edeba25b6c3040fb97"
+DOWNLOAD="https://pypi.python.org/packages/source/s/sshuttle/sshuttle-1.1.2.tar.gz"
+MD5SUM="1c7bf12ae8ed576b16d1e2b144835863"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-poetry-core"
MAINTAINER="Yth - Arnaud"
EMAIL="yth@ythogtha.org"
diff --git a/network/sslscan/sslscan.SlackBuild b/network/sslscan/sslscan.SlackBuild
index acf27734c4..7110db9a7d 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 Andrew Clemons, Tokyo, Japan
+# Copyright (c) 2022-2024 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.0.15}
+VERSION=${VERSION:-2.1.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -64,6 +64,8 @@ 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
@@ -83,7 +85,7 @@ sed -i "s/^GIT_VERSION = .*$/GIT_VERSION = $VERSION/" Makefile
STATIC=${STATIC:-yes}
if [ "$STATIC" = "yes" ] ; then
- OPENSSLVERSION=${OPENSSLVERSION:-882573246695088d65956355ca6c954642dcac31}
+ OPENSSLVERSION=${OPENSSLVERSION:-openssl-3.0.12}
tar xf "$CWD/openssl-$OPENSSLVERSION.tar.gz"
mv "openssl-$OPENSSLVERSION" openssl
fi
@@ -100,9 +102,9 @@ mkdir -p $PKG/usr/bin $PKG/usr/man/man1
sed -i "s|share/man|man|" Makefile
if [ "$STATIC" = "yes" ] ; then
- CLFAGS=$SLKCFLAGS make -j1 static
+ CLFAGS=$SLKCFLAGS make static
else
- CLFAGS=$SLKCFLAGS make -j1
+ CLFAGS=$SLKCFLAGS make
fi
make install DESTDIR=$PKG
@@ -114,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 INSTALL LICENSE README.md TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a Changelog LICENSE README.md TODO $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 4256c9f225..af908d6c42 100644
--- a/network/sslscan/sslscan.info
+++ b/network/sslscan/sslscan.info
@@ -1,10 +1,10 @@
PRGNAM="sslscan"
-VERSION="2.0.15"
+VERSION="2.1.3"
HOMEPAGE="https://github.com/rbsec/sslscan"
-DOWNLOAD="https://github.com/rbsec/sslscan/archive/2.0.15/sslscan-2.0.15.tar.gz \
- https://github.com/openssl/openssl/archive/882573246695088d65956355ca6c954642dcac31/openssl-882573246695088d65956355ca6c954642dcac31.tar.gz"
-MD5SUM="9eb59f7eee056cda2411f03206aa4589 \
- d7c45e6b607f4595db9ce1fcb8c8886d"
+DOWNLOAD="https://github.com/rbsec/sslscan/archive/2.1.3/sslscan-2.1.3.tar.gz \
+ https://github.com/openssl/openssl/archive/openssl-3.0.12/openssl-openssl-3.0.12.tar.gz"
+MD5SUM="68f3e535c7343c0bdb79796d73d51a13 \
+ 1729299909f326bbabad5a5a3543c69b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/sslstrip/README b/network/sslstrip/README
deleted file mode 100644
index 3dc16f6912..0000000000
--- a/network/sslstrip/README
+++ /dev/null
@@ -1,6 +0,0 @@
-sslstrip (HTTPS ssl stripping)
-
-This tool provides a demonstration of the HTTPS stripping attacks.
-It will transparently hijack HTTP traffic on a network, watch for
-HTTPS links and redirects, then map those links into either
-look-alike HTTP links or homograph-similar HTTPS links.
diff --git a/network/sslstrip/sslstrip.info b/network/sslstrip/sslstrip.info
deleted file mode 100644
index 68e4ca22cb..0000000000
--- a/network/sslstrip/sslstrip.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="sslstrip"
-VERSION="0.9"
-HOMEPAGE="http://www.thoughtcrime.org/software/sslstrip/"
-DOWNLOAD="http://distcache.freebsd.org/ports-distfiles/sslstrip-0.9.tar.gz"
-MD5SUM="944020144e4f5528888b3dfbb107dd78"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="pyOpenSSL python2-twisted"
-MAINTAINER="Vincent Batts"
-EMAIL="vbatts@hashbangbash.com"
diff --git a/network/sstp-client/sstp-client.SlackBuild b/network/sstp-client/sstp-client.SlackBuild
index 4ab8922ed7..a9835ec5ce 100644
--- a/network/sstp-client/sstp-client.SlackBuild
+++ b/network/sstp-client/sstp-client.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for SSTP-Client
-# Copyright 2013, 2016, 2017, 2019 Mario Preksavec, Zagreb, Croatia
+# Copyright 2013, 2023 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,8 +25,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=sstp-client
-VERSION=${VERSION:-1.0.12}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-1.0.18}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -82,6 +82,9 @@ find -L . \
# Set proper examples dir, --docdir overriding does not work
sed -i -e "/^docdir/s:@PACKAGE@:$PRGNAM-$VERSION/examples:" Makefile.in
+# Set PPPD version, plugin dir detection does not work
+PPPD_VERSION=$(pppd --version | awk '{print $NF}')
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
@@ -95,6 +98,7 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-user=nobody \
--enable-group=nogroup \
--enable-ppp-plugin \
+ --with-pppd-plugin-dir=/usr/lib${LIBDIRSUFFIX}/pppd/$PPPD_VERSION \
--build=$ARCH-slackware-linux
make
diff --git a/network/sstp-client/sstp-client.info b/network/sstp-client/sstp-client.info
index 30500d0b47..3f8e2b3bbe 100644
--- a/network/sstp-client/sstp-client.info
+++ b/network/sstp-client/sstp-client.info
@@ -1,8 +1,8 @@
PRGNAM="sstp-client"
-VERSION="1.0.12"
+VERSION="1.0.18"
HOMEPAGE="http://sstp-client.sourceforge.net/"
-DOWNLOAD="http://downloads.sourceforge.net/sstp-client/sstp-client-1.0.12.tar.gz"
-MD5SUM="94c927fc6177b7f0048f4f673d9479fe"
+DOWNLOAD="http://downloads.sourceforge.net/sstp-client/sstp-client-1.0.18.tar.gz"
+MD5SUM="04ec1868f825d3218173a95bc9b9eff2"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/strongswan/README b/network/strongswan/README
index 662e2b306c..c94b742200 100644
--- a/network/strongswan/README
+++ b/network/strongswan/README
@@ -23,6 +23,8 @@ The following configure options are enabled by default:
--enable-sha3
--enable-files
--enable-lookip
+ --enable-eap-gtc
+ --enable-eap-md5
--enable-eap-identity
--enable-eap-mschapv2
--enable-eap-tls
@@ -47,6 +49,7 @@ The following configure options are enabled by default:
--enable-counters
--enable-farp
--enable-lookip
+ --enable-nm
To disable the above options set the environment variable CONFIG_OPTS
diff --git a/network/strongswan/strongswan.SlackBuild b/network/strongswan/strongswan.SlackBuild
index 610cbc5c7a..be9f4e9a42 100644
--- a/network/strongswan/strongswan.SlackBuild
+++ b/network/strongswan/strongswan.SlackBuild
@@ -1,6 +1,6 @@
#!/bin/bash
-# Copyright 2018-2019, Wayne Cuddy, wcuddyATgmailDOTcom
+# Copyright 2018-2022, Wayne Cuddy, wcuddyATgmailDOTcom
# Copyright 2009-2013, Jonathan Larsen (agentc0re), SLC, UT
# Copyright 2013-2015, Markus Hutmacher, mailing@markhu.de
# All rights reserved.
@@ -23,6 +23,19 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
+# 2023-11-17
+# - upgraded upstream to verion 5.9.11
+#
+# 2022-12-25
+# - added configure options in preparation for NetworkManager-Strongswan
+# --enable-eap-gtc
+# --enable-eap-md5
+# --enable-nm
+#
+# 2022-10-09
+# - upgraded upstream version to 5.9.8
+# - removed INSTALL file per sbopkglint
+#
# 2022-04-16
# - upgraded upstream version to 5.9.5
#
@@ -42,7 +55,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=strongswan
-VERSION=${VERSION:-5.9.5}
+VERSION=${VERSION:-5.9.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -62,6 +75,8 @@ DEFAULT_CONFIG_OPTS="\
--enable-sha3 \
--enable-files \
--enable-lookip \
+ --enable-eap-gtc \
+ --enable-eap-md5 \
--enable-eap-identity \
--enable-eap-mschapv2 \
--enable-eap-tls \
@@ -86,6 +101,7 @@ DEFAULT_CONFIG_OPTS="\
--enable-counters \
--enable-farp \
--enable-lookip \
+ --enable-nm \
"
if [ -z "$ARCH" ]; then
@@ -161,7 +177,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
cd $TMP/$PRGNAM-$VERSION
-cp -a COPYING ChangeLog INSTALL NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING ChangeLog NEWS README TODO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/strongswan/strongswan.info b/network/strongswan/strongswan.info
index 548005a99e..3a9a3ff6d4 100644
--- a/network/strongswan/strongswan.info
+++ b/network/strongswan/strongswan.info
@@ -1,8 +1,8 @@
PRGNAM="strongswan"
-VERSION="5.9.5"
+VERSION="5.9.11"
HOMEPAGE="https://www.strongswan.org"
-DOWNLOAD="https://download.strongswan.org/strongswan-5.9.5.tar.bz2"
-MD5SUM="53005324e3cba8592f1fb958b1c2d0e5"
+DOWNLOAD="https://download.strongswan.org/strongswan-5.9.11.tar.bz2"
+MD5SUM="673e194cd256af77b46928179f2c81ad"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/surf/surf.SlackBuild b/network/surf/surf.SlackBuild
index 0010af08f9..092649000c 100644
--- a/network/surf/surf.SlackBuild
+++ b/network/surf/surf.SlackBuild
@@ -6,6 +6,7 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230115 bkw: BUILD=2, strip library.
# 20211020 bkw:
# - updated for v2.1.
# - rework patches again, can't build old versions no more.
@@ -29,7 +30,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=surf
VERSION=${VERSION:-2.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -128,7 +129,7 @@ sed -i \
config.mk
make
-strip $PRGNAM
+strip $PRGNAM *.so
make install DESTDIR=$PKG
gzip -9 $PKG/usr/man/man?/*.?
diff --git a/network/surfraw/surfraw.SlackBuild b/network/surfraw/surfraw.SlackBuild
index 2b58182c37..15d3609669 100644
--- a/network/surfraw/surfraw.SlackBuild
+++ b/network/surfraw/surfraw.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Slackware build script for surfraw
-# Copyright 2017-2018 Frédéric Galusik Lyon, France
+# Copyright 2017-2022 Frederic Galusik Bordeaux, France
# Copyright 2007 Martin Lefebvre <dadexter@slackadelic.com>
# Copyright 2010-2011 Grigorios Bouzakis <grbzks@xsmail.com>
# Copyright 2014 Glenn Becker <burningc@sdf.org>
diff --git a/network/surfraw/surfraw.info b/network/surfraw/surfraw.info
index 428d06108e..8de1c28884 100644
--- a/network/surfraw/surfraw.info
+++ b/network/surfraw/surfraw.info
@@ -6,5 +6,5 @@ MD5SUM="6f771c5f23d4a06913142996461d7f59"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Frédéric Galusik"
-EMAIL="slack+SBo@galusik.xyz"
+MAINTAINER="Frederic Galusik"
+EMAIL="f@galusik.fr"
diff --git a/network/suricata/README b/network/suricata/README
deleted file mode 100644
index 792269d1f9..0000000000
--- a/network/suricata/README
+++ /dev/null
@@ -1,4 +0,0 @@
-Suricata is a high performance Network IDS, IPS and Network Security
-Monitoring engine. Open Source and owned by a community run non-profit
-foundation, the Open Information Security Foundation (OISF). Suricata
-is developed by the OISF and its supporting vendors.
diff --git a/network/suricata/rc.suricata b/network/suricata/rc.suricata
deleted file mode 100644
index e4eb06f1a6..0000000000
--- a/network/suricata/rc.suricata
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/bin/sh
-# Start/stop/restart suricata
-# This file written from James Bond <evanton@tut.by>
-
-# This tell suricata which interface to listen on (any for every interface)
-IFACE=${IFACE:-eth0}
-
-# Make sure this matches your IFACE
-PIDFILE=/var/run/suricata_$IFACE.pid
-
-# You probably don't want to change this, but in case you do
-LOGDIR="/var/log/suricata"
-
-# Probably not this either
-CONF=/etc/suricata/suricata.yaml
-
-# Start suricata:
-suricata_start() {
- CMDLINE="/usr/bin/suricata -D -i $IFACE"
- echo "Starting Suricata daemon: $CMDLINE"
- $CMDLINE --pidfile $PIDFILE -l $LOGDIR -c $CONF
- echo
-}
-
-# Stop suricata:
-suricata_stop() {
- echo -n "Stopping Suricata daemon ($IFACE)..."
- kill $(cat $PIDFILE)
- echo
- sleep 1
- rm -f $PIDFILE
-}
-
-# Restart suricata:
-suricata_restart() {
- suricata_stop
- sleep 1
- suricata_start
-}
-
-case "$1" in
-'start')
- suricata_start
- ;;
-'stop')
- suricata_stop
- ;;
-'restart')
- suricata_restart
- ;;
-*)
- echo "usage $0 start|stop|restart"
-esac
diff --git a/network/suricata/suricata.info b/network/suricata/suricata.info
deleted file mode 100644
index 663109f13c..0000000000
--- a/network/suricata/suricata.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="suricata"
-VERSION="6.0.4"
-HOMEPAGE="https://suricata-ids.org/"
-DOWNLOAD="https://www.openinfosecfoundation.org/download/suricata-6.0.4.tar.gz"
-MD5SUM="6ef0583bbd771e80eae7d928d7735f02"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libnet"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/surl/surl.SlackBuild b/network/surl/surl.SlackBuild
index 196d93ae97..9f065462c0 100644
--- a/network/surl/surl.SlackBuild
+++ b/network/surl/surl.SlackBuild
@@ -6,6 +6,8 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230520 bkw: python => python2 (no other changes).
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=surl
@@ -35,20 +37,6 @@ OUTPUT=${OUTPUT:-/tmp}
TARBALL=$CWD/${PRGNAM}_$VERSION-1~ppa2~ubuntu13.10.1.tar.gz
SRCDIR=recipe-$VERSION-1~ppa2
-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
@@ -64,7 +52,7 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
patch -p1 < $CWD/disable_broken_services.diff
sed -i 's,share/man,man,' setup.py
-python setup.py install --root=$PKG
+python2 setup.py install --root=$PKG
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/swift/README b/network/swift/README
new file mode 100644
index 0000000000..d0c6f4060b
--- /dev/null
+++ b/network/swift/README
@@ -0,0 +1,5 @@
+swift is a jabber client from the Isode company
+
+Note: swift does not support OMEMO or OTR, as it was designed with
+vendored encryption in mind (not present in the public version). It
+does not support several "modern XMPP" XEPs, so YMMV.
diff --git a/network/swift/doinst.sh b/network/swift/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/swift/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/swift/slack-desc b/network/swift/slack-desc
new file mode 100644
index 0000000000..d672a19e72
--- /dev/null
+++ b/network/swift/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------------------------------------------------------|
+swift: swift (a Jabber client from Isode)
+swift:
+swift: A jabber client from a commercial company also developing the Isode
+swift: Jabber Server.
+swift:
+swift:
+swift:
+swift:
+swift:
+swift: Homepage: https://swift.im
+swift:
diff --git a/network/swift/swift-4.0.2-boost-1.69-compatibility.patch b/network/swift/swift-4.0.2-boost-1.69-compatibility.patch
new file mode 100644
index 0000000000..a99dc10a2e
--- /dev/null
+++ b/network/swift/swift-4.0.2-boost-1.69-compatibility.patch
@@ -0,0 +1,77 @@
+From a21993d750396d755717df21e331df87af8a0c6a Mon Sep 17 00:00:00 2001
+From: Bruce Stephens <bruce.stephens@isode.com>
+Date: Wed, 9 Jan 2019 16:21:20 +0000
+Subject: [PATCH] Don't assume that tribool has an implicit bool conversion
+
+In boost 1.68.0 the conversion is implicit, but in 1.69.0 it's
+explicit and we must explicitly call it.
+
+Change-Id: I24eb78be7510c89b88342d28c539cad4977f99fd
+---
+ Swiften/Network/PlatformNATTraversalWorker.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Swiften/Network/PlatformNATTraversalWorker.cpp b/Swiften/Network/PlatformNATTraversalWorker.cpp
+index f56de0b78b..eaa13b30d3 100644
+--- a/Swiften/Network/PlatformNATTraversalWorker.cpp
++++ b/Swiften/Network/PlatformNATTraversalWorker.cpp
+@@ -157,7 +157,7 @@ NATTraversalInterface* PlatformNATTraversalWorker::getNATTraversalInterface() co
+ miniUPnPInterface = new MiniUPnPInterface();
+ miniUPnPSupported = miniUPnPInterface->isAvailable();
+ }
+- SWIFT_LOG(debug) << "UPnP NAT traversal supported: " << miniUPnPSupported << std::endl;
++ SWIFT_LOG(debug) << "UPnP NAT traversal supported: " << static_cast<bool>(miniUPnPSupported) << std::endl;
+ if (miniUPnPSupported) {
+ return miniUPnPInterface;
+ }
+@@ -168,7 +168,7 @@ NATTraversalInterface* PlatformNATTraversalWorker::getNATTraversalInterface() co
+ natPMPInterface = new NATPMPInterface();
+ natPMPSupported = natPMPInterface->isAvailable();
+ }
+- SWIFT_LOG(debug) << "NAT-PMP NAT traversal supported: " << natPMPSupported << std::endl;
++ SWIFT_LOG(debug) << "NAT-PMP NAT traversal supported: " << static_cast<bool>(natPMPSupported) << std::endl;
+ if (natPMPSupported) {
+ return natPMPInterface;
+ }
+From bb3bd8a32b220b9c1ffd566da00bcd0ba546156c Mon Sep 17 00:00:00 2001
+From: Miroslaw Stein <miroslaw.stein@isode.com>
+Date: Fri, 18 Jan 2019 14:30:24 +0000
+Subject: [PATCH] Avoid deprecated boost endianess include
+
+As of Boost 1.69.0, boost/detail/endian.h is deprecated in favour of
+boost/predef/other/endian.h, and BOOST_(LITTLE|BIG)_ENDIAN by
+BOOST_ENDIAN_(LITTLE|BIG)_BYTE.
+
+Test-Information:
+
+Unit tests pass on Debian 9
+
+Change-Id: If7076c559a4e35219ff97603f50b80cfbe05b29b
+---
+ Swiften/Base/Platform.h | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/Swiften/Base/Platform.h b/Swiften/Base/Platform.h
+index 4deba2bdda..22dff30b14 100644
+--- a/Swiften/Base/Platform.h
++++ b/Swiften/Base/Platform.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (c) 2010 Isode Limited.
++ * Copyright (c) 2010-2019 Isode Limited.
+ * All rights reserved.
+ * See the COPYING file for more information.
+ */
+@@ -43,9 +43,9 @@
+ #endif
+
+ // Endianness
+-#include <boost/detail/endian.hpp>
+-#if defined(BOOST_LITTLE_ENDIAN)
++#include <boost/predef/other/endian.h>
++#if defined(BOOST_ENDIAN_LITTLE_BYTE)
+ #define SWIFTEN_LITTLE_ENDIAN
+-#elif defined(BOOST_BIG_ENDIAN)
++#elif defined(BOOST_ENDIAN_BIG_BYTE)
+ #define SWIFTEN_BIG_ENDIAN
+ #endif
diff --git a/network/swift/swift-4.0.2-qt-5.11-compatibility.patch b/network/swift/swift-4.0.2-qt-5.11-compatibility.patch
new file mode 100644
index 0000000000..db633945b4
--- /dev/null
+++ b/network/swift/swift-4.0.2-qt-5.11-compatibility.patch
@@ -0,0 +1,35 @@
+From 1d18148c86377787a8c77042b12ea66f20cb2ca9 Mon Sep 17 00:00:00 2001
+From: Tobias Markmann <tm@ayena.de>
+Date: Thu, 21 Jun 2018 13:04:56 +0200
+Subject: Add missing include for QAbstractItemModel
+
+This fixes building Swift with Qt 5.11.
+
+Test-Information:
+
+Builds and tests pass on macOS 10.13.5 with Qt 5.11.0.
+
+Change-Id: I1be2cd081d8a520ec38ab7cca5ada0d7fc39b777
+
+diff --git a/Swift/QtUI/UserSearch/QtUserSearchWindow.h b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
+index 0714ac1..fe536ab 100644
+--- a/Swift/QtUI/UserSearch/QtUserSearchWindow.h
++++ b/Swift/QtUI/UserSearch/QtUserSearchWindow.h
+@@ -1,5 +1,5 @@
+ /*
+- * Copyright (c) 2010-2016 Isode Limited.
++ * Copyright (c) 2010-2018 Isode Limited.
+ * All rights reserved.
+ * See the COPYING file for more information.
+ */
+@@ -8,6 +8,7 @@
+
+ #include <set>
+
++#include <QAbstractItemModel>
+ #include <QWizard>
+
+ #include <Swiften/Base/Override.h>
+--
+cgit v0.10.2-6-g49f6
+
diff --git a/network/swift/swift-4.0.2-qt-5.15-compatibility.patch b/network/swift/swift-4.0.2-qt-5.15-compatibility.patch
new file mode 100644
index 0000000000..37918db198
--- /dev/null
+++ b/network/swift/swift-4.0.2-qt-5.15-compatibility.patch
@@ -0,0 +1,10 @@
+--- a/Swift/QtUI/Roster/GroupItemDelegate.cpp
++++ b/Swift/QtUI/Roster/GroupItemDelegate.cpp
+@@ -7,6 +7,7 @@
+ #include <Swift/QtUI/Roster/GroupItemDelegate.h>
+
+ #include <QPainter>
++#include <QPainterPath>
+ #include <QPen>
+ #include <QtDebug>
+
diff --git a/network/swift/swift-gcc11.patch b/network/swift/swift-gcc11.patch
new file mode 100644
index 0000000000..4d94c2d105
--- /dev/null
+++ b/network/swift/swift-gcc11.patch
@@ -0,0 +1,13 @@
+diff --git a/Swift/Controllers/ShowProfileController.h b/Swift/Controllers/ShowProfileController.h
+index 0d01ba1a0..5dc7197ff 100644
+--- a/Swift/Controllers/ShowProfileController.h
++++ b/Swift/Controllers/ShowProfileController.h
+@@ -18,6 +18,8 @@
+
+ #include <Swift/Controllers/UIEvents/UIEvent.h>
+
++#include <map>
++
+ namespace Swift {
+ class VCardManager;
+ class ProfileWindow;
diff --git a/network/swift/swift-python3.patch b/network/swift/swift-python3.patch
new file mode 100644
index 0000000000..80580e7c93
--- /dev/null
+++ b/network/swift/swift-python3.patch
@@ -0,0 +1,737 @@
+diff --git a/3rdParty/LibIDN/SConscript b/3rdParty/LibIDN/SConscript
+index 90892b0f8..c99aff8ba 100644
+--- a/3rdParty/LibIDN/SConscript
++++ b/3rdParty/LibIDN/SConscript
+@@ -40,13 +40,13 @@ if env.get("LIBIDN_BUNDLED", False) :
+ if conf.CheckFunc("stricmp") :
+ myenv.Append(CPPDEFINES = [("strcasecmp", "stricmp")])
+ else :
+- print "Error: Cannot find strcasecmp() or stricmp()"
++ print("Error: Cannot find strcasecmp() or stricmp()")
+ Exit(1)
+ if not conf.CheckFunc('strncasecmp') :
+ if conf.CheckFunc("strnicmp") :
+ myenv.Append(CPPDEFINES = [("strncasecmp", "strnicmp")])
+ else :
+- print "Error: Cannot find strncasecmp() or strnicmp()"
++ print("Error: Cannot find strncasecmp() or strnicmp()")
+ Exit(1)
+ conf.Finish()
+
+diff --git a/BuildTools/CheckHeaders.py b/BuildTools/CheckHeaders.py
+index 79ff85c12..752d2573f 100755
+--- a/BuildTools/CheckHeaders.py
++++ b/BuildTools/CheckHeaders.py
+@@ -36,7 +36,7 @@ for line in file.readlines() :
+ continue
+ for forbiddenInclude, ignores in FORBIDDEN_INCLUDES :
+ if forbiddenInclude in line and len([x for x in ignores if x in filename]) == 0 :
+- print "Found " + forbiddenInclude + " include in " + filename
++ print("Found " + forbiddenInclude + " include in " + filename)
+ foundBadHeaders = True
+
+ sys.exit(foundBadHeaders)
+diff --git a/BuildTools/CheckTranslations.py b/BuildTools/CheckTranslations.py
+index 615f81f1e..0617fbac0 100755
+--- a/BuildTools/CheckTranslations.py
++++ b/BuildTools/CheckTranslations.py
+@@ -41,10 +41,10 @@ for filename in os.listdir("Swift/Translations") :
+ translationText = getText(translation.childNodes)
+ translationPlaceholders = set(re.findall("%\d+%?", translationText))
+ if translationPlaceholders != sourcePlaceholders :
+- print "[Error] " + filename + ": Placeholder mismatch in translation '" + sourceText + "'"
++ print("[Error] " + filename + ": Placeholder mismatch in translation '" + sourceText + "'")
+ if not finished :
+- print "[Warning] " + filename + ": Unfinished"
++ print("[Warning] " + filename + ": Unfinished")
+ if language not in desktop_generic_names and language != "en" :
+- print "[Warning] GenericName field missing in desktop entry for " + language
++ print("[Warning] GenericName field missing in desktop entry for " + language)
+ if language not in desktop_comments and language != "en" :
+- print "[Warning] Comment field missing in desktop entry for " + language
++ print("[Warning] Comment field missing in desktop entry for " + language)
+diff --git a/BuildTools/Copyright/find-contribs.py b/BuildTools/Copyright/find-contribs.py
+index ac30afb2b..799ae7b45 100755
+--- a/BuildTools/Copyright/find-contribs.py
++++ b/BuildTools/Copyright/find-contribs.py
+@@ -46,12 +46,12 @@ def print_log(full_log):
+
+ full_swiften_log = subprocess.check_output(["git", "log", "--", "Swiften"])
+
+-print "Contributors for Swiften/ subtree:\n"
++print("Contributors for Swiften/ subtree:\n")
+ print_log(full_swiften_log)
+
+ full_all_log = subprocess.check_output(["git", "log"])
+
+-print "\n\n\n\n"
++print("\n\n\n\n")
+
+-print "Contributors for full tree:\n"
++print("Contributors for full tree:\n")
+ print_log(full_all_log)
+diff --git a/BuildTools/Copyrighter.py b/BuildTools/Copyrighter.py
+index a16050cb1..cfde98f62 100755
+--- a/BuildTools/Copyrighter.py
++++ b/BuildTools/Copyrighter.py
+@@ -122,14 +122,14 @@ def check_copyright(filename, hints) :
+ return True
+ else :
+ if hints :
+- print "Copyright block for " + copyrightSetting.author + " does not cover current year in: " + filename
++ print("Copyright block for " + copyrightSetting.author + " does not cover current year in: " + filename)
+ return False
+ if hints :
+- print "Missing copyright block for " + copyrightSetting.author + " in: " + filename
++ print("Missing copyright block for " + copyrightSetting.author + " in: " + filename)
+ return False
+ else :
+ if hints :
+- print "No copyright found in: " + filename
++ print("No copyright found in: " + filename)
+ return False
+
+ def replace_data_in_file(filename, begin, end, replaceWith) :
+@@ -140,7 +140,7 @@ def replace_data_in_file(filename, begin, end, replaceWith) :
+
+ def set_or_update_copyright(filename) :
+ if check_copyright(filename, False) :
+- print "No update required for file: " + filename
++ print("No update required for file: " + filename)
+ else :
+ copyrightBlocks = parse_file_new(filename)
+ username, email = get_userinfo()
+@@ -161,7 +161,7 @@ def set_or_update_copyright(filename) :
+ replace_data_in_file(filename, lastBlock+1, lastBlock+1, "\n" + str(copyrightSetting))
+
+ def print_help() :
+- print """Usage:
++ print("""Usage:
+ Copyrighter.py check-copyright $filename
+ Cheks for the existence of a copyright comment block.
+
+@@ -172,7 +172,7 @@ def print_help() :
+ A users license configuration can be set via the SWIFT_LICENSE_CONFIG environment variable
+ in the format "$copyright holder|$license", e.g. "Jane Doe|mit". Possible values for
+ $license are default, mit and gpl.
+- """
++ """)
+
+ if sys.argv[1] == "check-copyright" :
+ file = sys.argv[2]
+@@ -183,6 +183,6 @@ elif sys.argv[1] == "set-copyright" :
+ file = sys.argv[2]
+ set_or_update_copyright(file)
+ else :
+- print "Unknown command: " + sys.argv[1]
++ print("Unknown command: " + sys.argv[1])
+ print_help()
+ sys.exit(-1)
+diff --git a/BuildTools/CrashReportAnalysis/WindowsMinidumpAnalyse.py b/BuildTools/CrashReportAnalysis/WindowsMinidumpAnalyse.py
+index dada92095..92f9b28f1 100644
+--- a/BuildTools/CrashReportAnalysis/WindowsMinidumpAnalyse.py
++++ b/BuildTools/CrashReportAnalysis/WindowsMinidumpAnalyse.py
+@@ -19,11 +19,11 @@ import time
+
+ swiftWindowBuildsPathPrefix = os.getenv("SWIFT_DIST")
+ if swiftWindowBuildsPathPrefix == None :
+- print "Please set the SWIFT_DIST environment variable to a location containing msi and pdb.gz files."
++ print("Please set the SWIFT_DIST environment variable to a location containing msi and pdb.gz files.")
+ sys.exit(1)
+
+ if len(sys.argv) != 3:
+- print "Usage: python WindowsMinidumpAnalyse.py VERSION MINIDUMP_FILE"
++ print("Usage: python WindowsMinidumpAnalyse.py VERSION MINIDUMP_FILE")
+ sys.exit(1)
+
+ version = sys.argv[1]
+@@ -93,7 +93,7 @@ def printHumanReadableReport():
+ try:
+ shutil.rmtree(working_folder)
+ except:
+- print ""
++ print("")
+
+ # clone local git repository into dedicated directory
+ call(["git", "clone", ".", working_folder], shell=True)
+@@ -120,7 +120,7 @@ assert(len(commit) > 0)
+ if not os.path.exists(symbol_cache_path):
+ os.makedirs(symbol_cache_path)
+
+-#print "Checking out commit {0}.".format(commit)
++#print("Checking out commit {0}.".format(commit))
+ call(["git", "-C", working_folder, "checkout", commit])
+
+ os.chdir(working_folder)
+diff --git a/BuildTools/DocBook/SCons/XSLT.py b/BuildTools/DocBook/SCons/XSLT.py
+index 38e36c533..6a40b62a8 100644
+--- a/BuildTools/DocBook/SCons/XSLT.py
++++ b/BuildTools/DocBook/SCons/XSLT.py
+@@ -8,7 +8,7 @@ import xml.dom.minidom, os, os.path
+ def generate(env) :
+ def generate_actions(source, target, env, for_signature) :
+ if not env.has_key("XSLTSTYLESHEET") :
+- raise SCons.Errors.UserError, "The XSLTSTYLESHEET construction variable must be defined"
++ raise SCons.Errors.UserError("The XSLTSTYLESHEET construction variable must be defined")
+
+ # Process the XML catalog files
+ # FIXME: It's probably not clean to do an ENV assignment globally
+diff --git a/BuildTools/FixIncludes.py b/BuildTools/FixIncludes.py
+index 898494473..e53246455 100755
+--- a/BuildTools/FixIncludes.py
++++ b/BuildTools/FixIncludes.py
+@@ -153,12 +153,12 @@ for line in content[headerStart:headerEnd]:
+ headerGroups[headerType] = [line]
+
+ if containsComplexPreprocessorDirectives:
+- print "Cannot format headers containing preprocessor #if, #pragma, #define or #undef statements!"
++ print("Cannot format headers containing preprocessor #if, #pragma, #define or #undef statements!")
+ exit(1)
+
+ if filename_base.endswith(".h"):
+ if not HeaderType.PRAGMA_ONCE in headerGroups:
+- print "Missing #pragma once!"
++ print("Missing #pragma once!")
+ exit(2)
+ cleanHeaderFile(content, headerStart, headerEnd, headerGroups)
+ elif filename_base.endswith(".cpp") or filename_base.endswith(".mm"):
+diff --git a/BuildTools/GetBuildVersion.py b/BuildTools/GetBuildVersion.py
+index 70fdc5ce5..be7cc03e6 100755
+--- a/BuildTools/GetBuildVersion.py
++++ b/BuildTools/GetBuildVersion.py
+@@ -16,6 +16,6 @@ if only_major :
+ if version_match :
+ print version_match.group(1)
+ else :
+- print "0"
++ print("0")
+ else :
+ print Version.getBuildVersion(os.path.dirname(sys.argv[0]) + "/..", sys.argv[1])
+diff --git a/BuildTools/Gource/GetGravatars.py b/BuildTools/Gource/GetGravatars.py
+index d1f40a4d6..17198aa13 100755
+--- a/BuildTools/Gource/GetGravatars.py
++++ b/BuildTools/Gource/GetGravatars.py
+@@ -5,7 +5,7 @@ import subprocess, os, sys, hashlib, urllib
+ GRAVATAR_URL = "http://www.gravatar.com/avatar/%(id)s?d=404"
+
+ if len(sys.argv) != 2 :
+- print "Usage: " + sys.argv[0] + " <output-dir>"
++ print("Usage: " + sys.argv[0] + " <output-dir>")
+ sys.exit(-1)
+
+ output_dir = sys.argv[1]
+@@ -18,32 +18,32 @@ for line in p.stdout.readlines() :
+ authors[author_components[0]] = author_components[1]
+ p.stdin.close()
+ if p.wait() != 0 :
+- print "Error"
++ print("Error")
+ sys.exit(-1)
+
+ # Get & save the avatars
+ if not os.path.isdir(output_dir) :
+ os.makedirs(output_dir)
+ for email, name in authors.items() :
+- print "Processing avatar for " + name + " <" + email + ">"
++ print("Processing avatar for " + name + " <" + email + ">")
+ filename = os.path.join(output_dir, name + ".png")
+ if os.path.isfile(filename) :
+- print "-> Already there. Skipping."
++ print("-> Already there. Skipping.")
+ continue
+
+ m = hashlib.md5()
+ m.update(email)
+ url = GRAVATAR_URL % {"id" : m.hexdigest()}
+- print "- Downloading " + url
++ print("- Downloading " + url)
+ f = urllib.urlopen(url)
+ input = None
+ if f.getcode() == 200 :
+ input = f.read()
+ f.close()
+ if input :
+- print "- Saving file " + filename
++ print("- Saving file " + filename)
+ f = open(filename, "w")
+ f.write(input)
+ f.close()
+ else :
+- print "- No Gravatar found"
++ print("- No Gravatar found")
+diff --git a/BuildTools/SCons/SConstruct b/BuildTools/SCons/SConstruct
+index 6d63d5bcf..e40bfb855 100644
+--- a/BuildTools/SCons/SConstruct
++++ b/BuildTools/SCons/SConstruct
+@@ -7,9 +7,9 @@ root = Dir("../..").abspath
+
+ # Override SConscript to handle tests
+ oldSConscript = SConscript
+-def SConscript(*arguments, **keywords) :
+- if not keywords.get("test_only", False) or env["TEST"] :
+- return apply(oldSConscript, arguments, keywords)
++def SConscript(*args, **kwargs) :
++ if not kwargs.get("test_only", False) or env["TEST"] :
++ return oldSConscript(*args, **kwargs)
+ env.SConscript = SConscript
+
+ ################################################################################
+@@ -142,11 +142,11 @@ conf = Configure(conf_env, custom_tests = {
+ })
+
+ if not conf.CheckCXX() or not conf.CheckCC() :
+- print "Error: You need a working compiler"
++ print("Error: You need a working compiler")
+ Exit(1)
+
+ if not conf.CheckCpp11Support() :
+- print "Error: You need a compiler with support for the C++11 standard"
++ print("Error: You need a compiler with support for the C++11 standard")
+ Exit(1)
+
+
+@@ -170,7 +170,7 @@ if (not zlib_okay) and conf.CheckLib("z") :
+ if zlib_okay :
+ env["ZLIB_FLAGS"] = zlib_flags
+ elif not env.get("zlib_bundled_enable", True) :
+- print "Error: Zlib not found and zlib_bundled_enable is false"
++ print("Error: Zlib not found and zlib_bundled_enable is false")
+ Exit(1)
+ else :
+ env["ZLIB_BUNDLED"] = True
+@@ -238,7 +238,7 @@ if not env.get("boost_force_bundled") and allLibsPresent :
+ # FIXME: Remove this workaround when UUID is available in most distros
+ env["BOOST_BUNDLED_UUID_ONLY"] = True
+ elif not env.get("boost_bundled_enable", True) :
+- print "Error: Boost not found and boost_bundled_enable is false"
++ print("Error: Boost not found and boost_bundled_enable is false")
+ Exit(1)
+ else :
+ env["BOOST_BUNDLED"] = True
+@@ -373,7 +373,7 @@ if env.get("try_expat", True) and not env.get("HAVE_LIBXML",0) :
+ # Bundled expat
+ bundledExpat = False
+ if not env.get("HAVE_EXPAT", 0) and not env.get("HAVE_LIBXML", 0) :
+- print "Expat or LibXML not found. Using bundled Expat"
++ print("Expat or LibXML not found. Using bundled Expat")
+ SConscript("#/3rdParty/Expat/SConscript")
+ env["HAVE_EXPAT"] = 1
+ env["EXPAT_BUNDLED"] = True
+@@ -424,10 +424,10 @@ if not env.get("HAVE_ICU", False) and not env.get("HAVE_LIBIDN", False) :
+ env["HAVE_LIBIDN"] = 1
+ env["LIBIDN_BUNDLED"] = 1
+ elif env.get("need_idn", True):
+- print "Error: ICU and LIBIDN not found, and libidn_bundled_enable is false"
++ print("Error: ICU and LIBIDN not found, and libidn_bundled_enable is false")
+ Exit(1)
+ else:
+- print "Proceeding without an IDN library because need_idn was false. This will break all internal binaries"
++ print("Proceeding without an IDN library because need_idn was false. This will break all internal binaries")
+
+ # Unbound
+ if env["unbound"] :
+@@ -514,7 +514,7 @@ if not env.get("lua_force_bundled", False) and conf.CheckLibWithHeader(env["lua_
+ if lua_version > 0 :
+ env["LUA_FLAGS"]["LUA_VERSION"] = str(lua_version // 100) + "." + str(lua_version % 100)
+ else :
+- print "Warning: Unable to determine Lua version. Not installing Lua libraries."
++ print("Warning: Unable to determine Lua version. Not installing Lua libraries.")
+ env["LUA_FLAGS"].update(lua_flags)
+ else :
+ env["LUA_BUNDLED"] = 1
+@@ -666,7 +666,7 @@ try :
+ except SCons.Errors.StopError:
+ env["HAVE_QT"] = False
+ except Exception as e:
+- print "Info: %s" % str(e)
++ print("Info: %s" % str(e))
+ env["HAVE_QT"] = False
+
+ ################################################################################
+@@ -688,7 +688,7 @@ try:
+ if not env.GetOption("clean") and env.get("install_git_hooks", True) :
+ env.Install("#/.git/hooks", Glob("#/BuildTools/Git/Hooks/*"))
+ except TypeError:
+- print "You seem to be using Swift in a Git submodule. Not installing hooks."
++ print("You seem to be using Swift in a Git submodule. Not installing hooks.")
+
+
+ ################################################################################
+@@ -752,7 +752,7 @@ modules.append("QA")
+ env["PROJECTS"] = [m for m in modules if m not in ["Documentation", "QA", "SwifTools"] and not m.startswith("3rdParty")]
+ for stage in ["flags", "build"] :
+ env["SCONS_STAGE"] = stage
+- SConscript(dirs = map(lambda x : root + "/" + x, modules))
++ SConscript(dirs = list(map(lambda x : root + "/" + x, modules)))
+
+ # SLOCCount
+ if ARGUMENTS.get("sloccount", False) :
+@@ -764,9 +764,9 @@ if ARGUMENTS.get("sloccount", False) :
+ # Print summary
+ ################################################################################
+
+-print
+-print " Build Configuration"
+-print " -------------------"
++print("")
++print(" Build Configuration")
++print(" -------------------")
+
+ parsers = []
+ if env.get("HAVE_LIBXML", 0):
+@@ -775,14 +775,14 @@ if env.get("HAVE_EXPAT", 0):
+ parsers.append("Expat")
+ if env.get("EXPAT_BUNDLED", False) :
+ parsers.append("(Bundled)")
+-print " Projects: " + ' '.join(env["PROJECTS"])
+-print ""
+-print " XML Parsers: " + ' '.join(parsers)
++print(" Projects: " + ' '.join(env["PROJECTS"]))
++print("")
++print(" XML Parsers: " + ' '.join(parsers))
+
+-print " TLS Support: " + (env.get("HAVE_OPENSSL",0) and "OpenSSL" or env.get("HAVE_SECURETRANSPORT",0) and "Secure Transport" or env.get("HAVE_SCHANNEL", 0) and "Schannel" or "Disabled")
+-print " DNSSD Support: " + (env.get("HAVE_BONJOUR") and "Bonjour" or (env.get("HAVE_AVAHI") and "Avahi" or "Disabled"))
+-print
++print(" TLS Support: " + (env.get("HAVE_OPENSSL",0) and "OpenSSL" or env.get("HAVE_SECURETRANSPORT",0) and "Secure Transport" or env.get("HAVE_SCHANNEL", 0) and "Schannel" or "Disabled"))
++print(" DNSSD Support: " + (env.get("HAVE_BONJOUR") and "Bonjour" or (env.get("HAVE_AVAHI") and "Avahi" or "Disabled")))
++print("")
+
+ if not GetOption("help") and not env.get("HAVE_OPENSSL", 0) and not env.get("HAVE_SCHANNEL", 0) and not env.get("HAVE_SECURETRANSPORT", 0):
+- print "Error: A working TLS backend is required. Please check the documentation for more information."
++ print("Error: A working TLS backend is required. Please check the documentation for more information.")
+ Exit(1)
+diff --git a/BuildTools/SCons/Tools/AppBundle.py b/BuildTools/SCons/Tools/AppBundle.py
+index 337e83f7c..31cfef109 100644
+--- a/BuildTools/SCons/Tools/AppBundle.py
++++ b/BuildTools/SCons/Tools/AppBundle.py
+@@ -34,7 +34,7 @@ def generate(env) :
+ """
+ for key, value in infoDict.items() :
+ plist += "<key>" + key + "</key>\n"
+- plist += "<string>" + value.encode("utf-8") + "</string>\n"
++ plist += "<string>" + value + "</string>\n"
+ if handlesXMPPURIs :
+ plist += """<key>CFBundleURLTypes</key>
+ <array>
+@@ -50,7 +50,7 @@ def generate(env) :
+
+ if sparklePublicDSAKey :
+ plist += "<key>SUPublicDSAKeyFile</key>"
+- plist += "<string>" + sparklePublicDSAKey.name.encode("utf-8") + "</string>"
++ plist += "<string>" + sparklePublicDSAKey.name + "</string>"
+ env.Install(resourcesDir, sparklePublicDSAKey)
+ plist += """</dict>
+ </plist>
+diff --git a/BuildTools/SCons/Tools/InstallWithSymLinks.py b/BuildTools/SCons/Tools/InstallWithSymLinks.py
+index 23d12ed80..495519210 100644
+--- a/BuildTools/SCons/Tools/InstallWithSymLinks.py
++++ b/BuildTools/SCons/Tools/InstallWithSymLinks.py
+@@ -74,21 +74,21 @@ def scons_copytree(src, dst, symlinks=False):
+ else:
+ shutil.copy2(srcname, dstname)
+ # XXX What about devices, sockets etc.?
+- except (IOError, os.error), why:
++ except (IOError, os.error) as why:
+ errors.append((srcname, dstname, str(why)))
+ # catch the CopytreeError from the recursive copytree so that we can
+ # continue with other files
+- except CopytreeError, err:
++ except CopytreeError as err:
+ errors.extend(err.args[0])
+ try:
+ shutil.copystat(src, dst)
+ except WindowsError:
+ # can't copy file access times on Windows
+ pass
+- except OSError, why:
++ except OSError as why:
+ errors.extend((src, dst, str(why)))
+ if errors:
+- raise CopytreeError, errors
++ raise CopytreeError(errors)
+
+
+ def symlinkBuilderImpl(target, source, env):
+diff --git a/BuildTools/SCons/Tools/qt4.py b/BuildTools/SCons/Tools/qt4.py
+index d5c14e20c..c97e751bc 100644
+--- a/BuildTools/SCons/Tools/qt4.py
++++ b/BuildTools/SCons/Tools/qt4.py
+@@ -137,23 +137,23 @@ class _Automoc:
+ out_sources = source[:]
+
+ for obj in source:
+- if isinstance(obj,basestring): # big kludge!
+- print "scons: qt4: '%s' MAYBE USING AN OLD SCONS VERSION AND NOT CONVERTED TO 'File'. Discarded." % str(obj)
++ if isinstance(obj,str): # big kludge!
++ print("scons: qt4: '%s' MAYBE USING AN OLD SCONS VERSION AND NOT CONVERTED TO 'File'. Discarded." % str(obj))
+ continue
+ if not obj.has_builder():
+ # binary obj file provided
+ if debug:
+- print "scons: qt: '%s' seems to be a binary. Discarded." % str(obj)
++ print("scons: qt: '%s' seems to be a binary. Discarded." % str(obj))
+ continue
+ cpp = obj.sources[0]
+ if not splitext(str(cpp))[1] in cxx_suffixes:
+ if debug:
+- print "scons: qt: '%s' is no cxx file. Discarded." % str(cpp)
++ print("scons: qt: '%s' is no cxx file. Discarded." % str(cpp) )
+ # c or fortran source
+ continue
+ #cpp_contents = comment.sub('', cpp.get_contents())
+ try:
+- cpp_contents = cpp.get_contents()
++ cpp_contents = str(cpp.get_contents())
+ except: continue # may be an still not generated source
+ h=None
+ for h_ext in header_extensions:
+@@ -163,12 +163,12 @@ class _Automoc:
+ h = find_file(hname, (cpp.get_dir(),), env.File)
+ if h:
+ if debug:
+- print "scons: qt: Scanning '%s' (header of '%s')" % (str(h), str(cpp))
++ print("scons: qt: Scanning '%s' (header of '%s')" % (str(h), str(cpp)))
+ #h_contents = comment.sub('', h.get_contents())
+- h_contents = h.get_contents()
++ h_contents = str(h.get_contents())
+ break
+ if not h and debug:
+- print "scons: qt: no header for '%s'." % (str(cpp))
++ print("scons: qt: no header for '%s'." % (str(cpp)))
+ if h and q_object_search.search(h_contents):
+ # h file with the Q_OBJECT macro found -> add moc_cpp
+ moc_cpp = env.Moc4(h)
+@@ -176,14 +176,14 @@ class _Automoc:
+ out_sources.append(moc_o)
+ #moc_cpp.target_scanner = SCons.Defaults.CScan
+ if debug:
+- print "scons: qt: found Q_OBJECT macro in '%s', moc'ing to '%s'" % (str(h), str(moc_cpp))
++ print("scons: qt: found Q_OBJECT macro in '%s', moc'ing to '%s'" % (str(h), str(moc_cpp)))
+ if cpp and q_object_search.search(cpp_contents):
+ # cpp file with Q_OBJECT macro found -> add moc
+ # (to be included in cpp)
+ moc = env.Moc4(cpp)
+ env.Ignore(moc, moc)
+ if debug:
+- print "scons: qt: found Q_OBJECT macro in '%s', moc'ing to '%s'" % (str(cpp), str(moc))
++ print("scons: qt: found Q_OBJECT macro in '%s', moc'ing to '%s'" % (str(cpp), str(moc)))
+ #moc.source_scanner = SCons.Defaults.CScan
+ # restore the original env attributes (FIXME)
+ objBuilder.env = objBuilderEnv
+@@ -344,7 +344,7 @@ def generate(env):
+ else:
+ result.append(itemPath)
+ return result
+- contents = node.get_contents()
++ contents = str(node.get_contents())
+ includes = [included[1] for included in qrcinclude_re.findall(contents)]
+ qrcpath = os.path.dirname(node.path)
+ dirs = [included for included in includes if os.path.isdir(os.path.join(qrcpath,included))]
+diff --git a/BuildTools/SCons/Tools/textfile.py b/BuildTools/SCons/Tools/textfile.py
+index cc5866693..c19bdf917 100644
+--- a/BuildTools/SCons/Tools/textfile.py
++++ b/BuildTools/SCons/Tools/textfile.py
+@@ -107,7 +107,7 @@ def _action(target, source, env):
+ # write the file
+ try:
+ fd = open(target[0].get_path(), "wb")
+- except (OSError,IOError), e:
++ except (OSError,IOError) as e:
+ raise SCons.Errors.UserError("Can't write target file %s" % target[0])
+ # separate lines by 'linesep' only if linesep is not empty
+ lsep = None
+diff --git a/BuildTools/SCons/Version.py b/BuildTools/SCons/Version.py
+index f215a5d6d..9021831f2 100644
+--- a/BuildTools/SCons/Version.py
++++ b/BuildTools/SCons/Version.py
+@@ -6,7 +6,7 @@ def getGitBuildVersion(root, project) :
+ return tag.rstrip()[len(project)+1:]
+ tag = git("describe --tags --match \"" + project + "-*\"", root)
+ if tag :
+- m = re.match(project + "-(.*)-(.*)-(.*)", tag)
++ m = re.match(project + "-(.*)-(.*)-(.*)", tag.decode('utf-8'))
+ if m :
+ return m.group(1) + "-dev" + m.group(2)
+ return None
+@@ -17,7 +17,7 @@ def git(cmd, root) :
+ gitVersion = p.stdout.read()
+ # error = p.stderr.read()
+ # if error:
+- # print "Git error: " + error
++ # print("Git error: " + error)
+ p.stdin.close()
+ if p.wait() == 0 :
+ return gitVersion
+@@ -163,7 +163,7 @@ class convertToWindowsVersionTest(unittest.TestCase):
+ ('3.0alpha-dev524', (3, 0, 524)),
+ ('3.0alpha-dev515', (3, 0, 515)),
+ ]
+- windowsVersionMapping = list(map(lambda (x,y): (x, convertToWindowsVersion(x)), versionStringsWithOldVersions))
++ windowsVersionMapping = list(map(lambda x,y: (x, convertToWindowsVersion(x)), versionStringsWithOldVersions))
+
+ def testThatBetaIsHigherThanAlpha(self):
+ self.assertTrue(convertToWindowsVersion("3.0beta0") > convertToWindowsVersion("3.0alpha0"))
+@@ -194,8 +194,8 @@ if __name__ == '__main__':
+ if len(sys.argv) == 1:
+ unittest.main()
+ elif len(sys.argv) == 2:
+- print convertToWindowsVersion(sys.argv[1])
++ print (convertToWindowsVersion(sys.argv[1]))
+ sys.exit(0)
+ else:
+- print "Error: Simply run the script without arguments or pass a single argument."
++ print ("Error: Simply run the script without arguments or pass a single argument.")
+ sys.exit(-1)
+diff --git a/BuildTools/scons2ninja.py b/BuildTools/scons2ninja.py
+index 6c77c8897..855a1339e 100755
+--- a/BuildTools/scons2ninja.py
++++ b/BuildTools/scons2ninja.py
+@@ -429,7 +429,7 @@ for line in f.stdout :
+ previous_filename = filename
+
+ if f.wait() != 0 :
+- print "Error calling '" + scons_generate_cmd + "'"
++ print("Error calling '" + scons_generate_cmd + "'")
+ print f.stderr.read()
+ exit(-1)
+
+diff --git a/Slimber/SConscript b/Slimber/SConscript
+index a41fe0b6d..fa5aa53b2 100644
+--- a/Slimber/SConscript
++++ b/Slimber/SConscript
+@@ -11,10 +11,10 @@ elif env["PLATFORM"] != "darwin" :
+ env["PROJECTS"].remove("Slimber")
+
+ if not "Slimber" in env["PROJECTS"] and env["SCONS_STAGE"] == "flags" :
+- print "Bonjour missing. Not building Slimber."
++ print("Bonjour missing. Not building Slimber.")
+
+ if not env.get("HAVE_QT", False) and "Slimber" in env["PROJECTS"] :
+- print "Qt missing. Not building Slimber."
++ print("Qt missing. Not building Slimber.")
+ env["PROJECTS"].remove("Slimber")
+
+ if "Slimber" in env["PROJECTS"] :
+diff --git a/Sluift/SConscript b/Sluift/SConscript
+index de9cab618..af54ece20 100644
+--- a/Sluift/SConscript
++++ b/Sluift/SConscript
+@@ -3,7 +3,7 @@ import Version, os.path
+ Import(["env"])
+
+ if env["SCONS_STAGE"] == "build" and not GetOption("help") and not env.get("HAVE_LUA", 0) :
+- print "Warning: Lua was not found. Sluift will not be built."
++ print("Warning: Lua was not found. Sluift will not be built.")
+ if "Sluift" in env["PROJECTS"] :
+ env["PROJECTS"].remove("Sluift")
+
+diff --git a/Swift/Packaging/SConscript b/Swift/Packaging/SConscript
+index 3aa791fa8..556c59652 100644
+--- a/Swift/Packaging/SConscript
++++ b/Swift/Packaging/SConscript
+@@ -25,5 +25,5 @@ if env["SCONS_STAGE"] == "build" :
+ target='$HELP2MAN_DEBIAN_DIR/swift-im.1', source='#/Swift/QtUI/swift-im',
+ action = Action('$HELP2MAN --no-discard-stderr -m "Swift Manual" -S "Swift" -n "swift-im" -N $SOURCE > $TARGET', cmdstr = "$HELP2MANSTR"))
+ else:
+- print "Enabled help2man but help2man is not in the PATH of the current environment."
++ print("Enabled help2man but help2man is not in the PATH of the current environment.")
+ Exit(1)
+diff --git a/Swift/QtUI/SConscript b/Swift/QtUI/SConscript
+index 54f0450c0..cc51340b3 100644
+--- a/Swift/QtUI/SConscript
++++ b/Swift/QtUI/SConscript
+@@ -22,7 +22,7 @@ Import("env")
+ myenv = env.Clone()
+
+ # Disable warnings that affect Qt
+-myenv["CXXFLAGS"] = filter(lambda x : x != "-Wfloat-equal", myenv["CXXFLAGS"])
++myenv["CXXFLAGS"] = list(filter(lambda x : x != "-Wfloat-equal", myenv["CXXFLAGS"]))
+ if "clang" in env["CC"] :
+ myenv.Append(CXXFLAGS = ["-Wno-float-equal", "-Wno-shorten-64-to-32", "-Wno-missing-prototypes", "-Wno-unreachable-code", "-Wno-disabled-macro-expansion", "-Wno-unused-private-field", "-Wno-extra-semi", "-Wno-duplicate-enum", "-Wno-missing-variable-declarations", "-Wno-conversion", "-Wno-undefined-reinterpret-cast"])
+
+@@ -496,16 +496,16 @@ if env["PLATFORM"] == "win32" :
+ def signToolAction(target = None, source = None, env = None):
+ signresult = 0
+ for x in range (1, 4) :
+- print "Attemping to sign the packages [%s]" % x
++ print("Attemping to sign the packages [%s]" % x)
+ signresult = env.Execute('signtool.exe sign /fd SHA256 /f "${SIGNTOOL_KEY_PFX}" /t "${SIGNTOOL_TIMESTAMP_URL}" /d "Swift Installer" ' + str(target[0]))
+ if signresult != 1 :
+ break
+ #If all 3 attemps to sign the package failed, stop the build.
+ if signresult == 1 :
+- print "Error: The build has failed to sign the installer package"
++ print("Error: The build has failed to sign the installer package")
+ Exit(1)
+ if signresult == 2 :
+- print "Signing was completed with warnings."
++ print("Signing was completed with warnings.")
+
+ myenv.AddPostAction(lightTask, signToolAction)
+
+diff --git a/Swift/SConscript b/Swift/SConscript
+index b211435ac..30b09e008 100644
+--- a/Swift/SConscript
++++ b/Swift/SConscript
+@@ -7,17 +7,17 @@ SConscript("Controllers/SConscript")
+ if env["SCONS_STAGE"] == "build" :
+ if not GetOption("help") and not env.get("HAVE_QT", 0) :
+ if "Swift" in env["PROJECTS"] :
+- print "Warning: Swift requires Qt. Not building the Swift Qt application."
++ print("Warning: Swift requires Qt. Not building the Swift Qt application.")
+ env["PROJECTS"].remove("Swift")
+ elif not GetOption("help") and env["target"] == "native" and "Swift" in env["PROJECTS"] :
+ try :
+ SConscript("QtUI/SConscript")
+ except Exception as e:
+- print "Warning: %s" % str(e)
++ print("Warning: %s" % str(e))
+ env["PROJECTS"].remove("Swift")
+ if "Swift" in env["PROJECTS"] and env["BOOST_1_64_DETECTED"] and not env.get("allow_boost_1_64") and not env.GetOption("clean") :
+ #Version 1.64 has some issues with the serialization of boost::optional, see https://svn.boost.org/trac10/ticket/13050
+- print "Boost 1.64 has been detected. It is not recommended to use this version due to a regression within the library. Swift has been removed from the current build. You can still use this version by setting allow_boost_1_64 to true, but recent chats and highlighting rules will reset."
++ print("Boost 1.64 has been detected. It is not recommended to use this version due to a regression within the library. Swift has been removed from the current build. You can still use this version by setting allow_boost_1_64 to true, but recent chats and highlighting rules will reset.")
+ env["PROJECTS"].remove("Swift")
+ if env["help2man"]:
+ SConscript("Packaging/SConscript")
+\ No newline at end of file
+diff --git a/BuildTools/SCons/Tools/Flags.py b/BuildTools/SCons/Tools/Flags.py
+index fe0cfcc54..7e0a9723b 100644
+--- a/BuildTools/SCons/Tools/Flags.py
++++ b/BuildTools/SCons/Tools/Flags.py
+@@ -4,7 +4,7 @@ def generate(env) :
+ def useFlags(env, flags) :
+ for flag in flags :
+ if flag in env :
+- env[flag] = env[flag] + flags[flag]
++ env[flag] = list(env[flag]) + flags[flag]
+ else :
+ env[flag] = flags[flag]
+ env.AddMethod(useFlags, "UseFlags")
+diff --git a/BuildTools/SCons/Tools/qt4.py b/BuildTools/SCons/Tools/qt4.py
+index d5c14e20c..a19e35e2a 100644
+--- a/BuildTools/SCons/Tools/qt4.py
++++ b/BuildTools/SCons/Tools/qt4.py
+@@ -46,7 +47,7 @@ import SCons.Tool
+ import SCons.Util
+ import SCons.SConf
+
+-class ToolQtWarning(SCons.Warnings.Warning):
++class ToolQtWarning(SCons.Warnings.SConsWarning):
+ pass
+
+ class GeneratedMocFileNotIncluded(ToolQtWarning):
+diff --git a/BuildTools/SCons/Tools/textfile.py b/BuildTools/SCons/Tools/textfile.py
+index cc5866693..ac9b83f9f 100644
+--- a/BuildTools/SCons/Tools/textfile.py
++++ b/BuildTools/SCons/Tools/textfile.py
+@@ -106,7 +106,7 @@ def _action(target, source, env):
+
+ # write the file
+ try:
+- fd = open(target[0].get_path(), "wb")
++ fd = open(target[0].get_path(), "w")
+ except (OSError,IOError) as e:
+ raise SCons.Errors.UserError("Can't write target file %s" % target[0])
+ # separate lines by 'linesep' only if linesep is not empty
diff --git a/network/swift/swift.SlackBuild b/network/swift/swift.SlackBuild
new file mode 100644
index 0000000000..632f294eb2
--- /dev/null
+++ b/network/swift/swift.SlackBuild
@@ -0,0 +1,125 @@
+#!/bin/bash
+
+# Slackware build script for swift
+
+# Copyright 2023, Lockywolf
+# 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=swift
+VERSION=${VERSION:-4.0.3}
+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"
+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.bz2
+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 -x
+patch -p1 -i $CWD/swift-4.0.2-boost-1.69-compatibility.patch
+#patch -p1 -i $CWD/swift-4.0.2-qt-5.11-compatibility.patch
+patch -p1 -i $CWD/swift-4.0.2-qt-5.15-compatibility.patch
+patch -p1 -i $CWD/swift-python3.patch
+patch -p1 -i $CWD/swift-gcc11.patch
+sed -i 's/fd.write(_do_subst(s, subs).encode("utf-8"))/fd.write(_do_subst(s, subs))/g' BuildTools/SCons/Tools/textfile.py
+scons \
+ max_jobs=1 \
+ optimize=1 \
+ debug=0 \
+ swiften_dll=1 \
+ cflags="${SLKCFLAGS} -fpermissive" \
+ cxxflags="${SLKCFLAGS} -fpermissive" \
+ install_root=$PKG/usr \
+ prefix=/usr \
+ SWIFT_INSTALLDIR=$PKG/usr \
+ SWIFTEN_INSTALLDIR=$PKG/usr \
+ $PKG \
+ Swift Swiften
+
+if [ -n "${LIBDIRSUFFIX}" ] ; then
+ mv $PKG/usr/lib $PKG/usr/lib${LIBDIRSUFFIX}
+fi
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ COPYING COPYING.gpl DEVELOPMENT.md README.md COPYING.dependencies COPYING.thirdparty Documentation/ \
+ $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/swift/swift.info b/network/swift/swift.info
new file mode 100644
index 0000000000..fd0b5baae3
--- /dev/null
+++ b/network/swift/swift.info
@@ -0,0 +1,10 @@
+PRGNAM="swift"
+VERSION="4.0.3"
+HOMEPAGE="https://swift.im"
+DOWNLOAD="https://swift.im/git/swift/snapshot/swift-4.0.3.tar.bz2"
+MD5SUM="a2e2f93c9b23f8af334910c42d519c7a"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="avahi"
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.swift_2023-09-23@lockywolf.net"
diff --git a/network/syncterm/0002-use-sched-yield-53264f2b.diff b/network/syncterm/0002-use-sched-yield-53264f2b.diff
new file mode 100644
index 0000000000..7b18f3659e
--- /dev/null
+++ b/network/syncterm/0002-use-sched-yield-53264f2b.diff
@@ -0,0 +1,38 @@
+diff --git a/3rdp/build/GNUmakefile b/3rdp/build/GNUmakefile
+index fdf54565834a6a418f7267f4f8bf2269b80eab41..804dd76feb1a2d3b0278686f5326f7c2302e5fde 100644
+--- a/3rdp/build/GNUmakefile
++++ b/3rdp/build/GNUmakefile
+@@ -67,7 +67,7 @@
+ $(CRYPT_IDIR): | $(3RDPODIR)
+ $(QUIET)$(IFNOTEXIST) mkdir $(CRYPT_IDIR)
+
+-$(CRYPTLIB_BUILD): $(3RDP_ROOT)$(DIRSEP)dist/cryptlib.zip $(3RDP_ROOT)$(DIRSEP)build/terminal-params.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw32-static.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ranlib.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-noasm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zz-country.patch $(3RDP_ROOT)$(DIRSEP)build/cl-algorithms.patch $(3RDP_ROOT)$(DIRSEP)build/cl-allow-duplicate-ext.patch $(3RDP_ROOT)$(DIRSEP)build/cl-macosx-minver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-endian.patch $(3RDP_ROOT)$(DIRSEP)build/cl-cryptodev.patch $(3RDP_ROOT)$(DIRSEP)build/cl-posix-me-gently.patch $(3RDP_ROOT)$(DIRSEP)build/cl-tpm-linux.patch $(3RDP_ROOT)$(DIRSEP)build/cl-PAM-noprompts.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zlib.patch $(3RDP_ROOT)$(DIRSEP)build/Dynamic-linked-static-lib.patch $(3RDP_ROOT)$(DIRSEP)build/SSL-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bigger-maxattribute.patch $(3RDP_ROOT)$(DIRSEP)build/cl-vcxproj.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw-vcver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-build-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-gcc-non-const-time-val.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-odbc.patch $(3RDP_ROOT)$(DIRSEP)build/cl-noasm-defines.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bn-noasm64-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-RSA-suites.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ECC-RSA.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC-harder.patch $(3RDP_ROOT)$(DIRSEP)build/cl-more-RSA-ECC-fixes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-DH-key-init.patch $(3RDP_ROOT)$(DIRSEP)build/cl-clear-GCM-flag.patch $(3RDP_ROOT)$(DIRSEP)build/cl-use-ssh-ctr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-list-ctr-modes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-incCtr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssl-suite-blocksizes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-tpm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-via-aes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ssh-ecc-ephemeral.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-just-use-cc.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-learn-numbers.patch | $(CRYPT_SRC) $(CRYPT_IDIR)
++$(CRYPTLIB_BUILD): $(3RDP_ROOT)$(DIRSEP)dist/cryptlib.zip $(3RDP_ROOT)$(DIRSEP)build/terminal-params.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw32-static.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ranlib.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-noasm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zz-country.patch $(3RDP_ROOT)$(DIRSEP)build/cl-algorithms.patch $(3RDP_ROOT)$(DIRSEP)build/cl-allow-duplicate-ext.patch $(3RDP_ROOT)$(DIRSEP)build/cl-macosx-minver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-endian.patch $(3RDP_ROOT)$(DIRSEP)build/cl-cryptodev.patch $(3RDP_ROOT)$(DIRSEP)build/cl-posix-me-gently.patch $(3RDP_ROOT)$(DIRSEP)build/cl-tpm-linux.patch $(3RDP_ROOT)$(DIRSEP)build/cl-PAM-noprompts.patch $(3RDP_ROOT)$(DIRSEP)build/cl-zlib.patch $(3RDP_ROOT)$(DIRSEP)build/Dynamic-linked-static-lib.patch $(3RDP_ROOT)$(DIRSEP)build/SSL-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bigger-maxattribute.patch $(3RDP_ROOT)$(DIRSEP)build/cl-vcxproj.patch $(3RDP_ROOT)$(DIRSEP)build/cl-mingw-vcver.patch $(3RDP_ROOT)$(DIRSEP)build/cl-win32-build-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-gcc-non-const-time-val.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-odbc.patch $(3RDP_ROOT)$(DIRSEP)build/cl-noasm-defines.patch $(3RDP_ROOT)$(DIRSEP)build/cl-bn-noasm64-fix.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-RSA-suites.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ECC-RSA.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC.patch $(3RDP_ROOT)$(DIRSEP)build/cl-prefer-ECC-harder.patch $(3RDP_ROOT)$(DIRSEP)build/cl-more-RSA-ECC-fixes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-DH-key-init.patch $(3RDP_ROOT)$(DIRSEP)build/cl-clear-GCM-flag.patch $(3RDP_ROOT)$(DIRSEP)build/cl-use-ssh-ctr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-list-ctr-modes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssh-incCtr.patch $(3RDP_ROOT)$(DIRSEP)build/cl-ssl-suite-blocksizes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-tpm.patch $(3RDP_ROOT)$(DIRSEP)build/cl-no-via-aes.patch $(3RDP_ROOT)$(DIRSEP)build/cl-fix-ssh-ecc-ephemeral.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-just-use-cc.patch $(3RDP_ROOT)$(DIRSEP)/build/cl-learn-numbers.patch $(3RDP_ROOT)/build/cl-linux-yield.patch | $(CRYPT_SRC) $(CRYPT_IDIR)
+ @echo Creating $@ ...
+ $(QUIET)-rm -rf $(CRYPT_SRC)/*
+ $(QUIET)unzip -oa $(3RDPDISTDIR)$(DIRSEP)cryptlib.zip -d $(CRYPT_SRC)
+@@ -112,6 +112,7 @@
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-fix-ssh-ecc-ephemeral.patch
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-just-use-cc.patch
+ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-learn-numbers.patch
++ $(QUIET)patch -p0 -d $(CRYPT_SRC) < cl-linux-yield.patch
+ ifeq ($(CC),mingw32-gcc)
+ $(QUIET)cd $(CRYPT_SRC) && env - PATH="$(PATH)" CC="$(CC)" AR="$(AR)" RANLIB="$(RANLIB)" make directories
+ $(QUIET)cd $(CRYPT_SRC) && env - PATH="$(PATH)" CC="$(CC)" AR="$(AR)" RANLIB="$(RANLIB)" make toolscripts
+diff --git a/3rdp/build/cl-linux-yield.patch b/3rdp/build/cl-linux-yield.patch
+new file mode 100644
+index 0000000000000000000000000000000000000000..8cdfc8eafd3fd85f39bf0f8b519f25a31078fee4
+--- /dev/null
++++ b/3rdp/build/cl-linux-yield.patch
+@@ -0,0 +1,11 @@
++--- old/thread.h 2021-10-19 12:34:08.766649958 -0700
+++++ kernel/thread.h 2021-10-19 12:34:43.794072316 -0700
++@@ -3005,7 +3005,7 @@
++ #endif /* Slowaris 5.7 / 7.x or newer */
++ #elif defined( _AIX ) || defined( __Android__ ) || defined( __CYGWIN__ ) || \
++ ( defined( __hpux ) && ( OSVERSION >= 11 ) ) || \
++- defined( __NetBSD__ ) || defined( __QNX__ ) || defined( __UCLIBC__ )
+++ defined( __NetBSD__ ) || defined( __QNX__ ) || defined( __UCLIBC__ ) || defined(__linux__)
++ #define THREAD_YIELD() sched_yield()
++ #elif defined( __XMK__ )
++ /* The XMK underlying scheduling object is the process context, for which
diff --git a/network/syncterm/README b/network/syncterm/README
new file mode 100644
index 0000000000..1a86f0e9f7
--- /dev/null
+++ b/network/syncterm/README
@@ -0,0 +1,22 @@
+syncterm (BBS-oriented terminal emulator)
+
+syncterm is a terminal emulator that connects to a host via
+dialup modem, raw TCP, telnet, ssh, or rsync. Its user interface is
+similar to ProComm. It's intended for use with BBSes (bulletin board
+systems), and includes support for nonstandard ASCII variants such as
+Atari 8-bit (ATASCII), Commodore 8-bit (PETSCII), and "IBM ANSI" as
+used by MS-DOS.
+
+syncterm can also be used as a local terminal (e.g. like xterm),
+by creating a dialing list entry with address "shell:", command
+"/bin/bash -login" or similar.
+
+Some of the documentation is found only on the website:
+http://syncterm.bbsdev.net/
+
+More information on BBSes can be found here, along with an up-to-date
+list of telnet BBSes:
+https://www.telnetbbsguide.com/
+
+Atari users can download a sycterm.lst full of Atari BBSes here:
+http://sfhqbbs.org/ataribbslist.php
diff --git a/network/syncterm/doinst.sh b/network/syncterm/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/syncterm/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/syncterm/extract-icns.sh b/network/syncterm/extract-icns.sh
new file mode 100644
index 0000000000..07c3f41873
--- /dev/null
+++ b/network/syncterm/extract-icns.sh
@@ -0,0 +1,55 @@
+#!/bin/sh
+
+# 20230728 bkw: Extract PNG icons from a mac .icns file, for use
+# with a SlackBuilds.org script.
+
+# They get written to a directory called icons/, with filenames like
+# 32.png, 64.png, etc (the pixel size). After extracting them, you
+# should 'git add icons/*' if you're using git (otherwise, include
+# icons/ in your submission tarball).
+
+# The SlackBuild should include code to install them; see
+# syncterm.SlackBuild for an example. Don't forget to include a
+# doinst.sh.
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# Feel free to use this as part of your own SlackBuild.
+
+# Note that this script shouldn't be included in the package!
+
+die() {
+ echo "$( basename $0 ): $@" 1>&2
+ exit 1
+}
+
+if [ "$1" = "" -o "$2" != "" ]; then
+ die "one argument required, path to *.icns file."
+fi
+
+if ! which icns2png &>/dev/null; then
+ die "icns2png not found in \$PATH. Install libicns."
+fi
+
+if [ -e icons ]; then
+ die "icons/ already exists, not overwriting."
+fi
+
+mkdir -p icons
+cd icons || die "can't create or cd to icons/ dir."
+
+icns2png -x -d 32 "$1" || die "can't extract any icons."
+count=0
+for png in *x32.png; do
+ [ -e $png ] || break
+ size="$( echo $png | cut -d_ -f2 | cut -dx -f1 )"
+ mv $png $size.png
+ : $(( count++ ))
+done
+
+if [ "$count" = "0" ]; then
+ rm -rf ../icons
+ die "failed to extract any icons."
+fi
+
+echo "extracted $count icons:"
+ls
diff --git a/network/syncterm/icons/128.png b/network/syncterm/icons/128.png
new file mode 100644
index 0000000000..eacbee1f6f
--- /dev/null
+++ b/network/syncterm/icons/128.png
Binary files differ
diff --git a/network/syncterm/icons/16.png b/network/syncterm/icons/16.png
new file mode 100644
index 0000000000..0be1847afa
--- /dev/null
+++ b/network/syncterm/icons/16.png
Binary files differ
diff --git a/network/syncterm/icons/32.png b/network/syncterm/icons/32.png
new file mode 100644
index 0000000000..887b027dfd
--- /dev/null
+++ b/network/syncterm/icons/32.png
Binary files differ
diff --git a/network/syncterm/icons/48.png b/network/syncterm/icons/48.png
new file mode 100644
index 0000000000..df9d91f83c
--- /dev/null
+++ b/network/syncterm/icons/48.png
Binary files differ
diff --git a/network/syncterm/manpage.diff b/network/syncterm/manpage.diff
new file mode 100644
index 0000000000..7bffad39db
--- /dev/null
+++ b/network/syncterm/manpage.diff
@@ -0,0 +1,55 @@
+diff -Naur syncterm-1.1/src/syncterm/syncterm.man.in syncterm-1.1.patched/src/syncterm/syncterm.man.in
+--- syncterm-1.1/src/syncterm/syncterm.man.in 2020-06-26 19:40:21.000000000 -0400
++++ syncterm-1.1.patched/src/syncterm/syncterm.man.in 2023-07-27 16:48:25.575523339 -0400
+@@ -1,11 +1,14 @@
+-.TH SYNCTERM 1 "27 May 2007"
++.TH SYNCTERM 1 "27 Jul 2023"
+ .SH NAME
+ syncterm \- BBS terminal program
+ .SH SYNOPSIS
+ \fBsyncterm\fP [\-e\fIdly\fP] [\-i\fIifc\fP] [\-l\fIlns\fP] [\-t|\-r|\-h] [\-s] [\fIURL\fP]
+ .SH DESCRIPTION
+ \fBSyncTERM\fP is a terminal program designed specifically for connecting to
+-a Bulletin Board System (\fBBBS\fP)
++a Bulletin Board System (\fBBBS\fP).
++.LP
++[\fIURL\fP] may be an actual URL, a hostname, or the name of
++an entry from the dialing list.
+ .SS Options
+ .IP \fB\-e\fIdly\fR
+ Specify the "escape delay" in milliseconds for curses(3) mode. Since curses
+@@ -96,7 +99,7 @@
+ Specifies the default scheme for \fIURL\fP to be telnet://
+ .IP \fB\-r\fP
+ Specifies the default scheme for \fIURL\fP to be rlogin://
+-.IP \fB\-r\fP
++.IP \fB\-h\fP
+ Specifies the default scheme for \fIURL\fP to be ssh://
+ .IP \fB\-4\fP
+ Only resolve IPv4 addresses
+@@ -112,7 +115,7 @@
+ run-time linking is employed using dlopen(). Using this, it is possible to
+ build a version which will use SDL, and X11 if they are present, but
+ not fail to run if they are not.
+-.SH TEXT MODE CAVAETS
++.SH TEXT MODE CAVEATS
+ When running in one of the text modes such as curses or ANSI, many of the
+ control functions are modified since there is no reliable way to use extra
+ modifier keys. As a result, CTRL-S and CTRL-Q can not be sent to the remote
+@@ -130,12 +133,12 @@
+ a traditional screen mode. As such, filler will be added around the terminal
+ screen. For some display sizes, unpredictable results may occur.
+ .SH FILES
+-.IP \fC%%DESTDIR%%%%PREFIX%%/etc/syncterm.lst\fR
+-The system wide dialing directory.
++.IP /etc/syncterm.lst\fR
++The system wide dialing directory [note: doesn't seem to be used in SyncTERM 1.1].
+ .IP \fC~/.syncterm/syncterm.lst\fR
+-The users dialing directory
++The user's dialing directory
+ .IP \fC~/.syncterm/syncterm.ini\fR
+-The users SyncTERM configuration file
++The user's SyncTERM configuration file
+ .IP \fClibSDL.so\fR
+ When this file exists in the library path, SyncTERM will support the use of SDL
+ for input and output. This file is part of the Simple Directmedia Layer
diff --git a/network/syncterm/slack-desc b/network/syncterm/slack-desc
new file mode 100644
index 0000000000..d0822aa581
--- /dev/null
+++ b/network/syncterm/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------------------------------------------------------|
+syncterm: syncterm (BBS-oriented terminal emulator)
+syncterm:
+syncterm: syncterm is a terminal emulator that connects to a host via
+syncterm: dialup modem, raw TCP, telnet, ssh, or rsync. Its user interface is
+syncterm: similar to ProComm. It's intended for use with BBSes (bulletin board
+syncterm: systems), and includes support for nonstandard ASCII variants such as
+syncterm: Atari 8-bit (ATASCII), Commodore 8-bit (PETSCII), and "IBM ANSI" as
+syncterm: used by MS-DOS.
+syncterm:
+syncterm:
+syncterm:
diff --git a/network/syncterm/syncterm.SlackBuild b/network/syncterm/syncterm.SlackBuild
new file mode 100644
index 0000000000..4f746b2568
--- /dev/null
+++ b/network/syncterm/syncterm.SlackBuild
@@ -0,0 +1,159 @@
+#!/bin/bash
+
+# Slackware build script for syncterm
+
+# Written by B. Watson (urchlay@slackware.uk)
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# Issues:
+# 1. Figure out why shell: doesn't work on the command line (though
+# it does, with the ^D "quick connect" option, or by adding it to
+# the dialing list).
+# 2. How do we use /etc/syncterm.lst? strace shows that syncterm reads it,
+# but entries there don't show up in the dialing list (not even if there's
+# no user list). If I could get the system list to work, I'd include an
+# entry there for a local shell (to work around issue #1). But probably
+# nobody much cares about using this as an xterm or konsole replacement...
+# Neither of these issues are going to prevent me from submitting this.
+
+# Note: phigan on #atari tells me they're "almost ready" to release 1.2,
+# so this may get updated soon.
+
+# 20240218 bkw: BUILD=2
+# - add compile fix for -current.
+
+cd $(dirname $0) ; CWD=$(pwd)
+
+PRGNAM=syncterm
+VERSION=${VERSION:-1.1}
+BUILD=${BUILD:-2}
+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" ]; 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-src.tgz
+cd $PRGNAM-$VERSION
+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 {} +
+
+# Man page: Fix path to dialing list and a couple typos. The path
+# baked into the binary really is /etc/syncterm.lst (not /usr/etc)...
+# although I don't see a way to make syncterm actually use the
+# system-wide dialing list.
+patch -p1 < $CWD/manpage.diff
+
+# 20240218 bkw: fix compilation on -current (or so I am assured). Doesn't
+# hurt anything on 15.0. Patch originally from:
+# https://raw.github.com/nullman/config/master/common/.nixos/pkgs/syncterm/0002-use-sched-yield-53264f2b.diff
+# ...brought to my attention by Joshua E. Roybal via email.
+patch -p1 < $CWD/0002-use-sched-yield-53264f2b.diff
+
+# This is a big hassle: -O3 is hardcoded in a makefile... which is
+# inside a zip file. To force our flags, we have to extract the zip
+# file, mod the makefile, then re-zip it. Using -0 with zip means
+# "store" (for speed).
+cd 3rdp/dist
+unzip -oa cryptlib.zip
+rm -f cryptlib.zip
+sed -i "s,-O3,$SLKCFLAGS," makefile
+zip -0r cryptlib.zip *
+cd -
+
+# Rest of the flags:
+sed -i "s,-O2,$SLKCFLAGS," src/build/Common.gmake
+sed -i "s,-O3,\"$SLKCFLAGS\"," 3rdp/build/GNUmakefile
+
+# Top-level source directory:
+cd src/$PRGNAM
+
+# Lots of make options here:
+# - RELEASE=1 means binary already stripped, man page already gzipped.
+# - WITHOUT_PORTAUDIO=1 to avoid a hidden dependency on portaudio. I
+# see no advantage to using portaudio anyway (SDL audio works fine).
+# - INSTALL_DATA: install man page with usual Slackware permissions.
+# - SRC_ROOT has to be set because the makefile is dumb...
+# - Use -j1 as the compile always fails if -jN where N>1.
+make -j1 \
+ PREFIX=/usr \
+ MANPREFIX=/usr \
+ SYSTEM_LIST_DIR=/etc \
+ SRC_ROOT="$( realpath .. )" \
+ USE_SDL=1 \
+ USE_SDL_AUDIO=1 \
+ WITHOUT_PORTAUDIO=1 \
+ VERBOSE=1 \
+ RELEASE=1 \
+ DESTDIR=$PKG \
+ INSTALL_DATA="install -m 0644" \
+ all install
+
+# Compile the terminfo entries. Have to run the binary we just built,
+# let's not do it as root.
+su nobody -s /bin/sh -c "$PKG/usr/bin/$PRGNAM -T" | \
+ tic -o $PKG/usr/share/terminfo -
+
+# The 64x64 icon was installed by 'make install', above.
+# Other icons extracted from the Mac .icns file:
+# sh extract-icns.sh /tmp/SBo/syncterm-1.1/src/syncterm/SyncTERM.icns
+# If you're copying this code for use in your own SlackBuild, please
+# don't change the "cat" to "cp -a", below: files copied from $CWD
+# might be owned by anybody (not necessarily root), and have wrong
+# permissions; using "cat >" takes care of both.
+# Also, please don't rewrite this to call icns2png in your script.
+# Otherwise you'd have to add libicns to REQUIRES.
+for png in $CWD/icons/*.png; do
+ px="$( basename $png | cut -d. -f1 )"
+ size=${px}x${px}
+ dir=$PKG/usr/share/icons/hicolor/$size/apps
+ mkdir -p $dir
+ cat $png > $dir/$PRGNAM.png
+done
+
+mkdir -p $PKG/usr/share/pixmaps
+ln -s ../icons/hicolor/48x48/apps/$PRGNAM.png $PKG/usr/share/pixmaps/$PRGNAM.png
+
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a Install-Mozilla.txt CHANGES LICENCE gpl.txt $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$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/syncterm/syncterm.info b/network/syncterm/syncterm.info
new file mode 100644
index 0000000000..188f5794d3
--- /dev/null
+++ b/network/syncterm/syncterm.info
@@ -0,0 +1,10 @@
+PRGNAM="syncterm"
+VERSION="1.1"
+HOMEPAGE="http://syncterm.bbsdev.net/"
+DOWNLOAD="https://downloads.sourceforge.net/project/syncterm/syncterm/syncterm-1.1/syncterm-1.1-src.tgz"
+MD5SUM="f528a1fdbe87a69a52582582d99e4032"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/syncthing/syncthing.SlackBuild b/network/syncthing/syncthing.SlackBuild
index d2d0625b7b..c95bf6a272 100644
--- a/network/syncthing/syncthing.SlackBuild
+++ b/network/syncthing/syncthing.SlackBuild
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=syncthing
-VERSION=${VERSION:-1.21.0}
+VERSION=${VERSION:-1.27.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -101,10 +101,10 @@ cat $CWD/syncthing.logrotate > $PKG/etc/logrotate.d/syncthing.new
mkdir -p -m 750 $PKG/var/lib/syncthing/config
mkdir -p -m 750 $PKG/var/log/syncthing
mkdir -p -m 750 $PKG/var/run/syncthing
-chown -R syncthing.syncthing $PKG/var/{lib,run,log}/syncthing
+chown -R syncthing:syncthing $PKG/var/{lib,run,log}/syncthing
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a *.txt extra/*.pdf $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a *.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/syncthing/syncthing.info b/network/syncthing/syncthing.info
index 24d4c51d82..5a459b7d92 100644
--- a/network/syncthing/syncthing.info
+++ b/network/syncthing/syncthing.info
@@ -1,10 +1,10 @@
PRGNAM="syncthing"
-VERSION="1.21.0"
+VERSION="1.27.3"
HOMEPAGE="https://syncthing.net"
-DOWNLOAD="https://github.com/syncthing/syncthing/releases/download/v1.21.0/syncthing-linux-386-v1.21.0.tar.gz"
-MD5SUM="29e3b0f0bb68edfeb2aed66b89cd62d6"
-DOWNLOAD_x86_64="https://github.com/syncthing/syncthing/releases/download/v1.21.0/syncthing-linux-amd64-v1.21.0.tar.gz"
-MD5SUM_x86_64="fce0153bcd2c75b7a0c83acbf45a50b5"
+DOWNLOAD="https://github.com/syncthing/syncthing/releases/download/v1.27.3/syncthing-linux-386-v1.27.3.tar.gz"
+MD5SUM="77e848ed29495480fd2b5da39a5c0b78"
+DOWNLOAD_x86_64="https://github.com/syncthing/syncthing/releases/download/v1.27.3/syncthing-linux-amd64-v1.27.3.tar.gz"
+MD5SUM_x86_64="e24685e31b730d62eadc50b26abbc7e9"
REQUIRES=""
MAINTAINER="Sebastian Arcus"
-EMAIL="s.arcus@open-t.co.uk"
+EMAIL="s [dot] arcus [at] open-t [dot] co [dot] uk"
diff --git a/network/synergy/synergy.SlackBuild b/network/synergy/synergy.SlackBuild
index e3347b1e44..83d53f68fc 100644
--- a/network/synergy/synergy.SlackBuild
+++ b/network/synergy/synergy.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for "synergy".
# Copyright 2013-2016 Marcel Saegebarth <marc@mos6581.de>
-# Copyright 2020 Christoph Willing Brisbane, Australia
+# Copyright 2020-2023 Christoph Willing Brisbane, Australia
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -29,7 +29,7 @@ cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=synergy
SRCNAM=synergy-core
-VERSION=${VERSION:-1.14.3.5}
+VERSION=${VERSION:-1.14.6.19}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -94,34 +94,25 @@ cd build
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
- -DLIB_SUFFIX=${LIBDIRSUFFIX} \
- -DMAN_INSTALL_DIR=/usr/man \
-DBUILD_TESTS=false \
-DSYNERGY_VERSION_STAGE:STRING=stable \
-DCMAKE_BUILD_TYPE=Release ..
make
make install/strip DESTDIR=$PKG
+ install -s -m 0755 bin/synergyd $PKG/usr/bin/
cd ..
# installation not implemented
mkdir -p $PKG/usr/bin $PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/man/man1 \
$PKG/usr/share/icons/hicolor/256x256 $PKG/usr/share/applications
-#for file in synergy synergyc synergyd synergys syntool usynergy ; do
-# install -s -m 0755 $TMP/$SRCNAM-$VERSION-stable/bin/$file $PKG/usr/bin
-#done
+for file in synergy.conf.example synergy.conf.example-advanced synergy.conf.example-basic ; do
+ install -m 0644 $TMP/$SRCNAM-$VERSION-stable/doc/$file $PKG/usr/doc/$PRGNAM-$VERSION
+done
-#for file in synergy.conf.example synergy.conf.example-advanced synergy.conf.example-basic ; do
-# install -m 0644 $TMP/$SRCNAM-$VERSION-stable/doc/$file $PKG/usr/doc/$PRGNAM-$VERSION
-#done
-
-#for file in COMPILE ChangeLog INSTALL LICENSE README ; do
-# install -m 0644 $TMP/$SRCNAM-$VERSION-stable/$file $PKG/usr/doc/$PRGNAM-$VERSION
-#done
-
-#for file in synergyc.man synergys.man ; do
-# install -m 0644 $TMP/$SRCNAM-$VERSION-stable/doc/$file $PKG/usr/man/man1
-#done
+for file in synergyc.man synergys.man ; do
+ install -m 0644 $TMP/$SRCNAM-$VERSION-stable/doc/$file $PKG/usr/man/man1
+done
find $PKG/usr/man/man1 -type f -name "*.man" -exec rename '.man' '.1' {} \;
find $PKG/usr/man/man1 -type f -name "*.?" -exec gzip -9f {} \;
@@ -131,6 +122,9 @@ $PKG/usr/share/icons/hicolor/256x256
install -D -m 0644 $TMP/$SRCNAM-$VERSION-stable/res/synergy.desktop \
$PKG/usr/share/applications
+for file in ChangeLog LICENSE README.md ; do
+ install -m 0644 $TMP/$SRCNAM-$VERSION-stable/$file $PKG/usr/doc/$PRGNAM-$VERSION
+done
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/synergy/synergy.info b/network/synergy/synergy.info
index 9888752a2b..f8499de372 100644
--- a/network/synergy/synergy.info
+++ b/network/synergy/synergy.info
@@ -1,8 +1,8 @@
PRGNAM="synergy"
-VERSION="1.14.3.5"
+VERSION="1.14.6.19"
HOMEPAGE="http://synergy-project.org/"
-DOWNLOAD="https://github.com/symless/synergy-core/archive/1.14.3.5-stable/synergy-core-1.14.3.5-stable.tar.gz"
-MD5SUM="ec05db383439cf406a57ab5d18b5d444"
+DOWNLOAD="https://github.com/symless/synergy-core/archive/1.14.6.19-stable/synergy-core-1.14.6.19-stable.tar.gz"
+MD5SUM="7a992527f20c874a3c73fec20feace28"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="avahi pugixml"
diff --git a/network/tahoe-lafs/README b/network/tahoe-lafs/README
deleted file mode 100644
index a8b2c6de9d..0000000000
--- a/network/tahoe-lafs/README
+++ /dev/null
@@ -1,16 +0,0 @@
-Tahoe, the Least-Authority File Store.
-
-Tahoe-LAFS is a secure, decentralized, file store. All of the source
-code is available under a choice of two Free Software, Open Source
-licences.
-
-The file store is encrypted and spread over multiple peers in such a way
-that it remains available even when some of the peers are unavailable,
-malfunctioning, or malicious.
-
-Tahoe-LAFS now features native Tor and I2P support.
-
-Optional Dependency
-
-In case you'd like proper documentation to be build Sphinx needs to be
-installed at build time.
diff --git a/network/tahoe-lafs/tahoe-lafs.SlackBuild b/network/tahoe-lafs/tahoe-lafs.SlackBuild
deleted file mode 100644
index cdd46e5491..0000000000
--- a/network/tahoe-lafs/tahoe-lafs.SlackBuild
+++ /dev/null
@@ -1,109 +0,0 @@
-#!/bin/bash
-
-# Slackware build script for tahoe-lafs
-
-# Copyright 2009 Marco Bonetti <sid77@slackware.it>
-# Copyright 2011-2017 Markus Reichelt, Aachen, 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=tahoe-lafs
-VERSION=${VERSION:-1.12.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}
-
-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.bz2
-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 {} \;
-
-python setup.py install --root=$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
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION $PKG/usr/man/man1
-cp -a COPYING.* *.txt NEWS.* README.* CREDITS docs misc $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
-
-mv $PKG/usr/doc/$PRGNAM-$VERSION/docs/man/man1/tahoe.1 $PKG/usr/man/man1
-gzip -9 $PKG/usr/man/man1/tahoe.1
-rm -drf $PKG/usr/doc/$PRGNAM-$VERSION/docs/man
-
-if [ -e /usr/bin/sphinx-build ]; then
- cd $TMP/$PRGNAM-$VERSION/docs
- make html
- cp -a _build/html $PKG/usr/doc/$PRGNAM-$VERSION
- rm $PKG/usr/doc/$PRGNAM-$VERSION/html/{.buildinfo,objects.inv}
- rm -drf $PKG/usr/doc/$PRGNAM-$VERSION/docs
- rm -drf $PKG/usr/doc/$PRGNAM-$VERSION/html/_sources
-fi
-
-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/tahoe-lafs/tahoe-lafs.info b/network/tahoe-lafs/tahoe-lafs.info
deleted file mode 100644
index 059c98d777..0000000000
--- a/network/tahoe-lafs/tahoe-lafs.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="tahoe-lafs"
-VERSION="1.12.1"
-HOMEPAGE="https://tahoe-lafs.org/trac/tahoe-lafs"
-DOWNLOAD="https://tahoe-lafs.org/downloads/old/tahoe-lafs-1.12.1.tar.bz2"
-MD5SUM="617d9f33705570ae79795835dff8ff0d"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="txtorcon txi2p simplejson python2-pycrypto pycryptopp zfec service_identity foolscap Nevow"
-MAINTAINER="Markus Reichelt"
-EMAIL="slackbuilds@mareichelt.de"
diff --git a/network/tailscale/README b/network/tailscale/README
new file mode 100644
index 0000000000..a040087e56
--- /dev/null
+++ b/network/tailscale/README
@@ -0,0 +1,18 @@
+Tailscale is a zero config VPN for building secure networks.
+Install on any device in minutes. Remote access from any
+network or physical location.
+
+The service has two parts: tailscaled (daemon) and tailscale.
+Both must run. I use this from a terminal:
+
+daemon --user root tailscaled $exec && tailscale up
+
+The first time, a url will pop up to authenticate.
+
+Once the daemon is running, there's no need to restart it
+until your next session. You can simply run
+
+tailscale up
+tailscale down
+
+to connect and disconnect.
diff --git a/network/tailscale/doinst.sh b/network/tailscale/doinst.sh
new file mode 100644
index 0000000000..57c1cdfc42
--- /dev/null
+++ b/network/tailscale/doinst.sh
@@ -0,0 +1,8 @@
+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
+
diff --git a/network/tailscale/slack-desc b/network/tailscale/slack-desc
new file mode 100644
index 0000000000..572266ea2c
--- /dev/null
+++ b/network/tailscale/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------------------------------------------------------|
+tailscale: tailscale (vpn service)
+tailscale:
+tailscale: Tailscale is a zero config VPN for building secure networks. Install
+tailscale: on any device in minutes. Remote access from any network or physical
+tailscale: location.
+tailscale:
+tailscale:
+tailscale:
+tailscale:
+tailscale: Homepage: https://tailscale.com/
+tailscale:
diff --git a/network/tailscale/tailscale.SlackBuild b/network/tailscale/tailscale.SlackBuild
new file mode 100644
index 0000000000..638c7df5c1
--- /dev/null
+++ b/network/tailscale/tailscale.SlackBuild
@@ -0,0 +1,108 @@
+#!/bin/bash
+
+# Slackware build script for brave-browser
+
+# Copyright 2023-2024 Andrew Payne <phalange@komputermatrix.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=tailscale
+DAEMON=tailscaled
+VERSION=${VERSION:-1.62.1}
+ARCHSTR=amd64
+BINDIR=$PRGNAM"_"$VERSION"_"$ARCHSTR
+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}
+
+# Abort build if architecture is not 64-bit.
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH is not supported."
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -p $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+tar -xf $CWD/$BINDIR.tgz
+tar -xf $CWD/$PRGNAM-$VERSION.tar.gz
+
+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 $PKG/etc/default/$DAEMON
+cp -a $TMP/$PRGNAM-$VERSION/$BINDIR/systemd/$DAEMON.defaults $PKG/etc/default/$DAEMON/
+
+mkdir -p $PKG/lib/systemd/system
+cp -a $TMP/$PRGNAM-$VERSION/$BINDIR/systemd/$DAEMON.service $PKG/lib/systemd/system/
+
+mkdir -p $PKG/opt/$PRGNAM
+cp -a $TMP/$PRGNAM-$VERSION/$BINDIR/$DAEMON $PKG/opt/$PRGNAM/
+
+mkdir -p $PKG/usr/{bin,sbin}
+ln -s /opt/$PRGNAM/$DAEMON $PKG/usr/sbin/$DAEMON
+cp -a $TMP/$PRGNAM-$VERSION/$BINDIR/$PRGNAM $PKG/opt/$PRGNAM/
+ln -s /opt/$PRGNAM/$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
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp -a \
+ $TMP/$PRGNAM-$VERSION/$PRGNAM-$VERSION/{AUTHORS,CODE_OF_CONDUCT.md,LICENSE,PATENTS,README.md,SECURITY.md} \
+ $PKG/usr/doc/$PRGNAM-$VERSION/
+
+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/tailscale/tailscale.info b/network/tailscale/tailscale.info
new file mode 100644
index 0000000000..ad384e2488
--- /dev/null
+++ b/network/tailscale/tailscale.info
@@ -0,0 +1,12 @@
+PRGNAM="tailscale"
+VERSION="1.62.1"
+HOMEPAGE="https://tailscale.com/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://pkgs.tailscale.com/stable/tailscale_1.62.1_amd64.tgz \
+ https://github.com/tailscale/tailscale/archive/refs/tags/v1.62.1/tailscale-1.62.1.tar.gz"
+MD5SUM_x86_64="5e8a3b17eddd4954d165c005a9c09967 \
+ 7c8acd55eb0b85c05b6b80568a39b9d2"
+REQUIRES=""
+MAINTAINER="Andrew Payne"
+EMAIL="phalange@komputermatrix.com"
diff --git a/network/tcpbench/README b/network/tcpbench/README
new file mode 100644
index 0000000000..3f3179452c
--- /dev/null
+++ b/network/tcpbench/README
@@ -0,0 +1,2 @@
+OpenBSD tcpbench ported to to GNU/Linux. TCP/UDP benchmarking and
+measurement tool for unidirectional streams.
diff --git a/network/sslstrip/slack-desc b/network/tcpbench/slack-desc
index 9c9d6bc6d4..3cbc87e161 100644
--- a/network/sslstrip/slack-desc
+++ b/network/tcpbench/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-sslstrip: sslstrip (HTTPS ssl stripping)
-sslstrip:
-sslstrip: This tool provides a demonstration of the HTTPS stripping attacks.
-sslstrip: It will transparently hijack HTTP traffic on a network, watch for
-sslstrip: HTTPS links and redirects, then map those links into either
-sslstrip: look-alike HTTP links or homograph-similar HTTPS links.
-sslstrip:
-sslstrip: Homepage: http://www.thoughtcrime.org/software/sslstrip/
-sslstrip:
-sslstrip:
-sslstrip:
+tcpbench: tcpbench (TCP/UDP benchmark)
+tcpbench:
+tcpbench: OpenBSD tcpbench ported to to GNU/Linux. TCP/UDP benchmarking and
+tcpbench: measurement tool for unidirectional streams.
+tcpbench:
+tcpbench:
+tcpbench:
+tcpbench:
+tcpbench:
+tcpbench: https://github.com/bluhm/tcpbench-portable
+tcpbench:
diff --git a/network/tcpbench/tcpbench.SlackBuild b/network/tcpbench/tcpbench.SlackBuild
new file mode 100644
index 0000000000..2a1c810f23
--- /dev/null
+++ b/network/tcpbench/tcpbench.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Slackware build script for tcpbench
+
+# Copyright 2024 Alexander Bluhm, Germany
+# 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=tcpbench
+VERSION=${VERSION:-2.02}
+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" ]; 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 $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" \
+make
+BINDIR=/usr/bin \
+MANDIR=/usr/man/man \
+make install DESTDIR=$PKG
+
+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
+
+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/tcpbench/tcpbench.info b/network/tcpbench/tcpbench.info
new file mode 100644
index 0000000000..c249d99ccc
--- /dev/null
+++ b/network/tcpbench/tcpbench.info
@@ -0,0 +1,10 @@
+PRGNAM="tcpbench"
+VERSION="2.02"
+HOMEPAGE="https://github.com/bluhm/tcpbench-portable"
+DOWNLOAD="https://github.com/bluhm/tcpbench-portable/releases/download/v2.02/tcpbench-2.02.tar.gz"
+MD5SUM="cf2af2000e34f8e5183961c32ff1d285"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libbsd pkgconf"
+MAINTAINER="Alexander Bluhm"
+EMAIL="alexander.bluhm@gmx.net"
diff --git a/network/tdlib/README b/network/tdlib/README
new file mode 100644
index 0000000000..f1a491f20a
--- /dev/null
+++ b/network/tdlib/README
@@ -0,0 +1,9 @@
+Tdlib is the official Telegram library for the Telegram protocol.
+It can be used to implement unofficial Telegram clients.
+
+In particular, it is required for the Emacs package telega.el to
+work.
+
+NOTE: the build uses a commit, but the version is accurate. The
+reason is that although tdlib developers designate versions, they
+do not write them in github tags.
diff --git a/network/tdlib/slack-desc b/network/tdlib/slack-desc
new file mode 100644
index 0000000000..554e0aa871
--- /dev/null
+++ b/network/tdlib/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------------------------------------------------------|
+tdlib: tdlib (bindings for the Telegram protocol)
+tdlib:
+tdlib: Tdlib is the official Telegram library for the Telegram protocol.
+tdlib: It can be used to implement unofficial Telegram clients.
+tdlib:
+tdlib: In particular, it is required for the Emacs package telega.el to
+tdlib: work.
+tdlib:
+tdlib:
+tdlib:
+tdlib:
diff --git a/network/tdlib/tdlib.SlackBuild b/network/tdlib/tdlib.SlackBuild
new file mode 100644
index 0000000000..36033e2afc
--- /dev/null
+++ b/network/tdlib/tdlib.SlackBuild
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Slackware build script for tdlib
+
+# Copyright 2023, Lockywolf
+# 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=tdlib
+VERSION=${VERSION:-1.8.21}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+TARNAM=td
+COMMIT=3870c29b158b75ca5e48e0eebd6b5c3a7994a000
+
+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 $TARNAM-$COMMIT
+tar xvf $CWD/$TARNAM-$COMMIT.tar.gz
+cd $TARNAM-$COMMIT
+
+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 \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_LIBDIR=/usr/lib${LIBDIRSUFFIX} \
+ -DMAN_INSTALL_DIR=/usr/man \
+ -DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ example \
+ $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/tdlib/tdlib.info b/network/tdlib/tdlib.info
new file mode 100644
index 0000000000..bbce8cf5ca
--- /dev/null
+++ b/network/tdlib/tdlib.info
@@ -0,0 +1,10 @@
+PRGNAM="tdlib"
+VERSION="1.8.21"
+HOMEPAGE="https://github.com/tdlib/td/"
+DOWNLOAD="https://github.com/tdlib/td/archive/3870c29b158b75ca5e48e0eebd6b5c3a7994a000/td-3870c29b158b75ca5e48e0eebd6b5c3a7994a000.tar.gz"
+MD5SUM="1f605225e804f4986895a6ab062a9c43"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Lockywolf"
+EMAIL="for_sbo.tdlib_2023-11-10@lockywolf.net"
diff --git a/network/teams/teams.SlackBuild b/network/teams/teams.SlackBuild
index fc60a9e61d..a8b8ff9c73 100644
--- a/network/teams/teams.SlackBuild
+++ b/network/teams/teams.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=teams
-VERSION=${VERSION:-1.5.00.10453}
+VERSION=${VERSION:-1.5.00.23861}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/teams/teams.info b/network/teams/teams.info
index 37f47242f8..098d2e3dc3 100644
--- a/network/teams/teams.info
+++ b/network/teams/teams.info
@@ -1,10 +1,10 @@
PRGNAM="teams"
-VERSION="1.5.00.10453"
+VERSION="1.5.00.23861"
HOMEPAGE="https://teams.microsoft.com/downloads"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://packages.microsoft.com/repos/ms-teams/pool/main/t/teams/teams_1.5.00.10453_amd64.deb"
-MD5SUM_x86_64="6c294257cd7c52ffce091edd99735657"
+DOWNLOAD_x86_64="https://mirror.slackware.hr/sources/teams/teams_1.5.00.23861_amd64.deb"
+MD5SUM_x86_64="952ec5dc6976d39a33a06f23767c3104"
REQUIRES=""
MAINTAINER="Mario Preksavec"
EMAIL="mario at slackware dot hr"
diff --git a/network/teamviewer/teamviewer.SlackBuild b/network/teamviewer/teamviewer.SlackBuild
index 58d7c36be0..b1819a9c35 100644
--- a/network/teamviewer/teamviewer.SlackBuild
+++ b/network/teamviewer/teamviewer.SlackBuild
@@ -4,7 +4,7 @@
# Copyright 2010-2012 Binh Nguyen <binhvng@gmail.com>
# Copyright 2013-2018 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-# Copyright 2022 Gregory J. L. Tourte <artourter@gmail.com>
+# Copyright 2022-2024 Gregory J. L. Tourte <artourter@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,8 +26,10 @@
# Modified by Mario Preksavec <mario@slackware.hr>
+cd $(dirname $0) ; CWD=$(pwd)
+
PRGNAM=teamviewer
-VERSION=${VERSION:-15.34.4}
+VERSION=${VERSION:-15.52.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -48,7 +50,6 @@ if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
exit 0
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -99,12 +100,11 @@ done
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 {} \;
+ -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+# we do not strip te libicudata library as it prevents the package from working.
+find $PKG -print0 | xargs -0 file | grep -v -e 'libicudata' | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
# Link icon to /usr/share/pixmaps
diff --git a/network/teamviewer/teamviewer.info b/network/teamviewer/teamviewer.info
index 0d68a326e8..4718349a69 100644
--- a/network/teamviewer/teamviewer.info
+++ b/network/teamviewer/teamviewer.info
@@ -1,10 +1,10 @@
PRGNAM="teamviewer"
-VERSION="15.34.4"
+VERSION="15.52.3"
HOMEPAGE="https://www.teamviewer.com/"
-DOWNLOAD="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.34.4_i386.deb"
-MD5SUM="5cd80a24713a0155307fe99edcd95041"
-DOWNLOAD_x86_64="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.34.4_amd64.deb"
-MD5SUM_x86_64="d5377b18861afa1da948a78620f0c5b8"
+DOWNLOAD="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.52.3_i386.deb"
+MD5SUM="2a7e6d6b4928c594ba91735d643f8fad"
+DOWNLOAD_x86_64="https://dl.teamviewer.com/download/linux/version_15x/teamviewer_15.52.3_amd64.deb"
+MD5SUM_x86_64="31556dcdf43ce4e0aed3dd091d2bda41"
REQUIRES="libminizip"
MAINTAINER="ArTourter"
EMAIL="artourter@gmail.com"
diff --git a/network/telegram-cli/README b/network/telegram-cli/README
deleted file mode 100644
index 0dd579cc55..0000000000
--- a/network/telegram-cli/README
+++ /dev/null
@@ -1 +0,0 @@
-Command-line interface for Telegram.
diff --git a/network/telegram-cli/libreadline.patch b/network/telegram-cli/libreadline.patch
deleted file mode 100644
index f06df0b68f..0000000000
--- a/network/telegram-cli/libreadline.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/configure b/configure
-index fa7e189..9beaf07 100755
---- a/configure
-+++ b/configure
-@@ -4622,11 +4622,7 @@ LIBS=$ac_check_lib_save_LIBS
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_readline_rl_save_prompt" >&5
- $as_echo "$ac_cv_lib_readline_rl_save_prompt" >&6; }
--if test "x$ac_cv_lib_readline_rl_save_prompt" = xyes; then :
-- EXTRA_LIBS="${EXTRA_LIBS} -lreadline" ;
--else
-- as_fn_error $? "no libreadline found" "$LINENO" 5
--fi
-+EXTRA_LIBS="${EXTRA_LIBS} -lreadline" ;
-
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libconfig" >&5
diff --git a/network/telegram-cli/slack-desc b/network/telegram-cli/slack-desc
deleted file mode 100644
index 96201efe7c..0000000000
--- a/network/telegram-cli/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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------------------------------------------------------|
-telegram-cli: telegram-cli (command-line interface for Telegram.)
-telegram-cli:
-telegram-cli: Command-line interface for Telegram.
-telegram-cli:
-telegram-cli:
-telegram-cli:
-telegram-cli:
-telegram-cli:
-telegram-cli:
-telegram-cli:
-telegram-cli:
diff --git a/network/telegram-cli/telegram-cli.info b/network/telegram-cli/telegram-cli.info
deleted file mode 100644
index 2e5288050f..0000000000
--- a/network/telegram-cli/telegram-cli.info
+++ /dev/null
@@ -1,12 +0,0 @@
-PRGNAM="telegram-cli"
-VERSION="20200106"
-HOMEPAGE="https://github.com/kenorb-contrib/tg"
-DOWNLOAD="https://github.com/kenorb-contrib/tg/archive/20200106/tg-20200106.tar.gz \
- https://github.com/kenorb-contrib/tgl/archive/57f1bc41ae13297e6c3e23ac465fd45ec6659f50/tgl-57f1bc41ae13297e6c3e23ac465fd45ec6659f50.tar.gz"
-MD5SUM="0deb315d28e6adfe357b703a0c2bb066 \
- 04ce98ac8e0504af5c2a27db567fbe82"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="libconfig lua"
-MAINTAINER="Azure Zanculmarktum"
-EMAIL="zanculmarktum@gmail.com"
diff --git a/network/telegram/README b/network/telegram/README
index 3b9afcb539..24724fba9f 100644
--- a/network/telegram/README
+++ b/network/telegram/README
@@ -2,5 +2,3 @@ Telegram
Telegram is a cloud-based mobile and desktop messaging app with a
focus on security and speed.
-
-NOTE: Telegram x86 (32 bit) stays at 2.4.4
diff --git a/network/telegram/telegram.SlackBuild b/network/telegram/telegram.SlackBuild
index 4a046cb414..a11760559c 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:-4.2.4}
+VERSION=${VERSION:-4.16.8}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,9 +41,6 @@ case "$( uname -m )" in
*) ARCH=$( uname -m ) ;;
esac
-# 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
@@ -56,11 +53,9 @@ OUTPUT=${OUTPUT:-/tmp}
case "$ARCH" in
x86_64)
SRC="${SRCNAM}"
- LIBDIRSUFFIX="64"
;;
i586)
SRC="${SRCNAM}32"
- LIBDIRSUFFIX=""
VERSION=2.4.4
;;
*)
diff --git a/network/telegram/telegram.info b/network/telegram/telegram.info
index da342dc43f..e50a9dc192 100644
--- a/network/telegram/telegram.info
+++ b/network/telegram/telegram.info
@@ -1,10 +1,10 @@
PRGNAM="telegram"
-VERSION="4.2.4"
+VERSION="4.16.8"
HOMEPAGE="https://telegram.org"
-DOWNLOAD="https://updates.tdesktop.com/tlinux32/tsetup32.2.4.4.tar.xz"
-MD5SUM="857865fb0baa7aabadf3a6136f8276ba"
-DOWNLOAD_x86_64="https://updates.tdesktop.com/tlinux/tsetup.4.2.4.tar.xz"
-MD5SUM_x86_64="0237e4cd48348673066461e127cb0b8d"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://updates.tdesktop.com/tlinux/tsetup.4.16.8.tar.xz"
+MD5SUM_x86_64="ee1a670cc7e8da43aba7a78d38b20eaf"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/telegram/telegram.png b/network/telegram/telegram.png
index ee0756db5e..e127f0f355 100644
--- a/network/telegram/telegram.png
+++ b/network/telegram/telegram.png
Binary files differ
diff --git a/network/thorium-browser/README b/network/thorium-browser/README
new file mode 100644
index 0000000000..4b4ef9dcf2
--- /dev/null
+++ b/network/thorium-browser/README
@@ -0,0 +1 @@
+Thorium (The fastest browser on Earth)
diff --git a/network/EarthReader-Web/doinst.sh b/network/thorium-browser/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/network/EarthReader-Web/doinst.sh
+++ b/network/thorium-browser/doinst.sh
diff --git a/network/thorium-browser/slack-desc b/network/thorium-browser/slack-desc
new file mode 100644
index 0000000000..e150a0f6ae
--- /dev/null
+++ b/network/thorium-browser/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------------------------------------------------------|
+thorium-browser: thorium-browser (The fastest browser on Earth.)
+thorium-browser:
+thorium-browser: Chromium fork for Linux, Windows, MacOS, Android, and Raspberry Pi
+thorium-browser: named after radioactive element No. 90.
+thorium-browser:
+thorium-browser: Compiler optimizations include SSE4.2, AVX, AES, and modifications
+thorium-browser: to CFLAGS, LDFLAGS, thinLTO flags, import_instr_limit flags, and
+thorium-browser: PGO, as well as other compiler flags.
+thorium-browser: LLVM LOOP optimizations as -mllvm flags.
+thorium-browser:
+thorium-browser: Homepage: https://thorium.rocks/
diff --git a/network/thorium-browser/thorium-browser.SlackBuild b/network/thorium-browser/thorium-browser.SlackBuild
new file mode 100644
index 0000000000..db4d193cba
--- /dev/null
+++ b/network/thorium-browser/thorium-browser.SlackBuild
@@ -0,0 +1,100 @@
+#!/bin/bash
+
+# Slackware build script for thorium-browser
+
+# Copyright 2023 Martin Rodriguez, Guadalajara Mexico
+# 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=thorium-browser
+VERSION=${VERSION:-122.0.6261.132}
+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 "$ARCH" in
+ x86_64) DEBARCH="amd64" ;;
+ *) echo "Package for $ARCH architecture is not available." ; exit 1 ;;
+esac
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+
+cd $PKG
+ar p $CWD/${PRGNAM}_${VERSION}_$DEBARCH.deb data.tar.xz | tar xJv || exit 1
+cd ..
+
+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 sure top-level perms are correct:
+chmod 0755 .
+
+# This needs to be setuid root:
+chmod 4711 $PKG/opt/chromium.org/thorium/chrome-sandbox
+
+# The cron job is for Debian/Ubuntu only:
+rm -rf $PKG/etc
+
+# Strip binaries and libraries
+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
+
+# Install a .desktop launcher:
+sed -i -e "s#Icon=thorium-browser#Icon=/opt/chromium.org/thorium/product_logo_256.png#" \
+ $PKG/usr/share/applications/thorium-browser.desktop
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+mv $PKG/usr/share/doc/$PRGNAM/* $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/thorium-browser/thorium-browser.info b/network/thorium-browser/thorium-browser.info
new file mode 100644
index 0000000000..cc4bb4be0b
--- /dev/null
+++ b/network/thorium-browser/thorium-browser.info
@@ -0,0 +1,10 @@
+PRGNAM="thorium-browser"
+VERSION="122.0.6261.132"
+HOMEPAGE="https://thorium.rocks/"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/Alex313031/thorium/releases/download/M122.0.6261.132/thorium-browser_122.0.6261.132_amd64.deb"
+MD5SUM_x86_64="5e02eb86b7657c1c592ff242f1a8cf12"
+REQUIRES=""
+MAINTAINER="Martin Rodriguez"
+EMAIL="slackmart@gmail.com"
diff --git a/network/thttpd/thttpd.SlackBuild b/network/thttpd/thttpd.SlackBuild
index da277e629b..31e062b2a3 100644
--- a/network/thttpd/thttpd.SlackBuild
+++ b/network/thttpd/thttpd.SlackBuild
@@ -61,6 +61,9 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
@@ -172,7 +175,7 @@ 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 FILES INSTALL README TODO scripts $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a FILES README TODO scripts $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/tixati/tixati.SlackBuild b/network/tixati/tixati.SlackBuild
index 1eaf0597de..e74e550dfd 100644
--- a/network/tixati/tixati.SlackBuild
+++ b/network/tixati/tixati.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for tixati
-# Copyright 2015-2022 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tixati
-VERSION=${VERSION:-2.89_1}
+VERSION=${VERSION:-3.19_1}
SRCVER=$(echo $VERSION | tr _ -)
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
diff --git a/network/tixati/tixati.info b/network/tixati/tixati.info
index 5905a2f321..9a0a237b44 100644
--- a/network/tixati/tixati.info
+++ b/network/tixati/tixati.info
@@ -1,10 +1,10 @@
PRGNAM="tixati"
-VERSION="2.89_1"
+VERSION="3.19_1"
HOMEPAGE="https://www.tixati.com/"
-DOWNLOAD="https://download2.tixati.com/download/tixati-2.89-1.i686.manualinstall.tar.gz"
-MD5SUM="02f558b53c5494c4eb3e5fbc773e8ffe"
-DOWNLOAD_x86_64="https://download2.tixati.com/download/tixati-2.89-1.x86_64.manualinstall.tar.gz"
-MD5SUM_x86_64="5e81f53e21200f76bec0a0784fa013ef"
+DOWNLOAD="https://download2.tixati.com/download/tixati-3.19-1.i686.manualinstall.tar.gz"
+MD5SUM="a158f57f9ddf46c04b0b124a8deab266"
+DOWNLOAD_x86_64="https://download2.tixati.com/download/tixati-3.19-1.x86_64.manualinstall.tar.gz"
+MD5SUM_x86_64="4b7c80172ae7910c9a0db3b009082022"
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/tnfs-fuse/tnfs-fuse.SlackBuild b/network/tnfs-fuse/tnfs-fuse.SlackBuild
index 1951ef1e89..adac24633b 100644
--- a/network/tnfs-fuse/tnfs-fuse.SlackBuild
+++ b/network/tnfs-fuse/tnfs-fuse.SlackBuild
@@ -49,16 +49,12 @@ 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
diff --git a/network/tnfsd/git2tarxz.sh b/network/tnfsd/git2tarxz.sh
new file mode 100644
index 0000000000..751a3f6bc9
--- /dev/null
+++ b/network/tnfsd/git2tarxz.sh
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+# Create source tarball from git repo, with generated version number.
+
+# This is not a generic git2tarxz script, it's specific to tnfsd.
+# Upstream doesn't use tags for version bumps, so the version number
+# is extracted from main.c. Also, the repo contains a bunch of
+# other stuff unrelated to tnfs, which we don't include in our
+# tarball.
+
+# Takes one optional argument, which is the commit or tag to create a
+# tarball of. With no arg, HEAD is used.
+
+# Version number example: 0.0.1+20200227_ad7ec17
+
+# Notes:
+
+# Do not use this if you're packaging a release.
+
+# 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.
+
+# Running this script twice for the same commit will NOT give identical
+# tarballs, even if the contents are identical. This is because tar
+# includes the current time in a newly-created tarball (plus there may
+# be other git-related reasons).
+
+# Once you've generated a tarball, you'll still need a place to host it.
+# Ask on the mailing list, if you don't have your own web server to
+# play with.
+
+## Config:
+PRGNAM=tnfsd
+CLONE_URL=https://github.com/FujiNetWIFI/spectranet/
+## End of config.
+
+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 )
+
+# the version hardcoded in main.c includes the date, so
+# don't use this.
+#DATE=$( git log --date=format:%Y%m%d --format=%cd | head -1 )
+#VERSION=${DATE}_${GIT_SHA}
+
+VERMAIN="$( grep 'const *char *\*version' tnfs/tnfsd/main.c | cut -d'"' -f2 )"
+VERSION=${VERMAIN}_${GIT_SHA}
+
+rm -rf .git
+find . -name .gitignore -print0 | xargs -0 rm -f
+
+rm -rf tnfs/tnfsd/{vscode_sample,bin/*}
+mv tnfs/*.{md,txt} tnfs/tnfsd
+
+cd "$CWD"
+rm -rf $PRGNAM-$VERSION $PRGNAM-$VERSION.tar.xz
+mv $GITDIR/tnfs/tnfsd $PRGNAM-$VERSION
+rm -rf $GITDIR
+tar cvfJ $PRGNAM-$VERSION.tar.xz $PRGNAM-$VERSION
+
+echo
+echo "Created tarball: $PRGNAM-$VERSION.tar.xz"
+echo "VERSION=\"$VERSION\""
+echo "MD5SUM=\"$( md5sum $PRGNAM-$VERSION.tar.xz | cut -d' ' -f1 )\""
diff --git a/network/tnfsd/remove_broken_tcp_support.diff b/network/tnfsd/remove_broken_tcp_support.diff
index b874832079..010f04baf4 100644
--- a/network/tnfsd/remove_broken_tcp_support.diff
+++ b/network/tnfsd/remove_broken_tcp_support.diff
@@ -1,17 +1,17 @@
-diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/config.h spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/config.h
---- spectranet-TNFSD-2020-10-19/tnfs/tnfsd/config.h 2020-09-23 14:06:09.000000000 -0400
-+++ spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/config.h 2022-08-18 17:20:04.008064003 -0400
+diff -Naur tnfsd-23.0207.1_95c5b55/config.h tnfsd-23.0207.1_95c5b55.patched/config.h
+--- tnfsd-23.0207.1_95c5b55/config.h 2023-02-08 13:35:32.000000000 -0500
++++ tnfsd-23.0207.1_95c5b55.patched/config.h 2023-02-08 13:37:37.069280883 -0500
@@ -28,7 +28,6 @@
#define MAX_DHND_PER_CONN 8 /* max open directories per client */
- #define MAX_CLIENTS 256 /* maximum number of UDP clients */
- #define MAX_CLIENTS_PER_IP 8 /* maximum number of UDP clients from single IP */
+ #define MAX_CLIENTS 4096 /* maximum number of UDP clients */
+ #define MAX_CLIENTS_PER_IP 4096 /* maximum number of UDP clients from single IP */
-#define MAX_TCP_CONN 256 /* Maximum number of TCP clients */
+ #define SESSION_TIMEOUT 21600 /* Sessions are thrown out after no contact for this many seconds. 0 = no timeout */
#define TNFS_HEADERSZ 4 /* minimum header size */
#define TNFS_MAX_PAYLOAD (MAXMSGSZ - TNFS_HEADERSZ - 1) /* Maximum usuable payload in a UDP datagram (-1 for status byte) */
- #define MAX_TNFSPATH 256 /* maximum path length */
-diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/datagram.c
---- spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c 2020-09-23 14:06:09.000000000 -0400
-+++ spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/datagram.c 2022-08-18 17:19:22.440374999 -0400
+diff -Naur tnfsd-23.0207.1_95c5b55/datagram.c tnfsd-23.0207.1_95c5b55.patched/datagram.c
+--- tnfsd-23.0207.1_95c5b55/datagram.c 2023-02-08 13:35:32.000000000 -0500
++++ tnfsd-23.0207.1_95c5b55.patched/datagram.c 2023-02-08 13:40:57.701262001 -0500
@@ -50,7 +50,6 @@
#include "tnfs_file.h"
@@ -20,11 +20,10 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
tnfs_cmdfunc dircmd[NUM_DIRCMDS] =
{&tnfs_opendir, &tnfs_readdir, &tnfs_closedir,
-@@ -140,24 +139,6 @@
-
+@@ -141,23 +140,6 @@
if (bind(sockfd, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0)
die("Unable to bind");
--
+
- /* Create the TCP socket */
- tcplistenfd = socket(AF_INET, SOCK_STREAM, 0);
- if (tcplistenfd < 0)
@@ -45,7 +44,7 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
}
void tnfs_mainloop()
-@@ -165,25 +146,13 @@
+@@ -165,25 +147,13 @@
int readyfds, i;
fd_set fdset;
fd_set errfdset;
@@ -58,7 +57,7 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
FD_ZERO(&fdset);
- /* add UDP socket and TCP listen socket to fdset */
-+ /* add UDP socket socket to fdset */
++ /* add UDP socket to fdset */
FD_SET(sockfd, &fdset);
- FD_SET(tcplistenfd, &fdset);
-
@@ -72,7 +71,7 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
FD_COPY(&fdset, &errfdset);
if ((readyfds = select(FD_SETSIZE, &fdset, NULL, &errfdset, NULL)) != 0)
-@@ -199,53 +168,8 @@
+@@ -199,55 +169,10 @@
{
tnfs_handle_udpmsg();
}
@@ -94,10 +93,10 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
- }
- }
- }
-- }
-- }
--}
--
+ }
+ }
+ }
+
-void tcp_accept(int *socklist)
-{
- int acc_fd, i;
@@ -119,14 +118,16 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
- {
- *fdptr = acc_fd;
- return;
- }
- }
+- }
+- }
-
- /* tell the client 'too many connections' */
- }
-
+-}
+-
void tnfs_handle_udpmsg()
-@@ -273,15 +197,6 @@
+ {
+ socklen_t len;
+@@ -273,15 +198,6 @@
*(rxbuf + rxbytes) = 0;
}
@@ -142,9 +143,9 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.c spectranet-TNFSD-20
void tnfs_decode(struct sockaddr_in *cliaddr, int rxbytes, unsigned char *rxbuf)
{
Header hdr;
-diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.h spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/datagram.h
---- spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.h 2020-09-23 14:06:09.000000000 -0400
-+++ spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/datagram.h 2022-08-18 17:20:12.070197634 -0400
+diff -Naur tnfsd-23.0207.1_95c5b55/datagram.h tnfsd-23.0207.1_95c5b55.patched/datagram.h
+--- tnfsd-23.0207.1_95c5b55/datagram.h 2023-02-08 13:35:32.000000000 -0500
++++ tnfsd-23.0207.1_95c5b55.patched/datagram.h 2023-02-08 13:39:55.229267881 -0500
@@ -51,8 +51,6 @@
void tnfs_sockinit();
void tnfs_mainloop();
@@ -153,11 +154,11 @@ diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/datagram.h spectranet-TNFSD-20
-void tnfs_handle_tcpmsg(int cli_fd);
void tnfs_decode(struct sockaddr_in *cliaddr,
int rxbytes, unsigned char *rxbuf);
- void tnfs_badcommand(Header *hdr, Session *sess);
-diff -Naur spectranet-TNFSD-2020-10-19/tnfs/tnfsd/tnfs.h spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/tnfs.h
---- spectranet-TNFSD-2020-10-19/tnfs/tnfsd/tnfs.h 2020-09-23 14:06:09.000000000 -0400
-+++ spectranet-TNFSD-2020-10-19.patched/tnfs/tnfsd/tnfs.h 2022-08-18 17:20:22.625372592 -0400
-@@ -134,7 +134,6 @@
+ void tnfs_invalidsession(Header *hdr);
+diff -Naur tnfsd-23.0207.1_95c5b55/tnfs.h tnfsd-23.0207.1_95c5b55.patched/tnfs.h
+--- tnfsd-23.0207.1_95c5b55/tnfs.h 2023-02-08 13:35:32.000000000 -0500
++++ tnfsd-23.0207.1_95c5b55.patched/tnfs.h 2023-02-08 13:40:15.637265960 -0500
+@@ -136,7 +136,6 @@
#endif
int lastmsgsz; /* last message's size inc. hdr */
uint8_t lastseqno; /* last sequence number */
diff --git a/network/tnfsd/tnfsd.1 b/network/tnfsd/tnfsd.1
index 0b05bb4a7d..b8f41d2ed7 100644
--- a/network/tnfsd/tnfsd.1
+++ b/network/tnfsd/tnfsd.1
@@ -27,15 +27,13 @@ level margin: \\n[rst2man-indent\\n[rst2man-indent-level]]
.\" new: \\n[rst2man-indent\\n[rst2man-indent-level]]
.in \\n[rst2man-indent\\n[rst2man-indent-level]]u
..
-.TH "TNFSD" 1 "2022-08-19" "20201019" "SlackBuilds.org"
+.TH "TNFSD" 1 "2023-02-08" "23.0207.1_95c5b55" "SlackBuilds.org"
.SH NAME
tnfsd \- trivial network filesystem daemon
.\" RST source for tnfsd(1) man page. Convert with:
.
.\" rst2man.py tnfsd.rst > tnfsd.1
.
-.\" rst2man.py comes from the SBo development/docutils package.
-.
.SH SYNOPSIS
.sp
tnfsd \fBdirectory\fP [\fB\-c\fP \fIusername\fP]
@@ -89,7 +87,7 @@ There isn\(aqt a way to share a directory read\-only with the current
to prevent the daemon from writing to the shared directory.
.SH COPYRIGHT
.sp
-See the file /usr/doc/tnfsd\-20201019/COPYING for license information.
+See the file /usr/doc/tnfsd\-23.0207.1_95c5b55/COPYING for license information.
.SH AUTHORS
.sp
tnfsd was written by Dylan Smith.
@@ -100,6 +98,6 @@ by B. Watson, and is licensed under the WTFPL.
.sp
\fBtnfs\-fuse\fP(1), \fBfujinet\-pc\fP(1)
.sp
-/usr/doc/tnfsd\-20201019/tnfs\-protocol.md
+/usr/doc/tnfsd\-23.0207.1_95c5b55/tnfs\-protocol.md
.\" Generated by docutils manpage writer.
.
diff --git a/network/tnfsd/tnfsd.SlackBuild b/network/tnfsd/tnfsd.SlackBuild
index 5b9195ea80..cc841748c9 100644
--- a/network/tnfsd/tnfsd.SlackBuild
+++ b/network/tnfsd/tnfsd.SlackBuild
@@ -6,6 +6,11 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+# 20230208 bkw: update for v23.0207.1_95c5b55.
+# - this is a security update, see:
+# https://forums.atariage.com/topic/347648-tnfsd-directory-listing-vulnerability/
+# - use self-hosted source, with the non-tnfsd-related stuff removed.
+
# 20220818 bkw: BUILD=2
# - remove TCP support entirely. it's incomplete & thoroughly broken.
# - mention UDP port 16384 in slack-desc.
@@ -18,14 +23,11 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tnfsd
-VERSION=${VERSION:-20201019}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-23.0207.1_95c5b55}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-SRCNAM="spectranet"
-SRCVER="TNFSD-$( echo $VERSION | sed 's,\(....\)\(..\)\(..\),\1-\2-\3,' )"
-
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
@@ -87,9 +89,9 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$SRCVER
-tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz --wildcards '*/tnfs/*'
-cd $SRCNAM-$SRCVER
+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 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
@@ -104,15 +106,13 @@ find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
# it's non-functional anyway, this patch just dikes out TCP support
# completely. So far as I know, there are no TNFS clients which use
# TCP anyway.
-
+# 20230208 bkw: reworked this patch for the new source.
patch -p1 < $CWD/remove_broken_tcp_support.diff
-cd tnfs
-rm -f tnfsd/bin/* # guarantee we don't use prebuilt binary!
-
[ "${USAGELOG:-yes}" = "yes" ] && SLKCFLAGS+=" -DUSAGELOG"
-sed -i "s,-Wall,& $SLKCFLAGS," tnfsd/Makefile
-make -C tnfsd OS=LINUX
+sed -i "s,-Wall,& $SLKCFLAGS," Makefile
+mkdir -p bin
+make OS=LINUX
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
PKGBIN=$PKG/usr/bin
@@ -120,7 +120,7 @@ PKGMAN1=$PKG/usr/man/man1
PKGRCD=$PKG/etc/rc.d
PKGVAR=$PKG/var/tnfs
mkdir -p $PKGDOC $PKGBIN $PKGMAN1 $PKGRCD $PKGVAR
-install -s -m0755 tnfsd/bin/tnfsd $PKGBIN/tnfsd
+install -s -m0755 bin/tnfsd $PKGBIN/tnfsd
cp -a *.md *.txt $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
diff --git a/network/tnfsd/tnfsd.info b/network/tnfsd/tnfsd.info
index f286dc0f78..a8cb27219e 100644
--- a/network/tnfsd/tnfsd.info
+++ b/network/tnfsd/tnfsd.info
@@ -1,8 +1,8 @@
PRGNAM="tnfsd"
-VERSION="20201019"
+VERSION="23.0207.1_95c5b55"
HOMEPAGE="https://github.com/FujiNetWIFI/spectranet/"
-DOWNLOAD="https://github.com/FujiNetWIFI/spectranet/archive/TNFSD-2020-10-19/spectranet-TNFSD-2020-10-19.tar.gz"
-MD5SUM="052e01e46bdf91f403060e126373e8b3"
+DOWNLOAD="https://slackware.uk/~urchlay/src/tnfsd-23.0207.1_95c5b55.tar.xz"
+MD5SUM="667313c10c9d809e33ad58c6a59998b7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/tnfsd/tnfsd.rst b/network/tnfsd/tnfsd.rst
index 5ae4610a07..23dcb6b28b 100644
--- a/network/tnfsd/tnfsd.rst
+++ b/network/tnfsd/tnfsd.rst
@@ -1,8 +1,7 @@
.. RST source for tnfsd(1) man page. Convert with:
.. rst2man.py tnfsd.rst > tnfsd.1
-.. rst2man.py comes from the SBo development/docutils package.
-.. |version| replace:: 20201019
+.. |version| replace:: 23.0207.1_95c5b55
.. |date| date::
=====
diff --git a/network/tnftp/tnftp.SlackBuild b/network/tnftp/tnftp.SlackBuild
index ca62611316..58b3004221 100644
--- a/network/tnftp/tnftp.SlackBuild
+++ b/network/tnftp/tnftp.SlackBuild
@@ -23,6 +23,7 @@
# Now maintained by B. Watson <urchlay@slackware.uk>.
+# 20230912 bkw: update for v20230507.
# 20210926 bkw: update for v20210827.
# 20201024 bkw: update for v20200705.
# 20180629 bkw:
@@ -34,7 +35,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tnftp
-VERSION=${VERSION:-20210827}
+VERSION=${VERSION:-20230507}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/tnftp/tnftp.info b/network/tnftp/tnftp.info
index e4ae7abbc8..0057348131 100644
--- a/network/tnftp/tnftp.info
+++ b/network/tnftp/tnftp.info
@@ -1,8 +1,8 @@
PRGNAM="tnftp"
-VERSION="20210827"
+VERSION="20230507"
HOMEPAGE="https://ftp.netbsd.org/pub/NetBSD/misc/lukemftp"
-DOWNLOAD="https://ftp.netbsd.org/pub/NetBSD/misc/lukemftp/tnftp-20210827.tar.gz"
-MD5SUM="fdb6dd1b53dca79148c395b77c6dba5a"
+DOWNLOAD="https://ftp.netbsd.org/pub/NetBSD/misc/lukemftp/tnftp-20230507.tar.gz"
+MD5SUM="c95e9a8f8808122c5d8ada43bd5db2c7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/tokodon/README b/network/tokodon/README
new file mode 100644
index 0000000000..d84bd1b3a3
--- /dev/null
+++ b/network/tokodon/README
@@ -0,0 +1,8 @@
+tokodon (Mastodon client for Plasma and Plasma Mobile)
+
+A modern client for Mastodon and other decentralized servers that
+implement its API (such as Pixelfed).
+
+NOTE: This is the latest supported version for Slackware 15.0 unless
+libraries/kirigami-addons can be updated, which requires Plasma
+Framework in Slackware to be updated to 5.91 or higher.
diff --git a/network/tokodon/doinst.sh b/network/tokodon/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/tokodon/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/tokodon/slack-desc b/network/tokodon/slack-desc
new file mode 100644
index 0000000000..18a81c984d
--- /dev/null
+++ b/network/tokodon/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------------------------------------------------------|
+tokodon: tokodon (Mastodon client for Plasma and Plasma Mobile)
+tokodon:
+tokodon: A modern client for Mastodon and other decentralized servers that
+tokodon: implement its API (such as Pixelfed).
+tokodon:
+tokodon: HOMEPAGE: https://github.com/KDE/tokodon
+tokodon:
+tokodon:
+tokodon:
+tokodon:
+tokodon:
diff --git a/network/tokodon/tokodon.SlackBuild b/network/tokodon/tokodon.SlackBuild
new file mode 100644
index 0000000000..4de5ded079
--- /dev/null
+++ b/network/tokodon/tokodon.SlackBuild
@@ -0,0 +1,111 @@
+#!/bin/bash
+
+# Slackware build script for tokodon
+
+# Copyright 2023 Jeremy Hansen <jebrhansen+SBo@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=tokodon
+VERSION=${VERSION:-22.09}
+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 {} \;
+
+#
+sed -i 's|KWindowSystem::updateStartupId(view);|view->show();|' src/main.cpp
+sed -i 's|KWindowSystem::activateWindow(view)|view->raise();|' src/main.cpp
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DKDE_INSTALL_LIBDIR=${LIBDIRSUFFIX} \
+ -DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+ make install/strip DESTDIR=$PKG
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ 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/tokodon/tokodon.info b/network/tokodon/tokodon.info
new file mode 100644
index 0000000000..036bc82274
--- /dev/null
+++ b/network/tokodon/tokodon.info
@@ -0,0 +1,10 @@
+PRGNAM="tokodon"
+VERSION="22.09"
+HOMEPAGE="https://github.com/KDE/tokodon"
+DOWNLOAD="https://github.com/KDE/tokodon/archive/refs/tags/v22.09/tokodon-22.09.tar.gz"
+MD5SUM="71c1826bb9a6d0c5f042d46613c1f594"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="kirigami-addons"
+MAINTAINER="Jeremy Hansen"
+EMAIL="jebrhansen+SBo@gmail.com"
diff --git a/network/toot/README b/network/toot/README
new file mode 100644
index 0000000000..43f98fab03
--- /dev/null
+++ b/network/toot/README
@@ -0,0 +1 @@
+Toot is a python-based command line and TUI client for Mastodon servers.
diff --git a/network/toot/slack-desc b/network/toot/slack-desc
new file mode 100644
index 0000000000..adcd81fc00
--- /dev/null
+++ b/network/toot/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------------------------------------------------------|
+toot: toot (a Mastodon CLI client)
+toot:
+toot: Toot is a CLI and TUI tool for interacting with Mastodon instances
+toot: from the command line.
+toot:
+toot:
+toot:
+toot:
+toot:
+toot:
+toot:
diff --git a/network/toot/toot.SlackBuild b/network/toot/toot.SlackBuild
new file mode 100644
index 0000000000..9d054974c0
--- /dev/null
+++ b/network/toot/toot.SlackBuild
@@ -0,0 +1,72 @@
+#!/bin/bash
+
+# Slackware build script for toot
+
+# Copyright 2022-2024, Kevin Bryant <sultmhoor+SB@gmail.com>, Michigan, US
+# 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=toot
+VERSION=${VERSION:-0.41.1}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+ARCH=${ARCH:-noarch}
+
+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 $PKG/usr/man
+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 {} \;
+
+python3 setup.py install --root=$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
+
+rm -rf $PKG/usr/man
+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
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/toot/toot.info b/network/toot/toot.info
new file mode 100644
index 0000000000..3f62da853f
--- /dev/null
+++ b/network/toot/toot.info
@@ -0,0 +1,10 @@
+PRGNAM="toot"
+VERSION="0.41.1"
+HOMEPAGE="https://github.com/ihabunek/toot"
+DOWNLOAD="https://github.com/ihabunek/toot/releases/download/0.41.1/toot-0.41.1.tar.gz"
+MD5SUM="a6dfd7c8e5bb78571049be71d4eb5445"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="BeautifulSoup4 python3-wcwidth python-urwid python3-tomlkit"
+MAINTAINER="Kevin Bryant"
+EMAIL="sultmhoor+SB@gmail.com"
diff --git a/network/tor-browser/README b/network/tor-browser/README
index 76b4b72012..ca607830de 100644
--- a/network/tor-browser/README
+++ b/network/tor-browser/README
@@ -3,9 +3,4 @@ without needing to install any software.
It can run off a USB flash drive, comes with a pre-configured web
browser to protect your anonymity, and is self-contained.
-By default, this package will build en-US version.
-If you want to build other language, eg. France, download the
-appropriate source and run :
-PRGLANG=fr ./tor-browser.SlackBuild
-
-Tor Browser 9.x is based on Firefox 68.2-ESR Release
+Tor Browser 13.x is based on Firefox 115.6-ESR Release
diff --git a/network/tor-browser/tor-browser.SlackBuild b/network/tor-browser/tor-browser.SlackBuild
index 5f01669649..66004f1b3c 100644
--- a/network/tor-browser/tor-browser.SlackBuild
+++ b/network/tor-browser/tor-browser.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for tor-browser
-# Copyright 2014-2022 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2014-2023 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,23 +25,20 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=tor-browser
-VERSION=${VERSION:-11.5.2}
-PRGLANG=${PRGLANG:-en-US}
+VERSION=${VERSION:-13.0.14}
+PRGLANG=${PRGLANG:-ALL}
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
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,12 +48,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-if [ "$ARCH" = "x86_64" ]; then
- SRCARCH=64
-else
- SRCARCH=32
-fi
-
set -e
rm -rf $PKG
@@ -70,11 +61,11 @@ install -m 0755 $CWD/tor-browser.sh $PKG/usr/bin/tor-browser
sed -i "s/REPL_NAME/$PRGNAM/g" $PKG/usr/bin/tor-browser
sed -i "s/REPL_VERSION/$VERSION/g" $PKG/usr/bin/tor-browser
-sed -i "s/REPL_LANGUAGE/${PRGLANG}/g" $PKG/usr/bin/tor-browser
+sed -i "s/ARCH/$ARCH/g" $PKG/usr/bin/tor-browser
# We have to copy the original source into the package
mkdir -p $PKG/opt/$PRGNAM
-install -m 0644 $CWD/${PRGNAM}-linux${SRCARCH}-${VERSION}_${PRGLANG}.tar.xz $PKG/opt/$PRGNAM
+install -m 0644 $CWD/${PRGNAM}-linux-${ARCH}-${VERSION}.tar.xz $PKG/opt/$PRGNAM
mkdir -p $PKG/usr/share/pixmaps
install -m 0644 $CWD/mozicon128.png $PKG/usr/share/pixmaps/tor-browser.png
diff --git a/network/tor-browser/tor-browser.info b/network/tor-browser/tor-browser.info
index c032ff415e..ff2a8b2cc8 100644
--- a/network/tor-browser/tor-browser.info
+++ b/network/tor-browser/tor-browser.info
@@ -1,10 +1,10 @@
PRGNAM="tor-browser"
-VERSION="11.5.2"
+VERSION="13.0.14"
HOMEPAGE="https://www.torproject.org"
-DOWNLOAD="https://dist.torproject.org/torbrowser/11.5.2/tor-browser-linux32-11.5.2_en-US.tar.xz"
-MD5SUM="d8b8cb413d18f1ecec0343fb180bb705"
-DOWNLOAD_x86_64="https://dist.torproject.org/torbrowser/11.5.2/tor-browser-linux64-11.5.2_en-US.tar.xz"
-MD5SUM_x86_64="bbe0e474ec213886db7a1b63312f28bc"
+DOWNLOAD="https://dist.torproject.org/torbrowser/13.0.14/tor-browser-linux-i686-13.0.14.tar.xz"
+MD5SUM="71433c289914ae1b155751a63a29a1d5"
+DOWNLOAD_x86_64="https://www.torproject.org/dist/torbrowser/13.0.14/tor-browser-linux-x86_64-13.0.14.tar.xz"
+MD5SUM_x86_64="8d42e9e03a4684b3dd7aef39bb22a20c"
REQUIRES=""
MAINTAINER="Willy Sudiarto Raharjo"
EMAIL="willysr@slackbuilds.org"
diff --git a/network/tor-browser/tor-browser.sh b/network/tor-browser/tor-browser.sh
index 5986909059..10f9fad0dd 100644
--- a/network/tor-browser/tor-browser.sh
+++ b/network/tor-browser/tor-browser.sh
@@ -24,9 +24,7 @@ set -e
# filled by the SLACKBUILD
NAME='REPL_NAME'
VERSION='REPL_VERSION'
-LANGUAGE="REPL_LANGUAGE"
-
-ARCH=$(getconf LONG_BIT)
+ARCH='ARCH'
notify() {
local title="$1"
@@ -46,7 +44,7 @@ notify() {
update() {
echo "$0: Extracting files to $INSTALL_DIRECTORY." >> $LOG_FILE
rm -rf $INSTALL_DIRECTORY/*
- tar --strip-components=1 -xJf /opt/$NAME/tor-browser-linux${ARCH}-${VERSION}_${LANGUAGE}.tar.xz \
+ tar --strip-components=1 -xJf /opt/$NAME/tor-browser-linux-${ARCH}-${VERSION}.tar.xz \
-C $INSTALL_DIRECTORY >> $LOG_FILE 2>&1 || notify "Error" \
"The tor-browser archive could not be extracted to your home directory. \
\nCheck permissions of $INSTALL_DIRECTORY. \
diff --git a/network/tor/tor.SlackBuild b/network/tor/tor.SlackBuild
index bdbc064898..156451c169 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.7.8}
+VERSION=${VERSION:-0.4.8.7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/tor/tor.info b/network/tor/tor.info
index e107da5da9..837fc16dce 100644
--- a/network/tor/tor.info
+++ b/network/tor/tor.info
@@ -1,8 +1,8 @@
PRGNAM="tor"
-VERSION="0.4.7.8"
+VERSION="0.4.8.7"
HOMEPAGE="https://www.torproject.org/"
-DOWNLOAD="https://dist.torproject.org/tor-0.4.7.8.tar.gz"
-MD5SUM="6c4648c34a8b18baa9b65c5cb9ea3b7a"
+DOWNLOAD="https://dist.torproject.org/tor-0.4.8.7.tar.gz"
+MD5SUM="ce259834ed76e3e65a25438cc42b6281"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/torsocks/torsocks.SlackBuild b/network/torsocks/torsocks.SlackBuild
index c444c287e4..bbb95eb27b 100644
--- a/network/torsocks/torsocks.SlackBuild
+++ b/network/torsocks/torsocks.SlackBuild
@@ -4,11 +4,14 @@
# Written by Vincent Batts, vbatts@hashbangbash.com
+# 20240331 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - get generic GNU INSTALL file out of doc dir.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=torsocks
VERSION=${VERSION:-2.3.0}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -20,9 +23,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
@@ -57,9 +57,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# Fix a hardcoded lib path.
sed -i -e 's|@prefix@/lib|@libdir@|' src/Makefile.am
@@ -90,7 +90,7 @@ 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 INSTALL LICENSE README.md gpl-2.0.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a ChangeLog LICENSE README.md gpl-2.0.txt $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/torsocks/torsocks.info b/network/torsocks/torsocks.info
index e7f8206bd4..9fcc61149f 100644
--- a/network/torsocks/torsocks.info
+++ b/network/torsocks/torsocks.info
@@ -1,7 +1,7 @@
PRGNAM="torsocks"
VERSION="2.3.0"
HOMEPAGE="https://gitweb.torproject.org/torsocks.git"
-DOWNLOAD="https://github.com/dgoulet/torsocks/archive/v2.3.0.tar.gz"
+DOWNLOAD="https://github.com/dgoulet/torsocks/archive/v2.3.0/torsocks-2.3.0.tar.gz"
MD5SUM="df9a10bc13cbdce04e799c56671fcba5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/transgui/dup-obj-status.patch b/network/transgui/dup-obj-status.patch
new file mode 100644
index 0000000000..04967efd01
--- /dev/null
+++ b/network/transgui/dup-obj-status.patch
@@ -0,0 +1,49 @@
+From 8d63a310cbdc99ff8d565e2429c0740a8be5c3cb Mon Sep 17 00:00:00 2001
+From: Kuzz <Kuzz@ThinkPad.localdomain>
+Date: Wed, 29 Jul 2020 21:24:21 +0300
+Subject: [PATCH] Deduplicate RequestInfo params. #1325
+
+---
+ rpc.pas | 17 ++++++++++++++---
+ 1 file changed, 14 insertions(+), 3 deletions(-)
+
+diff --git a/rpc.pas b/rpc.pas
+index 2cbfeee0..7f9254c8 100644
+--- a/rpc.pas
++++ b/rpc.pas
+@@ -816,21 +816,32 @@ function TRpc.RequestInfo(TorrentId: integer; const Fields: array of const; cons
+ req, args: TJSONObject;
+ _fields: TJSONArray;
+ i: integer;
++ sl: TStringList;
+ begin
+ Result:=nil;
+ req:=TJSONObject.Create;
++ sl:=TStringList.Create;
+ try
+ req.Add('method', 'torrent-get');
+ args:=TJSONObject.Create;
+ if TorrentId <> 0 then
+ args.Add('ids', TJSONArray.Create([TorrentId]));
+- _fields:=TJSONArray.Create(Fields);
+- for i:=Low(ExtraFields) to High(ExtraFields) do
+- _fields.Add(ExtraFields[i]);
++ _fields:=TJSONArray.Create;
++ for i:=Low(Fields) to High(Fields) do
++ if (Fields[i].VType=vtAnsiString) then
++ sl.Add(String(Fields[i].VAnsiString));
++ sl.AddStrings(ExtraFields);
++ sl.Sort;
++ for i:=sl.Count-2 downto 0 do
++ if (sl[i]=sl[i+1]) then
++ sl.Delete(i+1);
++ for i:=0 to sl.Count-1 do
++ _fields.Add(sl[i]);
+ args.Add('fields', _fields);
+ req.Add('arguments', args);
+ Result:=SendRequest(req);
+ finally
++ sl.Free;
+ req.Free;
+ end;
+ end;
diff --git a/network/transgui/transgui.SlackBuild b/network/transgui/transgui.SlackBuild
index dcebb22b76..ca7ad023fc 100644
--- a/network/transgui/transgui.SlackBuild
+++ b/network/transgui/transgui.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for transgui
-# Copyright 2016-2019 Jeremy Brent Hansen <jebrhansen+SBo -at- gmail.com>
+# Copyright 2016-2023 Jeremy Brent Hansen <jebrhansen+SBo -at- 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:-1}
+BUILD=${BUILD:-2}
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 "Duplicate object member: status" error
+# Thanks to Ku33ma
+# https://github.com/transmission-remote-gui/transgui/pull/1329
+patch -p1 < $CWD/dup-obj-status.patch
+
# Build transgui
lazbuild "transgui.lpi" --lazarusdir=/usr/share/lazarus --widgetset=gtk2
diff --git a/network/translate/translate.SlackBuild b/network/translate/translate.SlackBuild
index 84fdf2ef43..efdb7d28e1 100644
--- a/network/translate/translate.SlackBuild
+++ b/network/translate/translate.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for translate
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=translate
-VERSION=${VERSION:-2.0.0}
+VERSION=${VERSION:-3.6.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,7 +79,7 @@ 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 {} \;
-python setup.py install --root=$PKG
+python3 setup.py install --root=$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
diff --git a/network/translate/translate.info b/network/translate/translate.info
index ccf165e509..a4e09be129 100644
--- a/network/translate/translate.info
+++ b/network/translate/translate.info
@@ -1,10 +1,10 @@
PRGNAM="translate"
-VERSION="2.0.0"
+VERSION="3.6.1"
HOMEPAGE="https://github.com/terryyin/google-translate-python"
-DOWNLOAD="https://pypi.python.org/packages/source/t/translate/translate-2.0.0.tar.gz"
-MD5SUM="587508223d5baa7aaae8161dd3d26b8f"
+DOWNLOAD="https://files.pythonhosted.org/packages/d1/9d/692066b9e26176a93ce627bf467bca48f198eb0e036337a5180d566c9561/translate-3.6.1.tar.gz"
+MD5SUM="3ebcafb25c270e785c5f18580c4ad0c4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-libretranslatepy python3-lxml click"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/transmission-remote-gtk/README b/network/transmission-remote-gtk/README
index ea3c282163..f780e8205b 100644
--- a/network/transmission-remote-gtk/README
+++ b/network/transmission-remote-gtk/README
@@ -16,7 +16,6 @@ interface.
Optional dependencies, detected at compile time:
GeoIP - used to display country flags next to IP addresses.
-libmrss - used for built-in RSS reader.
If you want to build without libappindicator (systray and
notification) support, set NOTIFY=no in the script's environment.
diff --git a/network/transmission-remote-gtk/gcc10.patch b/network/transmission-remote-gtk/gcc10.patch
deleted file mode 100644
index 1c445b5085..0000000000
--- a/network/transmission-remote-gtk/gcc10.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From b20655081332847426a7d10189bb1e2369efea42 Mon Sep 17 00:00:00 2001
-From: David Seifert <soap@gentoo.org>
-Date: Fri, 20 Mar 2020 20:30:24 +0100
-Subject: [PATCH] Fix building under GCC 10 / -fno-common
-
-* Add a `typedef` to avoid defining a variable.
-
-Bug: https://bugs.gentoo.org/706980
----
- src/trg-tree-view.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/trg-tree-view.h b/src/trg-tree-view.h
-index 435848f..78cd76e 100644
---- a/src/trg-tree-view.h
-+++ b/src/trg-tree-view.h
-@@ -51,7 +51,7 @@ GtkWidget *trg_tree_view_new(void);
-
- G_END_DECLS GList *trg_tree_view_get_selected_refs_list(GtkTreeView * tv);
-
--enum {
-+typedef enum {
- TRG_COLTYPE_ICONTEXT,
- TRG_COLTYPE_FILEICONTEXT,
- TRG_COLTYPE_WANTED,
diff --git a/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild b/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
index 714e67f2c0..738a1af006 100644
--- a/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
+++ b/network/transmission-remote-gtk/transmission-remote-gtk.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for transmission-remote-gtk
# Copyright 2012-2016 Chris Walker Copperas Cove, TX
-# Copyright 2020 B. Watson <urchlay@slackware.uk>
+# Copyright 2020-2023 B. Watson <urchlay@slackware.uk>
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
@@ -32,6 +32,11 @@
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230713 bkw: update for v1.6.0.
+# - new hard dep libsoup3.
+# - no more optional mrss dep (upstream dropped the RSS reader).
+
+# 20220623 bkw: update for v1.5.1.
# 20210926 bkw: BUILD=2, make NOTIFY=no also disable libappindicator.
# 20200526 bkw:
# - take over maintenance
@@ -47,7 +52,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=transmission-remote-gtk
-VERSION=${VERSION:-1.5.1}
+VERSION=${VERSION:-1.6.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -95,6 +100,14 @@ 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 {} \+
+# 20230713 bkw: mangle the meson.build so it works with Slackware
+# 15.0's meson-0.59.x. Eventually this will become difficult or
+# impossible, hopefully by then we have a new Slackware release with a
+# new enough meson.
+sed -i -e '/meson_version:/s,0.60.0,0.59.0,' \
+ -e "s/'ayatana-appindicator3-0.1', //" \
+ meson.build
+
[ "${NOTIFY:-yes}" = "no" ] && NOTIFYOPT="-Dlibappindicator=disabled"
mkdir build
@@ -118,8 +131,8 @@ cd ..
gzip -9 $PKG/usr/man/man1/$PRGNAM.1
# 20200526 bkw: lots of optional deps, let the slack-desc keep track of them
-ldd $PKG/usr/bin/$PRGNAM > ldd.tmp
-for i in libappindicator libmrss GeoIP; do
+objdump -p $PKG/usr/bin/$PRGNAM | grep NEEDED > ldd.tmp
+for i in libappindicator GeoIP; do
opts+="$i:"
grep -q $i ldd.tmp && opts+="yes " || opts+="no "
done
diff --git a/network/transmission-remote-gtk/transmission-remote-gtk.info b/network/transmission-remote-gtk/transmission-remote-gtk.info
index 5d9f882c6d..86a5bc7dfb 100644
--- a/network/transmission-remote-gtk/transmission-remote-gtk.info
+++ b/network/transmission-remote-gtk/transmission-remote-gtk.info
@@ -1,10 +1,10 @@
PRGNAM="transmission-remote-gtk"
-VERSION="1.5.1"
+VERSION="1.6.0"
HOMEPAGE="https://github.com/transmission-remote-gtk/transmission-remote-gtk/"
-DOWNLOAD="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/1.5.1/transmission-remote-gtk-1.5.1.tar.xz"
-MD5SUM="6ba9fe9273bbc0b2bd889ff981e7c449"
+DOWNLOAD="https://github.com/transmission-remote-gtk/transmission-remote-gtk/releases/download/1.6.0/transmission-remote-gtk-1.6.0.tar.xz"
+MD5SUM="cd284fab5d3919e11f3d0415d7b75078"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="transmission"
+REQUIRES="transmission libsoup3"
MAINTAINER="B. Watson"
EMAIL="urchlay@slackware.uk"
diff --git a/network/transmission/README b/network/transmission/README
index cbfcb736cc..9c54e443bf 100644
--- a/network/transmission/README
+++ b/network/transmission/README
@@ -4,12 +4,14 @@ Transmission is a lightweight open source BitTorrent client, providing
useful functionality without feature bloat. It consists of a daemon
and GTK+, Qt, and CLI clients.
-By default, all 4 components are built. Specific parts can be disabled
-by setting one or more environment variables:
+By default, everything but the Qt client is built. It can be enabled
+by exporting QT=yes in the environment. The other parts can be
+disabled by exporting one or more environment variables:
GTK=no
-QT=no
CLI=no
DAEMON=no
+Hint: if you use QT=yes, you probably also want GTK=no.
+
At least one component must be enabled (all 4 set to "no" won't work).
diff --git a/network/transmission/slack-desc b/network/transmission/slack-desc
index 5ab683a1b9..30f5ac84ba 100644
--- a/network/transmission/slack-desc
+++ b/network/transmission/slack-desc
@@ -15,5 +15,5 @@ transmission:
transmission: This package built with options:
transmission: @opts@
transmission:
-transmission: Homepage: http://transmissionbt.com/
+transmission: Homepage: https://transmissionbt.com/
transmission:
diff --git a/network/transmission/transmission.SlackBuild b/network/transmission/transmission.SlackBuild
index 60ff05296a..5ccebeb9b7 100644
--- a/network/transmission/transmission.SlackBuild
+++ b/network/transmission/transmission.SlackBuild
@@ -24,6 +24,16 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20231219 bkw: update for v4.0.5, minor man page tweaks.
+# 20230912 bkw: update for v4.0.4.
+# 20230510 bkw: update for v4.0.3. remove the warning about D-Bus from README,
+# it no longer applies (transmission-gtk works without it).
+# 20230320 bkw: update for v4.0.2. add -DREBUILD_WEB=OFF to allow building
+# without using the network, if nodejs is installed. thanks
+# to Ruben Schuller for pointing this out.
+# 20230208 bkw: update for v4.0.0, which has only been out for about 5 hours.
+# - Disable the qt5 UI by default. There's no reason to build both GUIs
+# by default. User can still say GTK=no QT=yes to get only the qt UI.
# 20210926 bkw: BUILD=2, restore Qt5 build. 15.0 not yet released, but "soon".
# 20200525 bkw: update for v3.00.
# Drop Qt GUI and QT=yes, due to 14.2's old gcc/libstdc++.
@@ -42,8 +52,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=transmission
-VERSION=${VERSION:-3.00}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-4.0.5}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -64,8 +74,6 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-DOCS="AUTHORS COPYING NEWS.md README.md"
-
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
@@ -83,7 +91,7 @@ fi
set -e
GTK="${GTK:-yes}"
-QT="${QT:-yes}"
+QT="${QT:-no}"
CLI="${CLI:-yes}"
DAEMON="${DAEMON:-yes}"
@@ -99,10 +107,13 @@ EOF
exit 1
fi
-# anything but lowercase "yes" is considered a no!
-[ "$GTK" != "yes" ] && GTKOPT="no" || GTKOPT="yes"
-[ "$CLI" != "yes" ] && CLIOPT="dis" || CLIOPT="en"
-[ "$DAEMON" != "yes" ] && DAEMOPT="dis" || DAEMOPT="en"
+# Anything but lowercase "yes" is considered a no!
+# cmake didn't used to be case-sensitive about on and off.
+# It feels like BDSM, and not in a good way.
+[ "$QT" != "yes" ] && QTOPT="OFF" || QTOPT="ON"
+[ "$GTK" != "yes" ] && GTKOPT="OFF" || GTKOPT="ON"
+[ "$CLI" != "yes" ] && CLIOPT="OFF" || CLIOPT="ON"
+[ "$DAEMON" != "yes" ] && DAEMOPT="OFF" || DAEMOPT="ON"
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
@@ -115,67 +126,43 @@ 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 {} \+
-sed -i -e 's%-g -O3 -funroll-loops %%g' configure.ac
-sed -i -e 's%-ggdb3 %%g' configure.ac
-
-# fix for -current (does no harm on stable). ref:
-# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c13b5e88c6e9c7bd2698d844cb5ed127ed809f7e
-rm -f m4/glib-gettext.m4
-
-CC=gcc CXX=g++ \
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --disable-static \
- --verbose \
- --with-gtk=$GTKOPT \
- --${CLIOPT}able-cli \
- --${DAEMOPT}able-daemon \
- --build=$ARCH-slackware-linux \
- --host=$ARCH-slackware-linux
-
-# Build daemon, GTK and cli client (unless disabled). This also builds
-# the tools (transmission-create and friends).
-make
-make install-strip DESTDIR=$PKG
-
-if [ "$QT" = "yes" ]; then
- # build the Qt client (transmission-qt) unless disabled
- # Fix hard-coded path of man file of Qt client
- sed -i "s|share/man/|man/|" qt/qtr.pro
-
- # Needed when using Qt4
- # https://trac.transmissionbt.com/ticket/5700#comment:2
- echo "QMAKE_CXXFLAGS += -std=c++11" >> qt/qtr.pro
-
- cd $TMP/$PRGNAM-$VERSION/qt
- qmake-qt5 \
- QMAKE_CXXFLAGS+="$SLKCFLAGS" \
- QMAKE_CFLAGS+="$SLKCFLAGS" \
- qtr.pro
- sed -i -e 's% -g % %g' Makefile
- make
- INSTALL_ROOT=$PKG/usr make install
-
- mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps
- install -m644 transmission-qt.desktop $PKG/usr/share/applications/transmission-qt.desktop
- install -m644 icons/transmission.png $PKG/usr/share/pixmaps/transmission-qt.png
- cd -
-fi
+# 20231219 bkw: make the man pages slightly nicer looking: replace
+# 'BSD General Commands Manual' with 'SlackBuilds.org', and replace
+# the 'BSD' at the bottom with the version number.
+for i in $( find . -maxdepth 2 -name 'transmission*.1' ); do
+ sed -i -e '/^\.Os/d' \
+ -e '/^\.Dt/s,1 *$,\\\&1 "SlackBuilds.org",' \
+ -e '/^\.Dt/a.Os '$VERSION \
+ $i
+done
+
+mkdir -p build
+cd build
+ cmake \
+ -DREBUILD_WEB=OFF \
+ -DENABLE_DAEMON=$DAEMOPT \
+ -DENABLE_QT=$QTOPT \
+ -DENABLE_GTK=$GTKOPT \
+ -DENABLE_CLI=$CLIOPT \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DCMAKE_INSTALL_MANDIR=/usr/man \
+ -DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make VERBOSE=1
+ make install/strip DESTDIR=$PKG
+cd ..
gzip -9 $PKG/usr/man/man?/*
-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
-sed "s,@opts@,GTK=$GTK QT=$QT CLI=$CLI QT=$QT DAEMON=$DAEMON," $CWD/slack-desc > $PKG/install/slack-desc
+sed "s,@opts@,GTK=$GTK QT=$QT CLI=$CLI DAEMON=$DAEMON," \
+ $CWD/slack-desc \
+ > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
diff --git a/network/transmission/transmission.info b/network/transmission/transmission.info
index 5274134ef8..89363cfcd1 100644
--- a/network/transmission/transmission.info
+++ b/network/transmission/transmission.info
@@ -1,8 +1,8 @@
PRGNAM="transmission"
-VERSION="3.00"
-HOMEPAGE="http://www.transmissionbt.com/"
-DOWNLOAD="https://github.com/transmission/transmission-releases/raw/master/transmission-3.00.tar.xz"
-MD5SUM="a23a32672b83c89b9b61e90408f53d98"
+VERSION="4.0.5"
+HOMEPAGE="https://www.transmissionbt.com/"
+DOWNLOAD="https://github.com/transmission/transmission/releases/download/4.0.5/transmission-4.0.5.tar.xz"
+MD5SUM="d3cda868215246644c429b18a30f7e47"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/tut/README b/network/tut/README
new file mode 100644
index 0000000000..25651bcfc1
--- /dev/null
+++ b/network/tut/README
@@ -0,0 +1,7 @@
+Tut is a TUI for Mastodon with vim inspired keys. The program contains
+most of the features from the web client.
+
+Within tut, press "C" (no quotations) to create a new toot and "N" to
+focus on notifications.
+
+Tut also provides mouse support (see the github page for more details).
diff --git a/network/tut/modules.txt b/network/tut/modules.txt
new file mode 100644
index 0000000000..e4f82b433b
--- /dev/null
+++ b/network/tut/modules.txt
@@ -0,0 +1,90 @@
+# github.com/RasmusLindroth/go-mastodon v0.0.21
+## explicit
+github.com/RasmusLindroth/go-mastodon
+# github.com/adrg/xdg v0.4.0
+## explicit
+github.com/adrg/xdg
+# github.com/atotto/clipboard v0.1.4
+## explicit
+github.com/atotto/clipboard
+# github.com/gdamore/tcell/v2 v2.5.4
+## explicit
+github.com/gdamore/tcell/v2
+# github.com/gen2brain/beeep v0.0.0-20220909211152-5a9ec94374f6
+## explicit
+github.com/gen2brain/beeep
+# github.com/gobwas/glob v0.2.3
+## explicit
+github.com/gobwas/glob
+# github.com/icza/gox v0.0.0-20230117093757-93f961aa2755
+## explicit
+github.com/icza/gox/timex
+# github.com/microcosm-cc/bluemonday v1.0.21
+## explicit
+github.com/microcosm-cc/bluemonday
+# github.com/pelletier/go-toml/v2 v2.0.6
+## explicit
+github.com/pelletier/go-toml/v2
+# github.com/rivo/tview v0.0.0-20230104153304-892d1a2eb0da
+## explicit
+github.com/rivo/tview
+# github.com/rivo/uniseg v0.4.3
+## explicit; go 1.18
+github.com/rivo/uniseg
+# github.com/spf13/pflag v1.0.5
+## explicit
+github.com/spf13/pflag
+# golang.org/x/exp v0.0.0-20230125214544-b3c2aaf6208d
+## explicit; go 1.18
+golang.org/x/exp/slices
+# golang.org/x/net v0.5.0
+## explicit
+golang.org/x/net/html
+# mvdan.cc/xurls/v2 v2.4.0
+## explicit
+mvdan.cc/xurls/v2
+# github.com/aymerick/douceur v0.2.0
+## explicit
+github.com/aymerick/douceur/parser
+# github.com/gdamore/encoding v1.0.0
+## explicit
+github.com/gdamore/encoding
+# github.com/go-toast/toast v0.0.0-20190211030409-01e6764cf0a4
+## explicit
+github.com/go-toast/toast
+# github.com/godbus/dbus/v5 v5.1.0
+## explicit
+github.com/godbus/dbus/v5
+# github.com/gorilla/css v1.0.0
+## explicit
+github.com/gorilla/css/scanner
+# github.com/gorilla/websocket v1.5.0
+## explicit
+github.com/gorilla/websocket
+# github.com/lucasb-eyer/go-colorful v1.2.0
+## explicit
+github.com/lucasb-eyer/go-colorful
+# github.com/mattn/go-runewidth v0.0.14
+## explicit
+github.com/mattn/go-runewidth
+# github.com/nu7hatch/gouuid v0.0.0-20131221200532-179d4d0c4d8d
+## explicit
+github.com/nu7hatch/gouuid
+# github.com/tadvi/systray v0.0.0-20190226123456-11a2b8fa57af
+## explicit
+github.com/tadvi/systray
+# github.com/tomnomnom/linkheader v0.0.0-20180905144013-02ca5825eb80
+## explicit
+github.com/tomnomnom/linkheader
+# golang.org/x/sys v0.4.0
+## explicit; go 1.17
+golang.org/x/sys/unix
+golang.org/x/sys/windows/
+golang.org/x/sys/windows/registry
+# golang.org/x/term v0.4.0
+## explicit
+golang.org/x/term
+# golang.org/x/text v0.6.0
+## explicit
+golang.org/x/text/encoding
+golang.org/x/text/transform
diff --git a/network/tut/slack-desc b/network/tut/slack-desc
new file mode 100644
index 0000000000..33288d18f2
--- /dev/null
+++ b/network/tut/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------------------------------------------------------|
+tut: tut (a Mastodon TUI)
+tut:
+tut: tut is a TUI for Mastodon with vim inspired keys.
+tut:
+tut:
+tut:
+tut:
+tut:
+tut:
+tut:
+tut:
diff --git a/network/tut/tut.SlackBuild b/network/tut/tut.SlackBuild
new file mode 100644
index 0000000000..1f285068cc
--- /dev/null
+++ b/network/tut/tut.SlackBuild
@@ -0,0 +1,127 @@
+#!/bin/bash
+
+# Slackware build script for tut
+
+# Copyright 2024 Isaac Yu <isaacyu@protonmail.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=tut
+VERSION=${VERSION:-2.0.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 .
+
+mkdir -p vendor
+cat $CWD/modules.txt > vendor/modules.txt
+for DIR in $(grep -o "^# .* " vendor/modules.txt | cut -d' ' -f2)
+do
+ NAME=$(echo $DIR | sed 's/[./]v[0-9]\+$//' | xargs basename)
+ DIR=vendor/$DIR
+ tar xvf $CWD/$NAME-*.tar.gz
+ mkdir -p $(dirname $DIR)
+ mv $NAME-* $DIR
+done
+
+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_CFLAGS="$SLKCFLAGS" \
+CGO_CXXFLAGS="$SLKCFLAGS" \
+go build -mod vendor
+
+# Install tut
+install -Dm755 $PRGNAM $PKG/usr/bin/$PRGNAM
+
+# Install config files
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp config.example.toml $PKG/usr/doc/$PRGNAM-$VERSION/config.example.toml
+cp config/toot.tmpl $PKG/usr/doc/$PRGNAM-$VERSION/toot.tmpl
+cp config/user.tmpl $PKG/usr/doc/$PRGNAM-$VERSION/user.tmpl
+
+# Install themes
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/themes
+cp config/themes/* $PKG/usr/doc/$PRGNAM-$VERSION/themes
+
+# Install and compress man pages
+for i in {1,5,7};
+do
+ mkdir -p $PKG/usr/man/man$i
+ cp -r docs/man/tut.$i $PKG/usr/man/man$i/tut.$i
+done
+gzip -9 $PKG/usr/man/man[0-9]/$PRGNAM.[0-9]
+
+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/tut/tut.info b/network/tut/tut.info
new file mode 100644
index 0000000000..a44535b358
--- /dev/null
+++ b/network/tut/tut.info
@@ -0,0 +1,68 @@
+PRGNAM="tut"
+VERSION="2.0.1"
+HOMEPAGE="https://github.com/RasmusLindroth/tut"
+DOWNLOAD="https://github.com/RasmusLindroth/tut/archive/refs/tags/2.0.1/tut-2.0.1.tar.gz \
+ https://github.com/RasmusLindroth/go-mastodon/archive/v0.0.21/go-mastodon-0.0.21.tar.gz \
+ https://github.com/adrg/xdg/archive/v0.4.0/xdg-0.4.0.tar.gz \
+ https://github.com/atotto/clipboard/archive/v0.1.4/clipboard-0.1.4.tar.gz \
+ https://github.com/gdamore/tcell/archive/v2.5.4/tcell-2.5.4.tar.gz \
+ https://github.com/gen2brain/beeep/archive/5a9ec94/beeep-5a9ec94374f60b2b12acc4b615be802c8563a157.tar.gz \
+ https://github.com/gobwas/glob/archive/v0.2.3/glob-0.2.3.tar.gz \
+ https://github.com/icza/gox/archive/93f961a/gox-93f961aa27557b111564e0889e52eb9dd94b81a9.tar.gz \
+ https://github.com/microcosm-cc/bluemonday/archive/v1.0.21/bluemonday-1.0.21.tar.gz \
+ https://github.com/pelletier/go-toml/archive/v2.0.6/go-toml-2.0.6.tar.gz \
+ https://github.com/rivo/tview/archive/892d1a2/tview-892d1a2eb0daab1296492b2087fff46240799382.tar.gz \
+ https://github.com/rivo/uniseg/archive/v0.4.3/uniseg-0.4.3.tar.gz \
+ https://github.com/spf13/pflag/archive/v1.0.5/pflag-1.0.5.tar.gz \
+ https://github.com/golang/exp/archive/b3c2aaf/exp-b3c2aaf6208dd245d356334775d544edb2fa3040.tar.gz \
+ https://github.com/golang/net/archive/v0.5.0/net-0.5.0.tar.gz \
+ https://github.com/mvdan/xurls/archive/v2.4.0/xurls-2.4.0.tar.gz \
+ https://github.com/aymerick/douceur/archive/v0.2.0/douceur-0.2.0.tar.gz \
+ https://github.com/gdamore/encoding/archive/v1.0.0/encoding-1.0.0.tar.gz \
+ https://github.com/go-toast/toast/archive/01e6764/toast-01e6764cf0a44209189b7981cdc34284936f6891.tar.gz \
+ https://github.com/godbus/dbus/archive/v5.1.0/dbus-5.1.0.tar.gz \
+ https://github.com/gorilla/css/archive/v1.0.0/css-1.0.0.tar.gz \
+ https://github.com/gorilla/websocket/archive/v1.5.0/websocket-1.5.0.tar.gz \
+ https://github.com/lucasb-eyer/go-colorful/archive/v1.2.0/go-colorful-1.2.0.tar.gz \
+ https://github.com/mattn/go-runewidth/archive/v0.0.14/go-runewidth-0.0.14.tar.gz \
+ https://github.com/nu7hatch/gouuid/archive/179d4d0/gouuid-179d4d0c4d8d407a32af483c2354df1d2c91e6c3.tar.gz \
+ https://github.com/tadvi/systray/archive/11a2b8f/systray-11a2b8fa57afff744b2e66a9b05f173c78f20dc6.tar.gz \
+ https://github.com/tomnomnom/linkheader/archive/02ca582/linkheader-02ca5825eb8097f10d9cc53da78481a85ad84e04.tar.gz \
+ https://github.com/golang/sys/archive/v0.4.0/sys-0.4.0.tar.gz \
+ https://github.com/golang/term/archive/v0.4.0/term-0.4.0.tar.gz \
+ https://github.com/golang/text/archive/v0.6.0/text-0.6.0.tar.gz"
+MD5SUM="7192cf56bfeb294fad290eb98e0a1e64 \
+ 910805b0bcbc402c021ab9e90dfe3dbe \
+ 8bc50248d26e66e5e29e65f3f051342a \
+ 9020b8bb980f0b59e12f7c4e0dc53a88 \
+ 0c62c60df9d5def197b42b03455ae530 \
+ 0e254919fc79e73a4ff09c45689e1ab8 \
+ 5d6cceb33b2e69ec12b5fb8c1f57cafe \
+ 938a1fbb88141d94d356a447025dd242 \
+ bc87b962386014b2ebffefcf19958f58 \
+ 2a91e4190a1d0bb7348c83e29e26e03e \
+ 4e785a105923de0b560cefe68794e28c \
+ 5fb9fa6f45d1bd701f0eca1e699d3c1d \
+ b31b2da1e91e337f3afdd49c8851b1a0 \
+ 5567341126e060622851745978b5397c \
+ cea041eef3f83f69cef05835fe23c4e2 \
+ 0ce250780135f41fcb4d84123c1582fe \
+ 48d2b40c0bc69a5c19b5fad8a8d1ab1b \
+ fbadc383bc1ace79fa769fe2de36b87b \
+ c8b7381250dc50b40879d08a3bfea178 \
+ d456df1207b7ba6a073d9ab1dd82ad2d \
+ adb82396cd821ca82a8d96b68552e748 \
+ 11f202db2e908f83270784cf85032b4b \
+ 191fe5cfcb58e480ff4045c82a06091a \
+ c41abbf9dc5def08ef8e6999efbe2c8c \
+ 3c71dda45c74b210d6b86cdcaebd3ed6 \
+ aa33e322338a67f3b3950bc0f77397e4 \
+ 972d6a64ac3a22ae16ac80447bccd06f \
+ 2450b5e79ce8b41cb65a6d99af8bf89f \
+ 44d06b8aa75102668295863b1f94632e \
+ 0811ecc6a90a1a52ed96a0ff843bd343"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang"
+MAINTAINER="Isaac Yu"
+EMAIL="isaacyu@protonmail.com"
diff --git a/network/twine/twine.SlackBuild b/network/twine/twine.SlackBuild
index aecaa10aa3..77ff78a50d 100644
--- a/network/twine/twine.SlackBuild
+++ b/network/twine/twine.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for twine
-# Copyright 2016-2022 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2016-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=twine
-VERSION=${VERSION:-4.0.1}
+VERSION=${VERSION:-5.0.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -71,7 +71,6 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
-cp $CWD/setup.py $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -80,7 +79,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 {} \;
-python3 setup.py install --root=$PKG
+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
diff --git a/network/twine/twine.info b/network/twine/twine.info
index cb07e37faa..129d42dbd5 100644
--- a/network/twine/twine.info
+++ b/network/twine/twine.info
@@ -1,10 +1,10 @@
PRGNAM="twine"
-VERSION="4.0.1"
+VERSION="5.0.0"
HOMEPAGE="https://github.com/pypa/twine"
-DOWNLOAD="https://files.pythonhosted.org/packages/08/2a/e03c20f47c750699063bbb349d68dea8990a0694f7bc65d1a97bf3254fa7/twine-4.0.1.tar.gz"
-MD5SUM="a5df863a1f307a21156387d8506390ad"
+DOWNLOAD="https://files.pythonhosted.org/packages/d3/cc/8025ad5102a5c754023092143b8b511e184ec087dfbfb357d7d88fb82bff/twine-5.0.0.tar.gz"
+MD5SUM="692f628c3708beca5f9073b0988e8f8f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="pkginfo requests-toolbelt readme_renderer python-keyring python-importlib_metadata python3-rfc3986 python3-rich"
+REQUIRES="pkginfo requests-toolbelt readme_renderer python3-keyring python-importlib_metadata python3-rfc3986 python3-rich"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/twinkle/twinkle.SlackBuild b/network/twinkle/twinkle.SlackBuild
index 06e0d6bd8a..77aca3ed37 100644
--- a/network/twinkle/twinkle.SlackBuild
+++ b/network/twinkle/twinkle.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for twinkle
# Copyright 2008 Mauro Giachero
-# Copyright 2022 Johannes Schoepfer, Germany
+# Copyright 2022-2023 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -50,16 +50,12 @@ 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
@@ -73,9 +69,9 @@ 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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# iLBC from SBo is not recognized
#-DWITH_ILBC=On \
diff --git a/network/twinkle/twinkle.info b/network/twinkle/twinkle.info
index 77fed67e16..739106f04d 100644
--- a/network/twinkle/twinkle.info
+++ b/network/twinkle/twinkle.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://github.com/LubosD/twinkle/archive/refs/tags/v1.10.3/twinkle-1.
MD5SUM="1bc38c16af7b78ac047646766083888a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="ucommon libzrtpcpp gsm"
+REQUIRES="libzrtpcpp gsm"
MAINTAINER="Johannes Schoepfer"
EMAIL="slackbuilds@schoepfer.info"
diff --git a/network/udpbench/README b/network/udpbench/README
new file mode 100644
index 0000000000..8ae64ff080
--- /dev/null
+++ b/network/udpbench/README
@@ -0,0 +1,3 @@
+Measure UDP send and receive performance. Be very careful that the
+data is reliable. Avoid unnecessary system calls that may affect
+the result.
diff --git a/network/sickrage/slack-desc b/network/udpbench/slack-desc
index 929bbadb3d..35f8932e73 100644
--- a/network/sickrage/slack-desc
+++ b/network/udpbench/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-sickrage: sickrage (Automatic Video Library Manager for TV Shows.)
-sickrage:
-sickrage: SickRage is an automatic Video Library Manager for TV Shows. It
-sickrage: watches for new episodes of your favorite shows, and when they are
-sickrage: posted it does its magic: automatic torrent/nzb searching,
-sickrage: downloading, and processing at the qualities you want.
-sickrage:
-sickrage: Homepage: https://sickrage.github.io/
-sickrage:
-sickrage:
-sickrage:
+udpbench: udpbench (UDP network benchmarking tool)
+udpbench:
+udpbench: Measure UDP send and receive performance. Be very careful that the
+udpbench: data is reliable. Avoid unnecessary system calls that may affect
+udpbench: the result.
+udpbench:
+udpbench:
+udpbench:
+udpbench:
+udpbench: https://github.com/bluhm/udpbench
+udpbench:
diff --git a/network/udpbench/udpbench.SlackBuild b/network/udpbench/udpbench.SlackBuild
new file mode 100644
index 0000000000..95aa0c85c1
--- /dev/null
+++ b/network/udpbench/udpbench.SlackBuild
@@ -0,0 +1,93 @@
+#!/bin/bash
+
+# Slackware build script for udpbench
+
+# Copyright 2024 Alexander Bluhm, Germany
+# 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=udpbench
+VERSION=${VERSION:-1.10}
+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" ]; 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 $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" \
+make
+BINDIR=/usr/bin \
+MANDIR=/usr/man/man \
+make install DESTDIR=$PKG
+
+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
+
+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/udpbench/udpbench.info b/network/udpbench/udpbench.info
new file mode 100644
index 0000000000..78b37a2244
--- /dev/null
+++ b/network/udpbench/udpbench.info
@@ -0,0 +1,10 @@
+PRGNAM="udpbench"
+VERSION="1.10"
+HOMEPAGE="https://github.com/bluhm/udpbench"
+DOWNLOAD="https://github.com/bluhm/udpbench/releases/download/v1.10/udpbench-1.10.tar.gz"
+MD5SUM="af96d4cb8e8910c571032bf58b99c5ca"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="libbsd pkgconf"
+MAINTAINER="Alexander Bluhm"
+EMAIL="alexander.bluhm@gmx.net"
diff --git a/network/ufw/ufw.SlackBuild b/network/ufw/ufw.SlackBuild
index 9915b8daa1..f3b65a2a13 100644
--- a/network/ufw/ufw.SlackBuild
+++ b/network/ufw/ufw.SlackBuild
@@ -6,6 +6,7 @@
# Copyright 2013 Ricardson Williams <ricardsonwilliams@gmail.com>
# Copyright 2014-2015 Rodolfo Gouveia <rgouveia@cosmico.net>
# Copyright 2016 Brenton Earl <brent@exitstatusone.com>
+# Copyright 2023 Jay Lanagan <j@lngn.net>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -28,7 +29,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=ufw
-VERSION=${VERSION:-0.36}
+VERSION=${VERSION:-0.36.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -41,9 +42,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
@@ -53,20 +51,6 @@ 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
@@ -83,22 +67,31 @@ find -L . \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
patch -p1 --verbose < $CWD/ufw.conf.patch
-patch -p1 --verbose < $CWD/ufw-0.35-fix-iptables-path.patch
-
-# Python3 support
-if $(python3 -c 'import sys' 2>/dev/null); then
- python3 setup.py install --root=$PKG
-fi
-python setup.py install --root=$PKG
+python3 setup.py install --root=$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
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
+# Compress and link manpages, if any:
+if [ -d $PKG/usr/man ]; then
+ ( cd $PKG/usr/man
+ for manpagedir in $(find . -type d -name "man*") ; do
+ ( cd $manpagedir
+ for eachpage in $( find . -type l -maxdepth 1) ; do
+ ln -s $( readlink $eachpage ).gz $eachpage.gz
+ rm $eachpage
+ done
+ gzip -9 *.*
+ )
+ done
+ )
+fi
+
+mkdir -p $PKG/etc/rc.d
+cat $TMP/$PRGNAM-$VERSION/doc/initscript.example > $PKG/etc/rc.d/rc.ufw
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS ChangeLog* COPYING README* TODO doc/*.example $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/ufw/ufw.conf.patch b/network/ufw/ufw.conf.patch
index 0b085ae82b..eda9b184e1 100644
--- a/network/ufw/ufw.conf.patch
+++ b/network/ufw/ufw.conf.patch
@@ -1,5 +1,5 @@
---- ufw-0.33.orig/conf/ufw.conf 2012-08-18 05:12:49.000000000 +0800
-+++ ufw-0.33/conf/ufw.conf 2013-07-16 04:18:44.365425697 +0800
+--- a/conf/ufw.conf
++++ b/conf/ufw.conf
@@ -3,7 +3,7 @@
# Set to yes to start on boot. If setting this remotely, be sure to add a rule
@@ -9,3 +9,4 @@
# Please use the 'ufw' command to set the loglevel. Eg: 'ufw logging medium'.
# See 'man ufw' for details.
+
diff --git a/network/ufw/ufw.info b/network/ufw/ufw.info
index 1d396dca15..b2d57c2680 100644
--- a/network/ufw/ufw.info
+++ b/network/ufw/ufw.info
@@ -1,10 +1,10 @@
PRGNAM="ufw"
-VERSION="0.36"
+VERSION="0.36.2"
HOMEPAGE="https://launchpad.net/ufw"
-DOWNLOAD="https://launchpad.net/ufw/0.36/0.36/+download/ufw-0.36.tar.gz"
-MD5SUM="6d8ab1506da21ae003f4628f93d05781"
+DOWNLOAD="https://launchpad.net/ufw/0.36/0.36.2/+download/ufw-0.36.2.tar.gz"
+MD5SUM="4a1c52b7da2b25e66e91b5f16a7d032d"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Brenton Earl"
-EMAIL="brent@exitstatusone.com"
+MAINTAINER="Jay Lanagan"
+EMAIL="j@lngn.net"
diff --git a/network/unbound/doinst.sh b/network/unbound/doinst.sh
index f7243783f5..a1aece44fe 100644
--- a/network/unbound/doinst.sh
+++ b/network/unbound/doinst.sh
@@ -26,20 +26,27 @@ preserve_perms etc/rc.d/rc.unbound.new
config etc/unbound/unbound.conf.new
config etc/logrotate.d/unbound.new
-# MD5SUM d837bf4c42abb7048c90d720a579f829 is a file hash from the previous initscript.
-
-if [ $(md5sum /etc/rc.d/rc.unbound | cut -f 1 -d " ") == "d837bf4c42abb7048c90d720a579f829" ]
-then
- echo ""
- echo "Warning! Red Hat style init script detected at /etc/rc.d/rc.unbound !"
- echo "It's likely from your previous Unbound installation."
- echo "The init script will probably work just fine but the script has since been rewritten"
- echo "as of Unbound version 1.16.2 and it's no longer supported by this SlackBuild."
- echo ""
- echo "Simply run the following commands to install the new Unbound init script:"
- echo "# cd /etc/rc.d && mv rc.unbound.new rc.unbound"
- echo ""
- echo "...or if you use slackpkg:"
- echo "# slackpkg new-config"
- echo ""
+if [ -r /etc/logrotate.d/unbound ] && [ $(stat -c "%U:%G" "/etc/logrotate.d/unbound") != "root:root" ]; then
+ echo "Incorrect permissions detected on /etc/logrotate.d/unbound !"
+ echo "This will prevent Unbound logrotate script from working."
+ echo ""
+ echo "Previous Unbound SlackBuild scripts didn't set this correctly."
+ echo ""
+ echo "To fix it, simply run:"
+ echo "# chown root:root /etc/logrotate.d/unbound"
fi
+
+echo "----------------------------"
+echo "As of Unbound SlackBuild 1.18.0-2 DNSSEC is enabled by default."
+echo
+echo "You have two options:"
+echo
+echo "1) Run the following command to setup the root trust anchor (RECOMMENDED!)"
+echo "# sudo -u unbound unbound-anchor -f /etc/resolv.conf -R -a /var/lib/unbound/root.key"
+echo
+echo "2) Disable DNSSEC and unbound-anchor functionality."
+echo "Edit /etc/unbound/unbound.conf, and erase or comment the following line:"
+echo 'auto-trust-anchor-file: "/var/lib/unbound/root.key"'
+echo
+echo "This is a suitable option if you plan to use Unbound simply as a forwarding resolver."
+echo "----------------------------"
diff --git a/network/unbound/rc.unbound b/network/unbound/rc.unbound
index d45d6ff255..3c31faf4ef 100644
--- a/network/unbound/rc.unbound
+++ b/network/unbound/rc.unbound
@@ -5,32 +5,97 @@
UNBOUND=/usr/sbin/unbound
CONFIG=/etc/unbound/unbound.conf
-PIDFILE=/var/run/unbound/unbound.pid
+PIDFILE=/run/unbound/unbound.pid
+LOGDIR=/var/log/unbound
+KEYFILE=/var/lib/unbound/root.key
# Unbound-control is useful but I'm not going to cram it
# down your throat. Set this to "yes" to disable unbound-control
-# initial setup.
+# initial setup. Note that you'll need to disable control port
+# in unbound.conf so Unbound will actually start.
DISABLE_UNBOUND_CONTROL="no"
+# As part of the initial checks, the script makes sure that
+# $LOGDIR exists. It's mostly for cases where admin accidentally
+# deletes the entire log folder rather than individual logs.
+# If you don't use logging at all, have a custom setup or
+# just want to skip these checks, set this to "yes".
+DISABLE_LOGDIR_CHECKS="no"
+
initchecks() {
+ # If auto-trust-anchor-file is enabled and the keyfile doesn't exists in
+ # /var/lib/unbound, we won't start the daemon. Most(?) errors can be caught
+ # by /usr/sbin/unbound executable but this one actually allows Unbound to start -
+ # - only for it to crash a moment later. Running unbound-checkconf on every start up
+ # would be useful, but it would make noise every time the daemon starts up.
+ if [ ! -z "$(unbound-checkconf -o auto-trust-anchor-file)" ] && [ ! -e "$KEYFILE" ]; then
+ echo "ERROR: $KEYFILE not found, yet auto-trust-anchor-file is enabled in $CONFIG"
+ echo "ERROR: Refusing to start because Unbound would crash."
+ echo "ERROR: Please generate Unbound Anchor file with the following command:"
+ echo " # sh /etc/rc.d/rc.unbound generate-key"
+ echo
+ echo "...or comment out auto-trust-anchor-file in $CONFIG."
+ exit 1
+ fi
+ # Look out for a stale pidfile. If there's one, remove it.
+ # This shouldn't be necessary unless the system was shutdown uncleanly
+ # or if Unbound crashes.
+ if [ -e $PIDFILE ] && [ ! $(pidof unbound) ]; then
+ echo "Looks like Unbound isn't running but there's a stale pid file."
+ echo "Removing $PIDFILE"
+ rm -vf $PIDFILE
+ fi
+ # Check that /run/unbound exists. If not, create and chown it.
if [ ! -e $(dirname $PIDFILE) ]; then
mkdir -p $(dirname $PIDFILE)
chown unbound:unbound $(dirname $PIDFILE)
fi
+ # Run the initial setup for unbound-control unless it's disabled.
+ # Mostly relevant for the first time run.
if [ ! -e $(dirname $CONFIG)/unbound_server.pem ] && [ "$DISABLE_UNBOUND_CONTROL" == "no" ]; then
echo "Unbound-control: unbound_server.pem not found."
- echo "Running initial setup: /usr/sbin/unbound-control-setup"
+ echo "This is normal for the first run."
+ echo "Running initial setup to generate certificates: /usr/sbin/unbound-control-setup"
/usr/sbin/unbound-control-setup || exit 1
+ echo "Actually... no need to do anything. It's enabled by default on Slackware :-)"
+ fi
+ # Deleted the entire log directory by accident? Oh well, bound to happen.
+ # Let's fix that right away.
+ if [ "$DISABLE_LOGDIR_CHECKS" == "no" ]
+ then
+ if [ ! -d "$LOGDIR" ]; then
+ echo -n "Unbound log directory not found. Attempting to recreate it... "
+ mkdir $LOGDIR && echo "Success!"
+ fi
+ if [ $(stat -c "%U:%G" "$LOGDIR") != "unbound:unbound" ]; then
+ echo -n "Fixing permissions on the log folder $LOGDIR... "
+ chown -R unbound:unbound $LOGDIR && echo "Success!"
+ fi
fi
}
+anchorkeygen() {
+ echo "Generating Unbound Anchor keyfile..."
+ sudo -u unbound unbound-anchor -f /etc/resolv.conf -R -a /var/lib/unbound/root.key
+ echo "Done"
+}
+
+checkconfig() {
+ echo "Checking Unbound configuration file: $CONFIG"
+ echo "This will run the command: /usr/sbin/unbound-checkconf"
+ echo "-----START unbound-checkconf output-----"
+ /usr/sbin/unbound-checkconf
+ echo "-----END unbound-checkconf output-----"
+
+}
+
start() {
initchecks
if [ -r $PIDFILE ]; then
echo 'Unbound is already running!'
return
else
- echo "Starting Unbound DNS validating resolver..."
+ echo "Starting Unbound..."
$UNBOUND -c $CONFIG || echo "Failed to start! The error messages above might help."
fi
}
@@ -40,7 +105,7 @@ stop() {
echo 'Unbound is not running.'
return
fi
- echo "Stopping Unbound DNS validating resolver..."
+ echo "Stopping Unbound..."
kill `cat $PIDFILE`
rm -f $PIDFILE
}
@@ -66,11 +131,17 @@ case "$1" in
sleep 1
start
;;
+ 'generate-key')
+ anchorkeygen
+ ;;
+ 'check-config')
+ checkconfig
+ ;;
'reload')
reload
;;
*)
- echo "Usage: $0 {start|stop|reload|restart}"
+ echo "Usage: $0 {start|stop|reload|restart|generate-key|check-config}"
exit 1
;;
esac
diff --git a/network/unbound/root.hints b/network/unbound/root.hints
new file mode 100644
index 0000000000..280ab06683
--- /dev/null
+++ b/network/unbound/root.hints
@@ -0,0 +1,92 @@
+; This file holds the information on root name servers needed to
+; initialize cache of Internet domain name servers
+; (e.g. reference this file in the "cache . <file>"
+; configuration file of BIND domain name servers).
+;
+; This file is made available by InterNIC
+; under anonymous FTP as
+; file /domain/named.cache
+; on server FTP.INTERNIC.NET
+; -OR- RS.INTERNIC.NET
+;
+; last update: March 25, 2024
+; related version of root zone: 2024032501
+;
+; FORMERLY NS.INTERNIC.NET
+;
+. 3600000 NS A.ROOT-SERVERS.NET.
+A.ROOT-SERVERS.NET. 3600000 A 198.41.0.4
+A.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:ba3e::2:30
+;
+; FORMERLY NS1.ISI.EDU
+;
+. 3600000 NS B.ROOT-SERVERS.NET.
+B.ROOT-SERVERS.NET. 3600000 A 170.247.170.2
+B.ROOT-SERVERS.NET. 3600000 AAAA 2801:1b8:10::b
+;
+; FORMERLY C.PSI.NET
+;
+. 3600000 NS C.ROOT-SERVERS.NET.
+C.ROOT-SERVERS.NET. 3600000 A 192.33.4.12
+C.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2::c
+;
+; FORMERLY TERP.UMD.EDU
+;
+. 3600000 NS D.ROOT-SERVERS.NET.
+D.ROOT-SERVERS.NET. 3600000 A 199.7.91.13
+D.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2d::d
+;
+; FORMERLY NS.NASA.GOV
+;
+. 3600000 NS E.ROOT-SERVERS.NET.
+E.ROOT-SERVERS.NET. 3600000 A 192.203.230.10
+E.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:a8::e
+;
+; FORMERLY NS.ISC.ORG
+;
+. 3600000 NS F.ROOT-SERVERS.NET.
+F.ROOT-SERVERS.NET. 3600000 A 192.5.5.241
+F.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:2f::f
+;
+; FORMERLY NS.NIC.DDN.MIL
+;
+. 3600000 NS G.ROOT-SERVERS.NET.
+G.ROOT-SERVERS.NET. 3600000 A 192.112.36.4
+G.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:12::d0d
+;
+; FORMERLY AOS.ARL.ARMY.MIL
+;
+. 3600000 NS H.ROOT-SERVERS.NET.
+H.ROOT-SERVERS.NET. 3600000 A 198.97.190.53
+H.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:1::53
+;
+; FORMERLY NIC.NORDU.NET
+;
+. 3600000 NS I.ROOT-SERVERS.NET.
+I.ROOT-SERVERS.NET. 3600000 A 192.36.148.17
+I.ROOT-SERVERS.NET. 3600000 AAAA 2001:7fe::53
+;
+; OPERATED BY VERISIGN, INC.
+;
+. 3600000 NS J.ROOT-SERVERS.NET.
+J.ROOT-SERVERS.NET. 3600000 A 192.58.128.30
+J.ROOT-SERVERS.NET. 3600000 AAAA 2001:503:c27::2:30
+;
+; OPERATED BY RIPE NCC
+;
+. 3600000 NS K.ROOT-SERVERS.NET.
+K.ROOT-SERVERS.NET. 3600000 A 193.0.14.129
+K.ROOT-SERVERS.NET. 3600000 AAAA 2001:7fd::1
+;
+; OPERATED BY ICANN
+;
+. 3600000 NS L.ROOT-SERVERS.NET.
+L.ROOT-SERVERS.NET. 3600000 A 199.7.83.42
+L.ROOT-SERVERS.NET. 3600000 AAAA 2001:500:9f::42
+;
+; OPERATED BY WIDE
+;
+. 3600000 NS M.ROOT-SERVERS.NET.
+M.ROOT-SERVERS.NET. 3600000 A 202.12.27.33
+M.ROOT-SERVERS.NET. 3600000 AAAA 2001:dc3::35
+; End of file \ No newline at end of file
diff --git a/network/unbound/unbound.SlackBuild b/network/unbound/unbound.SlackBuild
index 7bec9a1b1f..9a2dc3ce59 100644
--- a/network/unbound/unbound.SlackBuild
+++ b/network/unbound/unbound.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Unbound
-# Copyright 2022 Badchay <badchay@protonmail.com>
+# Copyright 2024 Badchay <badchay@protonmail.com>
# All rights reserved.
# Copyright 2020 Gerardo Zamudio <gerardo.zamudio@linux.com> Mexico City, Mexico
# All rights reserved.
@@ -27,8 +27,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=unbound
-VERSION=${VERSION:-1.16.3}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-1.19.3}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,6 +83,12 @@ if ! grep -q ^"$UB_USER": /etc/passwd ; then
exit 1
fi
+# This needs to be set. Otherwise Unbound will build
+# against Python 2 on Slackware 15.0.
+# Setting this to "3" allows Unbound to build with
+# Python 3.9 and 3.11, depending which one is installed.
+UNB_PY_VERSION=${UNB_PY_VERSION:-3}
+
set -e
rm -rf $PKG
@@ -100,6 +106,7 @@ find -L . \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
+PYTHON_VERSION="$UNB_PY_VERSION" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
@@ -111,9 +118,15 @@ CXXFLAGS="$SLKCFLAGS" \
--with-ssl \
--enable-dnscrypt \
--disable-static \
+ --enable-sha2 \
+ --enable-subnet \
+ --with-pythonmodule \
+ --with-pyunbound \
--with-username=$UB_USER \
- --with-pidfile=/var/run/unbound/unbound.pid \
+ --with-pidfile=/run/unbound/unbound.pid \
+ --with-rootkey-file=/var/lib/unbound/root.key \
--build=$ARCH-slackware-linux \
+ --host=$ARCH-slackware-linux \
make
make install DESTDIR=$PKG
@@ -130,7 +143,7 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a doc/README* doc/FEATURES doc/CREDITS doc/TODO $PKG/usr/doc/$PRGNAM-$VERSION
# Shorten the Changelog and restore its timestamp
-head -n 1000 doc/Changelog > $PKG/usr/doc/$PRGNAM-$VERSION/Changelog
+head -n 500 doc/Changelog > $PKG/usr/doc/$PRGNAM-$VERSION/Changelog
touch -r doc/Changelog $PKG/usr/doc/$PRGNAM-$VERSION/Changelog
# Save the upstream unbound.conf and set some reasonable defaults:
@@ -142,7 +155,13 @@ touch -r doc/Changelog $PKG/usr/doc/$PRGNAM-$VERSION/Changelog
# 3) Change timestamps to ASCII format (from Epoch).
# 4) Turn off chroot.
# 5) Disable systemd socket activation.
-# 6) Set num-threads to $(nproc). Still disabled by default.
+# 6) Set num-threads to $(nproc).
+# 7) Use root-hints file.
+# 8) Set DNS prefetch to "yes".
+# 9) Harden against out of zone rrsets (harden-glue).
+# 10) Harden against receiving dnssec-stripped data (harden-dnssec-stripped).
+# 11) Enable aggressive NSEC, root-key-sentinel and RFC8145 (trust anchor
+# signaling).
cp -a $PKG/etc/unbound/unbound.conf $PKG/etc/unbound/unbound.conf.upstream
sed -i \
-e 's/# control-interface:/control-interface:/g' \
@@ -151,17 +170,30 @@ sed -i \
-e 's/# use-systemd: no/use-systemd: no/g' \
-e 's/# logfile: ""/logfile: "\/var\/log\/unbound\/unbound.log"/g' \
-e 's/# chroot: "\/etc\/unbound"/chroot: ""/g' \
--e 's/# num-threads: 1/# num-threads: '$(nproc)' # Set to nproc by SlackBuild. Uncomment to enable threading/g' \
+-e 's/# num-threads: 1/num-threads: '$(nproc)' # Set to the value of nproc by SlackBuild/g' \
+-e 's/# root-hints: ""/root-hints: "\/var\/lib\/unbound\/root.hints"/g' \
+-e 's/# prefetch: no/prefetch: yes/g' \
+-e 's/# harden-glue: yes/harden-glue: yes/g' \
+-e 's/# harden-dnssec-stripped: yes/harden-dnssec-stripped: yes/g' \
+-e 's/# aggressive-nsec: yes/aggressive-nsec: yes/g' \
+-e 's/# trust-anchor-signaling: yes/trust-anchor-signaling: yes/g' \
+-e 's/# root-key-sentinel: yes/root-key-sentinel: yes/g' \
+-e '/# auto-trust-anchor-file: ".*/a\ auto-trust-anchor-file: "/var/lib/unbound/root.key"' \
$PKG/etc/unbound/unbound.conf \
-mkdir -p $PKG/var/run/unbound
+mkdir -p $PKG/run/unbound
mkdir -p $PKG/var/log/unbound
+mkdir -p $PKG/var/lib/unbound
mkdir -p $PKG/etc/logrotate.d
-chown $UB_USER:$UB_GROUP $PKG/var/run/unbound/
+chown $UB_USER:$UB_GROUP $PKG/run/unbound/
chown $UB_USER:$UB_GROUP $PKG/var/log/unbound/
+chown $UB_USER:$UB_GROUP $PKG/var/lib/unbound/
cp -a $CWD/unbound.logrotate $PKG/etc/logrotate.d/unbound.new
+cp -a $CWD/root.hints $PKG/var/lib/unbound/root.hints
+chown $UB_USER:$UB_GROUP $PKG/var/lib/unbound/root.hints
+chown root:root $PKG/etc/logrotate.d/unbound.new
mv $PKG/etc/unbound/unbound.conf $PKG/etc/unbound/unbound.conf.new
install -m 0644 -D $CWD/rc.unbound $PKG/etc/rc.d/rc.unbound.new
diff --git a/network/unbound/unbound.info b/network/unbound/unbound.info
index 55c07938aa..d17666a509 100644
--- a/network/unbound/unbound.info
+++ b/network/unbound/unbound.info
@@ -1,8 +1,8 @@
PRGNAM="unbound"
-VERSION="1.16.3"
+VERSION="1.19.3"
HOMEPAGE="https://nlnetlabs.nl/projects/unbound/about/"
-DOWNLOAD="https://www.nlnetlabs.nl/downloads/unbound/unbound-1.16.3.tar.gz"
-MD5SUM="f0a767b32058ae67311e5d3665139d15"
+DOWNLOAD="https://www.nlnetlabs.nl/downloads/unbound/unbound-1.19.3.tar.gz"
+MD5SUM="00bf61460c87c2542bcb68d52a2e5195"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/unicornscan/unicornscan.info b/network/unicornscan/unicornscan.info
index 9ccdcc54a5..adecec5e28 100644
--- a/network/unicornscan/unicornscan.info
+++ b/network/unicornscan/unicornscan.info
@@ -5,6 +5,6 @@ DOWNLOAD="https://sourceforge.net/projects/osace/files/unicornscan/unicornscan%2
MD5SUM="4c5f272eb38c333c0094c32317edf758"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="postgresql GeoIP php-pgsql"
+REQUIRES="GeoIP php-pgsql"
MAINTAINER="Robert E. Lee"
EMAIL="robert_at_loveathome.us"
diff --git a/network/urlwatch/urlwatch.SlackBuild b/network/urlwatch/urlwatch.SlackBuild
index a9755c8ca7..ecbfa90494 100644
--- a/network/urlwatch/urlwatch.SlackBuild
+++ b/network/urlwatch/urlwatch.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for urlwatch
-# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=urlwatch
-VERSION=${VERSION:-2.12}
+VERSION=${VERSION:-2.28}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -88,7 +88,7 @@ mv $PKG/usr/share/man $PKG/usr
find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING ChangeLog PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a COPYING CHANGELOG.md README.md PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/urlwatch/urlwatch.info b/network/urlwatch/urlwatch.info
index 7243b4c6c2..1928730232 100644
--- a/network/urlwatch/urlwatch.info
+++ b/network/urlwatch/urlwatch.info
@@ -1,10 +1,10 @@
PRGNAM="urlwatch"
-VERSION="2.12"
+VERSION="2.28"
HOMEPAGE="https://thp.io/2008/urlwatch/"
-DOWNLOAD="https://files.pythonhosted.org/packages/26/33/b8e646660776965f46bc8de7f3182e1a18d369da6206954a8556c32ae246/urlwatch-2.12.tar.gz"
-MD5SUM="92bd607954eb8ce43166a114c3ab6bf2"
+DOWNLOAD="https://files.pythonhosted.org/packages/ef/6d/28df22a0912d40e294cfde709ead82e36441018ff9c0137c9e768ce9084e/urlwatch-2.28.tar.gz"
+MD5SUM="a6cd0d5e84c2f4748a7e3b5da2bd9ed6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="minidb python-keyring pycodestyle"
+REQUIRES="minidb python3-keyring pycodestyle"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/uwsgi/README b/network/uwsgi/README
index 237dee5845..1f418583da 100644
--- a/network/uwsgi/README
+++ b/network/uwsgi/README
@@ -10,6 +10,5 @@ uWSGI is designed to be fully modular. This means that different
plugins can be used in order to add compatibility with tons of different
technology on top of the same core.
-This script builds plugins for Python 2.x, Python 3.x (optional, pass
-PYTHON3=yes to enable; requires python3 to be installed), Perl PSGI, and
+This script builds plugins for Python 2.x, Python 3.x, Perl PSGI, and
Ruby Rack.
diff --git a/network/uwsgi/uwsgi.SlackBuild b/network/uwsgi/uwsgi.SlackBuild
index aa96974e55..90795bf5ca 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.20}
+VERSION=${VERSION:-2.0.25.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -59,17 +59,19 @@ elif [ "$ARCH" = "i686" ]; then
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
-# Build Python 2.x plugin.
-PYTHON=${PYTHON:-yes}
+# Python2 plugin.
+PYTHON2=${PYTHON2:-yes}
-# Set this to "yes" if you want to build a plugin for Python 3.x. Requires
-# python3 to be installed.
-PYTHON3=${PYTHON3:-no}
+# Python3 plugin.
+PYTHON3=${PYTHON3:-yes}
# Perl PSGI plugin.
PSGI=${PSGI:-yes}
@@ -102,7 +104,7 @@ EOF
# Build uWSGI core.
CFLAGS="$SLKCFLAGS" \
-python2 uwsgiconfig.py --build package
+python3 uwsgiconfig.py --build package
install -D -m 0755 uwsgi $PKG/usr/bin/uwsgi
# Create directory for plugins.
@@ -115,17 +117,20 @@ sed -i "s|= /usr|= $PKG/usr|" buildconf/package.ini
PLUGINS="cache ping rpc corerouter fastrouter http ugreen signal syslog"
# Decide which language plugins to build.
-[ "$PYTHON" = "yes" ] && PLUGINS="$PLUGINS python"
[ "$PSGI" = "yes" ] && PLUGINS="$PLUGINS psgi"
[ "$RACK" = "yes" ] && PLUGINS="$PLUGINS rack"
# Build plugins.
for PLUGIN in $PLUGINS ; do
CFLAGS="$SLKCFLAGS" \
- python uwsgiconfig.py --plugin plugins/$PLUGIN package
+ python3 uwsgiconfig.py --plugin plugins/$PLUGIN package
done
-
-# Use python3 to build plugin for it.
+# Use python2 to build python2 plugin
+if [ "$PYTHON2" = "yes" ]; then
+ CFLAGS="$SLKCFLAGS" \
+ python2 uwsgiconfig.py --plugin plugins/python package python
+fi
+# Use python3 to build python3 plugin
if [ "$PYTHON3" = "yes" ]; then
CFLAGS="$SLKCFLAGS" \
python3 uwsgiconfig.py --plugin plugins/python package python3
@@ -133,7 +138,7 @@ fi
# Create a few symlinks for automatic plugin loading.
( cd $PKG/usr/bin
- [ "$PYTHON" = "yes" ] && ln -sf uwsgi uwsgi_python || true
+ [ "$PYTHON2" = "yes" ] && ln -sf uwsgi uwsgi_python || true
[ "$PYTHON3" = "yes" ] && ln -sf uwsgi uwsgi_python3 || true
[ "$PSGI" = "yes" ] && ln -sf uwsgi uwsgi_psgi || true
[ "$RACK" = "yes" ] && ln -sf uwsgi uwsgi_rack || true
diff --git a/network/uwsgi/uwsgi.info b/network/uwsgi/uwsgi.info
index 9e74cb3e3b..b77f7f8f47 100644
--- a/network/uwsgi/uwsgi.info
+++ b/network/uwsgi/uwsgi.info
@@ -1,8 +1,8 @@
PRGNAM="uwsgi"
-VERSION="2.0.20"
+VERSION="2.0.25.1"
HOMEPAGE="https://uwsgi-docs.readthedocs.io/"
-DOWNLOAD="https://projects.unbit.it/downloads/uwsgi-2.0.20.tar.gz"
-MD5SUM="0093ff2a06ad47f0b1a2f1a7944285c9"
+DOWNLOAD="https://files.pythonhosted.org/packages/source/u/uwsgi/uwsgi-2.0.25.1.tar.gz"
+MD5SUM="920deefc852522a0563b2a1351b12b5b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/varnish/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch b/network/varnish/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch
deleted file mode 100644
index a1cc4e65dd..0000000000
--- a/network/varnish/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 0051cbe3b9cc24586e0ad99cff72041c6df944b8 Mon Sep 17 00:00:00 2001
-From: Poul-Henning Kamp <phk@FreeBSD.org>
-Date: Thu, 15 Oct 2020 07:35:04 +0000
-Subject: [PATCH] Import from VTest: Don't use explicit buffer size with no
- buffer
-
----
- bin/varnishtest/vtc_main.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/bin/varnishtest/vtc_main.c b/bin/varnishtest/vtc_main.c
-index 1deea4ab78..3c3887450c 100644
---- a/bin/varnishtest/vtc_main.c
-+++ b/bin/varnishtest/vtc_main.c
-@@ -698,7 +698,7 @@ main(int argc, char * const *argv)
- else
- tmppath = strdup("/tmp");
-
-- cwd = getcwd(NULL, PATH_MAX);
-+ cwd = getcwd(NULL, 0);
- extmacro_def("pwd", "%s", cwd);
-
- vmod_path = NULL;
diff --git a/network/varnish/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch b/network/varnish/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch
deleted file mode 100644
index fabb9aacb6..0000000000
--- a/network/varnish/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From f04d7df6e6d5b350740e01d24749a3930390b7a0 Mon Sep 17 00:00:00 2001
-From: Nils Goroll <nils.goroll@uplex.de>
-Date: Thu, 15 Oct 2020 12:01:35 +0200
-Subject: [PATCH] vtest: put cwd on the stack
-
-0051cbe3b9cc24586e0ad99cff72041c6df944b8 did not work on
-solaris-descendents, the man page clearly states that the size argument
-also determines the buffer to be malloc()ed for a NULL buffer argument.
----
- bin/varnishtest/vtc_main.c | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/bin/varnishtest/vtc_main.c b/bin/varnishtest/vtc_main.c
-index 3c3887450c..1b322f8dea 100644
---- a/bin/varnishtest/vtc_main.c
-+++ b/bin/varnishtest/vtc_main.c
-@@ -686,6 +686,7 @@ main(int argc, char * const *argv)
- int use_cleaner = 0;
- uintmax_t bufsiz;
- const char *p;
-+ char buf[PATH_MAX];
-
- argv0 = strrchr(argv[0], '/');
- if (argv0 == NULL)
-@@ -698,7 +699,7 @@ main(int argc, char * const *argv)
- else
- tmppath = strdup("/tmp");
-
-- cwd = getcwd(NULL, 0);
-+ cwd = getcwd(buf, sizeof buf);
- extmacro_def("pwd", "%s", cwd);
-
- vmod_path = NULL;
diff --git a/network/varnish/rc.varnishd b/network/varnish/rc.varnishd
index b6354687f7..b8e0d16c5a 100644
--- a/network/varnish/rc.varnishd
+++ b/network/varnish/rc.varnishd
@@ -33,11 +33,13 @@ VARNISH_OPTS="-f $CONF \
-T $ADMIN_IP:${ADMIN_PORT} \
-a $HTTP_IP:${HTTP_PORT} \
-t $DEFAULT_TTL \
- -w${MIN_THREADS},${MAX_THREADS},${THREAD_TIMEOUT} \
-P $PID"
-VARNISH_PARAMS="-p http_headers=$HTTP_HEADERS \
- -p connect_timeout=$CONNECT_TIMEOUT"
+VARNISH_PARAMS="-p http_max_hdr=$HTTP_HEADERS \
+ -p thread_pool_min=${MIN_THREADS} \
+ -p thread_pool_max=${MAX_THREADS} \
+ -p thread_pool_timeout=${THREAD_TIMEOUT} \
+ -p connect_timeout=$CONNECT_TIMEOUT"
varnish_start() {
if [ -e $PID ];then
@@ -51,7 +53,7 @@ varnish_start() {
fi
ulimit -n $FILE_DESCRIPTORS
echo "starting varnish..."
- $BIN $VARNISH_OPTS $VARNISH_PARAMS
+ $BIN $VARNISH_OPTS $VARNISH_PARAMS
}
varnish_stop() {
echo "stopping varnish..."
diff --git a/network/varnish/varnish.SlackBuild b/network/varnish/varnish.SlackBuild
index cad34e3806..2b76da61da 100644
--- a/network/varnish/varnish.SlackBuild
+++ b/network/varnish/varnish.SlackBuild
@@ -8,8 +8,8 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=varnish
-VERSION=${VERSION:-6.5.1}
-BUILD=${BUILD:-2}
+VERSION=${VERSION:-7.5.0}
+BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -55,8 +55,8 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tgz
cd $PRGNAM-$VERSION
-patch -p1 -i $CWD/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch
-patch -p1 -i $CWD/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch
+#patch -p1 -i $CWD/0051cbe3b9cc24586e0ad99cff72041c6df944b8.patch
+#patch -p1 -i $CWD/f04d7df6e6d5b350740e01d24749a3930390b7a0.patch
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
diff --git a/network/varnish/varnish.info b/network/varnish/varnish.info
index 17e7902b96..92c8b03f7c 100644
--- a/network/varnish/varnish.info
+++ b/network/varnish/varnish.info
@@ -1,8 +1,8 @@
PRGNAM="varnish"
-VERSION="6.5.1"
+VERSION="7.5.0"
HOMEPAGE="https://www.varnish-cache.org/"
-DOWNLOAD="https://varnish-cache.org/_downloads/varnish-6.5.1.tgz"
-MD5SUM="09304038cb3bb744a7c1742c8de848a1"
+DOWNLOAD="https://varnish-cache.org/downloads/varnish-7.5.0.tgz"
+MD5SUM="160a9a1f5cb8bae594490567ee39bd4b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="Sphinx"
diff --git a/network/vcspull/vcspull.SlackBuild b/network/vcspull/vcspull.SlackBuild
index bc8e60f428..b857eb09b0 100644
--- a/network/vcspull/vcspull.SlackBuild
+++ b/network/vcspull/vcspull.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for vcspull
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2014-2023 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vcspull
-VERSION=${VERSION:-0.9.0}
+VERSION=${VERSION:-1.25.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -79,13 +79,14 @@ 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 {} \;
-python setup.py install --root=$PKG
+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/usr/doc/$PRGNAM-$VERSION
-cp -a CHANGES LICENSE PKG-INFO README.rst doc/* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a LICENSE PKG-INFO README.md docs/*.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/vcspull/vcspull.info b/network/vcspull/vcspull.info
index 4528d8fe10..21e3561389 100644
--- a/network/vcspull/vcspull.info
+++ b/network/vcspull/vcspull.info
@@ -1,10 +1,10 @@
PRGNAM="vcspull"
-VERSION="0.9.0"
+VERSION="1.25.0"
HOMEPAGE="https://github.com/tony/vcspull/"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/vcspull-0.9.0.tar.gz"
-MD5SUM="30a82abdff974446aa3b96a7734043af"
+DOWNLOAD="https://files.pythonhosted.org/packages/75/d7/f4e3c1c71a5a6df182b71a4dd657e4f4ea3fb0a906c7e464a2c0b82b2a25/vcspull-1.25.0.tar.gz"
+MD5SUM="90c2d41337157407f77314eb2b32dbd4"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="kaptan python2-PyYAML argcomplete colorama"
+REQUIRES="python3-libvcs colorama"
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/vdirsyncer/vdirsyncer.SlackBuild b/network/vdirsyncer/vdirsyncer.SlackBuild
index ebd0bb5919..42cb7e5cb4 100644
--- a/network/vdirsyncer/vdirsyncer.SlackBuild
+++ b/network/vdirsyncer/vdirsyncer.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vdirsyncer
-VERSION=${VERSION:-0.18.0}
+VERSION=${VERSION:-0.19.2}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -85,6 +85,7 @@ mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
*.rst docs/* \
$PKG/usr/doc/$PRGNAM-$VERSION
+chmod =755 $PKG/usr/doc/$PRGNAM-$VERSION/tutorials
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
# Remove empty directory
diff --git a/network/vdirsyncer/vdirsyncer.info b/network/vdirsyncer/vdirsyncer.info
index 64a1f70bce..98f279ade4 100644
--- a/network/vdirsyncer/vdirsyncer.info
+++ b/network/vdirsyncer/vdirsyncer.info
@@ -1,10 +1,10 @@
PRGNAM="vdirsyncer"
-VERSION="0.18.0"
+VERSION="0.19.2"
HOMEPAGE="https://github.com/pimutils/vdirsyncer"
-DOWNLOAD="https://files.pythonhosted.org/packages/fe/af/b04ca8d53dba17d9f042e9d94b56cf42b23ce8927d84591da1ddd3093cdc/vdirsyncer-0.18.0.tar.gz"
-MD5SUM="f586a13896609a5a366154a2bee76642"
+DOWNLOAD="https://files.pythonhosted.org/packages/81/fb/6fbb7f1d102a59db275811a0de756d6f5bb55c624ba4bdf918b3fbd2ddc0/vdirsyncer-0.19.2.tar.gz"
+MD5SUM="243ecfc93cdcf61908fc786af4017540"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="click click-log click-threading requests-toolbelt python-urwid"
+REQUIRES="click click-log click-threading requests-toolbelt python-urwid python3-aiohttp python3-aiostream python3-atomicwrites"
MAINTAINER="Tonus"
-EMAIL="tonus1@gmail.com"
+EMAIL="tonus1@free.fr"
diff --git a/network/viber/README b/network/viber/README
index ad9e2bb245..c7c9e2f810 100644
--- a/network/viber/README
+++ b/network/viber/README
@@ -1,6 +1,8 @@
-Viber is a mobile application that allows you to make phone calls
-and send text messages to all other Viber users for free!
+Viber: Free and secure calls and messages to anyone, anywhere.
-Viber is available over WiFi or 3G.
+With Viber on your desktop, you can send and receive messages, enjoy
+group calls, create stickers, and more, as your devices seamlessly sync.
-There's only available the 64bit version.
+NOTE!
+Viber for Desktop is synced to your mobile account. To activate Viber
+for Desktop, you will need an active Viber account on your mobile phone.
diff --git a/network/viber/slack-desc b/network/viber/slack-desc
index 126fc3cb47..c37dccfc3e 100644
--- a/network/viber/slack-desc
+++ b/network/viber/slack-desc
@@ -6,13 +6,13 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-viber: viber (mobile messaging application)
-viber:
-viber: Viber is a mobile application that allows you to make phone
-viber: calls and send text messages to all other Viber users for free!
-viber:
+viber: viber (Free and secure calls and messages)
viber:
+viber: With Viber on your desktop, you can send and receive messages,
+viber: enjoy group calls, create stickers, and more, as your devices
+viber: seamlessly sync.
viber:
+viber: https://www.viber.com/
viber:
viber:
viber:
diff --git a/network/viber/viber.SlackBuild b/network/viber/viber.SlackBuild
index 0390e0ee2c..81a497720a 100644
--- a/network/viber/viber.SlackBuild
+++ b/network/viber/viber.SlackBuild
@@ -2,6 +2,7 @@
#
# Slackware build script for Viber
+# Copyright 2023 Petar Petrov, slackalaxy@gmail.com
# Copyright 2009-2017 Roberto Metere, Newcastle Upon Tyne, UK
# All rights reserved.
#
@@ -25,25 +26,22 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=viber
-VERSION=${VERSION:-16.1.0.37}
+VERSION=${VERSION:-21.0.0.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-case "$(uname -m)" in
- i?86) DEBARCH="i386" ; LIBDIRSUFFIX="" ; ARCH=i386 ;;
- x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ; ARCH=x86_64 ;;
- *) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
-esac
+if [ -z "$ARCH" ]; then
+ ARCH=$( uname -m )
+fi
-# Get the real version
-REAL_VER=$(ar p ${PRGNAM}.deb control.tar.xz | tar JxO ./control | grep Version | awk '{print $2}' | cut -d- -f1)
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH architecture is unsupported." >/dev/stderr
+ exit 1
+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-$REAL_VER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
@@ -51,50 +49,40 @@ TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
-set -eu
+set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $PKG
-ar p $CWD/${PRGNAM}.deb data.tar.xz | xz -d | tar xv
-# Move to standard place
-mv $PKG/opt/viber/* $PKG/usr/share/viber
-rm -r $PKG/opt
-# Fix desktop launcher
-sed -i 's/\/opt\/viber\/Viber/\/usr\/bin\/ViberPC/' $PKG/usr/share/applications/viber.desktop
-
-#
-# Make a shell launcher
-#
-# In my opinion, it's a bug... that is, Viber must be called from installation path
-# or with complete path to installation path, because it looks for other files.
-# Any symbolic link or hard copy of main binary to /usr/bin would yield a
-# non-working launcher.
-#
-# ViberPC is the name of the window (it is better to call it as such for a better
-# integration with docks, like cairo-dock)
-# Anyway for compatibility with previous version a link to /usr/bin/viber is created.
-#
-mkdir -p $PKG/usr/bin
-printf "#!/bin/sh\n/usr/share/viber/Viber\n" > $PKG/usr/bin/ViberPC
-ln -s ViberPC $PKG/usr/bin/viber
-
-# Adjust ownerships and permissions
+ar p $CWD/$PRGNAM.deb data.tar.xz | xz -d | tar xv
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 {} \;
-chmod +x $PKG/usr/bin/ViberPC
-cd
-mkdir -p $PKG/usr/doc/$PRGNAM-$REAL_VER
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$REAL_VER/$PRGNAM.SlackBuild
+mkdir -p $PKG/usr/bin
+cd $PKG/usr/bin
+ln -s ../../opt/viber/Viber .
+
+# make libs executable
+find $PKG -name *.so -exec chmod 755 {} \;
+find $PKG -name *.so.* -exec chmod 755 {} \;
+
+# fix path
+sed -i 's:/opt/viber/::' $PKG/usr/share/applications/$PRGNAM.desktop
+sed -i 's:/usr/share/pixmaps/viber.png:viber:' $PKG/usr/share/applications/$PRGNAM.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
+
+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-$REAL_VER-$ARCH-$BUILD$TAG.$PKGTYPE
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/viber/viber.info b/network/viber/viber.info
index 807f450a04..efc5945b88 100644
--- a/network/viber/viber.info
+++ b/network/viber/viber.info
@@ -1,10 +1,10 @@
PRGNAM="viber"
-VERSION="16.1.0.37"
-HOMEPAGE="https://www.viber.com/products/linux"
+VERSION="21.0.0.1"
+HOMEPAGE="https://www.viber.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
DOWNLOAD_x86_64="http://download.cdn.viber.com/cdn/desktop/Linux/viber.deb"
-MD5SUM_x86_64="aaf008d5f636b048ddd38839be132367"
-REQUIRES=""
-MAINTAINER="Roberto Metere"
-EMAIL="roberto@metere.it"
+MD5SUM_x86_64="7e93a64efebd9112df3ac7f8dc0c4580"
+REQUIRES="snappy tslib"
+MAINTAINER="Petar Petrov"
+EMAIL="slackalaxy@gmail.com"
diff --git a/network/vimb/vimb.SlackBuild b/network/vimb/vimb.SlackBuild
index 153a86dcd3..e62c7acc5b 100644
--- a/network/vimb/vimb.SlackBuild
+++ b/network/vimb/vimb.SlackBuild
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vimb
-VERSION=${VERSION:-3.2.0}
+VERSION=${VERSION:-3.7.0}
BUILD=${BUILD:-1}
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
@@ -95,6 +92,10 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
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 *.md LICENSE $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
diff --git a/network/vimb/vimb.info b/network/vimb/vimb.info
index 8f03b4d82b..d5c1cb95aa 100644
--- a/network/vimb/vimb.info
+++ b/network/vimb/vimb.info
@@ -1,8 +1,8 @@
PRGNAM="vimb"
-VERSION="3.2.0"
+VERSION="3.7.0"
HOMEPAGE="https://fanglingsu.github.io/vimb"
-DOWNLOAD="https://github.com/fanglingsu/vimb/archive/3.2.0/vimb-3.2.0.tar.gz"
-MD5SUM="c0848041b6f6d618d5d4d0e169c1ea5c"
+DOWNLOAD="https://github.com/fanglingsu/vimb/archive/3.7.0/vimb-3.7.0.tar.gz"
+MD5SUM="4052a71111eb31e5b5a39a75c460d441"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="webkit2gtk"
diff --git a/network/vimfx/README b/network/vimfx/README
new file mode 100644
index 0000000000..b67bb891b4
--- /dev/null
+++ b/network/vimfx/README
@@ -0,0 +1,19 @@
+VimFx is a Firefox extension which adds short, Vim-style keyboard
+shortcuts for browsing and navigation, for a near mouseless
+experience.
+
+One of key tenets of VimFx is that the standard Firefox features are
+always preferable to re-implementing similar functionality.
+
+VimFx is a legacy extension as opposite to WebExtensions. It works on
+modern versions of Firefox thanks to a shim called LegacyFox, which is
+also included in this script. Unlike WebExtensions this legacy one
+works on incompletely loaded, blank, and system pages.
+
+This script will install VimFx for all users on the system. When
+starting Firefox, users will see a yellow warning triangle above the
+hamburger menu (a button with three horizontal lines) and will be
+prompted to activate the extension.
+
+README.SBo contains details on building the package for a Firefox
+different from the stock Slackware mozilla-firefox.
diff --git a/network/vimfx/README.SBo b/network/vimfx/README.SBo
new file mode 100644
index 0000000000..4118b56713
--- /dev/null
+++ b/network/vimfx/README.SBo
@@ -0,0 +1,19 @@
+To build the package for a Firefox different from the stock Slackware
+mozilla-firefox, pass to the script the variable FFDIR that contains
+the Firefox installation directory as in
+FFDIR=/usr/lib64/firefox-latest
+
+In this case it may also be advisable to update LegacyFox, check the
+release list on the VimFx homepage. The LegacyFox version can be
+passed to the script in the variable LFVERSION.
+
+For non ESR Firefox the VimFx xpi-file
+$FFDIR/browser/extensions/VimFx-unlisted@akhodakivskiy.github.com.xpi
+must be copied or symlinked to the directory
+~/.mozilla/firefox/<profile name>/extensions/
+for every Firefox user (and for every profile).
+
+Also, for non ESR Firefox the about:addons page shows a red banner
+with the text "VimFx could not be verified for use in Firefox and has
+been disabled". It is wrong and can be ignored; VimFx will work
+regardless.
diff --git a/network/vimfx/slack-desc b/network/vimfx/slack-desc
new file mode 100644
index 0000000000..8b00563a99
--- /dev/null
+++ b/network/vimfx/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------------------------------------------------------|
+vimfx: vimfx (Vim keybindings for Firefox)
+vimfx:
+vimfx: VimFx is a Firefox extension which adds short, Vim-style keyboard
+vimfx: shortcuts for browsing and navigation, for a near mouseless
+vimfx: experience.
+vimfx:
+vimfx: One of key tenets of VimFx is that the standard Firefox features are
+vimfx: always preferable to re-implementing similar functionality.
+vimfx:
+vimfx: Homepage: https://github.com/akhodakivskiy/VimFx
+vimfx:
diff --git a/network/vimfx/vimfx.SlackBuild b/network/vimfx/vimfx.SlackBuild
new file mode 100644
index 0000000000..ba98c70c6b
--- /dev/null
+++ b/network/vimfx/vimfx.SlackBuild
@@ -0,0 +1,103 @@
+#!/bin/bash
+
+# Slackware build script for vimfx
+
+# Copyright 2024, Alexander Verbovetsky, 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=vimfx
+VERSION=${VERSION:-0.27.1}
+LFVERSION=${LFVERSION:-3.3}
+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" = "x86_64" ]; then
+ LIBDIRSUFFIX="64"
+elif [ "$ARCH" = "aarch64" ]; then
+ LIBDIRSUFFIX="64"
+else
+ LIBDIRSUFFIX=""
+fi
+
+FFDIR=${FFDIR:-/usr/lib${LIBDIRSUFFIX}/firefox}
+
+set -e
+
+case $FFDIR in
+ /*) if ! /usr/bin/pathchk -p -- "$FFDIR"; then
+ echo "invalid FFDIR"
+ exit 1
+ fi
+ ;;
+ *) echo "FFDIR isn't an absolute path"
+ exit 1
+ ;;
+esac
+
+rm -rf $PKG
+mkdir -p $TMP $PKG$FFDIR/browser/extensions $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/*v$LFVERSION*.tar.gz
+mv *v$LFVERSION* $PRGNAM-$VERSION
+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 install DESTDIR=$PKG$FFDIR
+
+install -m 0644 -o root -g root $CWD/VimFx.xpi \
+ $PKG$FFDIR/browser/extensions/VimFx-unlisted@akhodakivskiy.github.com.xpi
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat README > $PKG/usr/doc/$PRGNAM-$VERSION/README-LegacyFox
+cd $CWD
+for f in CHANGELOG.md PEOPLE.md README.md $PRGNAM.SlackBuild; do \
+ cat $f > $PKG/usr/doc/$PRGNAM-$VERSION/$f; done
+
+mkdir -p $PKG/install
+cat 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/vimfx/vimfx.info b/network/vimfx/vimfx.info
new file mode 100644
index 0000000000..ddcf2b425e
--- /dev/null
+++ b/network/vimfx/vimfx.info
@@ -0,0 +1,18 @@
+PRGNAM="vimfx"
+VERSION="0.27.1"
+HOMEPAGE="https://github.com/akhodakivskiy/VimFx"
+DOWNLOAD="https://github.com/akhodakivskiy/VimFx/releases/download/v0.27.1/VimFx.xpi \
+ https://raw.githubusercontent.com/akhodakivskiy/VimFx/v0.27.1/README.md \
+ https://raw.githubusercontent.com/akhodakivskiy/VimFx/v0.27.1/CHANGELOG.md \
+ https://raw.githubusercontent.com/akhodakivskiy/VimFx/v0.27.1/PEOPLE.md \
+ https://git.gir.st/LegacyFox.git/snapshot/v3.3.tar.gz"
+MD5SUM="66567d440fb1f37cd61ae594446548e3 \
+ 237b1aac5c13b65297d7a19cd29ddb6b \
+ d30337da8ffade3fad582f3bb927ab8f \
+ 34b9e545905fa6d00e2421a6c1a81a5a \
+ 3e2e2fc0c42d6f008706e74754d01731"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/vivaldi/vivaldi.SlackBuild b/network/vivaldi/vivaldi.SlackBuild
index 6fc1fe0f8e..0b8ba3e053 100644
--- a/network/vivaldi/vivaldi.SlackBuild
+++ b/network/vivaldi/vivaldi.SlackBuild
@@ -4,7 +4,7 @@
#
# Copyright 2015-2017 Edinaldo P. Silva, Rio de Janeiro, Brazil.
# Copyright 2017-2019, Alexander Verbovetsky, Moscow, Russia
-# Copyright 2019-2022, Ruari Oedegaard, Oslo, Norway
+# Copyright 2019-2024, Ruari Oedegaard, Oslo, Norway
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vivaldi
-VERSION=${VERSION:-5.4.2753.51}
+VERSION=${VERSION:-6.6.3271.61}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/vivaldi/vivaldi.info b/network/vivaldi/vivaldi.info
index 458297de51..2dddcfae85 100644
--- a/network/vivaldi/vivaldi.info
+++ b/network/vivaldi/vivaldi.info
@@ -1,12 +1,12 @@
PRGNAM="vivaldi"
-VERSION="5.4.2753.51"
+VERSION="6.6.3271.61"
HOMEPAGE="https://vivaldi.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_5.4.2753.51-1_amd64.deb \
- https://update.vivaldi.com/update/1.0/relnotes/5.4.2753.51.html"
-MD5SUM_x86_64="3a6b69c60f400613be6499d0ada0d68a \
- 948f4671528429c44b30948b4b9daad7"
+DOWNLOAD_x86_64="https://downloads.vivaldi.com/stable/vivaldi-stable_6.6.3271.61-1_amd64.deb \
+ https://update.vivaldi.com/update/1.0/relnotes/6.6.3271.61.html"
+MD5SUM_x86_64="8f5399008b3ce407841768b2e88d84cf \
+ 5dcbd276bf780eb1106b8ac254e2a223"
REQUIRES=""
MAINTAINER="Ruari Oedegaard"
EMAIL="sbo@ruari.com"
diff --git a/network/vnstat/vnstat.SlackBuild b/network/vnstat/vnstat.SlackBuild
index ea62a188b4..829a53c1ca 100644
--- a/network/vnstat/vnstat.SlackBuild
+++ b/network/vnstat/vnstat.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for vnstat
# Copyright 2017-2019 Michiel van Wessem, Manchester, United Kingdom.
-# Copyright 2019-2022 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2019-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=vnstat
-VERSION=${VERSION:-2.9}
+VERSION=${VERSION:-2.12}
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
diff --git a/network/vnstat/vnstat.info b/network/vnstat/vnstat.info
index 86447582bb..09eb1780d8 100644
--- a/network/vnstat/vnstat.info
+++ b/network/vnstat/vnstat.info
@@ -1,8 +1,8 @@
PRGNAM="vnstat"
-VERSION="2.9"
+VERSION="2.12"
HOMEPAGE="https://humdi.net/vnstat/"
-DOWNLOAD="https://humdi.net/vnstat/vnstat-2.9.tar.gz"
-MD5SUM="ba7e4ca77e750146711302d0630a1656"
+DOWNLOAD="https://humdi.net/vnstat/vnstat-2.12.tar.gz"
+MD5SUM="98bab6e04f123cfd9f605c579bce8ae7"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/w3af/w3af.info b/network/w3af/w3af.info
index f7e4369793..48f2ac0d7f 100644
--- a/network/w3af/w3af.info
+++ b/network/w3af/w3af.info
@@ -5,6 +5,6 @@ DOWNLOAD="http://downloads.sourceforge.net/project/w3af/w3af/w3af%201.0-stable/w
MD5SUM="4ac1fb2cfcbbefb8c0caa813dd822723"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="SOAPpy graphviz lxml python3-nltk pyOpenSSL pygtksourceview pysvn scapy"
+REQUIRES="SOAPpy graphviz python2-lxml python3-nltk pyOpenSSL pygtksourceview pysvn scapy"
MAINTAINER="Marco Bonetti"
EMAIL="sid77@slackware.it"
diff --git a/network/w3m/README b/network/w3m/README
index 3230f813a3..9246f5d791 100644
--- a/network/w3m/README
+++ b/network/w3m/README
@@ -1,29 +1,23 @@
w3m is a World Wide Web (WWW) text based client.
-Help is avaliable in English, German and Japanese. There is
-an option menu which can be configured for the chosen
-lanugage.
-
-It will display hypertext markup language (HTML) documents
-containing links to files residing on the local system, as
-well as files residing on remote systems. It can display
-HTML tables, frames, and images, and supports tabbed
-browsing. In addition, it can be used as a "pager" in much
-the same manner as "more" or "less". w3m can display images
-in both the framebuffer, in supported terminals, and the X
-server.
-
-Supported consoles for image display are st, urxvt
-(rxvt-unicode) and termite (via a patch), including inside
-screen (untested with tmux).
+Help is avaliable in English, German and Japanese. There is an option
+menu which can be configured for the chosen lanugage.
-Optional dependency: compface
+It will display hypertext markup language (HTML) documents containing
+links to files residing on the local system, as well as files residing
+on remote systems. It can display HTML tables, frames, and images, and
+supports tabbed browsing. In addition, it can be used as a "pager" in
+much the same manner as "more" or "less". w3m can display images in
+both the framebuffer, in supported terminals, and the X server.
-(Compface converts 48x48x1 images to and from a compressed
-format. The purpose is to allow the inclusion of face
-images within mail headers using the field name 'X-face:'.)
+Supported consoles for image display are st, urxvt (rxvt-unicode) and
+termite (via a patch), including inside screen (untested with tmux).
+Optional dependency: compface
+(Compface converts 48x48x1 images to and from a compressed format. The
+purpose is to allow the inclusion of face images within mail headers
+using the field name 'X-face:'.)
SlackBuild Options:
@@ -32,14 +26,13 @@ NOMAILER=1 disable w3mmailer
GUIBROWSER=/path/to/browser set the GUI browser
EDITOR=/path/to/editor set external editor
-EG:
+E.G.:
NOMOUSE=1 ./w3m.SlackBuild
NOMAILER=1 ./w3m.SlackBuild
GUIBROWSER=/usr/bin/qutebrowser ./w3m.SlackBuild
-Or combine any of them together. By default GUIBROWSER
-is set to /usr/bin/firefox. EDITOR will be picked up from
-the environment if set.
+Or combine any of them together. By default GUIBROWSER is set to
+/usr/bin/firefox. EDITOR will be picked up from the environment if set.
These are also settable via the options menu.
diff --git a/network/w3m/patches/w3m-0.5.2-gc72.patch b/network/w3m/patches/w3m-0.5.2-gc72.patch
deleted file mode 100644
index f2df44f06b..0000000000
--- a/network/w3m/patches/w3m-0.5.2-gc72.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -Naurb w3m-0.5.2.orig/main.c w3m-0.5.2/main.c
---- w3m-0.5.2.orig/main.c 2007-05-31 10:19:50.000000000 +0900
-+++ w3m-0.5.2/main.c 2009-11-09 08:20:02.184953443 +0900
-@@ -312,7 +312,11 @@
- lock = 0;
- }
- }
-+#if GC_VERSION_MAJOR >= 7 && GC_VERSION_MINOR >= 2
-+ else if (orig_GC_warn_proc = GC_get_warn_proc())
-+#else
- else if (orig_GC_warn_proc)
-+#endif
- orig_GC_warn_proc(msg, arg);
- else
- fprintf(stderr, msg, (unsigned long)arg);
-@@ -842,7 +846,11 @@
- mySignal(SIGPIPE, SigPipe);
- #endif
-
-+#if GC_VERSION_MAJOR >= 7 && GC_VERSION_MINOR >= 2
-+ GC_set_warn_proc(wrap_GC_warn_proc);
-+#else
- orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc);
-+#endif
- err_msg = Strnew();
- if (load_argc == 0) {
- /* no URL specified */
diff --git a/network/w3m/patches/w3m-0.5.3-button.patch b/network/w3m/patches/w3m-0.5.3-button.patch
deleted file mode 100644
index a645e25637..0000000000
--- a/network/w3m/patches/w3m-0.5.3-button.patch
+++ /dev/null
@@ -1,439 +0,0 @@
-Description: Support the button element as defined in HTML 4.01
-Origin: upstream, http://www.sic.med.tohoku.ac.jp/~satodai/w3m-dev/201009.month/4411.html
-Bug-Debian: http://bugs.debian.org/136810
-
-Index: file.c
-===================================================================
-RCS file: /cvsroot/w3m/w3m/file.c,v
-retrieving revision 1.264
-diff -u -r1.264 file.c
---- w3m.orig/file.c 3 Aug 2010 10:02:16 -0000 1.264
-+++ w3m/file.c 17 Sep 2010 12:18:55 -0000
-@@ -2467,6 +2467,7 @@
- bcopy((void *)&obuf->anchor, (void *)&obuf->bp.anchor,
- sizeof(obuf->anchor));
- obuf->bp.img_alt = obuf->img_alt;
-+ obuf->bp.input_alt = obuf->input_alt;
- obuf->bp.in_bold = obuf->in_bold;
- obuf->bp.in_italic = obuf->in_italic;
- obuf->bp.in_under = obuf->in_under;
-@@ -2484,6 +2485,7 @@
- bcopy((void *)&obuf->bp.anchor, (void *)&obuf->anchor,
- sizeof(obuf->anchor));
- obuf->img_alt = obuf->bp.img_alt;
-+ obuf->input_alt = obuf->bp.input_alt;
- obuf->in_bold = obuf->bp.in_bold;
- obuf->in_italic = obuf->bp.in_italic;
- obuf->in_under = obuf->bp.in_under;
-@@ -2727,7 +2729,7 @@
- Str line = obuf->line, pass = NULL;
- char *hidden_anchor = NULL, *hidden_img = NULL, *hidden_bold = NULL,
- *hidden_under = NULL, *hidden_italic = NULL, *hidden_strike = NULL,
-- *hidden_ins = NULL, *hidden = NULL;
-+ *hidden_ins = NULL, *hidden_input, *hidden = NULL;
-
- #ifdef DEBUG
- if (w3m_debug) {
-@@ -2759,6 +2761,12 @@
- hidden = hidden_img;
- }
- }
-+ if (obuf->input_alt.in) {
-+ if ((hidden_input = has_hidden_link(obuf, HTML_INPUT_ALT)) != NULL) {
-+ if (!hidden || hidden_input < hidden)
-+ hidden = hidden_input;
-+ }
-+ }
- if (obuf->in_bold) {
- if ((hidden_bold = has_hidden_link(obuf, HTML_B)) != NULL) {
- if (!hidden || hidden_bold < hidden)
-@@ -2810,6 +2818,8 @@
- Strcat_charp(line, "</a>");
- if (obuf->img_alt && !hidden_img)
- Strcat_charp(line, "</img_alt>");
-+ if (obuf->input_alt.in && !hidden_input)
-+ Strcat_charp(line, "</input_alt>");
- if (obuf->in_bold && !hidden_bold)
- Strcat_charp(line, "</b>");
- if (obuf->in_italic && !hidden_italic)
-@@ -3020,6 +3030,18 @@
- Strcat_charp(tmp, "\">");
- push_tag(obuf, tmp->ptr, HTML_IMG_ALT);
- }
-+ if (!hidden_input && obuf->input_alt.in) {
-+ Str tmp;
-+ if (obuf->input_alt.hseq > 0)
-+ obuf->input_alt.hseq = - obuf->input_alt.hseq;
-+ tmp = Sprintf("<INPUT_ALT hseq=\"%d\" fid=\"%d\" name=\"%s\" type=\"%s\" value=\"%s\">",
-+ obuf->input_alt.hseq,
-+ obuf->input_alt.fid,
-+ obuf->input_alt.name->ptr,
-+ obuf->input_alt.type->ptr,
-+ obuf->input_alt.value->ptr);
-+ push_tag(obuf, tmp->ptr, HTML_INPUT_ALT);
-+ }
- if (!hidden_bold && obuf->in_bold)
- push_tag(obuf, "<B>", HTML_B);
- if (!hidden_italic && obuf->in_italic)
-@@ -3730,6 +3752,63 @@
- }
-
- Str
-+process_button(struct parsed_tag *tag)
-+{
-+ Str tmp = NULL;
-+ char *p, *q, *r, *qq = NULL;
-+ int qlen, v;
-+
-+ if (cur_form_id < 0) {
-+ char *s = "<form_int method=internal action=none>";
-+ tmp = process_form(parse_tag(&s, TRUE));
-+ }
-+ if (tmp == NULL)
-+ tmp = Strnew();
-+
-+ p = "submit";
-+ parsedtag_get_value(tag, ATTR_TYPE, &p);
-+ q = NULL;
-+ parsedtag_get_value(tag, ATTR_VALUE, &q);
-+ r = "";
-+ parsedtag_get_value(tag, ATTR_NAME, &r);
-+
-+ v = formtype(p);
-+ if (v == FORM_UNKNOWN)
-+ return NULL;
-+
-+ if (!q) {
-+ switch (v) {
-+ case FORM_INPUT_SUBMIT:
-+ case FORM_INPUT_BUTTON:
-+ q = "SUBMIT";
-+ break;
-+ case FORM_INPUT_RESET:
-+ q = "RESET";
-+ break;
-+ }
-+ }
-+ if (q) {
-+ qq = html_quote(q);
-+ qlen = strlen(q);
-+ }
-+
-+ // Strcat_charp(tmp, "<pre_int>");
-+ Strcat(tmp, Sprintf("<input_alt hseq=\"%d\" fid=\"%d\" type=%s "
-+ "name=\"%s\" value=\"%s\">",
-+ cur_hseq++, cur_form_id, p, html_quote(r), qq));
-+ return tmp;
-+}
-+
-+Str
-+process_n_button(void)
-+{
-+ Str tmp = Strnew();
-+ Strcat_charp(tmp, "</input_alt>");
-+ // Strcat_charp(tmp, "</pre_int>");
-+ return tmp;
-+}
-+
-+Str
- process_select(struct parsed_tag *tag)
- {
- Str tmp = NULL;
-@@ -4859,7 +4938,35 @@
- if (i > obuf->bottom_margin)
- obuf->bottom_margin = i;
- }
-+ if (parsedtag_get_value(tag, ATTR_HSEQ, &hseq)) {
-+ obuf->input_alt.hseq = hseq;
-+ }
-+ if (parsedtag_get_value(tag, ATTR_FID, &i)) {
-+ obuf->input_alt.fid = i;
-+ }
-+ if (parsedtag_get_value(tag, ATTR_TYPE, &p)) {
-+ obuf->input_alt.type = Strnew_charp(p);
-+ }
-+ if (parsedtag_get_value(tag, ATTR_VALUE, &p)) {
-+ obuf->input_alt.value = Strnew_charp(p);
-+ }
-+ if (parsedtag_get_value(tag, ATTR_NAME, &p)) {
-+ obuf->input_alt.name = Strnew_charp(p);
-+ }
-+ obuf->input_alt.in = 1;
- return 0;
-+ case HTML_N_INPUT_ALT:
-+ if (obuf->input_alt.in) {
-+ if (!close_effect0(obuf, HTML_INPUT_ALT))
-+ push_tag(obuf, "</input_alt>", HTML_N_INPUT_ALT);
-+ obuf->input_alt.hseq = 0;
-+ obuf->input_alt.fid = -1;
-+ obuf->input_alt.in = 0;
-+ obuf->input_alt.type = NULL;
-+ obuf->input_alt.name = NULL;
-+ obuf->input_alt.value = NULL;
-+ }
-+ return 1;
- case HTML_TABLE:
- close_anchor(h_env, obuf);
- obuf->table_level++;
-@@ -4968,6 +5075,16 @@
- case HTML_INPUT:
- close_anchor(h_env, obuf);
- tmp = process_input(tag);
-+ if (tmp)
-+ HTMLlineproc1(tmp->ptr, h_env);
-+ return 1;
-+ case HTML_BUTTON:
-+ tmp = process_button(tag);
-+ if (tmp)
-+ HTMLlineproc1(tmp->ptr, h_env);
-+ return 1;
-+ case HTML_N_BUTTON:
-+ tmp = process_n_button();
- if (tmp)
- HTMLlineproc1(tmp->ptr, h_env);
- return 1;
-@@ -5680,6 +5797,21 @@
- putHmarker(buf->hmarklist, currentLn(buf),
- hpos, hseq - 1);
- }
-+ else if (hseq < 0) {
-+ int h = -hseq - 1;
-+ int hpos = pos;
-+ if (*str == '[')
-+ hpos++;
-+ if (buf->hmarklist &&
-+ h < buf->hmarklist->nmark &&
-+ buf->hmarklist->marks[h].invalid) {
-+ buf->hmarklist->marks[h].pos = hpos;
-+ buf->hmarklist->marks[h].line = currentLn(buf);
-+ buf->hmarklist->marks[h].invalid = 0;
-+ hseq = -hseq;
-+ }
-+ }
-+
- if (!form->target)
- form->target = buf->baseTarget;
- if (a_textarea &&
-@@ -6747,6 +6879,12 @@
- obuf->nobr_level = 0;
- bzero((void *)&obuf->anchor, sizeof(obuf->anchor));
- obuf->img_alt = 0;
-+ obuf->input_alt.hseq = 0;
-+ obuf->input_alt.fid = -1;
-+ obuf->input_alt.in = 0;
-+ obuf->input_alt.type = NULL;
-+ obuf->input_alt.name = NULL;
-+ obuf->input_alt.value = NULL;
- obuf->in_bold = 0;
- obuf->in_italic = 0;
- obuf->in_under = 0;
-@@ -6782,6 +6920,15 @@
- push_tag(obuf, "</img_alt>", HTML_N_IMG_ALT);
- obuf->img_alt = NULL;
- }
-+ if (obuf->input_alt.in) {
-+ push_tag(obuf, "</input_alt>", HTML_N_INPUT_ALT);
-+ obuf->input_alt.hseq = 0;
-+ obuf->input_alt.fid = -1;
-+ obuf->input_alt.in = 0;
-+ obuf->input_alt.type = NULL;
-+ obuf->input_alt.name = NULL;
-+ obuf->input_alt.value = NULL;
-+ }
- if (obuf->in_bold) {
- push_tag(obuf, "</b>", HTML_N_B);
- obuf->in_bold = 0;
-Index: fm.h
-===================================================================
-RCS file: /cvsroot/w3m/w3m/fm.h,v
-retrieving revision 1.149
-diff -u -r1.149 fm.h
---- w3m.orig/fm.h 20 Aug 2010 09:47:09 -0000 1.149
-+++ w3m/fm.h 17 Sep 2010 12:18:55 -0000
-@@ -562,6 +562,13 @@
- #define INIT_BUFFER_WIDTH ((_INIT_BUFFER_WIDTH > 0) ? _INIT_BUFFER_WIDTH : 0)
- #define FOLD_BUFFER_WIDTH (FoldLine ? (INIT_BUFFER_WIDTH + 1) : -1)
-
-+struct input_alt_attr {
-+ int hseq;
-+ int fid;
-+ int in;
-+ Str type, name, value;
-+};
-+
- typedef struct {
- int pos;
- int len;
-@@ -569,6 +576,7 @@
- long flag;
- Anchor anchor;
- Str img_alt;
-+ struct input_alt_attr input_alt;
- char fontstat[FONTSTAT_SIZE];
- short nobr_level;
- Lineprop prev_ctype;
-@@ -591,6 +599,7 @@
- short nobr_level;
- Anchor anchor;
- Str img_alt;
-+ struct input_alt_attr input_alt;
- char fontstat[FONTSTAT_SIZE];
- char fontstat_stack[FONT_STACK_SIZE][FONTSTAT_SIZE];
- int fontstat_sp;
-Index: html.c
-===================================================================
-RCS file: /cvsroot/w3m/w3m/html.c,v
-retrieving revision 1.32
-diff -u -r1.32 html.c
---- w3m.orig/html.c 14 Aug 2010 01:29:40 -0000 1.32
-+++ w3m/html.c 17 Sep 2010 12:18:55 -0000
-@@ -56,6 +56,9 @@
- ATTR_CORE
- };
- #define MAXA_INPUT MAXA_CORE + 12
-+unsigned char ALST_BUTTON[] =
-+ { ATTR_TYPE, ATTR_VALUE, ATTR_NAME, ATTR_CORE };
-+#define MAXA_BUTTON MAXA_CORE + 3
- unsigned char ALST_TEXTAREA[] =
- { ATTR_COLS, ATTR_ROWS, ATTR_NAME, ATTR_READONLY, ATTR_CORE };
- #define MAXA_TEXTAREA MAXA_CORE + 4
-@@ -247,24 +250,24 @@
- {"/bdo", NULL, 0, TFLG_END}, /* 121 HTML_N_BDO */
- {"big", ALST_NOP, MAXA_NOP, 0}, /* 122 HTML_BIG */
- {"/big", NULL, 0, TFLG_END}, /* 123 HTML_N_BIG */
-- {"button", ALST_NOP, MAXA_NOP, 0}, /* 124 HTML_BUTTON */
-- {"fieldset", ALST_NOP, MAXA_NOP, 0}, /* 125 HTML_FIELDSET */
-- {"/fieldset", NULL, 0, TFLG_END}, /* 126 HTML_N_FIELDSET */
-- {"iframe", ALST_NOP, MAXA_NOP, 0}, /* 127 HTML_IFRAME */
-- {"label", ALST_NOP, MAXA_NOP, 0}, /* 128 HTML_LABEL */
-- {"/label", NULL, 0, TFLG_END}, /* 129 HTML_N_LABEL */
-- {"legend", ALST_NOP, MAXA_NOP, 0}, /* 130 HTML_LEGEND */
-- {"/legend", NULL, 0, TFLG_END}, /* 131 HTML_N_LEGEND */
-- {"noscript", ALST_NOP, MAXA_NOP, 0}, /* 132 HTML_NOSCRIPT */
-- {"/noscript", NULL, 0, TFLG_END}, /* 133 HTML_N_NOSCRIPT */
-- {"object", ALST_NOP, MAXA_NOP, 0}, /* 134 HTML_OBJECT */
-- {"optgroup", ALST_NOP, MAXA_NOP, 0}, /* 135 HTML_OPTGROUP */
-- {"/optgroup", NULL, 0, TFLG_END}, /* 136 HTML_N_OPTGROUP */
-- {"param", ALST_NOP, MAXA_NOP, 0}, /* 137 HTML_PARAM */
-- {"small", ALST_NOP, MAXA_NOP, 0}, /* 138 HTML_SMALL */
-- {"/small", NULL, 0, TFLG_END}, /* 139 HTML_N_SMALL */
-+ {"button", ALST_BUTTON, MAXA_BUTTON, 0}, /* 124 HTML_BUTTON */
-+ {"/button", NULL, 0, TFLG_END}, /* 125 HTML_N_BUTTON */
-+ {"fieldset", ALST_NOP, MAXA_NOP, 0}, /* 126 HTML_FIELDSET */
-+ {"/fieldset", NULL, 0, TFLG_END}, /* 127 HTML_N_FIELDSET */
-+ {"iframe", ALST_NOP, MAXA_NOP, 0}, /* 128 HTML_IFRAME */
-+ {"label", ALST_NOP, MAXA_NOP, 0}, /* 129 HTML_LABEL */
-+ {"/label", NULL, 0, TFLG_END}, /* 130 HTML_N_LABEL */
-+ {"legend", ALST_NOP, MAXA_NOP, 0}, /* 131 HTML_LEGEND */
-+ {"/legend", NULL, 0, TFLG_END}, /* 132 HTML_N_LEGEND */
-+ {"noscript", ALST_NOP, MAXA_NOP, 0}, /* 133 HTML_NOSCRIPT */
-+ {"/noscript", NULL, 0, TFLG_END}, /* 134 HTML_N_NOSCRIPT */
-+ {"object", ALST_NOP, MAXA_NOP, 0}, /* 135 HTML_OBJECT */
-+ {"optgroup", ALST_NOP, MAXA_NOP, 0}, /* 136 HTML_OPTGROUP */
-+ {"/optgroup", NULL, 0, TFLG_END}, /* 137 HTML_N_OPTGROUP */
-+ {"param", ALST_NOP, MAXA_NOP, 0}, /* 138 HTML_PARAM */
-+ {"small", ALST_NOP, MAXA_NOP, 0}, /* 139 HTML_SMALL */
-+ {"/small", NULL, 0, TFLG_END}, /* 140 HTML_N_SMALL */
-
-- {NULL, NULL, 0, 0}, /* 140 Undefined */
- {NULL, NULL, 0, 0}, /* 141 Undefined */
- {NULL, NULL, 0, 0}, /* 142 Undefined */
- {NULL, NULL, 0, 0}, /* 143 Undefined */
-Index: html.h
-===================================================================
-RCS file: /cvsroot/w3m/w3m/html.h,v
-retrieving revision 1.31
-diff -u -r1.31 html.h
---- w3m.orig/html.h 14 Aug 2010 01:29:40 -0000 1.31
-+++ w3m/html.h 17 Sep 2010 12:18:55 -0000
-@@ -214,21 +214,22 @@
- #define HTML_BIG 122
- #define HTML_N_BIG 123
- #define HTML_BUTTON 124
--#define HTML_FIELDSET 125
--#define HTML_N_FIELDSET 126
--#define HTML_IFRAME 127
--#define HTML_LABEL 128
--#define HTML_N_LABEL 129
--#define HTML_LEGEND 130
--#define HTML_N_LEGEND 131
--#define HTML_NOSCRIPT 132
--#define HTML_N_NOSCRIPT 133
--#define HTML_OBJECT 134
--#define HTML_OPTGROUP 135
--#define HTML_N_OPTGROUP 136
--#define HTML_PARAM 137
--#define HTML_SMALL 138
--#define HTML_N_SMALL 139
-+#define HTML_N_BUTTON 125
-+#define HTML_FIELDSET 126
-+#define HTML_N_FIELDSET 127
-+#define HTML_IFRAME 128
-+#define HTML_LABEL 129
-+#define HTML_N_LABEL 130
-+#define HTML_LEGEND 131
-+#define HTML_N_LEGEND 132
-+#define HTML_NOSCRIPT 133
-+#define HTML_N_NOSCRIPT 134
-+#define HTML_OBJECT 135
-+#define HTML_OPTGROUP 136
-+#define HTML_N_OPTGROUP 137
-+#define HTML_PARAM 138
-+#define HTML_SMALL 139
-+#define HTML_N_SMALL 140
-
- /* pseudo tag */
- #define HTML_SELECT_INT 160
-Index: proto.h
-===================================================================
-RCS file: /cvsroot/w3m/w3m/proto.h,v
-retrieving revision 1.104
-diff -u -r1.104 proto.h
---- w3m.orig/proto.h 25 Jul 2010 09:55:05 -0000 1.104
-+++ w3m/proto.h 17 Sep 2010 12:18:55 -0000
-@@ -207,6 +207,8 @@
- extern Str process_img(struct parsed_tag *tag, int width);
- extern Str process_anchor(struct parsed_tag *tag, char *tagbuf);
- extern Str process_input(struct parsed_tag *tag);
-+extern Str process_button(struct parsed_tag *tag);
-+extern Str process_n_button(void);
- extern Str process_select(struct parsed_tag *tag);
- extern Str process_n_select(void);
- extern void feed_select(char *str);
-Index: table.c
-===================================================================
-RCS file: /cvsroot/w3m/w3m/table.c,v
-retrieving revision 1.58
-diff -u -r1.58 table.c
---- w3m.orig/table.c 9 Aug 2010 11:59:19 -0000 1.58
-+++ w3m/table.c 17 Sep 2010 12:18:55 -0000
-@@ -2878,6 +2878,14 @@
- tmp = process_input(tag);
- feed_table1(tbl, tmp, mode, width);
- break;
-+ case HTML_BUTTON:
-+ tmp = process_button(tag);
-+ feed_table1(tbl, tmp, mode, width);
-+ break;
-+ case HTML_N_BUTTON:
-+ tmp = process_n_button();
-+ feed_table1(tbl, tmp, mode, width);
-+ break;
- case HTML_SELECT:
- tmp = process_select(tag);
- if (tmp)
-Index: tagtable.tab
-===================================================================
-RCS file: /cvsroot/w3m/w3m/tagtable.tab,v
-retrieving revision 1.14
-diff -u -r1.14 tagtable.tab
---- w3m.orig/tagtable.tab 14 Aug 2010 01:29:40 -0000 1.14
-+++ w3m/tagtable.tab 17 Sep 2010 12:18:55 -0000
-@@ -176,6 +176,7 @@
- big HTML_BIG
- /big HTML_N_BIG
- button HTML_BUTTON
-+/button HTML_N_BUTTON
- fieldset HTML_FIELDSET
- /fieldset HTML_N_FIELDSET
- iframe HTML_IFRAME
diff --git a/network/w3m/patches/w3m-0.5.3-gdk-pixbuf.patch b/network/w3m/patches/w3m-0.5.3-gdk-pixbuf.patch
deleted file mode 100644
index d41a699633..0000000000
--- a/network/w3m/patches/w3m-0.5.3-gdk-pixbuf.patch
+++ /dev/null
@@ -1,46 +0,0 @@
---- a/w3mimg/x11/x11_w3mimg.c 2004-11-08 18:14:06.000000000 +0100
-+++ b/w3mimg/x11/x11_w3mimg.c 2012-05-19 06:31:08.908783927 +0200
-@@ -14,7 +14,7 @@
- #elif defined(USE_GDKPIXBUF)
- #if defined(USE_GTK2)
- #include <glib-object.h>
--#include <gdk/gdk.h>
-+#include <gdk-pixbuf/gdk-pixbuf.h>
- #include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>
- #else
- #include <gdk-pixbuf/gdk-pixbuf-xlib.h>
---- a/w3mimg/fb/fb_gdkpixbuf.c 2004-11-08 18:14:06.000000000 +0100
-+++ b/w3mimg/fb/fb_gdkpixbuf.c 2012-05-20 05:06:07.744816661 +0200
-@@ -6,7 +6,7 @@
- #include "config.h"
- #if defined(USE_GTK2)
- #include <glib-object.h>
--#include <gdk/gdk.h>
-+#include <gdk-pixbuf/gdk-pixbuf.h>
- #endif
- #include <gdk-pixbuf/gdk-pixbuf.h>
- #include "fb.h"
---- a/acinclude.m4 2011-01-04 10:22:18.000000000 +0100
-+++ b/acinclude.m4 2012-05-20 05:15:36.158981506 +0200
-@@ -705,8 +705,8 @@ AC_DEFUN([AC_W3M_IMAGE],
- IMGTARGETS="x11"
- AC_DEFINE(USE_GDKPIXBUF)
- AC_DEFINE(USE_GTK2)
-- IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
-- IMGX11LDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0 gtk+-2.0`"
-+ IMGX11CFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
-+ IMGX11LDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gdk-pixbuf-xlib-2.0`"
- elif test x"$have_gdkpixbuf" = xyes; then
- AC_DEFINE(USE_W3MIMG_X11)
- IMGOBJS="$IMGOBJS x11/x11_w3mimg.o"
-@@ -740,8 +740,8 @@ AC_DEFUN([AC_W3M_IMAGE],
- IMGTARGETS="${IMGTARGETS} fb"
- AC_DEFINE(USE_GDKPIXBUF)
- AC_DEFINE(USE_GTK2)
-- IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0 gtk+-2.0`"
-- IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0 gtk+-2.0`"
-+ IMGFBCFLAGS="`${PKG_CONFIG} --cflags gdk-pixbuf-2.0`"
-+ IMGFBLDFLAGS="`${PKG_CONFIG} --libs gdk-pixbuf-2.0`"
- elif test x"$have_gdkpixbuf" = xyes; then
- AC_DEFINE(USE_W3MIMG_FB)
- IMGOBJS="$IMGOBJS fb/fb_w3mimg.o fb/fb.o fb/fb_img.o"
diff --git a/network/w3m/patches/w3m-0.5.3-glibc214.patch b/network/w3m/patches/w3m-0.5.3-glibc214.patch
deleted file mode 100644
index 84ab9d7d88..0000000000
--- a/network/w3m/patches/w3m-0.5.3-glibc214.patch
+++ /dev/null
@@ -1,58 +0,0 @@
---- a/istream.c.~1.27.~ 2011-01-04 18:22:22.000000000 +0900
-+++ a/istream.c 2011-06-24 08:15:23.522990618 +0900
-@@ -22,8 +22,8 @@
- static void basic_close(int *handle);
- static int basic_read(int *handle, char *buf, int len);
-
--static void file_close(struct file_handle *handle);
--static int file_read(struct file_handle *handle, char *buf, int len);
-+static void file_close(struct afile_handle *handle);
-+static int file_read(struct afile_handle *handle, char *buf, int len);
-
- static int str_read(Str handle, char *buf, int len);
-
-@@ -114,7 +114,7 @@
- stream = New(union input_stream);
- init_base_stream(&stream->base, STREAM_BUF_SIZE);
- stream->file.type = IST_FILE;
-- stream->file.handle = New(struct file_handle);
-+ stream->file.handle = New(struct afile_handle);
- stream->file.handle->f = f;
- if (closep)
- stream->file.handle->close = closep;
-@@ -658,13 +658,13 @@
- }
-
- static void
--file_close(struct file_handle *handle)
-+file_close(struct afile_handle *handle)
- {
- handle->close(handle->f);
- }
-
- static int
--file_read(struct file_handle *handle, char *buf, int len)
-+file_read(struct afile_handle *handle, char *buf, int len)
- {
- return fread(buf, 1, len, handle->f);
- }
---- a/istream.h.~1.12.~ 2003-10-21 01:41:56.000000000 +0900
-+++ a/istream.h 2011-06-24 08:15:54.392991144 +0900
-@@ -20,7 +20,7 @@
-
- typedef struct stream_buffer *StreamBuffer;
-
--struct file_handle {
-+struct afile_handle {
- FILE *f;
- void (*close) ();
- };
-@@ -53,7 +53,7 @@
-
- struct file_stream {
- struct stream_buffer stream;
-- struct file_handle *handle;
-+ struct afile_handle *handle;
- char type;
- char iseos;
- int (*read) ();
diff --git a/network/w3m/patches/w3m-0.5.3-underlinking.patch b/network/w3m/patches/w3m-0.5.3-underlinking.patch
deleted file mode 100644
index 1b034b46cb..0000000000
--- a/network/w3m/patches/w3m-0.5.3-underlinking.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-Description: Explicitly link w3mimgdisplay with -lX11 to build with gcc 4.5
-Author: Martin Pitt <martin.pitt@ubuntu.com>
-Bug: https://sourceforge.net/tracker/?func=detail&aid=3126430&group_id=39518&atid=425441
-
---- w3m-0.5.3.orig/Makefile.in 2011-01-04 18:22:18.000000000 +0900
-+++ w3m-0.5.3/Makefile.in 2011-02-06 12:05:40.000000000 +0900
-@@ -199,7 +199,7 @@
- $(CC) $(CFLAGS) -DDUMMY -c -o $@ $?
-
- $(IMGDISPLAY): w3mimgdisplay.o $(ALIB) w3mimg/w3mimg.a
-- $(IMGLINK) $(CFLAGS) -o $(IMGDISPLAY) w3mimgdisplay.o w3mimg/w3mimg.a $(LDFLAGS) $(LIBS) $(IMGLDFLAGS)
-+ $(IMGLINK) $(CFLAGS) -o $(IMGDISPLAY) w3mimgdisplay.o w3mimg/w3mimg.a $(LDFLAGS) $(LIBS) -lX11 $(IMGLDFLAGS)
-
- w3mimgdisplay.o: w3mimgdisplay.c w3mimg/w3mimg.h
- $(CC) $(CFLAGS) $(IMGCFLAGS) -o $@ -c $(srcdir)/w3mimgdisplay.c
diff --git a/network/w3m/w3m.SlackBuild b/network/w3m/w3m.SlackBuild
index b12bce4559..022239d2ba 100644
--- a/network/w3m/w3m.SlackBuild
+++ b/network/w3m/w3m.SlackBuild
@@ -26,9 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=w3m
-VERSION=${VERSION:-0.5.3_37}
-PATCHVERSION=$(echo $VERSION | sed "s/_/-/g")
-SRCVERSION=${SRCVERSION:-0.5.3}
+VERSION=${VERSION:-0.5.3+git20230121}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -72,17 +70,10 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM-$SRCVERSION
+rm -rf $PRGNAM-$VERSION
# source
-tar xvf $CWD/${PRGNAM}_${SRCVERSION}.orig.tar.gz
-cd $PRGNAM-$SRCVERSION
-# patches
-tar xvf $CWD/${PRGNAM}_$PATCHVERSION.debian.tar.xz
-
-# patches from debian
-while read patch; do
- patch -p1 --verbose < debian/patches/$patch
-done < debian/patches/series
+tar xvf $CWD/${PRGNAM}_${VERSION}.orig.tar.xz
+cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -114,7 +105,7 @@ CXXFLAGS="$SLKCFLAGS" \
--enable-unicode \
--enable-nls \
--enable-m17n \
- --with-imagelib="gtk2 gdk-pixbuf2 imlib2" \
+ --with-imagelib="gtk2 gdk-pixbuf2" \
--with-termlib="terminfo ncurses" \
$mouse \
$mailer \
@@ -134,19 +125,11 @@ find Bonus -type f | while read f; do
done
mkdir -p $PKG/etc/w3m
-install -m 644 debian/w3mconfig $PKG/etc/w3m/config.new
-install -m 644 debian/mailcap $PKG/etc/w3m/mailcap.new
DOCS="ChangeLog NEWS doc* ABOUT-NLS README TODO"
-DEBDOCS="changelog copyright mailcap w3mconfig"
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/debian
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
-for doc in $DEBDOCS; do
- cp -a debian/$doc $PKG/usr/doc/$PRGNAM-$VERSION/debian
-done
-
mv $PKG/usr/doc/$PRGNAM-$VERSION/examples/Bonus/README \
$PKG/usr/doc/$PRGNAM-$VERSION/examples/Bonus/README.ja
@@ -184,7 +167,6 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz \
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/w3m/w3m.info b/network/w3m/w3m.info
index 308f707d11..bc33b0bb43 100644
--- a/network/w3m/w3m.info
+++ b/network/w3m/w3m.info
@@ -1,12 +1,10 @@
PRGNAM="w3m"
-VERSION="0.5.3_37"
-HOMEPAGE="http://w3m.sourceforge.net/"
-DOWNLOAD="http://deb.debian.org/debian/pool/main/w/w3m/w3m_0.5.3.orig.tar.gz \
- http://deb.debian.org/debian/pool/main/w/w3m/w3m_0.5.3-37.debian.tar.xz"
-MD5SUM="1b845a983a50b8dec0169ac48479eacc \
- 2d7fb8723f68a0dde14203e38a008a6e"
+VERSION="0.5.3+git20230121"
+HOMEPAGE="https://w3m.sourceforge.net/"
+DOWNLOAD="https://deb.debian.org/debian/pool/main/w/w3m/w3m_0.5.3+git20230121.orig.tar.xz"
+MD5SUM="32d66f63a695915961a276f9c02a992b"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="imlib2"
-MAINTAINER="Dave Woodfall"
+REQUIRES=""
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/webalizer/README b/network/webalizer/README
index a4fd77e826..227ae436b6 100644
--- a/network/webalizer/README
+++ b/network/webalizer/README
@@ -1,3 +1,5 @@
The Webalizer is a fast, free web server log file analysis program.
It produces highly detailed, easily configurable usage reports in
HTML format, for viewing with a standard web browser.
+
+Optional at build-time detected dependency: GeoIP
diff --git a/network/webalizer/slack-desc b/network/webalizer/slack-desc
index 3da9de19b0..98a31f2654 100644
--- a/network/webalizer/slack-desc
+++ b/network/webalizer/slack-desc
@@ -12,7 +12,7 @@ webalizer: The Webalizer is a fast, free web server log file analysis program.
webalizer: It produces highly detailed, easily configurable usage reports in
webalizer: HTML format, for viewing with a standard web browser.
webalizer:
-webalizer: Homepage: http://webalizer.com/
+webalizer: https://webalizer.net/
webalizer:
webalizer:
webalizer:
diff --git a/network/webalizer/webalizer.SlackBuild b/network/webalizer/webalizer.SlackBuild
index cdc1ce3689..e6d3e5469f 100644
--- a/network/webalizer/webalizer.SlackBuild
+++ b/network/webalizer/webalizer.SlackBuild
@@ -2,7 +2,8 @@
# Slackware build script for webalizer
-# Copyright 2010, Steven King <kingrst@gmail.com>
+# Copyright 2010, Steven King
+# Copyright 2023 Johannes Schoepfer, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -80,9 +81,9 @@ cd $PRGNAM-$SRC_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 \
+ -exec chmod 755 {} + -o \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
+ -exec chmod 644 {} +
patch -p1 < $CWD/gcc10.patch
@@ -103,7 +104,7 @@ make install MANDIR=/usr/man/man1 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 {} \+
+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
diff --git a/network/webalizer/webalizer.info b/network/webalizer/webalizer.info
index 3b63e1654b..fc51dda7c1 100644
--- a/network/webalizer/webalizer.info
+++ b/network/webalizer/webalizer.info
@@ -1,10 +1,10 @@
PRGNAM="webalizer"
VERSION="2.23_08"
-HOMEPAGE="http://webalizer.com"
+HOMEPAGE="https://webalizer.net/"
DOWNLOAD="http://distcache.freebsd.org/ports-distfiles/webalizer-2.23-08-src.tgz"
MD5SUM="00f1f18bd5ed462ea43bf98d867e7966"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="GeoIP"
-MAINTAINER="Steven King"
-EMAIL="kingrst@gmail.com"
+REQUIRES=""
+MAINTAINER="Johannes Schoepfer"
+EMAIL="slackbuilds@schoepfer.info"
diff --git a/network/webex/desktop.patch b/network/webex/desktop.patch
deleted file mode 100644
index 73fd185a91..0000000000
--- a/network/webex/desktop.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-* Version should be the version of the desktop entry specification, not
- application version.
-* Application category is deprecated.
---- a/opt/Webex/bin/webex.desktop 2022-07-11 14:27:19.000000000 +0200
-+++ b/opt/Webex/bin/webex.desktop 2022-08-05 11:35:53.335000000 +0200
-@@ -1,10 +1,9 @@
- [Desktop Entry]
--Version=42.7.0.22904
- Name=Webex
--Comment=Webex
-+Comment=Video conferencing
- Exec=/opt/Webex/bin/CiscoCollabHost %U
- Icon=/opt/Webex/bin/sparklogosmall.png
- Terminal=false
- Type=Application
--Categories=Utility;Application;
-+Categories=Network;
- MimeType=x-scheme-handler/webexteams;x-scheme-handler/ciscospark;x-scheme-handler/webex
diff --git a/network/webex/webex.SlackBuild b/network/webex/webex.SlackBuild
index 58dc31f13f..4e80deb996 100644
--- a/network/webex/webex.SlackBuild
+++ b/network/webex/webex.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for webex
-# Copyright 2022 Eugene Wissner, Dachau, Germany
+# Copyright 2022-2023 Eugene Wissner, Mannheim, Germany
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -22,32 +22,32 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20230701 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - +x permission for shared libs.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=webex
-VERSION=${VERSION:-42.7.0.22904}
+VERSION=${VERSION:-43.11.0.27795}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-PKGTYPE=${PKGTYYPE:-tgz}
+PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
- case "$ARCH" in
- i?86) ARCH=i386 ;;
- *) ARCH=$( uname -m ) ;;
- esac
+ ARCH=$( uname -m )
fi
-REAL_VER=$(ar p Webex.deb control.tar.gz 2> /dev/null | tar zxO ./control 2> /dev/null | grep Version | awk '{print $2}' | cut -d- -f1)
+if [ "$ARCH" != "x86_64" ]; then
+ echo "$ARCH architecture is unsupported." >/dev/stderr
+ exit 1
+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-$REAL_VER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
-TMP=${TMP:-/tmp}
+TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
@@ -60,28 +60,38 @@ ar p $CWD/Webex.deb data.tar.xz | tar xJv || exit 1
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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# Install a .desktop launcher:
-patch -p1 --verbose -i $CWD/desktop.patch
+# * Version should be the version of the desktop entry specification, not application version.
+# * "Application" category is deprecated.
mkdir -p $PKG/usr/share/applications
-mv $PKG/opt/Webex/bin/webex.desktop $PKG/usr/share/applications
+cat $PKG/opt/Webex/bin/webex.desktop | ruby -ne '
+ unless $_.start_with? %q{Version=}
+ puts $_.sub(/^Comment=.+/, %q{Comment=Video conferencing})
+ .sub(/^Categories=.+/, %q{Categories=Network})
+ end
+' > $PKG/usr/share/applications/webex.desktop
+
+rm $PKG/opt/Webex/bin/webex.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
+find $PKG -type f -a -name '*.so*' -exec chmod 755 {} +
+
# Link the binary:
mkdir -p $PKG/usr/bin
( cd $PKG/usr/bin; ln -s ../../opt/Webex/bin/CiscoCollabHost webex )
-mkdir -p $PKG/usr/doc/$PRGNAM-$REAL_VER
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$REAL_VER/$PRGNAM.SlackBuild
+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-$REAL_VER-$ARCH-$BUILD$TAG.$PKGTYPE
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/webex/webex.info b/network/webex/webex.info
index ddf42c94c6..6c167e3a62 100644
--- a/network/webex/webex.info
+++ b/network/webex/webex.info
@@ -1,10 +1,10 @@
PRGNAM="webex"
-VERSION="42.7.0.22904"
+VERSION="43.11.0.27795"
HOMEPAGE="https://www.webex.com"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
DOWNLOAD_x86_64="https://binaries.webex.com/WebexDesktop-Ubuntu-Official-Package/Webex.deb"
-MD5SUM_x86_64="626355056191a0e03fed56422812c0d6"
+MD5SUM_x86_64="e85297138729c7504ab5bd82592880da"
REQUIRES=""
MAINTAINER="Eugene Wissner"
EMAIL="belka@caraus.de"
diff --git a/network/webhook/doinst.sh b/network/webhook/doinst.sh
index ae9c074d0d..e950dd1594 100644
--- a/network/webhook/doinst.sh
+++ b/network/webhook/doinst.sh
@@ -19,7 +19,7 @@ preserve_perms() {
config $NEW
}
-preserve_perms /etc/rc.d/rc.webhook.new
-config /etc/webhook/hooks.json.new
-config /etc/default/webhook.new
-config /etc/logrotate.d/webhook.new
+preserve_perms etc/rc.d/rc.webhook.new
+config etc/webhook/hooks.json.new
+config etc/default/webhook.new
+config etc/logrotate.d/webhook.new
diff --git a/network/weechat/01_fix_asciidoctor_options.patch b/network/weechat/01_fix_asciidoctor_options.patch
deleted file mode 100644
index 438ed7c3b4..0000000000
--- a/network/weechat/01_fix_asciidoctor_options.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Description: Build html documentation without requiring data (javascript,
- fonts) on external websites (potential privacy breach)
-Author: Emmanuel Bouthenot <kolter@debian.org>
-Forwarded: not-needed
-Last-Update: 2016-10-06
-Note: 20211018 bkw: patch modified from Debian version: instead of
-setting the source highlighter to 'pygments' (which isn't part of
-Slackware), I disabled source highlighting entirely.
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/doc/CMakeLists.txt
-+++ b/doc/CMakeLists.txt
-@@ -21,7 +21,7 @@
- if(ENABLE_MAN OR ENABLE_DOC)
- find_package(Asciidoctor)
- if(ASCIIDOCTOR_FOUND)
-- set(ASCIIDOCTOR_ARGS -a experimental -a "prewrap!" -a icons=font -a revnumber="${VERSION}" -a sectanchors -a source-highlighter=prettify)
-+ set(ASCIIDOCTOR_ARGS -a experimental -a reproducible -a "prewrap!" -a "webfonts!" -a revnumber="${VERSION}" -a sectanchors -a "source-highlighter!")
- add_subdirectory(cs)
- add_subdirectory(de)
- add_subdirectory(en)
diff --git a/network/weechat/README b/network/weechat/README
index 9a48d35a31..0acafadeb3 100644
--- a/network/weechat/README
+++ b/network/weechat/README
@@ -4,21 +4,24 @@ WeeChat is a light, fast, multilingual, curses-based multiplatform
IRC client.
WeeChat supports:
-- DCC files and chats, multi-server connections, background connections,
-- IPv6, SSL, proxy, auto-reconnection, DCC2, nicklist, window splitting,
-- FIFO pipe for remote control, Aspell, JavaScript[1], Perl, Python,
- Ruby, nick auto-completion, lag indication, auto-logging and client
- upgrades without dropping connections.
+- DCC files and chats, multi-server connections, background connections.
+- IPv6, SSL, proxy, auto-reconnection, DCC2, nicklist, window splitting.
+- FIFO pipe for remote control; Aspell; scripting in Perl, Python 3,
+ Ruby, Tcl, Scheme, Lua[1], JavaScript[2], PHP[3]; nick
+ auto-completion; lag indication; auto-logging; and client upgrades
+ without dropping connections.
-WeeChat will be built with support for Perl, Python, Guile, Ruby,
-and Tcl scripting. Once WeeChat is running, you can install scripts
+WeeChat will be built with support for Perl, Python 3, Guile, Ruby,
+and Tcl scripting[1]. Once WeeChat is running, you can install scripts
using the built-in script manager ("/help script" to get started).
-Optional dependencies: lua53, lua53, or lua. If one or more of
-these are installed, Lua scripting support will also be included. The
-highest-numbered version of lua will be used, if multiple versions are
-installed.
+[1] To enable Lua scripting, install one of these optional dependencies:
+ lua53, lua52, or lua. The highest-numbered version of lua will be
+ used, if multiple versions are installed.
-[1] JavaScript is not currently supported in this build of WeeChat. It
-also isn't supported in Debian's weechat package, for what that's
-worth.
+[2] JavaScript is not currently supported in this build of WeeChat. It
+ also isn't supported in Debian's set of weechat packages, for what
+ that's worth.
+
+[3] PHP is not supported in this SlackBuild because Slackware's php
+ package isn't built with --enable-embed.
diff --git a/network/weechat/weechat.SlackBuild b/network/weechat/weechat.SlackBuild
index 5976e7d0ba..d0fa7ad59c 100644
--- a/network/weechat/weechat.SlackBuild
+++ b/network/weechat/weechat.SlackBuild
@@ -23,6 +23,12 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20240213 bkw: update for v4.2.1.
+# 20231219 bkw: update for v4.1.2.
+# 20231111 bkw: update for v4.1.1.
+# 20230907 bkw: update for v4.0.4.
+# 20230104 bkw: update for v3.7.1.
+
# 20211019 bkw:
# - take over maintenance.
# - update for v3.3.
@@ -41,7 +47,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=weechat
-VERSION=${VERSION:-3.3}
+VERSION=${VERSION:-4.2.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -83,23 +89,25 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
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 {} \+
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
# 20211019 bkw: patch from Debian: Build html documentation without
# requiring data (javascript, fonts) on external websites (potential
# privacy breach). Patch was slightly modified for Slackware.
-patch -p1 < $CWD/01_fix_asciidoctor_options.patch
+# 20230104 bkw: patch updated, used as-is from Debian this time.
+# 20240213 bkw: patch no longer applies, it's a one-liner, just use sed.
+sed -i 's,icons=font,icons=text,' doc/CMakeLists.txt
# 20211019 bkw: hardcoded paths suck.
DOC=/usr/doc/$PRGNAM-$VERSION
PKGDOC=$PKG/$DOC
sed -i \
- '/install(/s,\(DESTINATION\) *\$.DATAROOTDIR.*,\1 '$DOC'/html),' \
- doc/*/CMakeLists.txt
+ '/install(/s,\(DESTINATION\) *"\$.DATAROOTDIR.*,\1 '$DOC'/html),' \
+ doc/CMakeLists.txt
# 20211019 bkw:
# -DENABLE_PHP=OFF because Slackware's php isn't built with --enable-embed.
@@ -115,7 +123,8 @@ for i in lua5.3 lua5.2 lua; do
done
# Everything else is autodetected and/or included in a full Slackware
-# install.
+# install. Have to enable "incomplete docs" in 4.0.x, so it won't
+# complain about disabled plugins.
mkdir build
cd build
@@ -127,6 +136,7 @@ cd build
-DENABLE_JAVASCRIPT=OFF \
-DENABLE_PHP=OFF \
-DENABLE_DOC=ON \
+ -DENABLE_DOC_INCOMPLETE=ON \
-DENABLE_MAN=ON \
-DMANDIR=/usr/man \
-DLIBDIR=/usr/lib${LIBDIRSUFFIX} \
diff --git a/network/weechat/weechat.info b/network/weechat/weechat.info
index bf36d7a41f..85db3dc94f 100644
--- a/network/weechat/weechat.info
+++ b/network/weechat/weechat.info
@@ -1,8 +1,8 @@
PRGNAM="weechat"
-VERSION="3.3"
+VERSION="4.2.1"
HOMEPAGE="https://www.weechat.org"
-DOWNLOAD="https://weechat.org/files/src/weechat-3.3.tar.bz2"
-MD5SUM="b59d2ed5b4573cf17eb4285cc1203d25"
+DOWNLOAD="https://weechat.org/files/src/weechat-4.2.1.tar.xz"
+MD5SUM="1d6fe2613e1e33a3cb8fc11a0c6d322a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/wego/README b/network/wego/README
new file mode 100644
index 0000000000..80aa78d7db
--- /dev/null
+++ b/network/wego/README
@@ -0,0 +1,4 @@
+wego is a weather app for the terminal.
+
+Usage requires registering for an API (ex. OpenWeatherMap).
+See the github page for more details.
diff --git a/network/wego/modules.txt b/network/wego/modules.txt
new file mode 100644
index 0000000000..4d9a71a0fc
--- /dev/null
+++ b/network/wego/modules.txt
@@ -0,0 +1,18 @@
+# github.com/mattn/go-colorable v0.1.13
+## explicit
+github.com/mattn/go-colorable
+# github.com/mattn/go-runewidth v0.0.14
+## explicit
+github.com/mattn/go-runewidth
+# github.com/schachmat/ingo v0.0.0-20170403011506-a4bdc0729a3f
+## explicit
+github.com/schachmat/ingo
+# github.com/mattn/go-isatty v0.0.19
+## explicit
+github.com/mattn/go-isatty
+# github.com/rivo/uniseg v0.4.4
+## explicit; go 1.18
+github.com/rivo/uniseg
+# golang.org/x/sys v0.8.0
+## explicit; go 1.17
+golang.org/x/sys/unix
diff --git a/network/yoda/slack-desc b/network/wego/slack-desc
index cfff2745ac..aaf253caeb 100644
--- a/network/yoda/slack-desc
+++ b/network/wego/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-yoda: yoda (Multiple repositories management)
-yoda:
-yoda: Multiple repositories management.
-yoda:
-yoda: Homepage: https://github.com/Numergy/yoda
-yoda:
-yoda:
-yoda:
-yoda:
-yoda:
-yoda:
+wego: wego (Go weather app)
+wego:
+wego: wego is a weather app for the terminal.
+wego:
+wego:
+wego:
+wego:
+wego:
+wego:
+wego:
+wego:
diff --git a/network/wego/wego.SlackBuild b/network/wego/wego.SlackBuild
new file mode 100644
index 0000000000..daf93fb7b0
--- /dev/null
+++ b/network/wego/wego.SlackBuild
@@ -0,0 +1,106 @@
+#!/bin/bash
+
+# Slackware build script for wego
+
+# Copyright 2024 Isaac Yu <isaacyu@protonmail.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=wego
+VERSION=${VERSION:-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-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
+
+mkdir -p vendor
+cat $CWD/modules.txt > vendor/modules.txt
+for DIR in $(grep -o "^# .* " vendor/modules.txt | cut -d' ' -f2)
+do
+ NAME=$(echo $DIR | sed 's/[./]v[0-9]\+$//' | xargs basename)
+ DIR=vendor/$DIR
+ tar xvf $CWD/$NAME-*.tar.gz
+ mkdir -p $(dirname $DIR)
+ mv $NAME-* $DIR
+done
+
+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_CFLAGS="$SLKCFLAGS" \
+CGO_CXXFLAGS="$SLKCFLAGS" \
+go build -mod vendor
+
+install -Dm755 wego $PKG/usr/bin/wego
+strip --strip-unneeded $PKG/usr/bin/wego
+
+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/wego/wego.info b/network/wego/wego.info
new file mode 100644
index 0000000000..6469f342fd
--- /dev/null
+++ b/network/wego/wego.info
@@ -0,0 +1,22 @@
+PRGNAM="wego"
+VERSION="2.2"
+HOMEPAGE="https://github.com/schachmat/wego"
+DOWNLOAD="https://github.com/schachmat/wego/archive/2.2/wego-2.2.tar.gz \
+ https://github.com/mattn/go-colorable/archive/v0.1.13/go-colorable-0.1.13.tar.gz \
+ https://github.com/mattn/go-runewidth/archive/v0.0.14/go-runewidth-0.0.14.tar.gz \
+ https://github.com/schachmat/ingo/archive/a4bdc07/ingo-a4bdc0729a3fda62cc4069b6e490fc657fd54e33.tar.gz \
+ https://github.com/mattn/go-isatty/archive/v0.0.19/go-isatty-0.0.19.tar.gz \
+ https://github.com/rivo/uniseg/archive/v0.4.4/uniseg-0.4.4.tar.gz \
+ https://github.com/golang/sys/archive/v0.8.0/sys-0.8.0.tar.gz"
+MD5SUM="c62b99d7bfc2901dedf571de859799c3 \
+ ac74020d881d4966e33ab6580f509aeb \
+ c41abbf9dc5def08ef8e6999efbe2c8c \
+ 6077da012ebc665f84b9baf79b56c0b6 \
+ e10ea58c2288fbef0d8ea37dea93718a \
+ 4e272ceb8899ee895e425f16347d10a6 \
+ 4bd786fbbcf550e794db58cc7ece443c"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang"
+MAINTAINER="Isaac Yu"
+EMAIL="isaacyu@protonmail.com"
diff --git a/network/wendzelnntpd/wendzelnntpd.SlackBuild b/network/wendzelnntpd/wendzelnntpd.SlackBuild
index c0a17bea20..2dc13cab8e 100644
--- a/network/wendzelnntpd/wendzelnntpd.SlackBuild
+++ b/network/wendzelnntpd/wendzelnntpd.SlackBuild
@@ -25,25 +25,23 @@
# This script was written using the one from slackbuilds.org as a reference.
# Thanks to Patrick Volkerding and Adis Nezirovic for the original work.
+# 20230515 bkw: Modified by SlackBuilds.org, BUILD=4:
+# - define and use SLKCFLAGS
+# - get rid of duplicate *broken* PRINT_PACKAGE_NAME section
+# - use correct TMP
+# - include SlackBuild in doc dir
+# - fix doc dir permissions
+# - get rid of useless INSTALL from doc dir
+# - symlink index.html -> docs.html (identical files)
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wendzelnntpd
VERSION=${VERSION:-2.1.2}
TGZ_DIRNAME=cdpxe-WendzelNNTPd-5ea53d6 # for v2.1.2
-BUILD=${BUILD:-3}
+BUILD=${BUILD:-4}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
-# 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}
-OUTPUT=${OUTPUT:-/tmp}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -53,18 +51,31 @@ if [ -z "$ARCH" ]; then
esac
fi
-set -e
-
-# 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.txz"
+ echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
-TMP=${TMP:-/tmp}
+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
@@ -76,12 +87,16 @@ cd $TGZ_DIRNAME
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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
# Configure:
-MYSQL=NO DESTDIR=/usr CONFDIR=/etc ./configure
+CFLAGS="$SLKCFLAGS" \
+MYSQL=NO \
+DESTDIR=/usr \
+CONFDIR=/etc \
+ ./configure
# Build and install:
make
@@ -115,11 +130,18 @@ cat $CWD/doinst.sh > $PKG/install/doinst.sh
# add version number to doc directory and also put it in /usr/doc
# instead of /usr/share/doc
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/
-cp -vr docs/docs $PKG/usr/doc/$PRGNAM-$VERSION/
-cp -v docs/docs.pdf $PKG/usr/doc/$PRGNAM-$VERSION/docs.pdf
-cp -v AUTHOR CHANGELOG HISTORY README.md INSTALL LICENSE database/usenet.db_struct database/mysql_db_struct.sql $PKG/usr/doc/$PRGNAM-$VERSION/
-chmod -R 0644 $PKG/usr/doc/$PRGNAM-$VERSION/*
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -vr docs/docs $PKGDOC
+cp -v docs/docs.pdf $PKGDOC/docs.pdf
+cp -v AUTHOR CHANGELOG HISTORY README.md LICENSE \
+ database/usenet.db_struct database/mysql_db_struct.sql \
+ $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
+
+# 20230515 bkw: duplicate file, use symlink
+rm -f $PKGDOC/docs/index.html
+ln -s docs.html $PKGDOC/docs/index.html
# Strip binaries:
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
@@ -131,4 +153,3 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
-
diff --git a/network/whalebird/README b/network/whalebird/README
new file mode 100644
index 0000000000..f138e940fa
--- /dev/null
+++ b/network/whalebird/README
@@ -0,0 +1,4 @@
+Whalebird is an Electron based Mastodon, Pleroma and Misskey client.
+
+This SlackBuild repackages the upstream rpm package. This rpm is only
+available for 64-bit systems.
diff --git a/network/whalebird/doinst.sh b/network/whalebird/doinst.sh
new file mode 100644
index 0000000000..65c7e2eeb9
--- /dev/null
+++ b/network/whalebird/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/RYMTracks/slack-desc b/network/whalebird/slack-desc
index 1796b91579..aabc50859c 100644
--- a/network/RYMTracks/slack-desc
+++ b/network/whalebird/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-RYMTracks: RYMTracks (Tracklist scraper)
-RYMTracks:
-RYMTracks: RYMTracks scraps given URLs and presents tracklists into
-RYMTracks: copypasteable form for RateYourMusic.com
-RYMTracks:
-RYMTracks: Homepage: https://github.com/9seconds/rymtracks/
-RYMTracks:
-RYMTracks:
-RYMTracks:
-RYMTracks:
-RYMTracks:
+whalebird: whalebird (Mastondon, Pleroma and Misskey client)
+whalebird:
+whalebird: Whalebird is an Electron based Mastodon, Pleroma and Misskey client.
+whalebird:
+whalebird: Homepage https://whalebird.social
+whalebird:
+whalebird:
+whalebird:
+whalebird:
+whalebird:
+whalebird:
diff --git a/network/whalebird/whalebird.SlackBuild b/network/whalebird/whalebird.SlackBuild
new file mode 100644
index 0000000000..d62a3b3377
--- /dev/null
+++ b/network/whalebird/whalebird.SlackBuild
@@ -0,0 +1,91 @@
+#!/bin/bash
+
+# Slackware build script for whalebird
+
+# Copyright 2024- Antonio Leal, Porto Salvo, Oeiras, Portugal
+# Copyright 2022-2024 Isaac Yu <isaacyu@protonmail.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=whalebird
+VERSION=${VERSION:-6.1.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+
+SRCNAM=Whalebird
+
+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" != "x86_64" ]; then
+ echo "$ARCH is not supported for $PRGNAM-$VERSION." >&2
+ exit 1
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $PKG
+bsdtar -xvf $CWD/${SRCNAM}-${VERSION}-linux-${ARCH}.rpm
+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
+
+# Fix sbopkglint gripes - icon resolution directory should be 310x150 rather than 310x310
+mv $PKG/usr/share/icons/hicolor/310x310 $PKG/usr/share/icons/hicolor/310x150
+
+# Remove extraneous /usr/lib directory (it only contains /usr/lib/.build-id)
+rm -r $PKG/usr/lib/
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a \
+ $PKG/opt/Whalebird/LICENSE.electron.txt \
+ $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/whalebird/whalebird.info b/network/whalebird/whalebird.info
new file mode 100644
index 0000000000..d92c1e92f9
--- /dev/null
+++ b/network/whalebird/whalebird.info
@@ -0,0 +1,10 @@
+PRGNAM="whalebird"
+VERSION="6.1.0"
+HOMEPAGE="https://whalebird.social"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/h3poteto/whalebird-desktop/releases/download/v6.1.0/Whalebird-6.1.0-linux-x86_64.rpm"
+MD5SUM_x86_64="c9b2fa4ee6cef61b4b84a6d59571fea9"
+REQUIRES=""
+MAINTAINER="Antonio Leal"
+EMAIL="antonioleal@yahoo.com"
diff --git a/network/wifi-radar/wifi-radar.info b/network/wifi-radar/wifi-radar.info
index 5172e442fd..f79b531c33 100644
--- a/network/wifi-radar/wifi-radar.info
+++ b/network/wifi-radar/wifi-radar.info
@@ -6,5 +6,5 @@ MD5SUM="f29993d2af69e0c23e6a188f83a77578"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="David Woodfall"
+MAINTAINER="D Woodfall"
EMAIL="dave@slackbuilds.org"
diff --git a/network/wildfly/README b/network/wildfly/README
index 4b8fa66f96..c7f40c6ac5 100644
--- a/network/wildfly/README
+++ b/network/wildfly/README
@@ -1,7 +1,7 @@
WildFly is a free, open source, Java EE certified platform
for developing and deploying enterprise Java applications, Web
applications, and Portals, WildFly Application Server provides the
-full range of Java EE 7 features as well as extended enterprise
+full range of Jakarta EE 10 features as well as extended enterprise
services including clustering, caching, and persistence.
WildFly requires a "wildfly" user and group; create these before
@@ -10,3 +10,12 @@ running the SlackBuild script. Examples:
# groupadd -g 282 -r wildfly
# useradd -u 282 -M -r -s /bin/bash -d /usr/share/wildfly \
-c "WildFly Application Server" -g wildfly wildfly
+
+Read the documentation https://docs.wildfly.org
+
+This script created a default installation so the application
+is available at http://localhost:8080 and the administration
+console at http://localhost:9990/console.
+To connect to the console, you need to create an admin user with
+
+# /sbin/add-user.sh -m -u wildfly -p **secret**
diff --git a/network/wildfly/rc.wildfly b/network/wildfly/rc.wildfly
index 4ca3936bb6..4c13f4e2fe 100644
--- a/network/wildfly/rc.wildfly
+++ b/network/wildfly/rc.wildfly
@@ -2,7 +2,7 @@
# Start/stop/restart wildfly.
-# Copyright 2017 Giorgio Peron <giorgio.peron@gmail.com>, Belluno, Italy
+# Copyright 2023 Giorgio Peron <giorgio.peron@gmail.com>, Belluno, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -36,20 +36,22 @@ export LAUNCH_WILDFLY_IN_BACKGROUND=yes
# define the script to use to start standalone wildfly
WILDFLY_START_STANDALONE=${WILDFLY_START_STANDALONE:-"$WILDFLY_HOME/bin/standalone.sh "}
+WILDFLY_START_DOMAIN=${WILDFLY_START_DOMAIN:-"$WILDFLY_HOME/bin/domain.sh "}
# define the script to use to shutdown wildfly
# change host and port as need
WILDFLY_STOP_STANDALONE=${WILDFLY_STOP_STANDALONE:-"$WILDFLY_HOME/bin/jboss-cli.sh --connect controller=127.0.0.1:9990 command=:shutdown"}
+WILDFLY_STOP_DOMAIN=${WILDFLY_STOP_DOMAIN:-"$WILDFLY_HOME/bin/jboss-cli.sh --connect controller=127.0.0.1:9990 command=/host=primary:shutdown"}
# define log file
-WILDFLY_CONSOLE="/var/log/wildfly/wildfly.log"
-WILDFLY_DOMAIN_CONSOLE="/var/log/wildfly/wildfly_domain.log"
+WILDFLY_CONSOLE="/var/log/wildfly/standalone/console.log"
+WILDFLY_DOMAIN_CONSOLE="/var/log/wildfly/domain/console.log"
if [ -n "$WILDFLY_CONSOLE" -a ! -d "$WILDFLY_CONSOLE" ]; then
# ensure the file exists
touch $WILDFLY_CONSOLE
if [ "$WILDFLYUS" != "RUNASIS" ]; then
- chown -R $WILDFLYUS.$WILDFLYUS $WILDFLY_CONSOLE
+ chown -R $WILDFLYUS:$WILDFLYUS $WILDFLY_CONSOLE
fi
fi
@@ -66,7 +68,7 @@ if [ -n "$WILDFLY_DOMAIN_CONSOLE" -a ! -d "$WILDFLY_DOMAIN_CONSOLE" ]; then
# ensure the file exists
touch $WILDFLY_DOMAIN_CONSOLE
if [ "$WILDFLYUS" != "RUNASIS" ]; then
- chown -R $WILDFLYUS.$WILDFLYUS $WILDFLY_DOMAIN_CONSOLE
+ chown -R $WILDFLYUS:$WILDFLYUS $WILDFLY_DOMAIN_CONSOLE
fi
fi
@@ -82,6 +84,9 @@ WILDFLY_DOMAIN_CONSOLE=${WILDFLY_DOMAIN_CONSOLE:-"/dev/null"}
CMD_START_STANDALONE="cd $WILDFLY_HOME/bin; $WILDFLY_START_STANDALONE"
CMD_STOP_STANDALONE="cd $WILDFLY_HOME/bin; $WILDFLY_STOP_STANDALONE"
+CMD_START_DOMAIN="cd $WILDFLY_HOME/bin; $WILDFLY_START_DOMAIN"
+CMD_STOP_DOMAIN="cd $WILDFLY_HOME/bin; $WILDFLY_STOP_DOMAIN"
+
if [ "$WILDFLYUS" = "RUNASIS" ]; then
SUBIT=""
else
diff --git a/network/wildfly/slack-desc b/network/wildfly/slack-desc
index 1bdf5cf2eb..aefdbb391d 100644
--- a/network/wildfly/slack-desc
+++ b/network/wildfly/slack-desc
@@ -6,12 +6,12 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-wildfly: wildfly (Application Runtime)
+wildfly: wildfly (Application Server)
wildfly:
-wildfly: WildFly is a free, open source, Java EE 7 platform for
+wildfly: WildFly is a free, open source, Jakarta EE 10 platform for
wildfly: developing and deploying enterprise Java applications, Web
-wildfly: applications, and Portals, Wildfly provides the full
-wildfly: range of Java EE 7 features as well as extended enterprise services
+wildfly: applications, and Portals, Wildfly provides the full range of
+wildfly: Jakarta EE 10 features as well as extended enterprise services
wildfly: including clustering, caching, and persistence.
wildfly:
wildfly:
diff --git a/network/wildfly/wildfly.SlackBuild b/network/wildfly/wildfly.SlackBuild
index bdf7dfaac6..1d12665839 100644
--- a/network/wildfly/wildfly.SlackBuild
+++ b/network/wildfly/wildfly.SlackBuild
@@ -1,7 +1,7 @@
#!/bin/bash
# Slackware build script for WildFly
-# Copyright 2019 Giorgio Peron <giorgio.peron@gmail.com>, Belluno, Italy
+# Copyright 2023 Giorgio Peron <giorgio.peron@gmail.com>, Belluno, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,7 +24,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wildfly
-VERSION=${VERSION:-18.0.0}
+VERSION=${VERSION:-30.0.1}
MINORVER=${MINORVER:-.Final}
BUILD=${BUILD:-1}
@@ -64,7 +64,7 @@ tar xvzf $CWD/$PRGNAM-$VERSION$MINORVER.tar.gz
mkdir -p $PKG/usr/share/$PRGNAM
mv $TMP/$PRGNAM-$VERSION$MINORVER/* $PKG/usr/share/$PRGNAM
cd $PKG/usr/share/$PRGNAM
-chown -R root:root .
+chown -R wildfly:wildfly .
# Move the docs to our standard location first
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
@@ -91,8 +91,16 @@ cd $PKG/var/lib/$PRGNAM/domain
ln -sf ../../../../etc/$PRGNAM/domain/configuration configuration
mkdir -p $PKG/var/{log,tmp}/$PRGNAM/standalone
cd $PKG/var/lib/$PRGNAM/standalone
+mv $PKG/var/lib/$PRGNAM/standalone/tmp/* $PKG/var/tmp/$PRGNAM/standalone/
+rm -rf $PKG/var/lib/$PRGNAM/standalone/tmp
ln -sf ../../../log/$PRGNAM/standalone log
ln -sf ../../../tmp/$PRGNAM/standalone tmp
+mkdir -p $PKG/var/{log,tmp}/$PRGNAM/domain
+cd $PKG/var/lib/$PRGNAM/domain
+mv $PKG/var/lib/$PRGNAM/domain/tmp/* $PKG/var/tmp/$PRGNAM/domain/
+rm -rf $PKG/var/lib/$PRGNAM/domain/tmp
+ln -sf ../../../log/$PRGNAM/domain log
+ln -sf ../../../tmp/$PRGNAM/domain tmp
mv $PKG/usr/share/$PRGNAM/bin/standalone.conf $PKG/etc/$PRGNAM/standalone/
mv $PKG/usr/share/$PRGNAM/bin/domain.conf $PKG/etc/$PRGNAM/domain/
@@ -132,19 +140,10 @@ chmod 0755 $PKG/usr/share/$PRGNAM/bin/*.sh
mkdir -p $PKG/sbin
cd $PKG/sbin
-ln -sf ../usr/share/$PRGNAM/bin/add-user.sh
-ln -sf ../usr/share/$PRGNAM/bin/appclient.sh
-ln -sf ../usr/share/$PRGNAM/bin/common.sh
-ln -sf ../usr/share/$PRGNAM/bin/domain.sh
-ln -sf ../usr/share/$PRGNAM/bin/elytron-tool.sh
-ln -sf ../usr/share/$PRGNAM/bin/jboss-cli.sh
-ln -sf ../usr/share/$PRGNAM/bin/jconsole.sh
-ln -sf ../usr/share/$PRGNAM/bin/jdr.sh
-ln -sf ../usr/share/$PRGNAM/bin/standalone.sh
-ln -sf ../usr/share/$PRGNAM/bin/vault.sh
-ln -sf ../usr/share/$PRGNAM/bin/wsconsume.sh
-ln -sf ../usr/share/$PRGNAM/bin/wsprovide.sh
-
+for filename in ../usr/share/$PRGNAM/bin/*.sh; do
+ echo $filename
+ ln -sf $filename
+done
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
diff --git a/network/wildfly/wildfly.info b/network/wildfly/wildfly.info
index da2ff1fd92..dbc73de7e2 100644
--- a/network/wildfly/wildfly.info
+++ b/network/wildfly/wildfly.info
@@ -1,10 +1,10 @@
PRGNAM="wildfly"
-VERSION="18.0.0"
+VERSION="30.0.1"
HOMEPAGE="https://wildfly.org"
-DOWNLOAD="http://download.jboss.org/wildfly/18.0.0.Final/wildfly-18.0.0.Final.tar.gz"
-MD5SUM="b63ad9031786eb70b473a72bac49e952"
+DOWNLOAD="https://github.com/wildfly/wildfly/releases/download/30.0.1.Final/wildfly-30.0.1.Final.tar.gz"
+MD5SUM="c6d6ac6d8adfd41ec88cb0cc45adf4d6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="zulu-openjdk8"
+REQUIRES="zulu-openjdk17"
MAINTAINER="Giorgio Peron"
EMAIL="giorgio.peron@gmail.com"
diff --git a/network/windscribe/path.diff b/network/windscribe/path.diff
deleted file mode 100644
index af1e39ddac..0000000000
--- a/network/windscribe/path.diff
+++ /dev/null
@@ -1,41 +0,0 @@
-diff --git a/etc/systemd/system/windscribe-helper.service b/etc/systemd/system/windscribe-helper.service
-index 602d584..d9baeab 100644
---- a/etc/systemd/system/windscribe-helper.service
-+++ b/etc/systemd/system/windscribe-helper.service
-@@ -5,7 +5,7 @@ Wants=network-pre.target
-
- [Service]
- Type=simple
--ExecStart=/usr/local/windscribe/helper
-+ExecStart=/opt/windscribe/helper
-
- [Install]
- WantedBy=multi-user.target
-\ No newline at end of file
-diff --git a/usr/polkit-1/actions/com.windscribe.authhelper.policy b/usr/polkit-1/actions/com.windscribe.authhelper.policy
-index 4d81580..301fb8d 100644
---- a/usr/polkit-1/actions/com.windscribe.authhelper.policy
-+++ b/usr/polkit-1/actions/com.windscribe.authhelper.policy
-@@ -11,7 +11,7 @@
- <allow_inactive>auth_admin_keep</allow_inactive>
- <allow_active>auth_admin_keep</allow_active>
- </defaults>
-- <annotate key="org.freedesktop.policykit.exec.path">/usr/local/windscribe/windscribe-authhelper</annotate>
-+ <annotate key="org.freedesktop.policykit.exec.path">/opt/windscribe/windscribe-authhelper</annotate>
- <annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
- </action>
- </policyconfig>
-diff --git a/usr/share/applications/windscribe.desktop b/usr/share/applications/windscribe.desktop
-index 8118766..731074b 100644
---- a/usr/share/applications/windscribe.desktop
-+++ b/usr/share/applications/windscribe.desktop
-@@ -1,7 +1,7 @@
- [Desktop Entry]
- Type=Application
- Terminal=false
--Exec=/usr/local/windscribe/Windscribe %F
-+Exec=/opt/windscribe/Windscribe %F
- Name=Windscribe
- Icon=windscribe
- Categories=Utility;Security
-\ No newline at end of file
diff --git a/network/windscribe/windscribe.SlackBuild b/network/windscribe/windscribe.SlackBuild
index fff004657c..633915265c 100644
--- a/network/windscribe/windscribe.SlackBuild
+++ b/network/windscribe/windscribe.SlackBuild
@@ -27,7 +27,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=windscribe
-VERSION=${VERSION:-2.4.8}
+VERSION=${VERSION:-2.9.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -40,9 +40,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
@@ -55,8 +52,6 @@ OUTPUT=${OUTPUT:-/tmp}
set -e
if [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
BITS="amd64"
else
echo "Package for $(uname -m) architecture is not available."
@@ -70,17 +65,21 @@ rm -rf $PRGNAM-$VERSION
mkdir -p $PRGNAM-$VERSION
cd $PRGNAM-$VERSION
-rpm2cpio $CWD/${PRGNAM}_${VERSION}_beta_${ARCH}.rpm | cpio -idmv
-mkdir opt
-mv usr/local/$PRGNAM opt/
-patch -p1 < $CWD/path.diff
+rpm2cpio $CWD/${PRGNAM}_${VERSION}_${ARCH}.rpm | cpio -idmv
rm -fR etc/{systemd,windscribe/update-systemd-resolved} usr/local
mv * $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
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+mv $PKG/usr/polkit-1 $PKG/usr/share/
+chmod 644 $PKG/usr/share/applications/windscribe.desktop
+chmod 644 $PKG/usr/share/icons/hicolor/*/apps/windscribe.png
+
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
@@ -89,4 +88,4 @@ mkdir -p $PKG/etc/rc.d/
install -m 0755 $CWD/rc.$PRGNAM $PKG/etc/rc.d/rc.$PRGNAM
cd $PKG
-/sbin/makepkg -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/windscribe/windscribe.info b/network/windscribe/windscribe.info
index fa89e2b1fc..c29e8824a0 100644
--- a/network/windscribe/windscribe.info
+++ b/network/windscribe/windscribe.info
@@ -1,10 +1,10 @@
PRGNAM="windscribe"
-VERSION="2.4.8"
+VERSION="2.9.9"
HOMEPAGE="https://www.windscribe.com/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://assets.totallyacdn.com/desktop/beta/windscribe_2.4.8_beta_x86_64.rpm"
-MD5SUM_x86_64="6440c04260f5189f6adcdb1f8085e467"
+DOWNLOAD_x86_64="https://github.com/Windscribe/Desktop-App/releases/download/v2.9.9/windscribe_2.9.9_x86_64.rpm"
+MD5SUM_x86_64="1a4a27e99d31e82d7fcff3794dc30137"
REQUIRES=""
MAINTAINER="Reza Talebi"
EMAIL="reza.talebi.73@outlook.com"
diff --git a/network/wireshark/README b/network/wireshark/README
index a529a7ce94..7b9f4a600b 100644
--- a/network/wireshark/README
+++ b/network/wireshark/README
@@ -18,8 +18,8 @@ protocol development, and education worldwide.
If you use a filesystem that supports posix capabilities, an easy way
to start wireshark as a normal user, while still providing it with
all of the access permissions it requires, is by issuing the following
-command:
- $ setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap
+command as root:
+ # setcap cap_net_raw,cap_net_admin=ep /usr/bin/dumpcap
One may also test if things are ok running this command as a normal
user:
diff --git a/network/wireshark/wireshark.SlackBuild b/network/wireshark/wireshark.SlackBuild
index ca44090a74..dee353ae35 100644
--- a/network/wireshark/wireshark.SlackBuild
+++ b/network/wireshark/wireshark.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for wireshark
# Copyright 2008-2014 Michiel van Wessem, Leicester, United Kingdom
-# Copyright 2017-2022 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2017-2024 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
# Originally written by Jick Nan (jick.nan@gmail.com)
# All rights reserved.
#
@@ -32,7 +32,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wireshark
-VERSION=${VERSION:-3.6.8}
+VERSION=${VERSION:-4.2.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -45,9 +45,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
@@ -109,6 +106,7 @@ cd build
-DCMAKE_INSTALL_MANDIR=/usr/man \
-DCMAKE_INSTALL_DOCDIR=/usr/doc/$PRGNAM-$VERSION \
-DLIB_SUFFIX=${LIBDIRSUFFIX} \
+ -DUSE_qt6=OFF \
-DCMAKE_BUILD_TYPE=Release ..
make
make install DESTDIR=$PKG
@@ -121,25 +119,25 @@ 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/include/$PRGNAM/{epan/{crypt,dfilter,dissectors,ftypes,wmem},wiretap,wsutil}
-install -m644 ws_diag_control.h ws_symbol_export.h $PKG/usr/include/$PRGNAM
+install -m644 include/ws_diag_control.h include/ws_symbol_export.h $PKG/usr/include/$PRGNAM
for d in epan epan/crypt epan/dfilter epan/dissectors epan/ftypes; do
install -m644 $d/*.h $PKG/usr/include/$PRGNAM/$d
done
mkdir -p $PKG/usr/share/applications
-cp org.wireshark.Wireshark.desktop $PKG/usr/share/applications
+cp resources/freedesktop/org.wireshark.Wireshark.desktop $PKG/usr/share/applications
mkdir -p $PKG/usr/share/mime/packages
-cp org.wireshark.Wireshark-mime.xml $PKG/usr/share/mime/packages
+cp resources/freedesktop/org.wireshark.Wireshark-mime.xml $PKG/usr/share/mime/packages
mkdir -p $PKG/usr/share/metainfo
-cp org.wireshark.Wireshark.metainfo.xml $PKG/usr/share/metainfo
+cp resources/freedesktop/org.wireshark.Wireshark.metainfo.xml $PKG/usr/share/metainfo
# Remove any .la files
rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a AUTHORS* COPYING ChangeLog INSTALL NEWS README* doc/READM* \
+cp -a AUTHORS* COPYING ChangeLog NEWS README* doc/READM* \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/wireshark/wireshark.info b/network/wireshark/wireshark.info
index be220f1bd9..c3f620160f 100644
--- a/network/wireshark/wireshark.info
+++ b/network/wireshark/wireshark.info
@@ -1,8 +1,8 @@
PRGNAM="wireshark"
-VERSION="3.6.8"
+VERSION="4.2.4"
HOMEPAGE="https://www.wireshark.org/"
-DOWNLOAD="https://1.as.dl.wireshark.org/src/wireshark-3.6.8.tar.xz"
-MD5SUM="d612af33d202892b48878607adfc6e24"
+DOWNLOAD="https://2.na.dl.wireshark.org/src/wireshark-4.2.4.tar.xz"
+MD5SUM="cebb012489563a8eb9c3829cdcb0579c"
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 248c142e75..e68654632f 100644
--- a/network/wp-cli/wp-cli.SlackBuild
+++ b/network/wp-cli/wp-cli.SlackBuild
@@ -2,7 +2,7 @@
#
# Slackware build script for wp-cli
#
-# Copyright 2016-2022 Corrado Franco (https://corradofranco.it)
+# Copyright 2016-2023 Corrado Franco (https://corradofranco.it)
# All rights reserved.
#
# This program is free software: you can redistribute it and/or modify
@@ -28,16 +28,13 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=wp-cli
-VERSION=${VERSION:-2.6.0}
+VERSION=${VERSION:-2.10.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
ARCH=noarch
-# 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
@@ -58,7 +55,7 @@ install -Dm755 $CWD/$PRGNAM-$VERSION.phar $PKG/usr/bin/wp
install -Dm644 $CWD/files/wp-completion.bash $PKG/usr/share/bash-completion/completions/wp
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a $CWD/files/LICENSE $PKG/usr/doc/$PRGNAM-$VERSION || true
+cp $CWD/files/LICENSE $PKG/usr/doc/$PRGNAM-$VERSION || true
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/wp-cli/wp-cli.info b/network/wp-cli/wp-cli.info
index a065fa0532..d8b1e3338f 100644
--- a/network/wp-cli/wp-cli.info
+++ b/network/wp-cli/wp-cli.info
@@ -1,8 +1,8 @@
PRGNAM="wp-cli"
-VERSION="2.6.0"
+VERSION="2.10.0"
HOMEPAGE="http://wp-cli.org/"
-DOWNLOAD="https://github.com/wp-cli/wp-cli/releases/download/v2.6.0/wp-cli-2.6.0.phar"
-MD5SUM="8b44375de9a7aa128a8a135380a8e550"
+DOWNLOAD="https://github.com/wp-cli/wp-cli/releases/download/v2.10.0/wp-cli-2.10.0.phar"
+MD5SUM="6710e90c3ed173925acd35ce5fe5aaf9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="composer"
diff --git a/network/wpa-cute/README b/network/wpa-cute/README
new file mode 100644
index 0000000000..bbaab47a47
--- /dev/null
+++ b/network/wpa-cute/README
@@ -0,0 +1,2 @@
+wpa-cute is a qt graphical wpa_supplicant front end. It is a fork from
+wpa_gui, shipped with wpa_supplicant version 2.6.
diff --git a/network/Flootty/doinst.sh b/network/wpa-cute/doinst.sh
index 5fb28930db..5fb28930db 100644
--- a/network/Flootty/doinst.sh
+++ b/network/wpa-cute/doinst.sh
diff --git a/network/wpa-cute/slack-desc b/network/wpa-cute/slack-desc
new file mode 100644
index 0000000000..fd6f6d4552
--- /dev/null
+++ b/network/wpa-cute/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------------------------------------------------------|
+wpa-cute: wpa-cute (graphical wpa_supplicant front end)
+wpa-cute:
+wpa-cute:
+wpa-cute: wpa-cute is a qt graphical wpa_supplicant front end.
+wpa-cute: It is a fork from wpa_gui, shipped with wpa_supplicant version 2.6.
+wpa-cute:
+wpa-cute:
+wpa-cute: Homepage: https://github.com/loh-tar/wpa-cute
+wpa-cute:
+wpa-cute:
+wpa-cute:
diff --git a/network/Free-Cinema/Free-Cinema.SlackBuild b/network/wpa-cute/wpa-cute.SlackBuild
index 4ba7dcb3e9..0eef3b9316 100644
--- a/network/Free-Cinema/Free-Cinema.SlackBuild
+++ b/network/wpa-cute/wpa-cute.SlackBuild
@@ -1,8 +1,8 @@
#!/bin/bash
-# Slackware build script for Free-Cinema
+# Slackware build script for wpa-cute
-# Copyright 2014-2016 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2022-2024, Alexander Verbovetsky, Moscow, Russia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,8 +24,8 @@
cd $(dirname $0) ; CWD=$(pwd)
-PRGNAM=Free-Cinema
-VERSION=${VERSION:-0.3.0}
+PRGNAM=wpa-cute
+VERSION=${VERSION:-0.8.5}
BUILD=${BUILD:-1}
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
@@ -79,13 +76,20 @@ 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 {} \;
-python setup.py install --root=$PKG
+cd src
+qmake QMAKE_CFLAGS="$SLKCFLAGS" QMAKE_CXXFLAGS="$SLKCFLAGS" wpa_gui.pro
+make
-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 -sDm755 wpa-cute $PKG/usr/bin/wpa-cute
+install -Dm644 icons/wpa_gui.svg $PKG/usr/share/pixmaps/wpa-cute.svg
+install -Dm644 wpa-cute.desktop $PKG/usr/share/applications/wpa-cute.desktop
+
+cd ..
+mkdir -p $PKG/usr/man/man8
+cat doc/wpa-cute.8 | gzip -9 > $PKG/usr/man/man8/wpa-cute.8.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a README PKG-INFO $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CONTRIBUTIONS 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/wpa-cute/wpa-cute.info b/network/wpa-cute/wpa-cute.info
new file mode 100644
index 0000000000..1604f7ae31
--- /dev/null
+++ b/network/wpa-cute/wpa-cute.info
@@ -0,0 +1,10 @@
+PRGNAM="wpa-cute"
+VERSION="0.8.5"
+HOMEPAGE="https://github.com/loh-tar/wpa-cute"
+DOWNLOAD="https://github.com/loh-tar/wpa-cute/archive/v0.8.5/wpa-cute-0.8.5.tar.gz"
+MD5SUM="f5a1827d37d89df5fc190c8b3264bde1"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Alexander Verbovetsky"
+EMAIL="alik@ejik.org"
diff --git a/network/wput/wput.info b/network/wput/wput.info
index ffec413d62..404ef75bd0 100644
--- a/network/wput/wput.info
+++ b/network/wput/wput.info
@@ -1,6 +1,6 @@
PRGNAM="wput"
VERSION="0.6.2+git20130413_11"
-HOMEPAGE="http://wput.sourceforge.net/"
+HOMEPAGE="https://wput.sourceforge.net/"
DOWNLOAD="https://deb.debian.org/debian/pool/main/w/wput/wput_0.6.2+git20130413.orig.tar.bz2 \
https://deb.debian.org/debian/pool/main/w/wput/wput_0.6.2+git20130413-11.debian.tar.xz"
MD5SUM="8b4ff475940532ae086d37e3ba548b49 \
diff --git a/network/wrk/wrk.info b/network/wrk/wrk.info
index 03be669eef..38cbe22a3b 100644
--- a/network/wrk/wrk.info
+++ b/network/wrk/wrk.info
@@ -1,7 +1,7 @@
PRGNAM="wrk"
VERSION="3.1.1"
HOMEPAGE="https://github.com/wg/wrk"
-DOWNLOAD="https://github.com/wg/wrk/archive/3.1.1.tar.gz"
+DOWNLOAD="https://github.com/wg/wrk/archive/3.1.1/wrk-3.1.1.tar.gz"
MD5SUM="bf25e174845bad36fefd66f9be71889e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/x11spice/x11spice.SlackBuild b/network/x11spice/x11spice.SlackBuild
index 5eaf09f1c2..ccc39649e7 100644
--- a/network/x11spice/x11spice.SlackBuild
+++ b/network/x11spice/x11spice.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for x11spice
-# Copyright 2018-2021 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
+# Copyright 2018-2023 Matteo Bernardini <ponce@slackbuilds.org>, Pisa, Italy
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=x11spice
-VERSION=${VERSION:-20200608_f4593d3}
+VERSION=${VERSION:-20230803_33a9af7}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
diff --git a/network/x11spice/x11spice.info b/network/x11spice/x11spice.info
index 2b8e58c7f2..4ebda8d76a 100644
--- a/network/x11spice/x11spice.info
+++ b/network/x11spice/x11spice.info
@@ -1,8 +1,8 @@
PRGNAM="x11spice"
-VERSION="20200608_f4593d3"
+VERSION="20230803_33a9af7"
HOMEPAGE="https://gitlab.freedesktop.org/spice/x11spice"
-DOWNLOAD="http://ponce.cc/slackware/sources/repo/x11spice-20200608_f4593d3.tar.xz"
-MD5SUM="7171235457cb6692b90af73e770457dc"
+DOWNLOAD="http://ponce.cc/slackware/sources/repo/x11spice-20230803_33a9af7.tar.xz"
+MD5SUM="ad829eb4184cf5d5cdfdfb6e84ba8274"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="spice"
diff --git a/network/xdman/README b/network/xdman/README
new file mode 100644
index 0000000000..16b865c23e
--- /dev/null
+++ b/network/xdman/README
@@ -0,0 +1,5 @@
+xdman is an open source download manager and accelerator.
+It can resume broken or dead downloads and save videos from
+popular streaming websites.It also integrates with
+Google Chrome, Mozilla Firefox, Opera, Vivaldi and
+other Chroumium and Firefox based browsers.
diff --git a/network/xdman/changelog b/network/xdman/changelog
new file mode 100644
index 0000000000..31a8185eaa
--- /dev/null
+++ b/network/xdman/changelog
@@ -0,0 +1,20 @@
+Changelog for xdman SlackBuild Script
+--------------------------------------------------------------------
+
+25/05/2023:
+
+Submitted to slackbuilds.org
+
+26/05/2023:
+
+Resubmitted to SBo.
+Fixed the SlackBuild script and added the url for
+the license file in the info file.
+
+27/05/2023:
+
+Added to SBo
+
+29/09/2023:
+
+updated to version 8.0.29
diff --git a/network/xdman/doinst.sh b/network/xdman/doinst.sh
new file mode 100644
index 0000000000..5b35a0a29e
--- /dev/null
+++ b/network/xdman/doinst.sh
@@ -0,0 +1,14 @@
+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 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 usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/network/xdman/slack-desc b/network/xdman/slack-desc
new file mode 100644
index 0000000000..0cf34a6575
--- /dev/null
+++ b/network/xdman/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------------------------------------------------------|
+xdman: xdman (Xtreme Download Manager)
+xdman:
+xdman: xdman is an open source download manager and accelerator.
+xdman: It can resume broken or dead downloads and save videos from
+xdman: popular streaming websites.It also integrates very nicely
+xdman: with Firefox and Chrome.
+xdman:
+xdman:
+xdman: Homepage:https://github.com/subhra74
+xdman:
+xdman:
diff --git a/network/xdman/xdm-app.desktop b/network/xdman/xdm-app.desktop
new file mode 100644
index 0000000000..5009de519b
--- /dev/null
+++ b/network/xdman/xdm-app.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Version=1.0
+Exec=env GTK_USE_PORTAL=1 /opt/xdman/xdm-app %U
+Type=Application
+Terminal=false
+Name=Xtreme Download Manager
+Comment=Download Manager
+Categories=Network;
+Icon=/opt/xdman/xdm-logo.svg
+MimeType=application/xdm-app;x-scheme-handler/xdm-app;
+StartupNotify=true
diff --git a/network/xdman/xdman.SlackBuild b/network/xdman/xdman.SlackBuild
new file mode 100644
index 0000000000..83820b7e34
--- /dev/null
+++ b/network/xdman/xdman.SlackBuild
@@ -0,0 +1,112 @@
+#!/bin/bash
+
+# Slackware build script for xdman
+
+# Copyright 2023 Vijay Marcel
+# 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=xdman
+VERSION=${VERSION:-8.0.29}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+sys_arch=${sys_arch:-$(uname -m)}
+SRCNAM=${SRCNAM:-xdman_gtk_}
+
+case "$sys_arch" in
+ x86_64)
+ DEBARCH=amd64
+ ARCH=x86_64
+ LIBDIRSUFFIX="64"
+ ;;
+ *) echo "This program will not build on $sys_arch platform" && exit 1 ;;
+esac
+
+# 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}
+
+set -e
+trap 'echo "$0 FAILED at line $LINENO!" | tee -a $OUTPUT/error-${PRGNAM}.log' ERR
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir -pv $PRGNAM-$VERSION
+ar -x $CWD/$SRCNAM${VERSION}_${DEBARCH}.deb --output $TMP/$PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+tar xvf data.tar.xz -C $PKG
+cd .. && cd $PKG
+
+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 {} \;
+
+chmod 0750 $PKG/opt/xdman/libmscordaccore.so
+chmod 0750 $PKG/opt/xdman/libhostfxr.so
+chmod 0750 $PKG/opt/xdman/libmscordbi.so
+chmod 0750 $PKG/opt/xdman/libcoreclr.so
+chmod 0750 $PKG/opt/xdman/libSystem.Globalization.Native.so
+chmod 0750 $PKG/opt/xdman/SQLite.Interop.dll
+chmod 0750 $PKG/opt/xdman/libSystem.Native.so
+chmod 0750 $PKG/opt/xdman/libhostpolicy.so
+chmod 0750 $PKG/opt/xdman/libcoreclrtraceptprovider.so
+chmod 0750 $PKG/opt/xdman/libSystem.Security.Cryptography.Native.OpenSsl.so
+chmod 0750 $PKG/opt/xdman/createdump
+chmod 0750 $PKG/opt/xdman/libSystem.Net.Security.Native.so
+chmod 0750 $PKG/opt/xdman/libSystem.IO.Compression.Native.so
+chmod 0750 $PKG/opt/xdman/libdbgshim.so
+chmod 0750 $PKG/opt/xdman/libclrjit.so
+
+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
+
+rm -rvf $PKG/usr/share/applications/xdm-app.destop
+install -m0644 $CWD/xdm-app.desktop -t $PKG/usr/share/applications/
+
+enscript -B -o $TMP/GPL-2.0.ps $CWD/gpl-2.0.txt
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cp -a $TMP/GPL-2.0.ps $PKG/usr/doc/$PRGNAM-$VERSION
+
+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/xdman/xdman.info b/network/xdman/xdman.info
new file mode 100644
index 0000000000..568341b8a6
--- /dev/null
+++ b/network/xdman/xdman.info
@@ -0,0 +1,12 @@
+PRGNAM="xdman"
+VERSION="8.0.29"
+HOMEPAGE="https://github.com/subhra74"
+DOWNLOAD="UNSUPPORTED"
+MD5SUM=""
+DOWNLOAD_x86_64="https://github.com/subhra74/xdm/releases/download/8.0.29/xdman_gtk_8.0.29_amd64.deb \
+ https://www.gnu.org/licenses/gpl-2.0.txt"
+MD5SUM_x86_64="3a67fa5716036948e044296e34e5347e \
+ b234ee4d69f5fce4486a80fdaf4a4263"
+REQUIRES="yt-dlp"
+MAINTAINER="Vijay Marcel"
+EMAIL="vijaymarcel@outlook.com"
diff --git a/network/xinetd/README b/network/xinetd/README
index bf77dbabe0..84a8eae259 100644
--- a/network/xinetd/README
+++ b/network/xinetd/README
@@ -1,14 +1,13 @@
-Xinetd is a powerful inetd replacement. Xinetd has access control
+xinetd (a better inetd)
+
+Xinetd is a powerful inetd replacement. Xinetd has access control
mechanisms, extensive logging capabilities, the ability to make
services available based on time, can place limits on the number of
-servers that can be started, and has a configurable defence mechanisms
+servers that can be started, and has configurable defence mechanisms
to protect against port scanners, among other things.
Before starting xinetd, you may wish to switch inetd off if it is
-running. To do this:
-
-Do a "ps x" as root and look up the pid of inetd. Then do "kill <pid
-of inetd>"
+running. To do this: killall inetd
Stop inetd from starting at boot: chmod 0644 /etc/rc.d/rc.inetd
@@ -18,6 +17,7 @@ Start xinetd on boot by adding the following lines to
if [ ! -x /etc/rc.d/rc.inetd ] && [ -x /etc/rc.d/rc.xinetd ]; then
/etc/rc.d/rc.xinetd start
fi
+
Ensure that /etc/rc.d/{rc.local,rc.xinetd} have executable permissions.
Alternatively, you can avoid all of the edits to rc.local:
diff --git a/network/xinetd/slack-desc b/network/xinetd/slack-desc
index 51563e374d..5e7b2cadf7 100644
--- a/network/xinetd/slack-desc
+++ b/network/xinetd/slack-desc
@@ -11,7 +11,7 @@ xinetd:
xinetd: Xinetd is a powerful inetd replacement. Xinetd has access control
xinetd: mechanisms, extensive logging capabilities, the ability to make
xinetd: services available based on time, can place limits on the number of
-xinetd: servers that can be started, and has a configurable defence mechanisms
+xinetd: servers that can be started, and has configurable defence mechanisms
xinetd: to protect against port scanners, among other things.
xinetd:
xinetd: Homepage: http://xinetd.org
diff --git a/network/xinetd/xinetd.SlackBuild b/network/xinetd/xinetd.SlackBuild
index 296bfb368c..4da22df787 100644
--- a/network/xinetd/xinetd.SlackBuild
+++ b/network/xinetd/xinetd.SlackBuild
@@ -3,8 +3,9 @@
# Slackware build script for xinetd
# Copyright 2012 Chris Abela, Malta
-# Copyright 2014 Ryan P.C. McQuen, WA, ryanpcmcquen@member.fsf.org
-# Copyright 2017-2019 Aaditya Bagga <aaditya_gnulinux@zoho.com>
+# Copyright 2014 Ryan P.C. McQuen, WA
+# Copyright 2017-2019 Aaditya
+# Copyright 2023 B. Watson
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -24,6 +25,15 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20231222 bkw:
+# - take over maintenance.
+# - fix #@$@% github download URL.
+# - tweak README and slack-desc slightly.
+# Note: I'm taking this over just to keep it from being removed from SBo.
+# I don't use it, and I'm not likely to spend much time on it. If you see
+# that I've let this get out of date and would like to take over maintenance,
+# please do (just email me).
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xinetd
@@ -40,9 +50,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
@@ -72,15 +79,11 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/$VERSION.tar.gz
+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 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} + -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} +
./autogen.sh
@@ -97,30 +100,22 @@ CXXFLAGS="$SLKCFLAGS" \
--build=$ARCH-slackware-linux
make
-make install DESTDIR=$PKG
+make install-strip DESTDIR=$PKG
+gzip -9 $PKG/usr/man/man*/*
-# Install the Slackware init script
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.xinetd > $PKG/etc/rc.d/rc.xinetd.new
chmod 0755 $PKG/etc/rc.d/rc.xinetd.new
-# Backup config files
mv "$PKG/etc/xinetd.conf" "$PKG/etc/xinetd.conf.new"
for file in "$PKG"/etc/xinetd.d/*; do
mv "${file}" "${file}.new"
done
-find $PKG | xargs 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 COPYRIGHT README.md \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a CHANGELOG COPYRIGHT README.md $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/xinetd/xinetd.info b/network/xinetd/xinetd.info
index 9b81acc6ea..6c4591d74e 100644
--- a/network/xinetd/xinetd.info
+++ b/network/xinetd/xinetd.info
@@ -1,10 +1,10 @@
PRGNAM="xinetd"
VERSION="2.3.15.4"
HOMEPAGE="https://github.com/openSUSE/xinetd"
-DOWNLOAD="https://github.com/openSUSE/xinetd/archive/2.3.15.4.tar.gz"
+DOWNLOAD="https://github.com/openSUSE/xinetd/archive/2.3.15.4/xinetd-2.3.15.4.tar.gz"
MD5SUM="c2ca87367a7017a8f736a32e18be38e5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Aaditya Bagga"
-EMAIL="aaditya_gnulinux@zoho.com"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/network/xmrig/README b/network/xmrig/README
new file mode 100644
index 0000000000..347099144c
--- /dev/null
+++ b/network/xmrig/README
@@ -0,0 +1,100 @@
+XMRig is a high performance, open source, cross platform RandomX,
+KawPow, CryptoNight and GhostRider unified CPU/GPU miner and
+RandomX benchmark. Official binaries are available for Windows,
+Linux, macOS and FreeBSD.
+
+Mining Backends:
+* CPU (x64/ARMv7/ARMv8)
+* OpenCL for AMD GPUs
+(CUDA for NVIDIA GPUs requires an external CUDA plugin "xmrig-cuda"
+as a dependency; for the time being, you will have to compile this
+yourself)
+
+Usage:
+The preferred way to configure the miner is the JSON config file,
+as it is more flexible and human friendly. The command line interface
+does not cover all features, such as mining profiles for different
+algorithms. Important options can be changed during runtime without
+miner restart by editing the config file or executing API calls.
+
+Config File:
+An online wizard (located at https://xmrig.com/wizard) can be used
+to help create an initial configuration for the miner. The resulting
+config file must be placed as either .xmrig.json or .config/xmrig.json
+in your user home directory.
+
+Donations:
+Donations are the percentage of your hashing power that you want to
+donate to the developer, and are used to support XMRig Development.
+Default donation 1% (1 minute in 100 minutes) can be increased via
+command line option --donate-level or disabled in the source code.
+Alternatively, pass the option "DONATE=no" to the script to disable
+donations altogether (although a one-time donation to the developers
+is recommended if you choose to do this).
+
+Algorithms:
+Various algorithms can be enabled/disabled by passing variables to the
+script (VAR=yes/no ./feather.SlackBuild) These algorithms include:
+WITH_CN_LITE=yes|no (default: yes)
+ (disable all CryptoNight-Lite algorithms (cn-lite/*))
+WITH_CN_HEAVY=yes|no (default: yes)
+ (disable all CryptoNight-Heavy algorithms (cn-heavy/*))
+WITH_CN_PICO=yes|no (default: yes)
+ (disable CryptoNight-Pico algorithms (cn-pico and cn-pico/tlo))
+WITH_CN_FEMTO=yes|no (default: yes)
+ (disable CryptoNight-UPX2 algorithm)
+WITH_RANDOMX=yes|no (default: yes)
+ (disable RandomX algorithms (rx/*))
+WITH_ARGON2=yes|no (default: yes)
+ (disable Argon2 algorithms (argon2/*)
+WITH_KAWPOW=yes|no (default: yes)
+ (disable KawPow algorithm (kawpow)
+WITH_GHOSTRIDER=yes|no (default: yes)
+ (disable GhostRider algorithm (gr)
+
+Features:
+Various features can be enabled/disabled by passing variables to the
+script (VAR=yes/no ./feather.SlackBuild) These features include:
+WITH_HWLOC=yes|no (default: yes)
+ (disable hwloc support. Disabling this feature is not recommended
+ in most cases. This feature adds an external dependency to
+ libhwloc (1.10.0+))
+WITH_LIBCPUID=yes|no (default: yes)
+ (disable built-in libcpuid support. This feature is always disabled
+ if hwloc is enabled. If both hwloc and libcpuid are disabled, auto
+ configuration for CPU will be very limited.)
+WITH_HTTP=yes|no (default: yes)
+ (disable built-in HTTP support. This feature is used for HTTP API
+ and daemon (solo mining) support)
+WITH_TLS=yes|no (default: yes)
+ (disable SSL/TLS support (secure connections to pool). This feature
+ adds an external dependency to OpenSSL (included in Slackware by
+ default))
+WITH_ASM=yes|no (default: yes)
+ (disable assembly optimisations for modern CryptoNight algorithms)
+WITH_EMBEDDED_CONFIG=yes|no (default: no)
+ (enable embedded config support)
+WITH_OPENCL=yes|no (default: yes)
+ (disable OpenCL backend)
+WITH_CUDA=yes|no (default: no)
+ (enable NVIDIA CUDA backend; requires xmrig-cuda dependency)
+WITH_NVML=yes|no (default: no)
+ (disable NVML (NVIDIA Management Library) support. This feature is
+ only available if CUDA is enabled)
+WITH_MSR=yes|no (default: yes)
+ (disable MSR mod & 1st-gen Ryzen fix)
+WITH_ADL=yes|no (default: yes)
+ (disable ADL (AMD Display Library) or sysfs support. Tihs feature
+ is only available if OpenCL is enabled)
+WITH_PROFILING=yes|no (default: no)
+ (enable profiling for developers)
+WITH_SSE4_1=yes|no (default: yes)
+ (disable SSE 4.1 for Blake2)
+WITH_BENCHMARK=yes|no (default: yes)
+ (disable builtin RandomX benchmark and stress test)
+WITH_SECURE_JIT=yes|no (default: no)
+ (enable secure access to JIT memory. Off by default on all OS,
+ except for macOS with ARM CPU)
+WITH_DMI=yes|no (default: yes)
+ (disable DMI/SMBIOS reader)
+
diff --git a/network/xmrig/donate.patch b/network/xmrig/donate.patch
new file mode 100644
index 0000000000..e2ca7ef48e
--- /dev/null
+++ b/network/xmrig/donate.patch
@@ -0,0 +1,13 @@
+--- donate.h 2023-07-03 06:42:00.000000000 +0100
++++ donate0.h 2023-07-19 13:30:36.907129259 +0100
+@@ -37,8 +37,8 @@
+ * If you plan on changing donations to 0%, please consider making a one-off donation to my wallet:
+ * XMR: 48edfHu7V9Z84YzzMa6fUueoELZ9ZRXq9VetWzYGzKt52XU5xvqgzYnDK9URnRoJMk1j8nLwEVsaSWJ4fhdUyZijBGUicoD
+ */
+-constexpr const int kDefaultDonateLevel = 1;
+-constexpr const int kMinimumDonateLevel = 1;
++constexpr const int kDefaultDonateLevel = 0;
++constexpr const int kMinimumDonateLevel = 0;
+
+
+ #endif // XMRIG_DONATE_H
diff --git a/network/xmrig/slack-desc b/network/xmrig/slack-desc
new file mode 100644
index 0000000000..3bd5fc5aa6
--- /dev/null
+++ b/network/xmrig/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------------------------------------------------------|
+xmrig: xmrig (unified CPU/GPU cryptocurrency miner)
+xmrig:
+xmrig: XMRig is a high performance, open source, cross platform RandomX,
+xmrig: KawPow, CryptoNight and GhostRider unified CPU/GPU miner and RandomX
+xmrig: benchmark. Official binaries are available for Windows, Linux, macOS
+xmrig: and FreeBSD.
+xmrig:
+xmrig: Homepage: https://xmrig.com/
+xmrig:
+xmrig:
+xmrig:
diff --git a/network/xmrig/xmrig.SlackBuild b/network/xmrig/xmrig.SlackBuild
new file mode 100644
index 0000000000..6f182923cd
--- /dev/null
+++ b/network/xmrig/xmrig.SlackBuild
@@ -0,0 +1,162 @@
+#!/bin/bash
+
+# Slackware build script for xmrig
+
+# Copyright 2023-2024 Bloyburt
+# 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=xmrig
+VERSION=${VERSION:-6.21.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}
+
+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 {} \;
+
+# Donations can be enabled/disabled here
+[ "${DONATE:-yes}" = no ] && patch src/donate.h < $CWD/donate.patch
+
+# Algorithms can be enabled/disabled here
+[ "${WITH_CN_LITE:-yes}" = no ] && WITH_CN_LITE='-DWITH_CN_LITE=OFF'
+[ "${WITH_CN_HEAVY:-yes}" = no ] && WITH_CN_HEAVY='-DWITH_CN_HEAVY=OFF'
+[ "${WITH_CN_PICO:-yes}" = no ] && WITH_CN_PICO='-DWITH_CN_PICO=OFF'
+[ "${WITH_CN_FEMTO:-yes}" = no ] && WITH_CN_FEMTO='-DWITH_CN_FEMTO=OFF'
+[ "${WITH_RANDOMX:-yes}" = no ] && WITH_RANDOMX='-DWITH_RANDOMX=OFF'
+[ "${WITH_ARGON2:-yes}" = no ] && WITH_ARGON2='-DWITH_ARGON2=OFF'
+[ "${WITH_KAPOW:-yes}" = no ] && WITH_KAPOW='-DWITH_KAPOW=OFF'
+[ "${WITH_GHOSTRIDER:-yes}" = no ] && WITH_GHOSTRIDER='-DWITH_GHOSTRIDER=OFF'
+
+# Features can be enabled/disabled here
+[ "${WITH_HWLOC:-yes}" = no ] && WITH_HWLOC='-DWITH_HWLOC=OFF'
+[ "${WITH_LIBCPUID:-yes}" = no ] && WITH_LIBCPUID='-DWITH_LIBCPUID=OFF'
+[ "${WITH_HTTP:-yes}" = no ] && WITH_HTTP='-DWITH_HTTP=OFF'
+[ "${WITH_TLS:-yes}" = no ] && WITH_TLS='-DWITH_TLS=OFF'
+[ "${WITH_ASM:-yes}" = no ] && WITH_ASM='-DWITH_ASM=OFF'
+[ "${WITH_EMBEDDED_CONFIG:-no}" = yes ] && WITH_EMBEDDED_CONFIG='-DWITH_EMBEDDED_CONFIG=ON'
+[ "${WITH_OPENCL:-yes}" = no ] && WITH_OPENCL='-DWITH_OPENCL=OFF'
+[ "${WITH_CUDA:-no}" = yes ] && WITH_CUDA='-DWITH_CUDA=ON'
+[ "${WITH_NVML:-no}" = yes ] && WITH_NVML='-DWITH_NVML=ON'
+[ "${WITH_MSR:-yes}" = no ] && WITH_MSR='-DWITH_MSR=OFF'
+[ "${WITH_ADL:-yes}" = no ] && WITH_ADL='-DWITH_ADL=OFF'
+[ "${WITH_PROFILING:-no}" = yes ] && WITH_PROFILING='-DWITH_PROFILING=ON'
+[ "${WITH_SSE4_1:-yes}" = no ] && WITH_SSE4_1='-DWITH_SSE4_1=OFF'
+[ "${WITH_BENCHMARK:-yes}" = no ] && WITH_BENCHMARK='-DWITH_BENCHMARK=OFF'
+[ "${WITH_SECURE_JIT:-no}" = yes ] && WITH_SECURE_JIT='-DWITH_SECURE_JIT=ON'
+[ "${WITH_DMI:-yes}" = no ] && WITH_DMI='-DWITH_DMI=OFF'
+
+mkdir -p build
+cd build
+ cmake \
+ -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
+ $WITH_CN_LITE \
+ $WITH_CN_HEAVY \
+ $WITH_CN_PICO \
+ $WITH_CN_FEMTO \
+ $WITH_RANDOMX \
+ $WITH_ARGON2 \
+ $WITH_KAPOW \
+ $WITH_GHOSTRIDER \
+ $WITH_HWLOC \
+ $WITH_LIBCPUID \
+ $WITH_HTTP \
+ $WITH_TLS \
+ $WITH_ASM \
+ $WITH_EMBEDDED_CONFIG \
+ $WITH_OPENCL \
+ $WITH_CUDA \
+ $WITH_NVML \
+ $WITH_MSR \
+ $WITH_ADL \
+ $WITH_PROFILING \
+ $WITH_SSE4_1 \
+ $WITH_BENCHMARK \
+ $WITH_SECURE_JIT \
+ $WITH_DMI \
+ -DCMAKE_BUILD_TYPE=Release ..
+ make
+cd ..
+
+mkdir -p $PKG/usr/bin
+cp -a build/$PRGNAM $PKG/usr/bin/$PRGNAM
+
+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
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a doc *.md LICENSE $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/xmrig/xmrig.info b/network/xmrig/xmrig.info
new file mode 100644
index 0000000000..e2ea65a269
--- /dev/null
+++ b/network/xmrig/xmrig.info
@@ -0,0 +1,10 @@
+PRGNAM="xmrig"
+VERSION="6.21.1"
+HOMEPAGE="https://xmrig.com/"
+DOWNLOAD="https://github.com/xmrig/xmrig/archive/v6.21.1/xmrig-6.21.1.tar.gz"
+MD5SUM="072d9a86308243368a89c43c2e5d7ed4"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="%README% hwloc"
+MAINTAINER="Bloyburt"
+EMAIL="alexpen@startmail.com"
diff --git a/network/yle-dl/README b/network/yle-dl/README
index 170d0a6712..22d3ad5ec1 100644
--- a/network/yle-dl/README
+++ b/network/yle-dl/README
@@ -1,2 +1,8 @@
yle-dl is a tool for downloading media files from the video streaming
services of the Finnish national broadcasting company Yle.
+
+xattr is an optional dependency. It adds support for writing metadata
+to extended attributes of video files.
+
+python3-psutil is an optional dependency. It adds support for detecting
+if the destination filesystem requires a restricted character set.
diff --git a/network/yle-dl/yle-dl.SlackBuild b/network/yle-dl/yle-dl.SlackBuild
index 8cace37a7f..3fd8edb8af 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:-20220830}
+VERSION=${VERSION:-20240130}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -50,20 +50,6 @@ 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
@@ -88,7 +74,7 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
- ChangeLog COPYING README.fi README.md \
+ ChangeLog COPYING README.fi.md README.md README.sv.md \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
diff --git a/network/yle-dl/yle-dl.info b/network/yle-dl/yle-dl.info
index 76738a028b..a8a5fb60e2 100644
--- a/network/yle-dl/yle-dl.info
+++ b/network/yle-dl/yle-dl.info
@@ -1,10 +1,10 @@
PRGNAM="yle-dl"
-VERSION="20220830"
+VERSION="20240130"
HOMEPAGE="https://aajanki.github.io/yle-dl/"
-DOWNLOAD="https://github.com/aajanki/yle-dl/archive/20220830/yle-dl-20220830.tar.gz"
-MD5SUM="f006aae173c80ebd885e48fb998aeed0"
+DOWNLOAD="https://github.com/aajanki/yle-dl/archive/20240130/yle-dl-20240130.tar.gz"
+MD5SUM="4ea36e5fab2dd1b255e39d7a7bff3dcd"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES="lxml python3-attrs python3-build python3-configargparse python3-flit_core"
+REQUIRES="python3-lxml python3-configargparse"
MAINTAINER="Markus Rinne"
EMAIL="markus.ka.rinne@gmail.com"
diff --git a/network/yoda/README b/network/yoda/README
deleted file mode 100644
index 1db7e41eb6..0000000000
--- a/network/yoda/README
+++ /dev/null
@@ -1 +0,0 @@
-Multiple repositories management.
diff --git a/network/yoda/doinst.sh b/network/yoda/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/yoda/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/yoda/yoda.info b/network/yoda/yoda.info
deleted file mode 100644
index 0cd5838d6d..0000000000
--- a/network/yoda/yoda.info
+++ /dev/null
@@ -1,10 +0,0 @@
-PRGNAM="yoda"
-VERSION="0.1.5"
-HOMEPAGE="https://github.com/Numergy/yoda"
-DOWNLOAD="https://pypi.python.org/packages/source/y/yoda/yoda-0.1.5.tar.gz"
-MD5SUM="061e633a900c5f6557e8ce13f71e0f71"
-DOWNLOAD_x86_64=""
-MD5SUM_x86_64=""
-REQUIRES="python2-PyYAML PyColorizer PrettyTable argcomplete"
-MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
diff --git a/network/youtube-dl-gui/doinst.sh b/network/youtube-dl-gui/doinst.sh
index 5fb28930db..65c7e2eeb9 100644
--- a/network/youtube-dl-gui/doinst.sh
+++ b/network/youtube-dl-gui/doinst.sh
@@ -1,3 +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/youtube-dl-gui/youtube-dl-gui.SlackBuild b/network/youtube-dl-gui/youtube-dl-gui.SlackBuild
index 71d695cada..da5d45fc67 100644
--- a/network/youtube-dl-gui/youtube-dl-gui.SlackBuild
+++ b/network/youtube-dl-gui/youtube-dl-gui.SlackBuild
@@ -22,11 +22,14 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+# 20240331 bkw: Modified by SlackBuilds.org, BUILD=2:
+# - add gtk-update-icon-cache to doinst.sh.
+
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=youtube-dl-gui
VERSION=${VERSION:-0.3.8}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +41,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
diff --git a/network/youtube-dl-gui/youtube-dl-gui.info b/network/youtube-dl-gui/youtube-dl-gui.info
index f1077c0794..2e5c85d627 100644
--- a/network/youtube-dl-gui/youtube-dl-gui.info
+++ b/network/youtube-dl-gui/youtube-dl-gui.info
@@ -1,7 +1,7 @@
PRGNAM="youtube-dl-gui"
VERSION="0.3.8"
HOMEPAGE="https://github.com/MrS0m30n3/youtube-dl-gui"
-DOWNLOAD="https://github.com/MrS0m30n3/youtube-dl-gui/archive/0.3.8.tar.gz"
+DOWNLOAD="https://github.com/MrS0m30n3/youtube-dl-gui/archive/0.3.8/youtube-dl-gui-0.3.8.tar.gz"
MD5SUM="ddd774b5a0b0abb8f21b5bba2a80139f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/youtube-dl/doinst.sh b/network/youtube-dl/doinst.sh
deleted file mode 100644
index 5fb28930db..0000000000
--- a/network/youtube-dl/doinst.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-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/youtube-dl/setup.patch b/network/youtube-dl/setup.patch
index 57f4fc5031..8efe6fe530 100644
--- a/network/youtube-dl/setup.patch
+++ b/network/youtube-dl/setup.patch
@@ -1,5 +1,5 @@
---- youtube-dl-2021.04.26/setup.py.orig 2021-05-02 08:56:35.007072725 +0200
-+++ youtube-dl-2021.04.26/setup.py 2021-05-02 08:56:54.365073186 +0200
+--- youtube-dl-2021.12.17+20230618_07af47960/setup.py.orig 2023-06-20 20:26:26.955075970 +0300
++++ youtube-dl-2021.12.17+20230618_07af47960/setup.py 2023-06-20 20:40:25.308003694 +0300
@@ -59,10 +59,10 @@
params = py2exe_params
else:
diff --git a/network/youtube-dl/slack-desc b/network/youtube-dl/slack-desc
index 96f5c77fe3..29efeb4334 100644
--- a/network/youtube-dl/slack-desc
+++ b/network/youtube-dl/slack-desc
@@ -9,9 +9,9 @@
youtube-dl: youtube-dl (YouTube video download utility)
youtube-dl:
youtube-dl: youtube-dl is a small command-line program to download videos
-youtube-dl: from YouTube.com. It's licensed under the MIT License.
+youtube-dl: from YouTube.com and a few more sites.
youtube-dl:
-youtube-dl: Homepage: http://www.yt-dl.org/
+youtube-dl: Homepage: https://github.com/ytdl-org/youtube-dl
youtube-dl:
youtube-dl:
youtube-dl:
diff --git a/network/youtube-dl/youtube-dl.1 b/network/youtube-dl/youtube-dl.1
new file mode 100644
index 0000000000..9161f3b727
--- /dev/null
+++ b/network/youtube-dl/youtube-dl.1
@@ -0,0 +1,2522 @@
+.\" Automatically generated by Pandoc 3.1.3
+.\"
+.\" Define V font for inline verbatim, using C font in formats
+.\" that render this, and otherwise B font.
+.ie "\f[CB]x\f[]"x" \{\
+. ftr V B
+. ftr VI BI
+. ftr VB B
+. ftr VBI BI
+.\}
+.el \{\
+. ftr V CR
+. ftr VI CI
+. ftr VB CB
+. ftr VBI CBI
+.\}
+.TH "YOUTUBE-DL" "1" "" "" ""
+.hy
+.SH NAME
+.PP
+youtube-dl - download videos from youtube.com or other video platforms
+.SH SYNOPSIS
+.PP
+\f[B]youtube-dl\f[R] [OPTIONS] URL [URL\&...]
+.SH DESCRIPTION
+.PP
+\f[B]youtube-dl\f[R] is a command-line program to download videos from
+YouTube.com and a few more sites.
+It requires the Python interpreter, version 2.6, 2.7, or 3.2+, and it is
+not platform specific.
+It should work on your Unix box, on Windows or on macOS.
+It is released to the public domain, which means you can modify it,
+redistribute it or use it however you like.
+.SH OPTIONS
+.TP
+-h, \[en]help
+Print this help text and exit
+.TP
+\[en]version
+Print program version and exit
+.TP
+-U, \[en]update
+Update this program to latest version.
+Make sure that you have sufficient permissions (run with sudo if needed)
+.TP
+-i, \[en]ignore-errors
+Continue on download errors, for example to skip unavailable videos in a
+playlist
+.TP
+\[en]abort-on-error
+Abort downloading of further videos (in the playlist or the command
+line) if an error occurs
+.TP
+\[en]dump-user-agent
+Display the current browser identification
+.TP
+\[en]list-extractors
+List all supported extractors
+.TP
+\[en]extractor-descriptions
+Output descriptions of all supported extractors
+.TP
+\[en]force-generic-extractor
+Force extraction to use the generic extractor
+.TP
+\[en]default-search \f[I]PREFIX\f[R]
+Use this prefix for unqualified URLs.
+For example \[lq]gvsearch2:\[rq] downloads two videos from google videos
+for youtube- dl \[lq]large apple\[rq].
+Use the value \[lq]auto\[rq] to let youtube-dl guess
+(\[lq]auto_warning\[rq] to emit a warning when guessing).
+\[lq]error\[rq] just throws an error.
+The default value \[lq]fixup_error\[rq] repairs broken URLs, but emits
+an error if this is not possible instead of searching.
+.TP
+\[en]ignore-config
+Do not read configuration files.
+When given in the global configuration file /etc/youtube-dl.conf: Do not
+read the user configuration in \[ti]/.config/youtube-dl/config
+(%APPDATA%/youtube-dl/config.txt on Windows)
+.TP
+\[en]config-location \f[I]PATH\f[R]
+Location of the configuration file; either the path to the config or its
+containing directory.
+.TP
+\[en]flat-playlist
+Do not extract the videos of a playlist, only list them.
+.TP
+\[en]mark-watched
+Mark videos watched (YouTube only)
+.TP
+\[en]no-mark-watched
+Do not mark videos watched (YouTube only)
+.TP
+\[en]no-color
+Do not emit color codes in output
+.SS Network Options:
+.TP
+\[en]proxy \f[I]URL\f[R]
+Use the specified HTTP/HTTPS/SOCKS proxy.
+To enable SOCKS proxy, specify a proper scheme.
+For example socks5://127.0.0.1:1080/.
+Pass in an empty string (\[en]proxy \[lq]\[lq]) for direct connection
+.TP
+\[en]socket-timeout \f[I]SECONDS\f[R]
+Time to wait before giving up, in seconds
+.TP
+\[en]source-address \f[I]IP\f[R]
+Client-side IP address to bind to
+.TP
+-4, \[en]force-ipv4
+Make all connections via IPv4
+.TP
+-6, \[en]force-ipv6
+Make all connections via IPv6
+.SS Geo Restriction:
+.TP
+\[en]geo-verification-proxy \f[I]URL\f[R]
+Use this proxy to verify the IP address for some geo-restricted sites.
+The default proxy specified by \[en]proxy (or none, if the option is not
+present) is used for the actual downloading.
+.TP
+\[en]geo-bypass
+Bypass geographic restriction via faking X-Forwarded-For HTTP header
+.TP
+\[en]no-geo-bypass
+Do not bypass geographic restriction via faking X-Forwarded-For HTTP
+header
+.TP
+\[en]geo-bypass-country \f[I]CODE\f[R]
+Force bypass geographic restriction with explicitly provided two-letter
+ISO 3166-2 country code
+.TP
+\[en]geo-bypass-ip-block \f[I]IP_BLOCK\f[R]
+Force bypass geographic restriction with explicitly provided IP block in
+CIDR notation
+.SS Video Selection:
+.TP
+\[en]playlist-start \f[I]NUMBER\f[R]
+Playlist video to start at (default is 1)
+.TP
+\[en]playlist-end \f[I]NUMBER\f[R]
+Playlist video to end at (default is last)
+.TP
+\[en]playlist-items \f[I]ITEM_SPEC\f[R]
+Playlist video items to download.
+Specify indices of the videos in the playlist separated by commas like:
+\[lq]\[en] playlist-items 1,2,5,8\[rq] if you want to download videos
+indexed 1, 2, 5, 8 in the playlist.
+You can specify range: \[rq] \[en]playlist-items 1-3,7,10-13\[rq], it
+will download the videos at index 1, 2, 3, 7, 10, 11, 12 and 13.
+.TP
+\[en]match-title \f[I]REGEX\f[R]
+Download only matching titles (regex or caseless sub-string)
+.TP
+\[en]reject-title \f[I]REGEX\f[R]
+Skip download for matching titles (regex or caseless sub-string)
+.TP
+\[en]max-downloads \f[I]NUMBER\f[R]
+Abort after downloading NUMBER files
+.TP
+\[en]min-filesize \f[I]SIZE\f[R]
+Do not download any videos smaller than SIZE (e.g.\ 50k or 44.6m)
+.TP
+\[en]max-filesize \f[I]SIZE\f[R]
+Do not download any videos larger than SIZE (e.g.\ 50k or 44.6m)
+.TP
+\[en]date \f[I]DATE\f[R]
+Download only videos uploaded in this date
+.TP
+\[en]datebefore \f[I]DATE\f[R]
+Download only videos uploaded on or before this date (i.e.\ inclusive)
+.TP
+\[en]dateafter \f[I]DATE\f[R]
+Download only videos uploaded on or after this date (i.e.\ inclusive)
+.TP
+\[en]min-views \f[I]COUNT\f[R]
+Do not download any videos with less than COUNT views
+.TP
+\[en]max-views \f[I]COUNT\f[R]
+Do not download any videos with more than COUNT views
+.TP
+\[en]match-filter \f[I]FILTER\f[R]
+Generic video filter.
+Specify any key (see the \[lq]OUTPUT TEMPLATE\[rq] for a list of
+available keys) to match if the key is present, !key to check if the key
+is not present, key > NUMBER (like \[lq]comment_count > 12\[rq], also
+works with >=, <, <=, !=, =) to compare against a number, key =
+`LITERAL' (like \[lq]uploader = `Mike Smith'\[rq], also works with !=)
+to match against a string literal and & to require multiple matches.
+Values which are not known are excluded unless you put a question mark
+(?)
+after the operator.
+For example, to only match videos that have been liked more than 100
+times and disliked less than 50 times (or the dislike functionality is
+not available at the given service), but who also have a description,
+use \[en]match-filter \[lq]like_count > 100 & dislike_count <?
+50 & description\[rq] .
+.TP
+\[en]no-playlist
+Download only the video, if the URL refers to a video and a playlist.
+.TP
+\[en]yes-playlist
+Download the playlist, if the URL refers to a video and a playlist.
+.TP
+\[en]age-limit \f[I]YEARS\f[R]
+Download only videos suitable for the given age
+.TP
+\[en]download-archive \f[I]FILE\f[R]
+Download only videos not listed in the archive file.
+Record the IDs of all downloaded videos in it.
+.TP
+\[en]include-ads
+Download advertisements as well (experimental)
+.SS Download Options:
+.TP
+-r, \[en]limit-rate \f[I]RATE\f[R]
+Maximum download rate in bytes per second (e.g.\ 50K or 4.2M)
+.TP
+-R, \[en]retries \f[I]RETRIES\f[R]
+Number of retries (default is 10), or \[lq]infinite\[rq].
+.TP
+\[en]fragment-retries \f[I]RETRIES\f[R]
+Number of retries for a fragment (default is 10), or \[lq]infinite\[rq]
+(DASH, hlsnative and ISM)
+.TP
+\[en]skip-unavailable-fragments
+Skip unavailable fragments (DASH, hlsnative and ISM)
+.TP
+\[en]abort-on-unavailable-fragment
+Abort downloading when some fragment is not available
+.TP
+\[en]keep-fragments
+Keep downloaded fragments on disk after downloading is finished;
+fragments are erased by default
+.TP
+\[en]buffer-size \f[I]SIZE\f[R]
+Size of download buffer (e.g.\ 1024 or 16K) (default is 1024)
+.TP
+\[en]no-resize-buffer
+Do not automatically adjust the buffer size.
+By default, the buffer size is automatically resized from an initial
+value of SIZE.
+.TP
+\[en]http-chunk-size \f[I]SIZE\f[R]
+Size of a chunk for chunk-based HTTP downloading (e.g.\ 10485760 or 10M)
+(default is disabled).
+May be useful for bypassing bandwidth throttling imposed by a webserver
+(experimental)
+.TP
+\[en]playlist-reverse
+Download playlist videos in reverse order
+.TP
+\[en]playlist-random
+Download playlist videos in random order
+.TP
+\[en]xattr-set-filesize
+Set file xattribute ytdl.filesize with expected file size
+.TP
+\[en]hls-prefer-native
+Use the native HLS downloader instead of ffmpeg
+.TP
+\[en]hls-prefer-ffmpeg
+Use ffmpeg instead of the native HLS downloader
+.TP
+\[en]hls-use-mpegts
+Use the mpegts container for HLS videos, allowing to play the video
+while downloading (some players may not be able to play it)
+.TP
+\[en]external-downloader \f[I]COMMAND\f[R]
+Use the specified external downloader.
+Currently supports aria2c,avconv,axel,c url,ffmpeg,httpie,wget
+.TP
+\[en]external-downloader-args \f[I]ARGS\f[R]
+Give these arguments to the external downloader
+.SS Filesystem Options:
+.TP
+-a, \[en]batch-file \f[I]FILE\f[R]
+File containing URLs to download (`-' for stdin), one URL per line.
+Lines starting with `#', `;' or `]' are considered as comments and
+ignored.
+.TP
+\[en]id
+Use only video ID in file name
+.TP
+-o, \[en]output \f[I]TEMPLATE\f[R]
+Output filename template, see the \[lq]OUTPUT TEMPLATE\[rq] for all the
+info
+.TP
+\[en]output-na-placeholder \f[I]PLACEHOLDER\f[R]
+Placeholder value for unavailable meta fields in output filename
+template (default is \[lq]NA\[rq])
+.TP
+\[en]autonumber-start \f[I]NUMBER\f[R]
+Specify the start value for %(autonumber)s (default is 1)
+.TP
+\[en]restrict-filenames
+Restrict filenames to only ASCII characters, and avoid \[lq]&\[rq] and
+spaces in filenames
+.TP
+-w, \[en]no-overwrites
+Do not overwrite files
+.TP
+-c, \[en]continue
+Force resume of partially downloaded files.
+By default, youtube-dl will resume downloads if possible.
+.TP
+\[en]no-continue
+Do not resume partially downloaded files (restart from beginning)
+.TP
+\[en]no-part
+Do not use .part files - write directly into output file
+.TP
+\[en]no-mtime
+Do not use the Last-modified header to set the file modification time
+.TP
+\[en]write-description
+Write video description to a .description file
+.TP
+\[en]write-info-json
+Write video metadata to a .info.json file
+.TP
+\[en]write-annotations
+Write video annotations to a .annotations.xml file
+.TP
+\[en]load-info-json \f[I]FILE\f[R]
+JSON file containing the video information (created with the
+\[lq]\[en]write- info-json\[rq] option)
+.TP
+\[en]cookies \f[I]FILE\f[R]
+File to read cookies from and dump cookie jar in
+.TP
+\[en]cache-dir \f[I]DIR\f[R]
+Location in the filesystem where youtube-dl can store some downloaded
+information permanently.
+By default $XDG_CACHE_HOME/youtube-dl or \[ti]/.cache/youtube-dl .
+At the moment, only YouTube player files (for videos with obfuscated
+signatures) are cached, but that may change.
+.TP
+\[en]no-cache-dir
+Disable filesystem caching
+.TP
+\[en]rm-cache-dir
+Delete all filesystem cache files
+.SS Thumbnail Options:
+.TP
+\[en]write-thumbnail
+Write thumbnail image to disk
+.TP
+\[en]write-all-thumbnails
+Write all thumbnail image formats to disk
+.TP
+\[en]list-thumbnails
+Simulate and list all available thumbnail formats
+.SS Verbosity / Simulation Options:
+.TP
+-q, \[en]quiet
+Activate quiet mode
+.TP
+\[en]no-warnings
+Ignore warnings
+.TP
+-s, \[en]simulate
+Do not download the video and do not write anything to disk
+.TP
+\[en]skip-download
+Do not download the video
+.TP
+-g, \[en]get-url
+Simulate, quiet but print URL
+.TP
+-e, \[en]get-title
+Simulate, quiet but print title
+.TP
+\[en]get-id
+Simulate, quiet but print id
+.TP
+\[en]get-thumbnail
+Simulate, quiet but print thumbnail URL
+.TP
+\[en]get-description
+Simulate, quiet but print video description
+.TP
+\[en]get-duration
+Simulate, quiet but print video length
+.TP
+\[en]get-filename
+Simulate, quiet but print output filename
+.TP
+\[en]get-format
+Simulate, quiet but print output format
+.TP
+-j, \[en]dump-json
+Simulate, quiet but print JSON information.
+See the \[lq]OUTPUT TEMPLATE\[rq] for a description of available keys.
+.TP
+-J, \[en]dump-single-json
+Simulate, quiet but print JSON information for each command-line
+argument.
+If the URL refers to a playlist, dump the whole playlist information in
+a single line.
+.TP
+\[en]print-json
+Be quiet and print the video information as JSON (video is still being
+downloaded).
+.TP
+\[en]newline
+Output progress bar as new lines
+.TP
+\[en]no-progress
+Do not print progress bar
+.TP
+\[en]console-title
+Display progress in console titlebar
+.TP
+-v, \[en]verbose
+Print various debugging information
+.TP
+\[en]dump-pages
+Print downloaded pages encoded using base64 to debug problems (very
+verbose)
+.TP
+\[en]write-pages
+Write downloaded intermediary pages to files in the current directory to
+debug problems
+.TP
+\[en]print-traffic
+Display sent and read HTTP traffic
+.TP
+-C, \[en]call-home
+Contact the youtube-dl server for debugging
+.TP
+\[en]no-call-home
+Do NOT contact the youtube-dl server for debugging
+.SS Workarounds:
+.TP
+\[en]encoding \f[I]ENCODING\f[R]
+Force the specified encoding (experimental)
+.TP
+\[en]no-check-certificate
+Suppress HTTPS certificate validation
+.TP
+\[en]prefer-insecure
+Use an unencrypted connection to retrieve information about the video.
+(Currently supported only for YouTube)
+.TP
+\[en]user-agent \f[I]UA\f[R]
+Specify a custom user agent
+.TP
+\[en]referer \f[I]URL\f[R]
+Specify a custom referer, use if the video access is restricted to one
+domain
+.TP
+\[en]add-header \f[I]FIELD:VALUE\f[R]
+Specify a custom HTTP header and its value, separated by a colon `:'.
+You can use this option multiple times
+.TP
+\[en]bidi-workaround
+Work around terminals that lack bidirectional text support.
+Requires bidiv or fribidi executable in PATH
+.TP
+\[en]sleep-interval \f[I]SECONDS\f[R]
+Number of seconds to sleep before each download when used alone or a
+lower bound of a range for randomized sleep before each download
+(minimum possible number of seconds to sleep) when used along with
+\[en]max-sleep-interval.
+.TP
+\[en]max-sleep-interval \f[I]SECONDS\f[R]
+Upper bound of a range for randomized sleep before each download
+(maximum possible number of seconds to sleep).
+Must only be used along with \[en]min- sleep-interval.
+.SS Video Format Options:
+.TP
+-f, \[en]format \f[I]FORMAT\f[R]
+Video format code, see the \[lq]FORMAT SELECTION\[rq] for all the info
+.TP
+\[en]all-formats
+Download all available video formats
+.TP
+\[en]prefer-free-formats
+Prefer free video formats unless a specific one is requested
+.TP
+-F, \[en]list-formats
+List all available formats of requested videos
+.TP
+\[en]youtube-skip-dash-manifest
+Do not download the DASH manifests and related data on YouTube videos
+.TP
+\[en]merge-output-format \f[I]FORMAT\f[R]
+If a merge is required (e.g.
+bestvideo+bestaudio), output to given container format.
+One of mkv, mp4, ogg, webm, flv.
+Ignored if no merge is required
+.SS Subtitle Options:
+.TP
+\[en]write-sub
+Write subtitle file
+.TP
+\[en]write-auto-sub
+Write automatically generated subtitle file (YouTube only)
+.TP
+\[en]all-subs
+Download all the available subtitles of the video
+.TP
+\[en]list-subs
+List all available subtitles for the video
+.TP
+\[en]sub-format \f[I]FORMAT\f[R]
+Subtitle format, accepts formats preference, for example: \[lq]srt\[rq]
+or \[lq]ass/srt/best\[rq]
+.TP
+\[en]sub-lang \f[I]LANGS\f[R]
+Languages of the subtitles to download (optional) separated by commas,
+use \[en]list-subs for available language tags
+.SS Authentication Options:
+.TP
+-u, \[en]username \f[I]USERNAME\f[R]
+Login with this account ID
+.TP
+-p, \[en]password \f[I]PASSWORD\f[R]
+Account password.
+If this option is left out, youtube-dl will ask interactively.
+.TP
+-2, \[en]twofactor \f[I]TWOFACTOR\f[R]
+Two-factor authentication code
+.TP
+-n, \[en]netrc
+Use .netrc authentication data
+.TP
+\[en]video-password \f[I]PASSWORD\f[R]
+Video password (vimeo, youku)
+.SS Adobe Pass Options:
+.TP
+\[en]ap-mso \f[I]MSO\f[R]
+Adobe Pass multiple-system operator (TV provider) identifier, use
+\[en]ap-list-mso for a list of available MSOs
+.TP
+\[en]ap-username \f[I]USERNAME\f[R]
+Multiple-system operator account login
+.TP
+\[en]ap-password \f[I]PASSWORD\f[R]
+Multiple-system operator account password.
+If this option is left out, youtube-dl will ask interactively.
+.TP
+\[en]ap-list-mso
+List all supported multiple-system operators
+.SS Post-processing Options:
+.TP
+-x, \[en]extract-audio
+Convert video files to audio-only files (requires ffmpeg/avconv and
+ffprobe/avprobe)
+.TP
+\[en]audio-format \f[I]FORMAT\f[R]
+Specify audio format: \[lq]best\[rq], \[lq]aac\[rq], \[lq]flac\[rq],
+\[lq]mp3\[rq], \[lq]m4a\[rq], \[lq]opus\[rq], \[lq]vorbis\[rq], or
+\[lq]wav\[rq]; \[lq]best\[rq] by default; No effect without -x
+.TP
+\[en]audio-quality \f[I]QUALITY\f[R]
+Specify ffmpeg/avconv audio quality, insert a value between 0 (better)
+and 9 (worse) for VBR or a specific bitrate like 128K (default 5)
+.TP
+\[en]recode-video \f[I]FORMAT\f[R]
+Encode the video to another format if necessary (currently supported:
+mp4|flv|ogg|webm|mkv|avi)
+.TP
+\[en]postprocessor-args \f[I]ARGS\f[R]
+Give these arguments to the postprocessor
+.TP
+-k, \[en]keep-video
+Keep the video file on disk after the post-processing; the video is
+erased by default
+.TP
+\[en]no-post-overwrites
+Do not overwrite post-processed files; the post-processed files are
+overwritten by default
+.TP
+\[en]embed-subs
+Embed subtitles in the video (only for mp4, webm and mkv videos)
+.TP
+\[en]embed-thumbnail
+Embed thumbnail in the audio as cover art
+.TP
+\[en]add-metadata
+Write metadata to the video file
+.TP
+\[en]metadata-from-title \f[I]FORMAT\f[R]
+Parse additional metadata like song title / artist from the video title.
+The format syntax is the same as \[en]output.
+Regular expression with named capture groups may also be used.
+The parsed parameters replace existing values.
+Example: \[en]metadata-from-title \[lq]%(artist)s - %(title)s\[rq]
+matches a title like \[lq]Coldplay - Paradise\[rq].
+Example (regex): \[en]metadata-from-title \[lq](?P.+?)
+- (?P
+.RS
+\&.+)\[rq]
+.RE
+.TP
+\[en]xattrs
+Write metadata to the video file\[cq]s xattrs (using dublin core and xdg
+standards)
+.TP
+\[en]fixup \f[I]POLICY\f[R]
+Automatically correct known faults of the file.
+One of never (do nothing), warn (only emit a warning), detect_or_warn
+(the default; fix file if we can, warn otherwise)
+.TP
+\[en]prefer-avconv
+Prefer avconv over ffmpeg for running the postprocessors
+.TP
+\[en]prefer-ffmpeg
+Prefer ffmpeg over avconv for running the postprocessors (default)
+.TP
+\[en]ffmpeg-location \f[I]PATH\f[R]
+Location of the ffmpeg/avconv binary; either the path to the binary or
+its containing directory.
+.TP
+\[en]exec \f[I]CMD\f[R]
+Execute a command on the file after downloading and post-processing,
+similar to find\[cq]s -exec syntax.
+Example: \[en]exec `adb push {} /sdcard/Music/ && rm {}'
+.TP
+\[en]convert-subs \f[I]FORMAT\f[R]
+Convert the subtitles to other format (currently supported:
+srt|ass|vtt|lrc)
+.SH CONFIGURATION
+.PP
+You can configure youtube-dl by placing any supported command line
+option to a configuration file.
+On Linux and macOS, the system wide configuration file is located at
+\f[V]/etc/youtube-dl.conf\f[R] and the user wide configuration file at
+\f[V]\[ti]/.config/youtube-dl/config\f[R].
+On Windows, the user wide configuration file locations are
+\f[V]%APPDATA%\[rs]youtube-dl\[rs]config.txt\f[R] or
+\f[V]C:\[rs]Users\[rs]<user name>\[rs]youtube-dl.conf\f[R].
+Note that by default configuration file may not exist so you may need to
+create it yourself.
+.PP
+For example, with the following configuration file youtube-dl will
+always extract the audio, not copy the mtime, use a proxy and save all
+videos under \f[V]Movies\f[R] directory in your home directory:
+.IP
+.nf
+\f[C]
+# Lines starting with # are comments
+
+# Always extract audio
+-x
+
+# Do not copy the mtime
+--no-mtime
+
+# Use this proxy
+--proxy 127.0.0.1:3128
+
+# Save all videos under Movies directory in your home directory
+-o \[ti]/Movies/%(title)s.%(ext)s
+\f[R]
+.fi
+.PP
+Note that options in configuration file are just the same options aka
+switches used in regular command line calls thus there \f[B]must be no
+whitespace\f[R] after \f[V]-\f[R] or \f[V]--\f[R], e.g.\ \f[V]-o\f[R] or
+\f[V]--proxy\f[R] but not \f[V]- o\f[R] or \f[V]-- proxy\f[R].
+.PP
+You can use \f[V]--ignore-config\f[R] if you want to disable the
+configuration file for a particular youtube-dl run.
+.PP
+You can also use \f[V]--config-location\f[R] if you want to use custom
+configuration file for a particular youtube-dl run.
+.SS Authentication with \f[V].netrc\f[R] file
+.PP
+You may also want to configure automatic credentials storage for
+extractors that support authentication (by providing login and password
+with \f[V]--username\f[R] and \f[V]--password\f[R]) in order not to pass
+credentials as command line arguments on every youtube-dl execution and
+prevent tracking plain text passwords in the shell command history.
+You can achieve this using a \f[V].netrc\f[R]
+file (https://stackoverflow.com/tags/.netrc/info) on a per extractor
+basis.
+For that you will need to create a \f[V].netrc\f[R] file in your
+\f[V]$HOME\f[R] and restrict permissions to read/write by only you:
+.IP
+.nf
+\f[C]
+touch $HOME/.netrc
+chmod a-rwx,u+rw $HOME/.netrc
+\f[R]
+.fi
+.PP
+After that you can add credentials for an extractor in the following
+format, where \f[I]extractor\f[R] is the name of the extractor in
+lowercase:
+.IP
+.nf
+\f[C]
+machine <extractor> login <login> password <password>
+\f[R]
+.fi
+.PP
+For example:
+.IP
+.nf
+\f[C]
+machine youtube login myaccount\[at]gmail.com password my_youtube_password
+machine twitch login my_twitch_account_name password my_twitch_password
+\f[R]
+.fi
+.PP
+To activate authentication with the \f[V].netrc\f[R] file you should
+pass \f[V]--netrc\f[R] to youtube-dl or place it in the configuration
+file.
+.PP
+On Windows you may also need to setup the \f[V]%HOME%\f[R] environment
+variable manually.
+For example:
+.IP
+.nf
+\f[C]
+set HOME=%USERPROFILE%
+\f[R]
+.fi
+.SH OUTPUT TEMPLATE
+.PP
+The \f[V]-o\f[R] option allows users to indicate a template for the
+output file names.
+.PP
+\f[B]tl;dr:\f[R] navigate me to examples.
+.PP
+The basic usage is not to set any template arguments when downloading a
+single file, like in
+\f[V]youtube-dl -o funny_video.flv \[dq]https://some/video\[dq]\f[R].
+However, it may contain special sequences that will be replaced when
+downloading each video.
+The special sequences may be formatted according to python string
+formatting
+operations (https://docs.python.org/2/library/stdtypes.html#string-formatting).
+For example, \f[V]%(NAME)s\f[R] or \f[V]%(NAME)05d\f[R].
+To clarify, that is a percent symbol followed by a name in parentheses,
+followed by formatting operations.
+Allowed names along with sequence type are:
+.IP \[bu] 2
+\f[V]id\f[R] (string): Video identifier
+.IP \[bu] 2
+\f[V]title\f[R] (string): Video title
+.IP \[bu] 2
+\f[V]url\f[R] (string): Video URL
+.IP \[bu] 2
+\f[V]ext\f[R] (string): Video filename extension
+.IP \[bu] 2
+\f[V]alt_title\f[R] (string): A secondary title of the video
+.IP \[bu] 2
+\f[V]display_id\f[R] (string): An alternative identifier for the video
+.IP \[bu] 2
+\f[V]uploader\f[R] (string): Full name of the video uploader
+.IP \[bu] 2
+\f[V]license\f[R] (string): License name the video is licensed under
+.IP \[bu] 2
+\f[V]creator\f[R] (string): The creator of the video
+.IP \[bu] 2
+\f[V]release_date\f[R] (string): The date (YYYYMMDD) when the video was
+released
+.IP \[bu] 2
+\f[V]timestamp\f[R] (numeric): UNIX timestamp of the moment the video
+became available
+.IP \[bu] 2
+\f[V]upload_date\f[R] (string): Video upload date (YYYYMMDD)
+.IP \[bu] 2
+\f[V]uploader_id\f[R] (string): Nickname or id of the video uploader
+.IP \[bu] 2
+\f[V]channel\f[R] (string): Full name of the channel the video is
+uploaded on
+.IP \[bu] 2
+\f[V]channel_id\f[R] (string): Id of the channel
+.IP \[bu] 2
+\f[V]location\f[R] (string): Physical location where the video was
+filmed
+.IP \[bu] 2
+\f[V]duration\f[R] (numeric): Length of the video in seconds
+.IP \[bu] 2
+\f[V]view_count\f[R] (numeric): How many users have watched the video on
+the platform
+.IP \[bu] 2
+\f[V]like_count\f[R] (numeric): Number of positive ratings of the video
+.IP \[bu] 2
+\f[V]dislike_count\f[R] (numeric): Number of negative ratings of the
+video
+.IP \[bu] 2
+\f[V]repost_count\f[R] (numeric): Number of reposts of the video
+.IP \[bu] 2
+\f[V]average_rating\f[R] (numeric): Average rating give by users, the
+scale used depends on the webpage
+.IP \[bu] 2
+\f[V]comment_count\f[R] (numeric): Number of comments on the video
+.IP \[bu] 2
+\f[V]age_limit\f[R] (numeric): Age restriction for the video (years)
+.IP \[bu] 2
+\f[V]is_live\f[R] (boolean): Whether this video is a live stream or a
+fixed-length video
+.IP \[bu] 2
+\f[V]start_time\f[R] (numeric): Time in seconds where the reproduction
+should start, as specified in the URL
+.IP \[bu] 2
+\f[V]end_time\f[R] (numeric): Time in seconds where the reproduction
+should end, as specified in the URL
+.IP \[bu] 2
+\f[V]format\f[R] (string): A human-readable description of the format
+.IP \[bu] 2
+\f[V]format_id\f[R] (string): Format code specified by
+\f[V]--format\f[R]
+.IP \[bu] 2
+\f[V]format_note\f[R] (string): Additional info about the format
+.IP \[bu] 2
+\f[V]width\f[R] (numeric): Width of the video
+.IP \[bu] 2
+\f[V]height\f[R] (numeric): Height of the video
+.IP \[bu] 2
+\f[V]resolution\f[R] (string): Textual description of width and height
+.IP \[bu] 2
+\f[V]tbr\f[R] (numeric): Average bitrate of audio and video in KBit/s
+.IP \[bu] 2
+\f[V]abr\f[R] (numeric): Average audio bitrate in KBit/s
+.IP \[bu] 2
+\f[V]acodec\f[R] (string): Name of the audio codec in use
+.IP \[bu] 2
+\f[V]asr\f[R] (numeric): Audio sampling rate in Hertz
+.IP \[bu] 2
+\f[V]vbr\f[R] (numeric): Average video bitrate in KBit/s
+.IP \[bu] 2
+\f[V]fps\f[R] (numeric): Frame rate
+.IP \[bu] 2
+\f[V]vcodec\f[R] (string): Name of the video codec in use
+.IP \[bu] 2
+\f[V]container\f[R] (string): Name of the container format
+.IP \[bu] 2
+\f[V]filesize\f[R] (numeric): The number of bytes, if known in advance
+.IP \[bu] 2
+\f[V]filesize_approx\f[R] (numeric): An estimate for the number of bytes
+.IP \[bu] 2
+\f[V]protocol\f[R] (string): The protocol that will be used for the
+actual download
+.IP \[bu] 2
+\f[V]extractor\f[R] (string): Name of the extractor
+.IP \[bu] 2
+\f[V]extractor_key\f[R] (string): Key name of the extractor
+.IP \[bu] 2
+\f[V]epoch\f[R] (numeric): Unix epoch when creating the file
+.IP \[bu] 2
+\f[V]autonumber\f[R] (numeric): Number that will be increased with each
+download, starting at \f[V]--autonumber-start\f[R]
+.IP \[bu] 2
+\f[V]playlist\f[R] (string): Name or id of the playlist that contains
+the video
+.IP \[bu] 2
+\f[V]playlist_index\f[R] (numeric): Index of the video in the playlist
+padded with leading zeros according to the total length of the playlist
+.IP \[bu] 2
+\f[V]playlist_id\f[R] (string): Playlist identifier
+.IP \[bu] 2
+\f[V]playlist_title\f[R] (string): Playlist title
+.IP \[bu] 2
+\f[V]playlist_uploader\f[R] (string): Full name of the playlist uploader
+.IP \[bu] 2
+\f[V]playlist_uploader_id\f[R] (string): Nickname or id of the playlist
+uploader
+.PP
+Available for the video that belongs to some logical chapter or section:
+.IP \[bu] 2
+\f[V]chapter\f[R] (string): Name or title of the chapter the video
+belongs to
+.IP \[bu] 2
+\f[V]chapter_number\f[R] (numeric): Number of the chapter the video
+belongs to
+.IP \[bu] 2
+\f[V]chapter_id\f[R] (string): Id of the chapter the video belongs to
+.PP
+Available for the video that is an episode of some series or programme:
+.IP \[bu] 2
+\f[V]series\f[R] (string): Title of the series or programme the video
+episode belongs to
+.IP \[bu] 2
+\f[V]season\f[R] (string): Title of the season the video episode belongs
+to
+.IP \[bu] 2
+\f[V]season_number\f[R] (numeric): Number of the season the video
+episode belongs to
+.IP \[bu] 2
+\f[V]season_id\f[R] (string): Id of the season the video episode belongs
+to
+.IP \[bu] 2
+\f[V]episode\f[R] (string): Title of the video episode
+.IP \[bu] 2
+\f[V]episode_number\f[R] (numeric): Number of the video episode within a
+season
+.IP \[bu] 2
+\f[V]episode_id\f[R] (string): Id of the video episode
+.PP
+Available for the media that is a track or a part of a music album:
+.IP \[bu] 2
+\f[V]track\f[R] (string): Title of the track
+.IP \[bu] 2
+\f[V]track_number\f[R] (numeric): Number of the track within an album or
+a disc
+.IP \[bu] 2
+\f[V]track_id\f[R] (string): Id of the track
+.IP \[bu] 2
+\f[V]artist\f[R] (string): Artist(s) of the track
+.IP \[bu] 2
+\f[V]genre\f[R] (string): Genre(s) of the track
+.IP \[bu] 2
+\f[V]album\f[R] (string): Title of the album the track belongs to
+.IP \[bu] 2
+\f[V]album_type\f[R] (string): Type of the album
+.IP \[bu] 2
+\f[V]album_artist\f[R] (string): List of all artists appeared on the
+album
+.IP \[bu] 2
+\f[V]disc_number\f[R] (numeric): Number of the disc or other physical
+medium the track belongs to
+.IP \[bu] 2
+\f[V]release_year\f[R] (numeric): Year (YYYY) when the album was
+released
+.PP
+Each aforementioned sequence when referenced in an output template will
+be replaced by the actual value corresponding to the sequence name.
+Note that some of the sequences are not guaranteed to be present since
+they depend on the metadata obtained by a particular extractor.
+Such sequences will be replaced with placeholder value provided with
+\f[V]--output-na-placeholder\f[R] (\f[V]NA\f[R] by default).
+.PP
+For example for \f[V]-o %(title)s-%(id)s.%(ext)s\f[R] and an mp4 video
+with title \f[V]youtube-dl test video\f[R] and id
+\f[V]BaW_jenozKcj\f[R], this will result in a
+\f[V]youtube-dl test video-BaW_jenozKcj.mp4\f[R] file created in the
+current directory.
+.PP
+For numeric sequences you can use numeric related formatting, for
+example, \f[V]%(view_count)05d\f[R] will result in a string with view
+count padded with zeros up to 5 characters, like in \f[V]00042\f[R].
+.PP
+Output templates can also contain arbitrary hierarchical path,
+e.g.\ \f[V]-o \[aq]%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[aq]\f[R]
+which will result in downloading each video in a directory corresponding
+to this path template.
+Any missing directory will be automatically created for you.
+.PP
+To use percent literals in an output template use \f[V]%%\f[R].
+To output to stdout use \f[V]-o -\f[R].
+.PP
+The current default template is \f[V]%(title)s-%(id)s.%(ext)s\f[R].
+.PP
+In some cases, you don\[cq]t want special characters such as 中, spaces,
+or &, such as when transferring the downloaded filename to a Windows
+system or the filename through an 8bit-unsafe channel.
+In these cases, add the \f[V]--restrict-filenames\f[R] flag to get a
+shorter title.
+.SS Output template and Windows batch files
+.PP
+If you are using an output template inside a Windows batch file then you
+must escape plain percent characters (\f[V]%\f[R]) by doubling, so that
+\f[V]-o \[dq]%(title)s-%(id)s.%(ext)s\[dq]\f[R] should become
+\f[V]-o \[dq]%%(title)s-%%(id)s.%%(ext)s\[dq]\f[R].
+However you should not touch \f[V]%\f[R]\[cq]s that are not plain
+characters, e.g.\ environment variables for expansion should stay
+intact:
+\f[V]-o \[dq]C:\[rs]%HOMEPATH%\[rs]Desktop\[rs]%%(title)s.%%(ext)s\[dq]\f[R].
+.SS Output template examples
+.PP
+Note that on Windows you may need to use double quotes instead of
+single.
+.IP
+.nf
+\f[C]
+$ youtube-dl --get-filename -o \[aq]%(title)s.%(ext)s\[aq] BaW_jenozKc
+youtube-dl test video \[aq]\[aq]_ä↭𝕐.mp4 # All kinds of weird characters
+
+$ youtube-dl --get-filename -o \[aq]%(title)s.%(ext)s\[aq] BaW_jenozKc --restrict-filenames
+youtube-dl_test_video_.mp4 # A simple file name
+
+# Download YouTube playlist videos in separate directory indexed by video order in a playlist
+$ youtube-dl -o \[aq]%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[aq] https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re
+
+# Download all playlists of YouTube channel/user keeping each playlist in separate directory:
+$ youtube-dl -o \[aq]%(uploader)s/%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[aq] https://www.youtube.com/user/TheLinuxFoundation/playlists
+
+# Download Udemy course keeping each chapter in separate directory under MyVideos directory in your home
+$ youtube-dl -u user -p password -o \[aq]\[ti]/MyVideos/%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s\[aq] https://www.udemy.com/java-tutorial/
+
+# Download entire series season keeping each series and each season in separate directory under C:/MyVideos
+$ youtube-dl -o \[dq]C:/MyVideos/%(series)s/%(season_number)s - %(season)s/%(episode_number)s - %(episode)s.%(ext)s\[dq] https://videomore.ru/kino_v_detalayah/5_sezon/367617
+
+# Stream the video being downloaded to stdout
+$ youtube-dl -o - BaW_jenozKc
+\f[R]
+.fi
+.SH FORMAT SELECTION
+.PP
+By default youtube-dl tries to download the best available quality,
+i.e.\ if you want the best quality you \f[B]don\[cq]t need\f[R] to pass
+any special options, youtube-dl will guess it for you by
+\f[B]default\f[R].
+.PP
+But sometimes you may want to download in a different format, for
+example when you are on a slow or intermittent connection.
+The key mechanism for achieving this is so-called \f[I]format
+selection\f[R] based on which you can explicitly specify desired format,
+select formats based on some criterion or criteria, setup precedence and
+much more.
+.PP
+The general syntax for format selection is \f[V]--format FORMAT\f[R] or
+shorter \f[V]-f FORMAT\f[R] where \f[V]FORMAT\f[R] is a \f[I]selector
+expression\f[R], i.e.\ an expression that describes format or formats
+you would like to download.
+.PP
+\f[B]tl;dr:\f[R] navigate me to examples.
+.PP
+The simplest case is requesting a specific format, for example with
+\f[V]-f 22\f[R] you can download the format with format code equal to
+22.
+You can get the list of available format codes for particular video
+using \f[V]--list-formats\f[R] or \f[V]-F\f[R].
+Note that these format codes are extractor specific.
+.PP
+You can also use a file extension (currently \f[V]3gp\f[R],
+\f[V]aac\f[R], \f[V]flv\f[R], \f[V]m4a\f[R], \f[V]mp3\f[R],
+\f[V]mp4\f[R], \f[V]ogg\f[R], \f[V]wav\f[R], \f[V]webm\f[R] are
+supported) to download the best quality format of a particular file
+extension served as a single file, e.g.\ \f[V]-f webm\f[R] will download
+the best quality format with the \f[V]webm\f[R] extension served as a
+single file.
+.PP
+You can also use special names to select particular edge case formats:
+.IP \[bu] 2
+\f[V]best\f[R]: Select the best quality format represented by a single
+file with video and audio.
+.IP \[bu] 2
+\f[V]worst\f[R]: Select the worst quality format represented by a single
+file with video and audio.
+.IP \[bu] 2
+\f[V]bestvideo\f[R]: Select the best quality video-only format
+(e.g.\ DASH video).
+May not be available.
+.IP \[bu] 2
+\f[V]worstvideo\f[R]: Select the worst quality video-only format.
+May not be available.
+.IP \[bu] 2
+\f[V]bestaudio\f[R]: Select the best quality audio only-format.
+May not be available.
+.IP \[bu] 2
+\f[V]worstaudio\f[R]: Select the worst quality audio only-format.
+May not be available.
+.PP
+For example, to download the worst quality video-only format you can use
+\f[V]-f worstvideo\f[R].
+.PP
+If you want to download multiple videos and they don\[cq]t have the same
+formats available, you can specify the order of preference using
+slashes.
+Note that slash is left-associative, i.e.\ formats on the left hand side
+are preferred, for example \f[V]-f 22/17/18\f[R] will download format 22
+if it\[cq]s available, otherwise it will download format 17 if it\[cq]s
+available, otherwise it will download format 18 if it\[cq]s available,
+otherwise it will complain that no suitable formats are available for
+download.
+.PP
+If you want to download several formats of the same video use a comma as
+a separator, e.g.\ \f[V]-f 22,17,18\f[R] will download all these three
+formats, of course if they are available.
+Or a more sophisticated example combined with the precedence feature:
+\f[V]-f 136/137/mp4/bestvideo,140/m4a/bestaudio\f[R].
+.PP
+You can also filter the video formats by putting a condition in
+brackets, as in \f[V]-f \[dq]best[height=720]\[dq]\f[R] (or
+\f[V]-f \[dq][filesize>10M]\[dq]\f[R]).
+.PP
+The following numeric meta fields can be used with comparisons
+\f[V]<\f[R], \f[V]<=\f[R], \f[V]>\f[R], \f[V]>=\f[R], \f[V]=\f[R]
+(equals), \f[V]!=\f[R] (not equals):
+.IP \[bu] 2
+\f[V]filesize\f[R]: The number of bytes, if known in advance
+.IP \[bu] 2
+\f[V]width\f[R]: Width of the video, if known
+.IP \[bu] 2
+\f[V]height\f[R]: Height of the video, if known
+.IP \[bu] 2
+\f[V]tbr\f[R]: Average bitrate of audio and video in KBit/s
+.IP \[bu] 2
+\f[V]abr\f[R]: Average audio bitrate in KBit/s
+.IP \[bu] 2
+\f[V]vbr\f[R]: Average video bitrate in KBit/s
+.IP \[bu] 2
+\f[V]asr\f[R]: Audio sampling rate in Hertz
+.IP \[bu] 2
+\f[V]fps\f[R]: Frame rate
+.PP
+Also filtering work for comparisons \f[V]=\f[R] (equals),
+\f[V]\[ha]=\f[R] (starts with), \f[V]$=\f[R] (ends with), \f[V]*=\f[R]
+(contains) and following string meta fields:
+.IP \[bu] 2
+\f[V]ext\f[R]: File extension
+.IP \[bu] 2
+\f[V]acodec\f[R]: Name of the audio codec in use
+.IP \[bu] 2
+\f[V]vcodec\f[R]: Name of the video codec in use
+.IP \[bu] 2
+\f[V]container\f[R]: Name of the container format
+.IP \[bu] 2
+\f[V]protocol\f[R]: The protocol that will be used for the actual
+download, lower-case (\f[V]http\f[R], \f[V]https\f[R], \f[V]rtsp\f[R],
+\f[V]rtmp\f[R], \f[V]rtmpe\f[R], \f[V]mms\f[R], \f[V]f4m\f[R],
+\f[V]ism\f[R], \f[V]http_dash_segments\f[R], \f[V]m3u8\f[R], or
+\f[V]m3u8_native\f[R])
+.IP \[bu] 2
+\f[V]format_id\f[R]: A short description of the format
+.IP \[bu] 2
+\f[V]language\f[R]: Language code
+.PP
+Any string comparison may be prefixed with negation \f[V]!\f[R] in order
+to produce an opposite comparison, e.g.\ \f[V]!*=\f[R] (does not
+contain).
+.PP
+Note that none of the aforementioned meta fields are guaranteed to be
+present since this solely depends on the metadata obtained by particular
+extractor, i.e.\ the metadata offered by the video hoster.
+.PP
+Formats for which the value is not known are excluded unless you put a
+question mark (\f[V]?\f[R]) after the operator.
+You can combine format filters, so
+\f[V]-f \[dq][height <=? 720][tbr>500]\[dq]\f[R] selects up to 720p
+videos (or videos where the height is not known) with a bitrate of at
+least 500 KBit/s.
+.PP
+You can merge the video and audio of two formats into a single file
+using \f[V]-f <video-format>+<audio-format>\f[R] (requires ffmpeg or
+avconv installed), for example \f[V]-f bestvideo+bestaudio\f[R] will
+download the best video-only format, the best audio-only format and mux
+them together with ffmpeg/avconv.
+.PP
+Format selectors can also be grouped using parentheses, for example if
+you want to download the best mp4 and webm formats with a height lower
+than 480 you can use \f[V]-f \[aq](mp4,webm)[height<480]\[aq]\f[R].
+.PP
+Since the end of April 2015 and version 2015.04.26, youtube-dl uses
+\f[V]-f bestvideo+bestaudio/best\f[R] as the default format selection
+(see #5447 (https://github.com/ytdl-org/youtube-dl/issues/5447),
+#5456 (https://github.com/ytdl-org/youtube-dl/issues/5456)).
+If ffmpeg or avconv are installed this results in downloading
+\f[V]bestvideo\f[R] and \f[V]bestaudio\f[R] separately and muxing them
+together into a single file giving the best overall quality available.
+Otherwise it falls back to \f[V]best\f[R] and results in downloading the
+best available quality served as a single file.
+\f[V]best\f[R] is also needed for videos that don\[cq]t come from
+YouTube because they don\[cq]t provide the audio and video in two
+different files.
+If you want to only download some DASH formats (for example if you are
+not interested in getting videos with a resolution higher than 1080p),
+you can add \f[V]-f bestvideo[height<=?1080]+bestaudio/best\f[R] to your
+configuration file.
+Note that if you use youtube-dl to stream to \f[V]stdout\f[R] (and most
+likely to pipe it to your media player then), i.e.\ you explicitly
+specify output template as \f[V]-o -\f[R], youtube-dl still uses
+\f[V]-f best\f[R] format selection in order to start content delivery
+immediately to your player and not to wait until \f[V]bestvideo\f[R] and
+\f[V]bestaudio\f[R] are downloaded and muxed.
+.PP
+If you want to preserve the old format selection behavior (prior to
+youtube-dl 2015.04.26), i.e.\ you want to download the best available
+quality media served as a single file, you should explicitly specify
+your choice with \f[V]-f best\f[R].
+You may want to add it to the configuration file in order not to type it
+every time you run youtube-dl.
+.SS Format selection examples
+.PP
+Note that on Windows you may need to use double quotes instead of
+single.
+.IP
+.nf
+\f[C]
+# Download best mp4 format available or any other best if no mp4 available
+$ youtube-dl -f \[aq]bestvideo[ext=mp4]+bestaudio[ext=m4a]/best[ext=mp4]/best\[aq]
+
+# Download best format available but no better than 480p
+$ youtube-dl -f \[aq]bestvideo[height<=480]+bestaudio/best[height<=480]\[aq]
+
+# Download best video only format but no bigger than 50 MB
+$ youtube-dl -f \[aq]best[filesize<50M]\[aq]
+
+# Download best format available via direct link over HTTP/HTTPS protocol
+$ youtube-dl -f \[aq](bestvideo+bestaudio/best)[protocol\[ha]=http]\[aq]
+
+# Download the best video format and the best audio format without merging them
+$ youtube-dl -f \[aq]bestvideo,bestaudio\[aq] -o \[aq]%(title)s.f%(format_id)s.%(ext)s\[aq]
+\f[R]
+.fi
+.PP
+Note that in the last example, an output template is recommended as
+bestvideo and bestaudio may have the same file name.
+.SH VIDEO SELECTION
+.PP
+Videos can be filtered by their upload date using the options
+\f[V]--date\f[R], \f[V]--datebefore\f[R] or \f[V]--dateafter\f[R].
+They accept dates in two formats:
+.IP \[bu] 2
+Absolute dates: Dates in the format \f[V]YYYYMMDD\f[R].
+.IP \[bu] 2
+Relative dates: Dates in the format
+\f[V](now|today)[+-][0-9](day|week|month|year)(s)?\f[R]
+.PP
+Examples:
+.IP
+.nf
+\f[C]
+# Download only the videos uploaded in the last 6 months
+$ youtube-dl --dateafter now-6months
+
+# Download only the videos uploaded on January 1, 1970
+$ youtube-dl --date 19700101
+
+$ # Download only the videos uploaded in the 200x decade
+$ youtube-dl --dateafter 20000101 --datebefore 20091231
+\f[R]
+.fi
+.SH FAQ
+.SS How do I update youtube-dl?
+.PP
+If you\[cq]ve followed our manual installation
+instructions (https://ytdl-org.github.io/youtube-dl/download.html), you
+can simply run \f[V]youtube-dl -U\f[R] (or, on Linux,
+\f[V]sudo youtube-dl -U\f[R]).
+.PP
+If you have used pip, a simple \f[V]sudo pip install -U youtube-dl\f[R]
+is sufficient to update.
+.PP
+If you have installed youtube-dl using a package manager like
+\f[I]apt-get\f[R] or \f[I]yum\f[R], use the standard system update
+mechanism to update.
+Note that distribution packages are often outdated.
+As a rule of thumb, youtube-dl releases at least once a month, and often
+weekly or even daily.
+Simply go to https://yt-dl.org to find out the current version.
+Unfortunately, there is nothing we youtube-dl developers can do if your
+distribution serves a really outdated version.
+You can (and should) complain to your distribution in their bugtracker
+or support forum.
+.PP
+As a last resort, you can also uninstall the version installed by your
+package manager and follow our manual installation instructions.
+For that, remove the distribution\[cq]s package, with a line like
+.IP
+.nf
+\f[C]
+sudo apt-get remove -y youtube-dl
+\f[R]
+.fi
+.PP
+Afterwards, simply follow our manual installation
+instructions (https://ytdl-org.github.io/youtube-dl/download.html):
+.IP
+.nf
+\f[C]
+sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl
+sudo chmod a+rx /usr/local/bin/youtube-dl
+hash -r
+\f[R]
+.fi
+.PP
+Again, from then on you\[cq]ll be able to update with
+\f[V]sudo youtube-dl -U\f[R].
+.SS youtube-dl is extremely slow to start on Windows
+.PP
+Add a file exclusion for \f[V]youtube-dl.exe\f[R] in Windows Defender
+settings.
+.SS I\[cq]m getting an error \f[V]Unable to extract OpenGraph title\f[R] on YouTube playlists
+.PP
+YouTube changed their playlist format in March 2014 and later on, so
+you\[cq]ll need at least youtube-dl 2014.07.25 to download all YouTube
+videos.
+.PP
+If you have installed youtube-dl with a package manager, pip, setup.py
+or a tarball, please use that to update.
+Note that Ubuntu packages do not seem to get updated anymore.
+Since we are not affiliated with Ubuntu, there is little we can do.
+Feel free to report
+bugs (https://bugs.launchpad.net/ubuntu/+source/youtube-dl/+filebug) to
+the Ubuntu packaging
+people (mailto:ubuntu-motu@lists.ubuntu.com?subject=outdated%20version%20of%20youtube-dl)
+- all they have to do is update the package to a somewhat recent
+version.
+See above for a way to update.
+.SS I\[cq]m getting an error when trying to use output template: \f[V]error: using output template conflicts with using title, video ID or auto number\f[R]
+.PP
+Make sure you are not using \f[V]-o\f[R] with any of these options
+\f[V]-t\f[R], \f[V]--title\f[R], \f[V]--id\f[R], \f[V]-A\f[R] or
+\f[V]--auto-number\f[R] set in command line or in a configuration file.
+Remove the latter if any.
+.SS Do I always have to pass \f[V]-citw\f[R]?
+.PP
+By default, youtube-dl intends to have the best options (incidentally,
+if you have a convincing case that these should be different, please
+file an issue where you explain that (https://yt-dl.org/bug)).
+Therefore, it is unnecessary and sometimes harmful to copy long option
+strings from webpages.
+In particular, the only option out of \f[V]-citw\f[R] that is regularly
+useful is \f[V]-i\f[R].
+.SS Can you please put the \f[V]-b\f[R] option back?
+.PP
+Most people asking this question are not aware that youtube-dl now
+defaults to downloading the highest available quality as reported by
+YouTube, which will be 1080p or 720p in some cases, so you no longer
+need the \f[V]-b\f[R] option.
+For some specific videos, maybe YouTube does not report them to be
+available in a specific high quality format you\[cq]re interested in.
+In that case, simply request it with the \f[V]-f\f[R] option and
+youtube-dl will try to download it.
+.SS I get HTTP error 402 when trying to download a video. What\[cq]s this?
+.PP
+Apparently YouTube requires you to pass a CAPTCHA test if you download
+too much.
+We\[cq]re considering to provide a way to let you solve the
+CAPTCHA (https://github.com/ytdl-org/youtube-dl/issues/154), but at the
+moment, your best course of action is pointing a web browser to the
+youtube URL, solving the CAPTCHA, and restart youtube-dl.
+.SS Do I need any other programs?
+.PP
+youtube-dl works fine on its own on most sites.
+However, if you want to convert video/audio, you\[cq]ll need
+avconv (https://libav.org/) or ffmpeg (https://www.ffmpeg.org/).
+On some sites - most notably YouTube - videos can be retrieved in a
+higher quality format without sound.
+youtube-dl will detect whether avconv/ffmpeg is present and
+automatically pick the best option.
+.PP
+Videos or video formats streamed via RTMP protocol can only be
+downloaded when rtmpdump (https://rtmpdump.mplayerhq.hu/) is installed.
+Downloading MMS and RTSP videos requires either
+mplayer (https://mplayerhq.hu/) or mpv (https://mpv.io/) to be
+installed.
+.SS I have downloaded a video but how can I play it?
+.PP
+Once the video is fully downloaded, use any video player, such as
+mpv (https://mpv.io/), vlc (https://www.videolan.org/) or
+mplayer (https://www.mplayerhq.hu/).
+.SS I extracted a video URL with \f[V]-g\f[R], but it does not play on another machine / in my web browser.
+.PP
+It depends a lot on the service.
+In many cases, requests for the video (to download/play it) must come
+from the same IP address and with the same cookies and/or HTTP headers.
+Use the \f[V]--cookies\f[R] option to write the required cookies into a
+file, and advise your downloader to read cookies from that file.
+Some sites also require a common user agent to be used, use
+\f[V]--dump-user-agent\f[R] to see the one in use by youtube-dl.
+You can also get necessary cookies and HTTP headers from JSON output
+obtained with \f[V]--dump-json\f[R].
+.PP
+It may be beneficial to use IPv6; in some cases, the restrictions are
+only applied to IPv4.
+Some services (sometimes only for a subset of videos) do not restrict
+the video URL by IP address, cookie, or user-agent, but these are the
+exception rather than the rule.
+.PP
+Please bear in mind that some URL protocols are \f[B]not\f[R] supported
+by browsers out of the box, including RTMP.
+If you are using \f[V]-g\f[R], your own downloader must support these as
+well.
+.PP
+If you want to play the video on a machine that is not running
+youtube-dl, you can relay the video content from the machine that runs
+youtube-dl.
+You can use \f[V]-o -\f[R] to let youtube-dl stream a video to stdout,
+or simply allow the player to download the files written by youtube-dl
+in turn.
+.SS ERROR: no fmt_url_map or conn information found in video info
+.PP
+YouTube has switched to a new video info format in July 2011 which is
+not supported by old versions of youtube-dl.
+See above for how to update youtube-dl.
+.SS ERROR: unable to download video
+.PP
+YouTube requires an additional signature since September 2012 which is
+not supported by old versions of youtube-dl.
+See above for how to update youtube-dl.
+.SS Video URL contains an ampersand and I\[cq]m getting some strange output \f[V][1] 2839\f[R] or \f[V]\[aq]v\[aq] is not recognized as an internal or external command\f[R]
+.PP
+That\[cq]s actually the output from your shell.
+Since ampersand is one of the special shell characters it\[cq]s
+interpreted by the shell preventing you from passing the whole URL to
+youtube-dl.
+To disable your shell from interpreting the ampersands (or any other
+special characters) you have to either put the whole URL in quotes or
+escape them with a backslash (which approach will work depends on your
+shell).
+.PP
+For example if your URL is
+https://www.youtube.com/watch?t=4&v=BaW_jenozKc you should end up with
+following command:
+.PP
+\f[V]youtube-dl \[aq]https://www.youtube.com/watch?t=4&v=BaW_jenozKc\[aq]\f[R]
+.PP
+or
+.PP
+\f[V]youtube-dl https://www.youtube.com/watch?t=4\[rs]&v=BaW_jenozKc\f[R]
+.PP
+For Windows you have to use the double quotes:
+.PP
+\f[V]youtube-dl \[dq]https://www.youtube.com/watch?t=4&v=BaW_jenozKc\[dq]\f[R]
+.SS ExtractorError: Could not find JS function u\[cq]OF\[cq]
+.PP
+In February 2015, the new YouTube player contained a character sequence
+in a string that was misinterpreted by old versions of youtube-dl.
+See above for how to update youtube-dl.
+.SS HTTP Error 429: Too Many Requests or 402: Payment Required
+.PP
+These two error codes indicate that the service is blocking your IP
+address because of overuse.
+Usually this is a soft block meaning that you can gain access again
+after solving CAPTCHA.
+Just open a browser and solve a CAPTCHA the service suggests you and
+after that pass cookies to youtube-dl.
+Note that if your machine has multiple external IPs then you should also
+pass exactly the same IP you\[cq]ve used for solving CAPTCHA with
+\f[V]--source-address\f[R].
+Also you may need to pass a \f[V]User-Agent\f[R] HTTP header of your
+browser with \f[V]--user-agent\f[R].
+.PP
+If this is not the case (no CAPTCHA suggested to solve by the service)
+then you can contact the service and ask them to unblock your IP
+address, or - if you have acquired a whitelisted IP address already -
+use the \f[V]--proxy\f[R] or \f[V]--source-address\f[R] options to
+select another IP address.
+.SS SyntaxError: Non-ASCII character
+.PP
+The error
+.IP
+.nf
+\f[C]
+File \[dq]youtube-dl\[dq], line 2
+SyntaxError: Non-ASCII character \[aq]\[rs]x93\[aq] ...
+\f[R]
+.fi
+.PP
+means you\[cq]re using an outdated version of Python.
+Please update to Python 2.6 or 2.7.
+.SS What is this binary file? Where has the code gone?
+.PP
+Since June 2012
+(#342 (https://github.com/ytdl-org/youtube-dl/issues/342)) youtube-dl is
+packed as an executable zipfile, simply unzip it (might need renaming to
+\f[V]youtube-dl.zip\f[R] first on some systems) or clone the git
+repository, as laid out above.
+If you modify the code, you can run it by executing the
+\f[V]__main__.py\f[R] file.
+To recompile the executable, run \f[V]make youtube-dl\f[R].
+.SS The exe throws an error due to missing \f[V]MSVCR100.dll\f[R]
+.PP
+To run the exe you need to install first the Microsoft Visual C++ 2010
+Service Pack 1 Redistributable Package
+(x86) (https://download.microsoft.com/download/1/6/5/165255E7-1014-4D0A-B094-B6A430A6BFFC/vcredist_x86.exe).
+.SS On Windows, how should I set up ffmpeg and youtube-dl? Where should I put the exe files?
+.PP
+If you put youtube-dl and ffmpeg in the same directory that you\[cq]re
+running the command from, it will work, but that\[cq]s rather
+cumbersome.
+.PP
+To make a different directory work - either for ffmpeg, or for
+youtube-dl, or for both - simply create the directory (say,
+\f[V]C:\[rs]bin\f[R], or
+\f[V]C:\[rs]Users\[rs]<User name>\[rs]bin\f[R]), put all the executables
+directly in there, and then set your PATH environment
+variable (https://www.java.com/en/download/help/path.xml) to include
+that directory.
+.PP
+From then on, after restarting your shell, you will be able to access
+both youtube-dl and ffmpeg (and youtube-dl will be able to find ffmpeg)
+by simply typing \f[V]youtube-dl\f[R] or \f[V]ffmpeg\f[R], no matter
+what directory you\[cq]re in.
+.SS How do I put downloads into a specific folder?
+.PP
+Use the \f[V]-o\f[R] to specify an output template, for example
+\f[V]-o \[dq]/home/user/videos/%(title)s-%(id)s.%(ext)s\[dq]\f[R].
+If you want this for all of your downloads, put the option into your
+configuration file.
+.SS How do I download a video starting with a \f[V]-\f[R]?
+.PP
+Either prepend \f[V]https://www.youtube.com/watch?v=\f[R] or separate
+the ID from the options with \f[V]--\f[R]:
+.IP
+.nf
+\f[C]
+youtube-dl -- -wNyEUrxzFU
+youtube-dl \[dq]https://www.youtube.com/watch?v=-wNyEUrxzFU\[dq]
+\f[R]
+.fi
+.SS How do I pass cookies to youtube-dl?
+.PP
+Use the \f[V]--cookies\f[R] option, for example
+\f[V]--cookies /path/to/cookies/file.txt\f[R].
+.PP
+In order to extract cookies from browser use any conforming browser
+extension for exporting cookies.
+For example, Get cookies.txt
+LOCALLY (https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc)
+(for Chrome) or
+cookies.txt (https://addons.mozilla.org/en-US/firefox/addon/cookies-txt/)
+(for Firefox).
+.PP
+Note that the cookies file must be in Mozilla/Netscape format and the
+first line of the cookies file must be either
+\f[V]# HTTP Cookie File\f[R] or \f[V]# Netscape HTTP Cookie File\f[R].
+Make sure you have correct newline
+format (https://en.wikipedia.org/wiki/Newline) in the cookies file and
+convert newlines if necessary to correspond with your OS, namely
+\f[V]CRLF\f[R] (\f[V]\[rs]r\[rs]n\f[R]) for Windows and \f[V]LF\f[R]
+(\f[V]\[rs]n\f[R]) for Unix and Unix-like systems (Linux, macOS, etc.).
+\f[V]HTTP Error 400: Bad Request\f[R] when using \f[V]--cookies\f[R] is
+a good sign of invalid newline format.
+.PP
+Passing cookies to youtube-dl is a good way to workaround login when a
+particular extractor does not implement it explicitly.
+Another use case is working around
+CAPTCHA (https://en.wikipedia.org/wiki/CAPTCHA) some websites require
+you to solve in particular cases in order to get access (e.g.\ YouTube,
+CloudFlare).
+.SS How do I stream directly to media player?
+.PP
+You will first need to tell youtube-dl to stream media to stdout with
+\f[V]-o -\f[R], and also tell your media player to read from stdin (it
+must be capable of this for streaming) and then pipe former to latter.
+For example, streaming to vlc (https://www.videolan.org/) can be
+achieved with:
+.IP
+.nf
+\f[C]
+youtube-dl -o - \[dq]https://www.youtube.com/watch?v=BaW_jenozKcj\[dq] | vlc -
+\f[R]
+.fi
+.SS How do I download only new videos from a playlist?
+.PP
+Use download-archive feature.
+With this feature you should initially download the complete playlist
+with \f[V]--download-archive /path/to/download/archive/file.txt\f[R]
+that will record identifiers of all the videos in a special file.
+Each subsequent run with the same \f[V]--download-archive\f[R] will
+download only new videos and skip all videos that have been downloaded
+before.
+Note that only successful downloads are recorded in the file.
+.PP
+For example, at first,
+.IP
+.nf
+\f[C]
+youtube-dl --download-archive archive.txt \[dq]https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re\[dq]
+\f[R]
+.fi
+.PP
+will download the complete \f[V]PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re\f[R]
+playlist and create a file \f[V]archive.txt\f[R].
+Each subsequent run will only download new videos if any:
+.IP
+.nf
+\f[C]
+youtube-dl --download-archive archive.txt \[dq]https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re\[dq]
+\f[R]
+.fi
+.SS Should I add \f[V]--hls-prefer-native\f[R] into my config?
+.PP
+When youtube-dl detects an HLS video, it can download it either with the
+built-in downloader or ffmpeg.
+Since many HLS streams are slightly invalid and ffmpeg/youtube-dl each
+handle some invalid cases better than the other, there is an option to
+switch the downloader if needed.
+.PP
+When youtube-dl knows that one particular downloader works better for a
+given website, that downloader will be picked.
+Otherwise, youtube-dl will pick the best downloader for general
+compatibility, which at the moment happens to be ffmpeg.
+This choice may change in future versions of youtube-dl, with
+improvements of the built-in downloader and/or ffmpeg.
+.PP
+In particular, the generic extractor (used when your website is not in
+the list of supported sites by
+youtube-dl (https://ytdl-org.github.io/youtube-dl/supportedsites.html)
+cannot mandate one specific downloader.
+.PP
+If you put either \f[V]--hls-prefer-native\f[R] or
+\f[V]--hls-prefer-ffmpeg\f[R] into your configuration, a different
+subset of videos will fail to download correctly.
+Instead, it is much better to file an issue (https://yt-dl.org/bug) or a
+pull request which details why the native or the ffmpeg HLS downloader
+is a better choice for your use case.
+.SS Can you add support for this anime video site, or site which shows current movies for free?
+.PP
+As a matter of policy (as well as legality), youtube-dl does not include
+support for services that specialize in infringing copyright.
+As a rule of thumb, if you cannot easily find a video that the service
+is quite obviously allowed to distribute (i.e.\ that has been uploaded
+by the creator, the creator\[cq]s distributor, or is published under a
+free license), the service is probably unfit for inclusion to
+youtube-dl.
+.PP
+A note on the service that they don\[cq]t host the infringing content,
+but just link to those who do, is evidence that the service should
+\f[B]not\f[R] be included into youtube-dl.
+The same goes for any DMCA note when the whole front page of the service
+is filled with videos they are not allowed to distribute.
+A \[lq]fair use\[rq] note is equally unconvincing if the service shows
+copyright-protected videos in full without authorization.
+.PP
+Support requests for services that \f[B]do\f[R] purchase the rights to
+distribute their content are perfectly fine though.
+If in doubt, you can simply include a source that mentions the
+legitimate purchase of content.
+.SS How can I speed up work on my issue?
+.PP
+(Also known as: Help, my important issue not being solved!)
+The youtube-dl core developer team is quite small.
+While we do our best to solve as many issues as possible, sometimes that
+can take quite a while.
+To speed up your issue, here\[cq]s what you can do:
+.PP
+First of all, please do report the issue at our issue
+tracker (https://yt-dl.org/bugs).
+That allows us to coordinate all efforts by users and developers, and
+serves as a unified point.
+Unfortunately, the youtube-dl project has grown too large to use
+personal email as an effective communication channel.
+.PP
+Please read the bug reporting instructions below.
+A lot of bugs lack all the necessary information.
+If you can, offer proxy, VPN, or shell access to the youtube-dl
+developers.
+If you are able to, test the issue from multiple computers in multiple
+countries to exclude local censorship or misconfiguration issues.
+.PP
+If nobody is interested in solving your issue, you are welcome to take
+matters into your own hands and submit a pull request (or coerce/pay
+somebody else to do so).
+.PP
+Feel free to bump the issue from time to time by writing a small comment
+(\[lq]Issue is still present in youtube-dl version \&...from France, but
+fixed from Belgium\[rq]), but please not more than once a month.
+Please do not declare your issue as \f[V]important\f[R] or
+\f[V]urgent\f[R].
+.SS How can I detect whether a given URL is supported by youtube-dl?
+.PP
+For one, have a look at the list of supported sites.
+Note that it can sometimes happen that the site changes its URL scheme
+(say, from https://example.com/video/1234567 to
+https://example.com/v/1234567 ) and youtube-dl reports an URL of a
+service in that list as unsupported.
+In that case, simply report a bug.
+.PP
+It is \f[I]not\f[R] possible to detect whether a URL is supported or
+not.
+That\[cq]s because youtube-dl contains a generic extractor which matches
+\f[B]all\f[R] URLs.
+You may be tempted to disable, exclude, or remove the generic extractor,
+but the generic extractor not only allows users to extract videos from
+lots of websites that embed a video from another service, but may also
+be used to extract video from a service that it\[cq]s hosting itself.
+Therefore, we neither recommend nor support disabling, excluding, or
+removing the generic extractor.
+.PP
+If you want to find out whether a given URL is supported, simply call
+youtube-dl with it.
+If you get no videos back, chances are the URL is either not referring
+to a video or unsupported.
+You can find out which by examining the output (if you run youtube-dl on
+the console) or catching an \f[V]UnsupportedError\f[R] exception if you
+run it from a Python program.
+.SH Why do I need to go through that much red tape when filing bugs?
+.PP
+Before we had the issue template, despite our extensive bug reporting
+instructions, about 80% of the issue reports we got were useless, for
+instance because people used ancient versions hundreds of releases old,
+because of simple syntactic errors (not in youtube-dl but in general
+shell usage), because the problem was already reported multiple times
+before, because people did not actually read an error message, even if
+it said \[lq]please install ffmpeg\[rq], because people did not mention
+the URL they were trying to download and many more simple, easy-to-avoid
+problems, many of whom were totally unrelated to youtube-dl.
+.PP
+youtube-dl is an open-source project manned by too few volunteers, so
+we\[cq]d rather spend time fixing bugs where we are certain none of
+those simple problems apply, and where we can be reasonably confident to
+be able to reproduce the issue without asking the reporter repeatedly.
+As such, the output of \f[V]youtube-dl -v YOUR_URL_HERE\f[R] is really
+all that\[cq]s required to file an issue.
+The issue template also guides you through some basic steps you can do,
+such as checking that your version of youtube-dl is current.
+.SH DEVELOPER INSTRUCTIONS
+.PP
+Most users do not need to build youtube-dl and can download the
+builds (https://ytdl-org.github.io/youtube-dl/download.html) or get them
+from their distribution.
+.PP
+To run youtube-dl as a developer, you don\[cq]t need to build anything
+either.
+Simply execute
+.IP
+.nf
+\f[C]
+python -m youtube_dl
+\f[R]
+.fi
+.PP
+To run the test, simply invoke your favorite test runner, or execute a
+test file directly; any of the following work:
+.IP
+.nf
+\f[C]
+python -m unittest discover
+python test/test_download.py
+nosetests
+\f[R]
+.fi
+.PP
+See item 6 of new extractor tutorial for how to run extractor specific
+test cases.
+.PP
+If you want to create a build of youtube-dl yourself, you\[cq]ll need
+.IP \[bu] 2
+python
+.IP \[bu] 2
+make (only GNU make is supported)
+.IP \[bu] 2
+pandoc
+.IP \[bu] 2
+zip
+.IP \[bu] 2
+nosetests
+.SS Adding support for a new site
+.PP
+If you want to add support for a new site, first of all \f[B]make
+sure\f[R] this site is \f[B]not dedicated to copyright
+infringement\f[R].
+youtube-dl does \f[B]not support\f[R] such sites thus pull requests
+adding support for them \f[B]will be rejected\f[R].
+.PP
+After you have ensured this site is distributing its content legally,
+you can follow this quick list (assuming your service is called
+\f[V]yourextractor\f[R]):
+.IP " 1." 4
+Fork this repository (https://github.com/ytdl-org/youtube-dl/fork)
+.IP " 2." 4
+Check out the source code with:
+.RS 4
+.IP
+.nf
+\f[C]
+ git clone git\[at]github.com:YOUR_GITHUB_USERNAME/youtube-dl.git
+\f[R]
+.fi
+.RE
+.IP " 3." 4
+Start a new git branch with
+.RS 4
+.IP
+.nf
+\f[C]
+ cd youtube-dl
+ git checkout -b yourextractor
+\f[R]
+.fi
+.RE
+.IP " 4." 4
+Start with this simple template and save it to
+\f[V]youtube_dl/extractor/yourextractor.py\f[R]:
+.RS 4
+.IP
+.nf
+\f[C]
+# coding: utf-8
+from __future__ import unicode_literals
+
+from .common import InfoExtractor
+
+
+class YourExtractorIE(InfoExtractor):
+ _VALID_URL = r\[aq]https?://(?:www\[rs].)?yourextractor\[rs].com/watch/(?P<id>[0-9]+)\[aq]
+ _TEST = {
+ \[aq]url\[aq]: \[aq]https://yourextractor.com/watch/42\[aq],
+ \[aq]md5\[aq]: \[aq]TODO: md5 sum of the first 10241 bytes of the video file (use --test)\[aq],
+ \[aq]info_dict\[aq]: {
+ \[aq]id\[aq]: \[aq]42\[aq],
+ \[aq]ext\[aq]: \[aq]mp4\[aq],
+ \[aq]title\[aq]: \[aq]Video title goes here\[aq],
+ \[aq]thumbnail\[aq]: r\[aq]re:\[ha]https?://.*\[rs].jpg$\[aq],
+ # TODO more properties, either as:
+ # * A value
+ # * MD5 checksum; start the string with md5:
+ # * A regular expression; start the string with re:
+ # * Any Python type (for example int or float)
+ }
+ }
+
+ 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\[aq]<h1>(.+?)</h1>\[aq], webpage, \[aq]title\[aq])
+
+ return {
+ \[aq]id\[aq]: video_id,
+ \[aq]title\[aq]: title,
+ \[aq]description\[aq]: self._og_search_description(webpage),
+ \[aq]uploader\[aq]: self._search_regex(r\[aq]<div[\[ha]>]+id=\[dq]uploader\[dq][\[ha]>]*>([\[ha]<]+)<\[aq], webpage, \[aq]uploader\[aq], fatal=False),
+ # TODO more properties (see youtube_dl/extractor/common.py)
+ }
+\f[R]
+.fi
+.RE
+.IP " 5." 4
+Add an import in
+\f[V]youtube_dl/extractor/extractors.py\f[R] (https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/extractor/extractors.py).
+.IP " 6." 4
+Run
+\f[V]python test/test_download.py TestDownload.test_YourExtractor\f[R].
+This \f[I]should fail\f[R] at first, but you can continually re-run it
+until you\[cq]re done.
+If you decide to add more than one test (actually, test case) then
+rename \f[V]_TEST\f[R] to \f[V]_TESTS\f[R] and make it into a list of
+dictionaries.
+The tests will then be named \f[V]TestDownload.test_YourExtractor\f[R],
+\f[V]TestDownload.test_YourExtractor_1\f[R],
+\f[V]TestDownload.test_YourExtractor_2\f[R], etc.
+Note:
+.RS 4
+.IP \[bu] 2
+the test names use the extractor class name \f[B]without the trailing
+\f[VB]IE\f[B]\f[R]
+.IP \[bu] 2
+tests with \f[V]only_matching\f[R] key in test\[cq]s dict are not
+counted.
+.RE
+.IP " 7." 4
+Have a look at
+\f[V]youtube_dl/extractor/common.py\f[R] (https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/extractor/common.py)
+for possible helper methods and a detailed description of what your
+extractor should and may
+return (https://github.com/ytdl-org/youtube-dl/blob/7f41a598b3fba1bcab2817de64a08941200aa3c8/youtube_dl/extractor/common.py#L94-L303).
+Add tests and code for as many as you want.
+.IP " 8." 4
+Make sure your code follows youtube-dl coding conventions and check the
+code with
+flake8 (https://flake8.pycqa.org/en/latest/index.html#quickstart):
+.RS 4
+.IP
+.nf
+\f[C]
+ $ flake8 youtube_dl/extractor/yourextractor.py
+\f[R]
+.fi
+.RE
+.IP " 9." 4
+Make sure your code works under all Python (https://www.python.org/)
+versions claimed supported by youtube-dl, namely 2.6, 2.7, and 3.2+.
+.IP "10." 4
+When the tests pass, add (https://git-scm.com/docs/git-add) the new
+files and commit (https://git-scm.com/docs/git-commit) them and
+push (https://git-scm.com/docs/git-push) the result, like this:
+.RS 4
+.IP
+.nf
+\f[C]
+$ git add youtube_dl/extractor/extractors.py
+$ git add youtube_dl/extractor/yourextractor.py
+$ git commit -m \[aq][yourextractor] Add new extractor\[aq]
+$ git push origin yourextractor
+\f[R]
+.fi
+.RE
+.IP "11." 4
+Finally, create a pull
+request (https://help.github.com/articles/creating-a-pull-request).
+We\[cq]ll then review and merge it.
+.PP
+In any case, thank you very much for your contributions!
+.SS youtube-dl coding conventions
+.PP
+This section introduces a guide lines for writing idiomatic, robust and
+future-proof extractor code.
+.PP
+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\[cq]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 youtube-dl versions working.
+Even though this breakage issue is easily fixed by emitting a new
+version of youtube-dl with a fix incorporated, all the previous versions
+become broken in all repositories and distros\[cq] packages that may not
+be so prompt in fetching the update from us.
+Needless to say, some non rolling release distros may never receive an
+update at all.
+.SS Mandatory and optional metafields
+.PP
+For extraction to work youtube-dl relies on metadata your extractor
+extracts and provides to youtube-dl expressed by an information
+dictionary (https://github.com/ytdl-org/youtube-dl/blob/7f41a598b3fba1bcab2817de64a08941200aa3c8/youtube_dl/extractor/common.py#L94-L303)
+or simply \f[I]info dict\f[R].
+Only the following meta fields in the \f[I]info dict\f[R] are considered
+mandatory for a successful extraction process by youtube-dl:
+.IP \[bu] 2
+\f[V]id\f[R] (media identifier)
+.IP \[bu] 2
+\f[V]title\f[R] (media title)
+.IP \[bu] 2
+\f[V]url\f[R] (media download URL) or \f[V]formats\f[R]
+.PP
+In fact only the last option is technically mandatory (i.e.\ if you
+can\[cq]t figure out the download location of the media the extraction
+does not make any sense).
+But by convention youtube-dl also treats \f[V]id\f[R] and
+\f[V]title\f[R] as mandatory.
+Thus the aforementioned metafields are the critical data that the
+extraction does not make any sense without and if any of them fail to be
+extracted then the extractor is considered completely broken.
+.PP
+Any
+field (https://github.com/ytdl-org/youtube-dl/blob/7f41a598b3fba1bcab2817de64a08941200aa3c8/youtube_dl/extractor/common.py#L188-L303)
+apart from the aforementioned ones are considered \f[B]optional\f[R].
+That means that extraction should be \f[B]tolerant\f[R] to situations
+when sources for these fields can potentially be unavailable (even if
+they are always available at the moment) and \f[B]future-proof\f[R] in
+order not to break the extraction of general purpose mandatory fields.
+.SS Example
+.PP
+Say you have some source dictionary \f[V]meta\f[R] that you\[cq]ve
+fetched as JSON with HTTP request and it has a key \f[V]summary\f[R]:
+.IP
+.nf
+\f[C]
+meta = self._download_json(url, video_id)
+\f[R]
+.fi
+.PP
+Assume at this point \f[V]meta\f[R]\[cq]s layout is:
+.IP
+.nf
+\f[C]
+{
+ ...
+ \[dq]summary\[dq]: \[dq]some fancy summary text\[dq],
+ ...
+}
+\f[R]
+.fi
+.PP
+Assume you want to extract \f[V]summary\f[R] and put it into the
+resulting info dict as \f[V]description\f[R].
+Since \f[V]description\f[R] is an optional meta field you should be
+ready that this key may be missing from the \f[V]meta\f[R] dict, so that
+you should extract it like:
+.IP
+.nf
+\f[C]
+description = meta.get(\[aq]summary\[aq]) # correct
+\f[R]
+.fi
+.PP
+and not like:
+.IP
+.nf
+\f[C]
+description = meta[\[aq]summary\[aq]] # incorrect
+\f[R]
+.fi
+.PP
+The latter will break extraction process with \f[V]KeyError\f[R] if
+\f[V]summary\f[R] disappears from \f[V]meta\f[R] at some later time but
+with the former approach extraction will just go ahead with
+\f[V]description\f[R] set to \f[V]None\f[R] which is perfectly fine
+(remember \f[V]None\f[R] is equivalent to the absence of data).
+.PP
+Similarly, you should pass \f[V]fatal=False\f[R] when extracting
+optional data from a webpage with \f[V]_search_regex\f[R],
+\f[V]_html_search_regex\f[R] or similar methods, for instance:
+.IP
+.nf
+\f[C]
+description = self._search_regex(
+ r\[aq]<span[\[ha]>]+id=\[dq]title\[dq][\[ha]>]*>([\[ha]<]+)<\[aq],
+ webpage, \[aq]description\[aq], fatal=False)
+\f[R]
+.fi
+.PP
+With \f[V]fatal\f[R] set to \f[V]False\f[R] if \f[V]_search_regex\f[R]
+fails to extract \f[V]description\f[R] it will emit a warning and
+continue extraction.
+.PP
+You can also pass \f[V]default=<some fallback value>\f[R], for example:
+.IP
+.nf
+\f[C]
+description = self._search_regex(
+ r\[aq]<span[\[ha]>]+id=\[dq]title\[dq][\[ha]>]*>([\[ha]<]+)<\[aq],
+ webpage, \[aq]description\[aq], default=None)
+\f[R]
+.fi
+.PP
+On failure this code will silently continue the extraction with
+\f[V]description\f[R] set to \f[V]None\f[R].
+That is useful for metafields that may or may not be present.
+.SS Provide fallbacks
+.PP
+When extracting metadata try to do so from multiple sources.
+For example if \f[V]title\f[R] 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.
+.SS Example
+.PP
+Say \f[V]meta\f[R] from the previous example has a \f[V]title\f[R] and
+you are about to extract it.
+Since \f[V]title\f[R] is a mandatory meta field you should end up with
+something like:
+.IP
+.nf
+\f[C]
+title = meta[\[aq]title\[aq]]
+\f[R]
+.fi
+.PP
+If \f[V]title\f[R] disappears from \f[V]meta\f[R] in future due to some
+changes on the hoster\[cq]s side the extraction would fail since
+\f[V]title\f[R] is mandatory.
+That\[cq]s expected.
+.PP
+Assume that you have some another source you can extract \f[V]title\f[R]
+from, for example \f[V]og:title\f[R] HTML meta of a \f[V]webpage\f[R].
+In this case you can provide a fallback scenario:
+.IP
+.nf
+\f[C]
+title = meta.get(\[aq]title\[aq]) or self._og_search_title(webpage)
+\f[R]
+.fi
+.PP
+This code will try to extract from \f[V]meta\f[R] first and if it fails
+it will try extracting \f[V]og:title\f[R] from a \f[V]webpage\f[R].
+.SS Regular expressions
+.SS Don\[cq]t capture groups you don\[cq]t use
+.PP
+Capturing group must be an indication that it\[cq]s used somewhere in
+the code.
+Any group that is not used must be non capturing.
+.SS Example
+.PP
+Don\[cq]t capture id attribute name here since you can\[cq]t use it for
+anything anyway.
+.PP
+Correct:
+.IP
+.nf
+\f[C]
+r\[aq](?:id|ID)=(?P<id>\[rs]d+)\[aq]
+\f[R]
+.fi
+.PP
+Incorrect:
+.IP
+.nf
+\f[C]
+r\[aq](id|ID)=(?P<id>\[rs]d+)\[aq]
+\f[R]
+.fi
+.SS Make regular expressions relaxed and flexible
+.PP
+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.
+.SS Example
+.PP
+Say you need to extract \f[V]title\f[R] from the following HTML code:
+.IP
+.nf
+\f[C]
+<span style=\[dq]position: absolute; left: 910px; width: 90px; float: right; z-index: 9999;\[dq] class=\[dq]title\[dq]>some fancy title</span>
+\f[R]
+.fi
+.PP
+The code for that task should look similar to:
+.IP
+.nf
+\f[C]
+title = self._search_regex(
+ r\[aq]<span[\[ha]>]+class=\[dq]title\[dq][\[ha]>]*>([\[ha]<]+)\[aq], webpage, \[aq]title\[aq])
+\f[R]
+.fi
+.PP
+Or even better:
+.IP
+.nf
+\f[C]
+title = self._search_regex(
+ r\[aq]<span[\[ha]>]+class=([\[dq]\[rs]\[aq]])title\[rs]1[\[ha]>]*>(?P<title>[\[ha]<]+)\[aq],
+ webpage, \[aq]title\[aq], group=\[aq]title\[aq])
+\f[R]
+.fi
+.PP
+Note how you tolerate potential changes in the \f[V]style\f[R]
+attribute\[cq]s value or switch from using double quotes to single for
+\f[V]class\f[R] attribute:
+.PP
+The code definitely should not look like:
+.IP
+.nf
+\f[C]
+title = self._search_regex(
+ r\[aq]<span style=\[dq]position: absolute; left: 910px; width: 90px; float: right; z-index: 9999;\[dq] class=\[dq]title\[dq]>(.*?)</span>\[aq],
+ webpage, \[aq]title\[aq], group=\[aq]title\[aq])
+\f[R]
+.fi
+.SS Long lines policy
+.PP
+There is a soft limit to keep lines of code under 80 characters long.
+This means it should be respected if possible and if it does not make
+readability and code maintenance worse.
+.PP
+For example, you should \f[B]never\f[R] split long string literals like
+URLs or some other often copied entities over multiple lines to fit this
+limit:
+.PP
+Correct:
+.IP
+.nf
+\f[C]
+\[aq]https://www.youtube.com/watch?v=FqZTN594JQw&list=PLMYEtVRpaqY00V9W81Cwmzp6N6vZqfUKD4\[aq]
+\f[R]
+.fi
+.PP
+Incorrect:
+.IP
+.nf
+\f[C]
+\[aq]https://www.youtube.com/watch?v=FqZTN594JQw&list=\[aq]
+\[aq]PLMYEtVRpaqY00V9W81Cwmzp6N6vZqfUKD4\[aq]
+\f[R]
+.fi
+.SS Inline values
+.PP
+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.
+.SS Example
+.PP
+Correct:
+.IP
+.nf
+\f[C]
+title = self._html_search_regex(r\[aq]<title>([\[ha]<]+)</title>\[aq], webpage, \[aq]title\[aq])
+\f[R]
+.fi
+.PP
+Incorrect:
+.IP
+.nf
+\f[C]
+TITLE_RE = r\[aq]<title>([\[ha]<]+)</title>\[aq]
+# ...some lines of code...
+title = self._html_search_regex(TITLE_RE, webpage, \[aq]title\[aq])
+\f[R]
+.fi
+.SS Collapse fallbacks
+.PP
+Multiple fallback values can quickly become unwieldy.
+Collapse multiple fallback values into a single expression via a list of
+patterns.
+.SS Example
+.PP
+Good:
+.IP
+.nf
+\f[C]
+description = self._html_search_meta(
+ [\[aq]og:description\[aq], \[aq]description\[aq], \[aq]twitter:description\[aq]],
+ webpage, \[aq]description\[aq], default=None)
+\f[R]
+.fi
+.PP
+Unwieldy:
+.IP
+.nf
+\f[C]
+description = (
+ self._og_search_description(webpage, default=None)
+ or self._html_search_meta(\[aq]description\[aq], webpage, default=None)
+ or self._html_search_meta(\[aq]twitter:description\[aq], webpage, default=None))
+\f[R]
+.fi
+.PP
+Methods supporting list of patterns are: \f[V]_search_regex\f[R],
+\f[V]_html_search_regex\f[R], \f[V]_og_search_property\f[R],
+\f[V]_html_search_meta\f[R].
+.SS Trailing parentheses
+.PP
+Always move trailing parentheses after the last argument.
+.SS Example
+.PP
+Correct:
+.IP
+.nf
+\f[C]
+ lambda x: x[\[aq]ResultSet\[aq]][\[aq]Result\[aq]][0][\[aq]VideoUrlSet\[aq]][\[aq]VideoUrl\[aq]],
+ list)
+\f[R]
+.fi
+.PP
+Incorrect:
+.IP
+.nf
+\f[C]
+ lambda x: x[\[aq]ResultSet\[aq]][\[aq]Result\[aq]][0][\[aq]VideoUrlSet\[aq]][\[aq]VideoUrl\[aq]],
+ list,
+)
+\f[R]
+.fi
+.SS Use convenience conversion and parsing functions
+.PP
+Wrap all extracted numeric data into safe functions from
+\f[V]youtube_dl/utils.py\f[R] (https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/utils.py):
+\f[V]int_or_none\f[R], \f[V]float_or_none\f[R].
+Use them for string to number conversions as well.
+.PP
+Use \f[V]url_or_none\f[R] for safe URL processing.
+.PP
+Use \f[V]try_get\f[R] for safe metadata extraction from parsed JSON.
+.PP
+Use \f[V]unified_strdate\f[R] for uniform \f[V]upload_date\f[R] or any
+\f[V]YYYYMMDD\f[R] meta field extraction, \f[V]unified_timestamp\f[R]
+for uniform \f[V]timestamp\f[R] extraction, \f[V]parse_filesize\f[R] for
+\f[V]filesize\f[R] extraction, \f[V]parse_count\f[R] for count meta
+fields extraction, \f[V]parse_resolution\f[R], \f[V]parse_duration\f[R]
+for \f[V]duration\f[R] extraction, \f[V]parse_age_limit\f[R] for
+\f[V]age_limit\f[R] extraction.
+.PP
+Explore
+\f[V]youtube_dl/utils.py\f[R] (https://github.com/ytdl-org/youtube-dl/blob/master/youtube_dl/utils.py)
+for more useful convenience functions.
+.SS More examples
+.SS Safely extract optional description from parsed JSON
+.IP
+.nf
+\f[C]
+description = try_get(response, lambda x: x[\[aq]result\[aq]][\[aq]video\[aq]][0][\[aq]summary\[aq]], compat_str)
+\f[R]
+.fi
+.SS Safely extract more optional metadata
+.IP
+.nf
+\f[C]
+video = try_get(response, lambda x: x[\[aq]result\[aq]][\[aq]video\[aq]][0], dict) or {}
+description = video.get(\[aq]summary\[aq])
+duration = float_or_none(video.get(\[aq]durationMs\[aq]), scale=1000)
+view_count = int_or_none(video.get(\[aq]views\[aq]))
+\f[R]
+.fi
+.SH EMBEDDING YOUTUBE-DL
+.PP
+youtube-dl makes the best effort to be a good command-line program, and
+thus should be callable from any programming language.
+If you encounter any problems parsing its output, feel free to create a
+report (https://github.com/ytdl-org/youtube-dl/issues/new).
+.PP
+From a Python program, you can embed youtube-dl in a more powerful
+fashion, like this:
+.IP
+.nf
+\f[C]
+from __future__ import unicode_literals
+import youtube_dl
+
+ydl_opts = {}
+with youtube_dl.YoutubeDL(ydl_opts) as ydl:
+ ydl.download([\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]])
+\f[R]
+.fi
+.PP
+Most likely, you\[cq]ll want to use various options.
+For a list of options available, have a look at
+\f[V]youtube_dl/YoutubeDL.py\f[R] (https://github.com/ytdl-org/youtube-dl/blob/3e4cedf9e8cd3157df2457df7274d0c842421945/youtube_dl/YoutubeDL.py#L137-L312).
+For a start, if you want to intercept youtube-dl\[cq]s output, set a
+\f[V]logger\f[R] object.
+.PP
+Here\[cq]s a more complete example of a program that outputs only errors
+(and a short message after the download is finished), and
+downloads/converts the video to an mp3 file:
+.IP
+.nf
+\f[C]
+from __future__ import unicode_literals
+import youtube_dl
+
+
+class MyLogger(object):
+ def debug(self, msg):
+ pass
+
+ def warning(self, msg):
+ pass
+
+ def error(self, msg):
+ print(msg)
+
+
+def my_hook(d):
+ if d[\[aq]status\[aq]] == \[aq]finished\[aq]:
+ print(\[aq]Done downloading, now converting ...\[aq])
+
+
+ydl_opts = {
+ \[aq]format\[aq]: \[aq]bestaudio/best\[aq],
+ \[aq]postprocessors\[aq]: [{
+ \[aq]key\[aq]: \[aq]FFmpegExtractAudio\[aq],
+ \[aq]preferredcodec\[aq]: \[aq]mp3\[aq],
+ \[aq]preferredquality\[aq]: \[aq]192\[aq],
+ }],
+ \[aq]logger\[aq]: MyLogger(),
+ \[aq]progress_hooks\[aq]: [my_hook],
+}
+with youtube_dl.YoutubeDL(ydl_opts) as ydl:
+ ydl.download([\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]])
+\f[R]
+.fi
+.SH BUGS
+.PP
+Bugs and suggestions should be reported in the issue tracker:
+<https://github.com/ytdl-org/youtube-dl/issues> (<https://yt-dl.org/bug>
+is an alias for this).
+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 the IRC channel
+#youtube-dl (irc://chat.freenode.net/#youtube-dl) on freenode
+(webchat (https://webchat.freenode.net/?randomnick=1&channels=youtube-dl)).
+.SS Opening a bug report or suggestion
+.PP
+Be sure to follow instructions provided \f[B]below\f[R] and \f[B]in the
+issue tracker\f[R].
+Complete the appropriate issue template fully.
+Consider whether your problem is covered by an existing issue: if so,
+follow the discussion there.
+Avoid commenting on existing duplicate issues as such comments do not
+add to the discussion of the issue and are liable to be treated as spam.
+.PP
+\f[B]Please include the full output of youtube-dl when run with
+\f[VB]-v\f[B]\f[R], i.e.\ \f[B]add\f[R] \f[V]-v\f[R] flag to \f[B]your
+command line\f[R], copy the \f[B]whole\f[R] output and post it in the
+issue body wrapped in \[ga]\[ga]\[ga] for better formatting.
+It should look similar to this:
+.IP
+.nf
+\f[C]
+$ youtube-dl -v <your command line>
+[debug] System config: []
+[debug] User config: []
+[debug] Command-line args: [u\[aq]-v\[aq], u\[aq]https://www.youtube.com/watch?v=BaW_jenozKcj\[aq]]
+[debug] Encodings: locale cp1251, fs mbcs, out cp866, pref cp1251
+[debug] youtube-dl version 2015.12.06
+[debug] Git HEAD: 135392e
+[debug] Python version 2.6.6 - Windows-2003Server-5.2.3790-SP2
+[debug] exe versions: ffmpeg N-75573-g1d0487f, ffprobe N-75573-g1d0487f, rtmpdump 2.4
+[debug] Proxy map: {}
+\&...
+\f[R]
+.fi
+.PP
+\f[B]Do not post screenshots of verbose logs; only plain text is
+acceptable.\f[R]
+.PP
+The output (including the first lines) contains important debugging
+information.
+Issues without the full output are often not reproducible and therefore
+do not get solved in short order, if ever.
+.PP
+Finally please review your issue to avoid various common mistakes (you
+can and should use this as a checklist) listed below.
+.SS Is the description of the issue itself sufficient?
+.PP
+We often get issue reports that are hard to understand.
+To avoid subsequent clarifications, and to assist participants who are
+not native English speakers, please elaborate on what feature you are
+requesting, or what bug you want to be fixed.
+.PP
+Make sure that it\[cq]s obvious
+.IP \[bu] 2
+What the problem is
+.IP \[bu] 2
+How it could be fixed
+.IP \[bu] 2
+How your proposed solution would look
+.PP
+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\[cq]re often too polite to close the issue outright, but the missing
+info makes misinterpretation likely.
+As a committer myself, I often get frustrated by these issues, since the
+only possible way for me to move forward on them is to ask for
+clarification over and over.
+.PP
+For bug reports, this means that your report should contain the
+\f[I]complete\f[R] output of youtube-dl when called with the
+\f[V]-v\f[R] 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.
+.PP
+If your server has multiple IPs or you suspect censorship, adding
+\f[V]--call-home\f[R] may be a good idea to get more diagnostics.
+If the error is \f[V]ERROR: Unable to extract ...\f[R] and you cannot
+reproduce it from multiple countries, add \f[V]--dump-pages\f[R]
+(warning: this will yield a rather large output, redirect it to the file
+\f[V]log.txt\f[R] by adding \f[V]>log.txt 2>&1\f[R] to your
+command-line) or upload the \f[V].dump\f[R] files you get when you add
+\f[V]--write-pages\f[R] somewhere (https://gist.github.com/).
+.PP
+\f[B]Site support requests must contain an example URL\f[R].
+An example URL is a URL you might want to download, like
+\f[V]https://www.youtube.com/watch?v=BaW_jenozKc\f[R].
+There should be an obvious video present.
+Except under very special circumstances, the main page of a video
+service (e.g.\ \f[V]https://www.youtube.com/\f[R]) is \f[I]not\f[R] an
+example URL.
+.SS Is the issue already documented?
+.PP
+Make sure that someone has not already opened the issue you\[cq]re
+trying to open.
+Search at the top of the window or browse the GitHub
+Issues (https://github.com/ytdl-org/youtube-dl/search?type=Issues) of
+this repository.
+Initially, at least, use the search term \f[V]-label:duplicate\f[R] to
+focus on active issues.
+If there is an issue, feel free to write something along the lines of
+\[lq]This affects me as well, with version 2015.01.01.
+Here is some more information on the issue: \&...\[rq].
+While some issues may be old, a new post into them often spurs rapid
+activity.
+.SS Are you using the latest version?
+.PP
+Before reporting any issue, type \f[V]youtube-dl -U\f[R].
+This should report that you\[cq]re up-to-date.
+About 20% of the reports we receive are already fixed, but people are
+using outdated versions.
+This goes for feature requests as well.
+.SS Why are existing options not enough?
+.PP
+Before requesting a new feature, please have a quick peek at the list of
+supported
+options (https://github.com/ytdl-org/youtube-dl/blob/master/README.md#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 \f[I]not\f[R] solve your problem.
+.SS Is there enough context in your bug report?
+.PP
+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).
+.PP
+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.
+.SS Does the issue involve one problem, and one problem only?
+.PP
+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.
+.PP
+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\[cq]t post bug reports alongside feature
+requests.
+As a rule of thumb, a feature request does not include outputs of
+youtube-dl 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.
+.SS Is anyone going to need the feature?
+.PP
+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.
+.SS Is your question about youtube-dl?
+.PP
+It may sound strange, but some bug reports we receive are completely
+unrelated to youtube-dl and relate to a different, or even the
+reporter\[cq]s own, application.
+Please make sure that you are actually using youtube-dl.
+If you are using a UI for youtube-dl, report the bug to the maintainer
+of the actual application providing the UI.
+On the other hand, if your UI for youtube-dl fails in some way you
+believe is related to youtube-dl, by all means, go ahead and report the
+bug.
+.SH COPYRIGHT
+.PP
+youtube-dl is released into the public domain by the copyright holders.
+.PP
+This README file was originally written by Daniel
+Bolton (https://github.com/dbbolton) and is likewise released into the
+public domain.
diff --git a/network/youtube-dl/youtube-dl.SlackBuild b/network/youtube-dl/youtube-dl.SlackBuild
index bb76a74605..6cd1b232de 100644
--- a/network/youtube-dl/youtube-dl.SlackBuild
+++ b/network/youtube-dl/youtube-dl.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for youtube-dl
# Copyright 2010 GPLeo <gpleomail@gmail.com>
# Copyright 2010-2012 byteframe <byteframe@gmail.com>
-# Copyright 2015-2021 Dimitris Zlatanidis Orestiada, Greece
+# Copyright 2015-2024 Dimitris Zlatanidis Orestiada, Greece
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=youtube-dl
-VERSION=${VERSION:-2021.12.17}
+VERSION=${VERSION:-2021.12.17+20240122_dc512e3a8}
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
@@ -72,23 +69,34 @@ mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
mkdir $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz -C $PRGNAM-$VERSION --strip-components 1
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz -C $PRGNAM-$VERSION --strip-components 1
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 \
+ -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 {} \;
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} +
# setup.py patch
patch -p1 < $CWD/setup.patch
+# 20230627 bkw: building the man page would require pandoc or pandoc-bin.
+# Easier to just include the prebuilt manpage in the SBo repo.
+cat $CWD/$PRGNAM.1 > $PRGNAM.1
+
+# 20230627 bkw: Unusual for a python build, we need this for the man page
+# and shell completions. It also installs the all-in-one youtube-dl
+# 'frozen' binary, which we don't want, but setup.py will overwrite that.
+make install DESTDIR=$PKG PREFIX=/usr MANDIR=/usr/man
+
python2 setup.py install --root=$PKG
python3 setup.py install --root=$PKG
-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
+gzip $PKG/usr/man/man*/*
+
+# 20230627 bkw: this empty dir gets created, but we don't need it.
+rmdir $PKG/usr/doc/youtube_dl
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a README.md LICENSE AUTHORS ChangeLog $PKG/usr/doc/$PRGNAM-$VERSION
@@ -96,7 +104,6 @@ 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/youtube-dl/youtube-dl.info b/network/youtube-dl/youtube-dl.info
index dfac06b7ad..31283cb3ac 100644
--- a/network/youtube-dl/youtube-dl.info
+++ b/network/youtube-dl/youtube-dl.info
@@ -1,10 +1,10 @@
PRGNAM="youtube-dl"
-VERSION="2021.12.17"
-HOMEPAGE="http://www.yt-dl.org/"
-DOWNLOAD="https://www.yt-dl.org/downloads/2021.12.17/youtube-dl-2021.12.17.tar.gz"
-MD5SUM="64b373c39c30c314cda9396c6a3f731f"
+VERSION="2021.12.17+20240122_dc512e3a8"
+HOMEPAGE="https://github.com/ytdl-org/youtube-dl"
+DOWNLOAD="https://downloads.sourceforge.net/project/dslackw/src/youtube-dl/youtube-dl-2021.12.17%2B20240122_dc512e3a8.tar.xz"
+MD5SUM="2d69b297389b1a890811d01fb772b49f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="Dimitris Zlatanidis"
-EMAIL="d.zlatanidis@gmail.com"
+EMAIL="dslackw@gmail.com"
diff --git a/network/youtube-upload/youtube-upload.info b/network/youtube-upload/youtube-upload.info
index 3a49a303c1..e71d44f433 100644
--- a/network/youtube-upload/youtube-upload.info
+++ b/network/youtube-upload/youtube-upload.info
@@ -1,7 +1,7 @@
PRGNAM="youtube-upload"
VERSION="0.8.0"
HOMEPAGE="https://github.com/tokland/youtube-upload/"
-DOWNLOAD="https://github.com/tokland/youtube-upload/archive/0.8.0.tar.gz"
+DOWNLOAD="https://github.com/tokland/youtube-upload/archive/0.8.0/youtube-upload-0.8.0.tar.gz"
MD5SUM="71c7c31f340b3b3ae30ffbe8dd23b0c1"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
diff --git a/network/yt-dlp/README b/network/yt-dlp/README
index c2c3676d77..d734d0d4a5 100644
--- a/network/yt-dlp/README
+++ b/network/yt-dlp/README
@@ -3,3 +3,32 @@ yt-dlp (download videos from youtube)
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 has several optional runtime dependencies, which aren't
+required for most common use cases. They don't have to be installed
+before yt-dlp is built, and can be installed after yt-dlp (which won't
+need a rebuild).
+
+mutagen: Required for embedding thumbnails in mp4 files (the
+--embed-thumbnail option).
+
+phantomjs: Used in extractors where JavaScript needs to be run. It's
+not clear to the SlackBuild author which content providers need this;
+YouTube does not.
+
+python3-websockets: Required for downloading over WebSocket ("ws://"
+and "wss://" URLs). If you've never heard of the WebSocket protocol,
+you probably don't need this.
+
+pycryptodomex: For decrypting AES-128 HLS streams and various other
+data. It's not clear to the SlackBuild author what content providers
+use AES-128. YouTube does not, that I've ever seen.
+
+secretstorage: For --cookies-from-browser to access the Gnome keyring
+while decrypting cookies of Chromium-based browsers on Linux.
+
+xattr: For the --xattrs and --xattr-set-filesize option.
+
+If you do not have the necessary dependencies for a task you are
+attempting, yt-dlp will warn you. All the currently available
+dependencies are visible at the top of the --verbose output.
diff --git a/network/yt-dlp/yt-dlp.1 b/network/yt-dlp/yt-dlp.1
new file mode 100644
index 0000000000..93f52b4056
--- /dev/null
+++ b/network/yt-dlp/yt-dlp.1
@@ -0,0 +1,3324 @@
+.\"t
+.\" Automatically generated by Pandoc 2.9.2.1
+.\"
+.TH "yt-dlp" "1" "" "" ""
+.hy
+.SH NAME
+.PP
+yt-dlp - A youtube-dl fork with additional features and patches
+.SH SYNOPSIS
+.PP
+\f[B]yt-dlp\f[R] [OPTIONS] URL [URL...]
+.SH DESCRIPTION
+.PP
+yt-dlp is a youtube-dl (https://github.com/ytdl-org/youtube-dl) fork
+based on the now inactive
+youtube-dlc (https://github.com/blackjack4494/yt-dlc).
+The main focus of this project is adding new features and patches while
+also keeping up to date with the original project
+.SH OPTIONS
+.SS General Options:
+.TP
+-h, --help
+Print this help text and exit
+.TP
+--version
+Print program version and exit
+.TP
+-U, --update
+Update this program to the latest version
+.TP
+--no-update
+Do not check for updates (default)
+.TP
+--update-to \f[I][CHANNEL]\[at][TAG]\f[R]
+Upgrade/downgrade to a specific version.
+CHANNEL can be a repository as well.
+CHANNEL and TAG default to \[dq]stable\[dq] and \[dq]latest\[dq]
+respectively if omitted; See \[dq]UPDATE\[dq] for details.
+Supported channels: stable, nightly, master
+.TP
+-i, --ignore-errors
+Ignore download and postprocessing errors.
+The download will be considered successful even if the postprocessing
+fails
+.TP
+--no-abort-on-error
+Continue with next video on download errors; e.g.
+to skip unavailable videos in a playlist (default)
+.TP
+--abort-on-error
+Abort downloading of further videos if an error occurs (Alias:
+--no-ignore-errors)
+.TP
+--dump-user-agent
+Display the current user-agent and exit
+.TP
+--list-extractors
+List all supported extractors and exit
+.TP
+--extractor-descriptions
+Output descriptions of all supported extractors and exit
+.TP
+--use-extractors \f[I]NAMES\f[R]
+Extractor names to use separated by commas.
+You can also use regexes, \[dq]all\[dq], \[dq]default\[dq] and
+\[dq]end\[dq] (end URL matching); e.g.
+--ies \[dq]holodex.*,end,youtube\[dq].
+Prefix the name with a \[dq]-\[dq] to exclude it, e.g.
+--ies default,-generic.
+Use --list-extractors for a list of extractor names.
+(Alias: --ies)
+.TP
+--default-search \f[I]PREFIX\f[R]
+Use this prefix for unqualified URLs.
+E.g.
+\[dq]gvsearch2:python\[dq] downloads two videos from google videos for
+the search term \[dq]python\[dq].
+Use the value \[dq]auto\[dq] to let yt-dlp guess (\[dq]auto_warning\[dq]
+to emit a warning when guessing).
+\[dq]error\[dq] just throws an error.
+The default value \[dq]fixup_error\[dq] repairs broken URLs, but emits
+an error if this is not possible instead of searching
+.TP
+--ignore-config
+Don\[aq]t load any more configuration files except those given by
+--config-locations.
+For backward compatibility, if this option is found inside the system
+configuration file, the user configuration is not loaded.
+(Alias: --no-config)
+.TP
+--no-config-locations
+Do not load any custom configuration files (default).
+When given inside a configuration file, ignore all previous
+--config-locations defined in the current file
+.TP
+--config-locations \f[I]PATH\f[R]
+Location of the main configuration file; either the path to the config
+or its containing directory (\[dq]-\[dq] for stdin).
+Can be used multiple times and inside other configuration files
+.TP
+--flat-playlist
+Do not extract the videos of a playlist, only list them
+.TP
+--no-flat-playlist
+Fully extract the videos of a playlist (default)
+.TP
+--live-from-start
+Download livestreams from the start.
+Currently only supported for YouTube (Experimental)
+.TP
+--no-live-from-start
+Download livestreams from the current time (default)
+.TP
+--wait-for-video \f[I]MIN[-MAX]\f[R]
+Wait for scheduled streams to become available.
+Pass the minimum number of seconds (or range) to wait between retries
+.TP
+--no-wait-for-video
+Do not wait for scheduled streams (default)
+.TP
+--mark-watched
+Mark videos watched (even with --simulate)
+.TP
+--no-mark-watched
+Do not mark videos watched (default)
+.TP
+--color \f[I][STREAM:]POLICY\f[R]
+Whether to emit color codes in output, optionally prefixed by the STREAM
+(stdout or stderr) to apply the setting to.
+Can be one of \[dq]always\[dq], \[dq]auto\[dq] (default),
+\[dq]never\[dq], or \[dq]no_color\[dq] (use non color terminal
+sequences).
+Can be used multiple times
+.TP
+--compat-options \f[I]OPTS\f[R]
+Options that can help keep compatibility with youtube-dl or youtube-dlc
+configurations by reverting some of the changes made in yt-dlp.
+See \[dq]Differences in default behavior\[dq] for details
+.TP
+--alias \f[I]ALIASES OPTIONS\f[R]
+Create aliases for an option string.
+Unless an alias starts with a dash \[dq]-\[dq], it is prefixed with
+\[dq]--\[dq].
+Arguments are parsed according to the Python string formatting
+mini-language.
+E.g.
+--alias get-audio,-X \[dq]-S=aext:{0},abr -x --audio-format {0}\[dq]
+creates options \[dq]--get-audio\[dq] and \[dq]-X\[dq] that takes an
+argument (ARG0) and expands to \[dq]-S=aext:ARG0,abr -x --audio-format
+ARG0\[dq].
+All defined aliases are listed in the --help output.
+Alias options can trigger more aliases; so be careful to avoid defining
+recursive options.
+As a safety measure, each alias may be triggered a maximum of 100 times.
+This option can be used multiple times
+.SS Network Options:
+.TP
+--proxy \f[I]URL\f[R]
+Use the specified HTTP/HTTPS/SOCKS proxy.
+To enable SOCKS proxy, specify a proper scheme, e.g.
+socks5://user:pass\[at]127.0.0.1:1080/.
+Pass in an empty string (--proxy \[dq]\[dq]) for direct connection
+.TP
+--socket-timeout \f[I]SECONDS\f[R]
+Time to wait before giving up, in seconds
+.TP
+--source-address \f[I]IP\f[R]
+Client-side IP address to bind to
+.TP
+-4, --force-ipv4
+Make all connections via IPv4
+.TP
+-6, --force-ipv6
+Make all connections via IPv6
+.TP
+--enable-file-urls
+Enable file:// URLs.
+This is disabled by default for security reasons.
+.SS Geo-restriction:
+.TP
+--geo-verification-proxy \f[I]URL\f[R]
+Use this proxy to verify the IP address for some geo-restricted sites.
+The default proxy specified by --proxy (or none, if the option is not
+present) is used for the actual downloading
+.TP
+--xff \f[I]VALUE\f[R]
+How to fake X-Forwarded-For HTTP header to try bypassing geographic
+restriction.
+One of \[dq]default\[dq] (only when known to be useful),
+\[dq]never\[dq], an IP block in CIDR notation, or a two-letter ISO
+3166-2 country code
+.SS Video Selection:
+.TP
+-I, --playlist-items \f[I]ITEM_SPEC\f[R]
+Comma separated playlist_index of the items to download.
+You can specify a range using \[dq][START]:[STOP][:STEP]\[dq].
+For backward compatibility, START-STOP is also supported.
+Use negative indices to count from the right and negative STEP to
+download in reverse order.
+E.g.
+\[dq]-I 1:3,7,-5::2\[dq] used on a playlist of size 15 will download the
+items at index 1,2,3,7,11,13,15
+.TP
+--min-filesize \f[I]SIZE\f[R]
+Abort download if filesize is smaller than SIZE, e.g.
+50k or 44.6M
+.TP
+--max-filesize \f[I]SIZE\f[R]
+Abort download if filesize is larger than SIZE, e.g.
+50k or 44.6M
+.TP
+--date \f[I]DATE\f[R]
+Download only videos uploaded on this date.
+The date can be \[dq]YYYYMMDD\[dq] or in the format
+[now|today|yesterday][-N[day|week|month|year]].
+E.g.
+\[dq]--date today-2weeks\[dq] downloads only videos uploaded on the same
+day two weeks ago
+.TP
+--datebefore \f[I]DATE\f[R]
+Download only videos uploaded on or before this date.
+The date formats accepted is the same as --date
+.TP
+--dateafter \f[I]DATE\f[R]
+Download only videos uploaded on or after this date.
+The date formats accepted is the same as --date
+.TP
+--match-filters \f[I]FILTER\f[R]
+Generic video filter.
+Any \[dq]OUTPUT TEMPLATE\[dq] field can be compared with a number or a
+string using the operators defined in \[dq]Filtering Formats\[dq].
+You can also simply specify a field to match if the field is present,
+use \[dq]!field\[dq] to check if the field is not present, and
+\[dq]&\[dq] to check multiple conditions.
+Use a \[dq]\[dq] to escape \[dq]&\[dq] or quotes if needed.
+If used multiple times, the filter matches if atleast one of the
+conditions are met.
+E.g.
+--match-filter !is_live --match-filter \[dq]like_count>?100 &
+description\[ti]=\[aq](?i)& dogs\[dq] matches only videos that are not
+live OR those that have a like count more than 100 (or the like field is
+not available) and also has a description that contains the phrase
+\[dq]cats & dogs\[dq] (caseless).
+Use \[dq]--match-filter -\[dq] to interactively ask whether to download
+each video
+.TP
+--no-match-filters
+Do not use any --match-filter (default)
+.TP
+--break-match-filters \f[I]FILTER\f[R]
+Same as \[dq]--match-filters\[dq] but stops the download process when a
+video is rejected
+.TP
+--no-break-match-filters
+Do not use any --break-match-filters (default)
+.TP
+--no-playlist
+Download only the video, if the URL refers to a video and a playlist
+.TP
+--yes-playlist
+Download the playlist, if the URL refers to a video and a playlist
+.TP
+--age-limit \f[I]YEARS\f[R]
+Download only videos suitable for the given age
+.TP
+--download-archive \f[I]FILE\f[R]
+Download only videos not listed in the archive file.
+Record the IDs of all downloaded videos in it
+.TP
+--no-download-archive
+Do not use archive file (default)
+.TP
+--max-downloads \f[I]NUMBER\f[R]
+Abort after downloading NUMBER files
+.TP
+--break-on-existing
+Stop the download process when encountering a file that is in the
+archive
+.TP
+--break-per-input
+Alters --max-downloads, --break-on-existing, --break-match-filter, and
+autonumber to reset per input URL
+.TP
+--no-break-per-input
+--break-on-existing and similar options terminates the entire download
+queue
+.TP
+--skip-playlist-after-errors \f[I]N\f[R]
+Number of allowed failures until the rest of the playlist is skipped
+.SS Download Options:
+.TP
+-N, --concurrent-fragments \f[I]N\f[R]
+Number of fragments of a dash/hlsnative video that should be downloaded
+concurrently (default is 1)
+.TP
+-r, --limit-rate \f[I]RATE\f[R]
+Maximum download rate in bytes per second, e.g.
+50K or 4.2M
+.TP
+--throttled-rate \f[I]RATE\f[R]
+Minimum download rate in bytes per second below which throttling is
+assumed and the video data is re-extracted, e.g.
+100K
+.TP
+-R, --retries \f[I]RETRIES\f[R]
+Number of retries (default is 10), or \[dq]infinite\[dq]
+.TP
+--file-access-retries \f[I]RETRIES\f[R]
+Number of times to retry on file access error (default is 3), or
+\[dq]infinite\[dq]
+.TP
+--fragment-retries \f[I]RETRIES\f[R]
+Number of retries for a fragment (default is 10), or \[dq]infinite\[dq]
+(DASH, hlsnative and ISM)
+.TP
+--retry-sleep \f[I][TYPE:]EXPR\f[R]
+Time to sleep between retries in seconds (optionally) prefixed by the
+type of retry (http (default), fragment, file_access, extractor) to
+apply the sleep to.
+EXPR can be a number, linear=START[:END[:STEP=1]] or
+exp=START[:END[:BASE=2]].
+This option can be used multiple times to set the sleep for the
+different retry types, e.g.
+--retry-sleep linear=1::2 --retry-sleep fragment:exp=1:20
+.TP
+--skip-unavailable-fragments
+Skip unavailable fragments for DASH, hlsnative and ISM downloads
+(default) (Alias: --no-abort-on-unavailable-fragments)
+.TP
+--abort-on-unavailable-fragments
+Abort download if a fragment is unavailable (Alias:
+--no-skip-unavailable-fragments)
+.TP
+--keep-fragments
+Keep downloaded fragments on disk after downloading is finished
+.TP
+--no-keep-fragments
+Delete downloaded fragments after downloading is finished (default)
+.TP
+--buffer-size \f[I]SIZE\f[R]
+Size of download buffer, e.g.
+1024 or 16K (default is 1024)
+.TP
+--resize-buffer
+The buffer size is automatically resized from an initial value of
+--buffer-size (default)
+.TP
+--no-resize-buffer
+Do not automatically adjust the buffer size
+.TP
+--http-chunk-size \f[I]SIZE\f[R]
+Size of a chunk for chunk-based HTTP downloading, e.g.
+10485760 or 10M (default is disabled).
+May be useful for bypassing bandwidth throttling imposed by a webserver
+(experimental)
+.TP
+--playlist-random
+Download playlist videos in random order
+.TP
+--lazy-playlist
+Process entries in the playlist as they are received.
+This disables n_entries, --playlist-random and --playlist-reverse
+.TP
+--no-lazy-playlist
+Process videos in the playlist only after the entire playlist is parsed
+(default)
+.TP
+--xattr-set-filesize
+Set file xattribute ytdl.filesize with expected file size
+.TP
+--hls-use-mpegts
+Use the mpegts container for HLS videos; allowing some players to play
+the video while downloading, and reducing the chance of file corruption
+if download is interrupted.
+This is enabled by default for live streams
+.TP
+--no-hls-use-mpegts
+Do not use the mpegts container for HLS videos.
+This is default when not downloading live streams
+.TP
+--download-sections \f[I]REGEX\f[R]
+Download only chapters that match the regular expression.
+A \[dq]\f[I]\[dq] prefix denotes time-range instead of chapter. Negative
+timestamps are calculated from the end. \[dq]\f[R]from-url\[dq] can be
+used to download between the \[dq]start_time\[dq] and \[dq]end_time\[dq]
+extracted from the URL.
+Needs ffmpeg.
+This option can be used multiple times to download multiple sections,
+e.g.
+--download-sections \[dq]*10:15-inf\[dq] --download-sections
+\[dq]intro\[dq]
+.TP
+--downloader \f[I][PROTO:]NAME\f[R]
+Name or path of the external downloader to use (optionally) prefixed by
+the protocols (http, ftp, m3u8, dash, rstp, rtmp, mms) to use it for.
+Currently supports native, aria2c, avconv, axel, curl, ffmpeg, httpie,
+wget.
+You can use this option multiple times to set different downloaders for
+different protocols.
+E.g.
+--downloader aria2c --downloader \[dq]dash,m3u8:native\[dq] will use
+aria2c for http/ftp downloads, and the native downloader for dash/m3u8
+downloads (Alias: --external-downloader)
+.TP
+--downloader-args \f[I]NAME:ARGS\f[R]
+Give these arguments to the external downloader.
+Specify the downloader name and the arguments separated by a colon
+\[dq]:\[dq].
+For ffmpeg, arguments can be passed to different positions using the
+same syntax as --postprocessor-args.
+You can use this option multiple times to give different arguments to
+different downloaders (Alias: --external-downloader-args)
+.SS Filesystem Options:
+.TP
+-a, --batch-file \f[I]FILE\f[R]
+File containing URLs to download (\[dq]-\[dq] for stdin), one URL per
+line.
+Lines starting with \[dq]#\[dq], \[dq];\[dq] or \[dq]]\[dq] are
+considered as comments and ignored
+.TP
+--no-batch-file
+Do not read URLs from batch file (default)
+.TP
+-P, --paths \f[I][TYPES:]PATH\f[R]
+The paths where the files should be downloaded.
+Specify the type of file and the path separated by a colon \[dq]:\[dq].
+All the same TYPES as --output are supported.
+Additionally, you can also provide \[dq]home\[dq] (default) and
+\[dq]temp\[dq] paths.
+All intermediary files are first downloaded to the temp path and then
+the final files are moved over to the home path after download is
+finished.
+This option is ignored if --output is an absolute path
+.TP
+-o, --output \f[I][TYPES:]TEMPLATE\f[R]
+Output filename template; see \[dq]OUTPUT TEMPLATE\[dq] for details
+.TP
+--output-na-placeholder \f[I]TEXT\f[R]
+Placeholder for unavailable fields in \[dq]OUTPUT TEMPLATE\[dq]
+(default: \[dq]NA\[dq])
+.TP
+--restrict-filenames
+Restrict filenames to only ASCII characters, and avoid \[dq]&\[dq] and
+spaces in filenames
+.TP
+--no-restrict-filenames
+Allow Unicode characters, \[dq]&\[dq] and spaces in filenames (default)
+.TP
+--windows-filenames
+Force filenames to be Windows-compatible
+.TP
+--no-windows-filenames
+Make filenames Windows-compatible only if using Windows (default)
+.TP
+--trim-filenames \f[I]LENGTH\f[R]
+Limit the filename length (excluding extension) to the specified number
+of characters
+.TP
+-w, --no-overwrites
+Do not overwrite any files
+.TP
+--force-overwrites
+Overwrite all video and metadata files.
+This option includes --no-continue
+.TP
+--no-force-overwrites
+Do not overwrite the video, but overwrite related files (default)
+.TP
+-c, --continue
+Resume partially downloaded files/fragments (default)
+.TP
+--no-continue
+Do not resume partially downloaded fragments.
+If the file is not fragmented, restart download of the entire file
+.TP
+--part
+Use .part files instead of writing directly into output file (default)
+.TP
+--no-part
+Do not use .part files - write directly into output file
+.TP
+--mtime
+Use the Last-modified header to set the file modification time (default)
+.TP
+--no-mtime
+Do not use the Last-modified header to set the file modification time
+.TP
+--write-description
+Write video description to a .description file
+.TP
+--no-write-description
+Do not write video description (default)
+.TP
+--write-info-json
+Write video metadata to a .info.json file (this may contain personal
+information)
+.TP
+--no-write-info-json
+Do not write video metadata (default)
+.TP
+--write-playlist-metafiles
+Write playlist metadata in addition to the video metadata when using
+--write-info-json, --write-description etc.
+(default)
+.TP
+--no-write-playlist-metafiles
+Do not write playlist metadata when using --write-info-json,
+--write-description etc.
+.TP
+--clean-info-json
+Remove some internal metadata such as filenames from the infojson
+(default)
+.TP
+--no-clean-info-json
+Write all fields to the infojson
+.TP
+--write-comments
+Retrieve video comments to be placed in the infojson.
+The comments are fetched even without this option if the extraction is
+known to be quick (Alias: --get-comments)
+.TP
+--no-write-comments
+Do not retrieve video comments unless the extraction is known to be
+quick (Alias: --no-get-comments)
+.TP
+--load-info-json \f[I]FILE\f[R]
+JSON file containing the video information (created with the
+\[dq]--write-info-json\[dq] option)
+.TP
+--cookies \f[I]FILE\f[R]
+Netscape formatted file to read cookies from and dump cookie jar in
+.TP
+--no-cookies
+Do not read/dump cookies from/to file (default)
+.TP
+--cookies-from-browser \f[I]BROWSER[+KEYRING][:PROFILE][::CONTAINER]\f[R]
+The name of the browser to load cookies from.
+Currently supported browsers are: brave, chrome, chromium, edge,
+firefox, opera, safari, vivaldi.
+Optionally, the KEYRING used for decrypting Chromium cookies on Linux,
+the name/path of the PROFILE to load cookies from, and the CONTAINER
+name (if Firefox) (\[dq]none\[dq] for no container) can be given with
+their respective seperators.
+By default, all containers of the most recently accessed profile are
+used.
+Currently supported keyrings are: basictext, gnomekeyring, kwallet,
+kwallet5, kwallet6
+.TP
+--no-cookies-from-browser
+Do not load cookies from browser (default)
+.TP
+--cache-dir \f[I]DIR\f[R]
+Location in the filesystem where yt-dlp can store some downloaded
+information (such as client ids and signatures) permanently.
+By default ${XDG_CACHE_HOME}/yt-dlp
+.TP
+--no-cache-dir
+Disable filesystem caching
+.TP
+--rm-cache-dir
+Delete all filesystem cache files
+.SS Thumbnail Options:
+.TP
+--write-thumbnail
+Write thumbnail image to disk
+.TP
+--no-write-thumbnail
+Do not write thumbnail image to disk (default)
+.TP
+--write-all-thumbnails
+Write all thumbnail image formats to disk
+.TP
+--list-thumbnails
+List available thumbnails of each video.
+Simulate unless --no-simulate is used
+.SS Internet Shortcut Options:
+.TP
+--write-link
+Write an internet shortcut file, depending on the current platform
+(.url, .webloc or .desktop).
+The URL may be cached by the OS
+.TP
+--write-url-link
+Write a .url Windows internet shortcut.
+The OS caches the URL based on the file path
+.TP
+--write-webloc-link
+Write a .webloc macOS internet shortcut
+.TP
+--write-desktop-link
+Write a .desktop Linux internet shortcut
+.SS Verbosity and Simulation Options:
+.TP
+-q, --quiet
+Activate quiet mode.
+If used with --verbose, print the log to stderr
+.TP
+--no-quiet
+Deactivate quiet mode.
+(Default)
+.TP
+--no-warnings
+Ignore warnings
+.TP
+-s, --simulate
+Do not download the video and do not write anything to disk
+.TP
+--no-simulate
+Download the video even if printing/listing options are used
+.TP
+--ignore-no-formats-error
+Ignore \[dq]No video formats\[dq] error.
+Useful for extracting metadata even if the videos are not actually
+available for download (experimental)
+.TP
+--no-ignore-no-formats-error
+Throw error when no downloadable video formats are found (default)
+.TP
+--skip-download
+Do not download the video but write all related files (Alias:
+--no-download)
+.TP
+-O, --print \f[I][WHEN:]TEMPLATE\f[R]
+Field name or output template to print to screen, optionally prefixed
+with when to print it, separated by a \[dq]:\[dq].
+Supported values of \[dq]WHEN\[dq] are the same as that of
+--use-postprocessor (default: video).
+Implies --quiet.
+Implies --simulate unless --no-simulate or later stages of WHEN are
+used.
+This option can be used multiple times
+.TP
+--print-to-file \f[I][WHEN:]TEMPLATE FILE\f[R]
+Append given template to the file.
+The values of WHEN and TEMPLATE are same as that of --print.
+FILE uses the same syntax as the output template.
+This option can be used multiple times
+.TP
+-j, --dump-json
+Quiet, but print JSON information for each video.
+Simulate unless --no-simulate is used.
+See \[dq]OUTPUT TEMPLATE\[dq] for a description of available keys
+.TP
+-J, --dump-single-json
+Quiet, but print JSON information for each url or infojson passed.
+Simulate unless --no-simulate is used.
+If the URL refers to a playlist, the whole playlist information is
+dumped in a single line
+.TP
+--force-write-archive
+Force download archive entries to be written as far as no errors occur,
+even if -s or another simulation option is used (Alias:
+--force-download-archive)
+.TP
+--newline
+Output progress bar as new lines
+.TP
+--no-progress
+Do not print progress bar
+.TP
+--progress
+Show progress bar, even if in quiet mode
+.TP
+--console-title
+Display progress in console titlebar
+.TP
+--progress-template \f[I][TYPES:]TEMPLATE\f[R]
+Template for progress outputs, optionally prefixed with one of
+\[dq]download:\[dq] (default), \[dq]download-title:\[dq] (the console
+title), \[dq]postprocess:\[dq], or \[dq]postprocess-title:\[dq].
+The video\[aq]s fields are accessible under the \[dq]info\[dq] key and
+the progress attributes are accessible under \[dq]progress\[dq] key.
+E.g.
+--console-title --progress-template
+\[dq]download-title:%(info.id)s-%(progress.eta)s\[dq]
+.TP
+-v, --verbose
+Print various debugging information
+.TP
+--dump-pages
+Print downloaded pages encoded using base64 to debug problems (very
+verbose)
+.TP
+--write-pages
+Write downloaded intermediary pages to files in the current directory to
+debug problems
+.TP
+--print-traffic
+Display sent and read HTTP traffic
+.SS Workarounds:
+.TP
+--encoding \f[I]ENCODING\f[R]
+Force the specified encoding (experimental)
+.TP
+--legacy-server-connect
+Explicitly allow HTTPS connection to servers that do not support RFC
+5746 secure renegotiation
+.TP
+--no-check-certificates
+Suppress HTTPS certificate validation
+.TP
+--prefer-insecure
+Use an unencrypted connection to retrieve information about the video
+(Currently supported only for YouTube)
+.TP
+--add-headers \f[I]FIELD:VALUE\f[R]
+Specify a custom HTTP header and its value, separated by a colon
+\[dq]:\[dq].
+You can use this option multiple times
+.TP
+--bidi-workaround
+Work around terminals that lack bidirectional text support.
+Requires bidiv or fribidi executable in PATH
+.TP
+--sleep-requests \f[I]SECONDS\f[R]
+Number of seconds to sleep between requests during data extraction
+.TP
+--sleep-interval \f[I]SECONDS\f[R]
+Number of seconds to sleep before each download.
+This is the minimum time to sleep when used along with
+--max-sleep-interval (Alias: --min-sleep-interval)
+.TP
+--max-sleep-interval \f[I]SECONDS\f[R]
+Maximum number of seconds to sleep.
+Can only be used along with --min-sleep-interval
+.TP
+--sleep-subtitles \f[I]SECONDS\f[R]
+Number of seconds to sleep before each subtitle download
+.SS Video Format Options:
+.TP
+-f, --format \f[I]FORMAT\f[R]
+Video format code, see \[dq]FORMAT SELECTION\[dq] for more details
+.TP
+-S, --format-sort \f[I]SORTORDER\f[R]
+Sort the formats by the fields given, see \[dq]Sorting Formats\[dq] for
+more details
+.TP
+--format-sort-force
+Force user specified sort order to have precedence over all fields, see
+\[dq]Sorting Formats\[dq] for more details (Alias: --S-force)
+.TP
+--no-format-sort-force
+Some fields have precedence over the user specified sort order (default)
+.TP
+--video-multistreams
+Allow multiple video streams to be merged into a single file
+.TP
+--no-video-multistreams
+Only one video stream is downloaded for each output file (default)
+.TP
+--audio-multistreams
+Allow multiple audio streams to be merged into a single file
+.TP
+--no-audio-multistreams
+Only one audio stream is downloaded for each output file (default)
+.TP
+--prefer-free-formats
+Prefer video formats with free containers over non-free ones of same
+quality.
+Use with \[dq]-S ext\[dq] to strictly prefer free containers
+irrespective of quality
+.TP
+--no-prefer-free-formats
+Don\[aq]t give any special preference to free containers (default)
+.TP
+--check-formats
+Make sure formats are selected only from those that are actually
+downloadable
+.TP
+--check-all-formats
+Check all formats for whether they are actually downloadable
+.TP
+--no-check-formats
+Do not check that the formats are actually downloadable
+.TP
+-F, --list-formats
+List available formats of each video.
+Simulate unless --no-simulate is used
+.TP
+--merge-output-format \f[I]FORMAT\f[R]
+Containers that may be used when merging formats, separated by
+\[dq]/\[dq], e.g.
+\[dq]mp4/mkv\[dq].
+Ignored if no merge is required.
+(currently supported: avi, flv, mkv, mov, mp4, webm)
+.SS Subtitle Options:
+.TP
+--write-subs
+Write subtitle file
+.TP
+--no-write-subs
+Do not write subtitle file (default)
+.TP
+--write-auto-subs
+Write automatically generated subtitle file (Alias:
+--write-automatic-subs)
+.TP
+--no-write-auto-subs
+Do not write auto-generated subtitles (default) (Alias:
+--no-write-automatic-subs)
+.TP
+--list-subs
+List available subtitles of each video.
+Simulate unless --no-simulate is used
+.TP
+--sub-format \f[I]FORMAT\f[R]
+Subtitle format; accepts formats preference, e.g.
+\[dq]srt\[dq] or \[dq]ass/srt/best\[dq]
+.TP
+--sub-langs \f[I]LANGS\f[R]
+Languages of the subtitles to download (can be regex) or \[dq]all\[dq]
+separated by commas, e.g.
+--sub-langs \[dq]en.*,ja\[dq].
+You can prefix the language code with a \[dq]-\[dq] to exclude it from
+the requested languages, e.g.
+--sub-langs all,-live_chat.
+Use --list-subs for a list of available language tags
+.SS Authentication Options:
+.TP
+-u, --username \f[I]USERNAME\f[R]
+Login with this account ID
+.TP
+-p, --password \f[I]PASSWORD\f[R]
+Account password.
+If this option is left out, yt-dlp will ask interactively
+.TP
+-2, --twofactor \f[I]TWOFACTOR\f[R]
+Two-factor authentication code
+.TP
+-n, --netrc
+Use .netrc authentication data
+.TP
+--netrc-location \f[I]PATH\f[R]
+Location of .netrc authentication data; either the path or its
+containing directory.
+Defaults to \[ti]/.netrc
+.TP
+--netrc-cmd \f[I]NETRC_CMD\f[R]
+Command to execute to get the credentials for an extractor.
+.TP
+--video-password \f[I]PASSWORD\f[R]
+Video-specific password
+.TP
+--ap-mso \f[I]MSO\f[R]
+Adobe Pass multiple-system operator (TV provider) identifier, use
+--ap-list-mso for a list of available MSOs
+.TP
+--ap-username \f[I]USERNAME\f[R]
+Multiple-system operator account login
+.TP
+--ap-password \f[I]PASSWORD\f[R]
+Multiple-system operator account password.
+If this option is left out, yt-dlp will ask interactively
+.TP
+--ap-list-mso
+List all supported multiple-system operators
+.TP
+--client-certificate \f[I]CERTFILE\f[R]
+Path to client certificate file in PEM format.
+May include the private key
+.TP
+--client-certificate-key \f[I]KEYFILE\f[R]
+Path to private key file for client certificate
+.TP
+--client-certificate-password \f[I]PASSWORD\f[R]
+Password for client certificate private key, if encrypted.
+If not provided, and the key is encrypted, yt-dlp will ask interactively
+.SS Post-Processing Options:
+.TP
+-x, --extract-audio
+Convert video files to audio-only files (requires ffmpeg and ffprobe)
+.TP
+--audio-format \f[I]FORMAT\f[R]
+Format to convert the audio to when -x is used.
+(currently supported: best (default), aac, alac, flac, m4a, mp3, opus,
+vorbis, wav).
+You can specify multiple rules using similar syntax as --remux-video
+.TP
+--audio-quality \f[I]QUALITY\f[R]
+Specify ffmpeg audio quality to use when converting the audio with -x.
+Insert a value between 0 (best) and 10 (worst) for VBR or a specific
+bitrate like 128K (default 5)
+.TP
+--remux-video \f[I]FORMAT\f[R]
+Remux the video into another container if necessary (currently
+supported: avi, flv, gif, mkv, mov, mp4, webm, aac, aiff, alac, flac,
+m4a, mka, mp3, ogg, opus, vorbis, wav).
+If target container does not support the video/audio codec, remuxing
+will fail.
+You can specify multiple rules; e.g.
+\[dq]aac>m4a/mov>mp4/mkv\[dq] will remux aac to m4a, mov to mp4 and
+anything else to mkv
+.TP
+--recode-video \f[I]FORMAT\f[R]
+Re-encode the video into another format if necessary.
+The syntax and supported formats are the same as --remux-video
+.TP
+--postprocessor-args \f[I]NAME:ARGS\f[R]
+Give these arguments to the postprocessors.
+Specify the postprocessor/executable name and the arguments separated by
+a colon \[dq]:\[dq] to give the argument to the specified
+postprocessor/executable.
+Supported PP are: Merger, ModifyChapters, SplitChapters, ExtractAudio,
+VideoRemuxer, VideoConvertor, Metadata, EmbedSubtitle, EmbedThumbnail,
+SubtitlesConvertor, ThumbnailsConvertor, FixupStretched, FixupM4a,
+FixupM3u8, FixupTimestamp and FixupDuration.
+The supported executables are: AtomicParsley, FFmpeg and FFprobe.
+You can also specify \[dq]PP+EXE:ARGS\[dq] to give the arguments to the
+specified executable only when being used by the specified
+postprocessor.
+Additionally, for ffmpeg/ffprobe, \[dq]_i\[dq]/\[dq]_o\[dq] can be
+appended to the prefix optionally followed by a number to pass the
+argument before the specified input/output file, e.g.
+--ppa \[dq]Merger+ffmpeg_i1:-v quiet\[dq].
+You can use this option multiple times to give different arguments to
+different postprocessors.
+(Alias: --ppa)
+.TP
+-k, --keep-video
+Keep the intermediate video file on disk after post-processing
+.TP
+--no-keep-video
+Delete the intermediate video file after post-processing (default)
+.TP
+--post-overwrites
+Overwrite post-processed files (default)
+.TP
+--no-post-overwrites
+Do not overwrite post-processed files
+.TP
+--embed-subs
+Embed subtitles in the video (only for mp4, webm and mkv videos)
+.TP
+--no-embed-subs
+Do not embed subtitles (default)
+.TP
+--embed-thumbnail
+Embed thumbnail in the video as cover art
+.TP
+--no-embed-thumbnail
+Do not embed thumbnail (default)
+.TP
+--embed-metadata
+Embed metadata to the video file.
+Also embeds chapters/infojson if present unless
+--no-embed-chapters/--no-embed-info-json are used (Alias:
+--add-metadata)
+.TP
+--no-embed-metadata
+Do not add metadata to file (default) (Alias: --no-add-metadata)
+.TP
+--embed-chapters
+Add chapter markers to the video file (Alias: --add-chapters)
+.TP
+--no-embed-chapters
+Do not add chapter markers (default) (Alias: --no-add-chapters)
+.TP
+--embed-info-json
+Embed the infojson as an attachment to mkv/mka video files
+.TP
+--no-embed-info-json
+Do not embed the infojson as an attachment to the video file
+.TP
+--parse-metadata \f[I][WHEN:]FROM:TO\f[R]
+Parse additional metadata like title/artist from other fields; see
+\[dq]MODIFYING METADATA\[dq] for details.
+Supported values of \[dq]WHEN\[dq] are the same as that of
+--use-postprocessor (default: pre_process)
+.TP
+--replace-in-metadata \f[I][WHEN:]FIELDS REGEX REPLACE\f[R]
+Replace text in a metadata field using the given regex.
+This option can be used multiple times.
+Supported values of \[dq]WHEN\[dq] are the same as that of
+--use-postprocessor (default: pre_process)
+.TP
+--xattrs
+Write metadata to the video file\[aq]s xattrs (using dublin core and xdg
+standards)
+.TP
+--concat-playlist \f[I]POLICY\f[R]
+Concatenate videos in a playlist.
+One of \[dq]never\[dq], \[dq]always\[dq], or \[dq]multi_video\[dq]
+(default; only when the videos form a single show).
+All the video files must have same codecs and number of streams to be
+concatable.
+The \[dq]pl_video:\[dq] prefix can be used with \[dq]--paths\[dq] and
+\[dq]--output\[dq] to set the output filename for the concatenated
+files.
+See \[dq]OUTPUT TEMPLATE\[dq] for details
+.TP
+--fixup \f[I]POLICY\f[R]
+Automatically correct known faults of the file.
+One of never (do nothing), warn (only emit a warning), detect_or_warn
+(the default; fix file if we can, warn otherwise), force (try fixing
+even if file already exists)
+.TP
+--ffmpeg-location \f[I]PATH\f[R]
+Location of the ffmpeg binary; either the path to the binary or its
+containing directory
+.TP
+--exec \f[I][WHEN:]CMD\f[R]
+Execute a command, optionally prefixed with when to execute it,
+separated by a \[dq]:\[dq].
+Supported values of \[dq]WHEN\[dq] are the same as that of
+--use-postprocessor (default: after_move).
+Same syntax as the output template can be used to pass any field as
+arguments to the command.
+If no fields are passed, %(filepath,_filename|)q is appended to the end
+of the command.
+This option can be used multiple times
+.TP
+--no-exec
+Remove any previously defined --exec
+.TP
+--convert-subs \f[I]FORMAT\f[R]
+Convert the subtitles to another format (currently supported: ass, lrc,
+srt, vtt) (Alias: --convert-subtitles)
+.TP
+--convert-thumbnails \f[I]FORMAT\f[R]
+Convert the thumbnails to another format (currently supported: jpg, png,
+webp).
+You can specify multiple rules using similar syntax as --remux-video
+.TP
+--split-chapters
+Split video into multiple files based on internal chapters.
+The \[dq]chapter:\[dq] prefix can be used with \[dq]--paths\[dq] and
+\[dq]--output\[dq] to set the output filename for the split files.
+See \[dq]OUTPUT TEMPLATE\[dq] for details
+.TP
+--no-split-chapters
+Do not split video based on chapters (default)
+.TP
+--remove-chapters \f[I]REGEX\f[R]
+Remove chapters whose title matches the given regular expression.
+The syntax is the same as --download-sections.
+This option can be used multiple times
+.TP
+--no-remove-chapters
+Do not remove any chapters from the file (default)
+.TP
+--force-keyframes-at-cuts
+Force keyframes at cuts when downloading/splitting/removing sections.
+This is slow due to needing a re-encode, but the resulting video may
+have fewer artifacts around the cuts
+.TP
+--no-force-keyframes-at-cuts
+Do not force keyframes around the chapters when cutting/splitting
+(default)
+.TP
+--use-postprocessor \f[I]NAME[:ARGS]\f[R]
+The (case sensitive) name of plugin postprocessors to be enabled, and
+(optionally) arguments to be passed to it, separated by a colon
+\[dq]:\[dq].
+ARGS are a semicolon \[dq];\[dq] delimited list of NAME=VALUE.
+The \[dq]when\[dq] argument determines when the postprocessor is
+invoked.
+It can be one of \[dq]pre_process\[dq] (after video extraction),
+\[dq]after_filter\[dq] (after video passes filter), \[dq]video\[dq]
+(after --format; before --print/--output), \[dq]before_dl\[dq] (before
+each video download), \[dq]post_process\[dq] (after each video download;
+default), \[dq]after_move\[dq] (after moving video file to it\[aq]s
+final locations), \[dq]after_video\[dq] (after downloading and
+processing all formats of a video), or \[dq]playlist\[dq] (at end of
+playlist).
+This option can be used multiple times to add different postprocessors
+.SS SponsorBlock Options:
+.PP
+Make chapter entries for, or remove various segments (sponsor,
+introductions, etc.) from downloaded YouTube videos using the
+SponsorBlock API (https://sponsor.ajay.app)
+.TP
+--sponsorblock-mark \f[I]CATS\f[R]
+SponsorBlock categories to create chapters for, separated by commas.
+Available categories are sponsor, intro, outro, selfpromo, preview,
+filler, interaction, music_offtopic, poi_highlight, chapter, all and
+default (=all).
+You can prefix the category with a \[dq]-\[dq] to exclude it.
+See [1] for description of the categories.
+E.g.
+--sponsorblock-mark all,-preview [1]
+https://wiki.sponsor.ajay.app/w/Segment_Categories
+.TP
+--sponsorblock-remove \f[I]CATS\f[R]
+SponsorBlock categories to be removed from the video file, separated by
+commas.
+If a category is present in both mark and remove, remove takes
+precedence.
+The syntax and available categories are the same as for
+--sponsorblock-mark except that \[dq]default\[dq] refers to
+\[dq]all,-filler\[dq] and poi_highlight, chapter are not available
+.TP
+--sponsorblock-chapter-title \f[I]TEMPLATE\f[R]
+An output template for the title of the SponsorBlock chapters created by
+--sponsorblock-mark.
+The only available fields are start_time, end_time, category,
+categories, name, category_names.
+Defaults to \[dq][SponsorBlock]: %(category_names)l\[dq]
+.TP
+--no-sponsorblock
+Disable both --sponsorblock-mark and --sponsorblock-remove
+.TP
+--sponsorblock-api \f[I]URL\f[R]
+SponsorBlock API location, defaults to https://sponsor.ajay.app
+.SS Extractor Options:
+.TP
+--extractor-retries \f[I]RETRIES\f[R]
+Number of retries for known extractor errors (default is 3), or
+\[dq]infinite\[dq]
+.TP
+--allow-dynamic-mpd
+Process dynamic DASH manifests (default) (Alias:
+--no-ignore-dynamic-mpd)
+.TP
+--ignore-dynamic-mpd
+Do not process dynamic DASH manifests (Alias: --no-allow-dynamic-mpd)
+.TP
+--hls-split-discontinuity
+Split HLS playlists to different formats at discontinuities such as ad
+breaks
+.TP
+--no-hls-split-discontinuity
+Do not split HLS playlists to different formats at discontinuities such
+as ad breaks (default)
+.TP
+--extractor-args \f[I]IE_KEY:ARGS\f[R]
+Pass ARGS arguments to the IE_KEY extractor.
+See \[dq]EXTRACTOR ARGUMENTS\[dq] for details.
+You can use this option multiple times to give arguments for different
+extractors
+.SH To update to nightly from stable executable/binary:
+.PP
+yt-dlp --update-to nightly
+.SH To install nightly with pip:
+.PP
+python -m pip install -U --pre yt-dlp
+.IP
+.nf
+\f[C]
+
+**Note**: The manpages, shell completion (autocomplete) files etc. are available inside the [source tarball](https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp.tar.gz)
+
+## DEPENDENCIES
+Python versions 3.8+ (CPython and PyPy) are supported. Other versions and implementations may or may not work correctly.
+
+<!-- Python 3.5+ uses VC++14 and it is already embedded in the binary created
+<!x-- https://www.microsoft.com/en-us/download/details.aspx?id=26999 --x>
+On windows, [Microsoft Visual C++ 2010 SP1 Redistributable Package (x86)](https://download.microsoft.com/download/1/6/5/165255E7-1014-4D0A-B094-B6A430A6BFFC/vcredist_x86.exe) is also necessary to run yt-dlp. You probably already have this, but if the executable throws an error due to missing \[ga]MSVCR100.dll\[ga] you need to install it manually.
+-->
+
+While all the other dependencies are optional, \[ga]ffmpeg\[ga] and \[ga]ffprobe\[ga] are highly recommended
+
+### Strongly recommended
+
+* [**ffmpeg** and **ffprobe**](https://www.ffmpeg.org) - Required for [merging separate video and audio files](#format-selection) as well as for various [post-processing](#post-processing-options) tasks. License [depends on the build](https://www.ffmpeg.org/legal.html)
+
+ There are bugs in ffmpeg that causes various issues when used alongside yt-dlp. Since ffmpeg is such an important dependency, we provide [custom builds](https://github.com/yt-dlp/FFmpeg-Builds#ffmpeg-static-auto-builds) with patches for some of these issues at [yt-dlp/FFmpeg-Builds](https://github.com/yt-dlp/FFmpeg-Builds). See [the readme](https://github.com/yt-dlp/FFmpeg-Builds#patches-applied) for details on the specific issues solved by these builds
+
+ **Important**: What you need is ffmpeg *binary*, **NOT** [the python package of the same name](https://pypi.org/project/ffmpeg)
+
+### Networking
+* [**certifi**](https://github.com/certifi/python-certifi)\[rs]* - Provides Mozilla\[aq]s root certificate bundle. Licensed under [MPLv2](https://github.com/certifi/python-certifi/blob/master/LICENSE)
+* [**brotli**](https://github.com/google/brotli)\[rs]* or [**brotlicffi**](https://github.com/python-hyper/brotlicffi) - [Brotli](https://en.wikipedia.org/wiki/Brotli) content encoding support. Both licensed under MIT <sup>[1](https://github.com/google/brotli/blob/master/LICENSE) [2](https://github.com/python-hyper/brotlicffi/blob/master/LICENSE) </sup>
+* [**websockets**](https://github.com/aaugustin/websockets)\[rs]* - For downloading over websocket. Licensed under [BSD-3-Clause](https://github.com/aaugustin/websockets/blob/main/LICENSE)
+* [**requests**](https://github.com/psf/requests)\[rs]* - HTTP library. For HTTPS proxy and persistent connections support. Licensed under [Apache-2.0](https://github.com/psf/requests/blob/main/LICENSE)
+
+### Metadata
+
+* [**mutagen**](https://github.com/quodlibet/mutagen)\[rs]* - For \[ga]--embed-thumbnail\[ga] in certain formats. Licensed under [GPLv2+](https://github.com/quodlibet/mutagen/blob/master/COPYING)
+* [**AtomicParsley**](https://github.com/wez/atomicparsley) - For \[ga]--embed-thumbnail\[ga] in \[ga]mp4\[ga]/\[ga]m4a\[ga] files when \[ga]mutagen\[ga]/\[ga]ffmpeg\[ga] cannot. Licensed under [GPLv2+](https://github.com/wez/atomicparsley/blob/master/COPYING)
+* [**xattr**](https://github.com/xattr/xattr), [**pyxattr**](https://github.com/iustin/pyxattr) or [**setfattr**](http://savannah.nongnu.org/projects/attr) - For writing xattr metadata (\[ga]--xattr\[ga]) on **Mac** and **BSD**. Licensed under [MIT](https://github.com/xattr/xattr/blob/master/LICENSE.txt), [LGPL2.1](https://github.com/iustin/pyxattr/blob/master/COPYING) and [GPLv2+](http://git.savannah.nongnu.org/cgit/attr.git/tree/doc/COPYING) respectively
+
+### Misc
+
+* [**pycryptodomex**](https://github.com/Legrandin/pycryptodome)\[rs]* - For decrypting AES-128 HLS streams and various other data. Licensed under [BSD-2-Clause](https://github.com/Legrandin/pycryptodome/blob/master/LICENSE.rst)
+* [**phantomjs**](https://github.com/ariya/phantomjs) - Used in extractors where javascript needs to be run. Licensed under [BSD-3-Clause](https://github.com/ariya/phantomjs/blob/master/LICENSE.BSD)
+* [**secretstorage**](https://github.com/mitya57/secretstorage)\[rs]* - For \[ga]--cookies-from-browser\[ga] to access the **Gnome** keyring while decrypting cookies of **Chromium**-based browsers on **Linux**. Licensed under [BSD-3-Clause](https://github.com/mitya57/secretstorage/blob/master/LICENSE)
+* Any external downloader that you want to use with \[ga]--downloader\[ga]
+
+### Deprecated
+
+* [**avconv** and **avprobe**](https://www.libav.org) - Now **deprecated** alternative to ffmpeg. License [depends on the build](https://libav.org/legal)
+* [**sponskrub**](https://github.com/faissaloo/SponSkrub) - For using the now **deprecated** [sponskrub options](#sponskrub-options). Licensed under [GPLv3+](https://github.com/faissaloo/SponSkrub/blob/master/LICENCE.md)
+* [**rtmpdump**](http://rtmpdump.mplayerhq.hu) - For downloading \[ga]rtmp\[ga] streams. ffmpeg can be used instead with \[ga]--downloader ffmpeg\[ga]. Licensed under [GPLv2+](http://rtmpdump.mplayerhq.hu)
+* [**mplayer**](http://mplayerhq.hu/design7/info.html) or [**mpv**](https://mpv.io) - For downloading \[ga]rstp\[ga]/\[ga]mms\[ga] streams. ffmpeg can be used instead with \[ga]--downloader ffmpeg\[ga]. Licensed under [GPLv2+](https://github.com/mpv-player/mpv/blob/master/Copyright)
+
+To use or redistribute the dependencies, you must agree to their respective licensing terms.
+
+The standalone release binaries are built with the Python interpreter and the packages marked with **\[rs]*** included.
+
+If you do not have the necessary dependencies for a task you are attempting, yt-dlp will warn you. All the currently available dependencies are visible at the top of the \[ga]--verbose\[ga] output
+
+
+## COMPILE
+
+### Standalone PyInstaller Builds
+To build the standalone executable, you must have Python and \[ga]pyinstaller\[ga] (plus any of yt-dlp\[aq]s [optional dependencies](#dependencies) if needed). Once you have all the necessary dependencies installed, simply run \[ga]pyinst.py\[ga]. The executable will be built for the same architecture (x86/ARM, 32/64 bit) as the Python used.
+
+ python3 -m pip install -U pyinstaller -r requirements.txt
+ python3 devscripts/make_lazy_extractors.py
+ python3 pyinst.py
+
+On some systems, you may need to use \[ga]py\[ga] or \[ga]python\[ga] instead of \[ga]python3\[ga].
+
+\[ga]pyinst.py\[ga] accepts any arguments that can be passed to \[ga]pyinstaller\[ga], such as \[ga]--onefile/-F\[ga] or \[ga]--onedir/-D\[ga], which is further [documented here](https://pyinstaller.org/en/stable/usage.html#what-to-generate).
+
+**Note**: Pyinstaller versions below 4.4 [do not support](https://github.com/pyinstaller/pyinstaller#requirements-and-tested-platforms) Python installed from the Windows store without using a virtual environment.
+
+**Important**: Running \[ga]pyinstaller\[ga] directly **without** using \[ga]pyinst.py\[ga] is **not** officially supported. This may or may not work correctly.
+
+### Platform-independent Binary (UNIX)
+You will need the build tools \[ga]python\[ga] (3.8+), \[ga]zip\[ga], \[ga]make\[ga] (GNU), \[ga]pandoc\[ga]\[rs]* and \[ga]pytest\[ga]\[rs]*.
+
+After installing these, simply run \[ga]make\[ga].
+
+You can also run \[ga]make yt-dlp\[ga] instead to compile only the binary without updating any of the additional files. (The build tools marked with **\[rs]*** are not needed for this)
+
+### Standalone Py2Exe Builds (Windows)
+
+While we provide the option to build with [py2exe](https://www.py2exe.org), it is recommended to build [using PyInstaller](#standalone-pyinstaller-builds) instead since the py2exe builds **cannot contain \[ga]pycryptodomex\[ga]/\[ga]certifi\[ga] and needs VC++14** on the target computer to run.
+
+If you wish to build it anyway, install Python and py2exe, and then simply run \[ga]setup.py py2exe\[ga]
+
+ py -m pip install -U py2exe -r requirements.txt
+ py devscripts/make_lazy_extractors.py
+ py setup.py py2exe
+
+### Related scripts
+
+* **\[ga]devscripts/update-version.py\[ga]** - Update the version number based on current date.
+* **\[ga]devscripts/set-variant.py\[ga]** - Set the build variant of the executable.
+* **\[ga]devscripts/make_changelog.py\[ga]** - Create a markdown changelog using short commit messages and update \[ga]CONTRIBUTORS\[ga] file.
+* **\[ga]devscripts/make_lazy_extractors.py\[ga]** - Create lazy extractors. Running this before building the binaries (any variant) will improve their startup performance. Set the environment variable \[ga]YTDLP_NO_LAZY_EXTRACTORS=1\[ga] if you wish to forcefully disable lazy extractor loading.
+
+Note: See their \[ga]--help\[ga] for more info.
+
+### Forking the project
+If you fork the project on GitHub, you can run your fork\[aq]s [build workflow](.github/workflows/build.yml) to automatically build the selected version(s) as artifacts. Alternatively, you can run the [release workflow](.github/workflows/release.yml) or enable the [nightly workflow](.github/workflows/release-nightly.yml) to create full (pre-)releases.
+
+# CONFIGURATION
+
+You can configure yt-dlp by placing any supported command line option to a configuration file. The configuration is loaded from the following locations:
+
+1. **Main Configuration**:
+ * The file given by \[ga]--config-location\[ga]
+1. **Portable Configuration**: (Recommended for portable installations)
+ * If using a binary, \[ga]yt-dlp.conf\[ga] in the same directory as the binary
+ * If running from source-code, \[ga]yt-dlp.conf\[ga] in the parent directory of \[ga]yt_dlp\[ga]
+1. **Home Configuration**:
+ * \[ga]yt-dlp.conf\[ga] in the home path given by \[ga]-P\[ga]
+ * If \[ga]-P\[ga] is not given, the current directory is searched
+1. **User Configuration**:
+ * \[ga]${XDG_CONFIG_HOME}/yt-dlp.conf\[ga]
+ * \[ga]${XDG_CONFIG_HOME}/yt-dlp/config\[ga] (recommended on Linux/macOS)
+ * \[ga]${XDG_CONFIG_HOME}/yt-dlp/config.txt\[ga]
+ * \[ga]${APPDATA}/yt-dlp.conf\[ga]
+ * \[ga]${APPDATA}/yt-dlp/config\[ga] (recommended on Windows)
+ * \[ga]${APPDATA}/yt-dlp/config.txt\[ga]
+ * \[ga]\[ti]/yt-dlp.conf\[ga]
+ * \[ga]\[ti]/yt-dlp.conf.txt\[ga]
+ * \[ga]\[ti]/.yt-dlp/config\[ga]
+ * \[ga]\[ti]/.yt-dlp/config.txt\[ga]
+
+ See also: [Notes about environment variables](#notes-about-environment-variables)
+1. **System Configuration**:
+ * \[ga]/etc/yt-dlp.conf\[ga]
+ * \[ga]/etc/yt-dlp/config\[ga]
+ * \[ga]/etc/yt-dlp/config.txt\[ga]
+
+E.g. with the following configuration file yt-dlp will always extract the audio, not copy the mtime, use a proxy and save all videos under \[ga]YouTube\[ga] directory in your home directory:
+\f[R]
+.fi
+.SH Lines starting with # are comments
+.SH Always extract audio
+.PP
+-x
+.SH Do not copy the mtime
+.PP
+--no-mtime
+.SH Use this proxy
+.PP
+--proxy 127.0.0.1:3128
+.SH Save all videos under YouTube directory in your home directory
+.PP
+-o \[ti]/YouTube/%(title)s.%(ext)s
+.IP
+.nf
+\f[C]
+**Note**: Options in configuration file are just the same options aka switches used in regular command line calls; thus there **must be no whitespace** after \[ga]-\[ga] or \[ga]--\[ga], e.g. \[ga]-o\[ga] or \[ga]--proxy\[ga] but not \[ga]- o\[ga] or \[ga]-- proxy\[ga]. They must also be quoted when necessary as-if it were a UNIX shell.
+
+You can use \[ga]--ignore-config\[ga] if you want to disable all configuration files for a particular yt-dlp run. If \[ga]--ignore-config\[ga] is found inside any configuration file, no further configuration will be loaded. For example, having the option in the portable configuration file prevents loading of home, user, and system configurations. Additionally, (for backward compatibility) if \[ga]--ignore-config\[ga] is found inside the system configuration file, the user configuration is not loaded.
+
+### Configuration file encoding
+
+The configuration files are decoded according to the UTF BOM if present, and in the encoding from system locale otherwise.
+
+If you want your file to be decoded differently, add \[ga]# coding: ENCODING\[ga] to the beginning of the file (e.g. \[ga]# coding: shift-jis\[ga]). There must be no characters before that, even spaces or BOM.
+
+### Authentication with netrc
+
+You may also want to configure automatic credentials storage for extractors that support authentication (by providing login and password with \[ga]--username\[ga] and \[ga]--password\[ga]) in order not to pass credentials as command line arguments on every yt-dlp execution and prevent tracking plain text passwords in the shell command history. You can achieve this using a [\[ga].netrc\[ga] file](https://stackoverflow.com/tags/.netrc/info) on a per-extractor basis. For that you will need to create a \[ga].netrc\[ga] file in \[ga]--netrc-location\[ga] and restrict permissions to read/write by only you:
+\f[R]
+.fi
+.PP
+touch ${HOME}/.netrc chmod a-rwx,u+rw ${HOME}/.netrc
+.IP
+.nf
+\f[C]
+After that you can add credentials for an extractor in the following format, where *extractor* is the name of the extractor in lowercase:
+\f[R]
+.fi
+.PP
+machine login password
+.IP
+.nf
+\f[C]
+E.g.
+\f[R]
+.fi
+.PP
+machine youtube login myaccount\[at]gmail.com password
+my_youtube_password machine twitch login my_twitch_account_name password
+my_twitch_password
+.IP
+.nf
+\f[C]
+To activate authentication with the \[ga].netrc\[ga] file you should pass \[ga]--netrc\[ga] to yt-dlp or place it in the [configuration file](#configuration).
+
+The default location of the .netrc file is \[ga]\[ti]\[ga] (see below).
+
+As an alternative to using the \[ga].netrc\[ga] file, which has the disadvantage of keeping your passwords in a plain text file, you can configure a custom shell command to provide the credentials for an extractor. This is done by providing the \[ga]--netrc-cmd\[ga] parameter, it shall output the credentials in the netrc format and return \[ga]0\[ga] on success, other values will be treated as an error. \[ga]{}\[ga] in the command will be replaced by the name of the extractor to make it possible to select the credentials for the right extractor.
+
+E.g. To use an encrypted \[ga].netrc\[ga] file stored as \[ga].authinfo.gpg\[ga]
+\f[R]
+.fi
+.PP
+yt-dlp --netrc-cmd \[aq]gpg --decrypt \[ti]/.authinfo.gpg\[aq]
+https://www.youtube.com/watch?v=BaW_jenozKc
+.IP
+.nf
+\f[C]
+
+### Notes about environment variables
+* Environment variables are normally specified as \[ga]${VARIABLE}\[ga]/\[ga]$VARIABLE\[ga] on UNIX and \[ga]%VARIABLE%\[ga] on Windows; but is always shown as \[ga]${VARIABLE}\[ga] in this documentation
+* yt-dlp also allow using UNIX-style variables on Windows for path-like options; e.g. \[ga]--output\[ga], \[ga]--config-location\[ga]
+* If unset, \[ga]${XDG_CONFIG_HOME}\[ga] defaults to \[ga]\[ti]/.config\[ga] and \[ga]${XDG_CACHE_HOME}\[ga] to \[ga]\[ti]/.cache\[ga]
+* On Windows, \[ga]\[ti]\[ga] points to \[ga]${HOME}\[ga] if present; or, \[ga]${USERPROFILE}\[ga] or \[ga]${HOMEDRIVE}${HOMEPATH}\[ga] otherwise
+* On Windows, \[ga]${USERPROFILE}\[ga] generally points to \[ga]C:\[rs]Users\[rs]<user name>\[ga] and \[ga]${APPDATA}\[ga] to \[ga]${USERPROFILE}\[rs]AppData\[rs]Roaming\[ga]
+
+# OUTPUT TEMPLATE
+
+The \[ga]-o\[ga] option is used to indicate a template for the output file names while \[ga]-P\[ga] option is used to specify the path each type of file should be saved to.
+
+
+The simplest usage of \[ga]-o\[ga] is not to set any template arguments when downloading a single file, like in \[ga]yt-dlp -o funny_video.flv \[dq]https://some/video\[dq]\[ga] (hard-coding file extension like this is _not_ recommended and could break some post-processing).
+
+It may however also contain special sequences that will be replaced when downloading each video. The special sequences may be formatted according to [Python string formatting operations](https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting), e.g. \[ga]%(NAME)s\[ga] or \[ga]%(NAME)05d\[ga]. To clarify, that is a percent symbol followed by a name in parentheses, followed by formatting operations.
+
+The field names themselves (the part inside the parenthesis) can also have some special formatting:
+
+1. **Object traversal**: The dictionaries and lists available in metadata can be traversed by using a dot \[ga].\[ga] separator; e.g. \[ga]%(tags.0)s\[ga], \[ga]%(subtitles.en.-1.ext)s\[ga]. You can do Python slicing with colon \[ga]:\[ga]; E.g. \[ga]%(id.3:7:-1)s\[ga], \[ga]%(formats.:.format_id)s\[ga]. Curly braces \[ga]{}\[ga] can be used to build dictionaries with only specific keys; e.g. \[ga]%(formats.:.{format_id,height})#j\[ga]. An empty field name \[ga]%()s\[ga] refers to the entire infodict; e.g. \[ga]%(.{id,title})s\[ga]. Note that all the fields that become available using this method are not listed below. Use \[ga]-j\[ga] to see such fields
+
+1. **Arithmetic**: Simple arithmetic can be done on numeric fields using \[ga]+\[ga], \[ga]-\[ga] and \[ga]*\[ga]. E.g. \[ga]%(playlist_index+10)03d\[ga], \[ga]%(n_entries+1-playlist_index)d\[ga]
+
+1. **Date/time Formatting**: Date/time fields can be formatted according to [strftime formatting](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes) by specifying it separated from the field name using a \[ga]>\[ga]. E.g. \[ga]%(duration>%H-%M-%S)s\[ga], \[ga]%(upload_date>%Y-%m-%d)s\[ga], \[ga]%(epoch-3600>%H-%M-%S)s\[ga]
+
+1. **Alternatives**: Alternate fields can be specified separated with a \[ga],\[ga]. E.g. \[ga]%(release_date>%Y,upload_date>%Y|Unknown)s\[ga]
+
+1. **Replacement**: A replacement value can be specified using a \[ga]&\[ga] separator according to the [\[ga]str.format\[ga] mini-language](https://docs.python.org/3/library/string.html#format-specification-mini-language). If the field is *not* empty, this replacement value will be used instead of the actual field content. This is done after alternate fields are considered; thus the replacement is used if *any* of the alternative fields is *not* empty. E.g. \[ga]%(chapters&has chapters|no chapters)s\[ga], \[ga]%(title&TITLE={:>20}|NO TITLE)s\[ga]
+
+1. **Default**: A literal default value can be specified for when the field is empty using a \[ga]|\[ga] separator. This overrides \[ga]--output-na-placeholder\[ga]. E.g. \[ga]%(uploader|Unknown)s\[ga]
+
+1. **More Conversions**: In addition to the normal format types \[ga]diouxXeEfFgGcrs\[ga], yt-dlp additionally supports converting to \[ga]B\[ga] = **B**ytes, \[ga]j\[ga] = **j**son (flag \[ga]#\[ga] for pretty-printing, \[ga]+\[ga] for Unicode), \[ga]h\[ga] = HTML escaping, \[ga]l\[ga] = a comma separated **l**ist (flag \[ga]#\[ga] for \[ga]\[rs]n\[ga] newline-separated), \[ga]q\[ga] = a string **q**uoted for the terminal (flag \[ga]#\[ga] to split a list into different arguments), \[ga]D\[ga] = add **D**ecimal suffixes (e.g. 10M) (flag \[ga]#\[ga] to use 1024 as factor), and \[ga]S\[ga] = **S**anitize as filename (flag \[ga]#\[ga] for restricted)
+
+1. **Unicode normalization**: The format type \[ga]U\[ga] can be used for NFC [Unicode normalization](https://docs.python.org/3/library/unicodedata.html#unicodedata.normalize). The alternate form flag (\[ga]#\[ga]) changes the normalization to NFD and the conversion flag \[ga]+\[ga] can be used for NFKC/NFKD compatibility equivalence normalization. E.g. \[ga]%(title)+.100U\[ga] is NFKC
+
+To summarize, the general syntax for a field is:
+\f[R]
+.fi
+.PP
+%(name[.keys][addition][>strf][,alternate][&replacement][|default])[flags][width][.precision][length]type
+.IP
+.nf
+\f[C]
+Additionally, you can set different output templates for the various metadata files separately from the general output template by specifying the type of file followed by the template separated by a colon \[ga]:\[ga]. The different file types supported are \[ga]subtitle\[ga], \[ga]thumbnail\[ga], \[ga]description\[ga], \[ga]annotation\[ga] (deprecated), \[ga]infojson\[ga], \[ga]link\[ga], \[ga]pl_thumbnail\[ga], \[ga]pl_description\[ga], \[ga]pl_infojson\[ga], \[ga]chapter\[ga], \[ga]pl_video\[ga]. E.g. \[ga]-o \[dq]%(title)s.%(ext)s\[dq] -o \[dq]thumbnail:%(title)s\[rs]%(title)s.%(ext)s\[dq]\[ga] will put the thumbnails in a folder with the same name as the video. If any of the templates is empty, that type of file will not be written. E.g. \[ga]--write-thumbnail -o \[dq]thumbnail:\[dq]\[ga] will write thumbnails only for playlists and not for video.
+
+<a id=\[dq]outtmpl-postprocess-note\[dq]/>
+
+**Note**: Due to post-processing (i.e. merging etc.), the actual output filename might differ. Use \[ga]--print after_move:filepath\[ga] to get the name after all post-processing is complete.
+
+The available fields are:
+
+ - \[ga]id\[ga] (string): Video identifier
+ - \[ga]title\[ga] (string): Video title
+ - \[ga]fulltitle\[ga] (string): Video title ignoring live timestamp and generic title
+ - \[ga]ext\[ga] (string): Video filename extension
+ - \[ga]alt_title\[ga] (string): A secondary title of the video
+ - \[ga]description\[ga] (string): The description of the video
+ - \[ga]display_id\[ga] (string): An alternative identifier for the video
+ - \[ga]uploader\[ga] (string): Full name of the video uploader
+ - \[ga]license\[ga] (string): License name the video is licensed under
+ - \[ga]creator\[ga] (string): The creator of the video
+ - \[ga]timestamp\[ga] (numeric): UNIX timestamp of the moment the video became available
+ - \[ga]upload_date\[ga] (string): Video upload date in UTC (YYYYMMDD)
+ - \[ga]release_timestamp\[ga] (numeric): UNIX timestamp of the moment the video was released
+ - \[ga]release_date\[ga] (string): The date (YYYYMMDD) when the video was released in UTC
+ - \[ga]release_year\[ga] (numeric): Year (YYYY) when the video or album was released
+ - \[ga]modified_timestamp\[ga] (numeric): UNIX timestamp of the moment the video was last modified
+ - \[ga]modified_date\[ga] (string): The date (YYYYMMDD) when the video was last modified in UTC
+ - \[ga]uploader_id\[ga] (string): Nickname or id of the video uploader
+ - \[ga]channel\[ga] (string): Full name of the channel the video is uploaded on
+ - \[ga]channel_id\[ga] (string): Id of the channel
+ - \[ga]channel_follower_count\[ga] (numeric): Number of followers of the channel
+ - \[ga]channel_is_verified\[ga] (boolean): Whether the channel is verified on the platform
+ - \[ga]location\[ga] (string): Physical location where the video was filmed
+ - \[ga]duration\[ga] (numeric): Length of the video in seconds
+ - \[ga]duration_string\[ga] (string): Length of the video (HH:mm:ss)
+ - \[ga]view_count\[ga] (numeric): How many users have watched the video on the platform
+ - \[ga]concurrent_view_count\[ga] (numeric): How many users are currently watching the video on the platform.
+ - \[ga]like_count\[ga] (numeric): Number of positive ratings of the video
+ - \[ga]dislike_count\[ga] (numeric): Number of negative ratings of the video
+ - \[ga]repost_count\[ga] (numeric): Number of reposts of the video
+ - \[ga]average_rating\[ga] (numeric): Average rating give by users, the scale used depends on the webpage
+ - \[ga]comment_count\[ga] (numeric): Number of comments on the video (For some extractors, comments are only downloaded at the end, and so this field cannot be used)
+ - \[ga]age_limit\[ga] (numeric): Age restriction for the video (years)
+ - \[ga]live_status\[ga] (string): One of \[dq]not_live\[dq], \[dq]is_live\[dq], \[dq]is_upcoming\[dq], \[dq]was_live\[dq], \[dq]post_live\[dq] (was live, but VOD is not yet processed)
+ - \[ga]is_live\[ga] (boolean): Whether this video is a live stream or a fixed-length video
+ - \[ga]was_live\[ga] (boolean): Whether this video was originally a live stream
+ - \[ga]playable_in_embed\[ga] (string): Whether this video is allowed to play in embedded players on other sites
+ - \[ga]availability\[ga] (string): Whether the video is \[dq]private\[dq], \[dq]premium_only\[dq], \[dq]subscriber_only\[dq], \[dq]needs_auth\[dq], \[dq]unlisted\[dq] or \[dq]public\[dq]
+ - \[ga]media_type\[ga] (string): The type of media as classified by the site, e.g. \[dq]episode\[dq], \[dq]clip\[dq], \[dq]trailer\[dq]
+ - \[ga]start_time\[ga] (numeric): Time in seconds where the reproduction should start, as specified in the URL
+ - \[ga]end_time\[ga] (numeric): Time in seconds where the reproduction should end, as specified in the URL
+ - \[ga]extractor\[ga] (string): Name of the extractor
+ - \[ga]extractor_key\[ga] (string): Key name of the extractor
+ - \[ga]epoch\[ga] (numeric): Unix epoch of when the information extraction was completed
+ - \[ga]autonumber\[ga] (numeric): Number that will be increased with each download, starting at \[ga]--autonumber-start\[ga], padded with leading zeros to 5 digits
+ - \[ga]video_autonumber\[ga] (numeric): Number that will be increased with each video
+ - \[ga]n_entries\[ga] (numeric): Total number of extracted items in the playlist
+ - \[ga]playlist_id\[ga] (string): Identifier of the playlist that contains the video
+ - \[ga]playlist_title\[ga] (string): Name of the playlist that contains the video
+ - \[ga]playlist\[ga] (string): \[ga]playlist_id\[ga] or \[ga]playlist_title\[ga]
+ - \[ga]playlist_count\[ga] (numeric): Total number of items in the playlist. May not be known if entire playlist is not extracted
+ - \[ga]playlist_index\[ga] (numeric): Index of the video in the playlist padded with leading zeros according the final index
+ - \[ga]playlist_autonumber\[ga] (numeric): Position of the video in the playlist download queue padded with leading zeros according to the total length of the playlist
+ - \[ga]playlist_uploader\[ga] (string): Full name of the playlist uploader
+ - \[ga]playlist_uploader_id\[ga] (string): Nickname or id of the playlist uploader
+ - \[ga]webpage_url\[ga] (string): A URL to the video webpage which if given to yt-dlp should allow to get the same result again
+ - \[ga]webpage_url_basename\[ga] (string): The basename of the webpage URL
+ - \[ga]webpage_url_domain\[ga] (string): The domain of the webpage URL
+ - \[ga]original_url\[ga] (string): The URL given by the user (or same as \[ga]webpage_url\[ga] for playlist entries)
+
+All the fields in [Filtering Formats](#filtering-formats) can also be used
+
+Available for the video that belongs to some logical chapter or section:
+
+ - \[ga]chapter\[ga] (string): Name or title of the chapter the video belongs to
+ - \[ga]chapter_number\[ga] (numeric): Number of the chapter the video belongs to
+ - \[ga]chapter_id\[ga] (string): Id of the chapter the video belongs to
+
+Available for the video that is an episode of some series or programme:
+
+ - \[ga]series\[ga] (string): Title of the series or programme the video episode belongs to
+ - \[ga]season\[ga] (string): Title of the season the video episode belongs to
+ - \[ga]season_number\[ga] (numeric): Number of the season the video episode belongs to
+ - \[ga]season_id\[ga] (string): Id of the season the video episode belongs to
+ - \[ga]episode\[ga] (string): Title of the video episode
+ - \[ga]episode_number\[ga] (numeric): Number of the video episode within a season
+ - \[ga]episode_id\[ga] (string): Id of the video episode
+
+Available for the media that is a track or a part of a music album:
+
+ - \[ga]track\[ga] (string): Title of the track
+ - \[ga]track_number\[ga] (numeric): Number of the track within an album or a disc
+ - \[ga]track_id\[ga] (string): Id of the track
+ - \[ga]artist\[ga] (string): Artist(s) of the track
+ - \[ga]genre\[ga] (string): Genre(s) of the track
+ - \[ga]album\[ga] (string): Title of the album the track belongs to
+ - \[ga]album_type\[ga] (string): Type of the album
+ - \[ga]album_artist\[ga] (string): List of all artists appeared on the album
+ - \[ga]disc_number\[ga] (numeric): Number of the disc or other physical medium the track belongs to
+
+Available only when using \[ga]--download-sections\[ga] and for \[ga]chapter:\[ga] prefix when using \[ga]--split-chapters\[ga] for videos with internal chapters:
+
+ - \[ga]section_title\[ga] (string): Title of the chapter
+ - \[ga]section_number\[ga] (numeric): Number of the chapter within the file
+ - \[ga]section_start\[ga] (numeric): Start time of the chapter in seconds
+ - \[ga]section_end\[ga] (numeric): End time of the chapter in seconds
+
+Available only when used in \[ga]--print\[ga]:
+
+ - \[ga]urls\[ga] (string): The URLs of all requested formats, one in each line
+ - \[ga]filename\[ga] (string): Name of the video file. Note that the [actual filename may differ](#outtmpl-postprocess-note)
+ - \[ga]formats_table\[ga] (table): The video format table as printed by \[ga]--list-formats\[ga]
+ - \[ga]thumbnails_table\[ga] (table): The thumbnail format table as printed by \[ga]--list-thumbnails\[ga]
+ - \[ga]subtitles_table\[ga] (table): The subtitle format table as printed by \[ga]--list-subs\[ga]
+ - \[ga]automatic_captions_table\[ga] (table): The automatic subtitle format table as printed by \[ga]--list-subs\[ga]
+
+ Available only after the video is downloaded (\[ga]post_process\[ga]/\[ga]after_move\[ga]):
+
+ - \[ga]filepath\[ga]: Actual path of downloaded video file
+
+Available only in \[ga]--sponsorblock-chapter-title\[ga]:
+
+ - \[ga]start_time\[ga] (numeric): Start time of the chapter in seconds
+ - \[ga]end_time\[ga] (numeric): End time of the chapter in seconds
+ - \[ga]categories\[ga] (list): The [SponsorBlock categories](https://wiki.sponsor.ajay.app/w/Types#Category) the chapter belongs to
+ - \[ga]category\[ga] (string): The smallest SponsorBlock category the chapter belongs to
+ - \[ga]category_names\[ga] (list): Friendly names of the categories
+ - \[ga]name\[ga] (string): Friendly name of the smallest category
+ - \[ga]type\[ga] (string): The [SponsorBlock action type](https://wiki.sponsor.ajay.app/w/Types#Action_Type) of the chapter
+
+Each aforementioned sequence when referenced in an output template will be replaced by the actual value corresponding to the sequence name. E.g. for \[ga]-o %(title)s-%(id)s.%(ext)s\[ga] and an mp4 video with title \[ga]yt-dlp test video\[ga] and id \[ga]BaW_jenozKc\[ga], this will result in a \[ga]yt-dlp test video-BaW_jenozKc.mp4\[ga] file created in the current directory.
+
+**Note**: Some of the sequences are not guaranteed to be present since they depend on the metadata obtained by a particular extractor. Such sequences will be replaced with placeholder value provided with \[ga]--output-na-placeholder\[ga] (\[ga]NA\[ga] by default).
+
+**Tip**: Look at the \[ga]-j\[ga] output to identify which fields are available for the particular URL
+
+For numeric sequences you can use [numeric related formatting](https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting); e.g. \[ga]%(view_count)05d\[ga] will result in a string with view count padded with zeros up to 5 characters, like in \[ga]00042\[ga].
+
+Output templates can also contain arbitrary hierarchical path, e.g. \[ga]-o \[dq]%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[dq]\[ga] which will result in downloading each video in a directory corresponding to this path template. Any missing directory will be automatically created for you.
+
+To use percent literals in an output template use \[ga]%%\[ga]. To output to stdout use \[ga]-o -\[ga].
+
+The current default template is \[ga]%(title)s [%(id)s].%(ext)s\[ga].
+
+In some cases, you don\[aq]t want special characters such as \[u4E2D], spaces, or &, such as when transferring the downloaded filename to a Windows system or the filename through an 8bit-unsafe channel. In these cases, add the \[ga]--restrict-filenames\[ga] flag to get a shorter title.
+
+#### Output template examples
+
+\[ga]\[ga]\[ga]bash
+$ yt-dlp --print filename -o \[dq]test video.%(ext)s\[dq] BaW_jenozKc
+test video.webm # Literal name with correct extension
+
+$ yt-dlp --print filename -o \[dq]%(title)s.%(ext)s\[dq] BaW_jenozKc
+youtube-dl test video \[aq]\[aq]_\[:a]\[u21AD]\[u1D550].webm # All kinds of weird characters
+
+$ yt-dlp --print filename -o \[dq]%(title)s.%(ext)s\[dq] BaW_jenozKc --restrict-filenames
+youtube-dl_test_video_.webm # Restricted file name
+
+# Download YouTube playlist videos in separate directory indexed by video order in a playlist
+$ yt-dlp -o \[dq]%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[dq] \[dq]https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re\[dq]
+
+# Download YouTube playlist videos in separate directories according to their uploaded year
+$ yt-dlp -o \[dq]%(upload_date>%Y)s/%(title)s.%(ext)s\[dq] \[dq]https://www.youtube.com/playlist?list=PLwiyx1dc3P2JR9N8gQaQN_BCvlSlap7re\[dq]
+
+# Prefix playlist index with \[dq] - \[dq] separator, but only if it is available
+$ yt-dlp -o \[dq]%(playlist_index&{} - |)s%(title)s.%(ext)s\[dq] BaW_jenozKc \[dq]https://www.youtube.com/user/TheLinuxFoundation/playlists\[dq]
+
+# Download all playlists of YouTube channel/user keeping each playlist in separate directory:
+$ yt-dlp -o \[dq]%(uploader)s/%(playlist)s/%(playlist_index)s - %(title)s.%(ext)s\[dq] \[dq]https://www.youtube.com/user/TheLinuxFoundation/playlists\[dq]
+
+# Download Udemy course keeping each chapter in separate directory under MyVideos directory in your home
+$ yt-dlp -u user -p password -P \[dq]\[ti]/MyVideos\[dq] -o \[dq]%(playlist)s/%(chapter_number)s - %(chapter)s/%(title)s.%(ext)s\[dq] \[dq]https://www.udemy.com/java-tutorial\[dq]
+
+# Download entire series season keeping each series and each season in separate directory under C:/MyVideos
+$ yt-dlp -P \[dq]C:/MyVideos\[dq] -o \[dq]%(series)s/%(season_number)s - %(season)s/%(episode_number)s - %(episode)s.%(ext)s\[dq] \[dq]https://videomore.ru/kino_v_detalayah/5_sezon/367617\[dq]
+
+# Download video as \[dq]C:\[rs]MyVideos\[rs]uploader\[rs]title.ext\[dq], subtitles as \[dq]C:\[rs]MyVideos\[rs]subs\[rs]uploader\[rs]title.ext\[dq]
+# and put all temporary files in \[dq]C:\[rs]MyVideos\[rs]tmp\[dq]
+$ yt-dlp -P \[dq]C:/MyVideos\[dq] -P \[dq]temp:tmp\[dq] -P \[dq]subtitle:subs\[dq] -o \[dq]%(uploader)s/%(title)s.%(ext)s\[dq] BaW_jenoz --write-subs
+
+# Download video as \[dq]C:\[rs]MyVideos\[rs]uploader\[rs]title.ext\[dq] and subtitles as \[dq]C:\[rs]MyVideos\[rs]uploader\[rs]subs\[rs]title.ext\[dq]
+$ yt-dlp -P \[dq]C:/MyVideos\[dq] -o \[dq]%(uploader)s/%(title)s.%(ext)s\[dq] -o \[dq]subtitle:%(uploader)s/subs/%(title)s.%(ext)s\[dq] BaW_jenozKc --write-subs
+
+# Stream the video being downloaded to stdout
+$ yt-dlp -o - BaW_jenozKc
+\f[R]
+.fi
+.SH FORMAT SELECTION
+.PP
+By default, yt-dlp tries to download the best available quality if you
+\f[B]don\[aq]t\f[R] pass any options.
+This is generally equivalent to using
+\f[C]-f bestvideo*+bestaudio/best\f[R].
+However, if multiple audiostreams is enabled
+(\f[C]--audio-multistreams\f[R]), the default format changes to
+\f[C]-f bestvideo+bestaudio/best\f[R].
+Similarly, if ffmpeg is unavailable, or if you use yt-dlp to stream to
+\f[C]stdout\f[R] (\f[C]-o -\f[R]), the default becomes
+\f[C]-f best/bestvideo+bestaudio\f[R].
+.PP
+\f[B]Deprecation warning\f[R]: Latest versions of yt-dlp can stream
+multiple formats to the stdout simultaneously using ffmpeg.
+So, in future versions, the default for this will be set to
+\f[C]-f bv*+ba/b\f[R] similar to normal downloads.
+If you want to preserve the \f[C]-f b/bv+ba\f[R] setting, it is
+recommended to explicitly specify it in the configuration options.
+.PP
+The general syntax for format selection is \f[C]-f FORMAT\f[R] (or
+\f[C]--format FORMAT\f[R]) where \f[C]FORMAT\f[R] is a \f[I]selector
+expression\f[R], i.e.
+an expression that describes format or formats you would like to
+download.
+.PP
+The simplest case is requesting a specific format; e.g.
+with \f[C]-f 22\f[R] you can download the format with format code equal
+to 22.
+You can get the list of available format codes for particular video
+using \f[C]--list-formats\f[R] or \f[C]-F\f[R].
+Note that these format codes are extractor specific.
+.PP
+You can also use a file extension (currently \f[C]3gp\f[R],
+\f[C]aac\f[R], \f[C]flv\f[R], \f[C]m4a\f[R], \f[C]mp3\f[R],
+\f[C]mp4\f[R], \f[C]ogg\f[R], \f[C]wav\f[R], \f[C]webm\f[R] are
+supported) to download the best quality format of a particular file
+extension served as a single file, e.g.
+\f[C]-f webm\f[R] will download the best quality format with the
+\f[C]webm\f[R] extension served as a single file.
+.PP
+You can use \f[C]-f -\f[R] to interactively provide the format selector
+\f[I]for each video\f[R]
+.PP
+You can also use special names to select particular edge case formats:
+.IP \[bu] 2
+\f[C]all\f[R]: Select \f[B]all formats\f[R] separately
+.IP \[bu] 2
+\f[C]mergeall\f[R]: Select and \f[B]merge all formats\f[R] (Must be used
+with \f[C]--audio-multistreams\f[R], \f[C]--video-multistreams\f[R] or
+both)
+.IP \[bu] 2
+\f[C]b*\f[R], \f[C]best*\f[R]: Select the best quality format that
+\f[B]contains either\f[R] a video or an audio or both (ie;
+\f[C]vcodec!=none or acodec!=none\f[R])
+.IP \[bu] 2
+\f[C]b\f[R], \f[C]best\f[R]: Select the best quality format that
+\f[B]contains both\f[R] video and audio.
+Equivalent to \f[C]best*[vcodec!=none][acodec!=none]\f[R]
+.IP \[bu] 2
+\f[C]bv\f[R], \f[C]bestvideo\f[R]: Select the best quality
+\f[B]video-only\f[R] format.
+Equivalent to \f[C]best*[acodec=none]\f[R]
+.IP \[bu] 2
+\f[C]bv*\f[R], \f[C]bestvideo*\f[R]: Select the best quality format that
+\f[B]contains video\f[R].
+It may also contain audio.
+Equivalent to \f[C]best*[vcodec!=none]\f[R]
+.IP \[bu] 2
+\f[C]ba\f[R], \f[C]bestaudio\f[R]: Select the best quality
+\f[B]audio-only\f[R] format.
+Equivalent to \f[C]best*[vcodec=none]\f[R]
+.IP \[bu] 2
+\f[C]ba*\f[R], \f[C]bestaudio*\f[R]: Select the best quality format that
+\f[B]contains audio\f[R].
+It may also contain video.
+Equivalent to \f[C]best*[acodec!=none]\f[R] (Do not
+use! (https://github.com/yt-dlp/yt-dlp/issues/979#issuecomment-919629354))
+.IP \[bu] 2
+\f[C]w*\f[R], \f[C]worst*\f[R]: Select the worst quality format that
+contains either a video or an audio
+.IP \[bu] 2
+\f[C]w\f[R], \f[C]worst\f[R]: Select the worst quality format that
+contains both video and audio.
+Equivalent to \f[C]worst*[vcodec!=none][acodec!=none]\f[R]
+.IP \[bu] 2
+\f[C]wv\f[R], \f[C]worstvideo\f[R]: Select the worst quality video-only
+format.
+Equivalent to \f[C]worst*[acodec=none]\f[R]
+.IP \[bu] 2
+\f[C]wv*\f[R], \f[C]worstvideo*\f[R]: Select the worst quality format
+that contains video.
+It may also contain audio.
+Equivalent to \f[C]worst*[vcodec!=none]\f[R]
+.IP \[bu] 2
+\f[C]wa\f[R], \f[C]worstaudio\f[R]: Select the worst quality audio-only
+format.
+Equivalent to \f[C]worst*[vcodec=none]\f[R]
+.IP \[bu] 2
+\f[C]wa*\f[R], \f[C]worstaudio*\f[R]: Select the worst quality format
+that contains audio.
+It may also contain video.
+Equivalent to \f[C]worst*[acodec!=none]\f[R]
+.PP
+For example, to download the worst quality video-only format you can use
+\f[C]-f worstvideo\f[R].
+It is however recommended not to use \f[C]worst\f[R] and related
+options.
+When your format selector is \f[C]worst\f[R], the format which is worst
+in all respects is selected.
+Most of the time, what you actually want is the video with the smallest
+filesize instead.
+So it is generally better to use \f[C]-S +size\f[R] or more rigorously,
+\f[C]-S +size,+br,+res,+fps\f[R] instead of \f[C]-f worst\f[R].
+See Sorting Formats for more details.
+.PP
+You can select the n\[aq]th best format of a type by using
+\f[C]best<type>.<n>\f[R].
+For example, \f[C]best.2\f[R] will select the 2nd best combined format.
+Similarly, \f[C]bv*.3\f[R] will select the 3rd best format that contains
+a video stream.
+.PP
+If you want to download multiple videos, and they don\[aq]t have the
+same formats available, you can specify the order of preference using
+slashes.
+Note that formats on the left hand side are preferred; e.g.
+\f[C]-f 22/17/18\f[R] will download format 22 if it\[aq]s available,
+otherwise it will download format 17 if it\[aq]s available, otherwise it
+will download format 18 if it\[aq]s available, otherwise it will
+complain that no suitable formats are available for download.
+.PP
+If you want to download several formats of the same video use a comma as
+a separator, e.g.
+\f[C]-f 22,17,18\f[R] will download all these three formats, of course
+if they are available.
+Or a more sophisticated example combined with the precedence feature:
+\f[C]-f 136/137/mp4/bestvideo,140/m4a/bestaudio\f[R].
+.PP
+You can merge the video and audio of multiple formats into a single file
+using \f[C]-f <format1>+<format2>+...\f[R] (requires ffmpeg installed);
+e.g.
+\f[C]-f bestvideo+bestaudio\f[R] will download the best video-only
+format, the best audio-only format and mux them together with ffmpeg.
+.PP
+\f[B]Deprecation warning\f[R]: Since the \f[I]below\f[R] described
+behavior is complex and counter-intuitive, this will be removed and
+multistreams will be enabled by default in the future.
+A new operator will be instead added to limit formats to single
+audio/video
+.PP
+Unless \f[C]--video-multistreams\f[R] is used, all formats with a video
+stream except the first one are ignored.
+Similarly, unless \f[C]--audio-multistreams\f[R] is used, all formats
+with an audio stream except the first one are ignored.
+E.g.
+\f[C]-f bestvideo+best+bestaudio --video-multistreams --audio-multistreams\f[R]
+will download and merge all 3 given formats.
+The resulting file will have 2 video streams and 2 audio streams.
+But \f[C]-f bestvideo+best+bestaudio --no-video-multistreams\f[R] will
+download and merge only \f[C]bestvideo\f[R] and \f[C]bestaudio\f[R].
+\f[C]best\f[R] is ignored since another format containing a video stream
+(\f[C]bestvideo\f[R]) has already been selected.
+The order of the formats is therefore important.
+\f[C]-f best+bestaudio --no-audio-multistreams\f[R] will download only
+\f[C]best\f[R] while \f[C]-f bestaudio+best --no-audio-multistreams\f[R]
+will ignore \f[C]best\f[R] and download only \f[C]bestaudio\f[R].
+.SS Filtering Formats
+.PP
+You can also filter the video formats by putting a condition in
+brackets, as in \f[C]-f \[dq]best[height=720]\[dq]\f[R] (or
+\f[C]-f \[dq][filesize>10M]\[dq]\f[R] since filters without a selector
+are interpreted as \f[C]best\f[R]).
+.PP
+The following numeric meta fields can be used with comparisons
+\f[C]<\f[R], \f[C]<=\f[R], \f[C]>\f[R], \f[C]>=\f[R], \f[C]=\f[R]
+(equals), \f[C]!=\f[R] (not equals):
+.IP \[bu] 2
+\f[C]filesize\f[R]: The number of bytes, if known in advance
+.IP \[bu] 2
+\f[C]filesize_approx\f[R]: An estimate for the number of bytes
+.IP \[bu] 2
+\f[C]width\f[R]: Width of the video, if known
+.IP \[bu] 2
+\f[C]height\f[R]: Height of the video, if known
+.IP \[bu] 2
+\f[C]aspect_ratio\f[R]: Aspect ratio of the video, if known
+.IP \[bu] 2
+\f[C]tbr\f[R]: Average bitrate of audio and video in KBit/s
+.IP \[bu] 2
+\f[C]abr\f[R]: Average audio bitrate in KBit/s
+.IP \[bu] 2
+\f[C]vbr\f[R]: Average video bitrate in KBit/s
+.IP \[bu] 2
+\f[C]asr\f[R]: Audio sampling rate in Hertz
+.IP \[bu] 2
+\f[C]fps\f[R]: Frame rate
+.IP \[bu] 2
+\f[C]audio_channels\f[R]: The number of audio channels
+.IP \[bu] 2
+\f[C]stretched_ratio\f[R]: \f[C]width:height\f[R] of the video\[aq]s
+pixels, if not square
+.PP
+Also filtering work for comparisons \f[C]=\f[R] (equals),
+\f[C]\[ha]=\f[R] (starts with), \f[C]$=\f[R] (ends with), \f[C]*=\f[R]
+(contains), \f[C]\[ti]=\f[R] (matches regex) and following string meta
+fields:
+.IP \[bu] 2
+\f[C]url\f[R]: Video URL
+.IP \[bu] 2
+\f[C]ext\f[R]: File extension
+.IP \[bu] 2
+\f[C]acodec\f[R]: Name of the audio codec in use
+.IP \[bu] 2
+\f[C]vcodec\f[R]: Name of the video codec in use
+.IP \[bu] 2
+\f[C]container\f[R]: Name of the container format
+.IP \[bu] 2
+\f[C]protocol\f[R]: The protocol that will be used for the actual
+download, lower-case (\f[C]http\f[R], \f[C]https\f[R], \f[C]rtsp\f[R],
+\f[C]rtmp\f[R], \f[C]rtmpe\f[R], \f[C]mms\f[R], \f[C]f4m\f[R],
+\f[C]ism\f[R], \f[C]http_dash_segments\f[R], \f[C]m3u8\f[R], or
+\f[C]m3u8_native\f[R])
+.IP \[bu] 2
+\f[C]language\f[R]: Language code
+.IP \[bu] 2
+\f[C]dynamic_range\f[R]: The dynamic range of the video
+.IP \[bu] 2
+\f[C]format_id\f[R]: A short description of the format
+.IP \[bu] 2
+\f[C]format\f[R]: A human-readable description of the format
+.IP \[bu] 2
+\f[C]format_note\f[R]: Additional info about the format
+.IP \[bu] 2
+\f[C]resolution\f[R]: Textual description of width and height
+.PP
+Any string comparison may be prefixed with negation \f[C]!\f[R] in order
+to produce an opposite comparison, e.g.
+\f[C]!*=\f[R] (does not contain).
+The comparand of a string comparison needs to be quoted with either
+double or single quotes if it contains spaces or special characters
+other than \f[C]._-\f[R].
+.PP
+\f[B]Note\f[R]: None of the aforementioned meta fields are guaranteed to
+be present since this solely depends on the metadata obtained by
+particular extractor, i.e.
+the metadata offered by the website.
+Any other field made available by the extractor can also be used for
+filtering.
+.PP
+Formats for which the value is not known are excluded unless you put a
+question mark (\f[C]?\f[R]) after the operator.
+You can combine format filters, so
+\f[C]-f \[dq]bv[height<=?720][tbr>500]\[dq]\f[R] selects up to 720p
+videos (or videos where the height is not known) with a bitrate of at
+least 500 KBit/s.
+You can also use the filters with \f[C]all\f[R] to download all formats
+that satisfy the filter, e.g.
+\f[C]-f \[dq]all[vcodec=none]\[dq]\f[R] selects all audio-only formats.
+.PP
+Format selectors can also be grouped using parentheses; e.g.
+\f[C]-f \[dq](mp4,webm)[height<480]\[dq]\f[R] will download the best
+pre-merged mp4 and webm formats with a height lower than 480.
+.SS Sorting Formats
+.PP
+You can change the criteria for being considered the \f[C]best\f[R] by
+using \f[C]-S\f[R] (\f[C]--format-sort\f[R]).
+The general format for this is \f[C]--format-sort field1,field2...\f[R].
+.PP
+The available fields are:
+.IP \[bu] 2
+\f[C]hasvid\f[R]: Gives priority to formats that have a video stream
+.IP \[bu] 2
+\f[C]hasaud\f[R]: Gives priority to formats that have an audio stream
+.IP \[bu] 2
+\f[C]ie_pref\f[R]: The format preference
+.IP \[bu] 2
+\f[C]lang\f[R]: The language preference
+.IP \[bu] 2
+\f[C]quality\f[R]: The quality of the format
+.IP \[bu] 2
+\f[C]source\f[R]: The preference of the source
+.IP \[bu] 2
+\f[C]proto\f[R]: Protocol used for download
+(\f[C]https\f[R]/\f[C]ftps\f[R] > \f[C]http\f[R]/\f[C]ftp\f[R] >
+\f[C]m3u8_native\f[R]/\f[C]m3u8\f[R] > \f[C]http_dash_segments\f[R]>
+\f[C]websocket_frag\f[R] > \f[C]mms\f[R]/\f[C]rtsp\f[R] >
+\f[C]f4f\f[R]/\f[C]f4m\f[R])
+.IP \[bu] 2
+\f[C]vcodec\f[R]: Video Codec (\f[C]av01\f[R] > \f[C]vp9.2\f[R] >
+\f[C]vp9\f[R] > \f[C]h265\f[R] > \f[C]h264\f[R] > \f[C]vp8\f[R] >
+\f[C]h263\f[R] > \f[C]theora\f[R] > other)
+.IP \[bu] 2
+\f[C]acodec\f[R]: Audio Codec (\f[C]flac\f[R]/\f[C]alac\f[R] >
+\f[C]wav\f[R]/\f[C]aiff\f[R] > \f[C]opus\f[R] > \f[C]vorbis\f[R] >
+\f[C]aac\f[R] > \f[C]mp4a\f[R] > \f[C]mp3\f[R] > \f[C]ac4\f[R] >
+\f[C]eac3\f[R] > \f[C]ac3\f[R] > \f[C]dts\f[R] > other)
+.IP \[bu] 2
+\f[C]codec\f[R]: Equivalent to \f[C]vcodec,acodec\f[R]
+.IP \[bu] 2
+\f[C]vext\f[R]: Video Extension (\f[C]mp4\f[R] > \f[C]mov\f[R] >
+\f[C]webm\f[R] > \f[C]flv\f[R] > other).
+If \f[C]--prefer-free-formats\f[R] is used, \f[C]webm\f[R] is preferred.
+.IP \[bu] 2
+\f[C]aext\f[R]: Audio Extension (\f[C]m4a\f[R] > \f[C]aac\f[R] >
+\f[C]mp3\f[R] > \f[C]ogg\f[R] > \f[C]opus\f[R] > \f[C]webm\f[R] >
+other).
+If \f[C]--prefer-free-formats\f[R] is used, the order changes to
+\f[C]ogg\f[R] > \f[C]opus\f[R] > \f[C]webm\f[R] > \f[C]mp3\f[R] >
+\f[C]m4a\f[R] > \f[C]aac\f[R]
+.IP \[bu] 2
+\f[C]ext\f[R]: Equivalent to \f[C]vext,aext\f[R]
+.IP \[bu] 2
+\f[C]filesize\f[R]: Exact filesize, if known in advance
+.IP \[bu] 2
+\f[C]fs_approx\f[R]: Approximate filesize
+.IP \[bu] 2
+\f[C]size\f[R]: Exact filesize if available, otherwise approximate
+filesize
+.IP \[bu] 2
+\f[C]height\f[R]: Height of video
+.IP \[bu] 2
+\f[C]width\f[R]: Width of video
+.IP \[bu] 2
+\f[C]res\f[R]: Video resolution, calculated as the smallest dimension.
+.IP \[bu] 2
+\f[C]fps\f[R]: Framerate of video
+.IP \[bu] 2
+\f[C]hdr\f[R]: The dynamic range of the video (\f[C]DV\f[R] >
+\f[C]HDR12\f[R] > \f[C]HDR10+\f[R] > \f[C]HDR10\f[R] > \f[C]HLG\f[R] >
+\f[C]SDR\f[R])
+.IP \[bu] 2
+\f[C]channels\f[R]: The number of audio channels
+.IP \[bu] 2
+\f[C]tbr\f[R]: Total average bitrate in KBit/s
+.IP \[bu] 2
+\f[C]vbr\f[R]: Average video bitrate in KBit/s
+.IP \[bu] 2
+\f[C]abr\f[R]: Average audio bitrate in KBit/s
+.IP \[bu] 2
+\f[C]br\f[R]: Average bitrate in KBit/s,
+\f[C]tbr\f[R]/\f[C]vbr\f[R]/\f[C]abr\f[R]
+.IP \[bu] 2
+\f[C]asr\f[R]: Audio sample rate in Hz
+.PP
+\f[B]Deprecation warning\f[R]: Many of these fields have (currently
+undocumented) aliases, that may be removed in a future version.
+It is recommended to use only the documented field names.
+.PP
+All fields, unless specified otherwise, are sorted in descending order.
+To reverse this, prefix the field with a \f[C]+\f[R].
+E.g.
+\f[C]+res\f[R] prefers format with the smallest resolution.
+Additionally, you can suffix a preferred value for the fields, separated
+by a \f[C]:\f[R].
+E.g.
+\f[C]res:720\f[R] prefers larger videos, but no larger than 720p and the
+smallest video if there are no videos less than 720p.
+For \f[C]codec\f[R] and \f[C]ext\f[R], you can provide two preferred
+values, the first for video and the second for audio.
+E.g.
+\f[C]+codec:avc:m4a\f[R] (equivalent to
+\f[C]+vcodec:avc,+acodec:m4a\f[R]) sets the video codec preference to
+\f[C]h264\f[R] > \f[C]h265\f[R] > \f[C]vp9\f[R] > \f[C]vp9.2\f[R] >
+\f[C]av01\f[R] > \f[C]vp8\f[R] > \f[C]h263\f[R] > \f[C]theora\f[R] and
+audio codec preference to \f[C]mp4a\f[R] > \f[C]aac\f[R] >
+\f[C]vorbis\f[R] > \f[C]opus\f[R] > \f[C]mp3\f[R] > \f[C]ac3\f[R] >
+\f[C]dts\f[R].
+You can also make the sorting prefer the nearest values to the provided
+by using \f[C]\[ti]\f[R] as the delimiter.
+E.g.
+\f[C]filesize\[ti]1G\f[R] prefers the format with filesize closest to 1
+GiB.
+.PP
+The fields \f[C]hasvid\f[R] and \f[C]ie_pref\f[R] are always given
+highest priority in sorting, irrespective of the user-defined order.
+This behaviour can be changed by using \f[C]--format-sort-force\f[R].
+Apart from these, the default order used is:
+\f[C]lang,quality,res,fps,hdr:12,vcodec:vp9.2,channels,acodec,size,br,asr,proto,ext,hasaud,source,id\f[R].
+The extractors may override this default order, but they cannot override
+the user-provided order.
+.PP
+Note that the default has \f[C]vcodec:vp9.2\f[R]; i.e.
+\f[C]av1\f[R] is not preferred.
+Similarly, the default for hdr is \f[C]hdr:12\f[R]; i.e.
+dolby vision is not preferred.
+These choices are made since DV and AV1 formats are not yet fully
+compatible with most devices.
+This may be changed in the future as more devices become capable of
+smoothly playing back these formats.
+.PP
+If your format selector is \f[C]worst\f[R], the last item is selected
+after sorting.
+This means it will select the format that is worst in all respects.
+Most of the time, what you actually want is the video with the smallest
+filesize instead.
+So it is generally better to use
+\f[C]-f best -S +size,+br,+res,+fps\f[R].
+.PP
+\f[B]Tip\f[R]: You can use the \f[C]-v -F\f[R] to see how the formats
+have been sorted (worst to best).
+.SS Format Selection examples
+.IP
+.nf
+\f[C]
+# Download and merge the best video-only format and the best audio-only format,
+# or download the best combined format if video-only format is not available
+$ yt-dlp -f \[dq]bv+ba/b\[dq]
+
+# Download best format that contains video,
+# and if it doesn\[aq]t already have an audio stream, merge it with best audio-only format
+$ yt-dlp -f \[dq]bv*+ba/b\[dq]
+
+# Same as above
+$ yt-dlp
+
+# Download the best video-only format and the best audio-only format without merging them
+# For this case, an output template should be used since
+# by default, bestvideo and bestaudio will have the same file name.
+$ yt-dlp -f \[dq]bv,ba\[dq] -o \[dq]%(title)s.f%(format_id)s.%(ext)s\[dq]
+
+# Download and merge the best format that has a video stream,
+# and all audio-only formats into one file
+$ yt-dlp -f \[dq]bv*+mergeall[vcodec=none]\[dq] --audio-multistreams
+
+# Download and merge the best format that has a video stream,
+# and the best 2 audio-only formats into one file
+$ yt-dlp -f \[dq]bv*+ba+ba.2\[dq] --audio-multistreams
+
+
+# The following examples show the old method (without -S) of format selection
+# and how to use -S to achieve a similar but (generally) better result
+
+# Download the worst video available (old method)
+$ yt-dlp -f \[dq]wv*+wa/w\[dq]
+
+# Download the best video available but with the smallest resolution
+$ yt-dlp -S \[dq]+res\[dq]
+
+# Download the smallest video available
+$ yt-dlp -S \[dq]+size,+br\[dq]
+
+
+
+# Download the best mp4 video available, or the best video if no mp4 available
+$ yt-dlp -f \[dq]bv*[ext=mp4]+ba[ext=m4a]/b[ext=mp4] / bv*+ba/b\[dq]
+
+# Download the best video with the best extension
+# (For video, mp4 > mov > webm > flv. For audio, m4a > aac > mp3 ...)
+$ yt-dlp -S \[dq]ext\[dq]
+
+
+
+# Download the best video available but no better than 480p,
+# or the worst video if there is no video under 480p
+$ yt-dlp -f \[dq]bv*[height<=480]+ba/b[height<=480] / wv*+ba/w\[dq]
+
+# Download the best video available with the largest height but no better than 480p,
+# or the best video with the smallest resolution if there is no video under 480p
+$ yt-dlp -S \[dq]height:480\[dq]
+
+# Download the best video available with the largest resolution but no better than 480p,
+# or the best video with the smallest resolution if there is no video under 480p
+# Resolution is determined by using the smallest dimension.
+# So this works correctly for vertical videos as well
+$ yt-dlp -S \[dq]res:480\[dq]
+
+
+
+# Download the best video (that also has audio) but no bigger than 50 MB,
+# or the worst video (that also has audio) if there is no video under 50 MB
+$ yt-dlp -f \[dq]b[filesize<50M] / w\[dq]
+
+# Download largest video (that also has audio) but no bigger than 50 MB,
+# or the smallest video (that also has audio) if there is no video under 50 MB
+$ yt-dlp -f \[dq]b\[dq] -S \[dq]filesize:50M\[dq]
+
+# Download best video (that also has audio) that is closest in size to 50 MB
+$ yt-dlp -f \[dq]b\[dq] -S \[dq]filesize\[ti]50M\[dq]
+
+
+
+# Download best video available via direct link over HTTP/HTTPS protocol,
+# or the best video available via any protocol if there is no such video
+$ yt-dlp -f \[dq](bv*+ba/b)[protocol\[ha]=http][protocol!*=dash] / (bv*+ba/b)\[dq]
+
+# Download best video available via the best protocol
+# (https/ftps > http/ftp > m3u8_native > m3u8 > http_dash_segments ...)
+$ yt-dlp -S \[dq]proto\[dq]
+
+
+
+# Download the best video with either h264 or h265 codec,
+# or the best video if there is no such video
+$ yt-dlp -f \[dq](bv*[vcodec\[ti]=\[aq]\[ha]((he|a)vc|h26[45])\[aq]]+ba) / (bv*+ba/b)\[dq]
+
+# Download the best video with best codec no better than h264,
+# or the best video with worst codec if there is no such video
+$ yt-dlp -S \[dq]codec:h264\[dq]
+
+# Download the best video with worst codec no worse than h264,
+# or the best video with best codec if there is no such video
+$ yt-dlp -S \[dq]+codec:h264\[dq]
+
+
+
+# More complex examples
+
+# Download the best video no better than 720p preferring framerate greater than 30,
+# or the worst video (still preferring framerate greater than 30) if there is no such video
+$ yt-dlp -f \[dq]((bv*[fps>30]/bv*)[height<=720]/(wv*[fps>30]/wv*)) + ba / (b[fps>30]/b)[height<=720]/(w[fps>30]/w)\[dq]
+
+# Download the video with the largest resolution no better than 720p,
+# or the video with the smallest resolution available if there is no such video,
+# preferring larger framerate for formats with the same resolution
+$ yt-dlp -S \[dq]res:720,fps\[dq]
+
+
+
+# Download the video with smallest resolution no worse than 480p,
+# or the video with the largest resolution available if there is no such video,
+# preferring better codec and then larger total bitrate for the same resolution
+$ yt-dlp -S \[dq]+res:480,codec,br\[dq]
+\f[R]
+.fi
+.SH MODIFYING METADATA
+.PP
+The metadata obtained by the extractors can be modified by using
+\f[C]--parse-metadata\f[R] and \f[C]--replace-in-metadata\f[R]
+.PP
+\f[C]--replace-in-metadata FIELDS REGEX REPLACE\f[R] is used to replace
+text in any metadata field using python regular
+expression (https://docs.python.org/3/library/re.html#regular-expression-syntax).
+Backreferences (https://docs.python.org/3/library/re.html?highlight=backreferences#re.sub)
+can be used in the replace string for advanced use.
+.PP
+The general syntax of \f[C]--parse-metadata FROM:TO\f[R] is to give the
+name of a field or an output template to extract data from, and the
+format to interpret it as, separated by a colon \f[C]:\f[R].
+Either a python regular
+expression (https://docs.python.org/3/library/re.html#regular-expression-syntax)
+with named capture groups, a single field name, or a similar syntax to
+the output template (only \f[C]%(field)s\f[R] formatting is supported)
+can be used for \f[C]TO\f[R].
+The option can be used multiple times to parse and modify various
+fields.
+.PP
+Note that these options preserve their relative order, allowing
+replacements to be made in parsed fields and viceversa.
+Also, any field thus created can be used in the output template and will
+also affect the media file\[aq]s metadata added when using
+\f[C]--embed-metadata\f[R].
+.PP
+This option also has a few special uses:
+.IP \[bu] 2
+You can download an additional URL based on the metadata of the
+currently downloaded video.
+To do this, set the field \f[C]additional_urls\f[R] to the URL that you
+want to download.
+E.g.
+\f[C]--parse-metadata \[dq]description:(?P<additional_urls>https?://www\[rs].vimeo\[rs].com/\[rs]d+)\[dq]\f[R]
+will download the first vimeo video found in the description
+.IP \[bu] 2
+You can use this to change the metadata that is embedded in the media
+file.
+To do this, set the value of the corresponding field with a
+\f[C]meta_\f[R] prefix.
+For example, any value you set to \f[C]meta_description\f[R] field will
+be added to the \f[C]description\f[R] field in the file - you can use
+this to set a different \[dq]description\[dq] and \[dq]synopsis\[dq].
+To modify the metadata of individual streams, use the \f[C]meta<n>_\f[R]
+prefix (e.g.
+\f[C]meta1_language\f[R]).
+Any value set to the \f[C]meta_\f[R] field will overwrite all default
+values.
+.PP
+\f[B]Note\f[R]: Metadata modification happens before format selection,
+post-extraction and other post-processing operations.
+Some fields may be added or changed during these steps, overriding your
+changes.
+.PP
+For reference, these are the fields yt-dlp adds by default to the file
+metadata:
+.PP
+.TS
+tab(@);
+l l.
+T{
+Metadata fields
+T}@T{
+From
+T}
+_
+T{
+\f[C]title\f[R]
+T}@T{
+\f[C]track\f[R] or \f[C]title\f[R]
+T}
+T{
+\f[C]date\f[R]
+T}@T{
+\f[C]upload_date\f[R]
+T}
+T{
+\f[C]description\f[R], \f[C]synopsis\f[R]
+T}@T{
+\f[C]description\f[R]
+T}
+T{
+\f[C]purl\f[R], \f[C]comment\f[R]
+T}@T{
+\f[C]webpage_url\f[R]
+T}
+T{
+\f[C]track\f[R]
+T}@T{
+\f[C]track_number\f[R]
+T}
+T{
+\f[C]artist\f[R]
+T}@T{
+\f[C]artist\f[R], \f[C]creator\f[R], \f[C]uploader\f[R] or
+\f[C]uploader_id\f[R]
+T}
+T{
+\f[C]genre\f[R]
+T}@T{
+\f[C]genre\f[R]
+T}
+T{
+\f[C]album\f[R]
+T}@T{
+\f[C]album\f[R]
+T}
+T{
+\f[C]album_artist\f[R]
+T}@T{
+\f[C]album_artist\f[R]
+T}
+T{
+\f[C]disc\f[R]
+T}@T{
+\f[C]disc_number\f[R]
+T}
+T{
+\f[C]show\f[R]
+T}@T{
+\f[C]series\f[R]
+T}
+T{
+\f[C]season_number\f[R]
+T}@T{
+\f[C]season_number\f[R]
+T}
+T{
+\f[C]episode_id\f[R]
+T}@T{
+\f[C]episode\f[R] or \f[C]episode_id\f[R]
+T}
+T{
+\f[C]episode_sort\f[R]
+T}@T{
+\f[C]episode_number\f[R]
+T}
+T{
+\f[C]language\f[R] of each stream
+T}@T{
+the format\[aq]s \f[C]language\f[R]
+T}
+.TE
+.PP
+\f[B]Note\f[R]: The file format may not support some of these fields
+.SS Modifying metadata examples
+.IP
+.nf
+\f[C]
+# Interpret the title as \[dq]Artist - Title\[dq]
+$ yt-dlp --parse-metadata \[dq]title:%(artist)s - %(title)s\[dq]
+
+# Regex example
+$ yt-dlp --parse-metadata \[dq]description:Artist - (?P<artist>.+)\[dq]
+
+# Set title as \[dq]Series name S01E05\[dq]
+$ yt-dlp --parse-metadata \[dq]%(series)s S%(season_number)02dE%(episode_number)02d:%(title)s\[dq]
+
+# Prioritize uploader as the \[dq]artist\[dq] field in video metadata
+$ yt-dlp --parse-metadata \[dq]%(uploader|)s:%(meta_artist)s\[dq] --embed-metadata
+
+# Set \[dq]comment\[dq] field in video metadata using description instead of webpage_url,
+# handling multiple lines correctly
+$ yt-dlp --parse-metadata \[dq]description:(?s)(?P<meta_comment>.+)\[dq] --embed-metadata
+
+# Do not set any \[dq]synopsis\[dq] in the video metadata
+$ yt-dlp --parse-metadata \[dq]:(?P<meta_synopsis>)\[dq]
+
+# Remove \[dq]formats\[dq] field from the infojson by setting it to an empty string
+$ yt-dlp --parse-metadata \[dq]video::(?P<formats>)\[dq] --write-info-json
+
+# Replace all spaces and \[dq]_\[dq] in title and uploader with a \[ga]-\[ga]
+$ yt-dlp --replace-in-metadata \[dq]title,uploader\[dq] \[dq][ _]\[dq] \[dq]-\[dq]
+\f[R]
+.fi
+.SH EXTRACTOR ARGUMENTS
+.PP
+Some extractors accept additional arguments which can be passed using
+\f[C]--extractor-args KEY:ARGS\f[R].
+\f[C]ARGS\f[R] is a \f[C];\f[R] (semicolon) separated string of
+\f[C]ARG=VAL1,VAL2\f[R].
+E.g.
+\f[C]--extractor-args \[dq]youtube:player-client=android_embedded,web;include_live_dash\[dq] --extractor-args \[dq]funimation:version=uncut\[dq]\f[R]
+.PP
+Note: In CLI, \f[C]ARG\f[R] can use \f[C]-\f[R] instead of \f[C]_\f[R];
+e.g.
+\f[C]youtube:player-client\[dq]\f[R] becomes
+\f[C]youtube:player_client\[dq]\f[R]
+.PP
+The following extractors use this feature:
+.SS youtube
+.IP \[bu] 2
+\f[C]lang\f[R]: Prefer translated metadata (\f[C]title\f[R],
+\f[C]description\f[R] etc) of this language code (case-sensitive).
+By default, the video primary language metadata is preferred, with a
+fallback to \f[C]en\f[R] translated.
+See
+youtube.py (https://github.com/yt-dlp/yt-dlp/blob/c26f9b991a0681fd3ea548d535919cec1fbbd430/yt_dlp/extractor/youtube.py#L381-L390)
+for list of supported content language codes
+.IP \[bu] 2
+\f[C]skip\f[R]: One or more of \f[C]hls\f[R], \f[C]dash\f[R] or
+\f[C]translated_subs\f[R] to skip extraction of the m3u8 manifests, dash
+manifests and auto-translated
+subtitles (https://github.com/yt-dlp/yt-dlp/issues/4090#issuecomment-1158102032)
+respectively
+.IP \[bu] 2
+\f[C]player_client\f[R]: Clients to extract video data from.
+The main clients are \f[C]web\f[R], \f[C]android\f[R] and \f[C]ios\f[R]
+with variants \f[C]_music\f[R], \f[C]_embedded\f[R],
+\f[C]_embedscreen\f[R], \f[C]_creator\f[R] (e.g.
+\f[C]web_embedded\f[R]); and \f[C]mweb\f[R], \f[C]mweb_embedscreen\f[R]
+and \f[C]tv_embedded\f[R] (agegate bypass) with no variants.
+By default, \f[C]ios,android,web\f[R] is used, but \f[C]tv_embedded\f[R]
+and \f[C]creator\f[R] variants are added as required for age-gated
+videos.
+Similarly, the music variants are added for \f[C]music.youtube.com\f[R]
+urls.
+You can use \f[C]all\f[R] to use all the clients, and \f[C]default\f[R]
+for the default clients.
+.IP \[bu] 2
+\f[C]player_skip\f[R]: Skip some network requests that are generally
+needed for robust extraction.
+One or more of \f[C]configs\f[R] (skip client configs),
+\f[C]webpage\f[R] (skip initial webpage), \f[C]js\f[R] (skip js player).
+While these options can help reduce the number of requests needed or
+avoid some rate-limiting, they could cause some issues.
+See #860 (https://github.com/yt-dlp/yt-dlp/pull/860) for more details
+.IP \[bu] 2
+\f[C]player_params\f[R]: YouTube player parameters to use for player
+requests.
+Will overwrite any default ones set by yt-dlp.
+.IP \[bu] 2
+\f[C]comment_sort\f[R]: \f[C]top\f[R] or \f[C]new\f[R] (default) -
+choose comment sorting mode (on YouTube\[aq]s side)
+.IP \[bu] 2
+\f[C]max_comments\f[R]: Limit the amount of comments to gather.
+Comma-separated list of integers representing
+\f[C]max-comments,max-parents,max-replies,max-replies-per-thread\f[R].
+Default is \f[C]all,all,all,all\f[R]
+.RS 2
+.IP \[bu] 2
+E.g.
+\f[C]all,all,1000,10\f[R] will get a maximum of 1000 replies total, with
+up to 10 replies per thread.
+\f[C]1000,all,100\f[R] will get a maximum of 1000 comments, with a
+maximum of 100 replies total
+.RE
+.IP \[bu] 2
+\f[C]formats\f[R]: Change the types of formats to return.
+\f[C]dashy\f[R] (convert HTTP to DASH), \f[C]duplicate\f[R] (identical
+content but different URLs or protocol; includes \f[C]dashy\f[R]),
+\f[C]incomplete\f[R] (cannot be downloaded completely - live dash and
+post-live m3u8)
+.IP \[bu] 2
+\f[C]innertube_host\f[R]: Innertube API host to use for all API
+requests; e.g.
+\f[C]studio.youtube.com\f[R], \f[C]youtubei.googleapis.com\f[R].
+Note that cookies exported from one subdomain will not work on others
+.IP \[bu] 2
+\f[C]innertube_key\f[R]: Innertube API key to use for all API requests
+.IP \[bu] 2
+\f[C]raise_incomplete_data\f[R]: \f[C]Incomplete Data Received\f[R]
+raises an error instead of reporting a warning
+.SS youtubetab (YouTube playlists, channels, feeds, etc.)
+.IP \[bu] 2
+\f[C]skip\f[R]: One or more of \f[C]webpage\f[R] (skip initial webpage
+download), \f[C]authcheck\f[R] (allow the download of playlists
+requiring authentication when no initial webpage is downloaded.
+This may cause unwanted behavior, see
+#1122 (https://github.com/yt-dlp/yt-dlp/pull/1122) for more details)
+.IP \[bu] 2
+\f[C]approximate_date\f[R]: Extract approximate \f[C]upload_date\f[R]
+and \f[C]timestamp\f[R] in flat-playlist.
+This may cause date-based filters to be slightly off
+.SS generic
+.IP \[bu] 2
+\f[C]fragment_query\f[R]: Passthrough any query in mpd/m3u8 manifest
+URLs to their fragments if no value is provided, or else apply the query
+string given as \f[C]fragment_query=VALUE\f[R].
+Does not apply to ffmpeg
+.IP \[bu] 2
+\f[C]variant_query\f[R]: Passthrough the master m3u8 URL query to its
+variant playlist URLs if no value is provided, or else apply the query
+string given as \f[C]variant_query=VALUE\f[R]
+.IP \[bu] 2
+\f[C]hls_key\f[R]: An HLS AES-128 key URI \f[I]or\f[R] key (as hex), and
+optionally the IV (as hex), in the form of \f[C](URI|KEY)[,IV]\f[R];
+e.g.
+\f[C]generic:hls_key=ABCDEF1234567980,0xFEDCBA0987654321\f[R].
+Passing any of these values will force usage of the native HLS
+downloader and override the corresponding values found in the m3u8
+playlist
+.IP \[bu] 2
+\f[C]is_live\f[R]: Bypass live HLS detection and manually set
+\f[C]live_status\f[R] - a value of \f[C]false\f[R] will set
+\f[C]not_live\f[R], any other value (or no value) will set
+\f[C]is_live\f[R]
+.SS funimation
+.IP \[bu] 2
+\f[C]language\f[R]: Audio languages to extract, e.g.
+\f[C]funimation:language=english,japanese\f[R]
+.IP \[bu] 2
+\f[C]version\f[R]: The video version to extract - \f[C]uncut\f[R] or
+\f[C]simulcast\f[R]
+.SS crunchyrollbeta (Crunchyroll)
+.IP \[bu] 2
+\f[C]format\f[R]: Which stream type(s) to extract (default:
+\f[C]adaptive_hls\f[R]).
+Potentially useful values include \f[C]adaptive_hls\f[R],
+\f[C]adaptive_dash\f[R], \f[C]vo_adaptive_hls\f[R],
+\f[C]vo_adaptive_dash\f[R], \f[C]download_hls\f[R],
+\f[C]download_dash\f[R], \f[C]multitrack_adaptive_hls_v2\f[R]
+.IP \[bu] 2
+\f[C]hardsub\f[R]: Preference order for which hardsub versions to
+extract, or \f[C]all\f[R] (default: \f[C]None\f[R] = no hardsubs), e.g.
+\f[C]crunchyrollbeta:hardsub=en-US,None\f[R]
+.SS vikichannel
+.IP \[bu] 2
+\f[C]video_types\f[R]: Types of videos to download - one or more of
+\f[C]episodes\f[R], \f[C]movies\f[R], \f[C]clips\f[R],
+\f[C]trailers\f[R]
+.SS niconico
+.IP \[bu] 2
+\f[C]segment_duration\f[R]: Segment duration in milliseconds for HLS-DMC
+formats.
+Use it at your own risk since this feature \f[B]may result in your
+account termination.\f[R]
+.SS youtubewebarchive
+.IP \[bu] 2
+\f[C]check_all\f[R]: Try to check more at the cost of more requests.
+One or more of \f[C]thumbnails\f[R], \f[C]captures\f[R]
+.SS gamejolt
+.IP \[bu] 2
+\f[C]comment_sort\f[R]: \f[C]hot\f[R] (default), \f[C]you\f[R] (cookies
+needed), \f[C]top\f[R], \f[C]new\f[R] - choose comment sorting mode (on
+GameJolt\[aq]s side)
+.SS hotstar
+.IP \[bu] 2
+\f[C]res\f[R]: resolution to ignore - one or more of \f[C]sd\f[R],
+\f[C]hd\f[R], \f[C]fhd\f[R]
+.IP \[bu] 2
+\f[C]vcodec\f[R]: vcodec to ignore - one or more of \f[C]h264\f[R],
+\f[C]h265\f[R], \f[C]dvh265\f[R]
+.IP \[bu] 2
+\f[C]dr\f[R]: dynamic range to ignore - one or more of \f[C]sdr\f[R],
+\f[C]hdr10\f[R], \f[C]dv\f[R]
+.SS niconicochannelplus
+.IP \[bu] 2
+\f[C]max_comments\f[R]: Maximum number of comments to extract - default
+is \f[C]120\f[R]
+.SS tiktok
+.IP \[bu] 2
+\f[C]api_hostname\f[R]: Hostname to use for mobile API requests, e.g.
+\f[C]api-h2.tiktokv.com\f[R]
+.IP \[bu] 2
+\f[C]app_version\f[R]: App version to call mobile APIs with - should be
+set along with \f[C]manifest_app_version\f[R], e.g.
+\f[C]20.2.1\f[R]
+.IP \[bu] 2
+\f[C]manifest_app_version\f[R]: Numeric app version to call mobile APIs
+with, e.g.
+\f[C]221\f[R]
+.SS rokfinchannel
+.IP \[bu] 2
+\f[C]tab\f[R]: Which tab to download - one of \f[C]new\f[R],
+\f[C]top\f[R], \f[C]videos\f[R], \f[C]podcasts\f[R], \f[C]streams\f[R],
+\f[C]stacks\f[R]
+.SS twitter
+.IP \[bu] 2
+\f[C]api\f[R]: Select one of \f[C]graphql\f[R] (default),
+\f[C]legacy\f[R] or \f[C]syndication\f[R] as the API for tweet
+extraction.
+Has no effect if logged in
+.SS stacommu, wrestleuniverse
+.IP \[bu] 2
+\f[C]device_id\f[R]: UUID value assigned by the website and used to
+enforce device limits for paid livestream content.
+Can be found in browser local storage
+.SS twitch
+.IP \[bu] 2
+\f[C]client_id\f[R]: Client ID value to be sent with GraphQL requests,
+e.g.
+\f[C]twitch:client_id=kimne78kx3ncx6brgo4mv6wki5h1ko\f[R]
+.SS nhkradirulive (NHK \[u3089]\[u3058]\[u308B]\[u2605]\[u3089]\[u3058]\[u308B] LIVE)
+.IP \[bu] 2
+\f[C]area\f[R]: Which regional variation to extract.
+Valid areas are: \f[C]sapporo\f[R], \f[C]sendai\f[R], \f[C]tokyo\f[R],
+\f[C]nagoya\f[R], \f[C]osaka\f[R], \f[C]hiroshima\f[R],
+\f[C]matsuyama\f[R], \f[C]fukuoka\f[R].
+Defaults to \f[C]tokyo\f[R]
+.SS nflplusreplay
+.IP \[bu] 2
+\f[C]type\f[R]: Type(s) of game replays to extract.
+Valid types are: \f[C]full_game\f[R], \f[C]full_game_spanish\f[R],
+\f[C]condensed_game\f[R] and \f[C]all_22\f[R].
+You can use \f[C]all\f[R] to extract all available replay types, which
+is the default
+.PP
+\f[B]Note\f[R]: These options may be changed/removed in the future
+without concern for backward compatibility
+.SH INSTALLATION
+.PP
+You can install yt-dlp using the binaries,
+pip (https://pypi.org/project/yt-dlp) or one using a third-party package
+manager.
+See the wiki (https://github.com/yt-dlp/yt-dlp/wiki/Installation) for
+detailed instructions
+.SS UPDATE
+.PP
+You can use \f[C]yt-dlp -U\f[R] to update if you are using the release
+binaries
+.PP
+If you installed with
+pip (https://github.com/yt-dlp/yt-dlp/wiki/Installation#with-pip),
+simply re-run the same command that was used to install the program
+.PP
+For other third-party package managers, see the
+wiki (https://github.com/yt-dlp/yt-dlp/wiki/Installation#third-party-package-managers)
+or refer their documentation
+.PP
+.PP
+There are currently three release channels for binaries:
+\f[C]stable\f[R], \f[C]nightly\f[R] and \f[C]master\f[R].
+.IP \[bu] 2
+\f[C]stable\f[R] is the default channel, and many of its changes have
+been tested by users of the \f[C]nightly\f[R] and \f[C]master\f[R]
+channels.
+.IP \[bu] 2
+The \f[C]nightly\f[R] channel has releases scheduled to build every day
+around midnight UTC, for a snapshot of the project\[aq]s new patches and
+changes.
+This is the \f[B]recommended channel for regular users\f[R] of yt-dlp.
+The \f[C]nightly\f[R] releases are available from
+yt-dlp/yt-dlp-nightly-builds (https://github.com/yt-dlp/yt-dlp-nightly-builds/releases)
+or as development releases of the \f[C]yt-dlp\f[R] PyPI package (which
+can be installed with pip\[aq]s \f[C]--pre\f[R] flag).
+.IP \[bu] 2
+The \f[C]master\f[R] channel features releases that are built after each
+push to the master branch, and these will have the very latest fixes and
+additions, but may also be more prone to regressions.
+They are available from
+yt-dlp/yt-dlp-master-builds (https://github.com/yt-dlp/yt-dlp-master-builds/releases).
+.PP
+When using \f[C]--update\f[R]/\f[C]-U\f[R], a release binary will only
+update to its current channel.
+\f[C]--update-to CHANNEL\f[R] can be used to switch to a different
+channel when a newer version is available.
+\f[C]--update-to [CHANNEL\[at]]TAG\f[R] can also be used to upgrade or
+downgrade to specific tags from a channel.
+.PP
+You may also use \f[C]--update-to <repository>\f[R]
+(\f[C]<owner>/<repository>\f[R]) to update to a channel on a completely
+different repository.
+Be careful with what repository you are updating to though, there is no
+verification done for binaries from different repositories.
+.PP
+Example usage: * \f[C]yt-dlp --update-to master\f[R] switch to the
+\f[C]master\f[R] channel and update to its latest release *
+\f[C]yt-dlp --update-to stable\[at]2023.07.06\f[R] upgrade/downgrade to
+release to \f[C]stable\f[R] channel tag \f[C]2023.07.06\f[R] *
+\f[C]yt-dlp --update-to 2023.10.07\f[R] upgrade/downgrade to tag
+\f[C]2023.10.07\f[R] if it exists on the current channel *
+\f[C]yt-dlp --update-to example/yt-dlp\[at]2023.09.24\f[R]
+upgrade/downgrade to the release from the \f[C]example/yt-dlp\f[R]
+repository, tag \f[C]2023.09.24\f[R]
+.PP
+\f[B]Important\f[R]: Any user experiencing an issue with the
+\f[C]stable\f[R] release should install or update to the
+\f[C]nightly\f[R] release before submitting a bug report:
+.IP
+.nf
+\f[C]
+
+
+# PLUGINS
+
+Note that **all** plugins are imported even if not invoked, and that **there are no checks** performed on plugin code. **Use plugins at your own risk and only if you trust the code!**
+
+Plugins can be of \[ga]<type>\[ga]s \[ga]extractor\[ga] or \[ga]postprocessor\[ga].
+- Extractor plugins do not need to be enabled from the CLI and are automatically invoked when the input URL is suitable for it.
+- Extractor plugins take priority over builtin extractors.
+- Postprocessor plugins can be invoked using \[ga]--use-postprocessor NAME\[ga].
+
+
+Plugins are loaded from the namespace packages \[ga]yt_dlp_plugins.extractor\[ga] and \[ga]yt_dlp_plugins.postprocessor\[ga].
+
+In other words, the file structure on the disk looks something like:
+
+ yt_dlp_plugins/
+ extractor/
+ myplugin.py
+ postprocessor/
+ myplugin.py
+
+yt-dlp looks for these \[ga]yt_dlp_plugins\[ga] namespace folders in many locations (see below) and loads in plugins from **all** of them.
+
+See the [wiki for some known plugins](https://github.com/yt-dlp/yt-dlp/wiki/Plugins)
+
+## Installing Plugins
+
+Plugins can be installed using various methods and locations.
+
+1. **Configuration directories**:
+ Plugin packages (containing a \[ga]yt_dlp_plugins\[ga] namespace folder) can be dropped into the following standard [configuration locations](#configuration):
+ * **User Plugins**
+ * \[ga]${XDG_CONFIG_HOME}/yt-dlp/plugins/<package name>/yt_dlp_plugins/\[ga] (recommended on Linux/macOS)
+ * \[ga]${XDG_CONFIG_HOME}/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+ * \[ga]${APPDATA}/yt-dlp/plugins/<package name>/yt_dlp_plugins/\[ga] (recommended on Windows)
+ * \[ga]${APPDATA}/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+ * \[ga]\[ti]/.yt-dlp/plugins/<package name>/yt_dlp_plugins/\[ga]
+ * \[ga]\[ti]/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+ * **System Plugins**
+ * \[ga]/etc/yt-dlp/plugins/<package name>/yt_dlp_plugins/\[ga]
+ * \[ga]/etc/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+2. **Executable location**: Plugin packages can similarly be installed in a \[ga]yt-dlp-plugins\[ga] directory under the executable location (recommended for portable installations):
+ * Binary: where \[ga]<root-dir>/yt-dlp.exe\[ga], \[ga]<root-dir>/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+ * Source: where \[ga]<root-dir>/yt_dlp/__main__.py\[ga], \[ga]<root-dir>/yt-dlp-plugins/<package name>/yt_dlp_plugins/\[ga]
+
+3. **pip and other locations in \[ga]PYTHONPATH\[ga]**
+ * Plugin packages can be installed and managed using \[ga]pip\[ga]. See [yt-dlp-sample-plugins](https://github.com/yt-dlp/yt-dlp-sample-plugins) for an example.
+ * Note: plugin files between plugin packages installed with pip must have unique filenames.
+ * Any path in \[ga]PYTHONPATH\[ga] is searched in for the \[ga]yt_dlp_plugins\[ga] namespace folder.
+ * Note: This does not apply for Pyinstaller/py2exe builds.
+
+
+\[ga].zip\[ga], \[ga].egg\[ga] and \[ga].whl\[ga] archives containing a \[ga]yt_dlp_plugins\[ga] namespace folder in their root are also supported as plugin packages.
+* e.g. \[ga]${XDG_CONFIG_HOME}/yt-dlp/plugins/mypluginpkg.zip\[ga] where \[ga]mypluginpkg.zip\[ga] contains \[ga]yt_dlp_plugins/<type>/myplugin.py\[ga]
+
+Run yt-dlp with \[ga]--verbose\[ga] to check if the plugin has been loaded.
+
+## Developing Plugins
+
+See the [yt-dlp-sample-plugins](https://github.com/yt-dlp/yt-dlp-sample-plugins) repo for a template plugin package and the [Plugin Development](https://github.com/yt-dlp/yt-dlp/wiki/Plugin-Development) section of the wiki for a plugin development guide.
+
+All public classes with a name ending in \[ga]IE\[ga]/\[ga]PP\[ga] are imported from each file for extractors and postprocessors repectively. This respects underscore prefix (e.g. \[ga]_MyBasePluginIE\[ga] is private) and \[ga]__all__\[ga]. Modules can similarly be excluded by prefixing the module name with an underscore (e.g. \[ga]_myplugin.py\[ga]).
+
+To replace an existing extractor with a subclass of one, set the \[ga]plugin_name\[ga] class keyword argument (e.g. \[ga]class MyPluginIE(ABuiltInIE, plugin_name=\[aq]myplugin\[aq])\[ga] will replace \[ga]ABuiltInIE\[ga] with \[ga]MyPluginIE\[ga]). Since the extractor replaces the parent, you should exclude the subclass extractor from being imported separately by making it private using one of the methods described above.
+
+If you are a plugin author, add [yt-dlp-plugins](https://github.com/topics/yt-dlp-plugins) as a topic to your repository for discoverability.
+
+See the [Developer Instructions](https://github.com/yt-dlp/yt-dlp/blob/master/CONTRIBUTING.md#developer-instructions) on how to write and test an extractor.
+
+# EMBEDDING YT-DLP
+
+yt-dlp makes the best effort to be a good command-line program, and thus should be callable from any programming language.
+
+Your program should avoid parsing the normal stdout since they may change in future versions. Instead they should use options such as \[ga]-J\[ga], \[ga]--print\[ga], \[ga]--progress-template\[ga], \[ga]--exec\[ga] etc to create console output that you can reliably reproduce and parse.
+
+From a Python program, you can embed yt-dlp in a more powerful fashion, like this:
+
+\[ga]\[ga]\[ga]python
+from yt_dlp import YoutubeDL
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+with YoutubeDL() as ydl:
+ ydl.download(URLS)
+\f[R]
+.fi
+.PP
+Most likely, you\[aq]ll want to use various options.
+For a list of options available, have a look at
+\f[C]yt_dlp/YoutubeDL.py\f[R] or \f[C]help(yt_dlp.YoutubeDL)\f[R] in a
+Python shell.
+If you are already familiar with the CLI, you can use
+\f[C]devscripts/cli_to_api.py\f[R] (https://github.com/yt-dlp/yt-dlp/blob/master/devscripts/cli_to_api.py)
+to translate any CLI switches to \f[C]YoutubeDL\f[R] params.
+.PP
+\f[B]Tip\f[R]: If you are porting your code from youtube-dl to yt-dlp,
+one important point to look out for is that we do not guarantee the
+return value of \f[C]YoutubeDL.extract_info\f[R] to be json
+serializable, or even be a dictionary.
+It will be dictionary-like, but if you want to ensure it is a
+serializable dictionary, pass it through
+\f[C]YoutubeDL.sanitize_info\f[R] as shown in the example below
+.SS Embedding examples
+.SS Extracting information
+.IP
+.nf
+\f[C]
+import json
+import yt_dlp
+
+URL = \[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]
+
+# \[u2139]\[uFE0F] See help(yt_dlp.YoutubeDL) for a list of available options and public functions
+ydl_opts = {}
+with yt_dlp.YoutubeDL(ydl_opts) as ydl:
+ info = ydl.extract_info(URL, download=False)
+
+ # \[u2139]\[uFE0F] ydl.sanitize_info makes the info json-serializable
+ print(json.dumps(ydl.sanitize_info(info)))
+\f[R]
+.fi
+.SS Download using an info-json
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+INFO_FILE = \[aq]path/to/video.info.json\[aq]
+
+with yt_dlp.YoutubeDL() as ydl:
+ error_code = ydl.download_with_info_file(INFO_FILE)
+
+print(\[aq]Some videos failed to download\[aq] if error_code
+ else \[aq]All videos successfully downloaded\[aq])
+\f[R]
+.fi
+.SS Extract audio
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+
+ydl_opts = {
+ \[aq]format\[aq]: \[aq]m4a/bestaudio/best\[aq],
+ # \[u2139]\[uFE0F] See help(yt_dlp.postprocessor) for a list of available Postprocessors and their arguments
+ \[aq]postprocessors\[aq]: [{ # Extract audio using ffmpeg
+ \[aq]key\[aq]: \[aq]FFmpegExtractAudio\[aq],
+ \[aq]preferredcodec\[aq]: \[aq]m4a\[aq],
+ }]
+}
+
+with yt_dlp.YoutubeDL(ydl_opts) as ydl:
+ error_code = ydl.download(URLS)
+\f[R]
+.fi
+.SS Filter videos
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+
+def longer_than_a_minute(info, *, incomplete):
+ \[dq]\[dq]\[dq]Download only videos longer than a minute (or with unknown duration)\[dq]\[dq]\[dq]
+ duration = info.get(\[aq]duration\[aq])
+ if duration and duration < 60:
+ return \[aq]The video is too short\[aq]
+
+ydl_opts = {
+ \[aq]match_filter\[aq]: longer_than_a_minute,
+}
+
+with yt_dlp.YoutubeDL(ydl_opts) as ydl:
+ error_code = ydl.download(URLS)
+\f[R]
+.fi
+.SS Adding logger and progress hook
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+
+class MyLogger:
+ def debug(self, msg):
+ # For compatibility with youtube-dl, both debug and info are passed into debug
+ # You can distinguish them by the prefix \[aq][debug] \[aq]
+ if msg.startswith(\[aq][debug] \[aq]):
+ pass
+ else:
+ self.info(msg)
+
+ def info(self, msg):
+ pass
+
+ def warning(self, msg):
+ pass
+
+ def error(self, msg):
+ print(msg)
+
+
+# \[u2139]\[uFE0F] See \[dq]progress_hooks\[dq] in help(yt_dlp.YoutubeDL)
+def my_hook(d):
+ if d[\[aq]status\[aq]] == \[aq]finished\[aq]:
+ print(\[aq]Done downloading, now post-processing ...\[aq])
+
+
+ydl_opts = {
+ \[aq]logger\[aq]: MyLogger(),
+ \[aq]progress_hooks\[aq]: [my_hook],
+}
+
+with yt_dlp.YoutubeDL(ydl_opts) as ydl:
+ ydl.download(URLS)
+\f[R]
+.fi
+.SS Add a custom PostProcessor
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+
+# \[u2139]\[uFE0F] See help(yt_dlp.postprocessor.PostProcessor)
+class MyCustomPP(yt_dlp.postprocessor.PostProcessor):
+ def run(self, info):
+ self.to_screen(\[aq]Doing stuff\[aq])
+ return [], info
+
+
+with yt_dlp.YoutubeDL() as ydl:
+ # \[u2139]\[uFE0F] \[dq]when\[dq] can take any value in yt_dlp.utils.POSTPROCESS_WHEN
+ ydl.add_post_processor(MyCustomPP(), when=\[aq]pre_process\[aq])
+ ydl.download(URLS)
+\f[R]
+.fi
+.SS Use a custom format selector
+.IP
+.nf
+\f[C]
+import yt_dlp
+
+URLS = [\[aq]https://www.youtube.com/watch?v=BaW_jenozKc\[aq]]
+
+def format_selector(ctx):
+ \[dq]\[dq]\[dq] Select the best video and the best audio that won\[aq]t result in an mkv.
+ NOTE: This is just an example and does not handle all cases \[dq]\[dq]\[dq]
+
+ # formats are already sorted worst to best
+ formats = ctx.get(\[aq]formats\[aq])[::-1]
+
+ # acodec=\[aq]none\[aq] means there is no audio
+ best_video = next(f for f in formats
+ if f[\[aq]vcodec\[aq]] != \[aq]none\[aq] and f[\[aq]acodec\[aq]] == \[aq]none\[aq])
+
+ # find compatible audio extension
+ audio_ext = {\[aq]mp4\[aq]: \[aq]m4a\[aq], \[aq]webm\[aq]: \[aq]webm\[aq]}[best_video[\[aq]ext\[aq]]]
+ # vcodec=\[aq]none\[aq] means there is no video
+ best_audio = next(f for f in formats if (
+ f[\[aq]acodec\[aq]] != \[aq]none\[aq] and f[\[aq]vcodec\[aq]] == \[aq]none\[aq] and f[\[aq]ext\[aq]] == audio_ext))
+
+ # These are the minimum required fields for a merged format
+ yield {
+ \[aq]format_id\[aq]: f\[aq]{best_video[\[dq]format_id\[dq]]}+{best_audio[\[dq]format_id\[dq]]}\[aq],
+ \[aq]ext\[aq]: best_video[\[aq]ext\[aq]],
+ \[aq]requested_formats\[aq]: [best_video, best_audio],
+ # Must be + separated list of protocols
+ \[aq]protocol\[aq]: f\[aq]{best_video[\[dq]protocol\[dq]]}+{best_audio[\[dq]protocol\[dq]]}\[aq]
+ }
+
+
+ydl_opts = {
+ \[aq]format\[aq]: format_selector,
+}
+
+with yt_dlp.YoutubeDL(ydl_opts) as ydl:
+ ydl.download(URLS)
+\f[R]
+.fi
+.SH NEW FEATURES
+.IP \[bu] 2
+Forked from
+\f[B]yt-dlc\[at]f9401f2\f[R] (https://github.com/blackjack4494/yt-dlc/commit/f9401f2a91987068139c5f757b12fc711d4c0cee)
+and merged with
+\f[B]youtube-dl\[at]be008e6\f[R] (https://github.com/ytdl-org/youtube-dl/commit/be008e657d79832642e2158557c899249c9e31cd)
+(exceptions (https://github.com/yt-dlp/yt-dlp/issues/21))
+.IP \[bu] 2
+\f[B]SponsorBlock Integration\f[R]: You can mark/remove sponsor sections
+in YouTube videos by utilizing the
+SponsorBlock (https://sponsor.ajay.app) API
+.IP \[bu] 2
+\f[B]Format Sorting\f[R]: The default format sorting options have been
+changed so that higher resolution and better codecs will be now
+preferred instead of simply using larger bitrate.
+Furthermore, you can now specify the sort order using \f[C]-S\f[R].
+This allows for much easier format selection than what is possible by
+simply using \f[C]--format\f[R] (examples)
+.IP \[bu] 2
+\f[B]Merged with animelover1984/youtube-dl\f[R]: You get most of the
+features and improvements from
+animelover1984/youtube-dl (https://github.com/animelover1984/youtube-dl)
+including \f[C]--write-comments\f[R], \f[C]BiliBiliSearch\f[R],
+\f[C]BilibiliChannel\f[R], Embedding thumbnail in mp4/ogg/opus, playlist
+infojson etc.
+Note that NicoNico livestreams are not available.
+See #31 (https://github.com/yt-dlp/yt-dlp/pull/31) for details.
+.IP \[bu] 2
+\f[B]YouTube improvements\f[R]:
+.RS 2
+.IP \[bu] 2
+Supports Clips, Stories (\f[C]ytstories:<channel UCID>\f[R]), Search
+(including filters)\f[B]*\f[R], YouTube Music Search, Channel-specific
+search, Search prefixes (\f[C]ytsearch:\f[R],
+\f[C]ytsearchdate:\f[R])\f[B]*\f[R], Mixes, and Feeds (\f[C]:ytfav\f[R],
+\f[C]:ytwatchlater\f[R], \f[C]:ytsubs\f[R], \f[C]:ythistory\f[R],
+\f[C]:ytrec\f[R], \f[C]:ytnotif\f[R])
+.IP \[bu] 2
+Fix for n-sig based
+throttling (https://github.com/ytdl-org/youtube-dl/issues/29326)
+\f[B]*\f[R]
+.IP \[bu] 2
+Supports some (but not all) age-gated content without cookies
+.IP \[bu] 2
+Download livestreams from the start using \f[C]--live-from-start\f[R]
+(\f[I]experimental\f[R])
+.IP \[bu] 2
+Channel URLs download all uploads of the channel, including shorts and
+live
+.RE
+.IP \[bu] 2
+\f[B]Cookies from browser\f[R]: Cookies can be automatically extracted
+from all major web browsers using
+\f[C]--cookies-from-browser BROWSER[+KEYRING][:PROFILE][::CONTAINER]\f[R]
+.IP \[bu] 2
+\f[B]Download time range\f[R]: Videos can be downloaded partially based
+on either timestamps or chapters using \f[C]--download-sections\f[R]
+.IP \[bu] 2
+\f[B]Split video by chapters\f[R]: Videos can be split into multiple
+files based on chapters using \f[C]--split-chapters\f[R]
+.IP \[bu] 2
+\f[B]Multi-threaded fragment downloads\f[R]: Download multiple fragments
+of m3u8/mpd videos in parallel.
+Use \f[C]--concurrent-fragments\f[R] (\f[C]-N\f[R]) option to set the
+number of threads used
+.IP \[bu] 2
+\f[B]Aria2c with HLS/DASH\f[R]: You can use \f[C]aria2c\f[R] as the
+external downloader for DASH(mpd) and HLS(m3u8) formats
+.IP \[bu] 2
+\f[B]New and fixed extractors\f[R]: Many new extractors have been added
+and a lot of existing ones have been fixed.
+See the changelog or the list of supported sites
+.IP \[bu] 2
+\f[B]New MSOs\f[R]: Philo, Spectrum, SlingTV, Cablevision, RCN etc.
+.IP \[bu] 2
+\f[B]Subtitle extraction from manifests\f[R]: Subtitles can be extracted
+from streaming media manifests.
+See
+commit/be6202f (https://github.com/yt-dlp/yt-dlp/commit/be6202f12b97858b9d716e608394b51065d0419f)
+for details
+.IP \[bu] 2
+\f[B]Multiple paths and output templates\f[R]: You can give different
+output templates and download paths for different types of files.
+You can also set a temporary path where intermediary files are
+downloaded to using \f[C]--paths\f[R] (\f[C]-P\f[R])
+.IP \[bu] 2
+\f[B]Portable Configuration\f[R]: Configuration files are automatically
+loaded from the home and root directories.
+See CONFIGURATION for details
+.IP \[bu] 2
+\f[B]Output template improvements\f[R]: Output templates can now have
+date-time formatting, numeric offsets, object traversal etc.
+See output template for details.
+Even more advanced operations can also be done with the help of
+\f[C]--parse-metadata\f[R] and \f[C]--replace-in-metadata\f[R]
+.IP \[bu] 2
+\f[B]Other new options\f[R]: Many new options have been added such as
+\f[C]--alias\f[R], \f[C]--print\f[R], \f[C]--concat-playlist\f[R],
+\f[C]--wait-for-video\f[R], \f[C]--retry-sleep\f[R],
+\f[C]--sleep-requests\f[R], \f[C]--convert-thumbnails\f[R],
+\f[C]--force-download-archive\f[R], \f[C]--force-overwrites\f[R],
+\f[C]--break-match-filter\f[R] etc
+.IP \[bu] 2
+\f[B]Improvements\f[R]: Regex and other operators in
+\f[C]--format\f[R]/\f[C]--match-filter\f[R], multiple
+\f[C]--postprocessor-args\f[R] and \f[C]--downloader-args\f[R], faster
+archive checking, more format selection options, merge
+multi-video/audio, multiple \f[C]--config-locations\f[R],
+\f[C]--exec\f[R] at different stages, etc
+.IP \[bu] 2
+\f[B]Plugins\f[R]: Extractors and PostProcessors can be loaded from an
+external file.
+See plugins for details
+.IP \[bu] 2
+\f[B]Self updater\f[R]: The releases can be updated using
+\f[C]yt-dlp -U\f[R], and downgraded using \f[C]--update-to\f[R] if
+required
+.IP \[bu] 2
+\f[B]Automated builds\f[R]: Nightly/master builds can be used with
+\f[C]--update-to nightly\f[R] and \f[C]--update-to master\f[R]
+.PP
+See changelog or commits (https://github.com/yt-dlp/yt-dlp/commits) for
+the full list of changes
+.PP
+Features marked with a \f[B]*\f[R] have been back-ported to youtube-dl
+.SS Differences in default behavior
+.PP
+Some of yt-dlp\[aq]s default options are different from that of
+youtube-dl and youtube-dlc:
+.IP \[bu] 2
+yt-dlp supports only Python 3.8+, and \f[I]may\f[R] remove support for
+more versions as they become
+EOL (https://devguide.python.org/versions/#python-release-cycle); while
+youtube-dl still supports Python 2.6+ and
+3.2+ (https://github.com/ytdl-org/youtube-dl/issues/30568#issue-1118238743)
+.IP \[bu] 2
+The options \f[C]--auto-number\f[R] (\f[C]-A\f[R]), \f[C]--title\f[R]
+(\f[C]-t\f[R]) and \f[C]--literal\f[R] (\f[C]-l\f[R]), no longer work.
+See removed options for details
+.IP \[bu] 2
+\f[C]avconv\f[R] is not supported as an alternative to \f[C]ffmpeg\f[R]
+.IP \[bu] 2
+yt-dlp stores config files in slightly different locations to
+youtube-dl.
+See CONFIGURATION for a list of correct locations
+.IP \[bu] 2
+The default output template is \f[C]%(title)s [%(id)s].%(ext)s\f[R].
+There is no real reason for this change.
+This was changed before yt-dlp was ever made public and now there are no
+plans to change it back to \f[C]%(title)s-%(id)s.%(ext)s\f[R].
+Instead, you may use \f[C]--compat-options filename\f[R]
+.IP \[bu] 2
+The default format sorting is different from youtube-dl and prefers
+higher resolution and better codecs rather than higher bitrates.
+You can use the \f[C]--format-sort\f[R] option to change this to any
+order you prefer, or use \f[C]--compat-options format-sort\f[R] to use
+youtube-dl\[aq]s sorting order
+.IP \[bu] 2
+The default format selector is \f[C]bv*+ba/b\f[R].
+This means that if a combined video + audio format that is better than
+the best video-only format is found, the former will be preferred.
+Use \f[C]-f bv+ba/b\f[R] or \f[C]--compat-options format-spec\f[R] to
+revert this
+.IP \[bu] 2
+Unlike youtube-dlc, yt-dlp does not allow merging multiple audio/video
+streams into one file by default (since this conflicts with the use of
+\f[C]-f bv*+ba\f[R]).
+If needed, this feature must be enabled using
+\f[C]--audio-multistreams\f[R] and \f[C]--video-multistreams\f[R].
+You can also use \f[C]--compat-options multistreams\f[R] to enable both
+.IP \[bu] 2
+\f[C]--no-abort-on-error\f[R] is enabled by default.
+Use \f[C]--abort-on-error\f[R] or
+\f[C]--compat-options abort-on-error\f[R] to abort on errors instead
+.IP \[bu] 2
+When writing metadata files such as thumbnails, description or infojson,
+the same information (if available) is also written for playlists.
+Use \f[C]--no-write-playlist-metafiles\f[R] or
+\f[C]--compat-options no-playlist-metafiles\f[R] to not write these
+files
+.IP \[bu] 2
+\f[C]--add-metadata\f[R] attaches the \f[C]infojson\f[R] to
+\f[C]mkv\f[R] files in addition to writing the metadata when used with
+\f[C]--write-info-json\f[R].
+Use \f[C]--no-embed-info-json\f[R] or
+\f[C]--compat-options no-attach-info-json\f[R] to revert this
+.IP \[bu] 2
+Some metadata are embedded into different fields when using
+\f[C]--add-metadata\f[R] as compared to youtube-dl.
+Most notably, \f[C]comment\f[R] field contains the \f[C]webpage_url\f[R]
+and \f[C]synopsis\f[R] contains the \f[C]description\f[R].
+You can use \f[C]--parse-metadata\f[R] to modify this to your liking or
+use \f[C]--compat-options embed-metadata\f[R] to revert this
+.IP \[bu] 2
+\f[C]playlist_index\f[R] behaves differently when used with options like
+\f[C]--playlist-reverse\f[R] and \f[C]--playlist-items\f[R].
+See #302 (https://github.com/yt-dlp/yt-dlp/issues/302) for details.
+You can use \f[C]--compat-options playlist-index\f[R] if you want to
+keep the earlier behavior
+.IP \[bu] 2
+The output of \f[C]-F\f[R] is listed in a new format.
+Use \f[C]--compat-options list-formats\f[R] to revert this
+.IP \[bu] 2
+Live chats (if available) are considered as subtitles.
+Use \f[C]--sub-langs all,-live_chat\f[R] to download all subtitles
+except live chat.
+You can also use \f[C]--compat-options no-live-chat\f[R] to prevent any
+live chat/danmaku from downloading
+.IP \[bu] 2
+YouTube channel URLs download all uploads of the channel.
+To download only the videos in a specific tab, pass the tab\[aq]s URL.
+If the channel does not show the requested tab, an error will be raised.
+Also, \f[C]/live\f[R] URLs raise an error if there are no live videos
+instead of silently downloading the entire channel.
+You may use \f[C]--compat-options no-youtube-channel-redirect\f[R] to
+revert all these redirections
+.IP \[bu] 2
+Unavailable videos are also listed for YouTube playlists.
+Use \f[C]--compat-options no-youtube-unavailable-videos\f[R] to remove
+this
+.IP \[bu] 2
+The upload dates extracted from YouTube are in UTC when
+available (https://github.com/yt-dlp/yt-dlp/blob/89e4d86171c7b7c997c77d4714542e0383bf0db0/yt_dlp/extractor/youtube.py#L3898-L3900).
+Use \f[C]--compat-options no-youtube-prefer-utc-upload-date\f[R] to
+prefer the non-UTC upload date.
+.IP \[bu] 2
+If \f[C]ffmpeg\f[R] is used as the downloader, the downloading and
+merging of formats happen in a single step when possible.
+Use \f[C]--compat-options no-direct-merge\f[R] to revert this
+.IP \[bu] 2
+Thumbnail embedding in \f[C]mp4\f[R] is done with mutagen if possible.
+Use \f[C]--compat-options embed-thumbnail-atomicparsley\f[R] to force
+the use of AtomicParsley instead
+.IP \[bu] 2
+Some internal metadata such as filenames are removed by default from the
+infojson.
+Use \f[C]--no-clean-infojson\f[R] or
+\f[C]--compat-options no-clean-infojson\f[R] to revert this
+.IP \[bu] 2
+When \f[C]--embed-subs\f[R] and \f[C]--write-subs\f[R] are used
+together, the subtitles are written to disk and also embedded in the
+media file.
+You can use just \f[C]--embed-subs\f[R] to embed the subs and
+automatically delete the separate file.
+See #630
+(comment) (https://github.com/yt-dlp/yt-dlp/issues/630#issuecomment-893659460)
+for more info.
+\f[C]--compat-options no-keep-subs\f[R] can be used to revert this
+.IP \[bu] 2
+\f[C]certifi\f[R] will be used for SSL root certificates, if installed.
+If you want to use system certificates (e.g.
+self-signed), use \f[C]--compat-options no-certifi\f[R]
+.IP \[bu] 2
+yt-dlp\[aq]s sanitization of invalid characters in filenames is
+different/smarter than in youtube-dl.
+You can use \f[C]--compat-options filename-sanitization\f[R] to revert
+to youtube-dl\[aq]s behavior
+.IP \[bu] 2
+yt-dlp tries to parse the external downloader outputs into the standard
+progress output if possible (Currently implemented:
+[STRIKEOUT:aria2c] (https://github.com/yt-dlp/yt-dlp/issues/5931)).
+You can use \f[C]--compat-options no-external-downloader-progress\f[R]
+to get the downloader output as-is
+.IP \[bu] 2
+yt-dlp versions between 2021.09.01 and 2023.01.02 applies
+\f[C]--match-filter\f[R] to nested playlists.
+This was an unintentional side-effect of
+8f18ac (https://github.com/yt-dlp/yt-dlp/commit/8f18aca8717bb0dd49054555af8d386e5eda3a88)
+and is fixed in
+d7b460 (https://github.com/yt-dlp/yt-dlp/commit/d7b460d0e5fc710950582baed2e3fc616ed98a80).
+Use \f[C]--compat-options playlist-match-filter\f[R] to revert this
+.IP \[bu] 2
+yt-dlp versions between 2021.11.10 and 2023.06.21 estimated
+\f[C]filesize_approx\f[R] values for fragmented/manifest formats.
+This was added for convenience in
+f2fe69 (https://github.com/yt-dlp/yt-dlp/commit/f2fe69c7b0d208bdb1f6292b4ae92bc1e1a7444a),
+but was reverted in
+0dff8e (https://github.com/yt-dlp/yt-dlp/commit/0dff8e4d1e6e9fb938f4256ea9af7d81f42fd54f)
+due to the potentially extreme inaccuracy of the estimated values.
+Use \f[C]--compat-options manifest-filesize-approx\f[R] to keep
+extracting the estimated values
+.IP \[bu] 2
+yt-dlp uses modern http client backends such as \f[C]requests\f[R].
+Use \f[C]--compat-options prefer-legacy-http-handler\f[R] to prefer the
+legacy http handler (\f[C]urllib\f[R]) to be used for standard http
+requests.
+.IP \[bu] 2
+The sub-module \f[C]swfinterp\f[R] is removed.
+.PP
+For ease of use, a few more compat options are available:
+.IP \[bu] 2
+\f[C]--compat-options all\f[R]: Use all compat options (Do NOT use)
+.IP \[bu] 2
+\f[C]--compat-options youtube-dl\f[R]: Same as
+\f[C]--compat-options all,-multistreams,-playlist-match-filter,-manifest-filesize-approx\f[R]
+.IP \[bu] 2
+\f[C]--compat-options youtube-dlc\f[R]: Same as
+\f[C]--compat-options all,-no-live-chat,-no-youtube-channel-redirect,-playlist-match-filter,-manifest-filesize-approx\f[R]
+.IP \[bu] 2
+\f[C]--compat-options 2021\f[R]: Same as
+\f[C]--compat-options 2022,no-certifi,filename-sanitization,no-youtube-prefer-utc-upload-date\f[R]
+.IP \[bu] 2
+\f[C]--compat-options 2022\f[R]: Same as
+\f[C]--compat-options playlist-match-filter,no-external-downloader-progress,prefer-legacy-http-handler,manifest-filesize-approx\f[R].
+Use this to enable all future compat options
+.SH DEPRECATED OPTIONS
+.PP
+These are all the deprecated options and the current alternative to
+achieve the same effect
+.SS Almost redundant options
+.PP
+While these options are almost the same as their new counterparts, there
+are some differences that prevents them being redundant
+.IP
+.nf
+\f[C]
+-j, --dump-json --print \[dq]%()j\[dq]
+-F, --list-formats --print formats_table
+--list-thumbnails --print thumbnails_table --print playlist:thumbnails_table
+--list-subs --print automatic_captions_table --print subtitles_table
+\f[R]
+.fi
+.SS Redundant options
+.PP
+While these options are redundant, they are still expected to be used
+due to their ease of use
+.IP
+.nf
+\f[C]
+--get-description --print description
+--get-duration --print duration_string
+--get-filename --print filename
+--get-format --print format
+--get-id --print id
+--get-thumbnail --print thumbnail
+-e, --get-title --print title
+-g, --get-url --print urls
+--match-title REGEX --match-filter \[dq]title \[ti]= (?i)REGEX\[dq]
+--reject-title REGEX --match-filter \[dq]title !\[ti]= (?i)REGEX\[dq]
+--min-views COUNT --match-filter \[dq]view_count >=? COUNT\[dq]
+--max-views COUNT --match-filter \[dq]view_count <=? COUNT\[dq]
+--break-on-reject Use --break-match-filter
+--user-agent UA --add-header \[dq]User-Agent:UA\[dq]
+--referer URL --add-header \[dq]Referer:URL\[dq]
+--playlist-start NUMBER -I NUMBER:
+--playlist-end NUMBER -I :NUMBER
+--playlist-reverse -I ::-1
+--no-playlist-reverse Default
+--no-colors --color no_color
+\f[R]
+.fi
+.SS Not recommended
+.PP
+While these options still work, their use is not recommended since there
+are other alternatives to achieve the same
+.IP
+.nf
+\f[C]
+--force-generic-extractor --ies generic,default
+--exec-before-download CMD --exec \[dq]before_dl:CMD\[dq]
+--no-exec-before-download --no-exec
+--all-formats -f all
+--all-subs --sub-langs all --write-subs
+--print-json -j --no-simulate
+--autonumber-size NUMBER Use string formatting, e.g. %(autonumber)03d
+--autonumber-start NUMBER Use internal field formatting like %(autonumber+NUMBER)s
+--id -o \[dq]%(id)s.%(ext)s\[dq]
+--metadata-from-title FORMAT --parse-metadata \[dq]%(title)s:FORMAT\[dq]
+--hls-prefer-native --downloader \[dq]m3u8:native\[dq]
+--hls-prefer-ffmpeg --downloader \[dq]m3u8:ffmpeg\[dq]
+--list-formats-old --compat-options list-formats (Alias: --no-list-formats-as-table)
+--list-formats-as-table --compat-options -list-formats [Default] (Alias: --no-list-formats-old)
+--youtube-skip-dash-manifest --extractor-args \[dq]youtube:skip=dash\[dq] (Alias: --no-youtube-include-dash-manifest)
+--youtube-skip-hls-manifest --extractor-args \[dq]youtube:skip=hls\[dq] (Alias: --no-youtube-include-hls-manifest)
+--youtube-include-dash-manifest Default (Alias: --no-youtube-skip-dash-manifest)
+--youtube-include-hls-manifest Default (Alias: --no-youtube-skip-hls-manifest)
+--geo-bypass --xff \[dq]default\[dq]
+--no-geo-bypass --xff \[dq]never\[dq]
+--geo-bypass-country CODE --xff CODE
+--geo-bypass-ip-block IP_BLOCK --xff IP_BLOCK
+\f[R]
+.fi
+.SS Developer options
+.PP
+These options are not intended to be used by the end-user
+.IP
+.nf
+\f[C]
+--test Download only part of video for testing extractors
+--load-pages Load pages dumped by --write-pages
+--youtube-print-sig-code For testing youtube signatures
+--allow-unplayable-formats List unplayable formats also
+--no-allow-unplayable-formats Default
+\f[R]
+.fi
+.SS Old aliases
+.PP
+These are aliases that are no longer documented for various reasons
+.IP
+.nf
+\f[C]
+--avconv-location --ffmpeg-location
+--clean-infojson --clean-info-json
+--cn-verification-proxy URL --geo-verification-proxy URL
+--dump-headers --print-traffic
+--dump-intermediate-pages --dump-pages
+--force-write-download-archive --force-write-archive
+--load-info --load-info-json
+--no-clean-infojson --no-clean-info-json
+--no-split-tracks --no-split-chapters
+--no-write-srt --no-write-subs
+--prefer-unsecure --prefer-insecure
+--rate-limit RATE --limit-rate RATE
+--split-tracks --split-chapters
+--srt-lang LANGS --sub-langs LANGS
+--trim-file-names LENGTH --trim-filenames LENGTH
+--write-srt --write-subs
+--yes-overwrites --force-overwrites
+\f[R]
+.fi
+.SS Sponskrub Options
+.PP
+Support for SponSkrub (https://github.com/faissaloo/SponSkrub) has been
+deprecated in favor of the \f[C]--sponsorblock\f[R] options
+.IP
+.nf
+\f[C]
+--sponskrub --sponsorblock-mark all
+--no-sponskrub --no-sponsorblock
+--sponskrub-cut --sponsorblock-remove all
+--no-sponskrub-cut --sponsorblock-remove -all
+--sponskrub-force Not applicable
+--no-sponskrub-force Not applicable
+--sponskrub-location Not applicable
+--sponskrub-args Not applicable
+\f[R]
+.fi
+.SS No longer supported
+.PP
+These options may no longer work as intended
+.IP
+.nf
+\f[C]
+--prefer-avconv avconv is not officially supported by yt-dlp (Alias: --no-prefer-ffmpeg)
+--prefer-ffmpeg Default (Alias: --no-prefer-avconv)
+-C, --call-home Not implemented
+--no-call-home Default
+--include-ads No longer supported
+--no-include-ads Default
+--write-annotations No supported site has annotations now
+--no-write-annotations Default
+--compat-options seperate-video-versions No longer needed
+\f[R]
+.fi
+.SS Removed
+.PP
+These options were deprecated since 2014 and have now been entirely
+removed
+.IP
+.nf
+\f[C]
+-A, --auto-number -o \[dq]%(autonumber)s-%(id)s.%(ext)s\[dq]
+-t, -l, --title, --literal -o \[dq]%(title)s-%(id)s.%(ext)s\[dq]
+\f[R]
+.fi
+.SH CONTRIBUTING
+.PP
+See CONTRIBUTING.md for instructions on Opening an Issue and
+Contributing code to the project
+.SH WIKI
+.PP
+See the Wiki (https://github.com/yt-dlp/yt-dlp/wiki) for more
+information
diff --git a/network/yt-dlp/yt-dlp.SlackBuild b/network/yt-dlp/yt-dlp.SlackBuild
index 009e1a3a54..856b1eb1d0 100644
--- a/network/yt-dlp/yt-dlp.SlackBuild
+++ b/network/yt-dlp/yt-dlp.SlackBuild
@@ -8,14 +8,36 @@
# Note: I honestly prefer the standalone executable version of this,
# which I keep in ~/bin. It allows me to run "yt-dlp -U" as my user to
-# get the latest version. However, since it's listed as an optional
-# dependency for pipe-viewer (and might be useful as a dep for other
-# things), it has to exist on SBo.
+# get the latest version. However, since it's listed as a dependency
+# for clipgrab, haruna, xdman, ytfzf, and an optional dependency for
+# pipe-viewer, it has to exist on SBo.
+
+# 20240313 bkw:
+# - updated for v2024.03.10
+# - build method changed (python3 -m build, rather than setup.py)
+# - upstream managed to lose the man page, so include the man page
+# from the previous version (should be OK for now at least).
+# - switch to github archive/ URL, since pythonhosted.org doesn't have
+# this version (yet?). filename still has the version number in it.
+
+# 20240217 bkw: switched to pythonhosted.org source tarball, thanks
+# to Jeremy Hansen for finding this. Filename now has the version
+# number in it, so no more caching problems for the download. Build
+# had to change slightly as there's no more CONTRIBUTING file.
+# 20240216 bkw: updated for v2023.12.30
+# 20231219 bkw: updated for v2023.11.16
+# 20231031 bkw: updated for v2023.10.13
+# 20230904 bkw: BUILD=2, silence complaints from 'pip3 check'
+# 20230711 bkw: updated for v2023.07.06
+# 20230623 bkw: updated for v2023.06.22, added version check
+# 20230402 bkw: updated for v2023.03.04
+# 20230222 bkw: updated for v2023.02.17
+# 20230104 bkw: updated for v2023.01.02
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=yt-dlp
-VERSION=${VERSION:-2022.01.21}
+VERSION=${VERSION:-2024.03.10}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -45,27 +67,23 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $PRGNAM
-tar xvf $CWD/$PRGNAM.tar.gz
-cd $PRGNAM
+rm -rf $PRGNAM-$VERSION
+tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
+cd $PRGNAM-$VERSION
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 {} \+
-# hardcoded paths.
-sed -i -e "s,share/doc/yt_dlp,doc/$PRGNAM-$VERSION," \
- -e "s,share/man,man," \
- setup.py
+python3 -m build --wheel --no-isolation
+python3 -m installer --destdir "$PKG" dist/*.whl
-# if anyone's wondering, there's no python2 support.
-python3 setup.py install --root=$PKG
+mkdir -p $PKG/usr/man/man1
+gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
-gzip -9 $PKG/usr/man/man1/*
-
-# AUTHORS is 0 bytes in 2022.01.21
+# AUTHORS is 0 bytes in 2022.01.21 (still is, in 2023.03.04).
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
-cp -a CONTRIBUTORS LICENSE *.md $PKGDOC
+cp -a LICENSE *.md $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/network/yt-dlp/yt-dlp.info b/network/yt-dlp/yt-dlp.info
index 98bfccc09d..ce2ce121a3 100644
--- a/network/yt-dlp/yt-dlp.info
+++ b/network/yt-dlp/yt-dlp.info
@@ -1,10 +1,10 @@
PRGNAM="yt-dlp"
-VERSION="2022.01.21"
+VERSION="2024.03.10"
HOMEPAGE="https://github.com/yt-dlp/yt-dlp"
-DOWNLOAD="https://github.com/yt-dlp/yt-dlp/releases/download/2022.01.21/yt-dlp.tar.gz"
-MD5SUM="5cec1f9ba77e03f303932e9b5897d481"
+DOWNLOAD="https://github.com/yt-dlp/yt-dlp/archive/2024.03.10/yt-dlp-2024.03.10.tar.gz"
+MD5SUM="1a7525eabc062011fea20ce97a93f0ac"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
-REQUIRES=""
+REQUIRES="python3-build python3-hatchling"
MAINTAINER="B. Watson"
EMAIL="urchlay@slackware.uk"
diff --git a/network/ytfzf/README b/network/ytfzf/README
new file mode 100644
index 0000000000..d6706d1dc9
--- /dev/null
+++ b/network/ytfzf/README
@@ -0,0 +1,10 @@
+ytfzf (Script to watch youtube videos from the terminal)
+
+ytfzf is a script to search, download and play YouTube videos by
+making use of mpv and youtube-dl under the hood. ytfzf also features
+support for video history, allows choosing the media format and can
+queue multiple tracks.
+
+Optional dependencies include dmenu for the -D option and ueberzugpp
+for thumbnails. Alternative thumbnail viewers include chafa, imv,
+mpv, and kitty, though they require special configuration to use.
diff --git a/network/ytfzf/slack-desc b/network/ytfzf/slack-desc
new file mode 100644
index 0000000000..85adc7c510
--- /dev/null
+++ b/network/ytfzf/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------------------------------------------------------|
+ytfzf: ytfzf (Script to watch youtube videos from the terminal)
+ytfzf:
+ytfzf: ytfzf is a script to search, download and play YouTube videos by
+ytfzf: making use of mpv and youtube-dl under the hood. ytfzf also features
+ytfzf: support for video history, allows choosing the media format and can
+ytfzf: queue multiple tracks.
+ytfzf:
+ytfzf:
+ytfzf:
+ytfzf: Homepage: https://github.com/pystardust/ytfzf
+ytfzf:
diff --git a/network/ytfzf/ytfzf.SlackBuild b/network/ytfzf/ytfzf.SlackBuild
new file mode 100644
index 0000000000..d4e13627e2
--- /dev/null
+++ b/network/ytfzf/ytfzf.SlackBuild
@@ -0,0 +1,77 @@
+#!/bin/bash
+
+# Slackware build script for ytfzf
+
+# Copyright 2023-2024 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=ytfzf
+VERSION=${VERSION:-2.6.2}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
+ARCH=noarch
+
+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
+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 install doc addons \
+ DESTDIR=$PKG \
+ PREFIX=/usr \
+ DOCDIR=/usr/doc/$PRGNAM-$VERSION \
+ MANDIR=/usr/man \
+ LICENSEDIR=/usr/doc/$PRGNAM-$VERSION
+
+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
+
+cp -a \
+ README.md CONTRIBUTING.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/ytfzf/ytfzf.info b/network/ytfzf/ytfzf.info
new file mode 100644
index 0000000000..c3eec16ca9
--- /dev/null
+++ b/network/ytfzf/ytfzf.info
@@ -0,0 +1,10 @@
+PRGNAM="ytfzf"
+VERSION="2.6.2"
+HOMEPAGE="https://github.com/pystardust/ytfzf"
+DOWNLOAD="https://github.com/pystardust/ytfzf/archive/v2.6.2/ytfzf-2.6.2.tar.gz"
+MD5SUM="b52c07da4c6b6609cdc315f2e1e5f137"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="fzf jq mpv yt-dlp"
+MAINTAINER="Samuel Young"
+EMAIL="samyoung12788@gmail.com"
diff --git a/network/zabbix_agent2/README b/network/zabbix_agent2/README
new file mode 100644
index 0000000000..e5f26a7986
--- /dev/null
+++ b/network/zabbix_agent2/README
@@ -0,0 +1,19 @@
+zabbix_agent2 is the new generation Linux agent written on golang.
+Used to monitor Linux boxes and send the data to the zabbix server.
+
+Zabbix offers advanced monitoring, alerting and visualization
+features, including distributed monitoring, auto-discovery,
+notifications, etcetera.
+
+zabbix_agent2 needs to run under its own user/group. This has been
+assigned to the following by SlackBuilds.org, but feel free to change
+it on your system for consistency with local assignments.
+ User: zabbixagent UID: 266 GID: 266
+ group: zabbixagent GID: 266
+
+You can pass alternate values for the user and group using
+ZABBIXAGENTUSER and ZABBIXAGENTGROUP variables when running the build
+script.
+
+For some important post-build and basic configuration instructions,
+see the included README.SLACKWARE file.
diff --git a/network/zabbix_agent2/README.SLACKWARE b/network/zabbix_agent2/README.SLACKWARE
new file mode 100644
index 0000000000..13fd88d3e8
--- /dev/null
+++ b/network/zabbix_agent2/README.SLACKWARE
@@ -0,0 +1,75 @@
+README.Slackware
+================
+
+This file contains some specific instructions to complete the
+installation of zabbix_agent2 on Slackware.
+
+0) Before running the SlackBuild script
+---------------------------------------
+
+0.1) zabbix group & user
+
+Before running the zabbix_agent2.SlackBuild script, you will need to create
+the 'zabbix' user and group as well as 'zabbixagent' user. The script won't
+run if these do not exist.
+
+The suggested UID and GID is 228 for 'zabbix' and 266 for 'zabbixagent',
+but you can change this as needed:
+
+ # groupadd -g 228 zabbix
+ # useradd -u 266 -g zabbix -d /dev/null -s /bin/false zabbixagent
+
+1) Configuring zabbix_agent2
+----------------------------
+
+A standard configuration file is installed as /etc/zabbix/zabbix_agent2.conf
+
+At least the following lines need to be configured:
+ For passive checks:
+ Server=<ip_of_your_zabbix_server>
+ For active checks
+ Hostname=<hostname_of_your_zabbix_agent>
+ ServerActive=<ip_of_your_zabbix_server>
+
+2) Start & Stop scripts for zabbix agent daemon
+-----------------------------------------------
+
+2.1) Automatic startup and shutdown
+
+If you want to start zabbix_agent2 on system bootup, include these lines in
+your /etc/rc.d/rc.local:
+
+ # Start zabbix_agent2
+ if [ -x /etc/rc.d/rc.zabbix_agent2]; then
+ echo "Starting zabbix agent daemon..."
+ /etc/rc.d/rc.zabbix_agent2 start
+ fi
+
+To guarantee a clean shutdown of zabbix_agent2, include this in
+/etc/rc.d/rc.local_shutdown:
+
+ # Stop zabbix_agent2
+ if [ -x /etc/rc.d/rc.zabbix_agent2 ]; then
+ echo "Stopping zabbix agent daemon..."
+ /etc/rc.d/rc.zabbix_agent2 stop
+ fi
+
+2.2) Make /etc/rc.d/rc.zabbix_agent2 executable
+
+Additionally, you'll have to set the rc script to be executable just like
+any other Slackware rc script:
+
+ # chmod +x /etc/rc.d/rc.zabbix_agent2
+
+3) Starting zabbix agent daemon
+-------------------------------
+
+Now you are ready to start zabbix_agent2 by calling the startup script:
+
+ # /etc/rc.d/rc.zabbix_agent2 start
+
+You can check the log file (/var/log/zabbix/zabbig_agent2.log) in case of
+problems.
+
+Zabbix uses ports 10050 & 10051 to communicate, so make sure these aren't
+blocked on your network.
diff --git a/network/graphite-carbon/doinst.sh b/network/zabbix_agent2/doinst.sh
index b11adc4f0f..21efb95b2d 100644
--- a/network/graphite-carbon/doinst.sh
+++ b/network/zabbix_agent2/doinst.sh
@@ -22,5 +22,7 @@ preserve_perms() {
config $NEW
}
-for i in etc/rc.d/rc.carbon-*.new ; do preserve_perms $i ; done
-for i in etc/carbon/*.new etc/logrotate.d/graphite-carbon.new ; do config $i ; done
+preserve_perms etc/rc.d/rc.zabbix_agent2.new
+config etc/zabbix/zabbix_agent2.conf.new
+config var/log/zabbix/zabbix_agent2.log.new
+rm -f var/log/zabbix/zabbix_agent2.log.new
diff --git a/network/zabbix_agent2/rc.zabbix_agent2 b/network/zabbix_agent2/rc.zabbix_agent2
new file mode 100644
index 0000000000..842014dfe8
--- /dev/null
+++ b/network/zabbix_agent2/rc.zabbix_agent2
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+# Usage: ./rc.zabbix_agent2 {start|stop|restart}
+
+PRGNAM=zabbix_agent2
+PRGDIR=/usr/sbin/
+PIDDIR=/var/run/zabbixagent/
+LOGDIR=/var/log/zabbix/
+DATE=$(date +%a\ %b\ %d\ %T\ %Y)
+RETVAL=0
+
+prg_start() {
+ echo -n "Starting $PRGNAM ... "
+ if [ -r ${PIDDIR}${PRGNAM}.pid ]; then
+ if $(! /sbin/pidof $PRGNAM > /dev/null 2>&1 ) ; then
+ echo "Removing an old ${PIDDIR}${PRGNAM}.pid"
+ rm -f ${PIDDIR}${PRGNAM}.pid
+ fi
+ fi
+ mkdir -p ${PIDDIR}
+ su -s /bin/sh -c "${PRGDIR}${PRGNAM} >> ${LOGDIR}${PRGNAM}.log 2>&1 &" @ZABBIXAGENTUSER@
+ RETVAL=$?
+
+ if [ $RETVAL -eq 0 ]; then
+ touch /var/lock/$PRGNAM
+ sleep 2
+ echo "done"
+ else
+ echo "failed"
+ fi
+ return $RETVAL
+}
+
+prg_stop() {
+ echo -n "Stopping $PRGNAM ... "
+ if [ -r ${PIDDIR}${PRGNAM}.pid ]; then
+ killall $PRGNAM
+ # Give it some time to die gracefully
+ for second in 0 1 2 3 4 5 6 7 8 9 10 ; do
+ if $(! /sbin/pidof $PRGNAM > /dev/null 2>&1 ) ; then
+ rm -f ${PIDDIR}${PRGNAM}.pid
+ break;
+ fi
+ sleep 1
+ done
+
+ if [ "$second" = "10" ]; then
+ echo "\nWARNING: $PRGNAM did not exit!"
+ sleep 10
+ else
+ echo "$DATE EXIT: $PRGNAM stopped by user: $USER (UID: $EUID)" >> ${LOGDIR}${PRGNAM}.log
+ echo "done"
+ fi
+ fi
+ rm -f /var/lock/$PRGNAM
+ return $RETVAL
+}
+
+# How were we called:
+case "$1" in
+ start)
+ prg_start
+ ;;
+ stop)
+ prg_stop
+ ;;
+ restart|reload)
+ prg_stop
+ # Wait a few seconds before restarting
+ sleep 10
+ prg_start
+ ;;
+ *)
+ echo "Usage: $(basename $0) {start|stop|restart}"
+ RETVAL=1
+esac
+
+#EOF
diff --git a/network/light-firefox/slack-desc b/network/zabbix_agent2/slack-desc
index 8953a5ea77..459d342ebf 100644
--- a/network/light-firefox/slack-desc
+++ b/network/zabbix_agent2/slack-desc
@@ -6,14 +6,14 @@
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
-light-firefox: light-firefox (A light browser based on Mozilla)
-light-firefox:
-light-firefox: A light browser based on Mozilla source code. Many components are
-light-firefox: slimmed down. So it can start faster and use less memory. By default,
-light-firefox: Light can run along with firefox. Both x86 and x64 builds are
-light-firefox: available.
-light-firefox:
-light-firefox: Homepage: https://sourceforge.net/projects/lightfirefox/
-light-firefox:
-light-firefox:
-light-firefox:
+zabbix_agent2: zabbix_agent2 (Linux GO agent for zabbix_server)
+zabbix_agent2:
+zabbix_agent2: Zabbix offers advanced monitoring, alerting and visualization
+zabbix_agent2: features, including distributed monitoring, auto-discovery,
+zabbix_agent2: notifications etc.
+zabbix_agent2:
+zabbix_agent2: This is the new agent2 daemon that communicates with the
+zabbix_agent2: zabbix_server for local resource monitoring.
+zabbix_agent2:
+zabbix_agent2: https://www.zabbix.com/
+zabbix_agent2:
diff --git a/network/zabbix_agent2/zabbix_agent2.SlackBuild b/network/zabbix_agent2/zabbix_agent2.SlackBuild
new file mode 100644
index 0000000000..60f61016f1
--- /dev/null
+++ b/network/zabbix_agent2/zabbix_agent2.SlackBuild
@@ -0,0 +1,168 @@
+#!/bin/bash
+
+# Slackware build script for zabbix_agent2
+
+# Copyright 2013-2014 Michal Bialozor, Gdansk, Pomorskie, POLAND
+# 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=zabbix_agent2
+VERSION=${VERSION:-6.4.11}
+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
+
+PRGSHORT=zabbix
+
+# ZABBIXUSER is owner of log directory, this is required for running the agent on the same host as server
+ZABBIXUSER=${ZABBIXUSER:-zabbix}
+ZABBIXGROUP=${ZABBIXGROUP:-zabbix}
+ZABBIXUID=${ZABBIXUID:-228}
+ZABBIXGID=${ZABBIXGID:-228}
+
+ZABBIXAGENTUSER=${ZABBIXAGENTUSER:-zabbixagent}
+ZABBIXAGENTGROUP=${ZABBIXAGENTGROUP:-zabbixagent}
+ZABBIXAGENTUID=${ZABBIXAGENTUID:-266}
+ZABBIXAGENTGID=${ZABBIXAGENTGID:-266}
+
+# 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}
+
+set -e
+
+# Bail out if user or group isn't valid on your system
+# For slackbuilds.org, assigned zabbixagent uid/gid are 266/266 and assigned zabbix uid/gid are 228/228
+# See http://slackbuilds.org/uid_gid.txt
+if [ "$(grep ^$ZABBIXAGENTUSER: /etc/passwd)" = "" -o "$(grep ^$ZABBIXAGENTUSER: /etc/passwd)" = "" -o \
+ "$(grep ^$ZABBIXGROUP: /etc/group)" = "" ] ; then
+ echo " You must have a \"$ZABBIXGROUP\" group as well as \"$ZABBIXUSER\" and \"$ZABBIXAGENTUSER\" users to run this script."
+ echo " # groupadd -g $ZABBIXGID $ZABBIXGROUP"
+ echo " # useradd -u $ZABBIXUID -g $ZABBIXGROUP -d /dev/null -s /bin/false $ZABBIXUSER"
+ echo " # useradd -u $ZABBIXAGENTUID -g $ZABBIXGROUP -d /dev/null -s /bin/false $ZABBIXAGENTUSER"
+ exit 1
+fi
+
+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
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGSHORT-$VERSION
+tar xvf $CWD/$PRGSHORT-$VERSION.tar.gz
+cd $PRGSHORT-$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 \
+ --sysconfdir=/etc/zabbix \
+ --localstatedir=/var/lib \
+ --mandir=/usr/man \
+ --docdir=/usr/doc/$PRGNAM-$VERSION \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --with-libpcre2 \
+ --enable-agent2 \
+ --with-openssl \
+ --enable-ipv6 \
+ --build=$ARCH-slackware-linux
+
+make
+make install DESTDIR=$PKG
+
+find $PKG | xargs 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
+
+# Initial log file
+mkdir -p $PKG/var/log/$PRGSHORT
+chown $ZABBIXUSER:$ZABBIXGROUP $PKG/var/log/$PRGSHORT
+chmod g+w $PKG/var/log/$PRGSHORT
+#touch $PKG/var/log/$PRGSHORT/$PRGNAM.log.new
+#chown $ZABBIXAGENTUSER:$ZABBIXUSER $PKG/var/log/$PRGSHORT/$PRGNAM.log.new
+
+# Dir for pid-file
+mkdir -p $PKG/var/run/$PRGNAM
+chown -R $ZABBIXAGENTUSER:$ZABBIXGROUP $PKG/var/run/$PRGNAM
+chmod g+w $PKG/var/run/$PRGNAM
+
+# Configuration file
+sed -e "s,# PidFile=/tmp/zabbix_agent2.pid,PidFile=/var/run/$PRGNAM/zabbix_agent2.pid," \
+ -e "s,# LogFile=/tmp/zabbix_agent2.log,LogFile=/var/log/$PRGSHORT/$PRGNAM.log," \
+ -e "s,Include=./zabbix_agent2.d/plugins.d/\*.conf,Include=/etc/$PRGSHORT/zabbix_agent2.d/plugins.d/*.conf," \
+ $PKG/etc/$PRGSHORT/$PRGNAM.conf > $PKG/etc/$PRGSHORT/$PRGNAM.conf.new
+# remove uneeded old agent conf
+rm -rf $PKG/etc/$PRGSHORT/zabbix_agentd.* $PKG/etc/$PRGSHORT/$PRGNAM.d/ $PKG/etc/$PRGSHORT/$PRGNAM.conf
+
+# Init script
+mkdir -p $PKG/etc/rc.d
+sed "s|@ZABBIXAGENTUSER@|$ZABBIXAGENTUSER|" $CWD/rc.$PRGNAM > $PKG/etc/rc.d/rc.$PRGNAM.new
+
+# Documentation
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a AUTHORS COPYING ChangeLog NEWS README $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+cat $CWD/README.SLACKWARE > $PKG/usr/doc/$PRGNAM-$VERSION/README.SLACKWARE
+
+# Installation scripts
+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/zabbix_agent2/zabbix_agent2.info b/network/zabbix_agent2/zabbix_agent2.info
new file mode 100644
index 0000000000..051d035e6d
--- /dev/null
+++ b/network/zabbix_agent2/zabbix_agent2.info
@@ -0,0 +1,10 @@
+PRGNAM="zabbix_agent2"
+VERSION="6.4.11"
+HOMEPAGE="https://www.zabbix.com"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="google-go-lang"
+MAINTAINER="zux"
+EMAIL="zux@pie-dabas.net"
diff --git a/network/zabbix_agentd/README b/network/zabbix_agentd/README
index a3d2d4b286..cc7fdd2f1c 100644
--- a/network/zabbix_agentd/README
+++ b/network/zabbix_agentd/README
@@ -15,15 +15,11 @@ You can pass alternate values for the user and group using
ZABBIXAGENTUSER and ZABBIXAGENTGROUP variables when running the build
script.
-zabbix_agentd needs another user/group to cooperate with other Zabbix
-deamons, like zabbix_server or zabbix_proxy. This has been assigned to
-the following by SlackBuilds.org, but feel free to change it on your
-system for consistency with local assignments.
- User: zabbix UID: 228 GID: 228
+zabbix_agentd uses group zabbix to write log file
+ (if you also have zabbix_server installed, it uses the same directory
+ for log file)
group: zabbix GID: 228
-You can pass alternate values for the user and group using
-ZABBIXUSER and ZABBIXGROUP variables when running the build script.
For some important post-build and basic configuration instructions,
see the included README.SLACKWARE file.
diff --git a/network/zabbix_agentd/README.SLACKWARE b/network/zabbix_agentd/README.SLACKWARE
index a41c2ef1e2..1016693f9e 100644
--- a/network/zabbix_agentd/README.SLACKWARE
+++ b/network/zabbix_agentd/README.SLACKWARE
@@ -26,9 +26,11 @@ but you can change this as needed:
A standard configuration file is installed as /etc/zabbix/zabbix_agentd.conf
At least the following lines need to be configured:
-
+ For passive items:
Server=<ip_of_your_zabbix_server>
+ For active items:
Hostname=<hostname_of_your_zabbix_agent>
+ ServerActive=<ip_of_your_zabbix_server>
2) Start & Stop scripts for zabbix agent daemon
-----------------------------------------------
diff --git a/network/zabbix_agentd/rc.zabbix_agentd b/network/zabbix_agentd/rc.zabbix_agentd
index bd300d999d..13876fc4df 100644
--- a/network/zabbix_agentd/rc.zabbix_agentd
+++ b/network/zabbix_agentd/rc.zabbix_agentd
@@ -4,7 +4,7 @@
PRGNAM=zabbix_agentd
PRGDIR=/usr/sbin/
-PIDDIR=/var/run/zabbix/
+PIDDIR=/var/run/zabbix_agentd/
LOGDIR=/var/log/zabbix/
DATE=$(date +%a\ %b\ %d\ %T\ %Y)
RETVAL=0
diff --git a/network/zabbix_agentd/zabbix_agentd.SlackBuild b/network/zabbix_agentd/zabbix_agentd.SlackBuild
index da844396f3..c3597c05c7 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.0.9}
+VERSION=${VERSION:-6.4.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -114,6 +114,8 @@ CXXFLAGS="$SLKCFLAGS" \
--docdir=/usr/doc/$PRGNAM-$VERSION \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--with-libpcre2 \
+ --with-openssl \
+ --enable-ipv6 \
--enable-agent \
--build=$ARCH-slackware-linux
@@ -134,16 +136,16 @@ touch $PKG/var/log/$PRGSHORT/$PRGNAM.log.new
chown $ZABBIXAGENTUSER:$ZABBIXUSER $PKG/var/log/$PRGSHORT/$PRGNAM.log.new
# Dir for pid-file
-mkdir -p $PKG/var/run/$PRGSHORT
-chown -R $ZABBIXUSER:$ZABBIXGROUP $PKG/var/run/$PRGSHORT
-chmod g+w $PKG/var/run/$PRGSHORT
+mkdir -p $PKG/var/run/$PRGNAM
+chown -R $ZABBIXAGENTUSER:$ZABBIXGROUP $PKG/var/run/$PRGNAM
+chmod g+w $PKG/var/run/$PRGNAM
# Configuration file
-sed -e "s,# PidFile=/tmp/,PidFile=/var/run/$PRGSHORT/," \
- -e "s,LogFile=/tmp/,LogFile=/var/log/$PRGSHORT/," \
+sed -e "s,# PidFile=/tmp/zabbix_agentd.pid,PidFile=/var/run/$PRGNAM/$PRGNAM.pid," \
+ -e "s,LogFile=/tmp/zabbix_agentd.log,LogFile=/var/log/$PRGSHORT/$PRGNAM.log," \
$PKG/etc/$PRGSHORT/$PRGNAM.conf > $PKG/etc/$PRGSHORT/$PRGNAM.conf.new
rm -rf $PKG/etc/$PRGSHORT/zabbix_agent.conf.d $PKG/etc/$PRGSHORT/zabbix_agent.conf \
- $PKG/etc/$PRGSHORT/$PRGNAM.conf
+ $PKG/etc/$PRGSHORT/$PRGNAM.conf $PKG/etc/$PRGSHORT/$PRGNAM.conf.d/
# Init script
mkdir -p $PKG/etc/rc.d
diff --git a/network/zabbix_agentd/zabbix_agentd.info b/network/zabbix_agentd/zabbix_agentd.info
index ad3747ce40..5e88ead7f2 100644
--- a/network/zabbix_agentd/zabbix_agentd.info
+++ b/network/zabbix_agentd/zabbix_agentd.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_agentd"
-VERSION="6.0.9"
+VERSION="6.4.11"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz"
-MD5SUM="09a0a984d667b79478351786731a8d17"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zabbix_frontend/zabbix_frontend.SlackBuild b/network/zabbix_frontend/zabbix_frontend.SlackBuild
index 2399056794..09be652e40 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.0.9}
+VERSION=${VERSION:-6.4.11}
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 740e8dcd87..0096647da4 100644
--- a/network/zabbix_frontend/zabbix_frontend.info
+++ b/network/zabbix_frontend/zabbix_frontend.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_frontend"
-VERSION="6.0.9"
+VERSION="6.4.11"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz"
-MD5SUM="09a0a984d667b79478351786731a8d17"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zabbix_java_gateway/README.SLACKWARE b/network/zabbix_java_gateway/README.SLACKWARE
index 335e9a1ccd..19af301efe 100644
--- a/network/zabbix_java_gateway/README.SLACKWARE
+++ b/network/zabbix_java_gateway/README.SLACKWARE
@@ -32,7 +32,7 @@ running:
A standard configuration file is installed as /etc/zabbix/zabbix_java_gateway.conf
-You will need to change at least the following lines:
+If installed on the same host as the server/proxy, configuration should work out of the box
2) Start & Stop scripts for zabbix java gateway
-----------------------------------------------
@@ -67,6 +67,9 @@ any other Slackware rc script:
3) Starting zabbix server
-------------------------
-Now you are ready to start zabbix_server by calling the startup script:
+Now you are ready to start zabbix_java_gateway by calling the startup script:
# /etc/rc.d/rc.zabbix_java_gateway start
+
+
+Don't forget to configure Zabbix server/proxy yo use this java gateway (StartJavaPollers= and JavaGateway=)
diff --git a/network/zabbix_java_gateway/rc.zabbix_java_gateway b/network/zabbix_java_gateway/rc.zabbix_java_gateway
index 56798a5cea..8ccb974cc3 100644
--- a/network/zabbix_java_gateway/rc.zabbix_java_gateway
+++ b/network/zabbix_java_gateway/rc.zabbix_java_gateway
@@ -17,7 +17,6 @@ prg_start() {
rm -f ${PIDDIR}${PRGNAM}.pid
fi
fi
- mkdir -p ${PIDDIR}
${PRGDIR}${PRGNAM}_startup >> ${LOGDIR}${PRGNAM}.log 2>&1
RETVAL=$?
@@ -67,7 +66,7 @@ case "$1" in
restart|reload)
prg_stop
# Wait a few seconds before restarting
- sleep 10
+ sleep 2
prg_start
;;
*)
diff --git a/network/zabbix_java_gateway/slack-desc b/network/zabbix_java_gateway/slack-desc
index 822bf8dd9c..116c9c02af 100644
--- a/network/zabbix_java_gateway/slack-desc
+++ b/network/zabbix_java_gateway/slack-desc
@@ -12,8 +12,8 @@ zabbix_java_gateway: Zabbix offers advanced monitoring, alerting and visualizati
zabbix_java_gateway: features, including distributed monitoring, auto-discovery,
zabbix_java_gateway: notifications etc.
zabbix_java_gateway:
-zabbix_java_gateway: https://www.zabbix.com/
-zabbix_java_gateway:
-zabbix_java_gateway:
+zabbix_java_gateway: Java gateway adds functionality to monitor JAVA applications by
+zabbix_java_gateway: communicating with JMX
zabbix_java_gateway:
+zabbix_java_gateway: https://www.zabbix.com/
zabbix_java_gateway:
diff --git a/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild b/network/zabbix_java_gateway/zabbix_java_gateway.SlackBuild
index 7c0e69e8c3..538f59357d 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.0.9}
+VERSION=${VERSION:-6.4.11}
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 39b39ff581..716a63ac39 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.0.9"
+VERSION="6.4.11"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz"
-MD5SUM="09a0a984d667b79478351786731a8d17"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="zulu-openjdk8"
diff --git a/network/zabbix_proxy/rc.zabbix_proxy b/network/zabbix_proxy/rc.zabbix_proxy
index ff169bc023..ed118f9d35 100644
--- a/network/zabbix_proxy/rc.zabbix_proxy
+++ b/network/zabbix_proxy/rc.zabbix_proxy
@@ -75,5 +75,5 @@ case "$1" in
RETVAL=1
esac
-exit $RETVAL
+#exit $RETVAL
#EOF
diff --git a/network/zabbix_proxy/zabbix_proxy.SlackBuild b/network/zabbix_proxy/zabbix_proxy.SlackBuild
index c21daa749f..c8842f45ca 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.0.9}
+VERSION=${VERSION:-6.4.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -111,12 +111,17 @@ CXXFLAGS="$SLKCFLAGS" \
--with-mysql \
--with-libcurl \
--with-net-snmp \
+ --with-libxml2 \
--with-ssh \
--with-ldap \
--with-libpcre2 \
--with-openssl \
--enable-ipv6 \
- --with-unixODBC \
+ --with-unixodbc \
+ --with-zlib \
+ --with-libpthread \
+ --with-libevent \
+ --with-iconv \
--build=$ARCH-slackware-linux
make
@@ -149,7 +154,7 @@ sed -e "s,# PidFile=/tmp/,PidFile=/var/run/$PRGSHORT/," \
-e "s,# DBSocket=/tmp/,DBSocket=/var/run/mysql/," \
-e "s,LogFile=/tmp/,LogFile=/var/log/$PRGSHORT/," \
$PKG/etc/$PRGSHORT/$PRGNAM.conf > $PKG/etc/$PRGSHORT/$PRGNAM.conf.new
-rm -f $PKG/etc/$PRGSHORT/$PRGNAM.conf
+rm -rf $PKG/etc/$PRGSHORT/$PRGNAM.conf $PKG/etc/$PRGSHORT/$PRGNAM.conf.d
# Init script
mkdir -p $PKG/etc/rc.d
diff --git a/network/zabbix_proxy/zabbix_proxy.info b/network/zabbix_proxy/zabbix_proxy.info
index d85eaea493..b56fd5d9a7 100644
--- a/network/zabbix_proxy/zabbix_proxy.info
+++ b/network/zabbix_proxy/zabbix_proxy.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_proxy"
-VERSION="6.0.9"
+VERSION="6.4.11"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz"
-MD5SUM="09a0a984d667b79478351786731a8d17"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="unixODBC"
diff --git a/network/zabbix_server/README.SLACKWARE b/network/zabbix_server/README.SLACKWARE
index e492969949..240f9b4269 100644
--- a/network/zabbix_server/README.SLACKWARE
+++ b/network/zabbix_server/README.SLACKWARE
@@ -4,7 +4,7 @@ README.Slackware
This file contains some specific instructions to complete the
installation of zabbix_server on Slackware.
-zabbix-java has been moved to a separate package - zabbix-java-gateway
+zabbix-java has been moved to a separate package - zabbix_java_gateway
Frontend is now also in a seperate package - zabbix_frontend as it might be installed on a seperate machine
@@ -14,7 +14,7 @@ zabbix_server to run. MariaDB server does not have to be on the same box as
zabbix_server, but they need to be able to communicate and you will need at
least the MariaDB client on the box that will run zabbix_server.
-(*) zabbix can work with MySQL and its forks, Oracle and PostgreSQL
+(*) zabbix can work with MySQL and its forks and PostgreSQL
databases, but these instructions are for MariaDB, as it is included with
Slackware.
@@ -48,7 +48,7 @@ On your MariaDB server, connect with full privileges:
Create the zabbix database & user:
- mysql> create database zabbix set utf8mb4 collate utf8mb4_bin;
+ mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> use mysql;
mysql> grant all privileges on zabbix.* to zabbix@<your_zabbix_server> identified by '<your_password>';
mysql> flush privileges;
@@ -65,8 +65,8 @@ On your zabbix server, connect to the new database:
In MariaDB, create the schema & add initial data:
mysql> source schema.sql;
- mysql> source data.sql;
mysql> source images.sql;
+ mysql> source data.sql;
mysql> quit
diff --git a/network/zabbix_server/rc.zabbix_server b/network/zabbix_server/rc.zabbix_server
index 04011cca4f..01d0975ba5 100644
--- a/network/zabbix_server/rc.zabbix_server
+++ b/network/zabbix_server/rc.zabbix_server
@@ -74,6 +74,3 @@ case "$1" in
echo "Usage: $(basename $0) {start|stop|restart }"
RETVAL=1
esac
-
-exit $RETVAL
-#EOF
diff --git a/network/zabbix_server/zabbix_server.SlackBuild b/network/zabbix_server/zabbix_server.SlackBuild
index 13dcfab834..1f573dab73 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.0.9}
+VERSION=${VERSION:-6.4.11}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -119,11 +119,15 @@ PKG_CONFIG_PATH=/usr/local/lib64/pkgconfig:/usr/local/share/pkgconfig:/usr/lib64
--with-ssh \
--with-ldap \
--enable-ipv6 \
- --with-libxml2=/usr/include/libxml2 \
+ --with-libxml2 \
--with-openssl \
--enable-ipv6 \
--with-unixodbc \
--with-libpcre2 \
+ --with-zlib \
+ --with-libpthread \
+ --with-libevent \
+ --with-iconv \
--build=$ARCH-slackware-linux
make
@@ -135,11 +139,6 @@ find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
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
-# Install "frontend" to $DOCROOT/zabbix
-#mkdir -p $PKG/$DOCROOT/$PRGSHORT
-#cp -a frontends/php/* $PKG/$DOCROOT/$PRGSHORT/
-#chown -R $PHPUSER:$PHPGROUP $PKG/$DOCROOT/$PRGSHORT
-
# Database scripts
mkdir -p $PKG/usr/share/$PRGNAM/database/mysql
cp -a database/mysql $PKG/usr/share/$PRGNAM/database/
@@ -160,7 +159,11 @@ sed -e "s,# PidFile=/tmp/,PidFile=/var/run/$PRGSHORT/," \
-e "s,# DBSocket=/tmp/,DBSocket=/var/run/mysql/," \
-e "s,LogFile=/tmp/,LogFile=/var/log/$PRGSHORT/," \
$PKG/etc/$PRGSHORT/$PRGNAM.conf > $PKG/etc/$PRGSHORT/$PRGNAM.conf.new
-rm -f $PKG/etc/$PRGSHORT/$PRGNAM.conf
+rm -f $PKG/etc/$PRGSHORT/$PRGNAM.conf
+rm -rf $PKG/etc/$PRGSHORT/$PRGNAM.conf.d
+rm -rf $PKG/etc/$PRGSHORT/alertscripts/
+rm -rf $PKG/etc/$PRGSHORT/externalscripts/
+
# Init script
mkdir -p $PKG/etc/rc.d
diff --git a/network/zabbix_server/zabbix_server.info b/network/zabbix_server/zabbix_server.info
index 8f3228ed0e..c686cad35a 100644
--- a/network/zabbix_server/zabbix_server.info
+++ b/network/zabbix_server/zabbix_server.info
@@ -1,8 +1,8 @@
PRGNAM="zabbix_server"
-VERSION="6.0.9"
+VERSION="6.4.11"
HOMEPAGE="https://www.zabbix.com"
-DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.9.tar.gz"
-MD5SUM="09a0a984d667b79478351786731a8d17"
+DOWNLOAD="https://cdn.zabbix.com/zabbix/sources/stable/6.4/zabbix-6.4.11.tar.gz"
+MD5SUM="c1bac67a0d6b9d0d4376ca8176f327a9"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="unixODBC"
diff --git a/network/zeek/zeek.SlackBuild b/network/zeek/zeek.SlackBuild
index c7d9c7ed8c..ea2b1cdfaa 100644
--- a/network/zeek/zeek.SlackBuild
+++ b/network/zeek/zeek.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Zeek
-# Copyright 2018-2022 Michael Edie, Tampa, FL USA
+# Copyright 2018-2024 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:-5.0.2}
+VERSION=${VERSION:-6.0.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -72,6 +72,7 @@ cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
+
chown -R root:root .
# -L bails out because of a loop
find . \
@@ -80,10 +81,15 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+make distclean
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/opt/$PRGNAM
+ --prefix=/opt/$PRGNAM \
+ --libdir=/usr/lib${LIBDIRSUFFIX} \
+ --localstatedir=/var \
+ --mandir=/usr/man
make
make install DESTDIR=$PKG
@@ -93,11 +99,16 @@ find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | gr
BIN="zeek zeek-config zeekctl zeek-cut capstats trace-summary"
mkdir -p $PKG/usr/bin
-for i in $BIN
- do ln -sf /opt/$PRGNAM/bin/$i $PKG/usr/bin/$i
-done
+(
+ cd $PKG/usr/bin
+ for i in $BIN
+ do ln -sf ../../opt/$PRGNAM/bin/$i $i
+ done
+)
+
+find -L $PKG -type l 2>&1 | grep loop | iconv -t 8859_1//TRANSLIT |
+ cut -d"'" -f2 | xargs rm -v || true
-mv $PKG/opt/$PRGNAM/share/man $PKG/usr
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
@@ -109,4 +120,6 @@ mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
+rm -f opt/zeek/include/zeek/builtin-plugins/spicy-plugin/usr/lib$LIBDIRSUFFIX/zeek-spicy
+
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE
diff --git a/network/zeek/zeek.info b/network/zeek/zeek.info
index 83ff6d02f7..e3f6119155 100644
--- a/network/zeek/zeek.info
+++ b/network/zeek/zeek.info
@@ -1,8 +1,8 @@
PRGNAM="zeek"
-VERSION="5.0.2"
+VERSION="6.0.3"
HOMEPAGE="https://www.zeek.org"
-DOWNLOAD="https://download.zeek.org/zeek-5.0.2.tar.gz"
-MD5SUM="2315e70e439b146a7d05629eca6b0c1f"
+DOWNLOAD="https://download.zeek.org/zeek-6.0.3.tar.gz"
+MD5SUM="8cf75e403e8072b25140c2d56a294c4f"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zmap/zmap.SlackBuild b/network/zmap/zmap.SlackBuild
index 4511da96b0..f0ac1914d5 100644
--- a/network/zmap/zmap.SlackBuild
+++ b/network/zmap/zmap.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for zmap
-# Copyright 2015-2017 Willy Sudiarto Raharjo <willysr@slackbuilds.org>
+# Copyright 2015-2023 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=zmap
-VERSION=${VERSION:-2.1.1}
+VERSION=${VERSION:-3.0.0}
BUILD=${BUILD:-1}
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
@@ -101,7 +98,7 @@ rm -rf $PKG/usr/share
mkdir -p $PKG/etc/zmap/
cp conf/zmap.conf $PKG/etc/zmap/zmap.conf.new
-cp conf/blacklist.conf $PKG/etc/zmap/blacklist.conf.new
+cp conf/blocklist.conf $PKG/etc/zmap/blocklist.conf.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a AUTHORS LICENSE *.md $PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/network/zmap/zmap.info b/network/zmap/zmap.info
index f0e1a5bfe1..16608501b4 100644
--- a/network/zmap/zmap.info
+++ b/network/zmap/zmap.info
@@ -1,8 +1,8 @@
PRGNAM="zmap"
-VERSION="2.1.1"
+VERSION="3.0.0"
HOMEPAGE="https://zmap.io"
-DOWNLOAD="https://github.com/zmap/zmap/archive/v2.1.1/zmap-2.1.1.tar.gz"
-MD5SUM="a37555ac2beda1dc6f3754b411be545e"
+DOWNLOAD="https://github.com/zmap/zmap/archive/v3.0.0/zmap-3.0.0.tar.gz"
+MD5SUM="e1fca7020b86e05959a2b68ff87afd45"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES="byacc gengetopt"
diff --git a/network/znc/znc.SlackBuild b/network/znc/znc.SlackBuild
index 340c901471..4ed3b47eed 100644
--- a/network/znc/znc.SlackBuild
+++ b/network/znc/znc.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for ZNC
# Copyright 2007-2013 Sean Donner (sean.donner@gmail.com)
-# Copyright 2017, 2018, 2020 Mario Preksavec, Zagreb, Croatia
+# Copyright 2017, 2024 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -26,7 +26,7 @@
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=znc
-VERSION=${VERSION:-1.7.5}
+VERSION=${VERSION:-1.9.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -146,7 +146,6 @@ CXXFLAGS="$SLKCFLAGS" \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
- --build=$ARCH-slackware-linux \
$do_openssl \
$do_ipv6 \
$do_perl \
diff --git a/network/znc/znc.info b/network/znc/znc.info
index f5e72f4b13..5d089154e8 100644
--- a/network/znc/znc.info
+++ b/network/znc/znc.info
@@ -1,8 +1,8 @@
PRGNAM="znc"
-VERSION="1.7.5"
+VERSION="1.9.0"
HOMEPAGE="https://wiki.znc.in/ZNC"
-DOWNLOAD="https://znc.in/releases/archive/znc-1.7.5.tar.gz"
-MD5SUM="7df60c25e8aa61866b5be54994a78e2a"
+DOWNLOAD="https://znc.in/releases/archive/znc-1.9.0.tar.gz"
+MD5SUM="28c948af16e4b9307760d9fa951abf74"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/network/zoom-linux/zoom-linux.SlackBuild b/network/zoom-linux/zoom-linux.SlackBuild
index 49a0c450cf..4263ee5520 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-2021 Ebben Aries <slackbuilds@dscp.org>
+# Copyright 2018-2023 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:-5.12.0.4682} # may be overridden by source!
+VERSION=${VERSION:-6.0.0.4563} # may be overridden by source!
SRCNAM=zoom
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -71,10 +71,12 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
-cd $TMP
-rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$SRC.tar.xz
-cd $SRCNAM
+cd $PKG
+tar xvf $CWD/$SRC.pkg.tar.xz
+# don't want these
+rm -vrf .INSTALL .MTREE .PKGINFO
+rm -rf usr/bin/zoom usr/share/doc
+
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
@@ -82,25 +84,26 @@ 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 {} \;
-mkdir -p $PKG/opt/$PRGNAM
-cp -a * $PKG/opt/$PRGNAM
-
-mkdir -p $PKG/usr/bin
cd $PKG/usr/bin
-ln -sf /opt/zoom-linux/ZoomLauncher zoom-linux
+ln -sf ../../opt/zoom/ZoomLauncher zoom-linux
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+# remove old stuff that might be confused with games/zoom
+rm -fv $PKG/usr/share/applications/Zoom.desktop
+rm -fv $PKG/usr/share/mime/packages/zoom.xml
+rm -fv $PKG/usr/share/pixmaps/Zoom.png
-mkdir -p $PKG/usr/share/applications/
-install -D -m644 $CWD/zoom-linux.desktop $PKG/usr/share/applications/
+# add our own files
+install -m 0644 $CWD/zoom-linux.desktop -t $PKG/usr/share/applications/
+install -m 0644 $CWD/zoom-linux.png -t $PKG/usr/share/pixmaps/
+install -m 0644 $CWD/zoom-linux.xml -t $PKG/usr/share/mime/packages/
-mkdir -p $PKG/usr/share/pixmaps/
-cp $CWD/zoom-linux.png $PKG/usr/share/pixmaps/
-cp $CWD/application-x-zoom.png $PKG/usr/share/pixmaps/
+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/share/mime/packages/
-cp $CWD/zoom-linux.xml $PKG/usr/share/mime/packages/
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $CWD/README $PKG/usr/doc/$PRGNAM-$VERSION
+chown root:root $PKG/usr/doc/$PRGNAM-$VERSION/README
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/network/zoom-linux/zoom-linux.info b/network/zoom-linux/zoom-linux.info
index 4effc005a4..f1b77a4e27 100644
--- a/network/zoom-linux/zoom-linux.info
+++ b/network/zoom-linux/zoom-linux.info
@@ -1,10 +1,10 @@
PRGNAM="zoom-linux"
-VERSION="5.12.0.4682"
+VERSION="6.0.0.4563"
HOMEPAGE="https://www.zoom.us/"
DOWNLOAD="UNSUPPORTED"
MD5SUM=""
-DOWNLOAD_x86_64="https://d11yldzmag5yn.cloudfront.net/prod/5.12.0.4682/zoom_x86_64.tar.xz"
-MD5SUM_x86_64="536ffaed33bc3313f1eea18a5115922b"
+DOWNLOAD_x86_64="https://cdn.zoom.us/prod/6.0.0.4563/zoom_x86_64.pkg.tar.xz"
+MD5SUM_x86_64="0c53fed4b3eb7ad942708e02a468021a"
REQUIRES=""
MAINTAINER="Ebben Aries"
EMAIL="slackbuilds@dscp.org"
diff --git a/network/zsync/slack-desc b/network/zsync/slack-desc
index 13705bc452..ee8c8ed579 100644
--- a/network/zsync/slack-desc
+++ b/network/zsync/slack-desc
@@ -8,10 +8,10 @@
|-----handy-ruler------------------------------------------------------|
zsync: zsync (client-side implementation of the rsync algorithm)
zsync:
-zsync: zsync is a file transfer program. It allows you to download a file from
-zsync: a remote web server, where you have a copy of an older version of the
-zsync: file on your computer already. zsync downloads only the new parts of
-zsync: the file. It uses the same algorithm as rsync.
+zsync: zsync is a file transfer program. It allows you to download a file
+zsync: from a remote web server, where you have a copy of an older version of
+zsync: the file on your computer already. zsync downloads only the new parts
+zsync: of the file. It uses the same algorithm as rsync.
zsync:
zsync: The zsync web site is at http://zsync.moria.org.uk/
zsync: