Dong Nguyen
debian

Setup new Debian

#!/bin/sh

# sudo visudo
# ndaidong ALL=(ALL) NOPASSWD: ALL

# chmod 0400 ~/.ssh/ndd*
# source ~/.bash_profile

sudo apt purge --autoremove gnome-games libreoffice* libexttextcat-data*
sudo apt install -y htop tilix vim xclip neofetch duf rsync safeeyes

vim ~/.bashrc
################################################################
if [ -f ~/.bash_profile ]; then
    . ~/.bash_profile
fi
################################################################

# increase the open files limit
# ulimit -n 65536
sudo vim /etc/security/limits.conf
##################################################
*               soft    nofile          65536
*               hard    nofile          65536
##################################################
# check
ulimit -a

# config tilix
dconf load /com/gexperts/Tilix/ < terminix.dconf

sudo apt install -y libxcb-cursor0 # for qt -> calibre
sudo apt install -y audacious simplescreenrecorder vlc kolourpaint breeze-icon-theme
sudo apt install -y viewnior gthumb evince abiword gnumeric sqlitebrowser

# docker
sudo apt install -y ca-certificates curl gnupg lsb-release
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

sudo usermod -aG docker ndaidong
newgrp docker

export DOCKER_COMPOSE_VER=2.34.0
sudo curl -SL https://github.com/docker/compose/releases/download/v$DOCKER_COMPOSE_VER/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

# gocryptfs
export GOCRYPT_VER=2.5.2
wget https://github.com/rfjakob/gocryptfs/releases/download/v$GOCRYPT_VER/gocryptfs_v${GOCRYPT_VER}_linux-static_amd64.tar.gz
tar zxvf gocryptfs_v${GOCRYPT_VER}_linux-static_amd64.tar.gz
rm gocryptfs_v${GOCRYPT_VER}_linux-static_amd64.tar.gz
sudo mv gocryptfs* /usr/local/bin/
vim ~/.gocryptfs.conf
mkdir ~/desync
gocryptfs -config ~/.gocryptfs.conf /storage/data/pcloud/sync/encrypted ~/desync/

# brave
sudo apt install -y apt-transport-https curl
sudo curl -fsSLo /usr/share/keyrings/brave-browser-archive-keyring.gpg https://brave-browser-apt-release.s3.brave.com/brave-browser-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/brave-browser-archive-keyring.gpg arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main"|sudo tee /etc/apt/sources.list.d/brave-browser-release.list
sudo apt update && sudo apt install -y brave-browser

# sublime
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/sublimehq-archive.gpg > /dev/null
sudo apt install -y apt-transport-https
echo "deb https://download.sublimetext.com/ apt/dev/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt update && sudo apt install -y sublime-text

# git config
git config --global user.name "Dong Nguyen"
git config --global user.email "[email protected]"
git config --global core.editor "nano"
git config --global pull.rebase false
git config --global pull.ff only
git config --global push.autoSetupRemote true
git config --global init.defaultBranch main

git clone --recursive [email protected]:ndaidong/vim.git ~/.vim

sudo mkdir /opt/engines
sudo chown -R ndaidong:ndaidong /opt/engines
sudo mkdir /workspace
sudo chown -R ndaidong:ndaidong /workspace

# python env
export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/usr/local/bin/python
export PATH=$HOME/.local/bin:$HOME/bin:$PATH

sudo apt install -y python3-distutils python3-venv python3-pip

pip3 install pipx --break-system-packages
pipx ensurepath
pipx install poetry
pipx install flake8
pipx install yt-dlp

# ibus-bamboo
# https://software.opensuse.org//download.html?project=home%3Alamlng&package=ibus-bamboo
wget https://download.opensuse.org/repositories/home:/lamlng/Debian_12/amd64/ibus-bamboo_0.8.4-0_amd64.deb
sudo apt install ./ibus-bamboo_0.8.4-0_amd64.deb

# Gnome extensions:
# https://extensions.gnome.org/extension/7332/status-icons/

# nvidia driver
sudo apt-add-repository non-free
sudo apt update
sudo apt install -y nvidia-detect
nvidia-detect 

sudo vim /etc/apt/sources.list
###################################################################################
deb http://deb.debian.org/debian/ bookworm main contrib non-free non-free-firmware
###################################################################################
sudo apt install nvidia-driver firmware-misc-nonfree
# reboot

# envycontrol
export ENVYCONTROL_VER=3.5.1
wget https://github.com/bayasdev/envycontrol/releases/download/v${ENVYCONTROL_VER}/python3-envycontrol_${ENVYCONTROL_VER}-1_all.deb
sudo apt install ./python3-envycontrol_${ENVYCONTROL_VER}-1_all.deb
# switching
sudo envycontrol -s integrated
sudo envycontrol -s hybrid --rtd3
sudo envycontrol -s nvidia --force-comp
# check
envycontrol --query
# reset
sudo envycontrol --reset

echo "DONE"