ID-kaart Manjaro Linuxis
Skriptiga paigaldamine
Skript on tekstifail, mis sisaldab vajalikke käske, mida muidu peaks käsurealt ükshaaval sisestama. Kuid need saab kirjutada vastavasse tekstifaili, millel on määratud shebang. Sellist skripti käivitades täidetakse käsud kiirelt, vastavalt arvuti võimsusele. See annab võimaluse käsud hästi läbi mõelda ja vead parandada ning edaspidi seda skriptina käivitades aega kokku hoida. Vähe sellest, et käskude kirjutamine on aeglane, selle käigus tekivad ka vead. Vahel on vaja ka skripti kohandada, täiendada, kuid see on oluliselt lihtsam, kui kõike kogu aeg käsitsi sisestada.
Allolev skript tahab veel testimist - mitte ainult Manjaro, vaid ka Arch Linux jt Arch Linuxi põhjal tehtud distrod. Hea oleks kuulda tagasisidet arutelu kaardisakil, mis distrosid olete testinud ja kuidas on toiminud. Viidete hulgas on artikkel, kus on pikemalt seletatud graafiliselt paigaldades, mille põhjal ka automaatse paigaldamise skript kirjutatud.
Võtmete eelnev vaatamine AUR'ist
See annab võimaluse AURi veebiliidesest puuduvad GPG-võtmed ennem paigaldamist järgi vaadata ja skripti importimiseks kopeerida. Väärtuse validpgpkeys juures ülakomade vahel ongi paigaldamisel kontrollitava GPG avaliku võtme sõrmejälg:
- xml-security-c → View PKGBUILD
- libdigidocpp → View PKGBUILD
- qdigidoc4 → View PKGBUILD
- esteidpkcs11loader → View PKGBUILD
- chrome-token-signing → View PKGBUILD
Kavalam on mitte otse kasutada GPG-võtmete sõrmejälgi, vaid need otse viidatud veebilehtedelt importida. Skriptis on see ka nüüdseks lahendatud. Võti võib ka muutuda ja otse serverist importides tuleb alati õige GPG-võti.
ID-kaarditarkvara automaatse paigaldamise skript
#!/bin/sh
# skript käivitada
# sh skript.sh
# osa käske peavad minema tööle tavakasutajana
# uuendame tarkvarapakettide andmebaasid ja kogu süsteemi
# peale uuendamist tühjendame pacmani vahemälu
sudo pacman -Syyu
sudo pacman -Scc --noconfirm
# Paigaldame Git'i
sudo pacman -Syyu git --noconfirm
sudo pacman -Scc --noconfirm
# Paigaldame yay, et omakorda paigaldada AURi pakette Pacmani abil. Seda on vaja vaid üks kord teha. Kui juba on varasemalt yay olemas, siis need read tasub siit välja kommenteerida.
git clone https://aur.archlinux.org/yay-git.git
cd yay-git
makepkg -si --noconfirm # see peab käivituma tavakasutajana, vajalikul hetkel küsitakse sudo kaudu salasõna
rm -fr ~/yay-git
###############
# VÕTMESERVER #
###############
# GPG-võtmeservereid
# keyserver.ubuntu.com
# keys.openpgp.org
# https://wiki.archlinux.org/title/GnuPG#Key_servers
keyserver=keyserver.ubuntu.com
###########################
# GPG-VÕTMETE IMPORTIMINE #
###########################
# Puuduvate GPG-võtmete importimine eelnevalt
# xml-security-c
# võtame GPG-võtme sõrmejälje otse AURi serverist
gpg --keyserver $keyserver --recv-keys $(curl -fsSL "https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=xml-security-c" | grep validpgpkeys | cut -d";" -f2 | rev | cut -d"&" -f2 | rev)
#
# libdigidocpp, qdigidoc4, esteidpkcs11loader, chrome-token-signing
gpg --keyserver $keyserver --recv-keys $(curl -fsSL "https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=libdigidocpp" | grep "Raul Metsma" | cut -d";" -f2 | rev | cut -d"&" -f2 | rev)
# automatiseeritult kõikide imporditud GPG-võtmete täielik usaldamine
for i in `gpg --list-keys --with-colons --fingerprint | sed -n 's/^fpr:::::::::\([[:alnum:]]\+\):/\1/p'` ; do printf "trust\n5\ny\nquit" | gpg -q --no-tty --command-fd 0 --status-fd 2 --expert --edit-key $i 2>/dev/null 1>/dev/null ; done
##################################
# VAJALIKU TARKVARA PAIGALDAMINE #
##################################
# paigaldame ID-kaarditarkvara AUR'ist
yay -Syyu qdigidoc4 chrome-token-signing esteidpkcs11loader --noconfirm --cleanafter
#
# paigaldame ametlikust varamust kaardilugejate tarkvara
sudo pacman -Syyu --noconfirm ccid
#sudo pamac install ccid --no-confirm
#
#puhastame paketihaldurite vahemälu paigaldatud tarkvarast
sudo pacman -Scc --noconfirm
sudo yay -Scc --noconfirm
sudo pamac clean --build-files --no-confirm
sudo pamac clean --no-confirm
# rm -rf ~/.cache/*
#####################################
# CHROMIUMI JAOKS VAJALIK SEADISTUS #
#####################################
# see on kasutajaspetsiifiline seadistus
# tuleb käivitada iga kasutaja all üks kord
modutil -dbdir sql:$HOME/.pki/nssdb -add opensc-pkcs11 -libfile onepin-opensc-pkcs11.so -mechanisms FRIENDLY -force
# kontroll:
# modutil -dbdir sql:$HOME/.pki/nssdb -list
# vajadusel kustutamine kinnitust küsimata
# modutil -dbdir sql:$HOME/.pki/nssdb -delete onepin-opensc-pkcs11 -force
# VÕI ka
# modutil -dbdir sql:$HOME/.pki/nssdb -delete opensc-pkcs11 -force
#
# kui moodul on lisatud, siis teist korda sama moodulit lisada ei saa
# siis tuleb kõigepealt eemaldada
#############################
# PC/SC TEENUSE KÄIVITAMINE #
#############################
sudo systemctl start pcscd.socket
# vajadusel teenuse taaskäivitamiseks asendada start sõnaga restart
Seejärel avada terminal (kiirklahv F12, CTRL+ALT+T) ja käivitada see skript selles kataloogis, kuhu see tehti. Kasutaja peab olema sudo rühmas, kuid skripti ei käivitata sudo abil, kuna osad käsud peavad minema käima tavakasutajana. Näiteks
sh idkaart-manjaro.sh
Kui kõik hästi läheb, siis on ID-kaarditarkvara peale vajalike pakettide kompileerimist paigaldatud.
Seejärel lubada veebilehitseja laiendused ja käivitada veebilehitseja või ka DigiDoc rakendus. Kui veebilehitseja oli avatud laienduste paigaldamise ajal, siis tasub see uuesti käivitada.
DigiDoc rakendus tunneb ID-kaardilugeja ära kohe peale PC/SC teenuse käivitumist ja ei pea selleks sulgema.
Viited
- Manjaro ja ID-kaart - siin lisaks skriptile ka samm-haaval käsitsi paigaldamine läbi tehtud, sh veebilehitsejas laienduste lubamine ja ekraanipildid ka lisatud. Lisaks on selgitatud ka teiste ID-kaardilugejate tarkvarapakettide paigaldamisvõimalusi, mis ka AURi varamus olemas.