How to setup the Development Desktop (Ubuntu 24.04)¶
Install the required tools¶
Nala¶
Note
On older Ubuntu/Debian version the nala
package is not always available.
In these cases the following guide can be used to install nala
.
Install the nala front-end¶
Configure to use the fastest mirror¶
cURL¶
In certain Ubuntu installations cURL is not available. Since this guide uses cURL extensively, we have to make sure it is installed first.
Install internal Root CA certficate¶
Note
If you don't use an internal root certificates skip this step.
sudo nala install -y ca-certificates
sudo curl -skSL https://<url of the root cert> -o /usr/local/share/ca-certificates/<your root ca.pem.crt
sudo update-ca-certificates
GnuPG¶
Install the required packages¶
Import the private keys¶
curl -sSL https://<url hosting the keys> | gpg --import
# Set the ${KEYID} to your key's id
export KEYID=<your key id>
gpg --command-fd=0 --pinentry-mode=loopback --edit-key "$KEYID" <<EOF
uid *
trust
5
y
save
EOF
YubiKey¶
Check the key status¶
Before we can use the YubiKey we have to make sure it is accessible. Connect the key to the machine and run the following command. This should show some basic information about your YubiKey card.
❯ gpg --card-status
Reader ...........: Yubico YubiKey FIDO CCID 00 00
Application ID ...: D276##################################
Application type .: OpenPGP
Version ..........: 3.4
Manufacturer .....: Yubico
Serial number ....: 1########
Name of cardholder: [not set]
Language prefs ...: [not set]
Salutation .......:
URL of public key : [not set]
[...]
General key info..: sub ed25519/#################################
❯
If the above command didn't work try creating the following file before retrying.
Use GPG for SSH keys¶
Download the agent config template¶
cd ~/.gnupg
curl -sSLO https://raw.githubusercontent.com/drduh/config/master/gpg-agent.conf
gpg-connect-agent /bye
Replace agents¶
In order to use the GPG connect agent to use with SSH add the following lines to you rc
file:
cat >> ~/.bashrc <<EOF
export GPG_TTY="\$(tty)"
export SSH_AUTH_SOCK=\$(gpgconf --list-dirs agent-ssh-socket)
gpgconf --launch gpg-agent
<<EOF
Chezmoi¶
Gogh - Terminal Color schemes¶
Install Commitizen¶
At this point logout and log back in to make sure the variables are working.