UbuntuSetup: Difference between revisions

From DrewWiki
Jump to navigation Jump to search
No edit summary
m (Drew moved page Ubuntu17.10Setup to UbuntuSetup: Update as using 20.04)
 
(50 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
=Install Main Apps=
= After initial install =
Run install script from [https://github.com/drew-holt/ubuntu-setup-bash/blob/master/drew-8570w_u1710setup.sh]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
sudo apt-get update
wget https://raw.githubusercontent.com/drew-holt/ubuntu-setup-bash/master/drew-8570w_setup.sh
sudo apt-get upgrade -y
chmod 755 drew-8570w_setup.sh
sudo apt-get dist-upgrade
./drew-8570w_setup.sh | tee -a setup-$(date '+%Y-%m-%d-%H.%M.%S%z').log
 
sudo apt-get install -y etckeeper
cd /etc
sudo etckeeper init
sudo vi .gitignore # remove sensitive files
</syntaxhighlight>
</syntaxhighlight>


==Disable Guest Login==
= Installers needing extra config =
* KeyBase [https://keybase.io]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
sudo sh -c "echo 'allow-guest=false' >> /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf"
run_keybase
</syntaxhighlight>
</syntaxhighlight>


==Show username in Desktop Manager==
* Insync [https://www.insynchq.com/downloads]
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
gsettings set com.canonical.indicator.session show-real-name-on-panel true
insync start ### do some magic here so we don't have to resync 200GB of google drive
</syntaxhighlight>
</syntaxhighlight>


==Set vim Editor==
* Chrome [https://www.google.com/chrome/]
* Atom [https://atom.io/]
* 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]
 
== Install Manually ==
* VirtualBox (script this?) [https://www.virtualbox.org/]
* Vagrant (script this?) [https://www.vagrantup.com/]
* ChefDK (script this) [https://downloads.chef.io/chefdk]
 
= When needed =
* Terraform [https://www.terraform.io/]
* Gitter
* Ramlog or equivalent for SSD
* gvm for golang
* Studio 3T MongoDB Browser [https://studio3t.com/download/]
* Android Studio [https://developer.android.com/studio/index.html]
* Eclipse [https://www.eclipse.org/]
* NetBeans [https://netbeans.org/downloads/]
* DropBox (only if needed for work)
* PyCharm [https://www.jetbrains.com/pycharm/download/#section=linux]
* IntelliJ [https://www.jetbrains.com/idea/download/]
 
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
sudo update-alternatives --set editor /usr/bin/vim.basic
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
</syntaxhighlight>
</syntaxhighlight>


==Set passwordless sudo==
=Configure misc=
==Configure SSH keys==
Create new ones or replenish from vault.
 
==Configure GPG keys==
Pull from vault, set git config
<syntaxhighlight lang=bash>
<syntaxhighlight lang=bash>
visudo:
gpg --import drewholt-private-2018.03.01.key
username ALL=(ALL) NOPASSWD: ALL
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>
</syntaxhighlight>
== Dash to Dock ==
https://extensions.gnome.org/extension/307/dash-to-dock/


==  Set gnome-screenshot default save directory ==
==  Set gnome-screenshot default save directory ==
?
?
== Gnome3 Fix alt+tab to move across widnows and not just grouped apps ==
 
<pre>Open dconf-editor
==Set default downloads directory to Desktop==
Go to org/gnome/desktop/wm/keybindings
command for firefox, chrome, qbit, skype, slack, hangouts, etc
Move the value '<Alt>Tab' from switch-applications to switch-windows
Optionally move '<Shift><Alt>Tab' from switch-applications-backward to switch-windows-backward
If you want switch-windows to work across desktops, not just in the current desktop, you can also uncheck org/gnome/shell/window-switcher/current-workspace-only (Courtesy of @CharlBotha)
Close dconf-editor
Press <Alt>F2, then type r to restart Gnome.
</pre>
[https://superuser.com/questions/394376/how-to-prevent-gnome-shells-alttab-from-grouping-windows-from-similar-apps]


== Gnome Tweak Tool ==
== Gnome Tweak Tool ==
<pre>
Install and configure extensions (done via script).
TopIcons-plus - for insync prime, slack
* 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
$ ~/.local/share/gnome-shell/extensions
sudo apt-get install chrome-gnome-shell
* restart GNOME Shell (Alt+F2, r, Enter) and enable the extension through gnome-tweak-tool.
</pre>


=Install Main Apps=
==Gmail to handle mailto: links==
<syntaxhighlight lang=bash>
Partially scripted.
sudo apt-get install \
keepass2 rdesktop vncviewer \
lm-sensors p7zip-full exfat-utils exfat-fuse \
vim ssh git \
ubuntu-restricted-extras qbittorrent gimp audacity \
icedtea-8-plugin \
network-manager-openvpn wireshark  nmap \
openvpn openssh-server fail2ban \
vlc vlc-plugin-fluidsynth ffmpeg atomicparsley \
chrome-gnome-shell \
gnome-tweaks


** Atom
https://developers.google.com/web/updates/2012/02/Getting-Gmail-to-handle-all-mailto-links-with-registerProtocolHandler
** sqlitebrowser
** VirtualBox
** Vagrant
** vagrant plugin install vagrant-berkshelf
** vagrant plugin install berkshelf
** Docker
** Chrome, verify Google Hangouts
** Insynq
** Synergy
** Ramlog or equivalent for SSD
** nvm
** rvm
** Studio 3T (mongodb browswer)
** IntelliJ
** Android Studio
** Eclipse
** NetBeans
** PyCharm


==Maybe Snaps==
<syntaxhighlight lang=bash>
drew@drew-8570w:~$ snap list
drew@drew-8570w:~$ snap list
Name                  Version                  Rev  Developer      Notes
atom                  1.23.1                  109  snapcrafters  classic
core                  16-2.29.4.2              3604  canonical      core
cumulonimbus          1.6.7                    18    snapcrafters  -
drive                current                  22    fireeye        -
gitter-desktop        3.1.0                    20    snapcrafters  -
go                    1.9.2                    1016  mwhudson      classic
jenkins              2.8                      6    snapcrafters  -
juju                  2.3.1                    3106  canonical      classic
kubectl              1.9.0                    266  canonical      classic
lxd                  2.21                    5408  canonical      -
mongo33              3.3.9                    2    niemeyer      -
openhab              2.0.0                    167  openhab        -
picard                1.4.2                    2    pachulo        -
picard                1.4.2                    2    pachulo        -
pycharm-professional  2017.3.2                46    jetbrains      classic
spotify              1.0.70.399.g5ffabd56-26  5    spotify        -
spotify              1.0.70.399.g5ffabd56-26  5    spotify        -
sqlitebrowser-casept  3.9.1                    2    casept        -
sqlitebrowser-casept  3.9.1                    2    casept        -
vault                v0.9.0                  236  snapcrafters  -
vault                v0.9.0                  236  snapcrafters  -
vscode                1.19.1-1513676564        22    flexiondotorg  classic
vscode                1.19.1-1513676564        22    flexiondotorg  classic
oracle-java8-installer
cairo-dock
adobe-flashplugin
encfs youtube-dl nikto exiftool chkrootkit apache2-utils pidgin wavemon xd docker.io virtualenv python2.7-examples mailutils ansible namebench python-pip (via apt)
xchat
youtube-dl
</syntaxhighlight>
= Other =
<syntaxhighlight lang=bash>
sudo apt-get install -y nfs-common cifs-utils ethtool pm-utils
</syntaxhighlight>
= Other Configuration =
Remote syslog
<syntaxhighlight lang=bash>
echo "*.* @192.168.1.200" >> /etc/rsyslog.d/50-default.conf
</syntaxhighlight>
*tmpfs for /tmp and (maybe make this a bind mount..)
<syntaxhighlight lang=bash>
tmpfs  /tmp      tmpfs  defaults,noatime,mode=1777  0  0
</syntaxhighlight>
*/etc/fstab
<syntaxhighlight lang=bash>
192.168.1.200:/mnt/raid5 /mnt/raid5 nfs defaults 0 0
</syntaxhighlight>
*web server if needed
<syntaxhighlight lang=bash>
sudo apt-get install apache2 php5 php5-sqlite
</syntaxhighlight>
</syntaxhighlight>

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