With this toolbox, complex scripts can be created quickly because recurring tasks are consistently modularized. They only need to be listed as dependencies at the beginning of a script in the correct order.
The modules as well as the scripts are usually signed and hosted on my Nextcloud web server, which is the home of the scripts. From there, you can download signed versions that are always up-to-date and self-updating.
Important
The scripts are designed for and on debian based distributions. Whether and to what extent they work on non-debian systems has not been tested.
These are the scripts available for installation:
-
- installer and launcher for all the other scripts
- provides extensive system information
-
install janitor
sudo wget -O /usr/local/bin/janitor https://global-social.net/script/janitor sudo chmod +x /usr/local/bin/janitor
Note
These scripts are primarily developed for baremetal and vm installations and partially adapted for Nextcloud All-in-One. Other containerized solutions like snap or docker are not (yet) supported.
-
command-line client for the Nextcloud appstore
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-apps
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-apps https://global-social.net/script/nc-apps sudo chmod +x /usr/local/bin/nc-apps
- either by the
-
resolve "
Some files have not passed the integrity check
" warnings- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-integrity-fix
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-integrity-fix https://global-social.net/script/nc-integrity-fix sudo chmod +x /usr/local/bin/nc-integrity-fix
- either by the
-
completely reinvented interactive
occ
interface that makes it easier to find the right command with the available options and arguments for your task, with the ability to save your most usedocc
commands as favorites- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-occ
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-occ https://global-social.net/script/nc-occ sudo chmod +x /usr/local/bin/nc-occ
- either by the
-
similar to unix who, follow live who is logged in on your Nextcloud server
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-who
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-who https://global-social.net/script/nc-who sudo chmod +x /usr/local/bin/nc-who
- either by the
-
command-line client for the nextcloud database
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-sql
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-sql https://global-social.net/script/nc-sql sudo chmod +x /usr/local/bin/nc-sql
- either by the
-
list shares with their tokens and full path on the command line
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-shares
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-shares https://global-social.net/script/nc-shares sudo chmod +x /usr/local/bin/nc-shares
- either by the
-
define the refresh rate of subscribed calendars per calendar instead of one refresh rate for all subscribed calendars
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-subscribed-calendar
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-subscribed-calendar https://global-social.net/script/nc-subscribed-calendar sudo chmod +x /usr/local/bin/nc-subscribed-calendar
- either by the
-
mimetype checker script to integrate with flow external script
- Nextcloud All-in-One
- Nextcloud snap
- MySQL/MariaDB
- PostgreSQL
- SQLite3
-
install nc-mimecheck
- either by the
janitor
or:
sudo wget -O /usr/local/bin/nc-mimecheck https://global-social.net/script/nc-mimecheck sudo chmod +x /usr/local/bin/nc-mimecheck
- either by the
-
update PHP on your ubuntu/debian based server and switch back and forth between versions without much hassle
- actual and common debian based distributions with packaged php versions from "Debian PHP Maintainers" (OndΕej SurΓ½) like
- Debian stable and oldstable releases (no extended LTS support)
- Ubuntu LTS releases during the 5 years of standard security maintenance support
-
install php-updater
- either by the
janitor
or:
sudo wget -O /usr/local/bin/php-updater https://global-social.net/script/php-updater sudo chmod +x /usr/local/bin/php-updater
- either by the
- actual and common debian based distributions with packaged php versions from "Debian PHP Maintainers" (OndΕej SurΓ½) like
-
build PHP modules on your ubuntu/debian based server that cannot be built with PECL, like Lua
-
debian based distributions with dpkg
-
install php-module-builder
sudo wget -O /usr/local/bin/php-module-builder https://global-social.net/script/php-module-builder sudo chmod +x /usr/local/bin/php-module-builder
-
supported modules
Columns 8.0 to 8.4: available packaged versions for Debian/Ubuntu from "Debian PHP Maintainers" (OndΕej SurΓ½)
Module 8.0 8.1 8.2 8.3 8.4 php-module-builder amqp π’ π’ π’ π’ π’ apcu π’ π’ π’ π’ π’ β ast π’ π’ π’ π’ π’ bcmath π’ π’ π’ π’ π’ brotli π΄ π΄ π΄ π΄ π΄ β bz2 π’ π’ π’ π’ π’ cgi π’ π’ π’ π’ π’ cli π’ π’ π’ π’ π’ common π’ π’ π’ π’ π’ curl π’ π’ π’ π’ π’ dba π’ π’ π’ π’ π’ decimal π’ π’ π’ π’ π΄ β dev π’ π’ π’ π’ π’ dio π’ π’ π’ π’ π΄ ds π’ π’ π’ π’ π’ enchant π’ π’ π’ π’ π’ excimer π’ π’ π’ π’ π’ β facedetect π’ π’ π΄ π΄ π΄ β fpm π’ π’ π’ π’ π’ gd π’ π’ π’ π’ π’ gearman π’ π’ π’ π’ π’ gmagick π’ π’ π’ π’ π’ gmp π’ π’ π’ π’ π’ gnupg π’ π’ π’ π’ π’ grpc π’ π’ π’ π’ π΄ http π’ π’ π’ π’ π’ igbinary π’ π’ π’ π’ π’ β imagick π’ π’ π’ π’ π’ β imap π’ π’ π’ π’ π’ inotify π’ π’ π’ π’ π΄ β interbase π’ π’ π’ π’ π’ intl π’ π’ π’ π’ π’ ldap π’ π’ π’ π’ π’ libvirt-php π’ π’ π’ π’ π’ lua π΄ π΄ π΄ π΄ π΄ β lz4 π’ π’ π’ π’ π΄ β mailparse π’ π’ π’ π’ π’ maxminddb π’ π’ π’ π’ π’ mbstring π’ π’ π’ π’ π’ mcrypt π’ π’ π’ π’ π’ memcache π’ π’ π’ π’ π’ β memcached π’ π’ π’ π’ π’ β mongodb π’ π’ π’ π’ π’ msgpack π’ π’ π’ π’ π’ β mysql π’ π’ π’ π’ π’ oauth π’ π’ π’ π’ π’ odbc π’ π’ π’ π’ π’ opcache π’ π’ π’ π’ π’ pcov π’ π’ π’ π’ π’ pgsql π’ π’ π’ π’ π’ phalcon5 π’ π’ π’ π’ π΄ phpdbg π’ π’ π’ π’ π’ pinba π’ π’ π’ π’ π΄ pq π’ π’ π’ π’ π’ propro π’ π’ π’ π΄ π΄ protobuf π’ π’ π’ π’ π΄ ps π’ π’ π’ π’ π’ pspell π’ π’ π’ π’ π’ psr π’ π’ π’ π’ π’ raphf π’ π’ π’ π’ π’ rdkafka π’ π’ π’ π’ π΄ readline π’ π’ π’ π’ π’ redis π’ π’ π’ π’ π’ β rrd π’ π’ π’ π’ π’ β smbclient π’ π’ π’ π’ π΄ β snmp π’ π’ π’ π’ π’ soap π’ π’ π’ π’ π’ solr π’ π’ π’ π’ π΄ β sqlite3 π’ π’ π’ π’ π’ ssh2 π’ π’ π’ π’ π’ β stomp π’ π’ π’ π’ π’ β swoole π’ π’ π’ π’ π΄ β sybase π’ π’ π’ π’ π’ tideways π’ π’ π’ π΄ π΄ β tidy π’ π’ π’ π’ π’ uopz π’ π’ π’ π’ π’ β uploadprogress π’ π’ π’ π’ π’ β uuid π’ π’ π’ π’ π’ β vips π’ π’ π’ π’ π΄ β xdebug π’ π’ π’ π’ π’ β xhprof π’ π’ π’ π’ π΄ β xml π’ π’ π’ π’ π’ xmlrpc π’ π’ π’ π’ π’ xsl π’ π’ π’ π’ π’ yac π’ π’ π’ π’ π’ β yaml π’ π’ π’ π’ π’ β zip π’ π’ π’ π’ π’ zmq π’ π’ π’ π’ π’ zstd π’ π’ π’ π’ π΄ β
-
Development setup
Since the scripts are very restrictive with the integrity check and do not allow any changes to the code β modified modules are immediately deleted and replaced by the module server β I have integrated a local module server that allows anyone to host the modules on their own localhost independently of any outside web server. If the scripts are built that way, the local module server starts and stops together with the script and takes over the provision of the modules.
The config/configure file is already set up to build the scripts with the local web server.
These are the steps to build:
# Be sure to cleanup older builds
sudo make clean
# Be sure to perform a pull beforehand to get the latest version.
git pull origin main
sudo make and-install-all-scripts
sudo make modules
sudo make sign-and-release-all-modules
That way, the modules will be served with their hashes, so they are protected against changes. Therefore, you have to make any desired changes before you build them.
I hope you enjoy it a lot!
ernolf