一. 源操作和更新升级
已存在的源
sudo sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list.d/debian.sources
直接修改源文件
/etc/apt/sources.list.d/debian.sources
Types: deb
URIs: http://mirrors.ustc.edu.cn/debian
Suites: trixie trixie-updates
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
Types: deb
URIs: http://mirrors.ustc.edu.cn/debian-security
Suites: trixie-security
Components: main contrib non-free non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
添加三方媒体库
/etc/apt/sources.list.d/deb-multimedia.list
# 默认注释了源码仓库,如有需要可自行取消注释
deb http://mirrors.ustc.edu.cn/deb-multimedia/ trixie main non-free
#deb-src http://mirrors.ustc.edu.cn/deb-multimedia/ trixie main non-free
deb http://mirrors.ustc.edu.cn/deb-multimedia/ trixie-backports main
#deb-src http://mirrors.ustc.edu.cn/deb-multimedia/ trixie-backports main
安装密钥
wget https://mirrors.ustc.edu.cn/deb-multimedia/pool/main/d/deb-multimedia-keyring/deb-multimedia-keyring_2024.9.1_all.deb
sudo apt-get install ./deb-multimedia-keyring_2024.9.1_all.deb
升级
sudo apt update && sudo apt dist-upgrade
二. 安装常用软件和开发依赖
sudo apt-get install fcitx5 fcitx5-chinese-addons fcitx5-frontend-all zsh git \
ssh safe-rm vim vim-gtk3 htop curl wget aria2 powerline exuberant-ctags duf \
cmake extra-cmake-modules python3-dev python3-pip gcc g++ make clang clangd \
ninja-build fbterm nodejs npm task-chinese-s task-chinese-s-desktop build-essential \
nginx-full python3-full keepassxc flatpak apt-transport-https dkms curl cabextract \
linux-headers-amd64 linux-image-amd64 linux-libc-dev unzip xz-utils zip libglu1-mesa \
clang cmake git ninja-build pkg-config libgtk-3-dev liblzma-dev libstdc++-12-dev \
dconf-cli uuid-runtime zsh-autosuggestions zsh-syntax-highlighting clevis \
clevis-tpm2 clevis-luks clevis-initramfs initramfs-tools firewalld firewall-config \
vlc vlc-l10n lazygit gitk libsqlite3-dev libsecret-1-dev libjsoncpp-dev libnotify-dev \
libayatana-appindicator3-dev clang cmake ninja-build pkg-config libgtk-3-dev \
liblzma-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev \
printer-driver-all printer-driver-hpcups smbclient python3-smbc hplip \
hp-ppd libfuse2t64 rsyslog
gnome
sudo apt-get install task-chinese-s-gnome-desktop gnome-shell-extensions \
gnome-shell-extensions-extra gnome-shell-extension-gsconnect \
gnome-shell-extension-gsconnect-browsers gnome-shell-extension-dashtodock \
gnome-shell-extension-appindicator gnome-shell-extension-kimpanel \
gnome-software-plugin-flatpak nautilus-sendto nautilus-share \
nautilus-admin nautilus-nextcloud nautilus-extension-gnome-terminal \
gnome-epub-thumbnailer webp-pixbuf-loader tumbler tumbler-plugins-extra \
libpoppler-glib8t64 ffmpegthumbnailer libgsf-1-114 totem evince libheif1
kde
sudo apt-get install task-chinese-s-kde-desktop plasma-discover-backend-flatpak elisa
三.配置
配置输入法
sudo tee -a /etc/environment <<-'EOF'
GTK_IM_MODULE=fcitx
QT_IM_MODULE=fcitx
XMODIFIERS=@im=fcitx
SDL_IM_MODULE=fcitx
GLFW_IM_MODULE=ibus
EOF
mkdir ~/.config/autostart/
cp /usr/share/applications/org.fcitx.Fcitx5.desktop ~/.config/autostart/
配置jdk
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/adoptium.asc] https://mirror.nju.edu.cn/adoptium/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
sudo apt update && sudo apt-get install temurin-{8,11,17,21}-jdk
安装配置zsh
git clone https://mirror.nju.edu.cn/git/ohmyzsh.git
cd ohmyzsh/tools
REMOTE=https://mirror.nju.edu.cn/git/ohmyzsh.git sh install.sh
cat << EOF | tee -a $HOME/.zshrc
#zsh-syntax-highlighting
source "/usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh"
#zsh-autosuggestions
source "/usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh"
# local
source "$HOME/Documents/Code/Script/shell/env/common.env"
EOF
配置tpm
sudo clevis luks bind -d /dev/nvme0n1p3 tpm2 '{"pcr_bank":"sha256"}'
sudo update-initramfs -u -k all
安装rust
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
wget https://mirrors.ustc.edu.cn/misc/rustup-install.sh
chmod +x ./rustup-install.sh
./rustup-install.sh
rustup component add rust-src rust-analysis
mkdir -vp ${CARGO_HOME:-$HOME/.cargo}
cat << EOF | tee -a ${CARGO_HOME:-$HOME/.cargo}/config.toml
[source.crates-io]
replace-with = 'ustc'
[source.ustc]
registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
EOF
npm安装vim插件
sudo npm i -g bash-language-server dockerfile-language-server-nodejs @microsoft/compose-language-service --registry=https://registry.npmmirror.com
conda的zsh配置
相关安装查看: https://mirrors.ustc.edu.cn/help/anaconda.html
miniconda3脚本地址
https://mirrors.ustc.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
初始化脚本
conda init bash
conda init zsh
配置
conda config --set auto_activate_base false
flatpak配置
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
# 修改为国内代理
sudo flatpak remote-modify flathub --url=https://mirrors.ustc.edu.cn/flathub
gnome配置
# 设置按钮布局
gsettings set org.gnome.desktop.wm.preferences button-layout ':minimize,maximize,close'
切换默认的alt+tab相关
GNOME中默认的Alt-Tab非常简单,不显示所选窗口的概述。您可以在 设置->键盘->键盘自定义快捷键 中将Alt-Tab快捷键从“切换应用程序”更改为“切换窗口”以显示窗口概述。
驱动和相关软件安装
驱动和相关软件安装
sudo apt-get install printer-driver-all printer-driver-hpcups smbclient python3-smbc hplip hp-ppd -y
hp驱动插件安装
sudo hp-plugin
smb配置打印机
smb://打印机用户名:打印机密码/打印机所在共享smb的网络/打印机名(需要uriencode)
# 例子
smb://admin:123456/192.168.1.1/HP%20LaserJet%20Professional%20M1216nfh%20MFP