From a93dfdde6e75a2c29ac22e72c342f09f62cf937b Mon Sep 17 00:00:00 2001 From: Andrew Brown Date: Wed, 17 Jan 2024 17:48:10 -0600 Subject: [PATCH] mark installation as "complete" at the end of script we use an empty file in `~/.homestead-features` to mark a "feature" as installed. we should move to the end of the file, so we know the install has fully completed successfully. I ran into this issue with the "webdriver" install. because Chrome does not have an ARM version, the install would fail, but the file would already be created, the provision scipt thought it succeeded. --- scripts/features/blackfire.sh | 6 +++--- scripts/features/cassandra.sh | 6 +++--- scripts/features/chronograf.sh | 6 +++--- scripts/features/couchdb.sh | 6 +++--- scripts/features/crystal.sh | 6 +++--- scripts/features/dockstead.sh | 6 +++--- scripts/features/dragonflydb.sh | 2 +- scripts/features/elasticsearch.sh | 8 +++----- scripts/features/eventstore.sh | 6 +++--- scripts/features/flyway.sh | 6 +++--- scripts/features/gearman.sh | 6 +++--- scripts/features/golang.sh | 6 +++--- scripts/features/grafana.sh | 6 +++--- scripts/features/heroku.sh | 6 +++--- scripts/features/logstash.sh | 6 +++--- scripts/features/mailpit.sh | 6 +++--- scripts/features/mariadb.sh | 6 +++--- scripts/features/meilisearch.sh | 6 +++--- scripts/features/minio.sh | 7 +++---- scripts/features/mongodb.sh | 6 +++--- scripts/features/neo4j.sh | 6 +++--- scripts/features/ohmyzsh.sh | 6 +++--- scripts/features/openresty.sh | 6 +++--- scripts/features/php5.6.sh | 6 +++--- scripts/features/php7.0.sh | 6 +++--- scripts/features/php7.1.sh | 6 +++--- scripts/features/php7.2.sh | 6 +++--- scripts/features/php7.3.sh | 6 +++--- scripts/features/php7.4.sh | 6 +++--- scripts/features/php8.0.sh | 6 +++--- scripts/features/php8.1.sh | 6 +++--- scripts/features/php8.2.sh | 6 +++--- scripts/features/php8.3.sh | 6 +++--- scripts/features/pm2.sh | 6 +++--- scripts/features/python.sh | 6 +++--- scripts/features/r-base.sh | 6 +++--- scripts/features/rabbitmq.sh | 7 +++---- scripts/features/rustc.sh | 6 +++--- scripts/features/rvm.sh | 6 +++--- scripts/features/solr.sh | 6 +++--- scripts/features/timescaledb.sh | 3 +-- scripts/features/trader.sh | 5 +++-- scripts/features/webdriver.sh | 6 +++--- 43 files changed, 125 insertions(+), 129 deletions(-) diff --git a/scripts/features/blackfire.sh b/scripts/features/blackfire.sh index 789605276..36439f275 100755 --- a/scripts/features/blackfire.sh +++ b/scripts/features/blackfire.sh @@ -17,9 +17,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/blackfire -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - wget -q -O - https://packages.blackfire.io/gpg.key | apt-key add - echo "deb http://packages.blackfire.io/debian any main" | tee /etc/apt/sources.list.d/blackfire.list @@ -57,3 +54,6 @@ service php7.3-fpm restart service php7.4-fpm restart service php8.0-fpm restart service blackfire-agent restart + +touch /home/$WSL_USER_NAME/.homestead-features/blackfire +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/cassandra.sh b/scripts/features/cassandra.sh index f1fa1ec1d..da4a7d45e 100755 --- a/scripts/features/cassandra.sh +++ b/scripts/features/cassandra.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/cassandra -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Cassandra and driver dependencies echo "deb http://www.apache.org/dist/cassandra/debian 311x main" | sudo tee -a /etc/apt/sources.list.d/cassandra.sources.list wget -q -O - https://www.apache.org/dist/cassandra/KEYS | sudo apt-key add - @@ -94,3 +91,6 @@ sudo rm -R /usr/src/php-driver echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" | sudo tee -a /etc/default/cassandra sudo service cassandra stop sudo service cassandra start + +touch /home/$WSL_USER_NAME/.homestead-features/cassandra +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/chronograf.sh b/scripts/features/chronograf.sh index b8004db8e..e685fdb6f 100755 --- a/scripts/features/chronograf.sh +++ b/scripts/features/chronograf.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/chronograf -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - chronourl="https://dl.influxdata.com/chronograf/releases/chronograf_1.5.0.1_amd64.deb" wget -q -O chronograf.deb $chronourl @@ -28,3 +25,6 @@ rm chronograf.deb systemctl enable chronograf systemctl daemon-reload systemctl start chronograf + +touch /home/$WSL_USER_NAME/.homestead-features/chronograf +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/couchdb.sh b/scripts/features/couchdb.sh index 56a027a57..8d35802a4 100755 --- a/scripts/features/couchdb.sh +++ b/scripts/features/couchdb.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/couchdb -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - echo "deb https://apache.bintray.com/couchdb-deb focal main" \ | sudo tee -a /etc/apt/sources.list.d/couchdb.list @@ -47,3 +44,6 @@ sudo service php7.2-fpm restart sudo service php7.3-fpm restart sudo service php7.4-fpm restart sudo service php8.0-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/couchdb +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/crystal.sh b/scripts/features/crystal.sh index 4ae55298d..b16d98f81 100755 --- a/scripts/features/crystal.sh +++ b/scripts/features/crystal.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/crystal -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Crystal Programming Language Support curl -sL "https://keybase.io/crystal/pgp_keys.asc" | sudo apt-key add - echo "deb https://dist.crystal-lang.org/apt crystal main" | sudo tee /etc/apt/sources.list.d/crystal.list @@ -36,3 +33,6 @@ mv lucky /usr/local/bin/. cd /home/vagrant rm -rf lucky_cli-0.11.0 rm -rf v0.11.0.tar.gz + +touch /home/$WSL_USER_NAME/.homestead-features/crystal +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/dockstead.sh b/scripts/features/dockstead.sh index 18f7e9188..d93031423 100644 --- a/scripts/features/dockstead.sh +++ b/scripts/features/dockstead.sh @@ -16,8 +16,8 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/dockstead -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Ensure we're in swarm mode docker swarm init --advertise-addr 192.168.56.56 + +touch /home/$WSL_USER_NAME/.homestead-features/dockstead +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/dragonflydb.sh b/scripts/features/dragonflydb.sh index 4427f4ac6..85ad32708 100644 --- a/scripts/features/dragonflydb.sh +++ b/scripts/features/dragonflydb.sh @@ -56,4 +56,4 @@ rm -rf dragonflydb.tar.gz # Mark installation as complete touch /home/$WSL_USER_NAME/.homestead-features/dragonflydb -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features \ No newline at end of file +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/elasticsearch.sh b/scripts/features/elasticsearch.sh index 12838978e..2e9daaf29 100755 --- a/scripts/features/elasticsearch.sh +++ b/scripts/features/elasticsearch.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/elasticsearch -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Determine version from config set -- "$1" @@ -32,11 +29,9 @@ else majorVersion="$(echo $version | head -c 1)" fi - echo "Elasticsearch installVersion: $installVersion" echo "Elasticsearch majorVersion: $majorVersion" - # Install Java & Elasticsearch wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - @@ -61,3 +56,6 @@ sudo sed -i "s/#cluster.name: my-application/cluster.name: homestead/" /etc/elas sudo systemctl enable elasticsearch.service sudo service elasticsearch start + +touch /home/$WSL_USER_NAME/.homestead-features/elasticsearch +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/eventstore.sh b/scripts/features/eventstore.sh index 9ed158550..05ec6df3c 100644 --- a/scripts/features/eventstore.sh +++ b/scripts/features/eventstore.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/eventstore -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Determine wanted version from config set -- "$1" IFS="."; @@ -52,3 +49,6 @@ setcap CAP_NET_BIND_SERVICE=+eip /usr/bin/eventstored # Enable and Start EventStore systemctl enable eventstore.service systemctl start eventstore.service + +touch /home/$WSL_USER_NAME/.homestead-features/eventstore +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/flyway.sh b/scripts/features/flyway.sh index b8183ad9c..67700f269 100644 --- a/scripts/features/flyway.sh +++ b/scripts/features/flyway.sh @@ -16,12 +16,12 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/flyway -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Flyway wget https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/4.2.0/flyway-commandline-4.2.0-linux-x64.tar.gz tar -zxvf flyway-commandline-4.2.0-linux-x64.tar.gz -C /usr/local chmod +x /usr/local/flyway-4.2.0/flyway ln -s /usr/local/flyway-4.2.0/flyway /usr/local/bin/flyway rm -rf flyway-commandline-4.2.0-linux-x64.tar.gz + +touch /home/$WSL_USER_NAME/.homestead-features/flyway +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/gearman.sh b/scripts/features/gearman.sh index 44f35e966..ba16498e9 100755 --- a/scripts/features/gearman.sh +++ b/scripts/features/gearman.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/gearman -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Gearman Job Server and PHP Extension sudo apt-get update sudo apt-get install gearman-job-server php-gearman -y @@ -26,3 +23,6 @@ sudo apt-get install gearman-job-server php-gearman -y # Listen on 0.0.0.0 sudo sed -i 's/localhost/0.0.0.0/g' /etc/default/gearman-job-server sudo service gearman-job-server restart + +touch /home/$WSL_USER_NAME/.homestead-features/gearman +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/golang.sh b/scripts/features/golang.sh index bda962d2e..b3bf6492e 100755 --- a/scripts/features/golang.sh +++ b/scripts/features/golang.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/golang -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - ARCH=$(arch) # Install Golang @@ -33,3 +30,6 @@ fi tar -C /usr/local -xzf golang.tar.gz go printf "\nPATH=\"/usr/local/go/bin:\$PATH\"\n" | tee -a /home/vagrant/.profile rm -rf golang.tar.gz + +touch /home/$WSL_USER_NAME/.homestead-features/golang +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/grafana.sh b/scripts/features/grafana.sh index 11ed9800c..110de0c8a 100755 --- a/scripts/features/grafana.sh +++ b/scripts/features/grafana.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/grafana -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - echo "deb https://packages.grafana.com/oss/deb stable main" > /etc/apt/sources.list.d/grafana.list curl -s https://packages.grafana.com/gpg.key | apt-key add - @@ -28,3 +25,6 @@ apt-get install -y grafana systemctl enable grafana-server systemctl daemon-reload systemctl start grafana-server + +touch /home/$WSL_USER_NAME/.homestead-features/grafana +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/heroku.sh b/scripts/features/heroku.sh index 889c64cd3..371e45482 100644 --- a/scripts/features/heroku.sh +++ b/scripts/features/heroku.sh @@ -16,8 +16,8 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/heroku -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Heroku CLI curl https://cli-assets.heroku.com/install-ubuntu.sh | sh + +touch /home/$WSL_USER_NAME/.homestead-features/heroku +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/logstash.sh b/scripts/features/logstash.sh index 4c6df6b84..c96c2b060 100644 --- a/scripts/features/logstash.sh +++ b/scripts/features/logstash.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/logstash -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Determine version from config set -- "$1" @@ -52,3 +49,6 @@ sudo apt-get -y install logstash"$installVersion" # Enable Start Elasticsearch sudo systemctl enable --now logstash.service + +touch /home/$WSL_USER_NAME/.homestead-features/logstash +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/mailpit.sh b/scripts/features/mailpit.sh index e7709f6a3..21e8fa119 100644 --- a/scripts/features/mailpit.sh +++ b/scripts/features/mailpit.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/mailpit -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - curl -sL https://raw.githubusercontent.com/axllent/mailpit/develop/install.sh | sh chown -f $WSL_USER_NAME:$WSL_USER_GROUP /usr/local/bin/mailpit @@ -39,3 +36,6 @@ EOF systemctl disable --now mailpit systemctl enable --now mailpit + +touch /home/$WSL_USER_NAME/.homestead-features/mailpit +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/mariadb.sh b/scripts/features/mariadb.sh index 989374ea7..65d853727 100755 --- a/scripts/features/mariadb.sh +++ b/scripts/features/mariadb.sh @@ -15,9 +15,6 @@ if [ -f /home/$WSL_USER_NAME/.homestead-features/mariadb ]; then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/mariadb -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Disable Apparmor # See https://github.com/laravel/homestead/issues/629#issue-247524528 service apparmor stop @@ -80,3 +77,6 @@ mariadb-upgrade --user="root" --verbose --force service mariadb restart unset MYSQL_PWD + +touch /home/$WSL_USER_NAME/.homestead-features/mariadb +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/meilisearch.sh b/scripts/features/meilisearch.sh index 8c0132d4c..367a4ccb4 100644 --- a/scripts/features/meilisearch.sh +++ b/scripts/features/meilisearch.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/meilisearch -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # add the sources for meilisearch curl -L https://install.meilisearch.com | sh mv ./meilisearch /usr/bin/ @@ -43,3 +40,6 @@ systemctl enable meilisearch # Start the meilisearch service systemctl start meilisearch + +touch /home/$WSL_USER_NAME/.homestead-features/meilisearch +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/minio.sh b/scripts/features/minio.sh index de07a4ced..a3bbf1680 100755 --- a/scripts/features/minio.sh +++ b/scripts/features/minio.sh @@ -18,10 +18,6 @@ fi ARCH=$(arch) - -touch /home/$WSL_USER_NAME/.homestead-features/minio -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - if [[ "$ARCH" == "aarch64" ]]; then curl -sO https://dl.minio.io/server/minio/release/linux-arm64/minio else @@ -66,3 +62,6 @@ fi chmod +x mc sudo mv mc /usr/local/bin mc config host add homestead http://127.0.1.1:9600 homestead secretkey + +touch /home/$WSL_USER_NAME/.homestead-features/minio +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/mongodb.sh b/scripts/features/mongodb.sh index ebcfcfab6..5440b1fb4 100755 --- a/scripts/features/mongodb.sh +++ b/scripts/features/mongodb.sh @@ -18,9 +18,6 @@ fi ARCH=$(arch) -touch /home/$WSL_USER_NAME/.homestead-features/mongodb -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - if [[ "$ARCH" == "aarch64" ]]; then echo "deb [ arch=arm64 ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list else @@ -163,3 +160,6 @@ sudo ln -s /etc/php/8.2/mods-available/mongo.ini /etc/php/8.2/fpm/conf.d/20-mong sudo service php8.2-fpm restart mongosh admin --eval "db.createUser({user:'homestead',pwd:'secret',roles:['root']})" + +touch /home/$WSL_USER_NAME/.homestead-features/mongodb +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/neo4j.sh b/scripts/features/neo4j.sh index 7584853a3..232664acc 100755 --- a/scripts/features/neo4j.sh +++ b/scripts/features/neo4j.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/neo4j -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - wget -O - https://debian.neo4j.org/neotechnology.gpg.key | sudo apt-key add - echo 'deb https://debian.neo4j.org/repo stable/' | sudo tee -a /etc/apt/sources.list.d/neo4j.list apt-get update @@ -50,3 +47,6 @@ cypher-shell -u neo4j -p secret "CALL dbms.security.createUser('homestead', 'sec # Delete default Neo4j user cypher-shell -u homestead -p secret "CALL dbms.security.deleteUser('neo4j');" + +touch /home/$WSL_USER_NAME/.homestead-features/neo4j +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/ohmyzsh.sh b/scripts/features/ohmyzsh.sh index 2a02f47ba..d9d7dbd74 100755 --- a/scripts/features/ohmyzsh.sh +++ b/scripts/features/ohmyzsh.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/oh-my-zsh -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install oh-my-zsh git clone https://github.com/ohmyzsh/ohmyzsh.git /home/vagrant/.oh-my-zsh cp /home/vagrant/.oh-my-zsh/templates/zshrc.zsh-template /home/vagrant/.zshrc @@ -37,3 +34,6 @@ chown -R vagrant:vagrant /home/vagrant/.oh-my-zsh chown vagrant:vagrant /home/vagrant/.zshrc chown vagrant:vagrant /home/vagrant/.zprofile chsh -s /bin/zsh vagrant + +touch /home/$WSL_USER_NAME/.homestead-features/oh-my-zsh +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/openresty.sh b/scripts/features/openresty.sh index 4b13e4b8c..47c37a012 100755 --- a/scripts/features/openresty.sh +++ b/scripts/features/openresty.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/openresty -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Openresty wget -qO - https://openresty.org/package/pubkey.gpg | sudo apt-key add - @@ -33,3 +30,6 @@ sudo sed -i "s/listen\s*80;/listen\ 8888;/g" /etc/openresty/nginx.conf sudo service openresty restart sudo service nginx start + +touch /home/$WSL_USER_NAME/.homestead-features/openresty +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php5.6.sh b/scripts/features/php5.6.sh index ff91b2f13..61f7264cc 100644 --- a/scripts/features/php5.6.sh +++ b/scripts/features/php5.6.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php56 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 5.6 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php5.6-bcmath php5.6-bz2 php5.6-cgi php5.6-cli php5.6-common php5.6-curl php5.6-dba php5.6-dev php5.6-enchant \ @@ -72,3 +69,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/5.6/fpm/pool.d/www.conf systemctl enable php5.6-fpm service php5.6-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php56 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php7.0.sh b/scripts/features/php7.0.sh index f168bc0de..d95693453 100644 --- a/scripts/features/php7.0.sh +++ b/scripts/features/php7.0.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php70 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 7.0 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php7.0-bcmath php7.0-bz2 php7.0-cgi php7.0-cli php7.0-common php7.0-curl php7.0-dba php7.0-dev php7.0-enchant \ @@ -71,3 +68,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/7.0/fpm/pool.d/www.conf systemctl enable php7.0-fpm service php7.0-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php70 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php7.1.sh b/scripts/features/php7.1.sh index d03f979ab..3cd9c5ef4 100644 --- a/scripts/features/php7.1.sh +++ b/scripts/features/php7.1.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php71 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 7.1 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php7.1-bcmath php7.1-bz2 php7.1-cgi php7.1-cli php7.1-common php7.1-curl php7.1-dba php7.1-dev php7.1-enchant \ @@ -71,3 +68,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/7.1/fpm/pool.d/www.conf systemctl enable php7.1-fpm service php7.1-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php71 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php7.2.sh b/scripts/features/php7.2.sh index 86193c20b..445d3e4a2 100644 --- a/scripts/features/php7.2.sh +++ b/scripts/features/php7.2.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php72 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 7.2 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php7.2-bcmath php7.2-bz2 php7.2-dba php7.2-enchant php7.2-fpm php7.2-imap php7.2-interbase php7.2-intl \ @@ -72,3 +69,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/7.2/fpm/pool.d/www.conf systemctl enable php7.2-fpm service php7.2-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php72 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php7.3.sh b/scripts/features/php7.3.sh index bf98e10db..f613b6472 100644 --- a/scripts/features/php7.3.sh +++ b/scripts/features/php7.3.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php73 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 7.3 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php7.3 php7.3-bcmath php7.3-bz2 php7.3-cgi php7.3-cli php7.3-common php7.3-curl php7.3-dba php7.3-dev php7.3-enchant \ @@ -71,3 +68,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/7.3/fpm/pool.d/www.conf systemctl enable php7.3-fpm service php7.3-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php73 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php7.4.sh b/scripts/features/php7.4.sh index 4dc69401c..1eb7610a4 100644 --- a/scripts/features/php7.4.sh +++ b/scripts/features/php7.4.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php74 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 7.4 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php7.4 php7.4-bcmath php7.4-bz2 php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-dba php7.4-dev \ @@ -71,3 +68,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/7.4/fpm/pool.d/www.conf systemctl enable php7.4-fpm service php7.4-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php74 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php8.0.sh b/scripts/features/php8.0.sh index 9025a6301..16f0fcff9 100644 --- a/scripts/features/php8.0.sh +++ b/scripts/features/php8.0.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php80 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 8.0 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php8.0 php8.0-bcmath php8.0-bz2 php8.0-cgi php8.0-cli php8.0-common php8.0-curl php8.0-dba php8.0-dev \ @@ -71,3 +68,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/8.0/fpm/pool.d/www.conf systemctl enable php8.0-fpm service php8.0-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php80 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php8.1.sh b/scripts/features/php8.1.sh index db84dda96..bc5cdf0d0 100644 --- a/scripts/features/php8.1.sh +++ b/scripts/features/php8.1.sh @@ -24,9 +24,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php81 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 8.1 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php8.1 php8.1-bcmath php8.1-bz2 php8.1-cgi php8.1-cli php8.1-common php8.1-curl php8.1-dba php8.1-dev \ @@ -73,3 +70,6 @@ sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/8.1/fpm/pool.d/www.conf systemctl enable php8.1-fpm service php8.1-fpm restart + +touch /home/$WSL_USER_NAME/.homestead-features/php81 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php8.2.sh b/scripts/features/php8.2.sh index 651422c55..3c4cfada4 100644 --- a/scripts/features/php8.2.sh +++ b/scripts/features/php8.2.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php82 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 8.2 apt-get install -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" --allow-change-held-packages \ php8.2 php8.2-bcmath php8.2-bz2 php8.2-cgi php8.2-cli php8.2-common php8.2-curl php8.2-dba php8.2-dev \ @@ -60,3 +57,6 @@ sed -i "s/group = www-data/group = vagrant/" /etc/php/8.2/fpm/pool.d/www.conf sed -i "s/listen\.owner.*/listen.owner = vagrant/" /etc/php/8.2/fpm/pool.d/www.conf sed -i "s/listen\.group.*/listen.group = vagrant/" /etc/php/8.2/fpm/pool.d/www.conf sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/8.2/fpm/pool.d/www.conf + +touch /home/$WSL_USER_NAME/.homestead-features/php82 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/php8.3.sh b/scripts/features/php8.3.sh index f9267ecb5..6ad203dbc 100644 --- a/scripts/features/php8.3.sh +++ b/scripts/features/php8.3.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/php83 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # PHP 8.3 apt-get install -y --allow-change-held-packages \ php8.3 php8.3-bcmath php8.3-bz2 php8.3-cgi php8.3-cli php8.3-common php8.3-curl php8.3-dba php8.3-dev \ @@ -61,3 +58,6 @@ sed -i "s/group = www-data/group = vagrant/" /etc/php/8.3/fpm/pool.d/www.conf sed -i "s/listen\.owner.*/listen.owner = vagrant/" /etc/php/8.3/fpm/pool.d/www.conf sed -i "s/listen\.group.*/listen.group = vagrant/" /etc/php/8.3/fpm/pool.d/www.conf sed -i "s/;listen\.mode.*/listen.mode = 0666/" /etc/php/8.3/fpm/pool.d/www.conf + +touch /home/$WSL_USER_NAME/.homestead-features/php83 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/pm2.sh b/scripts/features/pm2.sh index 70c3c1283..3e4ee2cf7 100755 --- a/scripts/features/pm2.sh +++ b/scripts/features/pm2.sh @@ -16,8 +16,8 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/pm2 -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install pm2 npm install -g pm2 + +touch /home/$WSL_USER_NAME/.homestead-features/pm2 +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/python.sh b/scripts/features/python.sh index cb88cb812..6288f59b5 100755 --- a/scripts/features/python.sh +++ b/scripts/features/python.sh @@ -16,12 +16,12 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/pythontools -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Python apt-get update apt-get install -y python3-pip build-essential libssl-dev libffi-dev python3-dev python3-venv sudo -H -u vagrant bash -c 'pip3 install django' sudo -H -u vagrant bash -c 'pip3 install numpy' sudo -H -u vagrant bash -c 'pip3 install masonite' + +touch /home/$WSL_USER_NAME/.homestead-features/pythontools +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/r-base.sh b/scripts/features/r-base.sh index 99329aba3..69c28dba9 100644 --- a/scripts/features/r-base.sh +++ b/scripts/features/r-base.sh @@ -16,9 +16,9 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/r-base -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' apt install -y r-base + +touch /home/$WSL_USER_NAME/.homestead-features/r-base +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/rabbitmq.sh b/scripts/features/rabbitmq.sh index f5708bf2e..f8bcebdea 100755 --- a/scripts/features/rabbitmq.sh +++ b/scripts/features/rabbitmq.sh @@ -16,10 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/rabbitmq -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - - sudo apt-get install curl gnupg debian-keyring debian-archive-keyring apt-transport-https -y ## Team RabbitMQ's main signing key @@ -69,3 +65,6 @@ sudo rabbitmqctl set_topic_permissions -p / homestead ".*" ".*" ".*" # Install rabbitmqadmin CLI tool - https://www.rabbitmq.com/management-cli.html sudo wget -q http://localhost:15672/cli/rabbitmqadmin -O /usr/local/bin/rabbitmqadmin sudo chmod +x /usr/local/bin/rabbitmqadmin + +touch /home/$WSL_USER_NAME/.homestead-features/rabbitmq +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/rustc.sh b/scripts/features/rustc.sh index 211c70f69..320f8be80 100644 --- a/scripts/features/rustc.sh +++ b/scripts/features/rustc.sh @@ -15,8 +15,8 @@ if [ -f /home/$WSL_USER_NAME/.homestead-features/rustc ]; then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/rustc -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Run the Rust installation script as the user sudo -u $WSL_USER_NAME curl -LsS https://sh.rustup.rs | sudo -u $WSL_USER_NAME sh -s -- -y + +touch /home/$WSL_USER_NAME/.homestead-features/rustc +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/rvm.sh b/scripts/features/rvm.sh index 7d0342d5b..476c7533d 100644 --- a/scripts/features/rvm.sh +++ b/scripts/features/rvm.sh @@ -16,12 +16,12 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/rvm -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install RVM as vagrant user sudo -u $WSL_USER_NAME gpg --keyserver keyserver.ubuntu.com --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB sudo -u $WSL_USER_NAME curl -LsS https://get.rvm.io | sudo -u $WSL_USER_NAME bash -s stable --ruby --gems=bundler --auto-dotfiles # To start using RVM we need to run source /home/vagrant/.rvm/scripts/rvm + +touch /home/$WSL_USER_NAME/.homestead-features/rvm +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/solr.sh b/scripts/features/solr.sh index 3e1387d82..239cb02a5 100755 --- a/scripts/features/solr.sh +++ b/scripts/features/solr.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/solr -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install Java Runtime Enviroment sudo apt update sudo apt install default-jre php-solr -y @@ -32,3 +29,6 @@ rm solr-7.7.1.tgz install_solr_service.sh # Install Homestead Core sudo su -c "/opt/solr/bin/solr create -c homestead" solr + +touch /home/$WSL_USER_NAME/.homestead-features/solr +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/timescaledb.sh b/scripts/features/timescaledb.sh index 96d052817..d61f3c821 100755 --- a/scripts/features/timescaledb.sh +++ b/scripts/features/timescaledb.sh @@ -16,8 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/timescale - # Add TimeScaleDB PPA sudo sh -c "echo 'deb https://packagecloud.io/timescale/timescaledb/ubuntu/ `lsb_release -c -s` main' > /etc/apt/sources.list.d/timescaledb.list" wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo apt-key add - @@ -30,4 +28,5 @@ printf "\ntimescaledb.telemetry_level=off\n" | sudo tee -a /etc/postgresql/13/ma sudo service postgresql restart +touch /home/$WSL_USER_NAME/.homestead-features/timescale chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/trader.sh b/scripts/features/trader.sh index 984502bd1..cc4120d9f 100644 --- a/scripts/features/trader.sh +++ b/scripts/features/trader.sh @@ -16,8 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/trader - # Update PECL Channel sudo pecl channel-update pecl.php.net @@ -86,3 +84,6 @@ sudo ln -s /etc/php/5.6/mods-available/trader.ini /etc/php/5.6/fpm/conf.d/20-tra sudo ln -s /etc/php/5.6/mods-available/trader.ini /etc/php/5.6/cgi/conf.d/20-trader.ini sudo ln -s /etc/php/5.6/mods-available/trader.ini /etc/php/5.6/cli/conf.d/20-trader.ini sudo ln -s /etc/php/5.6/mods-available/trader.ini /etc/php/5.6/phpdbg/conf.d/20-trader.ini + +touch /home/$WSL_USER_NAME/.homestead-features/trader +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features diff --git a/scripts/features/webdriver.sh b/scripts/features/webdriver.sh index b38684841..d9a595fda 100755 --- a/scripts/features/webdriver.sh +++ b/scripts/features/webdriver.sh @@ -16,9 +16,6 @@ then exit 0 fi -touch /home/$WSL_USER_NAME/.homestead-features/webdriverutils -chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features - # Install The Chrome Web Driver & Dusk Utilities wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' | tee -a /etc/apt/sources.list.d/google-chrome.list @@ -27,3 +24,6 @@ apt-get update apt-get -y install libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 chromium-browser xvfb gtk2-engines-pixbuf \ xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable imagemagick x11-apps google-chrome-stable + +touch /home/$WSL_USER_NAME/.homestead-features/webdriverutils +chown -Rf $WSL_USER_NAME:$WSL_USER_GROUP /home/$WSL_USER_NAME/.homestead-features