-
-
Save LiberQuack/aa2f33379e2aa98da425 to your computer and use it in GitHub Desktop.
This file contains 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 characters
#FORCE MIC VOLUME | |
cat <<'EOF' >> ~/.bashrc | |
### Want to see if linux is gonna change mic volume!!! | |
export MICVOLUME=35 | |
export MICCALC=$(bc <<< "scale=2; 65535 * ($MICVOLUME / 100)" | grep -oP '^\d+') | |
while sleep 0.25; do | |
export MICNAME=$(pacmd list-sources | grep -zoP '\*.*\n.*name.*<(.+)>' | grep -zoP '<.*>' | grep -UzoP '[^<>]' | tr -d '\n') | |
pacmd set-source-volume $MICNAME $MICCALC | |
done | |
EOF | |
#MIC DENOISER (USABILITY SUCKS) - Know more here https://github.com/werman/noise-suppression-for-voice | |
( cd /tmp && | |
docker container run node:alpine node -e " | |
releaseData = `curl https://api.github.com/repos/werman/noise-suppression-for-voice/releases/latest` | |
console.log(releaseData.assets.find(it => /x64.tar.gz$/.test(it.name)).browser_download_url) | |
" | xargs wget -O linux_rnnoise_bin_x64.tar.gz && | |
tar -zxvf linux_rnnoise_bin_x64.tar.gz && | |
sudo mv bin/ladspa/librnnoise_ladspa.so /lib && | |
echo '#### choose your current mic in INPUT DEVICES tab ####' && | |
pavucontrol && | |
MICNAME=$(pacmd list-sources | grep -zoP '\*.*\n.*name.*<(.+)>' | grep -zoP '<.*>' | grep -UzoP '[^<>]' | tr -d '\n') && | |
pacmd load-module module-null-sink sink_name=mic_denoised_out && | |
pacmd load-module module-ladspa-sink sink_name=mic_raw_in sink_master=mic_denoised_out label=noise_suppressor_mono plugin=/lib/librnnoise_ladspa.so control=50 && | |
pacmd load-module module-loopback source=${MICNAME} sink=mic_raw_in channels=1 && | |
pacmd set-default-source mic_denoised_out.monitor ) | |
#Ubuntu only | |
gsettings set org.gnome.desktop.wm.keybindings begin-resize [] | |
gsettings set org.gnome.desktop.wm.keybindings begin-move [] | |
#CURL | |
sudo apt update | |
sudo apt -y install htop | |
#TestDisk | |
sudo apt -y install testdisk | |
#Nmap | |
sudo apt -y install nmap | |
#Gparted | |
sudo apt -y install gparted | |
#Multisystem (Create multi linux bootable usb) | |
sudo bash -c "echo 'deb http://liveusb.info/multisystem/depot all main' > /etc/apt/sources.list.d/multisystem.list" && | |
wget -q http://liveusb.info/multisystem/depot/multisystem.asc -O- | sudo apt-key add - && | |
sudo apt-get update && | |
sudo apt-get install multisystem | |
#Ventoy | |
docker container run node:alpine node -e " | |
releaseData = `curl https://api.github.com/repos/ventoy/Ventoy/releases/latest` | |
console.log(releaseData.assets.find(it => /tar.gz$/.test(it.name)).browser_download_url) | |
" | xargs wget -O ventoy.tar.gz && | |
tar -zxvf ventoy.tar.gz && | |
rm -rf ventoy.tar.gz && | |
sudo mv ventoy* /opt/ventoy && | |
( cd /opt/ventoy && sudo ln -rsfv ./CreatePersistentImg.sh ./Ventoy2Disk.sh /usr/bin ) | |
#Pulumi | |
curl -fsSL https://get.pulumi.com | sh | |
#Etcher (Create bootable usb) | |
docker container run node:alpine node -e " | |
releaseData = `curl https://api.github.com/repos/balena-io/etcher/releases/latest` | |
console.log(releaseData.assets.find(it => /amd64.deb$/.test(it.name)).browser_download_url) | |
" | xargs wget -O etcher.deb && | |
sudo apt install ./etcher.deb && | |
rm -rf etcher.deb | |
#Woe (Create windows bootable usb) | |
sudo add-apt-repository ppa:nilarimogard/webupd8 && | |
sudo apt update && | |
sudo apt install woeusb && | |
sudo woeusb \ | |
--target-filesystem NTFS \ | |
--device ~/Win10.iso \ | |
/dev/sdz | |
#Ubuntu Kernel Update UKUU | |
sudo add-apt-repository ppa:teejee2008/ppa && | |
sudo apt update && | |
sudo apt -y install ukuu && | |
ukuu -list | |
# ukuu --install v4.14.1 | |
#Boot Repair | |
#sudo add-apt-repository -y ppa:yannubuntu/boot-repair | |
#sudo apt-get update | |
#sudo apt-get -y install boot-repair | |
#SoapUI | |
sudo bash -c 'curl https://s3.amazonaws.com/downloads.eviware/soapuios/5.5.0/SoapUI-x64-5.5.0.sh > /opt/soapui.sh' && | |
sudo chmod +x /opt/soapui.sh && | |
sudo ln -sf /opt/soapui.sh /usr/bin/soapui && | |
soapui | |
#OpenShift RHC | |
#sudo gem install rhc | |
#Git | |
sudo apt-get -y install git && | |
git config --global user.name "Quack Martins" && | |
git config --global user.email rogue.thiago@gmail.com && | |
git config --global format.pretty "%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)" --replace-all | |
#Git sub-repo | |
INSTALL_PATH=/opt/git-subrepo && | |
git clone https://github.com/ingydotnet/git-subrepo /tmp/git-subrepo && | |
sudo mv /tmp/git-subrepo $INSTALL_PATH && | |
echo "source $INSTALL_PATH/.rc" >> ~/.bashrc && | |
cat <<'EOF' >> ~/.bashrc | |
function subdiff-fetched() { | |
git diff "subrepo/${1}".."subrepo/${1}/fetch" | |
} | |
EOF | |
#Starter-Kit 😁 | Kotlin | Groovy | JDK | |
curl -s https://get.sdkman.io | bash && ( | |
source ~/.bashrc && | |
sdk install java && | |
sdk install kotlin && | |
sdk install groovy | |
) | |
#Insomnia | |
wget -O insomnia.deb https://updates.insomnia.rest/downloads/ubuntu/latest && | |
sudo apt install -y ./insomnia.deb && | |
rm -rf insomnia.deb | |
#Postman | |
wget -O postman.tar.gz https://dl.pstmn.io/download/latest/linux64 && | |
tar -zxvf postman.tar.gz && | |
sudo mv Postman /opt/. && | |
/opt/Postman/Postman | |
#VirtualBox | |
sudo apt-get -y install virtualbox virtualbox-dkms virtualbox-ext-pack | |
#JDK 8/7 (DEPRECATED) | |
sudo add-apt-repository -y ppa:webupd8team/java && | |
sudo apt-get update && | |
printf "oracle-java8-installer shared/accepted-oracle-license-v1-1 select true \noracle-java-installer shared/accepted-oracle-license-v1-1 select true" | sudo /usr/bin/debconf-set-selections && | |
sudo apt -y install oracle-java8-installer | |
#JDK (Jabba) | |
curl -sL https://github.com/shyiko/jabba/raw/master/install.sh | bash && . ~/.jabba/jabba.sh && | |
jabba install openjdk@1.8 && | |
jabba alias default openjdk@1.8 | |
#Maven | |
sudo apt-get remove -y maven* && | |
wget -O maven.tar.gz http://www-us.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz && | |
tar -xzvf maven.tar.gz && | |
rm -rf maven.tar.gz && | |
sudo rm -rf /opt/apache-maven-* && | |
sudo mv apache-maven-* /opt && | |
sudo chmod +x /opt/apache-maven-*/bin/mvn && | |
sudo rm -rf /usr/bin/mvn; sudo ln -s /opt/apache-maven-*/bin/mvn /usr/bin/mvn && | |
sudo bash -c 'echo "export M2_HOME=`echo /opt/apache-maven-*`" >> /etc/profile.d/maven.sh' | |
#SublimeText3 | |
sudo add-apt-repository -y ppa:webupd8team/sublime-text-3 | |
sudo apt-get update | |
sudo apt-get -y install sublime-text-installer | |
#Ruby | |
wget -qO- https://get.rvm.io | sudo bash -s stable | |
source ~/.rvm/scripts/rvm | |
sudo apt-get -y install ruby-dev | |
#Deno | |
curl -fsSL https://deno.land/x/install/install.sh | sh | |
cat <<'EOF' >> ~/.bash_profile | |
export DENO_INSTALL="/home/quack/.deno" | |
export PATH="$DENO_INSTALL/bin:$PATH" | |
EOF | |
source ~/.bash_profile | |
#Nodejs and Front-end Tools | |
wget -qO- https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash && | |
( source ~/.bashrc && nvm install 10 && npm install -g yarn dev-proxy ) | |
#Deno/Dvm (nvm like for deno) | |
wget -qO- https://raw.githubusercontent.com/ghosind/dvm/master/install.sh | bash && | |
( source ~/.bashrc && dvm install 1.14.1 ) | |
#Robo3t | |
sudo apt update && | |
wget https://github.com/Studio3T/robomongo/releases/download/v1.3.1/robo3t-1.3.1-linux-x86_64-7419c406.tar.gz && | |
tar -zxf robo3t* && | |
rm -rf robo3t*tar.gz && | |
sudo rm -rf /opt/robo3t && | |
sudo mv robo3t* /opt/robo3t && | |
sudo ln -sf /opt/robo3t/bin/robo3t /usr/bin/robo3t | |
#Mongo Client | |
wget -qO - https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add - && | |
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.2.list && | |
sudo apt-get update && | |
sudo apt-get install -y mongodb-org | |
#IDEA Ultimate | |
gsettings set org.gnome.desktop.input-sources xkb-options [] #alt shift #Fix on Elementary | |
echo 'fs.inotify.max_user_watches = 524288' | sudo tee -a /etc/sysctl.conf && | |
sudo sysctl -p && | |
wget -cO jetbrains-toolbox.tar.gz "https://download.jetbrains.com/toolbox/jetbrains-toolbox-1.17.7275.tar.gz?_ga=2.63544746.483928555.1595574919-511432634.1595574919" && | |
tar -zxvf jetbrains-toolbox.tar.gz && | |
./jetbrains-*/jetbrains-toolbox && | |
rm -rf jetbrains-toolbox* | |
#Eclipsettt | |
wget http://eclipse.c3sl.ufpr.br/technology/epp/downloads/release/oxygen/2/eclipse-jee-oxygen-2-linux-gtk-x86_64.tar.gz | |
tar -zxvf eclipse-jee-oxygen-2-linux-gtk-x86_64.tar.gz | |
#Android Tools | ADB | (Manual install) | |
sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386 && | |
wget -O sdk.zip https://dl.google.com/android/repository/platform-tools-latest-linux.zip && | |
unzip sdk.zip -d sdk-extracted && | |
sudo mv sdk-extracted /opt/android-sdk && | |
rm -rf sdk.zip sdk-extracted && | |
sudo ln -sf /opt/android-sdk/platform-tools/adb /usr/bin/adb && | |
echo 'export ANDROID_HOME=/opt/android-sdk' >> ~/.bashrc && | |
echo 'export PATH=$PATH:$ANDROID_HOME:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools' >> ~/.bashrc && | |
source ~/.bashrc | |
#Android SDK (Android 5.0) | |
echo y | android update sdk --no-https --all --no-ui --force --filter android-21 && | |
echo y | android update sdk --no-https --all --no-ui --force --filter platform-tools && | |
echo y | android update sdk --no-https --all --no-ui --force --filter tools && | |
echo y | android update sdk --no-https --all --no-ui --force --filter build-tools-21.0.0 && | |
echo y | android update sdk --no-https --all --no-ui --force --filter addon-google_apis-google-21 | |
#Android Studio (No SDK) | |
wget -c https://dl.google.com/dl/android/studio/ide-zips/2.3.0.8/android-studio-ide-162.3764568-linux.zip && | |
unzip android*.zip && | |
rm -rf android*.zip && | |
sudo mv android-studio /opt/android-studio && | |
sudo ln -sf /opt/android-studio/bin/studio.sh /usr/bin/studio && | |
studio & | |
#Cordova | |
sudo apt -y install ant && #Ant is used in old cordova projects (version lt 3) | |
npm install -g cordova | |
#Eclipse | |
#wget http://eclipse.c3sl.ufpr.br/oomph/epp/mars/R2/eclipse-inst-linux64.tar.gz | |
#tar -zxtar -zxf eclipse*.tar.gz | |
#./eclipse-installer/eclipse-inst & | |
#Wercker Cli | |
sudo curl -L https://s3.amazonaws.com/downloads.wercker.com/cli/stable/linux_amd64/wercker -o /usr/local/bin/wercker | |
sudo chmod +x /usr/local/bin/wercker | |
#Docker | |
wget -qO- https://get.docker.com | sudo bash && | |
sudo systemctl enable docker && | |
sudo gpasswd -a $USER docker && | |
sudo docker run hello-world | |
#docker-hostmanager (Make every container accessible by its name from host - Use for development only) | |
sudo docker run -d --name docker-hostmanager --restart=always -e TLD=' ' -v /var/run/docker.sock:/var/run/docker.sock -v /etc/hosts:/hosts iamluc/docker-hostmanager | |
#Docker-Compose | |
sudo wget -O /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` && | |
sudo chmod +x /usr/local/bin/docker-compose && | |
sudo docker-compose --version | |
#Golang | |
sudo rm -rf /opt/go && | |
wget -O go.tar.gz https://golang.org/dl/go1.16.linux-amd64.tar.gz && | |
tar -zxvf go.tar.gz && | |
rm -rf /opt/go && | |
sudo mv -f go /opt/go && | |
sudo ln -sf /opt/go/bin/* /usr/bin && | |
rm -rf go.tar.gz && | |
go version && | |
echo 'export PATH=$PATH:~/go/bin' >> ~/.bashrc && | |
go get golang.org/x/tools/cmd/goimports && | |
source ~/.bashrc | |
#Kubernetes clis (crictl/kubeadm/kubectl) https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl | |
( | |
DOWNLOAD_DIR=/usr/local/bin && | |
cd $DOWNLOAD_DIR && | |
CRICTL_VERSION="v1.17.0" && | |
RELEASE="$(curl -sSL https://dl.k8s.io/release/stable.txt)" && | |
curl -L "https://github.com/kubernetes-sigs/cri-tools/releases/download/${CRICTL_VERSION}/crictl-${CRICTL_VERSION}-linux-amd64.tar.gz" | sudo tar -C $DOWNLOAD_DIR -xz && | |
sudo curl -L --remote-name-all https://storage.googleapis.com/kubernetes-release/release/${RELEASE}/bin/linux/amd64/{kubeadm,kubectl} && | |
sudo chmod +x {kubeadm,kubectl} | |
) | |
#KIND - Kubernetes in Docker (Need to have kubectl installed) | |
GO111MODULE="on" go get sigs.k8s.io/kind@v0.10.0 && | |
kind completion bash >> ~/.bashrc && | |
source .bashrc && | |
cat << EOF > ~/.kindconfig && | |
kind: Cluster | |
nodes: | |
- role: control-plane | |
- role: worker | |
- role: worker | |
EOF | |
kind create cluster --config ~/.kindconfig && | |
kubectl config use-context kind-kind | |
#Mongo alias (run as sudo) | |
cat <<EOF > mongo | |
#!/bin/bash | |
exec docker container run -it --user \$UID --rm --net=host --workdir /work -v "\$(pwd):/work" mongo mongo \$@ | |
EOF | |
cat <<EOF > mongodump | |
#!/bin/bash | |
exec docker container run -it --user \$UID --rm --net=host --workdir /work -v "\$(pwd):/work" mongo mongodump \$@ | |
EOF | |
cat <<EOF > mongoimport | |
#!/bin/bash | |
exec docker container run -it --user \$UID --rm --net=host --workdir /work -v "\$(pwd):/work" mongo mongoimport \$@ | |
EOF | |
mv mongo mongoimport mongodump /bin && | |
chmod +x /bin/mongo* | |
#RDocker | |
sudo wget -O /usr/local/bin/rdocker https://github.com/dvddarias/rdocker/raw/master/rdocker.sh && | |
sudo chmod +x /usr/local/bin/rdocker | |
#Make docker daemon accessable | |
echo 'DOCKER_OPTS='\''-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'\''' >> /etc/default/docker | |
service docker restart | |
#Terraform | |
wget https://releases.hashicorp.com/terraform/0.8.7/terraform_0.8.7_linux_amd64.zip && | |
unzip terraform*.zip -d terraform && | |
sudo mv terraform/terraform /usr/local/bin && | |
rm -rf terraform terraform*zip | |
#ssh-vault (See more: https://goo.gl/Ii9Idw) | |
wget -O ssh-vault.tar.gz https://bintray.com/nbari/ssh-vault/download_file?file_path=ssh-vault_0.8.1_linux_amd64.tar.gz && | |
tar zxvf ssh-vault.tar.gz && | |
rm ssh-vault.tar.gz && | |
sudo mv -f ssh-vault*/ssh-vault /usr/local/bin && | |
rm -rf ssh-vault* | |
#PIP | |
sudo apt update && | |
sudo apt -y install python-pip python-pip3 | |
#Vast.ai | |
wget https://raw.githubusercontent.com/vast-ai/vast-python/master/vast.py -O vast && | |
chmod +x vast && | |
sudo mv vast /usr/bin && | |
vast login | |
#Terraform | |
sudo apt-get install lsb-core && | |
wget -O terra.zip https://releases.hashicorp.com/terraform/0.14.5/terraform_0.14.5_linux_amd64.zip && | |
unzip terra.zip && | |
rm -rf terra.zip && | |
sudo mv terraform /opt && | |
sudo ln -sf /opt/terraform /usr/bin/terraform | |
#Vast.ai cheatsheet | |
vast search offers -o dph #List offers ordered by price | |
vast search offers -o dph | awk '{print $1}' | head -2 | tail -1 #Show cheapest machine id | |
vast create instance 000000 --image ubuntu #Create image #Create your instance | |
vast show instances #Show instances you rented | |
vast show instances | awk '{print $1}' | head -2 | tail -1 | xargs vast destroy instance #Destroy all instances | |
#Amazon AWS cli | |
curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" && | |
unzip awscli-bundle.zip && | |
sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws && | |
aws configure | |
#Amazon EB - Elastic Beanstalk cli | |
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev git && | |
git clone https://github.com/aws/aws-elastic-beanstalk-cli-setup.git && | |
./aws-elastic-beanstalk-cli-setup/scripts/bundled_installer && | |
echo 'export PATH="/home/quack/.ebcli-virtual-env/executables:$PATH"' >> ~/.bash_profile && | |
source ~/.bash_profile && | |
eb | |
#Amazon S3cmd | |
sudo apt -y install python-setuptools && | |
wget -O s3cmd.tar.gz 'https://downloads.sourceforge.net/project/s3tools/s3cmd/2.0.0/s3cmd-2.0.0.tar.gz' && | |
tar -zxvf s3cmd.tar.gz && | |
sudo mv s3cmd-* /opt/s3cmd && | |
( cd /opt/s3cmd && sudo python setup.py install ) | |
#GDrive CLI (with my personal google app client id) | |
go get github.com/prasmussen/gdrive && | |
echo 'Go to https://console.developers.google.com/apis/credentials/oauthclient/466837606656-deore8ng70336aokck6icsnhmocjb61k.apps.googleusercontent.com?project=personal-scripts-283915' && | |
echo 'Paste client secret below:' && | |
read SECRET && | |
cd && | |
perl -0777 -i -pe 's/(const ClientId).+/$1 = "466837606656-deore8ng70336aokck6icsnhmocjb61k.apps.googleusercontent.com"/g' go/src/github.com/prasmussen/gdrive/handlers_drive.go && | |
perl -0777 -i -pe "s/(const ClientSecret).+/const ClientSecret = \"$SECRET\"/g" go/src/github.com/prasmussen/gdrive/handlers_drive.go && | |
cd go/src/github.com/prasmussen/gdrive && | |
go get -v && | |
go build && | |
sudo mv gdrive /usr/bin | |
#Heroku | |
curl https://cli-assets.heroku.com/install.sh | sh | |
#Remmina (Remote Windows Connector) | |
# See https://askubuntu.com/questions/288912/remmina-does-not-share-folders-or-disks | |
sudo apt-add-repository ppa:remmina-ppa-team/remmina-next && | |
sudo apt update && | |
sudo apt install -y remmina remmina-plugin-rdp libfreerdp-plugins-standard | |
# sudo apt -y install remmina | |
#VPN | |
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 2FAB19E7CCB7F415 && | |
echo 'echo "deb http://styrion.at/apt/ ./" > /etc/apt/sources.list.d/styrion.list' | sudo bash && | |
sudo apt update && | |
sudo apt-get -y install network-manager-openconnect-gnome network-manager-vpnc-gnome openfortigui | |
#Torrent Cli | |
sudo apt install transmission-cli | |
#httpie | |
curl --silent https://bootstrap.pypa.io/get-pip.py | sudo python3 && | |
pip install --upgrade httpie | |
#Stripe | |
wget -O stripe.tar.gz https://github.com/stripe/stripe-cli/releases/download/v1.7.10/stripe_1.7.10_linux_x86_64.tar.gz && | |
tar -zxvf stripe.tar.gz && | |
rm stripe.tar.gz && | |
sudo mv stripe /usr/bin && | |
stripe login | |
#Dev Directories | |
sudo mkdir /projects && | |
sudo mkdir /sandbox && | |
sudo chown -R $USER /projects && | |
sudo chown -R $USER /sandbox | |
#Autostart Applications | |
cat <<'EOF' > ~/.workspace-init | |
#!/bin/bash | |
idea /sandbox/bull-app-web /sandbox/bull-app-api & | |
google-chrome-stable & | |
EOF | |
chmod +x ~/.workspace-init | |
cat <<'EOF' > ~/.config/autostart/workspace-init.desktop | |
[Desktop Entry] | |
Type=Application | |
Exec=~/.workspace-init | |
Hidden=false | |
NoDisplay=false | |
X-GNOME-Autostart-enabled=true | |
Name[en_US]=Workspace init | |
Comment=Start workspace applications like IDE and Chrome | |
Name=Workspace Start | |
EOF |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment