Skip to content

Instantly share code, notes, and snippets.

@arter97
Last active February 20, 2025 14:25
Show Gist options
  • Save arter97/aee85625f87c271297d5ac353530527d to your computer and use it in GitHub Desktop.
Save arter97/aee85625f87c271297d5ac353530527d to your computer and use it in GitHub Desktop.
DataLab Ubuntu Setup
# Run with:
# curl -sSL https://gist.githubusercontent.com/arter97/aee85625f87c271297d5ac353530527d/raw/ | bash
set -x
# Re-enable systemd-resolved
sudo chattr -i /etc/resolv.conf
sudo rm /etc/resolv.conf
sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
sudo systemctl enable systemd-resolved.service
sudo systemctl start systemd-resolved.service
# Upgrade Google Chrome, Firefox, Slack, VS Code, Git automatically
cat <<EOF | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-datalab
Unattended-Upgrade::Origins-Pattern {
"o=Google LLC";
"o=Google Inc";
"o=namespaces/moz-fx-productdelivery-pr-38b5/repositories/mozilla";
"o=code stable";
"o=packagecloud.io/slacktechnologies/slack";
"o=LP-PPA-git-core";
"o=mirror.mwt.me";
};
EOF
# Install Zoom
sudo mkdir -p /etc/apt/keyrings && wget -qO- https://mirror.mwt.me/zoom/gpgkey | sudo tee /etc/apt/keyrings/mwt.asc > /dev/null
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/mwt.asc by-hash=force] https://mirror.mwt.me/zoom/deb any main" | sudo tee /etc/apt/sources.list.d/mwt.list
sudo apt update
sudo apt install -y zoom
# Install Chrome, Slack
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
wget https://downloads.slack-edge.com/desktop-releases/linux/x64/4.41.105/slack-desktop-4.41.105-amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb slack-desktop-4.41.105-amd64.deb
rm google-chrome-stable_current_amd64.deb slack-desktop-4.41.105-amd64.deb
sudo apt install -f -y
# Add apt-fast
sudo add-apt-repository --no-update ppa:apt-fast/stable
# Add Git PPA
sudo add-apt-repository --no-update ppa:git-core/ppa
# Firefox
sudo install -d -m 0755 /etc/apt/keyrings
wget -q https://packages.mozilla.org/apt/repo-signing-key.gpg -O- | sudo tee /etc/apt/keyrings/packages.mozilla.org.asc > /dev/null
echo "deb [signed-by=/etc/apt/keyrings/packages.mozilla.org.asc] https://packages.mozilla.org/apt mozilla main" | sudo tee -a /etc/apt/sources.list.d/mozilla.list > /dev/null
echo '
Package: *
Pin: origin packages.mozilla.org
Pin-Priority: 1000
Package: firefox*
Pin: release o=Ubuntu
Pin-Priority: -1' | sudo tee /etc/apt/preferences.d/mozilla
echo 'Unattended-Upgrade::Allowed-Origins:: "packages.mozilla.org:${distro_codename}";
Unattended-Upgrade::Allowed-Origins:: "namespaces/moz-fx-productdelivery-pr-38b5/repositories/mozilla:mozilla";' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-firefox
# Install
sudo apt update
DEBIAN_FRONTEND=noninteractive sudo -E apt install -y apt-fast git ssh
sudo apt install -y --allow-downgrades firefox
# SSH Port activation to 2222
sudo sed -i 's/^Port 22$/Port 2222/' /etc/ssh/sshd_config
sudo systemctl disable --now ssh.socket
sudo rm -f /etc/systemd/system/ssh.service.d/00-socket.conf
sudo rm -f /etc/systemd/system/ssh.socket.d/addresses.conf
sudo systemctl daemon-reload
sudo systemctl enable --now ssh.service
# iwlwifi
echo "options iwlmvm power_scheme=1
options iwlwifi power_save=0" | sudo tee /etc/modprobe.d/iwlwifi.conf
sudo depmod -a
sudo update-initramfs -u
# Xorg
sudo sed -i -e '/^Session=/d' -e '/\[User\]/a Session=ubuntu-xorg' /var/lib/AccountsService/users/$(getent passwd 1000 | awk -F: '{print $1}')
# Screen timeout to 30 minutes
dconf write /org/gnome/desktop/session/idle-delay 'uint32 1800'
sudo -u $(getent passwd 1000 | awk -F: '{print $1}') dconf write /org/gnome/desktop/session/idle-delay 'uint32 1800'
# nimf
wget -qO- https://pkg.hamonikr.org/add-hamonikr.apt | sudo -E bash -
sudo apt install -y nimf nimf-libhangul qtbase-abi-5-15-3-dummy
im-config -n nimf
sudo -u $(getent passwd 1000 | awk -F: '{print $1}') im-config -n nimf
sudo mkdir -p /opt/zoom/Qt/plugins/platforminputcontexts
sudo ln -s /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libqt5im-nimf.so /opt/zoom/Qt/plugins/platforminputcontexts
dconf write /org/nimf/hotkeys "['Hangul', 'Alt_R', '<Mod2> Alt_R']"
sudo -u $(getent passwd 1000 | awk -F: '{print $1}') dconf write /org/nimf/hotkeys "['Hangul', 'Alt_R', '<Mod2> Alt_R']"
# Hwp
wget https://arter97.com/.191066/hoffice_11.20.0.1520_amd64.deb
sudo dpkg -i hoffice_11.20.0.1520_amd64.deb
rm hoffice_11.20.0.1520_amd64.deb
set +x
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment