Skip to content

Instantly share code, notes, and snippets.

@MrDrMcCoy
Last active July 10, 2021 23:46
Show Gist options
  • Save MrDrMcCoy/74a03390620f7fdaff3d to your computer and use it in GitHub Desktop.
Save MrDrMcCoy/74a03390620f7fdaff3d to your computer and use it in GitHub Desktop.
This script sets up my preferred OpenSuSE Tumbleweed desktop so that I can get on with work and play without fuss.
#!/bin/bash -ve
#####
# This script will take a fresh OpenSuse Tumbleweed (KDE Plasma Desktop) install and make it suitable for getting stuff done.
#####
trap exit INT TERM QUIT HUP ERR
# add tmpfs mount for better speed
grep ' /tmp ' /etc/fstab >/dev/null || sudo tee -a /etc/fstab <<< "tmpfs /tmp tmpfs noatime,nodiratime"
sudo mount -v /tmp
##### remove sudo reauthentication timeout
sudo sed -i.bak -e '$a\' -e 'Defaults timestamp_timeout=-1' -e '/Defaults timestamp_timeout=.*/d' /etc/sudoers
##### set better ssh defaults
mkdir -vp $HOME/.ssh
tee $HOME/.ssh/config <<< "
ForwardAgent no
IdentitiesOnly yes
IdentityFile $HOME/.ssh/home
LogLevel=ERROR
StrictHostKeyChecking=no
UserKnownHostsFile=/dev/null
" > /dev/null
chmod -Rv u=rwX,g=,o= $HOME/.ssh
# Remove existing repos
sudo zypper rr {1..99} &> /dev/null || true
# Set up new repos
sudo zypper ar -Gfp 80 https://ftp.fau.de/packman/suse/openSUSE_Tumbleweed/ packman # ffmpeg
sudo zypper ar -Gfp 90 https://download.nvidia.com/opensuse/tumbleweed/ Nvidia
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/Emulators:/Wine/openSUSE_Tumbleweed/Emulators:Wine.repo
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/filesystems/openSUSE_Tumbleweed/filesystems.repo # exfat zfs
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/graphics/openSUSE_Tumbleweed/graphics.repo # rawtherapee
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/hardware:razer/openSUSE_Tumbleweed/hardware:razer.repo
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/XRevan86:/non-free/openSUSE_Leap_15.0/home:XRevan86:non-free.repo # skype
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/ahjolinna/openSUSE_Tumbleweed/home:ahjolinna.repo # spotify
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/ithod:/signal/openSUSE_Tumbleweed/home:ithod:signal.repo # signal
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/mad_soft/openSUSE_Tumbleweed/home:mad_soft.repo # dbeaver
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/nuklly/openSUSE_Tumbleweed/home:nuklly.repo # slack
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/home:/strycore/openSUSE_Tumbleweed/ Lutris
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/multimedia:/apps/openSUSE_Tumbleweed/multimedia:apps.repo # ardour openshot
sudo zypper ar -Gfp 90 https://download.opensuse.org/repositories/multimedia:/libs/openSUSE_Tumbleweed/multimedia:libs.repo # openshot
sudo zypper ar -Gfp 90 https://packages.microsoft.com/yumrepos/vscode vscode
sudo zypper ar -Gfp 90 obs://network:vpn:wireguard wireguard
sudo zypper ar -Gfp 99 https://download.opensuse.org/tumbleweed/repo/non-oss/ tumbleweed-non-oss
sudo zypper ar -Gfp 99 https://download.opensuse.org/tumbleweed/repo/oss/ tumbleweed-oss
sudo zypper ar -Gfp 99 https://download.opensuse.org/update/tumbleweed/ tumbleweed-updates
pkg_add=(
atop
audacity
bash-completion
cifs-utils
code
curl
davfs2
discord
dkms
docker{,-compose}
dos2unix
exfat-utils
ffmpeg
firefox
git
go
gtk{2,3}-metatheme-breeze
gwenview5
htop
hub
iotop
libreoffice
libtool
lutris
man
man-pages
metatheme-breeze-common
mtr
nano
ncdu
net-tools-deprecated
NetworkManager-wireguard
nextcloud-client
nload
ntfs-3g
ntfsprogs
okular
openrazer-meta
p7zip
patterns-devel-base-devel_basis
patterns-openSUSE-{enhanced_base{,_opt},laptop,non_oss{,_opt}}
pavucontrol
powertop
psmisc
pv
python{2,3}-{dbus-python-devel,devel,pip,pylint}
qbittorrent
rar
razergenie
remmina{,-plugin-{rdp,vnc}}
rsync
ShellCheck
signal-desktop
spotify-client
sshfs
steam
terminator
tlp
tree
ucode-amd
ucode-intel
udftools
umbrello
unrar
unzip
virtualbox-qt
vlc
vlc-codecs
wine-staging
wireguard-kmp-default
wireguard-tools
zip
)
pkg_rm=(
akregator
kmail
konversation
dragonplayer
thunderbird
)
sudo zypper in --force-resolution --recommends -l ${pkg_add[@]}
# Install updates
sudo zypper dup -l --recommends --force-resolution
# Remove unwanted packages
sudo zypper rm ${pkg_rm[@]}
#### Add user to groups
for group in davfs2 docker input libvirt plugdev vboxusers ; do
sudo gpasswd -a $USER $group
done
echo "You should probably reboot"
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment