UbuntuSetup: Difference between revisions

From DrewWiki
Jump to navigation Jump to search
(automated additional steps)
m (Drew moved page Ubuntu17.10Setup to UbuntuSetup: Update as using 20.04)
 
(32 intermediate revisions by the same user not shown)
Line 1: Line 1:
=Install Main Apps=
=Install Main Apps=
Run install script from [https://github.com/drew-holt/ubuntu-setup-bash/blob/master/drew-8570w_u1710setup.sh]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
git config --global user.name "Drew Holt"
wget https://raw.githubusercontent.com/drew-holt/ubuntu-setup-bash/master/drew-8570w_setup.sh
git config --global user.email "[email protected]"
chmod 755 drew-8570w_setup.sh
 
./drew-8570w_setup.sh | tee -a setup-$(date '+%Y-%m-%d-%H.%M.%S%z').log
sudo sh -c 'echo "drew ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers'
 
cd $HOME; rmdir Documents/ Music/ Public/ Templates/ Videos/; rm examples.desktop
 
sudo dpkg-reconfigure popularity-contest # disable
 
sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get -y dist-upgrade
 
sudo apt-get install -y etckeeper
 
cd /etc
sudo etckeeper init
cd $HOME
 
DEBIAN_FRONTEND=noninteractive `#no prompting` \
sudo apt-get install -y \
keepass2 synergy gnome-tweak-tool chrome-gnome-shell `#tools` \
vim vim-scripts vim-runtime vim-doc curl xd \
lm-sensors p7zip-full exfat-utils exfat-fuse encfs libimage-exiftool-perl `#systools` \
ubuntu-restricted-extras gimp audacity vlc vlc-plugin-fluidsynth ffmpeg atomicparsley `#media` \
openjdk-8-jdk icedtea-8-plugin `#java` \
openssh-server fail2ban `#daemon` \
openvpn network-manager-openconnect-gnome network-manager-openvpn-gnome `#network-client` \
rdesktop freerdp2-x11 xtightvncviewer sshpass qbittorrent wireshark nmap nikto chkrootkit wavemon namebench apache2-utils mailutils `#netutils` \
virtualenv python2.7-examples python-pip `#python` \
build-essential `#build-tools` \
sqlitebrowser yamllint highlight gawk `#dev-tools` \
lynis pandoc apt-transport-https `#misc` \
xchat pidgin `#chatapps` \
ansible `#automation`
 
# Set good vim
sudo update-alternatives --set editor /usr/bin/vim.basic
 
# Install Oracle Java 8
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf-set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf-set-selections
sudo apt-get install -y oracle-java8-installer
#sudo apt-get install -y oracle-java9-installer
#sudo update-alternatives --config java
#per user JAVA_HOME="/usr/lib/jvm/java-8-oracle"
 
# install youtube-dl
pip install youtube-dl
 
# set env and aliases
cat <<EOF >> $HOME/.bashrc
export PATH="$HOME/.local/bin:$PATH"
alias xclip='xclip -selection clipboard'
alias rdesktop='rdesktop -g 1280x720 -r clipboard:CLIPBOARD -r disk:share=/home/drew'
alias get_ip='_get_ip() { VBoxManage guestproperty get "$1" "/VirtualBox/GuestInfo/Net/1/V4/IP";}; _get_ip'
EOF
 
# docker
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
sudo apt-get update
sudo apt-get install -y docker-ce
sudo usermod -a -G docker drew
 
# local installers already gathered
sudo apt-get install -y ./atom-amd64.deb ./google-chrome-stable_current_amd64.deb ./insync_1.4.4.37065-artful_amd64.deb ./slack-desktop-3.1.0-amd64.deb ./vagrant_2.0.3_x86_64.deb ./virtualbox-5.2_5.2.8-121009_Ubuntu_zesty_amd64.deb ./skypeforlinux-64.deb ./keybase_amd64.deb
</syntaxhighlight>
 
* Chrome [https://www.google.com/chrome/]
 
* Atom [https://atom.io/]
<syntaxhighlight lang=bash>
apm install atom-beautify linter-flake8 linter-pep8 autocomplete-python django-templates script-runner teletype
</syntaxhighlight>
 
* VirtualBox [https://www.virtualbox.org/]
<syntaxhighlight lang=bash>
echo y | sudo VBoxManage extpack install "Oracle_VM_VirtualBox_Extension_Pack-5.2.8.vbox-extpack"
</syntaxhighlight>
 
* Vagrant [https://www.vagrantup.com/]
 
<syntaxhighlight lang=bash>
vagrant plugin install vagrant-berkshelf; vagrant plugin install berkshelf
</syntaxhighlight>
</syntaxhighlight>


= Installers needing extra config =
* KeyBase [https://keybase.io]
* KeyBase [https://keybase.io]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
Line 98: Line 13:
</syntaxhighlight>
</syntaxhighlight>


* Insynq [https://www.insynchq.com/downloads]
* Insync [https://www.insynchq.com/downloads]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
insync start ### do some magic here so we don't have to resync 200GB of google drive
insync start ### do some magic here so we don't have to resync 200GB of google drive
</syntaxhighlight>
</syntaxhighlight>


* Chrome [https://www.google.com/chrome/]
* Atom [https://atom.io/]
* Slack [https://slack.com/downloads/linux]
* Slack [https://slack.com/downloads/linux]
* Skype [https://www.skype.com/en/get-skype/skype-for-linux/]
* Oracle JDK 8 [https://www.digitalocean.com/community/tutorials/how-to-install-java-with-apt-get-on-ubuntu-16-04]
* Docker [https://docs.docker.com/install/linux/docker-ce/ubuntu/#upgrade-docker-ce]
* awscli [https://aws.amazon.com/cli/]
* youtube-dl (pip) [https://rg3.github.io/youtube-dl/]
* nvm ''requires '''/bin/bash --login''' or fixed shell'' [https://github.com/creationix/nvm]
* rvm ''requires '''/bin/bash --login''' or fixed shell'' [https://github.com/rvm/ubuntu_rvm Ubuntu RVM Instructions]


* Skype [https://www.skype.com/en/get-skype/skype-for-linux/]
== Install Manually ==
* VirtualBox (script this?) [https://www.virtualbox.org/]
* Vagrant (script this?) [https://www.vagrantup.com/]
* ChefDK (script this) [https://downloads.chef.io/chefdk]


= Next =
= When needed =
* Terraform [https://www.terraform.io/]
* Terraform [https://www.terraform.io/]  
* Gitter
* Gitter
* Ramlog or equivalent for SSD
* Ramlog or equivalent for SSD
* nvm
* gvm for golang
* gvm for goland
* Studio 3T MongoDB Browser [https://studio3t.com/download/]
* rvm [https://github.com/rvm/ubuntu_rvm Ubuntu RVM Instructions]
* Studio 3T (mongodb browswer) (https://studio3t.com/download/)
* IntelliJ [https://www.jetbrains.com/idea/download/]
* Android Studio [https://developer.android.com/studio/index.html]
* Android Studio [https://developer.android.com/studio/index.html]
* Eclipse [https://www.eclipse.org/]
* Eclipse [https://www.eclipse.org/]
* NetBeans [https://netbeans.org/downloads/]
* NetBeans [https://netbeans.org/downloads/]
* DropBox (only if needed for work)
* PyCharm [https://www.jetbrains.com/pycharm/download/#section=linux]
* PyCharm [https://www.jetbrains.com/pycharm/download/#section=linux]
* Docker (in script) [https://docs.docker.com/install/linux/docker-ce/ubuntu/#upgrade-docker-ce]
* IntelliJ [https://www.jetbrains.com/idea/download/]
* Synergy (in script)
* DropBox (only if needed for work)


<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
Line 134: Line 57:


=Configure misc=
=Configure misc=
== Dash to Dock ==
==Configure SSH keys==
https://extensions.gnome.org/extension/307/dash-to-dock/
Create new ones or replenish from vault.
 
==Configure GPG keys==
Pull from vault, set git config
<syntaxhighlight lang=bash>
gpg --import drewholt-private-2018.03.01.key
gpg --edit-key {KEY} trust quit
 
git config --global user.signingkey 7A27C99359698874
 
vi ~/.gnupg/gpg.conf:
default-key 2018-03-01
 
gpg -d somefile.tar.xz.pgp | tar -tJ
</syntaxhighlight>


==  Set gnome-screenshot default save directory ==
==  Set gnome-screenshot default save directory ==
?
?
== Gnome3 Fix alt+tab to move across windows and not just grouped apps ==
 
Application Launcher > Settings > Keyboard
==Set default downloads directory to Desktop==
* Under Navgiation, Set Switch Windows to alt+tab and replace. Yes to confirm override of "Switch Applications"
command for firefox, chrome, qbit, skype, slack, hangouts, etc


== Gnome Tweak Tool ==
== Gnome Tweak Tool ==
<syntaxhighlight lang=bash>
Install and configure extensions (done via script).
TopIcons-plus - for Insync, Slack, Skype icons
* Dash to Dock [https://extensions.gnome.org/extension/307/dash-to-dock/]
Extension update notifier
* TopIcons-plus [https://extensions.gnome.org/extension/1031/topicons/] - for Insync, Slack, Skype icons
Freon
 
Status area horizontal spacing
==Gmail to handle mailto: links==
$ ~/.local/share/gnome-shell/extensions
Partially scripted.
sudo apt-get install chrome-gnome-shell
 
* restart GNOME Shell (Alt+F2, r, Enter) and enable the extension through gnome-tweak-tool.
https://developers.google.com/web/updates/2012/02/Getting-Gmail-to-handle-all-mailto-links-with-registerProtocolHandler
</syntaxhighlight>


==Maybe Snaps==
==Maybe Snaps==

Latest revision as of 01:12, 7 September 2021

Install Main Apps

Run install script from [1]

wget https://raw.githubusercontent.com/drew-holt/ubuntu-setup-bash/master/drew-8570w_setup.sh
chmod 755 drew-8570w_setup.sh
./drew-8570w_setup.sh | tee -a setup-$(date '+%Y-%m-%d-%H.%M.%S%z').log

Installers needing extra config

run_keybase
insync start ### do some magic here so we don't have to resync 200GB of google drive

Install Manually

  • VirtualBox (script this?) [13]
  • Vagrant (script this?) [14]
  • ChefDK (script this) [15]

When needed

  • Terraform [16]
  • Gitter
  • Ramlog or equivalent for SSD
  • gvm for golang
  • Studio 3T MongoDB Browser [17]
  • Android Studio [18]
  • Eclipse [19]
  • NetBeans [20]
  • DropBox (only if needed for work)
  • PyCharm [21]
  • IntelliJ [22]
drew@drew-8570w:~$ snap list
Name                  Version                  Rev   Developer      Notes
core                  16-2.29.4.2              3604  canonical      core
drive                 current                  22    fireeye        -
juju                  2.3.1                    3106  canonical      classic
kubectl               1.9.0                    266   canonical      classic

Configure misc

Configure SSH keys

Create new ones or replenish from vault.

Configure GPG keys

Pull from vault, set git config

gpg --import drewholt-private-2018.03.01.key
gpg --edit-key {KEY} trust quit

git config --global user.signingkey 7A27C99359698874

vi ~/.gnupg/gpg.conf:
default-key 2018-03-01

gpg -d somefile.tar.xz.pgp | tar -tJ

Set gnome-screenshot default save directory

?

Set default downloads directory to Desktop

command for firefox, chrome, qbit, skype, slack, hangouts, etc

Gnome Tweak Tool

Install and configure extensions (done via script).

  • Dash to Dock [23]
  • TopIcons-plus [24] - for Insync, Slack, Skype icons

Gmail to handle mailto: links

Partially scripted.

https://developers.google.com/web/updates/2012/02/Getting-Gmail-to-handle-all-mailto-links-with-registerProtocolHandler

Maybe Snaps

drew@drew-8570w:~$ snap list
picard                1.4.2                    2     pachulo        -
spotify               1.0.70.399.g5ffabd56-26  5     spotify        -
sqlitebrowser-casept  3.9.1                    2     casept         -
vault                 v0.9.0                   236   snapcrafters   -
vscode                1.19.1-1513676564        22    flexiondotorg  classic