User Tools

Site Tools


terminal:profanity

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
terminal:profanity [2021/05/24 02:29]
nanodano
terminal:profanity [2021/05/30 21:22] (current)
nanodano
Line 4: Line 4:
  
 Refer to the official user guide for more details: [[https://profanity-im.github.io/userguide.html]]. Refer to the official user guide for more details: [[https://profanity-im.github.io/userguide.html]].
 +
 +===== Video course =====
 +
 +<html>
 +<center>
 +<iframe width="560" height="315" src="https://www.youtube.com/embed/O0psMtYnouc" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
 +</center>
 +</html>
  
 ===== Installation ===== ===== Installation =====
Line 34: Line 42:
   * ''/sub request nanodano@devdungeon.com'' - Request status updates   * ''/sub request nanodano@devdungeon.com'' - Request status updates
   * ''/msg nanodano@devdungeon.com hi'' - Send direct message   * ''/msg nanodano@devdungeon.com hi'' - Send direct message
 +
 +===== Store password =====
 +
 +If you want to store your password in plain-text (not recommended!) run:
 +
 +<code>
 +/account set nobody@devdungeon.com password 'my$ecretpass'
 +</code>
 +
 +<code bash>
 +# Install dependencies (if needed)
 +sudo apt install pass gpg
 +
 +# Generate a private PGP key (if needed)
 +gpg --quick-generate-key nobody@devdungeon.com
 +
 +# Initialize password database (utilizes PGP encryption)
 +# <gpg_key_id> should match GPG key ID. e.g. nobody@devdungeon.com
 +pass init <gpg_key_id> 
 +# Add a password to the database (name however you want)
 +pass insert xmpp/nobody  # Enter password at prompt
 +</code>
 +
 +Then inside Profanity:
 +
 +<code>
 +/account set nobody@devdungeon.com eval_password "pass xmpp/nobody"
 +</code>
  
 ===== DevDungeon theme file ===== ===== DevDungeon theme file =====
  
-The ''devdungeon'' (no file extension) theme file can live in ''~/config.profanity/themes/devdungeon''.+The ''devdungeon'' (no file extension) theme file can live in ''~/config/profanity/themes/devdungeon''
 +In Profanity, load the theme with: ''/theme load devdungeon''
 + 
 +Theme template at [[https://github.com/profanity-im/profanity/blob/master/theme_template]]. 
 + 
 +Theme documentation at [[https://profanity-im.github.io/guide/0100/themes.html]].
  
 <code | devdungeon> <code | devdungeon>
 # ~/.config/profanity/themes/devdungeon # ~/.config/profanity/themes/devdungeon
 +# Load it with: /theme load devdungeon
 +# Template: https://github.com/profanity-im/profanity/blob/master/theme_template
  
 [colours] [colours]
Line 48: Line 91:
 titlebar.brackets=Cyan1 titlebar.brackets=Cyan1
  
-titlebar.unencrypted=Red1+titlebar.unencrypted=yellow
 titlebar.encrypted=Grey93 titlebar.encrypted=Grey93
-titlebar.untrusted=Grey93+titlebar.untrusted=bold_yellow
 titlebar.trusted=Grey93 titlebar.trusted=Grey93
  
Line 66: Line 109:
 statusbar.active=Grey70 statusbar.active=Grey70
 statusbar.current=Grey93 statusbar.current=Grey93
-statusbar.new=magenta+statusbar.new=Cyan1
 # Shell input color # Shell input color
 input.text=Grey93 input.text=Grey93
Line 141: Line 184:
 ===== profrc file ===== ===== profrc file =====
  
-The ''profrc'' file should reside in ''~/.config/profanity/profrc'' and contains your preferences.+The ''profrc'' file should reside in ''~/.config/profanity/profrc'' and contains your preferences. There is a template at [[https://github.com/profanity-im/profanity/blob/master/profrc.example]]
  
 <code | profrc> <code | profrc>
 # ~/.config/profanity/profrc # ~/.config/profanity/profrc
 +# Template: https://github.com/profanity-im/profanity/blob/master/profrc.example
  
 [ui] [ui]
Line 150: Line 194:
  
 [connection] [connection]
 +defaccount=you@devdungeon.com
 account=you@devdungeon.com account=you@devdungeon.com
  
Line 161: Line 206:
 nanodano=/msg nanodano@devdungeon.com Hello nanodano=/msg nanodano@devdungeon.com Hello
 devdungeon=/join general@conference.devdungeon.com devdungeon=/join general@conference.devdungeon.com
 +
 +[logging]
 +chlog=true
 +grlog=true
 +maxsize=1048580
 +rotate=true
 +shared=true
 +
 +[otr]
 +warn=true
 +log=on
 +policy=manual
 +
 +[presence]
 +autoaway.mode=away
 +autoaway.time=15
 +autoaway.message=Away from computer
 +autoaway.check=true
 </code> </code>
 +
 +
 +===== PGP Encryption =====
 +
 +You need a private key for yourself and the public key of your recipient. If you need someone to send a message to, you can send me a message using my public key. You can get my public key from [[https://www.devdungeon.com/gpg]] or via:
 +
 +<code bash>
 +# Download/import public key for nanodano@devdungeon.com
 +curl -O https://www.devdungeon.com/nanodano.gpg; gpg --import nanodano.gpg
 +
 +#or
 +
 +# Fetch nanodano@devdungeon.com public key from a keyserver
 +gpg --keyserver pgp.mit.edu --recv A6D4E83A1866995E
 +gpg --keyserver hkps.pool.sks-keyservers.net --recv A6D4E83A1866995E
 +</code>
 +
 +In Profanity, configure which PGP key should be associated with your XMPP account and set the public key for your recipient:
 +
 +<code>
 +# List keys in your store
 +/pgp keys
 +</code>
 +
 +<code>
 +# Set your private PGP key to your account
 +/account set <account> pgpkeyid <keyid>
 +# For example:
 +/account set me@devdungeon.com pgpkeyid AAAABBBBCCCCDDDD
 +</code>
 +
 +<code>
 +# Set recipient account public key
 +/pgp setkey nanodano@devdungeon.com A6D4E83A1866995E
 +</code>
 +
 +Start and end PGP-encrypted conversations with:
 +
 +<code>
 +/pgp start nanodano@devdungeon.com
 +/pgp end
 +</code>
 +
 +
 +===== vi keybinds =====
 +
 +Profanity uses readline so it supports tab completion and all the same keybinds a shell does like CTRL-P and CTRL-W. You can also set it to use vi keybinds. Update your `~/.inputrc` file to specify vi mode:
 +
 +
 +<code | input.rc>
 +set editing-mode vi
 +</code>
 +
terminal/profanity.1621823390.txt.gz · Last modified: 2021/05/24 02:29 by nanodano