Both sides previous revision
Previous revision
|
|
vps_-_plan9front_-_mailing_and_faces [2022/07/19 20:57] hc9 removed |
— (current) |
====== create face.1 ====== | |
| |
Adding a face: | |
| |
<code> | |
cpu% jpg -c myface.jpg | iconv -c m8 | resample -x 48 -y 48 > myface.1 | |
</code> | |
| |
<code> | |
cpu% png -c myface.png | iconv -c m8 | resample -x 48 -y 48 > myface.1 | |
</code> | |
| |
<code> | |
cpu% jpg -c myface.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > myface.1 | |
</code> | |
| |
|An optional example:|''<nowiki>jpg -c myface.jpg | iconv -c k4 | resample -x 48 -y 48 > myface.1</nowiki>''| | |
| |
|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 ''page'': | |
| |
<code> | |
cpu% page myface.1 | |
</code> | |
| |
Check the results with ''tweak'': | |
| |
<code> | |
cpu% tweak myface.1 | |
</code> | |
| |
Check the classification with ''file'': | |
| |
<code> | |
cpu% file myface.1 | |
</code> | |
| |
===== 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.| | |
| |
<code> | |
cpu% mkdir $home/lib/face | |
</code> | |
| |
|**2.**|Run //faceoff//. The //faceoff// updates are queued.| | |
| |
<code> | |
cpu% faceoff | |
</code> | |
| |
^Example .dict format^ | |
|''9p.sdf.org/$user $user.1''| | |
|''sdf.org/$user $user.1''| | |
| |
===== face location ===== | |
| |
This is a people face, __example only__: | |
| |
<code> | |
cpu% jpg -c USER.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > /lib/face/people/USER.1 | |
</code> | |
| |
This is a domains face, __example only__: | |
| |
<code> | |
cpu% jpg -c sdf.jpg | resample -x 100 | crop -b 255 255 255 -i -30 | mug > /lib/face/domains/sdf.org.1 | |
</code> | |
| |
examples (in another format): | |
| |
<code> | |
cpu% cd /lib/face/48x48x1 | |
cpu% page .dict | |
</code> | |
| |
===== faces -i ===== | |
| |
|x| FACES -I: | ''faces [ -ihc ] [ -m maildir ]'' |http://man.9front.org/1/faces| | |
| |
<code> | |
cpu% faces -i | |
</code> | |
| |
====== 9p mail ====== | |
| |
Enter ''//upasname=$user@9p.sdf.org//'' if it's not already in the //$home/lib/profile//, below the bind lines. Try ''<nowiki>'</nowiki>sed 5q $home/lib/profile<nowiki>'</nowiki>'' 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''// |:!: //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).//|"| | |
| |
<code> | |
cpu% upasname=$user@9p.sdf.org | |
</code> | |
| |
|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.//|:!: Is //''upas/fs''// in the //''case cpu''// area of the profile, after //''plumber''// ?| | |
|//c.//|Was there a //Drawterm// restart after //a// & //b// before //d// ?| | |
|//d.//|//''mail -c''//| | |
| |
=== a: === | |
| |
<code> | |
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% | |
</code> | |
| |
=== 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.))// | |
| |
<code> | |
cpu% grep upas/\fs $home/lib/profile | |
upas/fs | |
cpu% grep -n upas/\fs $home/lib/profile | |
:42: upas/fs | |
cpu% | |
</code> | |
| |
=== c: === | |
| |
[[vps_-_9front#closing_drawterm|Closing Drawterm]] | |
| |
=== d: === | |
| |
Create the //''<nowiki>/</nowiki>mail<nowiki>/</nowiki>box<nowiki>/</nowiki>$user''// with ''<nowiki>'</nowiki>mail -c<nowiki>'</nowiki>''. This is only necessary once; it creates the $user mbox. | |
| |
<code> | |
cpu% mail -c | |
</code> | |
| |
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. | |
| |
<code> | |
% acme | |
</code> | |
| |
^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// 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: | |
| |
<code> | |
$ man majordomo | |
</code> | |
| |
^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// to format the mail.| | |
|To: ''majordomo@sdf.org''| | |
|Subject:| | |
|[blank]| | |
|''subscribe plan9-l''|:::|⇐ Type the email text here.| | |
| |
|x|Plan 9 has active communities which mostly interact by email. You are encouraged to join the //[[https://9p.io/wiki/plan9/mailing_lists|9fans mailing list]]// where discussion about Plan 9, and related technologies occur.| | |
| |
– | |
===== nedmail ===== | |
| |
|x| MAIL: |nedmail - reading mail|http://man.9front.org/1/nedmail| | |
| |
<file config Test E-mail key sequence while at the 9p prompt> | |
mail -s 'Test from 9p' $user@9p.sdf.org | |
Will this work? | |
ctrl-d | |
[Esc] | |
</file> | |
| |
|**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| | |
<code> | |
cpu% mail -s 'Test from 9p' $user@9p.sdf.org | |
will this work? | |
| |
</code> | |
| |
|x|Caution, //''ctrl-d''// can operate as the //''[Delete]''// on a rio rc window.| | |
| |
<code> | |
cpu% mail | |
42 messages, 1 unread | |
: q | |
cpu% | |
</code> | |
| |
=== create popmail: === | |
| |
|x|This is a DRAFT| | |
| |
Incomplete notes, regarding popmail on 9p, are located here: [[:playground:misc:plan_9_boot_camp_tea_note_presentation-notes|Notes from TEA NOTE #N Sunday August 22, 2021]]. | |
| |