Last active
April 8, 2024 09:13
-
-
Save danielalvarenga/29829f997915a00d8f7dda51b8c33df0 to your computer and use it in GitHub Desktop.
Revisions
-
danielalvarenga revised this gist
Oct 2, 2020 . 1 changed file with 6 additions and 6 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -187,8 +187,8 @@ function deletedir { function cleanpackages { exececho "*** Fix and clean packages" execsudo apt-get -y --fix-broken install execsudo apt-get -y autoremove execsudo apt-get clean } @@ -292,9 +292,9 @@ then wget https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz fi execsudo tar -C /usr/local -xzf $GO_FILE echo '' >> $HOME/.profile echo '# Add GO lang path environment variable' >> $HOME/.profile echo 'export PATH=$PATH:/usr/local/go/bin' >> $HOME/.profile mkdir -p $HOME/go/src fi @@ -496,7 +496,7 @@ then eval "$(rbenv init -)" git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_DIR echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" exececho "Installing Ruby $RUBY_VERSION" -
danielalvarenga revised this gist
Oct 2, 2020 . 1 changed file with 145 additions and 119 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -27,13 +27,13 @@ COLORIZE_TERMINAL=false # Configure GIT CONFIGURE_GITHUB=false GITHUB_NAME="My commit name" GITHUB_MAIL="email_in_github@any.com" GITHUB_USER="github_username" # Docker DOCKER=false DOCKER_COMPOSE=false DOCKER_COMPOSE_VERSION=1.27.4 # Java oracle @@ -49,33 +49,33 @@ GO_VERSION=1.15.2 # Install Node, npm # https://github.com/nodesource/distributions/blob/master/README.md#debinstall NODEJS=false NODEJS_VERSION=lts # use "lts", "current" or the number of version YARN=false # Ruby RUBY=false RUBY_VERSION=2.7.1 RUBY_VERSION_PATH=2.7 RUBY_VERSION_MANAGER=RBENV # Use RVM or RBENV or false to source instalation RAILS=false RAILS_VERSION=6.0.3.3 # Terminal text editor VIM=false # Visual studio code ide VISUAL_STUDIO_CODE=false # For files compression COMPRESS_7ZIP=false # Image editor GIMP=false # Player and codecs VLC=false # qBitTorrent TORRENT=false @@ -87,7 +87,7 @@ SPOTIFY=false TERMINATOR=false # Partitions manager GPARTED=false # Rest api simulations POSTMAN=false @@ -96,7 +96,7 @@ POSTMAN=false SKYPE=false # Google chrome web browser GOOGLE_CHROME=false # Database sqlite SQLITE=false @@ -125,7 +125,7 @@ MYSQL_PASSWORD=root WORKBENCH=false # Manage extra options for mouse, keyboard and other resources of ubuntu TWEAKS=false # Paths @@ -146,6 +146,11 @@ function exececho { echo "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function exececho2 { echo "$@" exececho "$@" } function dpkginstall { exececho "*** Installing package $1" shift @@ -175,6 +180,18 @@ function deletefile { if [ -f "$@" ]; then execsudo rm "$@"; fi; } function deletedir { exececho "*** Removing folder $@" if [ -d "$@" ]; then execsudo rm -rf "$@"; fi; } function cleanpackages { exececho "*** Fix and clean packages" execsudo apt -y --fix-broken install execsudo apt -y autoremove execsudo apt-get clean } deletefile $LOG_SCRIPT touch $LOG_SCRIPT @@ -293,8 +310,8 @@ fi if ( $YARN || $RUBY ) then curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | execsudo apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | execsudo tee /etc/apt/sources.list.d/yarn.list execsudo apt-get update aptinstall Yarn yarn yarn -v @@ -411,6 +428,7 @@ fi if $MYSQL then uninstallmysql execsudo debconf-set-selections <<< "mysql-server mysql-server/root_password password $MYSQL_USER" execsudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $MYSQL_PASSWORD" aptinstall MySQL mysql-server mysql-client libmysqlclient-dev @@ -427,10 +445,12 @@ fi if $WORKBENCH then cleanpackages aptinstall "Workbench dependencies" mysql-client libmysqlclient-dev libatkmm-1.6-1v5 libcairomm-1.0-1v5 libglibmm-2.4-1v5 libgtkmm-3.0-1v5 libpangomm-1.4-1v5 libsigc++-2.0-0v5 libssl-dev libssl1.1 libproj-dev exececho "*** Installing Workbench" cd $DOWNLOADS WORKBENCH_FILE=$DOWNLOADS/mysql-workbench-community_8.0.21-1ubuntu20.04_amd64.deb if [ -f $WORKBENCH_FILE ] @@ -442,17 +462,16 @@ then dpkginstall Workbench $WORKBENCH_FILE fi if $RUBY then cd aptinstall "Ruby on Rails dependences" git-core zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev nodejs yarn if [ $RUBY_VERSION_MANAGER == "RVM" ] then exececho "installing RVM with RUBY $RUBY_VERSION" if ! type rvm >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT; then aptinstall "RVM dependencies" libgdbm-dev libncurses5-dev automake libtool bison libffi-dev gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable @@ -465,32 +484,23 @@ then elif [ $RUBY_VERSION_MANAGER == "RBENV" ] then exececho "Installing Rbenv" aptinstall "Rbenv dependencies" autoconf bison libssl-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev deletedir $RBENV_DIR git clone https://github.com/rbenv/rbenv.git $RBENV_DIR echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_DIR exececho 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" exececho "Installing Ruby $RUBY_VERSION" rbenv install $RUBY_VERSION -s >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT rbenv global $RUBY_VERSION @@ -515,7 +525,7 @@ then ruby -v exececho "Installing Bundler" exececho "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT @@ -547,95 +557,111 @@ fi if $COLORIZE_TERMINAL then echo -e "" >> $BASHRC echo -e "# Colorize terminal" >> $BASHRC echo -e "function parse_git_branch () {" >> $BASHRC echo -e " git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'" >> $BASHRC echo -e "}" >> $BASHRC echo -e 'RED="\[\033[01;31m\]"' >> $BASHRC echo -e 'YELLOW="\[\033[01;33m\]"' >> $BASHRC echo -e 'GREEN="\[\033[01;32m\]"' >> $BASHRC echo -e 'BLUE="\[\033[01;34m\]"' >> $BASHRC echo -e 'NO_COLOR="\[\033[00m\]"' >> $BASHRC if $WITH_HOST then echo -e 'PS1="$GREEN\u@\h$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC else echo -e 'PS1="$GREEN\u$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC fi source $BASHRC fi cleanpackages if $CONFIGURE_GITHUB then deletefile $GITCONFIG execsudo touch $GITCONFIG execsudo chmod 777 $GITCONFIG echo -e "[user]" >> $GITCONFIG echo -e " name = $GITHUB_NAME" >> $GITCONFIG echo -e " email = $GITHUB_MAIL" >> $GITCONFIG echo -e "[core]" >> $GITCONFIG echo -e " editor = vim -f" >> $GITCONFIG echo -e "[alias]" >> $GITCONFIG echo -e " df = diff" >> $GITCONFIG echo -e " st = status" >> $GITCONFIG echo -e " cm = commit" >> $GITCONFIG echo -e " ch = checkout" >> $GITCONFIG echo -e " br = branch" >> $GITCONFIG echo -e " lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative" >> $GITCONFIG echo -e " ctags = !.git/hooks/ctags" >> $GITCONFIG echo -e "[color]" >> $GITCONFIG echo -e " branch = auto" >> $GITCONFIG echo -e " diff = auto" >> $GITCONFIG echo -e " grep = auto" >> $GITCONFIG echo -e " interactive = auto" >> $GITCONFIG echo -e " status = auto" >> $GITCONFIG echo -e " ui = 1" >> $GITCONFIG echo -e "[branch]" >> $GITCONFIG echo -e " autosetuprebase = always" >> $GITCONFIG echo -e "[github]" >> $GITCONFIG echo -e " user = $GITHUB_USER" >> $GITCONFIG if [ -f $SSH_FOLDER/id_rsa_github ] then exececho "SSH key '$SSH_FOLDER/id_rsa_github' already exists" else ssh-keygen -t rsa -b 4096 -C "$GITHUB_MAIL" -N "" -f $SSH_FOLDER/id_rsa_github fi touch $SSHCONFIG echo -e "#Github (default)" >> $SSHCONFIG echo -e " Host github" >> $SSHCONFIG echo -e " HostName github.com" >> $SSHCONFIG echo -e " User git" >> $SSHCONFIG echo -e " IdentityFile $SSH_FOLDER/id_rsa_github" >> $SSHCONFIG exececho2 "" exececho2 "" exececho2 "**********************" exececho2 "CONFIGURE GIT USER" exececho2 "" exececho2 "Adicione a public ssh key em 'https://github.com/settings/ssh':" exececho2 "" exececho2 $(cat $SSH_FOLDER/id_rsa_github.pub) exececho2 "" exececho2 "**********************" fi if $POSTGRESQL then exececho2 "" exececho2 "" exececho2 "**********************" exececho2 "CONFIGURE O POSTGRES" exececho2 "" exececho2 "Para definir usuário e senha no PostgreSQL, execute manualmente os seguintes comandos:" exececho2 "sudo -u postgres createuser NOME_DO_USUARIO -s" exececho2 "sudo -u postgres psql" exececho2 "\password NOME_DO_USUARIO" exececho2 "**********************" fi echo "" echo "" echo "***************************" echo "*** See instalation logs in '$(pwd)/$LOG_SCRIPT'" echo "***************************" exececho2 "" exececho2 "" exececho2 "***************************" exececho2 "***RESTART YOUR COMPUTER***" exececho2 "***************************" exit -
danielalvarenga revised this gist
Oct 2, 2020 . 1 changed file with 15 additions and 15 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -32,19 +32,19 @@ CONFIGURE_GITHUB=false GITHUB_USER="your_username" # Docker DOCKER=true DOCKER_COMPOSE=true DOCKER_COMPOSE_VERSION=1.27.4 # Java oracle # Get JDK_URL from version that you want in: https://www.oracle.com/java/technologies/javase-downloads.html ORACLE_JAVA_SE=false JDK_URL=https://download.oracle.com/otn-pub/java/jdk/15+36/779bf45e88a44cbd9ea6621d33e33db1/jdk-15_linux-x64_bin.deb JDK_FILE=jdk-15_linux-x64_bin.deb JDK_PATH_INSTALLATION=/usr/lib/jvm/jdk-15 # Golang GOLANG=false GO_VERSION=1.15.2 # Install Node, npm @@ -55,7 +55,7 @@ NODEJS_VERSION=lts # use "lts", "current" or the number of version YARN=true # Ruby RUBY=false RUBY_VERSION=2.7.2 RUBY_VERSION_PATH=2.7 RUBY_VERSION_MANAGER=RBENV # Use RVM or RBENV or false to source instalation @@ -66,7 +66,7 @@ RAILS_VERSION=6.0.3.3 VIM=true # Visual studio code ide VISUAL_STUDIO_CODE=false # For files compression COMPRESS_7ZIP=true @@ -78,22 +78,22 @@ GIMP=true VLC=true # qBitTorrent TORRENT=false # Online music player SPOTIFY=false # Terminal TERMINATOR=false # Partitions manager GPARTED=true # Rest api simulations POSTMAN=false # Messenger SKYPE=false # Google chrome web browser GOOGLE_CHROME=true @@ -102,27 +102,27 @@ GOOGLE_CHROME=true SQLITE=false # Sqlite database manager SQLITE_BROWSER=false # Database postgresql POSTGRESQL=false # Postgresql database manager PGADMIN=false # Database redis REDIS=false # Redis database manager REDIS_DESKTOP_MANAGER=false # Database mysql MYSQL=false MYSQL_USER=root MYSQL_PASSWORD=root # Database manager mysql WORKBENCH=false # Manage extra options for mouse, keyboard and other resources of ubuntu TWEAKS=true -
danielalvarenga revised this gist
Oct 2, 2020 . 1 changed file with 227 additions and 161 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,14 +1,14 @@ #!/bin/bash # Author: Daniel Alvarenga Lima # Ubuntu version supported: 20.04 LTS amd64 # EXECUTE # sudo chmod +x script-configure-ubuntu18.94-amd64.sh # ./script-configure-ubuntu20.04-amd64.sh #INSTRUCTIONS # Set 'true' in items that you want to install # Required only in the first time to execute this script UPDATE_REPOSITORIES=true @@ -17,24 +17,35 @@ UPGRADE_PACKAGES=true # build-essential, git, curl REQUIRED=true # Add different colors and format terminal label # Execute only once as true. If you need customize, see: https://gist.github.com/danielalvarenga/2df8cabbd6f3041c2378 # Example with host: user@host:~/current_folder_path(branch) # Example without host (short): user:~/current_folder_path(branch) COLORIZE_TERMINAL=false # recommend to use false WITH_HOST=false # Configure GIT CONFIGURE_GITHUB=false GITHUB_NAME="Your name that appear in commits" GITHUB_MAIL="[email protected]" GITHUB_USER="your_username" # Docker DOCKER=false DOCKER_COMPOSE=false DOCKER_COMPOSE_VERSION=1.27.4 # Java oracle # Get JDK_URL from version that you want in: https://www.oracle.com/java/technologies/javase-downloads.html ORACLE_JAVA_SE=true JDK_URL=https://download.oracle.com/otn-pub/java/jdk/15+36/779bf45e88a44cbd9ea6621d33e33db1/jdk-15_linux-x64_bin.deb JDK_FILE=jdk-15_linux-x64_bin.deb JDK_PATH_INSTALLATION=/usr/lib/jvm/jdk-15 # Golang GOLANG=true GO_VERSION=1.15.2 # Install Node, npm # https://github.com/nodesource/distributions/blob/master/README.md#debinstall @@ -43,81 +54,81 @@ NODEJS_VERSION=lts # use "lts", "current" or the number of version YARN=true # Ruby RUBY=true RUBY_VERSION=2.7.2 RUBY_VERSION_PATH=2.7 RUBY_VERSION_MANAGER=RBENV # Use RVM or RBENV or false to source instalation RAILS=false RAILS_VERSION=6.0.3.3 # Terminal text editor VIM=true # Visual studio code ide VISUAL_STUDIO_CODE=true # For files compression COMPRESS_7ZIP=true # Image editor GIMP=true # Player and codecs VLC=true # qBitTorrent TORRENT=true # Online music player SPOTIFY=true # Terminal TERMINATOR=true # Partitions manager GPARTED=true # Rest api simulations POSTMAN=true # Messenger SKYPE=true # Google chrome web browser GOOGLE_CHROME=true # Database sqlite SQLITE=false # Sqlite database manager SQLITE_BROWSER=true # Database postgresql POSTGRESQL=false # Postgresql database manager PGADMIN=true # Database redis REDIS=false # Redis database manager REDIS_DESKTOP_MANAGER=true # Database mysql MYSQL=false MYSQL_USER=root MYSQL_PASSWORD=root # Database manager mysql WORKBENCH=true # Manage extra options for mouse, keyboard and other resources of ubuntu TWEAKS=true # Paths LOG_SCRIPT=./log_script.txt GITCONFIG=/etc/gitconfig SSH_FOLDER=~/.ssh @@ -127,39 +138,63 @@ BASHRC=~/.bashrc RBENV_DIR=~/.rbenv RUBY_BUILD_DIR="$RBENV_DIR/plugins/ruby-build" function execsudo { sudo "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function exececho { echo "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function dpkginstall { exececho "*** Installing package $1" shift execsudo dpkg -i "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function aptinstall { exececho "*** Installing $1" shift execsudo apt-get -y -f install "$@" } function aptremove { exececho "*** Removing $1" shift execsudo apt-get -y remove "$@" } function snapinstall { exececho "*** Installing $1" shift execsudo snap install "$@" } function deletefile { exececho "*** Removing file $@" if [ -f "$@" ]; then execsudo rm "$@"; fi; } deletefile $LOG_SCRIPT touch $LOG_SCRIPT exececho "***" exececho "*** Execution logs in '$(pwd)/$LOG_SCRIPT'" exececho "*** Execute 'tail -F $(pwd)/$LOG_SCRIPT' in another terminal to see logs in real time" exececho "***" if $UPDATE_REPOSITORIES then exececho "*** Update Respositories" sudo apt-get update fi if $UPGRADE_PACKAGES then exececho "*** Upgrade Packages" execsudo apt-get -y upgrade fi @@ -172,56 +207,85 @@ then fi if $DOCKER then aptremove "Existent docker versions" docker docker-engine docker.io containerd runc aptinstall "Docker dependencies" apt-transport-https ca-certificates curl gnupg-agent software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | execsudo apt-key add - execsudo apt-key fingerprint 0EBFCD88 execsudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" execsudo apt-get update aptinstall "Docker" docker-ce docker-ce-cli containerd.io if ! $(grep -q coisa /etc/group); then execsudo groupadd docker; fi; execsudo usermod -aG docker $USER docker --version fi if $DOCKER_COMPOSE then DOCKER_COMPOSE_RUNNER=/usr/local/bin/docker-compose DOCKER_COMPOSE_LINK=/usr/bin/docker-compose exececho "*** Removing existent docker-compose versions" deletefile $DOCKER_COMPOSE_RUNNER deletefile $DOCKER_COMPOSE_LINK exececho "*** Installing docker-compose" execsudo curl -L "https://github.com/docker/compose/releases/download/$DOCKER_COMPOSE_VERSION/docker-compose-$(uname -s)-$(uname -m)" -o $DOCKER_COMPOSE_RUNNER execsudo chmod +x $DOCKER_COMPOSE_RUNNER execsudo ln -s $DOCKER_COMPOSE_RUNNER $DOCKER_COMPOSE_LINK docker-compose --version fi if $ORACLE_JAVA_SE then aptremove "OpenJDK" --purge openjdk-* exececho "*** Installing Oracle Java" JDK_DOWNLOADED_FILE=$DOWNLOADS/$JDK_FILE if [ -f $JDK_DOWNLOADED_FILE ] then exececho "--- $JDK_FILE already exists" else cd $DOWNLOADS wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" $JDK_URL -O $JDK_DOWNLOADED_FILE fi dpkginstall "Java Oracle" $JDK_DOWNLOADED_FILE exececho "*** Setting java version" execsudo update-alternatives --install /usr/bin/java java $JDK_PATH_INSTALLATION/bin/java 1 execsudo update-alternatives --install /usr/bin/javac javac $JDK_PATH_INSTALLATION/bin/javac 1 execsudo update-alternatives --config java execsudo update-alternatives --config javac java -version fi if $GOLANG then exececho "*** installing GOlang" GO_FILE=$DOWNLOADS/go$GO_VERSION.linux-amd64.tar.gz if [ -f $GO_FILE ] then exececho "--- $GO_FILE already exists" else cd $DOWNLOADS wget https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz fi execsudo tar -C /usr/local -xzf $GO_FILE exececho '' exececho '# Add GO lang path environment variable' >> $HOME/.profile exececho 'export PATH=$PATH:/usr/local/go/bin' >> $HOME/.profile mkdir -p $HOME/go/src fi if ( $NODEJS || $RUBY ) then curl -sL https://deb.nodesource.com/setup_$NODEJS_VERSION.x | execsudo -E bash - execsudo apt-get update aptinstall NodeJS nodejs node -v fi @@ -230,8 +294,8 @@ fi if ( $YARN || $RUBY ) then curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - exececho "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list execsudo apt-get update aptinstall Yarn yarn yarn -v fi @@ -306,11 +370,11 @@ fi if $GOOGLE_CHROME then exececho "*** installing Google Chrome 64bits" CHROME_FILE=$DOWNLOADS/google-chrome-stable_current_amd64.deb if [ -f $CHROME_FILE ] then exececho "" else cd $DOWNLOADS wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb @@ -339,14 +403,16 @@ fi if $PGADMIN then curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | execsudo apt-key add execsudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update' aptinstall "PG Admin" pgadmin4 fi if $MYSQL then execsudo debconf-set-selections <<< "mysql-server mysql-server/root_password password $MYSQL_USER" execsudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $MYSQL_PASSWORD" aptinstall MySQL mysql-server mysql-client libmysqlclient-dev mysql -uroot -proot <<SQL CREATE USER 'rails'@'localhost'; @@ -361,15 +427,15 @@ fi if $WORKBENCH then exececho "*** installing Workbench" cd $DOWNLOADS aptinstall "Workbench dependencies" libctemplate2v5 libgeos-3.5.0 libgeos-c1v5 libhdf4-0-alt libaec0 libsz2 libhdf5-10 libnetcdf11 libpcrecpp0v5 libpq5 libtinyxml2.6.2v5 libzip4 python-crypto python-six python-ecdsa python-paramiko WORKBENCH_FILE=$DOWNLOADS/mysql-workbench-community_8.0.21-1ubuntu20.04_amd64.deb if [ -f $WORKBENCH_FILE ] then exececho "" else wget https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community_8.0.21-1ubuntu20.04_amd64.deb fi @@ -380,11 +446,11 @@ if $RUBY then aptinstall "Ruby/Rails dependences: zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev" zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev exececho "*** Git, NodeJS and Yarn are dependences of rails and also were installed." >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT if [ $RUBY_VERSION_MANAGER == "RVM" ] then exececho "installing RVM with RUBY $RUBY_VERSION" if ! type rvm >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT; then cd aptinstall "RVM dependencies" libgdbm-dev libncurses5-dev automake libtool bison libffi-dev @@ -399,16 +465,16 @@ then elif [ $RUBY_VERSION_MANAGER == "RBENV" ] then exececho "installing Rbenv with Ruby $RUBY_VERSION" aptinstall "Rbenv dependencies" autoconf bison libssl-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev if [ -d $RBENV_DIR ] then cd $RBENV_DIR git pull else git clone https://github.com/rbenv/rbenv.git $RBENV_DIR exececho 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc exececho 'eval "$(rbenv init -)"' >> ~/.bashrc export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" fi @@ -418,7 +484,7 @@ then git pull else git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_DIR exececho 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" cd $RUBY_BUILD_DIR ./install.sh @@ -429,13 +495,13 @@ then else exececho "*** installing Ruby from source" cd $DOWNLOADS RUBY_FILE=ruby-$RUBY_VERSION.tar.gz RUBY_DOWNLOADED_FILE=$DOWNLOADS/$RUBY_FILE if [ -f $RUBY_DOWNLOADED_FILE ] then exececho "--- $RUBY_FILE already exists" else wget http://ftp.ruby-lang.org/pub/ruby/$RUBY_VERSION_PATH/ruby-$RUBY_VERSION.tar.gz fi @@ -449,13 +515,13 @@ then ruby -v exececho installing Bundler exececho "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT if $RAILS then exececho "installing Rails $RAILS_VERSION" gem install rails -v $RAILS_VERSION -N >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT fi fi @@ -481,95 +547,95 @@ fi if $COLORIZE_TERMINAL then exececho -e "" >> $BASHRC exececho -e "# Colorize terminal" >> $BASHRC exececho -e "function parse_git_branch () {" >> $BASHRC exececho -e " git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'" >> $BASHRC exececho -e "}" >> $BASHRC exececho -e 'RED="\[\033[01;31m\]"' >> $BASHRC exececho -e 'YELLOW="\[\033[01;33m\]"' >> $BASHRC exececho -e 'GREEN="\[\033[01;32m\]"' >> $BASHRC exececho -e 'BLUE="\[\033[01;34m\]"' >> $BASHRC exececho -e 'NO_COLOR="\[\033[00m\]"' >> $BASHRC if $WITH_HOST then exececho -e 'PS1="$GREEN\u@\h$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC else exececho -e 'PS1="$GREEN\u$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC fi source $BASHRC fi exececho "*** Clean packages" execsudo apt-get clean if $CONFIGURE_GITHUB then execsudo rm $GITCONFIG execsudo touch $GITCONFIG execsudo chmod 777 $GITCONFIG exececho -e "[user]" >> $GITCONFIG exececho -e " name = $GITHUB_NAME" >> $GITCONFIG exececho -e " email = $GITHUB_MAIL" >> $GITCONFIG exececho -e "[core]" >> $GITCONFIG exececho -e " editor = vim -f" >> $GITCONFIG exececho -e "[alias]" >> $GITCONFIG exececho -e " df = diff" >> $GITCONFIG exececho -e " st = status" >> $GITCONFIG exececho -e " cm = commit" >> $GITCONFIG exececho -e " ch = checkout" >> $GITCONFIG exececho -e " br = branch" >> $GITCONFIG exececho -e " lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative" >> $GITCONFIG exececho -e " ctags = !.git/hooks/ctags" >> $GITCONFIG exececho -e "[color]" >> $GITCONFIG exececho -e " branch = auto" >> $GITCONFIG exececho -e " diff = auto" >> $GITCONFIG exececho -e " grep = auto" >> $GITCONFIG exececho -e " interactive = auto" >> $GITCONFIG exececho -e " status = auto" >> $GITCONFIG exececho -e " ui = 1" >> $GITCONFIG exececho -e "[branch]" >> $GITCONFIG exececho -e " autosetuprebase = always" >> $GITCONFIG exececho -e "[github]" >> $GITCONFIG exececho -e " user = $GITHUB_USER" >> $GITCONFIG ssh-keygen -t rsa -b 4096 -C "$GITHUB_MAIL" -N "" -f $SSH_FOLDER/id_rsa_github exececho "" exececho "" exececho "**********************" exececho "CONFIGURE GIT USER" exececho "" exececho "Adicione a public ssh key em 'https://github.com/settings/ssh':" exececho "" cat $SSH_FOLDER/id_rsa_github.pub exececho "" exececho "**********************" touch $SSHCONFIG exececho -e "#Github (default)" >> $SSHCONFIG exececho -e " Host github" >> $SSHCONFIG exececho -e " HostName github.com" >> $SSHCONFIG exececho -e " User git" >> $SSHCONFIG exececho -e " IdentityFile $SSH_FOLDER/id_rsa_github" >> $SSHCONFIG fi if $POSTGRESQL then exececho "" exececho "" exececho "**********************" exececho "CONFIGURE O POSTGRES" exececho "" exececho "Para definir usuário e senha no PostgreSQL, execute manualmente os seguintes comandos:" exececho "sudo -u postgres createuser NOME_DO_USUARIO -s" exececho "sudo -u postgres psql" exececho "\password NOME_DO_USUARIO" exececho "**********************" fi exit -
danielalvarenga revised this gist
Aug 18, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -220,7 +220,7 @@ fi if ( $NODEJS || $RUBY ) then curl -sL https://deb.nodesource.com/setup_$NODEJS_VERSION.x | sudo -E bash - sudo apt-get update aptinstall NodeJS nodejs node -v -
danielalvarenga revised this gist
Aug 17, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -220,7 +220,7 @@ fi if ( $NODEJS || $RUBY ) then curl -sL https://deb.nodesource.com/setup_$NODEJS_VERSION.x | -E bash - sudo apt-get update aptinstall NodeJS nodejs node -v -
danielalvarenga revised this gist
Aug 17, 2020 . 1 changed file with 186 additions and 186 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -11,117 +11,110 @@ # Change "true" por "false" to ignore software setup # Required only in the first time to execute this script UPDATE_REPOSITORIES=true UPGRADE_PACKAGES=true # build-essential, git, curl REQUIRED=true # Add different colors for $ user@host:~/folder(branch) in terminal COLORIZE_TERMINAL=true WITH_HOST=true # Configure GIT CONFIGURE_GITHUB=true GITHUB_NAME="Daniel Alvarenga Lima" GITHUB_MAIL="[email protected]" GITHUB_USER="danielalvarenga" # java oracle ORACLE_JAVA_SE=false JDK_FILE=jdk-14.0.1_linux-x64_bin.deb JDK_PATH_INSTALLATION=/usr/lib/jvm/jdk-14.0.1 # golang GOLANG=true GO_VERSION=1.15 # Install Node, npm # https://github.com/nodesource/distributions/blob/master/README.md#debinstall NODEJS=true NODEJS_VERSION=lts # use "lts", "current" or the number of version YARN=true # ruby RUBY=true RUBY_VERSION=2.7.1 RUBY_VERSION_PATH=2.7 RUBY_VERSION_MANAGER=RBENV # Use RVM or RBENV or false to source instalation RAILS=true RAILS_VERSION=6.0.3.2 # text editor VIM=true # visual studio code ide VISUAL_STUDIO_CODE=true # for files compression COMPRESS_7ZIP=true # image editor GIMP=true # player and codecs VLC=true # qBitTorrent TORRENT=true # online musics SPOTIFY=true # terminal TERMINATOR=true # partitions manager GPARTED=true # gerenciador de particoes POSTMAN=true # messenger SKYPE=true # google chrome web browser GOOGLE_CHROME=true # database sqlite SQLITE=true # sqlite database manager SQLITE_BROWSER=true # database postgresql POSTGRESQL=true # postgresql database manager PGADMIN=true # database redis REDIS=true # redis database manager REDIS_DESKTOP_MANAGER=true # database mysql MYSQL=true MYSQL_USER=root MYSQL_PASSWORD=root # database manager mysql WORKBENCH=true # Manage extra options for mouse, keyboard and other resources of ubuntu TWEAKS=true # paths @@ -131,21 +124,28 @@ SSH_FOLDER=~/.ssh SSHCONFIG="$SSH_FOLDER/config" DOWNLOADS=~/Downloads BASHRC=~/.bashrc RBENV_DIR=~/.rbenv RUBY_BUILD_DIR="$RBENV_DIR/plugins/ruby-build" rm $LOG_SCRIPT touch $LOG_SCRIPT function dpkginstall { echo "installing package $1" shift dpkg -i "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function aptinstall { echo "installing $1" shift sudo apt-get -y -f install "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } function snapinstall { echo "installing $1" shift sudo snap install "$@" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT } @@ -166,8 +166,9 @@ fi if $REQUIRED then aptinstall "Build Essencial" build-essential aptinstall Git git-core aptinstall CURL curl aptinstall Wget wget fi @@ -178,15 +179,15 @@ then echo "*** Installing Oracle Java" JDK_DOWNLOADED_FILE=$DOWNLOADS/$JDK_FILE if [ -f $JDK_DOWNLOADED_FILE ] then echo "--- $JDK_FILE already exists" else cd $DOWNLOADS wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/otn-pub/java/jdk/14.0.1+7/664493ef4a6946b186ff29eb326336a2/$JDK_FILE -O $JDK_DOWNLOADED_FILE fi dpkginstall "Java Oracle" $JDK_DOWNLOADED_FILE echo "*** Setting java version" sudo update-alternatives --install /usr/bin/java java $JDK_PATH_INSTALLATION/bin/java 1 @@ -204,25 +205,38 @@ then GO_FILE=$DOWNLOADS/go$GO_VERSION.linux-amd64.tar.gz if [ -f $GO_FILE ] then echo "--- $GO_FILE already exists" else cd $DOWNLOADS wget https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz fi sudo tar -C /usr/local -xzf $GO_FILE echo '' echo '# Add GO lang path environment variable' >> $HOME/.profile echo 'export PATH=$PATH:/usr/local/go/bin' >> $HOME/.profile mkdir -p $HOME/go/src fi if ( $NODEJS || $RUBY ) then curl -sL https://deb.nodesource.com/setup_$NODEJS_VERSION.x | bash - sudo apt-get update aptinstall NodeJS nodejs node -v fi if ( $YARN || $RUBY ) then curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list sudo apt-get update aptinstall Yarn yarn yarn -v fi if $VIM then aptinstall VIM vim @@ -254,12 +268,6 @@ then fi if $TORRENT then aptinstall qBitTorrent qbittorrent @@ -307,7 +315,7 @@ then cd $DOWNLOADS wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb fi dpkginstall "Google chrome" $CHROME_FILE fi @@ -354,88 +362,102 @@ fi if $WORKBENCH then echo "*** installing Workbench" cd $DOWNLOADS aptinstall "Workbench dependencies" libctemplate2v5 libgeos-3.5.0 libgeos-c1v5 libhdf4-0-alt libaec0 libsz2 libhdf5-10 libnetcdf11 libpcrecpp0v5 libpq5 libtinyxml2.6.2v5 libzip4 python-crypto python-six python-ecdsa python-paramiko WORKBENCH_FILE=$DOWNLOADS/mysql-workbench-community_8.0.21-1ubuntu20.04_amd64.deb if [ -f $WORKBENCH_FILE ] then echo "" else wget https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community_8.0.21-1ubuntu20.04_amd64.deb fi dpkginstall Workbench $WORKBENCH_FILE fi if $RUBY then aptinstall "Ruby/Rails dependences: zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev" zlib1g-dev libssl-dev libreadline-dev libyaml-dev libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev echo "*** Git, NodeJS and Yarn are dependences of rails and also were installed." >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT if [ $RUBY_VERSION_MANAGER == "RVM" ] then echo "installing RVM with RUBY $RUBY_VERSION" if ! type rvm >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT; then cd aptinstall "RVM dependencies" libgdbm-dev libncurses5-dev automake libtool bison libffi-dev gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB curl -sSL https://get.rvm.io | bash -s stable source ~/.rvm/scripts/rvm fi rvm requirements rvm install $RUBY_VERSION rvm use $RUBY_VERSION --default elif [ $RUBY_VERSION_MANAGER == "RBENV" ] then echo "installing Rbenv with Ruby $RUBY_VERSION" aptinstall "Rbenv dependencies" autoconf bison libssl-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev if [ -d $RBENV_DIR ] then cd $RBENV_DIR git pull else git clone https://github.com/rbenv/rbenv.git $RBENV_DIR echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" fi if [ -d $RUBY_BUILD_DIR ] then cd $RUBY_BUILD_DIR git pull else git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_DIR echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" cd $RUBY_BUILD_DIR ./install.sh fi source ~/.bashrc rbenv install $RUBY_VERSION -s rbenv global $RUBY_VERSION else echo "*** installing Ruby from source" cd $DOWNLOADS RUBY_FILE=ruby-$RUBY_VERSION.tar.gz RUBY_DOWNLOADED_FILE=$DOWNLOADS/$RUBY_FILE if [ -f $RUBY_DOWNLOADED_FILE ] then echo "--- $RUBY_FILE already exists" else wget http://ftp.ruby-lang.org/pub/ruby/$RUBY_VERSION_PATH/ruby-$RUBY_VERSION.tar.gz fi tar -xzvf $RUBY_DOWNLOADED_FILE cd $DOWNLOADS/ruby-$RUBY_VERSION/ ./configure make make install fi ruby -v echo installing Bundler echo "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT if $RAILS then echo "installing Rails $RAILS_VERSION" gem install rails -v $RAILS_VERSION -N >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT fi fi @@ -451,7 +473,7 @@ then fi if $TWEAKS then aptinstall Tweaks gnome-tweaks fi @@ -516,60 +538,38 @@ then echo -e " user = $GITHUB_USER" >> $GITCONFIG ssh-keygen -t rsa -b 4096 -C "$GITHUB_MAIL" -N "" -f $SSH_FOLDER/id_rsa_github echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "**********************" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "CONFIGURE GIT USER" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "Adicione a public ssh key em 'https://github.com/settings/ssh':" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT cat $SSH_FOLDER/id_rsa_github.pub >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "**********************" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT touch $SSHCONFIG echo -e "#Github (default)" >> $SSHCONFIG >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo -e " Host github" >> $SSHCONFIG >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo -e " HostName github.com" >> $SSHCONFIG >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo -e " User git" >> $SSHCONFIG >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo -e " IdentityFile $SSH_FOLDER/id_rsa_github" >> $SSHCONFIG >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT fi if $POSTGRESQL then echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "**********************" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "CONFIGURE O POSTGRES" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "Para definir usuário e senha no PostgreSQL, execute manualmente os seguintes comandos:" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "sudo -u postgres createuser NOME_DO_USUARIO -s" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "sudo -u postgres psql" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "\password NOME_DO_USUARIO" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT echo "**********************" >> $LOG_SCRIPT 2>> $LOG_SCRIPT 3>> $LOG_SCRIPT fi exit -
danielalvarenga revised this gist
Jul 29, 2020 . 1 changed file with 1 addition and 1 deletion.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -218,7 +218,7 @@ fi if $NODEJS then snapinstall NodeJS node --classic node -v fi -
danielalvarenga revised this gist
Jun 26, 2020 . 1 changed file with 25 additions and 17 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -18,7 +18,7 @@ UPGRADE_PACKAGES=false REQUIRED=false # Add different colors for $ user@host:~/folder(branch) in terminal COLORIZE_TERMINAL=false WITH_HOST=false # Configure GIT @@ -32,12 +32,13 @@ CONFIGURE_GITLAB=false GITLAB_MAIL="YOUR_GITLAB_EMAIL" # java ORACLE_JAVA_SE=true JDK_FILE=jdk-14.0.1_linux-x64_bin.deb JDK_PATH_INSTALLATION=/usr/lib/jvm/jdk-14.0.1 # golang GOLANG=false GO_VERSION=1.12.7 # framework javascript NODEJS=false @@ -170,22 +171,29 @@ then fi if $ORACLE_JAVA_SE then echo "*** Removing OpenJDK" sudo apt-get -y remove --purge openjdk-* echo "*** Installing Oracle Java" JDK_FILE=$DOWNLOADS/$JDK_FILE if [ -f $JDK_FILE ] then echo "" else cd $DOWNLOADS wget https://download.oracle.com/otn-pub/java/jdk/14.0.1+7/664493ef4a6946b186ff29eb326336a2/$JDK_FILE fi sudo dpkg -i $JDK_FILE echo "*** Setting java version" sudo update-alternatives --install /usr/bin/java java $JDK_PATH_INSTALLATION/bin/java 1 sudo update-alternatives --install /usr/bin/javac javac $JDK_PATH_INSTALLATION/bin/javac 1 sudo update-alternatives --config java sudo update-alternatives --config javac java -version fi @@ -564,4 +572,4 @@ then echo "**********************" fi exit -
danielalvarenga created this gist
Jun 12, 2020 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,567 @@ #!/bin/bash # Author: Daniel Alvarenga Lima # Ubuntu version supported: 20.04 LTS 64Bit # EXECUTE # sudo chmod +x script-configure-ubuntu18.94-amd64.sh # ./script-configure-ubuntu20.04-amd64.sh #INSTRUCTIONS # Change "true" por "false" to ignore software setup # Required only in the first time to execute this script UPDATE_REPOSITORIES=false UPGRADE_PACKAGES=false # build-essential, git, curl, libs REQUIRED=false # Add different colors for $ user@host:~/folder(branch) in terminal COLORIZE_TERMINAL=true WITH_HOST=false # Configure GIT CONFIGURE_GITHUB=false GITHUB_NAME="Daniel Alvarenga Lima" GITHUB_MAIL="[email protected]" GITHUB_USER="danielalvarenga" CONFIGURE_GITLAB=false GITLAB_HOSTNAME="YOUR_GITLAB_DOMAIN" GITLAB_MAIL="YOUR_GITLAB_EMAIL" # java # Download file ¨jdk-8u221-linux-x64.tar.gz¨ manually: https://www.oracle.com/technetwork/java/javase/downloads/index.html JAVA_ORACLE_8U221_FROM_DOWNLOADS_FOLDER=false # golang GOLANG=false GO_VERSION=1.12.7 # framework javascript NODEJS=false # ruby RUBY_WITH_RVM=false RUBY_WITH_RBENV=false # only install if RUBY_WITH_RVM is false RUBY_WITHOUT_VERSION_MANAGER=false # only install if RUBY_WITH_RVM and RUBY_WITH_RBENV is false RUBY_VERSION=2.6.3 RUBY_VERSION_PATH=2.6 #rails RAILS=false RAILS_VERSION=5.2.3 # text editor VIM=false # visual studio code ide VISUAL_STUDIO_CODE=false # for files compression COMPRESS_7ZIP=false # image editor GIMP=false # player and codecs VLC=false # storage DROPBOX=false # qBitTorrent TORRENT=false # online musics SPOTIFY=false # terminal TERMINATOR=false # partitions manager GPARTED=false # gerenciador de particoes POSTMAN=false # messenger SKYPE=false # google chrome web browser GOOGLE_CHROME=false # database sqlite SQLITE=false # sqlite database manager SQLITE_BROWSER=false # database postgresql POSTGRESQL=false # postgresql database manager PGADMIN=false # database redis REDIS=false # redis database manager REDIS_DESKTOP_MANAGER=false # database mysql MYSQL=false MYSQL_USER=root MYSQL_PASSWORD=root # database manager mysql WORKBENCH=false # Install Tweaks to configure right click # More details: https://itsfoss.com/fix-right-click-touchpad-ubuntu RESOLVE_TOUCHPAD=false # paths LOG_SCRIPT=./log_script.txt GITCONFIG=/etc/gitconfig SSH_FOLDER=~/.ssh SSHCONFIG="$SSH_FOLDER/config" DOWNLOADS=~/Downloads BASHRC=~/.bashrc MOUSE_CONFIG=/usr/share/X11/xorg.conf.d/52-mymods.conf RBENV_DIR=~/.rbenv RUBY_BUILD_DIR="$RBENV_DIR/plugins/ruby-build" function aptinstall { echo installing $1 shift sudo apt-get -y -f install "$@" >$LOG_SCRIPT 2>$LOG_SCRIPT } function snapinstall { echo installing $1 shift sudo snap install "$@" >$LOG_SCRIPT 2>$LOG_SCRIPT } if $UPDATE_REPOSITORIES then echo "*** Update Respositories" sudo apt-get update fi if $UPGRADE_PACKAGES then echo "*** Upgrade Packages" sudo apt-get -y upgrade fi if $REQUIRED then aptinstall "Build Essencial" build-essential aptinstall Git git aptinstall CURL curl fi if $JAVA_ORACLE_8U221_FROM_DOWNLOADS_FOLDER then sudo apt-get -y remove --purge openjdk-* tar -xvf $DOWNLOADS/jdk-8u221-linux-x64.tar.gz sudo mkdir -p /usr/lib/jvm sudo mv $DOWNLOADS/jdk1.8.0_221 /usr/lib/jvm/ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.8.0_221/bin/java" 1 sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.8.0_221/bin/javac" 1 sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.8.0_221/bin/javaws" 1 sudo chmod a+x /usr/bin/java sudo chmod a+x /usr/bin/javac sudo chmod a+x /usr/bin/javaws sudo chown -R root:root /usr/lib/jvm/jdk1.8.0_221 sudo update-alternatives --config java sudo update-alternatives --config javac sudo update-alternatives --config javaws java -version fi if $GOLANG then echo "*** installing GOlang" GO_FILE=$DOWNLOADS/go$GO_VERSION.linux-amd64.tar.gz if [ -f $GO_FILE ] then echo "" else cd $DOWNLOADS wget https://dl.google.com/go/go$GO_VERSION.linux-amd64.tar.gz fi sudo tar -C /usr/local -xzf $GO_FILE echo '# Add GO lang path environment variable' >> $HOME/.profile echo 'export PATH=$PATH:/usr/local/go/bin' >> $HOME/.profile mkdir -p $HOME/go/src fi if $NODEJS then snapinstall NodeJS node --channel=10/stable --classic node -v fi if $VIM then aptinstall VIM vim fi if $VISUAL_STUDIO_CODE then snapinstall "Visual Studio Code" code --classic fi if $COMPRESS_7ZIP then aptinstall p7zip p7zip-full aptinstall "7zip rar extension" p7zip-rar fi if $GIMP then aptinstall Gimp gimp fi if $VLC then snapinstall VLC vlc fi if $DROPBOX then aptinstall Dropbox nautilus-dropbox fi if $TORRENT then aptinstall qBitTorrent qbittorrent fi if $SPOTIFY then snapinstall Spotify spotify fi if $TERMINATOR then aptinstall Terminator terminator fi if $GPARTED then aptinstall GParted gparted fi if $POSTMAN then snapinstall Postman postman fi if $SKYPE then snapinstall Skype skype --classic fi if $GOOGLE_CHROME then echo "*** installing Google Chrome 64bits" CHROME_FILE=$DOWNLOADS/google-chrome-stable_current_amd64.deb if [ -f $CHROME_FILE ] then echo "" else cd $DOWNLOADS wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb fi sudo dpkg -i $CHROME_FILE fi if $SQLITE then aptinstall SQLite sqlite3 libsqlite3-dev fi if $SQLITE_BROWSER then aptinstall "SQLite Browser" sqlitebrowser fi if $POSTGRESQL then aptinstall PostgreSQL postgresql postgresql-contrib libpq-dev fi if $PGADMIN then aptinstall "PG Admin" pgadmin3 fi if $MYSQL then sudo debconf-set-selections <<< "mysql-server mysql-server/root_password password $MYSQL_USER" sudo debconf-set-selections <<< "mysql-server mysql-server/root_password_again password $MYSQL_PASSWORD" aptinstall MySQL mysql-server mysql-client libmysqlclient-dev mysql -uroot -proot <<SQL CREATE USER 'rails'@'localhost'; CREATE DATABASE activerecord_unittest DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; CREATE DATABASE activerecord_unittest2 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL PRIVILEGES ON activerecord_unittest.* to 'rails'@'localhost'; GRANT ALL PRIVILEGES ON activerecord_unittest2.* to 'rails'@'localhost'; GRANT ALL PRIVILEGES ON inexistent_activerecord_unittest.* to 'rails'@'localhost'; SQL fi if $WORKBENCH then echo "*** installing Workbench" aptinstall "Workbench dependeencies" libctemplate2v5 libgeos-3.5.0 libgeos-c1v5 libhdf4-0-alt libaec0 libsz2 libhdf5-10 libnetcdf11 libpcrecpp0v5 libpq5 libtinyxml2.6.2v5 libzip4 python-crypto python-six python-ecdsa python-paramiko WORKBENCH_FILE=$DOWNLOADS/mysql-workbench-community-6.3.8-1ubu1604-amd64.deb if [ -f $WORKBENCH_FILE ] then echo "" else cd $DOWNLOADS wget https://dev.mysql.com/get/Downloads/MySQLGUITools/mysql-workbench-community-6.3.8-1ubu1604-amd64.deb fi sudo dpkg -i $WORKBENCH_FILE fi if $RUBY_WITH_RVM then echo "installing RVM with RUBY $RUBY_VERSION" if ! type rvm >$LOG_SCRIPT 2>$LOG_SCRIPT; then cd gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 aptinstall "RVM dependencies" gawk libsqlite3-dev sqlite3 autoconf libgdbm-dev libncurses5-dev automake libtool bison libffi-dev curl -sSL https://get.rvm.io | bash -s stable source ~/.rvm/scripts/rvm fi rvm requirements rvm install $RUBY_VERSION rvm use $RUBY_VERSION --default echo installing Bundler echo "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >$LOG_SCRIPT 2>$LOG_SCRIPT elif $RUBY_WITH_RBENV then echo "installing Rbenv with Ruby $RUBY_VERSION" aptinstall "Rbenv dependencies" autoconf bison libssl-dev libyaml-dev libreadline-dev zlib1g-dev libncurses5-dev libffi-dev libgdbm-dev if [ -d $RBENV_DIR ] then cd $RBENV_DIR git pull else git clone https://github.com/rbenv/rbenv.git $RBENV_DIR echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init -)" fi if [ -d $RUBY_BUILD_DIR ] then cd $RUBY_BUILD_DIR git pull else git clone https://github.com/rbenv/ruby-build.git $RUBY_BUILD_DIR echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH" cd $RUBY_BUILD_DIR ./install.sh fi source ~/.bashrc rbenv install $RUBY_VERSION -s rbenv global $RUBY_VERSION echo installing Bundler echo "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >$LOG_SCRIPT 2>$LOG_SCRIPT elif $RUBY_WITHOUT_VERSION_MANAGER then snapinstall ruby --classic --channel=$RUBY_VERSION_PATH/stable echo installing Bundler echo "gem: --no-ri --no-rdoc" > ~/.gemrc gem install bundler -N >$LOG_SCRIPT 2>$LOG_SCRIPT fi if $RAILS then echo "installing Rails $RAILS_VERSION" gem install rails -v $RAILS_VERSION -N >$LOG_SCRIPT 2>$LOG_SCRIPT fi if $REDIS then aptinstall Redis redis-server fi if $REDIS_DESKTOP_MANAGER then snapinstall "Redis Desktop Manager" redis-desktop-manager fi if $RESOLVE_TOUCHPAD then aptinstall Tweaks gnome-tweaks fi if $COLORIZE_TERMINAL then echo -e "" >> $BASHRC echo -e "# Colorize terminal" >> $BASHRC echo -e "function parse_git_branch () {" >> $BASHRC echo -e " git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'" >> $BASHRC echo -e "}" >> $BASHRC echo -e 'RED="\[\033[01;31m\]"' >> $BASHRC echo -e 'YELLOW="\[\033[01;33m\]"' >> $BASHRC echo -e 'GREEN="\[\033[01;32m\]"' >> $BASHRC echo -e 'BLUE="\[\033[01;34m\]"' >> $BASHRC echo -e 'NO_COLOR="\[\033[00m\]"' >> $BASHRC if $WITH_HOST then echo -e 'PS1="$GREEN\u@\h$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC else echo -e 'PS1="$GREEN\u$NO_COLOR:$BLUE\w$YELLOW\$(parse_git_branch)$NO_COLOR\$ "' >> $BASHRC fi source $BASHRC fi echo "*** remove packages" sudo apt-get clean if $CONFIGURE_GITHUB then sudo rm $GITCONFIG sudo touch $GITCONFIG sudo chmod 777 $GITCONFIG echo -e "[user]" >> $GITCONFIG echo -e " name = $GITHUB_NAME" >> $GITCONFIG echo -e " email = $GITHUB_MAIL" >> $GITCONFIG echo -e "[core]" >> $GITCONFIG echo -e " editor = vim -f" >> $GITCONFIG echo -e "[alias]" >> $GITCONFIG echo -e " df = diff" >> $GITCONFIG echo -e " st = status" >> $GITCONFIG echo -e " cm = commit" >> $GITCONFIG echo -e " ch = checkout" >> $GITCONFIG echo -e " br = branch" >> $GITCONFIG echo -e " lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative" >> $GITCONFIG echo -e " ctags = !.git/hooks/ctags" >> $GITCONFIG echo -e "[color]" >> $GITCONFIG echo -e " branch = auto" >> $GITCONFIG echo -e " diff = auto" >> $GITCONFIG echo -e " grep = auto" >> $GITCONFIG echo -e " interactive = auto" >> $GITCONFIG echo -e " status = auto" >> $GITCONFIG echo -e " ui = 1" >> $GITCONFIG echo -e "[branch]" >> $GITCONFIG echo -e " autosetuprebase = always" >> $GITCONFIG echo -e "[github]" >> $GITCONFIG echo -e " user = $GITHUB_USER" >> $GITCONFIG ssh-keygen -t rsa -b 4096 -C "$GITHUB_MAIL" -N "" -f $SSH_FOLDER/id_rsa_github echo "" echo "" echo "**********************" echo "CONFIGURE GIT USER" echo "" echo "Adicione a public ssh key em 'https://github.com/settings/ssh':" echo "" cat $SSH_FOLDER/id_rsa_github.pub echo "" echo "**********************" touch $SSHCONFIG echo -e "#Github (default)" >> $SSHCONFIG echo -e " Host github" >> $SSHCONFIG echo -e " HostName github.com" >> $SSHCONFIG echo -e " User git" >> $SSHCONFIG echo -e " IdentityFile $SSH_FOLDER/id_rsa_github" >> $SSHCONFIG fi if $CONFIGURE_GITLAB then ssh-keygen -t rsa -b 4096 -C "$GITLAB_MAIL" -N "" -f $SSH_FOLDER/id_rsa_gitlab echo "" echo "" echo "**********************" echo "CONFIGURE GITLAB USER" echo "" echo "Adicione a public ssh key ao GitLab:" echo "" cat $SSH_FOLDER/id_rsa_gitlab.pub echo "" echo "**********************" touch $SSHCONFIG echo -e "#Gitlab" >> $SSHCONFIG echo -e " Host gitlab" >> $SSHCONFIG echo -e " HostName $GITLAB_HOSTNAME" >> $SSHCONFIG echo -e " User git" >> $SSHCONFIG echo -e " IdentityFile $SSH_FOLDER/id_rsa_gitlab" >> $SSHCONFIG fi if $POSTGRESQL then echo "" echo "" echo "**********************" echo "CONFIGURE O POSTGRES" echo "" echo "Para definir usuário e senha no PostgreSQL, execute manualmente os seguintes comandos:" echo "sudo -u postgres createuser NOME_DO_USUARIO -s" echo "sudo -u postgres psql" echo "\password NOME_DO_USUARIO" echo "**********************" fi exit