====== create face.1 ======
| The create //face.1// technique does vary\\ between the Boot Camp participants, with\\ some examples used more than others. |
|x| A white background will look like a transparent background, after the install. |
Adding a face:
cpu% jpg -c myface.jpg | iconv -c m8 | resample -x 48 -y 48 > myface.1
cpu% png -c myface.png | iconv -c m8 | resample -x 48 -y 48 > myface.1
cpu% jpg -c myface.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > myface.1
|An optional example:|''jpg -c myface.jpg | iconv -c k4 | resample -x 48 -y 48 > myface.1''|
|x|Adding your face|https://9p.io/wiki/plan9/adding_your_face/index.html|
|x|Review //''mug'' ((The use of //''mug''// may call for the command //''broke''// ; ''man broke''.))//| ''cpu% jpg -c myface.jpg | mug > myface.1''|
|x| //''gif -c''// |http://man.9front.org/1/jpg|
|x| //''png -c''// |http://man.9front.org/1/jpg|
| | //**''-c''** Convert the image to a Plan 9 representation, as defined by image(6), and write it to standard output.// |"|
|x| //''crop''// |crop, iconv - frame, crop, and convert image|http://man.9front.org/1/crop|
| | //''crop''// |//There are two ways to specify a crop, by color value or by geometry.//|"|
|x| //''resize''// |resample, resize - resample a picture|http://man.9front.org/1/resample|
|x| //''rotate''// |rotate - rotate or mirror a picture|http://man.9front.org/1/rotate|
|x| //''paint''// |paint - create image files by drawing with a mouse or other pointing device|http://man.9front.org/1/paint|
|x| //''tweak''// |tweak - edit image files, subfont files, face files, etc.|http://man.9front.org/1/tweak|
| | //''tweak''// | //Report the coordinate and value of individual pixels indicated by pressing button 3.//|"|
===== quality control =====
Check the results with ''tweak'':
cpu% tweak myface.1
Check the classification with ''file'':
cpu% file myface.1
^ Example 48x48 output ^
| ''cpu% file /usr/$user/lib/face/$user.1'' |
| ''$user.1: //Compressed plan 9 image or subfont, depth 8, size 48x48//'' |
Check the results with ''page'':
cpu% page myface.1
===== 9p face install =====
|**1.**|If //myface.1// looks good, install it as ''$home/lib/face/$user.1''|
|//a.//|copy //''$user.1''// to the //''$home/lib/face''// directory.|
cpu% mkdir $home/lib/face
|**2.**|Run //faceoff//. The //faceoff// updates are queued.|
cpu% faceoff
^ Example .dict format ^
|''9p.sdf.org/$user $user.1''|
|''sdf.org/$user $user.1''|
===== face location =====
This is a people face, __example only__:
cpu% jpg -c USER.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > /lib/face/people/USER.1
This is a domains face, __example only__:
cpu% jpg -c sdf.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > /lib/face/domains/sdf.org.1
examples (in another format):
cpu% cd /lib/face/48x48x1
cpu% page .dict
===== faces -i =====
|x| FACES -I: | ''faces [ -ihc ] [ -m maildir ]'' |http://man.9front.org/1/faces|
cpu% faces -i
====== 9p mail ======
Enter ''//upasname=$user@9p.sdf.org//'' if it's not already in the //$home/lib/profile//, below the bind lines. Try '''sed 5q $home/lib/profile''' to view the first 5 lines of //$home/lib/profile//. //(Although unrelated, a [[vps_-_9front#adding_a_user|Plan 9 VPS upas snippet]] is available for reference.)//
Entering //''upasname=$user@9p.sdf.org''// (at the prompt) is **optional** if a ''$user'' [[boot_camp_9p_resource#default_9p_lib_profile|chooses to edit]] the //''$home/lib/profile''//.
|x| //''upas/fs''// |upasfs - mail file server|http://man.9front.org/4/upasfs|
| | //''upas/fs''// |[%%:!:%%] ((The [%%:!:%%] is interchangeable with a //[CAUTION]//, for the [[plan9front_-_acme_sam_abaco_mothra_and_man#abaco|abaco]], and [[plan9front_-_acme_sam_abaco_mothra_and_man#mothra|mothra]] browsers. :!:)) //A user normally starts fs in his/her profile after starting plumber(4) and before starting a window system, such as rio(1) or acme(1).//|"|
cpu% upasname=$user@9p.sdf.org
|x|Add //''upasname=$user@9p.sdf.org''// to the //''$home/lib/profile''//|
|x|A default **''lib/profile''** [[boot_camp_9p_resource#default_9p_lib_profile|example at the Boot Camp 9p resource]] page, with snippets/changes.|
^ **1.** ^ A checklist, or a possible task (//a,b,c,d//) order. ^
|//a.//|Is //''upasname=$user@9p.sdf.org''// in the //''$home/lib/profile''// ?|
|//b.//|[%%:!:%%] ((The [%%:!:%%] is interchangeable with a //[CAUTION]//, for the [[plan9front_-_acme_sam_abaco_mothra_and_man#abaco|abaco]], and [[plan9front_-_acme_sam_abaco_mothra_and_man#mothra|mothra]] browsers. :!:)) Is //''upas/fs''// in the //''case cpu''// area of the profile, after //''plumber''// ?|
|//c.//|Was there a //Drawterm// restart after //a// & //b//?|
|//d.//|//''mail -c''//|
|//i.//|If //''mail -c''// **is not working**: //Such users have to ask nicely for someone to create the mailbox directory on the file system console.//|
|//ii.//|Option 1: rename //$home/lib/profile// so that it is not recognized, then reconnect with //Drawterm -G// and run //''mail -c''//. (untested) [%%:!:%%] ((The [%%:!:%%] is interchangeable with a //[CAUTION]//, for the [[plan9front_-_acme_sam_abaco_mothra_and_man#abaco|abaco]], and [[plan9front_-_acme_sam_abaco_mothra_and_man#mothra|mothra]] browsers. :!:))|
|//iii.//|Option 2: rename //$home/lib/profile// so that it is not recognized, then reconnect and run //''mail -c''//. (untested) [%%:!:%%] ((The [%%:!:%%] is interchangeable with a //[CAUTION]//, for the [[plan9front_-_acme_sam_abaco_mothra_and_man#abaco|abaco]], and [[plan9front_-_acme_sam_abaco_mothra_and_man#mothra|mothra]] browsers. :!:))|
|//iv.//|//term%// notes: [[misc:newuser_raspberry_pi_2_b|Create $user /mail/box files with 'mail -c'.]]|
=== a: ===
cpu% sam -d profile.edit
-. profile.edit
/bind -q
bind -q
bind -qa $home/bin/rc /bin
bind -qa $home/bin/$cputype /bin
bind -qa $home/sys/lib /sys/lib
bind -qa /usr/sdf/bin /bin
a
upasname=$user@9p.sdf.org
.
w
profile.edit: #972
q
cpu%
=== b: ===
Check for //''upas/fs''//, or add it after //''plumber''// if it's not already //there ((//''plumber''// is located in the //''case cpu''// section of the //profile//, in this example.))//
cpu% grep upas/\fs $home/lib/profile
upas/fs
cpu% grep -n upas/\fs $home/lib/profile
:42: upas/fs
cpu%
=== c: ===
[[vps_-_9front#closing_drawterm|Closing Drawterm]]
=== d: ===
Create the //''/mail/box/$user''// with '''mail -c'''. This is only necessary once; it creates the $user mbox.
cpu% mail -c
Note: manually editing the //''/mail/box/$user''// files may interfere with //''qer''//.
9p mail reference:
|x| //''qer''// |qer, runq - queue management for spooled files|http://man.9front.org/8/qer|
| | //''qer''// |//Qer creates a control and a data file in a queue directory. The control file contents consist of the tag, reply, and args separated by spaces. The data file contains the standard input to qer.//|"|
Start acme to access the mbox.
% acme
^ Newcol Kill Putall Dump Exit ^^
|**New Cut Paste Snarf Sort Zerox Delcol**|:::|
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol**|:::|⇐ Add //Mail// by typing ''Mail''.|
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|:::|⇐ Mouse button 2 press //Mail//.|
^ Newcol Kill Putall Dump Exit ^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|
|**///mail/fs/mbox//** **Del Snarf : Look Put Mail Delmesg Undelmesg Next**|
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|
|**///mail/fs/mbox//** **Del Snarf : Look Put Mail Delmesg Undelmesg Next**|:::|⇐ Mouse button 2 press //Mail// to compose a new mail.|
|1/|:::|⇐ Email messages arrive here.|
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|
|**///mail/fs/mbox//** **Del Snarf : Look Put Mail Delmesg Undelmesg Next**|
|2/|:::|⇐ Email messages arrive here.|
|1/|
|**///mail/fs/mbox/Compose.1//** **Del Snarf : Look Post :fmt**|:::|⇐ Mouse button 2 press //Post// to send the mail; //fmt// ((//fmt, htmlfmt - simple text formatters//; ''man fmt''.)) to format the mail.|
|To:|
|Subject:|
|[blank]|
|some text here|:::|⇐ Type the email text here.|
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|
|**///mail/fs/mbox//** **Del Snarf : Look Put Mail Delmesg Undelmesg Next**|
|5/|:::|⇐ Mouse button 3 press #5 (//5///) to open the message.|
|4/|
|3/|
|2/|
|1/|
===== mailing lists =====
|x|SDF hosts the //plan9-l// mailing list for participants in the Plan 9 Boot Camp. Email '[[=finding_help#the_definitive_guide_to_rtfming|majordomo]]' and 'subscribe plan9-l' to join.|
A man page example:
$ man majordomo
^ Newcol Kill Putall Dump Exit ^^^
|**New Cut Paste Snarf Sort Zerox Delcol Mail**|
|**///mail/fs/mbox//** **Del Snarf : Look Put Mail Delmesg Undelmesg Next**|
|1/|:::|⇐ Email messages arrive here.|
|**///mail/fs/mbox/Compose.1//** **Del Snarf : Look Post :fmt**|:::|⇐ Mouse button 2 press //Post// to send the mail; //fmt// ((//fmt, htmlfmt - simple text formatters//; ''man fmt''.)) to format the mail.|
|To: ''majordomo@sdf.org''|
|Subject:|
|[blank]|
|''subscribe plan9-l''|:::|⇐ Type the email text here.|
===== nedmail =====
|x| MAIL: |nedmail - reading mail|http://man.9front.org/1/nedmail|
mail -s 'Test from 9p' $user@9p.sdf.org
Will this work?
ctrl-d
[Esc]
|**1.**|The window frame will turn blue (hold), until the //''[Esc]''// toggles to the non-blue window frame.|
|//a.//|//The ''[Esc]'' character toggles hold mode.// – http://man.9front.org/1/rio|
cpu% mail -s 'Test from 9p' $user@9p.sdf.org
will this work?
|x|Caution, //''ctrl-d''// can operate as the //''[Delete]''// on a rio rc window.|
cpu% mail
42 messages, 1 unread
: q
cpu%
|x|This **//nedmail//** section will use a //DokuWiki// unordered [[wiki:syntax#lists|list]] for ''abaco'', ''mothra'', and ''netsurf'' browser review.|
|x|//Optional//: try the section ((A section can become part of a new //mini-project// in the //Self Guided [[plan_9_9front#discoveries|Discoveries]]//.)) items with a Drawterm rc prompt ([[boot_camp_9p_resource#boot_camp_9p_resource|without rio; teletype only]]), without //''ctrl-d''//.|
* //5 messages// and quit [''q'']
cpu% mail
5 messages, 1 unread
: q
cpu%
* //5 messages// and wait at the ''mail'' prompt ['':'']
cpu% mail
5 messages, 1 unread
:
* Save the message (without a //message delete//), then quit ['',q'']
: ,h
5: 1H
1 text/plain 2130 (from,example@lemmy.sdf.org)(subj,[SDF] Whats new with Lemmy?)
5: 1w /tmp/message_1_write_example
!saved in /tmp/message_1_write_example
5: ,q
cpu%
* Save the message, then mark the message for delete [''d''], and quit ['',q'']
cpu% mail
: ,h
5: 1H
1 text/plain 2130 (from,example@lemmy.sdf.org)(subj,[SDF] Whats new with Lemmy?)
1: 1w /tmp/message_1_write_example
1: d
1: ,q
!1 message deleted
cpu%
* The delete [''d''] //!d requires an address// message
: d
!d requires an address
: 1d
1: ,q
!1 message deleted
cpu%
=== create popmail: ===
|x|This is a DRAFT|
Incomplete notes, regarding popmail on 9p, are located here: [[misc:plan_9_boot_camp_tea_note_presentation-notes|Notes from TEA NOTE #N Sunday August 22, 2021]].