{"id":16294230,"url":"https://github.com/alixaxel/halbox","last_synced_at":"2025-03-20T04:30:29.813Z","repository":{"id":5612347,"uuid":"6819789","full_name":"alixaxel/halBox","owner":"alixaxel","description":"Bash Script to Bootstrap Debian/Ubuntu Servers","archived":false,"fork":false,"pushed_at":"2019-06-23T18:24:22.000Z","size":262,"stargazers_count":29,"open_issues_count":4,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-28T23:01:51.926Z","etag":null,"topics":["nginx","shell","ubuntu"],"latest_commit_sha":null,"homepage":"https://github.com/alixaxel/halBox/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alixaxel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"custom":"https://paypal.me/alixaxel"}},"created_at":"2012-11-22T22:38:09.000Z","updated_at":"2025-02-11T17:23:51.000Z","dependencies_parsed_at":"2022-09-22T03:41:40.285Z","dependency_job_id":null,"html_url":"https://github.com/alixaxel/halBox","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alixaxel%2FhalBox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alixaxel%2FhalBox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alixaxel%2FhalBox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alixaxel%2FhalBox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alixaxel","download_url":"https://codeload.github.com/alixaxel/halBox/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244047647,"owners_count":20389206,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["nginx","shell","ubuntu"],"created_at":"2024-10-10T20:14:37.299Z","updated_at":"2025-03-20T04:30:29.448Z","avatar_url":"https://github.com/alixaxel.png","language":"Shell","funding_links":["https://paypal.me/alixaxel"],"categories":[],"sub_categories":[],"readme":"halBox\n======\n\nBash script with a bit of unicornian magic dust to set up and tweak your Ubuntu servers.\n\n***Nota bene:*** halBox ships with the harmless [EICAR test virus file](http://en.wikipedia.org/wiki/EICAR_test_file) to assess ClamAV.\n\nAs of version 0.40.0, halBox compatibility is reduced to Ubuntu 14.04 LTS only.\n\nSetup\n=====\n\nAs *root*, copy+paste the following on your command-line:\n\n```shell\nexport LC_ALL=en_US.UTF-8 \u0026\u0026 \\\ncd ~ \u0026\u0026 \\\nwget -q https://github.com/alixaxel/halBox/archive/master.tar.gz -O ~/halBox.tar.gz \u0026\u0026 \\\ntar -xzvf ~/halBox.tar.gz \u0026\u0026 \\\nchmod +x ~/halBox-master/halBox.sh \u0026\u0026 \\\n~/halBox-master/halBox.sh\n```\n\nA default install should take less than 5 minutes to complete.\n\nMemory Usage\n============\n\nhalBox is VPS-oriented, it has been crafted to consume as little memory as possible.\n\nHere's what a default install looks like after a fresh *reboot* (under Ubuntu 14.04 LTS):\n\n    root@trusty:~# ps_mem\n      Private + Shared    = RAM         Program\n\n     96.0 KiB +  35.0 KiB = 131.0 KiB   lockfile-touch\n    104.0 KiB +  35.0 KiB = 139.0 KiB   lockfile-create\n    188.0 KiB +  25.0 KiB = 213.0 KiB   ureadahead\n    184.0 KiB +  31.5 KiB = 215.5 KiB   atd\n    172.0 KiB +  65.5 KiB = 237.5 KiB   acpid\n    192.0 KiB +  50.5 KiB = 242.5 KiB   ondemand\n    180.0 KiB +  84.0 KiB = 264.0 KiB   sleep (2)\n    284.0 KiB + 100.0 KiB = 384.0 KiB   cron\n    288.0 KiB + 142.5 KiB = 430.5 KiB   ping (2)\n    380.0 KiB +  60.5 KiB = 440.5 KiB   upstart-socket-bridge\n    364.0 KiB +  97.0 KiB = 461.0 KiB   upstart-udev-bridge\n    412.0 KiB +  60.0 KiB = 472.0 KiB   upstart-file-bridge\n    568.0 KiB + 179.5 KiB = 747.5 KiB   systemd-logind\n    728.0 KiB +  66.0 KiB = 794.0 KiB   dbus-daemon\n    588.0 KiB + 230.5 KiB = 818.5 KiB   ntpdate (3)\n    860.0 KiB +  92.5 KiB = 952.5 KiB   systemd-udevd\n      1.0 MiB +  79.0 KiB =   1.1 MiB   rsyslogd\n    952.0 KiB + 339.0 KiB =   1.3 MiB   getty (6)\n      1.6 MiB + 146.5 KiB =   1.7 MiB   init\n      2.6 MiB + 110.0 KiB =   2.7 MiB   bash\n      2.0 MiB + 834.0 KiB =   2.8 MiB   nginx (3)\n      2.1 MiB +   1.4 MiB =   3.5 MiB   sshd (2)\n      9.3 MiB + 324.5 KiB =   9.6 MiB   mysqld\n     12.1 MiB +   7.4 MiB =  19.5 MiB   php5-fpm (3)\n    ---------------------------------\n                             48.9 MiB\n    =================================\n\nOf course, some features and configurations had to be sacrificed, most notably:\n\n* InnoDB engine is disabled if your server has less than 512MB of RAM\n* MyISAM [`key_buffer_size` directive](http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_key_buffer_size) is set to 8MB\n* *non*-PDO database drivers are disabled by default (this includes `mysql` and `mysqli`)\n\nAs of version 0.31.0, halBox also ships with custom rsync LIFO directory utilities:\n\n* [`rsync_cp`](https://github.com/alixaxel/halBox/blob/master/overlay/rsync/usr/local/bin/rsync_cp)\n* [`rsync_mv`](https://github.com/alixaxel/halBox/blob/master/overlay/rsync/usr/local/bin/rsync_mv)\n* [`rsync_rm`](https://github.com/alixaxel/halBox/blob/master/overlay/rsync/usr/local/bin/rsync_rm)\n\nAs of version 0.40.0, halBox comes with three helper scripts for nginx:\n\n* [`ngxensite`](https://github.com/alixaxel/halBox/blob/master/overlay/nginx/usr/local/sbin/ngxensite) (mimics Apache [`a2ensite`](http://manpages.ubuntu.com/manpages/precise/man8/a2ensite.8.html))\n* [`ngxdissite`](https://github.com/alixaxel/halBox/blob/master/overlay/nginx/usr/local/sbin/ngxdissite) (mimics Apache [`a2dissite`](http://manpages.ubuntu.com/manpages/precise/man8/a2dissite.8.html))\n* [`ngxgzip`](https://github.com/alixaxel/halBox/blob/master/overlay/nginx/usr/local/sbin/ngxgzip) (optimal asset pre-compressor for [`gzip_static`](http://nginx.org/en/docs/http/ngx_http_gzip_static_module.html))\n\nAs of version 0.50.0, halBox ships with [Let's Encrypt](https://letsencrypt.org/) and:\n\n* [`ngxsite`](https://github.com/alixaxel/halBox/blob/master/overlay/nginx/usr/local/sbin/ngxsite) (deploys a new nginx virtual host with SSL and *non-www to www* redirection)\n\nScreens *(Ubuntu)*\n==================\n\n*These may not (and probably do not) reflect the current version of the script / packages.*\n\n![Demo](http://i.imgur.com/hzYf9DL.gif \"Demo\")\n\nSoftware\n========\n\n```\nack-grep\napache2-utils\nbc\nbcrypt\nbeanstalkd\nbuild-essential\ncaddy\nchkrootkit\nclamav\ncloc\ncurl\ndevd\ndexec\ndialog\ndirenv\ndocker\ndstat\nerrcheck\nexim4\ngit\nglances\ngo\ngodef\ngodep\ngodepgraph\ngodoc\ngoimports\ngometalinter\ngox\ngoxc\nhost\nhtop\nhttperf\nhttpie\nhub\niftop\nimagemagick\ninnotop\ninterfacer\nioping\niotop\niptables\njpegoptim\njq\njsonf\njulia\nlets-encrypt\nletsencrypt\nlibav-tools\nmaldet\nmariadb\nmc\nmemcached\nmongodb\nmycli\nmysql\nmysqltuner\nnano\nncdu\nnginx\nngrok\nngxdissite\nngxensite\nngxgzip\nngxtop\nnodejs\nntp\noh-my-zsh\noptipng\noracle\npandoc\npenv\npgcli\npgloader\npgtop\npgtune\nphp5\nphp5-adminer\nphp5-amqp\nphp5-apcu\nphp5-bitset\nphp5-chdb\nphp5-composer\nphp5-curl\nphp5-discount\nphp5-doublemetaphone\nphp5-eio\nphp5-enchant\nphp5-ev\nphp5-fann\nphp5-gd\nphp5-gearman\nphp5-gender\nphp5-geoip\nphp5-gmp\nphp5-gnupg\nphp5-http\nphp5-igbinary\nphp5-imagick\nphp5-imap\nphp5-inotify\nphp5-interbase\nphp5-intl\nphp5-jsmin\nphp5-json\nphp5-judy\nphp5-lasso\nphp5-ldap\nphp5-leveldb\nphp5-libevent\nphp5-librdf\nphp5-lzf\nphp5-mailparse\nphp5-mapscript\nphp5-mcrypt\nphp5-memcache\nphp5-memcached\nphp5-mogilefs\nphp5-mongo\nphp5-msgpack\nphp5-mssql\nphp5-mysql\nphp5-mysqlnd\nphp5-oauth\nphp5-odbc\nphp5-opcache\nphp5-pgsql\nphp5-phalcon\nphp5-phpunit\nphp5-pinba\nphp5-protocolbuffers\nphp5-ps\nphp5-pspell\nphp5-quickhash\nphp5-radius\nphp5-rar\nphp5-readline\nphp5-recode\nphp5-redis\nphp5-scream\nphp5-scrypt\nphp5-solr\nphp5-sphinx\nphp5-spidermonkey\nphp5-sqlite\nphp5-ssdeep\nphp5-ssh2\nphp5-stats\nphp5-stem\nphp5-stomp\nphp5-sundown\nphp5-svm\nphp5-svn\nphp5-swoole\nphp5-tidy\nphp5-timezonedb\nphp5-tokyo_tyrant\nphp5-uuid\nphp5-varnish\nphp5-xcache\nphp5-xdebug\nphp5-xhprof\nphp5-xmlrpc\nphp5-xsl\nphp5-yaf\nphp5-yaml\nphp5-yar\nphp7\nphp7-composer\nphp7-curl\nphp7-gd\nphp7-imap\nphp7-interbase\nphp7-intl\nphp7-json\nphp7-ldap\nphp7-mcrypt\nphp7-memcached\nphp7-mysql\nphp7-odbc\nphp7-opcache\nphp7-pgsql\nphp7-phpunit\nphp7-pspell\nphp7-readline\nphp7-recode\nphp7-redis\nphp7-sqlite\nphp7-tidy\nphp7-timezonedb\nphp7-xmlrpc\npostgresql\nps_mem\npydf\nr\nrake\nredis-server\nrkhunter\nrsync\nrsync_cp\nrsync_mv\nrsync_rm\nrtorrent\nruby\nrust\nscout_realtime\nscrypt\nsiege\nssdeep\nstrace\nsupervisor\ntesseract-ocr\ntmux\ntuning-primer\nunits\nunzip\nvim\nvirt-what\nvmtouch\nwkhtmltopdf\nyui-compressor\nzip\nzsh\n```\n\nCredits\n=======\n\nThis Bash script is inspired by:\n\n* [fideloper/Vaprobash](https://github.com/fideloper/Vaprobash)\n* [kr41/bash-booster](https://bitbucket.org/kr41/bash-booster)\n* [Linode StackScripts](http://www.linode.com/stackscripts/)\n* [lowendbox/lowendscript](https://github.com/lowendbox/lowendscript)\n* [perusio/nginx_ensite](https://github.com/perusio/nginx_ensite)\n* [TigersWay/VPS](https://github.com/TigersWay/VPS)\n* [Xeoncross/lowendscript](https://github.com/Xeoncross/lowendscript)\n\nLicense\n=======\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falixaxel%2Fhalbox","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falixaxel%2Fhalbox","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falixaxel%2Fhalbox/lists"}