I have tried to fut forth the problem in a less deniable way:
http://www.croatiafidelis.hr/foss/cap/c ... entoo.webm
More following, with time (this was a lot of work). Just, can the followers of this topic guess what method I used to get the mutt deployed, IMO, properly, as seen in the last 1 and 1/2 minutes of that 5 minutes video?
Namely, most of the problems I tried to explain textually here (and now some are shown in video) are still there, and have been there for, apparently, long time.
EDIT 2014-11-01
Unfortunately, for a human memory fault, or processing fault in my head, there is one error --skip to second half of that post for the explanation of the error-- that is hard to correct now, after the entire event. So just bear in mind that gnupg-1 is perfectly installable with Mutt. But in, as far as I go, the wrong way.
I also just tried hard to correct the error regarding the manual install out-of-portage, which is viable (but the overlay-one is certainly preferable), and I couldn't correct all. The inconsistency is marked with anorher "2014-11-01" further below. Sorry!
---
EDIT 2014-10-29:
Renaming the topic to:
Mutt without Portage/in Local Overlay, for Air-Gappers
[ Because of Lack of gnupg-1 Support ]
---
Previos Title was:
Install Mutt without Portage, and Why, for Air-Gappers
---
After doing a regular "emerge mutt", and trying to use it, I got:
Code: Select all
ukrainian@mybox ~ $ mutt
Error in /home/ukrainian/.muttrc, line 11: ssl_usesystemcerts: unknown variable
source: errors in /home/ukrainian/.muttrc
Press any key to continue...
ukrainian@mybox ~ $
Code: Select all
# emerge -C mutt
actually you should first see more in detail this directory:
Code: Select all
# ls -l /usr/portage/mail-client/mutt/
total 88
-rw-r--r-- 1 portage portage 56984 2014-05-15 08:31 ChangeLog
drwxr-xr-x 2 portage portage 4096 2014-03-13 22:01 files
-rw-r--r-- 1 portage portage 4409 2014-05-15 08:31 Manifest
-rw-r--r-- 1 portage portage 650 2009-10-27 22:47 metadata.xml
-rw-r--r-- 1 portage portage 8041 2014-05-14 18:31 mutt-1.5.22-r3.ebuild
-rw-r--r-- 1 portage portage 8055 2014-04-08 22:37 mutt-1.5.23-r2.ebuild
mybox ukrainian #
Code: Select all
# view /usr/portage/mail-client/mutt/mutt-1.5.23-r2.ebuild
...[snip]...
gpg? ( >=app-crypt/gpgme-0.9.0 )
...[snip]...
Why? Because you are better of trying to use gpg-1 instead --that one above is a GUI interface, goes with the gpg-2 which you have to use gpg-agent and GUI to type password; not the mutt way really
)
The mutt in portage is the unstable of March 2014 from mutt.org, so I just checked it with the signature pointed to there. It's fine. Sure portage would not accept otherwise, but I double and triple check things often.
I will use it without the gentoo patches, however. I really don't need any GUI to type in my passwords in Mutt and other such desktop poetteringware-like stuff.
So:
Code: Select all
# cd /usr/src
# tar xzvf /usr/portage/distfiles/mutt-1.5.23.tar.gz
# cd mutt-1.5.23/
# view INSTALL
Code: Select all
# umount /<whatever-was-mounted> #proof-reading-note: '-xdev' option to find, and not needed
# find / -name '*' > /root/FIND_mutt-1.5.23_`date +%s`_BEFORE-PRECAUTION.txt
# ./configure --prefix=/usr 2>&1 | tee /root/mutt-1.5.23_`date +%s`_configure
Code: Select all
# find / -name '*' > /root/FIND_mutt-1.5.23_`date +%s`_BEFORE.txt
# make install 2>&1 | tee /root/mutt-1.5.23_`date +%s`_make_install
# find / -name '*' > /root/FIND_mutt-1.5.23_`date +%s`_AFTER.txt
Code: Select all
# diff /root/FIND_mutt-1.5.23_1413405
FIND_mutt-1.5.23_1413405491_BEFORE.txt FIND_mutt-1.5.23_1413405618_AFTER.txt
# diff /root/FIND_mutt-1.5.23_1413405*
installed mutt more is needed.
This is how I got the list:
EDIT: 2014-10-29 I added this substring:
Code: Select all
|\/usr\/src\/
Code: Select all
diff /root/FIND_mutt-1.5.23_1413405* | grep '> ' | sed 's/> \//\//' | egrep -v '\/proc\/|\/root\/|\/usr\/src\/'
/usr/share/man/man1/smime_keys.1
/usr/share/man/man1/pgpring.1
/usr/share/man/man1/flea.1
/usr/share/man/man1/pgpewrap.1
/usr/share/man/man1/muttbug.1
/usr/share/man/man1/mutt.1
/usr/share/man/man5/muttrc.5
/usr/share/man/man5/mbox.5
/usr/share/man/man5/mmdf.5
/usr/share/doc/mutt
/usr/share/doc/mutt/applying-patches.txt
/usr/share/doc/mutt/devel-notes.txt
/usr/share/doc/mutt/security.html
/usr/share/doc/mutt/INSTALL
/usr/share/doc/mutt/README.SSL
/usr/share/doc/mutt/COPYRIGHT
/usr/share/doc/mutt/samples
/usr/share/doc/mutt/samples/Mush.rc
/usr/share/doc/mutt/samples/pgp2.rc
/usr/share/doc/mutt/samples/mutt_xtitle
/usr/share/doc/mutt/samples/sample.mailcap
/usr/share/doc/mutt/samples/smime_keys_test.pl
/usr/share/doc/mutt/samples/iconv
/usr/share/doc/mutt/samples/iconv/iconv.solaris-2.6.rc
/usr/share/doc/mutt/samples/iconv/iconv.solaris-2.6-cjk.rc
/usr/share/doc/mutt/samples/iconv/iconv.aix-4.1.5.rc
/usr/share/doc/mutt/samples/iconv/iconv.irix-6.5.rc
/usr/share/doc/mutt/samples/iconv/iconv.hpux-10.20.rc
/usr/share/doc/mutt/samples/iconv/iconv.hpux-10.01.rc
/usr/share/doc/mutt/samples/iconv/iconv.osf1-4.0d.rc
/usr/share/doc/mutt/samples/iconv/iconv.aix-3.2.5.rc
/usr/share/doc/mutt/samples/iconv/iconv.osf1-4.0a.rc
/usr/share/doc/mutt/samples/iconv/iconv.solaris-2.4.rc
/usr/share/doc/mutt/samples/iconv/iconv.solaris-2.5.1.rc
/usr/share/doc/mutt/samples/iconv/iconv.glibc-2.1.3.rc
/usr/share/doc/mutt/samples/iconv/iconv.aix-4.3.2.rc
/usr/share/doc/mutt/samples/iconv/iconv.glibc-2.1.90.rc
/usr/share/doc/mutt/samples/iconv/iconv.freebsd-3.3.rc
/usr/share/doc/mutt/samples/iconv/iconv.solaris-2.7.rc
/usr/share/doc/mutt/samples/iconv/iconv.hpux-11.00.rc
/usr/share/doc/mutt/samples/iconv/iconv.aix-4.2.0.rc
/usr/share/doc/mutt/samples/gpg.rc
/usr/share/doc/mutt/samples/colors.linux
/usr/share/doc/mutt/samples/sample.muttrc
/usr/share/doc/mutt/samples/ca-bundle.crt
/usr/share/doc/mutt/samples/pgp6.rc
/usr/share/doc/mutt/samples/smime.rc
/usr/share/doc/mutt/samples/sample.muttrc-tlr
/usr/share/doc/mutt/samples/colors.default
/usr/share/doc/mutt/samples/pgp5.rc
/usr/share/doc/mutt/samples/Tin.rc
/usr/share/doc/mutt/samples/Pine.rc
/usr/share/doc/mutt/PGP-Notes.txt
/usr/share/doc/mutt/ChangeLog
/usr/share/doc/mutt/smime-notes.txt
/usr/share/doc/mutt/tuning.html
/usr/share/doc/mutt/advancedusage.html
/usr/share/doc/mutt/reference.html
/usr/share/doc/mutt/configuration.html
/usr/share/doc/mutt/mimesupport.html
/usr/share/doc/mutt/manual.html
/usr/share/doc/mutt/miscellany.html
/usr/share/doc/mutt/README
/usr/share/doc/mutt/README.SECURITY
/usr/share/doc/mutt/GPL
/usr/share/doc/mutt/gettingstarted.html
/usr/share/doc/mutt/optionalfeatures.html
/usr/share/doc/mutt/TODO
/usr/share/doc/mutt/NEWS
/usr/share/doc/mutt/intro.html
/usr/share/doc/mutt/index.html
/usr/share/doc/mutt/patch-notes.txt
/usr/share/doc/mutt/manual.txt
/usr/share/locale/id/LC_MESSAGES/mutt.mo
/usr/share/locale/de/LC_MESSAGES/mutt.mo
/usr/share/locale/bg/LC_MESSAGES/mutt.mo
/usr/share/locale/it/LC_MESSAGES/mutt.mo
/usr/share/locale/lt/LC_MESSAGES/mutt.mo
/usr/share/locale/eu/LC_MESSAGES/mutt.mo
/usr/share/locale/cs/LC_MESSAGES/mutt.mo
/usr/share/locale/zh_TW/LC_MESSAGES/mutt.mo
/usr/share/locale/pl/LC_MESSAGES/mutt.mo
/usr/share/locale/tr/LC_MESSAGES/mutt.mo
/usr/share/locale/fr/LC_MESSAGES/mutt.mo
/usr/share/locale/nl/LC_MESSAGES/mutt.mo
/usr/share/locale/ko/LC_MESSAGES/mutt.mo
/usr/share/locale/ga/LC_MESSAGES/mutt.mo
/usr/share/locale/et/LC_MESSAGES/mutt.mo
/usr/share/locale/ca/LC_MESSAGES/mutt.mo
/usr/share/locale/zh_CN/LC_MESSAGES/mutt.mo
/usr/share/locale/gl/LC_MESSAGES/mutt.mo
/usr/share/locale/uk/LC_MESSAGES/mutt.mo
/usr/share/locale/ru/LC_MESSAGES/mutt.mo
/usr/share/locale/sv/LC_MESSAGES/mutt.mo
/usr/share/locale/hu/LC_MESSAGES/mutt.mo
/usr/share/locale/sk/LC_MESSAGES/mutt.mo
/usr/share/locale/pt_BR/LC_MESSAGES/mutt.mo
/usr/share/locale/el/LC_MESSAGES/mutt.mo
/usr/share/locale/ja/LC_MESSAGES/mutt.mo
/usr/share/locale/es/LC_MESSAGES/mutt.mo
/usr/share/locale/da/LC_MESSAGES/mutt.mo
/usr/share/locale/eo/LC_MESSAGES/mutt.mo
/usr/bin/mutt
/usr/bin/pgpring
/usr/bin/flea
/usr/bin/smime_keys
/usr/bin/muttbug
/usr/bin/pgpewrap
/usr/etc
/usr/etc/mime.types.dist
/usr/etc/mime.types
/usr/etc/Muttrc.dist
/usr/etc/Muttrc
Code: Select all
diff /root/FIND_mutt-1.5.23_1413405* | grep '> ' | sed 's/> \//\//' | egrep -v '\/proc\/|\/root\/|\/usr\/src\/' > /root/mutt-1.5.23_`date +%s`_FILES
I just stow away three files:
Code: Select all
# ls -ltr /root/mutt-1.5.23_141340*
-rw-r--r-- 1 root root 10802 2014-10-15 22:35 /root/mutt-1.5.23_1413405295_configure
-rw-r--r-- 1 root root 44661 2014-10-15 22:40 /root/mutt-1.5.23_1413405572_make_install
-rw-r--r-- 1 root root 7490 2014-10-15 22:53 /root/mutt-1.5.23_1413406411_FILES
Actually I just need it, because judging by not being advisory to give the portage's mutt the gpg flag (and get the whole GUI silly --for security aware people-- stuff for gpg), I now see that I, with the source compilation should have followed different route regarding ssl, another thing I use FOSS Linux for. I can't log into my dovecot server because no ssl support...
I know that because on trying to launch mutt I got these errors:
Code: Select all
$ mutt
Error in /home/ukrainian/.muttrc, line 8: ssl_starttls: unknown variable
Error in /home/ukrainian/.muttrc, line 9: ssl_force_tls: unknown variable
Error in /home/ukrainian/.muttrc, line 10: ssl_force_tls: unknown variable
Error in /home/ukrainian/.muttrc, line 11: ssl_usesystemcerts: unknown variable
Error in /home/ukrainian/.muttrc, line 12: imap_passive: unknown variable
source: errors in /home/ukrainian/.muttrc
$
So:
Code: Select all
for i in `cat /root/mutt-1.5.23_1413406411_FILES`; do ls -ld $i ; read FAKE ; done ;
"read FAKE" is for you to press Enter to go on, or keep pressed for it to go all the way.
Now the first run:
Code: Select all
for i in `cat /root/mutt-1.5.23_1413406411_FILES`; do if [ -f "$i" ] ; then rm -v $i ; fi ; done ;
That removed files. And the second run:
Code: Select all
for i in `cat /root/mutt-1.5.23_1413406411_FILES`; do if [ -d "$i" ] ; then rmdir -v $i ; fi ; done ;
And I can start over (I have to, unfortunately, because I need the ssl flag of the mutt configure) with system not dirtied with files not-known neither by portage nor by me which would have been the case had I not had logged what I was installing.
This must work fine:
Code: Select all
./configure --prefix=/usr --with-homespool=Maildir --enable-pop -enable-imap --with-ssl --with-gnutls --with-sasl 2>&1 | tee /root/mutt-1.5.23_`date +%s
EDIT 2014-11-01 Upon trying to correct here, I introduced inconsistencies. The method is viable, but the demonstration is not. Below is the diff inconsistent with the commands given.
Code: Select all
mybox mutt-1.5.23 # diff /root/mutt-1.5.23_*_FILES
mutt-1.5.23_1413406411_FILES mutt-1.5.23_1413408034_FILES
mybox mutt-1.5.23 # diff /root/mutt-1.5.23_*_FILES
143
> /usr/src/mutt-1.5.23/pop_auth.o
144a146
> /usr/src/mutt-1.5.23/pop.o
151a154
> /usr/src/mutt-1.5.23/mutt_ssl.o
166a170
> /usr/src/mutt-1.5.23/pop_lib.o
167a172
> /usr/src/mutt-1.5.23/account.o
191a197
> /usr/src/mutt-1.5.23/mutt_tunnel.o
192a199
> /usr/src/mutt-1.5.23/mutt_socket.o
202a210
> /usr/src/mutt-1.5.23/bcache.o
211a220,229
> /usr/src/mutt-1.5.23/imap/util.o
> /usr/src/mutt-1.5.23/imap/message.o
> /usr/src/mutt-1.5.23/imap/auth_sasl.o
> /usr/src/mutt-1.5.23/imap/imap.o
> /usr/src/mutt-1.5.23/imap/auth_login.o
> /usr/src/mutt-1.5.23/imap/libimap.a
> /usr/src/mutt-1.5.23/imap/command.o
> /usr/src/mutt-1.5.23/imap/browse.o
> /usr/src/mutt-1.5.23/imap/auth.o
> /usr/src/mutt-1.5.23/imap/utf7.o
212a231
> /usr/src/mutt-1.5.23/mutt_sasl.o
And, upon:
Code: Select all
$ mutt # That is "$", meaning as regular user, not anymore root
Code: Select all
q:Exit ?:Help
This certificate belongs to:
gitb-ukrainian
Unknown
Croatia Fidelis
Officium Centralis
Zagreb
This certificate was issued by:
gitb-ukrainian
Unknown
Croatia Fidelis
Officium Centralis
Zagreb
This certificate is valid
from Aug 29 08:52:03 2014 GMT
to Aug 29 08:52:03 2015 GMT
Fingerprint: 071A 2DC0 F91C 7E76 0020 BDEF 948B E119
...[snip]...
-- Mutt: SSL Certificate check (certificate 0 of 0 in chain)
(r)eject, accept (o)nce, (a)ccept always
Now at least two reasons why I didn't file a bug for the error in portage's
current mutt package.
I'm not yet very familiar with reporting bugs, but that's half a reason, To
make it complete first reason, I work far too slowly to find time for it.
On the other side, I do understand that this is the better way to install mutt
currently, for people who tend to like air-gapping, and there are many of such
people (amoong whom I belong), ending up on Gentoo, as the last bastion of
still some-scale free computing (potteringware is not, as M$ and apple is
not), it is simply wrong to add all those GUIs for just gnupg to have
passwords. I wrote about it:
Air-Gapped Gentoo Install, Tentative
https://forums.gentoo.org/viewtopic-t-9 ... ml#7551458
( and a little more on what I chose for my mail setup is one of the issues here:
Postfix smtp-tls-wrapper, Bkp/Cloning Mthd, A Zerk Provider
https://forums.gentoo.org/viewtopic-t-999436.html
but, to understand all more easily, the most important link, referred below by Navar as sorely missing
how to disable (sanitize) gpg2 GUI features (pinentry)?
http://forums.gentoo.org/viewtopic-t-63 ... ml#7534996
)
and since it's mainstream, it would be much more work talking maintainers to
do it than to tell people how to do it the right way (as air-gappers like me
consider it to be). That is the second reason.
I just tried and sent a note that I posted this tip on Gentoo Forums to ago (Agostino Sarubbo, in charge of mutt in Gentoo, and to grobian, Fabian Groffen). Maybe that should go some way for the devs.



