feat(configure_user.sh): 添加 GPG 配置和 Git GPG 签名功能
This commit is contained in:
parent
b798232bfc
commit
8c82238365
@ -37,6 +37,41 @@ configure_git() {
|
||||
fi
|
||||
}
|
||||
|
||||
configure_gpg() {
|
||||
[ -d ~/.gnupg ] && [ -f ~/.gnupg/gpg.conf ] && return
|
||||
|
||||
if confirm_action "要配置 gpg 吗?" "Y"; then
|
||||
mkdir -p ~/.gnupg
|
||||
chmod 700 ~/.gnupg
|
||||
cp $scriptdir/files/gpg.conf ~/.gnupg/gpg.conf
|
||||
fi
|
||||
}
|
||||
|
||||
configure_git_gpg() {
|
||||
[ ! -f ~/.gitconfig ] && return
|
||||
! command_exists git && return
|
||||
[ -n "$(git config --global user.signingkey)" ] && return
|
||||
|
||||
if confirm_action "要配置 git 使用 gpg 签名吗?" "N"; then
|
||||
if ! command_exists 7za; then
|
||||
echo "7zip 未安装,请运行 sudo apt install p7zip-full 安装"
|
||||
return
|
||||
fi
|
||||
read_password
|
||||
cp $scriptdir/files/git.key.zip $tempdir/git.key.zip
|
||||
7za x -p$password $tempdir/git.key.zip -o$tempdir > /dev/null 2>&1
|
||||
rm $tempdir/git.key.zip
|
||||
if [ ! -s $tempdir/git.key ]; then
|
||||
echo "Wrong password!"
|
||||
return
|
||||
fi
|
||||
gpg --import $tempdir/git.key
|
||||
rm $tempdir/git.key
|
||||
git config --global user.signingkey 4ACB54FB3EFF978038BFB374A523E440E24B89CF
|
||||
git config --global commit.gpgSign true
|
||||
fi
|
||||
}
|
||||
|
||||
configure_miniconda() {
|
||||
[ -d ~/.miniconda3 ] && return
|
||||
[ $offline -eq 1 ] && return
|
||||
@ -85,16 +120,6 @@ configure_nvm() {
|
||||
fi
|
||||
}
|
||||
|
||||
configure_gpg() {
|
||||
[ -d ~/.gnupg ] && [ -f ~/.gnupg/gpg.conf ] && return
|
||||
|
||||
if confirm_action "要配置 gpg 吗?" "Y"; then
|
||||
mkdir -p ~/.gnupg
|
||||
chmod 700 ~/.gnupg
|
||||
cp $scriptdir/files/gpg.conf ~/.gnupg/gpg.conf
|
||||
fi
|
||||
}
|
||||
|
||||
# ============================================================
|
||||
|
||||
if [ $# -ne 0 ]; then
|
||||
@ -102,6 +127,7 @@ if [ $# -ne 0 ]; then
|
||||
declare -F configure_$func >/dev/null || continue
|
||||
echo "Configuring $func..."
|
||||
eval "configure_$func"
|
||||
unset -f configure_$func
|
||||
done
|
||||
return
|
||||
fi
|
||||
@ -109,7 +135,8 @@ fi
|
||||
configure_ssh
|
||||
configure_ssh_keygen
|
||||
configure_git
|
||||
configure_gpg
|
||||
configure_git_gpg
|
||||
configure_miniconda
|
||||
configure_miniforge
|
||||
configure_nvm
|
||||
configure_gpg
|
||||
|
||||
BIN
files/git.key.zip
Normal file
BIN
files/git.key.zip
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user