Parcourir la source

Use the default gpg key if specified within the config file

Bob Mottram il y a 7 ans
Parent
révision
07bca1fc2f
3 fichiers modifiés avec 39 ajouts et 0 suppressions
  1. 13
    0
      src/freedombone-controlpanel-user
  2. 13
    0
      src/freedombone-utils-gpg
  3. 13
    0
      src/freedombone-utils-keys

+ 13
- 0
src/freedombone-controlpanel-user Voir le fichier

37
 GPG_ID=$(gpg --list-keys $MY_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
37
 GPG_ID=$(gpg --list-keys $MY_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
38
 GPG_BACKUP_ID=$(gpg --list-keys "(backup key)" | sed -n '2p' | sed 's/^[ \t]*//')
38
 GPG_BACKUP_ID=$(gpg --list-keys "(backup key)" | sed -n '2p' | sed 's/^[ \t]*//')
39
 
39
 
40
+# If the default key is specified within gpg.conf
41
+if [ -f ~/.gnupg/gpg.conf ]; then
42
+    if grep -q "default-key" ~/.gnupg/gpg.conf; then
43
+        default_gpg_key=$(cat ~/.gnupg/gpg.conf | grep "default-key")
44
+        if [[ "$default_gpg_key" != *'#'* ]]; then
45
+            default_gpg_key=$(cat ~/.gnupg/gpg.conf | grep "default-key" | awk -F ' ' '{print $2}')
46
+            if [ ${#default_gpg_key} -gt 3 ]; then
47
+                GPG_ID=$(gpg --list-keys $default_gpg_key | sed -n '2p' | sed 's/^[ \t]*//')
48
+            fi
49
+        fi
50
+    fi
51
+fi
52
+
40
 # Start including files
53
 # Start including files
41
 
54
 
42
 UTILS_FILES=/usr/share/${PROJECT_NAME}/utils/${PROJECT_NAME}-utils-*
55
 UTILS_FILES=/usr/share/${PROJECT_NAME}/utils/${PROJECT_NAME}-utils-*

+ 13
- 0
src/freedombone-utils-gpg Voir le fichier

38
     CURR_EMAIL_ADDRESS=$key_username@$HOSTNAME
38
     CURR_EMAIL_ADDRESS=$key_username@$HOSTNAME
39
     CURR_GPG_ID=$(gpg --homedir=/home/$key_username/.gnupg --list-keys $CURR_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
39
     CURR_GPG_ID=$(gpg --homedir=/home/$key_username/.gnupg --list-keys $CURR_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
40
 
40
 
41
+    # If the default key is specified within gpg.conf
42
+    if [ -f /home/$key_username/gpg.conf ]; then
43
+        if grep -q "default-key" /home/$key_username/gpg.conf; then
44
+            default_gpg_key=$(cat /home/$key_username/gpg.conf | grep "default-key")
45
+            if [[ "$default_gpg_key" != *'#'* ]]; then
46
+                default_gpg_key=$(cat /home/$key_username/gpg.conf | grep "default-key" | awk -F ' ' '{print $2}')
47
+                if [ ${#default_gpg_key} -gt 3 ]; then
48
+                    CURR_GPG_ID=$(gpg --homedir=/home/$key_username/.gnupg --list-keys $default_gpg_key | sed -n '2p' | sed 's/^[ \t]*//')
49
+                fi
50
+            fi
51
+        fi
52
+    fi
53
+
41
     sed -i "s|set pgp_encrypt_only_command.*|set pgp_encrypt_only_command=\"/usr/lib/mutt/pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --trust-model always --encrypt-to $CURR_GPG_ID -- -r %r -- %f\"|g" /home/$key_username/.muttrc
54
     sed -i "s|set pgp_encrypt_only_command.*|set pgp_encrypt_only_command=\"/usr/lib/mutt/pgpewrap gpg --batch --quiet --no-verbose --output - --encrypt --textmode --armor --trust-model always --encrypt-to $CURR_GPG_ID -- -r %r -- %f\"|g" /home/$key_username/.muttrc
42
     sed -i "s|set pgp_encrypt_sign_command.*|set pgp_encrypt_sign_command=\"/usr/lib/mutt/pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --trust-model always --encrypt-to $CURR_GPG_ID -- -r %r -- %f\"|g" /home/$key_username/.muttrc
55
     sed -i "s|set pgp_encrypt_sign_command.*|set pgp_encrypt_sign_command=\"/usr/lib/mutt/pgpewrap gpg %?p?--passphrase-fd 0? --batch --quiet --no-verbose --textmode --output - --encrypt --sign %?a?-u %a? --armor --trust-model always --encrypt-to $CURR_GPG_ID -- -r %r -- %f\"|g" /home/$key_username/.muttrc
43
 
56
 

+ 13
- 0
src/freedombone-utils-keys Voir le fichier

101
             CURR_GPG_ID=$(gpg --homedir=$HOME_DIR/.gnupg --list-keys $CURR_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
101
             CURR_GPG_ID=$(gpg --homedir=$HOME_DIR/.gnupg --list-keys $CURR_EMAIL_ADDRESS | sed -n '2p' | sed 's/^[ \t]*//')
102
             CURR_GPG_BACKUP_ID=$(gpg --homedir=$HOME_DIR/.gnupg --list-keys "(backup key)" | sed -n '2p' | sed 's/^[ \t]*//')
102
             CURR_GPG_BACKUP_ID=$(gpg --homedir=$HOME_DIR/.gnupg --list-keys "(backup key)" | sed -n '2p' | sed 's/^[ \t]*//')
103
 
103
 
104
+            # If the default key is specified within gpg.conf
105
+            if [ -f $HOME_DIR/gpg.conf ]; then
106
+                if grep -q "default-key" $HOME_DIR/gpg.conf; then
107
+                    default_gpg_key=$(cat $HOME_DIR/gpg.conf | grep "default-key")
108
+                    if [[ "$default_gpg_key" != *'#'* ]]; then
109
+                        default_gpg_key=$(cat $HOME_DIR/gpg.conf | grep "default-key" | awk -F ' ' '{print $2}')
110
+                        if [ ${#default_gpg_key} -gt 3 ]; then
111
+                            CURR_GPG_ID=$(gpg --homedir=$HOME_DIR/.gnupg --list-keys $default_gpg_key | sed -n '2p' | sed 's/^[ \t]*//')
112
+                        fi
113
+                    fi
114
+                fi
115
+            fi
116
+
104
             echo $'Making backup copy of existing gpg keys'
117
             echo $'Making backup copy of existing gpg keys'
105
             if [ -d $HOME_DIR/.gnupg ]; then
118
             if [ -d $HOME_DIR/.gnupg ]; then
106
                 if [ -d $HOME_DIR/.gnupg_old ]; then
119
                 if [ -d $HOME_DIR/.gnupg_old ]; then