git clone gives “fatal: I don’t handle protocol ‘​https’” and “fatal: I don’t handle protocol ‘git’”

Weird … via cut & paste somehow (a “software glitch” as they say on TV).

failsgit clone --bare https://git.fedorahosted.org/git/koji koji.git
succeedsgit clone --bare https://git.fedorahosted.org/git/koji koji.git

The lines show up the same in emacs and in gnome-terminal (on the command line), just as they do here.

Specimen

At sigul: An automated gpg signing system
What you see if you cut & paste the URL off the page is:

$ git clone --bare https://git.fedorahosted.org/git/sigul.git sigul.git
Cloning into 'sigul'...
fatal: I don't handle protocol '<U+200B>https'

What your character rendering system does with <U+200B> may or may not highlight the problem to you.

Sources

(summarizing the style sheets in play)

<sheet>
@media screen {
 a.ext-link .icon {
  background: url(../extlink.gif) left center no-repeat;
  padding-left: 15px;
 }
</sheet>

Exhibiting the HTML in play

<p>
The development code for <tt>sigul</tt> is available by:
git clone <a href="https://git.fedorahosted.org/git/sigul" class="ext-link"><span class="icon"></span>https://git.fedorahosted.org/git/sigul</a>
</p>

Forensics

$ cat -ve

https://git.fedorahosted.org/git/sigul

M-bM-^@M-^Khttps://git.fedorahosted.org/git/sigul$
^C
$ od -t x1

https://git.fedorahosted.org/git/sigul

0000000 e2 80 8b 68 74 74 70 73 3a 2f 2f 67 69 74 2e 66
0000020 65 64 6f 72 61 68 6f 73 74 65 64 2e 6f 72 67 2f
^C
$ od -t c

https://git.fedorahosted.org/git/sigul

0000000 342 200 213   h   t   t   p   s   :   /   /   g   i   t   .   f
0000020   e   d   o   r   a   h   o   s   t   e   d   .   o   r   g   /
0000040   g   i   t   /   s   i   g   u   l  \n
0000052

Explanation

What? Why?


Watch … carefully …

$ ./character-fail-git-clone
$ ./character-fail-git-clone
git clone --bare https://git.fedorahosted.org/git/koji koji.git
Cloning into bare repository 'koji.git'...
fatal: I don't handle protocol 'https'

git clone --bare https://git.fedorahosted.org/git/koji koji.git
Cloning into bare repository 'koji.git'...
remote: Counting objects: 8493, done.
remote: Compressing objects: 100% (4692/4692), done.
remote: Total 8493 (delta 6113), reused 5200 (delta 3787)
Receiving objects: 100% (8493/8493), 2.10 MiB | 197.00 KiB/s, done.
Resolving deltas: 100% (6113/6113), done.
$ bash -xv ./character-fail-git-clone
git clone --bare https://git.fedorahosted.org/git/koji koji.git
+ git clone --bare '\342\200\213https://git.fedorahosted.org/git/koji' koji.git
Cloning into bare repository 'koji.git'...
fatal: I don't handle protocol 'https'

git clone --bare https://git.fedorahosted.org/git/koji koji.git
+ git clone --bare https://git.fedorahosted.org/git/koji koji.git
Cloning into bare repository 'koji.git'...
remote: Counting objects: 8493, done.        
remote: Compressing objects: 100% (4692/4692), done.        
remote: Total 8493 (delta 6113), reused 5200 (delta 3787)        
Receiving objects: 100% (8493/8493), 2.10 MiB | 197.00 KiB/s, done.
Resolving deltas: 100% (6113/6113), done.
cat -ve character-fail-git-clone
#!/bin/sh$
$
set -xv$
git clone --bare M-bM-^@M-^Khttps://git.fedorahosted.org/git/koji koji.git$
$
git clone --bare https://git.fedorahosted.org/git/koji koji.git$
$

Software Architecture Patterns | Mark Richards

Mark Richards; Software Architecture Patterns; O’Reilly; 2015-02; 55 pages; $0.
Teaser: Understanding Common Architecture Patterns and When to Use Them.

Mentions

  1. Layered
  2. Event-Driven
  3. Microkernel
    • plugins
  4. Microservices
    • RPC type systems: REST. SOAP, etc.
    • Message Busses
  5. Space-based (renamed from Cloud-based)
    • Something about virtualization
    • Something about middleware
    • Something about multi-tenancy
    • Something about “a grid”
    • Examples:
      • GemFire,
      • JavaSpaces,
      • GigaSpaces,
      • IBM Object Grid,
      • nCache,
      • Oracle Coherence

Analysis

Customizing and Operating Anaconda

Anaconda development has moved off to Github
It is substantially no longer at Fedora Project Anaconda.

Current

These seem current

Development

… at GitHub.

Deprecated

These are clearly deprecated or out of date; implicitly or explicitly

Relevant

  • system-config-kickstart
  • Anaconda using syslog (rsyslog) to forward log messages off-box.
     eval `scripts/analog -p 6080 -s -o ./someconf /home/akozumpl/remote_inst`

HOWTO Create signed RPM packages for Fedora, Fedora 19 through Fedora 21 and beyond

Problem Statement

  • Build RPM packages for Fedora, sign them.
  • Build RPM packages for Fedora, put them in a YUM repository, sign that.
  • (Re-)build all of Fedora, sign each package produced.

And of course … the anti-requirements:

  • Don’t sit around and enter a password over and over and over again at /dev/tty.
  • Don’t produce all the packages unsigned and then sign them all manually one afternoon.

Requirement: fully-unattended, fully lights-out, fully-automated workflow.

There Be Dragons

RPM signing and validation very buggy & brittle with respect to key types, key sizes, key management, signature versions & the validation of any of these. There seems to be only a single success recipe through this whole morass. Even as late as rpm-4.11.3-1 one is met with the response: you have to remember, this stuff barely works, testing for acceptance and applicability for any particular purpose is the consumer’s obligation (c.f. LICENSE).. Some of the breakage that you’ll witness herein has been broken for over a decade.

Operation

The RPM signing process does not allow for the explicit nomination of the signing key on the command line. This specification should be done through the configuration files (or the extensions to the configuration files that can be added from the command line, though that is arduous).

  • At package build time:
    rpm -ba --sign filename.spec
  • Replace a signature on an existing package:
    rpm --resign filename.rpm
  • Add a signature to an existing package:
    rpm --addsign filename,/em>.rpm

See also rpm’s --checksig feature.

  • rpm --checksig filename.rpm
  • rpm --verbose --checksig filename.rpm,/code>

Configuration

There are two areas for configuration:

  1. the package signer’s environment
  2. the package installer’s environment

Package Signer

In your ~/.rpmmacros:

%_signature gpg
%_gpg_path %{getenv:HOME}/.gnupg
%_gpg_name Name Of RPM Signer Role (Mr. & Mrs. Johnny & Jane Doe) <signatories@fedora.example.com>
%_gpgbin /usr/bin/gpg

These are mentioned in /usr/lib/rpm/macros as possibiltiies (i.e. they are commented out).
Alternatively one can mention these on the command line
rpmsign --define '%_gpg_name package-signer@fedora.example.com' --resign example-package.x86_64.rpm

Use GnuPG Agent

Stock rpm-sign always asks for a password on /dev/tty, but you can configure it to ignore that password, assert it is valid and continue. Subsequently gpg must be configured to ask the reigning gpg-agent for the key material. That recipe is elaborated separately; short: there is a unix-domain socket, there is an environment variable GPG_AGENT_INFO that contains a specification of how to contact the nearby gpg-agent.
For rpm-sign to avail itself of the gpg-agent two macros must be modified from the standard ones in /usr/lib/rpm/macros, as follows:

%__gpg_check_password_cmd	/bin/true
%__gpg_sign_cmd			%{__gpg} \
	gpg --use-agent --batch --no-verbose --no-armor \
	%{?_gpg_digest_algo:--digest-algo %{_gpg_digest_algo}} \
	--no-secmem-warning \
	-u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename}

Package Installation Site

The (public) key of the package signer must be installed in the RPM database at the installation site.

rpm --import ./RPM-GPG-KEY-signer-role

One can exhibit all the keys in the rpm keyring.

A Large Key Database

On an example Fedora 19 system used as a daily-driver:

$ rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release} --> %{summary}\n'
gpg-pubkey-fb4b18e6-50b96bfd --> gpg(Fedora (19) )
gpg-pubkey-172ff33d-503292b0 --> gpg(RPM Fusion free repository for Fedora (19) )
gpg-pubkey-cd30c86b-503293b9 --> gpg(RPM Fusion nonfree repository for Fedora (19) )
gpg-pubkey-f6777c67-45e5b1b9 --> gpg(Adobe Systems Incorporated (Linux RPM Signing Key) )
gpg-pubkey-7fac5991-4615767f --> gpg(Google, Inc. Linux Package Signing Key )
A Small Key Database

On a freshly-installed Fedora 21 system:

$ rpm -q gpg-pubkey --qf '%{name}-%{version}-%{release} --> %{summary}\n'
gpg-pubkey-95a43f54-5284415a --> gpg(Fedora (21) )

Prerequisites

Signing RPMs requires a separate non-standard package: rpm-sign. Generally, you need:

  • rpm
  • rpm-build
  • rpm-sign

Likely, if you are building (rebuilding) RPMs you need

  • rpmrebuild
  • mock

Absent the rpm-sign package, you will see:

$ rpm --addsign example-package-1.0-4.fc21.noarch.rpm
rpm: /usr/bin/rpmsign: No such file or directory

Signing & Validation

You must ensure that you have the correct sort of key as only one configuration of key will function. Option 1

Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)

Option 4 is known not to work in rpm-sign-4.11.3-1.fc19.x86_64 of Fedora 19.
Also, apparently, only 2048 bits is supported (see the experiments performed by a Jacob Helwig and documented Pitfalls with RPM and GPG over one half of a decade ago.
When signing on/for Fedora (any?) or RHEL 5, RHEL 6, CentOS 5, CentOS 6 … [who else uses signed RPMs? who isn't affected?] one must configure to use special signature versions and special key types. This is because RPM doesn’t check the signature version or validate the signed package after signing it, and these distros contain GPG versions that default to v4 signatures. <wow … unfathomably, inexplicably sloppy at this late date in The Empire> The requirement for V3 GPG Signatures only seems to have been relaxed (fixed). The V4 GPG Signature type seems to be accepted now.
GnuPG must be forced to use v3 signatures in the %__gpg_sign_cmd.

Override

USE THIS

%__gpg_sign_cmd %{__gpg} \
    gpg --force-v3-sigs --digest-algo=sha1 --batch --no-verbose --no-armor \
    --passphrase-fd 3 --no-secmem-warning -u "%{_gpg_name}" \
    -sbo %{__signature_filename} %{__plaintext_filename}
Original (Fedora 19)

From rpm-4.11.3-1.fc19.x86_64 the file /usr/lib/rpm/macros contains the buggy:
DO NOT USE THIS

%__gpg_sign_cmd			%{__gpg} \
	gpg --batch --no-verbose --no-armor --passphrase-fd 3 \
	%{?_gpg_digest_algo:--digest-algo %{_gpg_digest_algo}} \
	--no-secmem-warning \
	-u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename}which is missing several options
--force-v3-sigs
this is what is at issue here
--digest-algo=sha1
remains unspecified, perhaps the correct default value is applied (who knows?)
By way of exhibiting the errors as the multiple levels of problems are peeled back here
Using
  • The remedial %__gpg_sign_cmd
  • Yet an expected-inappropriate signing key (DSA, 2048 bits, signing-only, 10 year expiry)
%__gpg_sign_cmd %{__gpg} \
    gpg --force-v3-sigs --digest-algo=sha1 --batch --no-verbose --no-armor \
    --passphrase-fd 3 --no-secmem-warning -u "%{_gpg_name}" \
    -sbo %{__signature_filename} %{__plaintext_filename}

$ rpm -v -v –addsign user-wbaker-1.0-4.fc21.*
Enter pass phrase:
Pass phrase is good.
user-wbaker-1.0-4.fc21.noarch.rpm:
D: Expected size: 9632 = lead(96)+sigs(4292)+pad(4)+data(5240)
D: Actual size: 9632
gpg: DSA key 5ADF348E requires a 256 bit or larger hash
gpg: signing failed: General error
error: gpg exec failed (2)
user-wbaker-1.0-4.fc21.src.rpm:
D: Expected size: 7729 = lead(96)+sigs(4292)+pad(4)+data(3337)
D: Actual size: 7729
gpg: DSA key 5ADF348E requires a 256 bit or larger hash
gpg: signing failed: General error

References

t

Actualities

$ sudo yum install -y rpm-sign
Loaded plugins: auto-update-debuginfo, langpacks, refresh-packagekit
Resolving Dependencies
--> Running transaction check
---> Package rpm-sign.x86_64 0:4.11.3-1.fc19 will be installed
--> Processing Dependency: rpm-build-libs(x86-64) = 4.11.3-1.fc19 for package: rpm-sign-4.11.3-1.fc19.x86_64
--> Running transaction check
---> Package rpm-build-libs.x86_64 0:4.11.2-2.fc19 will be updated
---> Package rpm-build-libs.x86_64 0:4.11.3-1.fc19 will be an update
--> Processing Dependency: rpm-libs(x86-64) = 4.11.3-1.fc19 for package: rpm-build-libs-4.11.3-1.fc19.x86_64
--> Running transaction check
---> Package rpm-libs.x86_64 0:4.11.2-2.fc19 will be updated
---> Package rpm-libs.x86_64 0:4.11.3-1.fc19 will be an update
--> Processing Dependency: rpm = 4.11.3-1.fc19 for package: rpm-libs-4.11.3-1.fc19.x86_64
--> Running transaction check
---> Package rpm.x86_64 0:4.11.2-2.fc19 will be updated
--> Processing Dependency: rpm = 4.11.2-2.fc19 for package: rpm-python-4.11.2-2.fc19.x86_64
--> Processing Dependency: rpm = 4.11.2-2.fc19 for package: rpm-build-4.11.2-2.fc19.x86_64
---> Package rpm.x86_64 0:4.11.3-1.fc19 will be an update
--> Running transaction check
---> Package rpm-build.x86_64 0:4.11.2-2.fc19 will be updated
---> Package rpm-build.x86_64 0:4.11.3-1.fc19 will be an update
---> Package rpm-python.x86_64 0:4.11.2-2.fc19 will be updated
---> Package rpm-python.x86_64 0:4.11.3-1.fc19 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package         Arch    Version         Repository                        Size
================================================================================
Installing:
 rpm-sign        x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19   40 k
Updating for dependencies:
 rpm             x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19  1.2 M
 rpm-build       x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19  139 k
 rpm-build-libs  x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19   98 k
 rpm-libs        x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19  261 k
 rpm-python      x86_64  4.11.3-1.fc19   areas-fedora-repos-collected-19   74 k

Transaction Summary
================================================================================
Install  1 Package
Upgrade             ( 5 Dependent packages)

Total download size: 1.8 M
Downloading packages:
--------------------------------------------------------------------------------
Total                                               30 MB/s | 1.8 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : rpm-libs-4.11.3-1.fc19.x86_64                               1/11 
  Updating   : rpm-4.11.3-1.fc19.x86_64                                    2/11 
  Updating   : rpm-build-libs-4.11.3-1.fc19.x86_64                         3/11 
  Updating   : rpm-python-4.11.3-1.fc19.x86_64                             4/11 
  Updating   : rpm-build-4.11.3-1.fc19.x86_64                              5/11 
  Installing : rpm-sign-4.11.3-1.fc19.x86_64                               6/11 
  Cleanup    : rpm-python-4.11.2-2.fc19.x86_64                             7/11 
  Cleanup    : rpm-build-4.11.2-2.fc19.x86_64                              8/11 
  Cleanup    : rpm-build-libs-4.11.2-2.fc19.x86_64                         9/11 
  Cleanup    : rpm-libs-4.11.2-2.fc19.x86_64                              10/11 
  Cleanup    : rpm-4.11.2-2.fc19.x86_64                                   11/11 
  Verifying  : rpm-4.11.3-1.fc19.x86_64                                    1/11 
  Verifying  : rpm-build-libs-4.11.3-1.fc19.x86_64                         2/11 
  Verifying  : rpm-python-4.11.3-1.fc19.x86_64                             3/11 
  Verifying  : rpm-build-4.11.3-1.fc19.x86_64                              4/11 
  Verifying  : rpm-libs-4.11.3-1.fc19.x86_64                               5/11 
  Verifying  : rpm-sign-4.11.3-1.fc19.x86_64                               6/11 
  Verifying  : rpm-libs-4.11.2-2.fc19.x86_64                               7/11 
  Verifying  : rpm-build-libs-4.11.2-2.fc19.x86_64                         8/11 
  Verifying  : rpm-python-4.11.2-2.fc19.x86_64                             9/11 
  Verifying  : rpm-build-4.11.2-2.fc19.x86_64                             10/11 
  Verifying  : rpm-4.11.2-2.fc19.x86_64                                   11/11 

Installed:
  rpm-sign.x86_64 0:4.11.3-1.fc19                                               

Dependency Updated:
  rpm.x86_64 0:4.11.3-1.fc19                rpm-build.x86_64 0:4.11.3-1.fc19    
  rpm-build-libs.x86_64 0:4.11.3-1.fc19     rpm-libs.x86_64 0:4.11.3-1.fc19     
  rpm-python.x86_64 0:4.11.3-1.fc19        

Complete!
$ rpm -q -a | grep ^rpm | sort
rpm-4.11.3-1.fc19.x86_64
rpm-build-4.11.3-1.fc19.x86_64
rpm-build-libs-4.11.3-1.fc19.x86_64
rpmdevtools-8.3-3.fc19.noarch
rpmfusion-free-release-19-1.noarch
rpmfusion-nonfree-release-19-1.noarch
rpm-libs-4.11.3-1.fc19.x86_64
rpmlint-1.5-9.fc19.noarch
rpm-python-4.11.3-1.fc19.x86_64
rpmrebuild-2.9-1.fc19.noarch
rpm-sign-4.11.3-1.fc19.x86_64

On the generation of your own local signing key.

$ gpg --gen-key
gpg (GnuPG) 1.4.16; Copyright (C) 2013 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Please select what kind of key you want:
   (1) RSA and RSA (default)
   (2) DSA and Elgamal
   (3) DSA (sign only)
   (4) RSA (sign only)
Your selection? 1
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 2048
Requested keysize is 2048 bits
Please specify how long the key should be valid.
         0 = key does not expire
      <n>  = key expires in n days
      <n>w = key expires in n weeks
      <n>m = key expires in n months
      <n>y = key expires in n years
Key is valid for? (0) 10y
Key expires at Tue 17 Jun 2025 01:37:43 PM PDT
Is this correct? (y/N) y

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
    "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

Real name: Emerson Street Packaging of Fedora
Email address: fedora-package-signer@emerson.baker.org
Comment: signing only
You selected this USER-ID:
    "Emerson Street Packaging of Fedora (signing only) <fedora-package-signer@emerson.baker.org>"

Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
You need a Passphrase to protect your secret key.

We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
..+++++
.....+++++
We need to generate a lot of random bytes. It is a good idea to perform
some other action (type on the keyboard, move the mouse, utilize the
disks) during the prime generation; this gives the random number
generator a better chance to gain enough entropy.
...+++++
..+++++
gpg: key E89B9726 marked as ultimately trusted
public and secret key created and signed.

gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0  valid:   4  signed:   2  trust: 0-, 0q, 0n, 0m, 0f, 4u
gpg: depth: 1  valid:   2  signed:   0  trust: 1-, 0q, 0n, 0m, 1f, 0u
gpg: next trustdb check due at 2025-06-17
pub   2048R/E89B9726 2015-06-20 [expires: 2025-06-17]
      Key fingerprint = 4C21 FB71 E97E 13D0 FD71  4702 FB10 616D E89B 9726
uid                  Emerson Street Packaging of Fedora (signing only) <fedora-package-signer@emerson.baker.org>
sub   2048R/78257230 2015-06-20 [expires: 2025-06-17]

$ gpg –output RPM-GPG-KEY-Emerson_Fedora_Package_Signer.asc –armor –export E89B9726
wbaker:wbaker@vast [wbaker wheel users mock bakers source yahoo bakerfamily cameras android] [l2 u0002 ssh] [F19 Schrödingers_Cat]
~
$ gpg –armor –export E89B9726
—–BEGIN PGP PUBLIC KEY BLOCK—–
Version: GnuPG v1

mQENBFWFz34BCADOpuRgkg1AEI3kvE9McfdJu9FGx1s2wQe8E7bEREDKIC88NUtX
jCY9a/VMHXm9MNV5qylOu8TeHQQC72/Af0YNso6rFKaaMGYpNPXcT+b8APUWlxLT
FY7yzpDmu0egQD1F+IfkMAtp6X98HD+YRT+4GCmnHHkxW7rTyEt2ILf/TK5WFX66
WDPpmeZ2zES0AtDLVD2FXHSdcTlIIuzlv8trgqI8Qsh90xN7l/+exaYLkspFoOZU
iAQPvhMX9SY4fj07Qht5WFaoTo1v5Gib5O9Ncr91HSNdcAJsVaBTIMUrJrHI2jjQ
EXwRinadMwEqwYr5P8vVIpoKG8Gy3Aot1LbVABEBAAG0W0VtZXJzb24gU3RyZWV0
IFBhY2thZ2luZyBvZiBGZWRvcmEgKHNpZ25pbmcgb25seSkgPGZlZG9yYS1wYWNr
YWdlLXNpZ25lckBlbWVyc29uLmJha2VyLm9yZz6JAT4EEwECACgFAlWFz34CGwMF
CRLMAwAGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEPsQYW3om5cmfE0H/1+i
oa/QLEDlikaovEo+ucwEJZudS59vDRomrFnn3bNe7HxQrl28bZiDBRAe5RlBsh+m
QOR2K6UHYSUyZ5B3dBQAlZN23/O/6xmFcxnn8qPiin4iKDUIrx8JBYi8zLQcWjsK
EJqh7or2vZSXOl+DYNcbUkUv3SuA9do1yvDqAVijEoUTuX7y28nGdKPbqvJihlQb
z0bZQRMk8tFE+YsNjztPlwP0qcTKEyrvNH/B6DC1FbZvOCtupCXCk+6sDLMUbtO0
HXN1hW/y7kA0FEU+wY51KlNc2raEiguTu315Vd6Nxx7oyRV7o/lu4Tujx8S9ZYWR
pG62apc9uUG0mgch4pC5AQ0EVYXPfgEIAMdsV/LC4U6KWTrBTxdIT3UWfKiRPOsJ
plL+wksyTZ3UEOxo4lI6xT3ICT5TSAOnmuJSdNi7FZe4R49bBwYWTTGp/a7Gtqba
/mp/f/k4ieCFY0aK7eEpjX9p4Vhnq+5M/TAJKzfx7UddJxefEJQOaCfs90J0/JxK
FxpIcXAHjjap6Wfsc2UVfBdmvHwD0oOBMLis60xfWHjiHEqjC6J5hcM+AmK4IXES
APl4ekmQrw+ykNxsEBUOROy6oEVpyUtJgm5OIb6qUZGv5sZZ9DY9KNPObrWaltG0
SQQbeT3D8ehqP3ORVhZW/JQQhr/Q7WCOq63wdWXbKlKOj+aNp4MPoIEAEQEAAYkB
JQQYAQIADwUCVYXPfgIbDAUJEswDAAAKCRD7EGFt6JuXJrx8CADKtS4rb86xAqXL
XUMSg421h6q+KnyydpZ2W+rrV8GrRGnZp+hW7HqhGmuJbTgo5ArBAkKMsQG/QlL7
B6C5ckSpXBeOmfM2xV6m9hTpght9Gcorxxf8c7JYakK/eA8MuJDfE+2V1i+TncJZ
ke5DVrb/8ytwYrQ4IFazxceOja5oMJy3JskdL4UaIX5cpwPyCY/KBBle+vpfZCX5
cu27wsAyJtSM6GvHF+yd/PsxWDA9v0FztViQJaieLiirdAMfMY06sD7N/5OXT8/5
c6PTPwtBSyJA6w7u0GRxElE6DQWlO1PBFDRrpBZ5143/QpbwMO8M3O8KcEtTqulH
9LD6spRv
=KKSl
—–END PGP PUBLIC KEY BLOCK—–

$ rpm -q gpg-pubkey –qf ‘%{name}-%{version}-%{release} –> %{summary}\n’
gpg-pubkey-fb4b18e6-50b96bfd –> gpg(Fedora (19) )
gpg-pubkey-172ff33d-503292b0 –> gpg(RPM Fusion free repository for Fedora (19) )
gpg-pubkey-cd30c86b-503293b9 –> gpg(RPM Fusion nonfree repository for Fedora (19) )
gpg-pubkey-f6777c67-45e5b1b9 –> gpg(Adobe Systems Incorporated (Linux RPM Signing Key) )
gpg-pubkey-7fac5991-4615767f –> gpg(Google, Inc. Linux Package Signing Key)

$ sudo rpm –import ./RPM-GPG-KEY-Emerson_Fedora_Package_Signer.asc
<nothing/>

$ rpm -q gpg-pubkey –qf ‘%{name}-%{version}-%{release} –> %{summary}\n’
gpg-pubkey-fb4b18e6-50b96bfd –> gpg(Fedora (19) )
gpg-pubkey-172ff33d-503292b0 –> gpg(RPM Fusion free repository for Fedora (19) )
gpg-pubkey-cd30c86b-503293b9 –> gpg(RPM Fusion nonfree repository for Fedora (19) )
gpg-pubkey-f6777c67-45e5b1b9 –> gpg(Adobe Systems Incorporated (Linux RPM Signing Key) )
gpg-pubkey-7fac5991-4615767f –> gpg(Google, Inc. Linux Package Signing Key )
gpg-pubkey-e89b9726-5585cf7e –> gpg(Emerson Street Packaging of Fedora (signing only))

And finally, signing with (DSA+ElGamal, 2048 bit, 10 year expiry, GPG Signature, any version)

$ rpm --addsign user-wbaker-1.0-4.fc21.*
Enter pass phrase: 
Pass phrase is good.
user-wbaker-1.0-4.fc21.noarch.rpm:
error: Unsupported PGP signature
user-wbaker-1.0-4.fc21.src.rpm:
error: Unsupported PGP signature

$ rpm -v -K user-wbaker-1.0-4.fc21.*.rpm
user-wbaker-1.0-4.fc21.noarch.rpm:
    Header SHA1 digest: OK (5d097afd5e647704ca37b8d80f653ba8d3542945)
    MD5 digest: OK (041a18bcb730f83770b6d96904d3ba2b)
user-wbaker-1.0-4.fc21.src.rpm:
    Header SHA1 digest: OK (61fd52b0a0b3cf505c4c529dda44ca9ada75953a)
    MD5 digest: OK (c2e5a732fcf454a94aaa15b0833a4cba)
Specification

From ~/.rpmmacros:

%_signature gpg
%_gpg_path %{getenv:HOME}/.gnupg
# Emerson Street Packaging of Fedora (signing only) 
# DSA+ElGamal, 2048 bit, no subkey
%_gpg_name E89B9726
# NOT NEEDED, actually, it seems...
%xxx__gpg_sign_cmd %{__gpg} \
    gpg --force-v3-sigs --digest-algo=sha1 --batch --no-verbose --no-armor \
    --passphrase-fd 3 --no-secmem-warning -u "%{_gpg_name}" \
    -sbo %{__signature_filename} %{__plaintext_filename}

$ rpm -v -v --addsign user-wbaker-1.0-4.fc21.*
Enter pass phrase:
Pass phrase is good.
user-wbaker-1.0-4.fc21.noarch.rpm:
D: Expected size: 9632 = lead(96)+sigs(4292)+pad(4)+data(5240)
D: Actual size: 9632
D: GPG sig size: 287
D: Got 287 bytes of GPG sig
D: GPG sig size: 287
D: Got 287 bytes of GPG sig
D: Signature: size(4896)+pad(0)
user-wbaker-1.0-4.fc21.src.rpm:
D: Expected size: 7729 = lead(96)+sigs(4292)+pad(4)+data(3337)
D: Actual size: 7729
D: GPG sig size: 287
D: Got 287 bytes of GPG sig
D: GPG sig size: 287
D: Got 287 bytes of GPG sig
D: Signature: size(4896)+pad(0)

$ rpm --checksig user-wbaker-1.0-4.fc21.*
user-wbaker-1.0-4.fc21.noarch.rpm: rsa sha1 (md5) pgp md5 OK
user-wbaker-1.0-4.fc21.src.rpm: rsa sha1 (md5) pgp md5 OK

$ rpm --verbose --checksig user-wbaker-1.0-4.fc21.*
user-wbaker-1.0-4.fc21.noarch.rpm:
Header V4 RSA/SHA1 Signature, key ID e89b9726: OK
Header SHA1 digest: OK (5d097afd5e647704ca37b8d80f653ba8d3542945)
V4 RSA/SHA1 Signature, key ID e89b9726: OK
MD5 digest: OK (041a18bcb730f83770b6d96904d3ba2b)
user-wbaker-1.0-4.fc21.src.rpm:
Header V4 RSA/SHA1 Signature, key ID e89b9726: OK
Header SHA1 digest: OK (61fd52b0a0b3cf505c4c529dda44ca9ada75953a)
V4 RSA/SHA1 Signature, key ID e89b9726: OK
MD5 digest: OK (c2e5a732fcf454a94aaa15b0833a4cba)

Do Not Track (Documentary), Episodes 1-7

Do Not Track

Episodes contains links to the episodes & popularization pieces on other venues

  • S01E01 : Morning rituals, 2015-04-14.
  • S01E02 : Breaking Ad, 2015-04-14.
  • S01E03 : Like Mining (in German, with English subtitles), 2015-04-26.
  • S01E04 : The spy in my pocket, 2015-05-12.
  • S01E05 : Big Data Inside the Algorithm, 2015-05-26.
  • S01E06 : The Daily Me, 2015-06-09.
  • S01E07 : To change the future, click here, 2015-06-15.

tl;dr → facile, shrill, handwringy.  Very media-arts-y. Ominous music to set the mood. No new information. Very, very slow-paced.

Mentions

  • disconnect.me
  • Depicts that Yahoo only has two trackers on it
    • Yahoo
    • comScore
  • DoubleClick
    Something about a legal precedent in the early oughties that established that tracking was not wiretapping; it was (something about) being with your friends.  No citation.  Julia Angwin voices the statement.
  • Illuminatus
    Something about eCommerce preferences via your social media account (your Facebook account).
  • UDID
    Still spoken of in Episode 4 as if it were current & available.
  • Big Data
    • is very big.
    • is very bad.
  • There be dragons.
  • Collaborative Filtering
    • is bad
    • causes polarlization (polarization is bad)
    • Facebook uses Collaborative Filtering
      ∴ Facebook is bad
    • Twitter uses Collaborative Filtering
      ∴Twitter is bad
  • Depicted, but not discussed.
    • Content farms in general
    • Demand Media
    • Associated Content (Yahoo)
    • Buzzfeed

Claims

  • … that if consumers all, each, paid some … it would all be wonderful & ad-free.
  • ARPU
    • Facebook → $9/year
    • Google →$55/year
  • Ethan Zuckerman, MIT Media Lab
    Claims he invented the popup ad to ensure Ford Motor Company did not get car ads on anal sex sites (or a story substantially similar to this line of causality).  He claims he invented the popup ad. And: Ethan Zuckerman, Who Invented Pop-Up Ads Says ‘I’m Sorry’; In Forbes; 2014-08-15.

Referenced

Appearing

the activists…

  • Danah Boyd, Data & Society Institute.
  • Nathan Frietas, The Guardian Project.
  • Harlo Holmes, The Guardian Project
  • Ethan Zuckerman, MIT Media Lab
  • Julia Angwin, self; ex-Wall Street Journal (WSJ)
  • Michal Kosinski, Stanford University
  • Jeffrey Stewart, CEO, Leddo
  • Natalie Blanchard, IBM, exemplar of a depressant
  • Marcus Behdahl?  Some news organism, in EU.
  • Mathieu Desjardins, WHERE?
  • Cory Doctorow, self.
  • Kate Crawford, Microsoft.
  • Tyler Virgen, Spurrious Correlations
  • Alicia Garza, #BlackLivesMatter.
  • Emily Bell, Tow Center, School of Journalism, Columbia University; ex-Guardian
  • Gilad Lotan, Chief Data Scientist, Betaworks.
  • Someone, Episode 7.

Google Chrome (Chromium) becomes spyware, listening for “Ok Google Now”

But you can disable it, they say.

Factoids

Storyline

In archaeological order, derivative works on top, original causality chain goes down.

  • 500922#c22 (mgiuca@chromium.org) – continued response
  • 500922#c6 (mgiuca@chromium.org) – Hotword behaviour in chromium v43 (binary blob download; Chromium; 2015-06-16.
  • mgiuca – <quote>Hi, I’m an engineer from Google responsible for the hotword module<snip/></quote> 2015-06-17
  • 786909chromium: unconditionally downloads binary blob; Debian; 2015-05-26.
  • 491435Opt-out Chrome Hotword Shared Module; Chromium; 2015-05-22.
  • 9724409Chromium unconditionally downloads binary blob (debian.org); on Hacker News; 2015-06-16.

Promotions

Actualities

$ sudo find /home -xdev -name 'hotword*'
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_de.nmf
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_en-gb.nmf
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_ru.nmf
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_.nmf
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/hotword.png
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_fr.nmf
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific/x86-64_/hotword.data
/home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific/x86-64_/hotword-x86-64.nexe
$ sudo find /home/raymond/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn | sort | sudo xargs ls -ld | sed -e 's/raymond/USER/g'
drwx------. 3 USER USER   4096 Aug 23  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn
drwx------. 6 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0
drwx------. 2 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/audio
-rw-rw-r--. 1 USER USER   8918 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/audio/1_short_Open_16_16.wav
-rw-rw-r--. 1 USER USER  30773 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/audio-input-compiled.js
-rw-rw-r--. 1 USER USER    175 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/audio_input.html
-rw-rw-r--. 1 USER USER  55089 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/audio-manager-compiled.js
-rw-rw-r--. 1 USER USER    276 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/background.html
-rw-rw-r--. 1 USER USER  30427 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/content-bundle-compiled.js
-rw-rw-r--. 1 USER USER    243 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_de.nmf
-rw-rw-r--. 1 USER USER    252 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_en-gb.nmf
-rw-rw-r--. 1 USER USER    243 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_fr.nmf
-rw-rw-r--. 1 USER USER    237 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_.nmf
-rw-rw-r--. 1 USER USER    243 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/hotword_ru.nmf
drwx------. 2 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images
-rw-rw-r--. 1 USER USER   1067 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/error.png
-rw-rw-r--. 1 USER USER   1909 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/hotword.png
-rw-rw-r--. 1 USER USER   3932 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/icon-128.png
-rw-rw-r--. 1 USER USER    547 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/icon-16.png
-rw-rw-r--. 1 USER USER   1493 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/icon-48.png
-rw-rw-r--. 1 USER USER    482 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/mic-hotword.gif
-rw-rw-r--. 1 USER USER    524 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/mic-normal.gif
-rw-rw-r--. 1 USER USER   1809 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/off.png
-rw-rw-r--. 1 USER USER   1873 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/images/speech.png
-rw-rw-r--. 1 USER USER   2925 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/manifest.json
drwx------. 2 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_metadata
-rw-rw-r--. 1 USER USER   4134 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_metadata/verified_contents.json
-rw-rw-r--. 1 USER USER  10942 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/options-compiled.js
-rw-rw-r--. 1 USER USER  19510 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/options.css
-rw-rw-r--. 1 USER USER   2691 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/options.html
drwx------. 3 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific
drwx------. 2 USER USER   4096 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific/x86-64_
-rw-rw-r--. 1 USER USER 273631 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific/x86-64_/hotword.data
-rw-rw-r--. 1 USER USER 394688 Aug  8  2014 /home/USER/.config/google-chrome/Default/Extensions/bepbmhgboaologfdajaanbcjmnhjmhfn/0.1.1.5023_0/_platform_specific/x86-64_/hotword-x86-64.nexe

Content Blocking Feature of Safari iOS9

Content Blocking Feature; What’s New in Safari; Developer Documentation; Apple

Capabilities

block …

  • cookies (HTML4 only?)
  • images
  • resources (what?)
  • pop-ups
  • “and other content.”

Mentions

  • Safari Extensions Builder
  • The setContentBlocker API.
  • NSExtensionRequestHandling
  • Specification in JSON
  • Compiled to “byte code”

Sufficiency

  • Does it work system-wide?
    Answer: unknown
  • Does it work only in Safari, not in Adware (advertising via an SDK in an app)
    Answer: probably
  • Does it work in embedded WebView?
    Answer: unknown
  • Can one build Ad Block Plus on top of this API?
    Answer: no, one cannot, according to ABP.
  • Can one build Disconnect, on top of this API?
    Answer: Unknown, though a reporter claims sufficient similarity.

Referenced

Actualities

[
    {
        "action": {
            "type": "block"
        },
        "trigger": {
            "url-filter": "webkit.org/images/icon-gold.png"
        }
    },
    {
        "action": {
            "selector": "a[href^=\"http://nightly.webkit.org/\"]",
            "type": "css-display-none"
        },
        "trigger": {
            "url-filter": ".*"
        }
    }
]

SOLVED: httpd gives [error] (EAI 2)Name or service not known: Could not resolve host name *s — ignoring!

Indications

$ httpd -t -d `: need a full path ; cd ./opened/httpd; pwd` -f conf/httpd.conf
[thu Jan 01 01:01:01 2015] [error] (EAI 2)Name or service not known: Could not resolve host name *s -- ignoring

Diagnosis

One of the VirtualHost stanzas mentions the hostname *s

Remediation

Fix that. What was intended was * (star)

Actualities

<VirtualHost *s:9999>
SSLEngine On
ServerName www.example.com
DocumentRoot /var/www/html
...etc...
</VirtualHost>

and, as-repaired

Index: com.example.conf
===================================================================
--- com.example.conf    (revision 1234)
+++ com.example.conf    (working copy)
@@ -53,7 +53,7 @@
...etc...
-<VirtualHost *s:9999>
+<VirtualHost *:9999>
SSLEngine Off
ServerName www.example.com
DocumentRoot /var/www/html
...etc...

SOLVED autofs fails to mount NFS v3 on Fedora 21 with ‘Failed to start NFS status monitor for NFSv2/3 locking..’

Indications

  • autofs partially works
  • mounts NFSv4 volumes
  • fails to mount NFSv3 volumes

Remediation

systemctl enable rpcbind.service
systemctl start rpcbind.service

Configuration

  • Fedora 21
  • autofs
  • NFS client only (no NFS serving is to be provided)
  • A mixture of NFS servers
    • NFS v4 served from Fedora 18
    • NFS v3 served from ReadyNAS, where NFS v4 is not possible.
# rpm -q nfs-utils autofs
nfs-utils-1.3.1-6.3.fc21.i686
autofs-5.1.0-10.fc21.i686

Diagnostics

Jun 20 08:05:49 pert rpc.statd[471]: Version 1.3.1 starting
Jun 20 08:05:49 pert rpc.statd[471]: Flags: TI-RPC
Jun 20 08:05:49 pert rpc.statd[471]: Opening /var/run/rpc.statd.pid failed: Permission denied
Jun 20 08:05:49 pert systemd: rpc-statd.service: control process exited, code=exited status=1
Jun 20 08:05:49 pert systemd: Failed to start NFS status monitor for NFSv2/3 locking..
Jun 20 08:05:49 pert systemd: Unit rpc-statd.service entered failed state.
Jun 20 08:05:49 pert systemd: rpc-statd.service failed.
Jun 20 08:05:49 pert rpc.statd[473]: Version 1.3.1 starting
Jun 20 08:05:49 pert rpc.statd[473]: Flags: TI-RPC
Jun 20 08:05:49 pert kernel: [42669.994356] svc: failed to register lockdv1 RPC service (errno 97).
Jun 20 08:05:49 pert kernel: svc: failed to register lockdv1 RPC service (errno 97).

Followup

# ls -ld /var/run
lrwxrwxrwx. 1 root root 6 Jun 9 04:48 /var/run -> ../run
# ls -lad /run/rpc*
-r--r--r--. 1 root root 0 Jun 20 08:04 /run/rpcbind.lock
srw-rw-rw-. 1 root root 0 Jun 20 08:04 /run/rpcbind.sock
-rw-r--r--. 1 rpcuser rpcuser 4 Jun 20 08:05 /run/rpc.statd.pid
# ls -ladZ /run/rpc*
-r--r--r--. root root system_u:object_r:rpcbind_var_run_t:s0 /run/rpcbind.lock
srw-rw-rw-. root root system_u:object_r:rpcbind_var_run_t:s0 /run/rpcbind.sock
-rw-r--r--. rpcuser rpcuser unconfined_u:object_r:var_run_t:s0 /run/rpc.statd.pid

References

  • [SOLVED] AutoFS NFS doesn’t mount on startup, failed to create rpc, 2015-02-15
    tl;dr → Not really a solution so much as a reminder that rpcbind.service needs to be started to run an NFS client in NFS v2 & NFS v3; does not explain the failure of rpc-statd.
  • NFS no longer mounts: rpc-statd fails to start; Some dude using the self-asserted identity token Carpetsmoker; In Unix & Linux Stack Exchange; 2015-02-11.
    tl;dr → mentions rpcbind, rpc-statd and exhibits the messages from /var/log/messages
  • 1175005Cannot mount NFS v3 partition until after reboot; In Red Hat Bugzilla; 2014-12-16 → 2015-05-15.
    tl;dr → mentions rpcbind, rpc-statd, against nfs-utils-1.3.0 (here nfs-utils-1.3.1); provides remediation but no solution.

Actualities

# mkdir /tmp/tt
# mount -v -o vers=3 server.example.com:/vol/fedora /tmp/tt
mount.nfs: timeout set for Sat Jun 20 08:03:13 2015
Job for rpc-statd.service failed. See "systemctl status rpc-statd.service" and "journalctl -xe" for details.
^C
# systemctl status rpc-statd.service
● rpc-statd.service - NFS status monitor for NFSv2/3 locking.
   Loaded: loaded (/usr/lib/systemd/system/rpc-statd.service; static)
   Active: failed (Result: exit-code) since Sat 2015-06-20 08:01:13 PDT; 20s ago
  Process: 378 ExecStart=/usr/sbin/rpc.statd --no-notify $STATDARGS (code=exited, status=1/FAILURE)

Jun 20 08:01:13 server.example.com rpc.statd[379]: Version 1.3.1 starting
Jun 20 08:01:13 server.example.com rpc.statd[379]: Flags: TI-RPC
Jun 20 08:01:13 server.example.com systemd[1]: rpc-statd.service: control process exited, code=exited status=1
Jun 20 08:01:13 server.example.com systemd[1]: Failed to start NFS status monitor for NFSv2/3 locking..
Jun 20 08:01:13 server.example.com systemd[1]: Unit rpc-statd.service entered failed state.
Jun 20 08:01:13 server.example.com systemd[1]: rpc-statd.service failed.
# systemctl status rpcbind.service
● rpcbind.service - RPC bind service
   Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; static)
   Active: inactive (dead)
# systemctl enable rpcbind.service
Created symlink from /etc/systemd/system/sockets.target.wants/rpcbind.socket to /usr/lib/systemd/system/rpcbind.socket.
# systemctl start rpcbind.service
# mount -o vers=3 -v server.example.com:/vol/fedora /tmp/tt
mount.nfs: timeout set for Sat Jun 20 08:07:49 2015
Job for rpc-statd.service failed. See "systemctl status rpc-statd.service" and "journalctl -xe" for details.
mount.nfs: trying text-based options 'vers=3,addr=192.168.131.99'
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying 192.168.131.99 prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=17
mount.nfs: trying 192.168.131.99 prog 100005 vers 3 prot UDP port 44102
# ls /tmp/tt
...output...
# systemctl status rpc-statd.service
● rpc-statd.service - NFS status monitor for NFSv2/3 locking.
   Loaded: loaded (/usr/lib/systemd/system/rpc-statd.service; static)
   Active: failed (Result: exit-code) since Sat 2015-06-20 08:05:49 PDT; 19min ago
  Process: 470 ExecStart=/usr/sbin/rpc.statd --no-notify $STATDARGS (code=exited, status=1/FAILURE)

Jun 20 08:05:49 server.example.com rpc.statd[471]: Version 1.3.1 starting
Jun 20 08:05:49 server.example.com systemd[1]: rpc-statd.service: control process exited, code=exited status=1
Jun 20 08:05:49 server.example.com systemd[1]: Failed to start NFS status monitor for NFSv2/3 locking..
Jun 20 08:05:49 server.example.com systemd[1]: Unit rpc-statd.service entered failed state.
Jun 20 08:05:49 server.example.com systemd[1]: rpc-statd.service failed.
# systemctl enable rpc-statd.service
The unit files have no [Install] section. They are not meant to be enabled
using systemctl.
Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another unit's
   .wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which has
   a requirement dependency on it.
3) A unit may be started when needed via activation (socket, path, timer,
   D-Bus, udev, scripted systemctl call, ...).
# systemctl is-enabled rpcbind.service
static
# systemctl is-active rpcbind.service
active
# systemctl status rpcbind.service
● rpcbind.service - RPC bind service
   Loaded: loaded (/usr/lib/systemd/system/rpcbind.service; static)
   Active: active (running) since Sat 2015-06-20 08:04:47 PDT; 30min ago
 Main PID: 454 (rpcbind)
   CGroup: /system.slice/rpcbind.service
           └─454 /sbin/rpcbind -w
#

NFS no longer mounts: rpc-statd fails to start

 

 

SOLVED: What constitutes a valid Fedora installation repository (for Anaconda)?

Question: What constitutes a valid installation repository?

tl;dr

  • images
  • LiveOS
  • the repo
    • constructed with createrepo
    • the yum groups defined in comps.xml

To Wit

  1. mkdir example-repo
  2. cp -rp Fedora21/images/product.img example-repo/images/.
  3. cp -rp Fedora21/LiveOS/squashfs.img example-repo/LiveOS/.
  4. cp -rp Fedora21/repodata/*Fedora-21-comps.xml example-repo/comps.xml
  5. bring in the packages, suggested to be in example-repo/Packages
  6. createrepo -g example-repo/comps.xml example-repo

Scheme

images/product.img
LiveOS/squashfs.img
repodata
...packagess arranged per repodata...

References

Folklore


 

Distinction

  • You need LiveOS
  • You need a repo with a comps.xml baked into it, with @core and more
  • The internal structure of Packages is not relevant

Evidence

  • good → Fedora-Server-DVD-i386-21
  • ungood → collected packages + images + isolinux + LiveOS

good → Fedora-Server-DVD-i386-21

 

$ find Fedora-Server-DVD-i386-21/. -maxdepth 3 -type d | sort
Fedora-Server-DVD-i386-21/.
Fedora-Server-DVD-i386-21/images
Fedora-Server-DVD-i386-21/images/pxeboot
Fedora-Server-DVD-i386-21/isolinux
Fedora-Server-DVD-i386-21/LiveOS
Fedora-Server-DVD-i386-21/Packages
Fedora-Server-DVD-i386-21/Packages/3
Fedora-Server-DVD-i386-21/Packages/a
Fedora-Server-DVD-i386-21/Packages/b
Fedora-Server-DVD-i386-21/Packages/c
Fedora-Server-DVD-i386-21/Packages/d
Fedora-Server-DVD-i386-21/Packages/e
Fedora-Server-DVD-i386-21/Packages/f
Fedora-Server-DVD-i386-21/Packages/g
Fedora-Server-DVD-i386-21/Packages/h
Fedora-Server-DVD-i386-21/Packages/i
Fedora-Server-DVD-i386-21/Packages/j
Fedora-Server-DVD-i386-21/Packages/k
Fedora-Server-DVD-i386-21/Packages/l
Fedora-Server-DVD-i386-21/Packages/m
Fedora-Server-DVD-i386-21/Packages/n
Fedora-Server-DVD-i386-21/Packages/o
Fedora-Server-DVD-i386-21/Packages/p
Fedora-Server-DVD-i386-21/Packages/q
Fedora-Server-DVD-i386-21/Packages/r
Fedora-Server-DVD-i386-21/Packages/s
Fedora-Server-DVD-i386-21/Packages/t
Fedora-Server-DVD-i386-21/Packages/u
Fedora-Server-DVD-i386-21/Packages/v
Fedora-Server-DVD-i386-21/Packages/w
Fedora-Server-DVD-i386-21/Packages/x
Fedora-Server-DVD-i386-21/Packages/y
Fedora-Server-DVD-i386-21/Packages/z
Fedora-Server-DVD-i386-21/repodata

ungood → bringup/i386

$ find bringup/i386 -maxdepth 3 -type d | sort | sed -e 's,\./,,'
bringup/i386
bringup/i386/images
bringup/i386/isolinux
bringup/i386/LiveOS
bringup/i386/Packages
bringup/i386/Packages/i386
bringup/i386/Packages/i686
bringup/i386/Packages/noarch
bringup/i386/repodata

Behind the Buzz: People-Based Marketing Defined | Atlas by Facebook

Behind the Buzz: People-Based Marketing Defined; Atlas by Facebook; a whitepaper; 2015; 7 pages; regwall (pay with PII), final.

tl;dr → Cookies R Bad m’kay? Reg-login is good.

Who

  • Jennifer Kattula, Head of Marketing, Atlas by Facebook
  • Jonathan Lewis, Product Marketing Manager, Ads Ecosystem, Facebook
  • James Dailey, Head of Marketing Science, Atlas by Facebook

Abstract

“People-based marketing” has become an industry catchphrase since we introduced it nearly a year ago, and it’s easy to see why. The measurement technologies digital marketers have relied on for years — like cookies — have not evolved fast enough to match consumer mobile habits. Advertisers need a better solution. This paper describes the philosophy behind “people-based marketing” and outlines practical steps marketers can take to make it a reality in 2015 and beyond.

Mentions

  • A proprietary neologism brand of Facebook, introduced 2014-09.
    • “people-based” means “cross-device”
    • Social proof towards validity & importance
      • Eastwick was commissioned to validate mentions in trade media (the trade talking to itself)
      • Since 2014-09.
      • Mentions have occurred.
      • QED
  • Philosophy
  • Practice
    • Accuracy
    • Privacy
    • Persistence
    • Scale
Old New
Product Choice
Price Convenience
Place Cross-device
Promotion Creative Sequencing

Counterpoint

Different than other “4Cs”

  •  4Cs of Koichi Shimizu (1973)
  • 7Cs of the Compass Model (1981)

Via Jimi Wales’ Wiki

  1. McLean, R. (October 19, 2002). The 4 C’s versus the 4 P’s of marketing. Custom Fit Online.
  2. Schultz, Don E; Tannenbaum, Stanley I; Lauterborn, Robert F (1993), Integrated marketing communications, NTC Business Books, ISBN 978-0-8442-3363-5
  3. Koichi Shimizu (2014) “Advertising Theory and Strategies,”18th edition, Souseisha Book Company. (Japanese)

Actualities

Via: backfill.

Using syslog (rsyslog) to capture Anaconda installation messaging

The stock /etc/rsyslog.conf inside Anaconda says…

#### MODULES ####
$ModLoad imuxsock.so          # provides support for local system logging
$SystemLogRateLimitInterval 0 # disables message dropping, we need all of them
$ModLoad imklog.so            # provides kernel logging support

$ModLoad imfile
$InputFileName /tmp/X.log
$InputFileTag xserver:
$InputFileStateFile xserver-statefile
$InputFileFacility local1
$InputRunFileMonitor
$InputFileName /tmp/anaconda-tb-all.log
$InputFileTag anaconda-tb:
$InputFileStateFile anaconda-tb-statefile
$InputFileFacility local1
$InputRunFileMonitor

#### GLOBAL DIRECTIVES ####
# Use default timestamp format
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat

#### TEMPLATES ####

$template anaconda_tty4, "%syslogseverity-text:::uppercase% %programname%:%msg%\n"
$template anaconda_syslog, "%timestamp:8:$:date-rfc3164%,%timestamp:1:3:date-subseconds% %syslogseverity-text:::uppercase% %programname%:%msg%\n"
$template virtio_ForwardFormat, "%TIMESTAMP:::date-rfc3339% localhost %syslogtag:1:32%%msg:::sp-if-no-1st-sp%%msg%\n"

#### RULES ####
# log everything except anaconda-specific records from local1 (those are stored
# directly into files via python logging)
*.*;\
authpriv.none;\
local1.none             /tmp/syslog;anaconda_syslog
                        & /dev/tty4;anaconda_tty4

# ### begin forwarding rule ###
# The statement between the begin ... end define a SINGLE forwarding
# rule. They belong together, do NOT split them. If you create multiple
# forwarding rules, duplicate the whole block!
#
# An on-disk queue is created for this action. If the remote host is
# down, messages are spooled to disk and sent when it is up again.
$ActionQueueMaxDiskSpace 1m     # space limit (use as much as possible)
$ActionQueueSaveOnShutdown off  # do not save messages to disk on shutdown
$ActionQueueType LinkedList     # run asynchronously
$ActionResumeRetryCount -1      # infinite retries if host is down
# remote host is: name/ip:port, e.g. 192.168.0.1:514, port optional
# ### end of the forwarding rule ###

*.* @@syslog

Therefore, by default, Anaconda messages will be sent to the network-local syslog via TCP.

SOLVED (mostly): HOWTO get Anaconda of Fedora 21 to install custom packages during a Server or Workstation install

Question

How does one get Anaconda of Fedora 21 to install custom packages during a Server or Workstation install

Answer

  1. Impossible → can’t be done from the GUI menus.
    (can no longer be done as of Fedora 21)
  2. Feasible → but only be done with yak-shaving-type custom work; this may be headless operable and automatable, but is high risk/high skill.
    Use a custom-built kickstart specification; hand coded or via system-config-kickstart
  3. Possible → can be done if you’re willing to login (as root) to your box after the initial anaconda install has completed, but prior to the reboot.

Recipe

Best known recipe to date

  1. Anaconda install via VNC (as per usual)
    • Answer all screens
    • Commence the install
    • DO NOT reboot at the end, leave the preinstall idling there.
  2. ssh root@newhost.example.com
  3. chroot /mnt/sysimage
  4. Perform yum (dnf) installing or any other maintenance activities as you see fit.
  5. reboot

Boot Configuration

Shown here is the pxelinux.cfg configuration for a tftp netboot configuration for ‘newhost’ following the recipe at pxeboot. Complete recipe for tftp netboot & install is not shown. The important part is the sshd declaration.

prompt 1
default linux.F21
timeout 100
label linux.F21
	kernel F21/i386/isolinux/vmlinuz
	append initrd=F21/i386/isolinux/initrd.img vnc headless shell sshd ksdevice=link lang=en_US keymap=us repo=nfs:vers=3:server.example.com:/fedora/21/trees/Fedora-Server-DVD-i386-21

Referenced

Alternatively

From GNOME Shell as Kickstart or system-config-kickstart

Related

Actualities

[yourname@devbox.example.com ~]$ ssh root@newhost.example.com
[anaconda root@newhost /]# yum install mock
Loaded plugins: langpacks
areas-fedora-repos-collected-21                                                                  | 3.0 kB  00:00:00     
fedora/21/i386/metalink                                                                          |  15 kB  00:00:00     
fedora                                                                                           | 3.8 kB  00:00:00     
updates/21/i386/metalink                                                                         |  13 kB  00:00:00     
updates                                                                                          | 4.9 kB  00:00:00     
(1/5): fedora/21/i386/group_gz                                                                   | 232 kB  00:00:06     
(2/5): updates/21/i386/group_gz                                                                  | 230 kB  00:00:06     
(3/5): areas-fedora-repos-collected-21/primary_db                                                |  44 MB  00:00:21     
(4/5): updates/21/i386/primary_db                                                                | 6.9 MB  00:03:17     
(5/5): fedora/21/i386/primary_db                                                                 |  15 MB  00:06:10     
(1/2): updates/21/i386/updateinfo                                                                | 1.2 MB  00:00:08     
(2/2): updates/21/i386/pkgtags                                                                   | 1.5 MB  00:00:19     
Resolving Dependencies
--&gt Running transaction check
---&gt Package mock.noarch 0:1.2.9-1.fc21 will be installed
--&gt Processing Dependency: python-requests for package: mock-1.2.9-1.fc21.noarch
--&gt Processing Dependency: pigz for package: mock-1.2.9-1.fc21.noarch
--&gt Processing Dependency: dnf-plugins-core for package: mock-1.2.9-1.fc21.noarch
--&gt Processing Dependency: dnf for package: mock-1.2.9-1.fc21.noarch
--&gt Processing Dependency: createrepo_c for package: mock-1.2.9-1.fc21.noarch
--&gt Running transaction check
---&gt Package createrepo_c.i686 0:0.7.4-1.fc21 will be installed
--&gt Processing Dependency: createrepo_c-libs = 0.7.4-1.fc21 for package: createrepo_c-0.7.4-1.fc21.i686
--&gt Processing Dependency: libcreaterepo_c.so.0 for package: createrepo_c-0.7.4-1.fc21.i686
---&gt Package dnf.noarch 0:0.6.4-5.fc21 will be installed
--&gt Processing Dependency: python-librepo &gt= 1.7.5 for package: dnf-0.6.4-5.fc21.noarch
--&gt Processing Dependency: python-libcomps &gt= 0.1.6 for package: dnf-0.6.4-5.fc21.noarch
--&gt Processing Dependency: python-hawkey &gt= 0.5.3 for package: dnf-0.6.4-5.fc21.noarch
--&gt Processing Dependency: rpm-plugin-systemd-inhibit for package: dnf-0.6.4-5.fc21.noarch
---&gt Package dnf-plugins-core.noarch 0:0.1.5-2.fc21 will be installed
---&gt Package pigz.i686 0:2.3.3-1.fc21 will be installed
---&gt Package python-requests.noarch 0:2.5.3-2.fc21 will be installed
--&gt Processing Dependency: python-urllib3 &gt= 1.10 for package: python-requests-2.5.3-2.fc21.noarch
--&gt Running transaction check
---&gt Package createrepo_c-libs.i686 0:0.7.4-1.fc21 will be installed
---&gt Package python-hawkey.i686 0:0.5.3-2.fc21 will be installed
--&gt Processing Dependency: hawkey(x86-32) = 0.5.3-2.fc21 for package: python-hawkey-0.5.3-2.fc21.i686
---&gt Package python-libcomps.i686 0:0.1.6-14.fc21 will be installed
--&gt Processing Dependency: libcomps(x86-32) = 0.1.6-14.fc21 for package: python-libcomps-0.1.6-14.fc21.i686
--&gt Processing Dependency: libcomps.so.0.1.6 for package: python-libcomps-0.1.6-14.fc21.i686
---&gt Package python-librepo.i686 0:1.7.13-1.fc21 will be installed
--&gt Processing Dependency: librepo(x86-32) = 1.7.13-1.fc21 for package: python-librepo-1.7.13-1.fc21.i686
---&gt Package python-urllib3.noarch 0:1.10.2-1.fc21 will be installed
---&gt Package rpm-plugin-systemd-inhibit.i686 0:4.12.0.1-6.fc21 will be installed
--&gt Processing Dependency: rpm-libs(x86-32) = 4.12.0.1-6.fc21 for package: rpm-plugin-systemd-inhibit-4.12.0.1-6.fc21.i686
--&gt Running transaction check
---&gt Package hawkey.i686 0:0.5.1-1.fc21 will be updated
---&gt Package hawkey.i686 0:0.5.3-2.fc21 will be an update
---&gt Package libcomps.i686 0:0.1.6-14.fc21 will be installed
---&gt Package librepo.i686 0:1.7.5-2.fc21 will be updated
---&gt Package librepo.i686 0:1.7.13-1.fc21 will be an update
---&gt Package rpm-libs.i686 0:4.12.0.1-3.fc21 will be updated
--&gt Processing Dependency: rpm-libs(x86-32) = 4.12.0.1-3.fc21 for package: rpm-plugin-selinux-4.12.0.1-3.fc21.i686
--&gt Processing Dependency: rpm-libs(x86-32) = 4.12.0.1-3.fc21 for package: rpm-build-libs-4.12.0.1-3.fc21.i686
---&gt Package rpm-libs.i686 0:4.12.0.1-6.fc21 will be an update
--&gt Processing Dependency: rpm = 4.12.0.1-6.fc21 for package: rpm-libs-4.12.0.1-6.fc21.i686
--&gt Running transaction check
---&gt Package rpm.i686 0:4.12.0.1-3.fc21 will be updated
--&gt Processing Dependency: rpm = 4.12.0.1-3.fc21 for package: rpm-python-4.12.0.1-3.fc21.i686
---&gt Package rpm.i686 0:4.12.0.1-6.fc21 will be an update
---&gt Package rpm-build-libs.i686 0:4.12.0.1-3.fc21 will be updated
---&gt Package rpm-build-libs.i686 0:4.12.0.1-6.fc21 will be an update
---&gt Package rpm-plugin-selinux.i686 0:4.12.0.1-3.fc21 will be updated
---&gt Package rpm-plugin-selinux.i686 0:4.12.0.1-6.fc21 will be an update
--&gt Running transaction check
---&gt Package rpm-python.i686 0:4.12.0.1-3.fc21 will be updated
---&gt Package rpm-python.i686 0:4.12.0.1-6.fc21 will be an update
--&gt Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================
 Package                           Arch          Version                   Repository                              Size
========================================================================================================================
Installing:
 mock                              noarch        1.2.9-1.fc21              updates                                299 k
Installing for dependencies:
 createrepo_c                      i686          0.7.4-1.fc21              areas-fedora-repos-collected-21         61 k
 createrepo_c-libs                 i686          0.7.4-1.fc21              areas-fedora-repos-collected-21         86 k
 dnf                               noarch        0.6.4-5.fc21              updates                                582 k
 dnf-plugins-core                  noarch        0.1.5-2.fc21              updates                                 82 k
 libcomps                          i686          0.1.6-14.fc21             areas-fedora-repos-collected-21         76 k
 pigz                              i686          2.3.3-1.fc21              areas-fedora-repos-collected-21         69 k
 python-hawkey                     i686          0.5.3-2.fc21              areas-fedora-repos-collected-21         71 k
 python-libcomps                   i686          0.1.6-14.fc21             areas-fedora-repos-collected-21         47 k
 python-librepo                    i686          1.7.13-1.fc21             areas-fedora-repos-collected-21         50 k
 python-requests                   noarch        2.5.3-2.fc21              areas-fedora-repos-collected-21         98 k
 python-urllib3                    noarch        1.10.2-1.fc21             areas-fedora-repos-collected-21        113 k
 rpm-plugin-systemd-inhibit        i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21         48 k
Updating for dependencies:
 hawkey                            i686          0.5.3-2.fc21              areas-fedora-repos-collected-21         88 k
 librepo                           i686          1.7.13-1.fc21             areas-fedora-repos-collected-21         77 k
 rpm                               i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21        500 k
 rpm-build-libs                    i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21        111 k
 rpm-libs                          i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21        283 k
 rpm-plugin-selinux                i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21         48 k
 rpm-python                        i686          4.12.0.1-6.fc21           areas-fedora-repos-collected-21         89 k

Transaction Summary
========================================================================================================================
Install  1 Package  (+12 Dependent packages)
Upgrade             (  7 Dependent packages)

Total download size: 2.8 M
Is this ok [y/d/N]: y
Downloading packages:
No Presto metadata available for areas-fedora-repos-collected-21
warning: /var/cache/yum/i386/21/areas-fedora-repos-collected-21/packages/createrepo_c-0.7.4-1.fc21.i686.rpm: Header V3 RSA/SHA256 Signature, key ID 95a43f54: NOKEY
Public key for createrepo_c-0.7.4-1.fc21.i686.rpm is not installed
(1/20): createrepo_c-0.7.4-1.fc21.i686.rpm                                                       |  61 kB  00:00:06     
(2/20): createrepo_c-libs-0.7.4-1.fc21.i686.rpm                                                  |  86 kB  00:00:05     
Public key for dnf-plugins-core-0.1.5-2.fc21.noarch.rpm is not installed
(3/20): dnf-plugins-core-0.1.5-2.fc21.noarch.rpm                                                 |  82 kB  00:00:05     
(4/20): hawkey-0.5.3-2.fc21.i686.rpm                                                             |  88 kB  00:00:00     
(5/20): libcomps-0.1.6-14.fc21.i686.rpm                                                          |  76 kB  00:00:00     
(6/20): librepo-1.7.13-1.fc21.i686.rpm                                                           |  77 kB  00:00:00     
(7/20): pigz-2.3.3-1.fc21.i686.rpm                                                               |  69 kB  00:00:00     
(8/20): python-hawkey-0.5.3-2.fc21.i686.rpm                                                      |  71 kB  00:00:00     
(9/20): python-libcomps-0.1.6-14.fc21.i686.rpm                                                   |  47 kB  00:00:00     
(10/20): python-librepo-1.7.13-1.fc21.i686.rpm                                                   |  50 kB  00:00:00     
(11/20): mock-1.2.9-1.fc21.noarch.rpm                                                            | 299 kB  00:00:00     
(12/20): python-requests-2.5.3-2.fc21.noarch.rpm                                                 |  98 kB  00:00:00     
(13/20): python-urllib3-1.10.2-1.fc21.noarch.rpm                                                 | 113 kB  00:00:00     
(14/20): rpm-4.12.0.1-6.fc21.i686.rpm                                                            | 500 kB  00:00:00     
(15/20): rpm-build-libs-4.12.0.1-6.fc21.i686.rpm                                                 | 111 kB  00:00:00     
(16/20): rpm-libs-4.12.0.1-6.fc21.i686.rpm                                                       | 283 kB  00:00:00     
(17/20): rpm-plugin-selinux-4.12.0.1-6.fc21.i686.rpm                                             |  48 kB  00:00:00     
(18/20): rpm-plugin-systemd-inhibit-4.12.0.1-6.fc21.i686.rpm                                     |  48 kB  00:00:00     
(19/20): dnf-0.6.4-5.fc21.noarch.rpm                                                             | 582 kB  00:00:08     
(20/20): rpm-python-4.12.0.1-6.fc21.i686.rpm                                                     |  89 kB  00:00:00     
------------------------------------------------------------------------------------------------------------------------
Total                                                                                   297 kB/s | 2.8 MB  00:00:09     
Retrieving key from http://fedora.example.com/21/pki/RPM-GPG-KEY-fedora-21-i386
Importing GPG key 0x95A43F54:
 Userid     : "Fedora (21) <fedora@fedoraproject.org&gt"
 Fingerprint: 6596 b8fb abda 5227 a9c5 b59e 89ad 4e87 95a4 3f54
 From       : http://fedora.example.com/21/pki/RPM-GPG-KEY-fedora-21-i386
Is this ok [y/N]: y
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction (shutdown inhibited)
  Updating   : hawkey-0.5.3-2.fc21.i686                                                                            1/27 
  Installing : python-hawkey-0.5.3-2.fc21.i686                                                                     2/27 
  Installing : python-urllib3-1.10.2-1.fc21.noarch                                                                 3/27 
  Installing : python-requests-2.5.3-2.fc21.noarch                                                                 4/27 
  Updating   : librepo-1.7.13-1.fc21.i686                                                                          5/27 
  Installing : python-librepo-1.7.13-1.fc21.i686                                                                   6/27 
  Updating   : rpm-4.12.0.1-6.fc21.i686                                                                            7/27 
  Updating   : rpm-libs-4.12.0.1-6.fc21.i686                                                                       8/27 
  Updating   : rpm-plugin-selinux-4.12.0.1-6.fc21.i686                                                             9/27 
  Updating   : rpm-build-libs-4.12.0.1-6.fc21.i686                                                                10/27 
  Updating   : rpm-python-4.12.0.1-6.fc21.i686                                                                    11/27 
  Installing : rpm-plugin-systemd-inhibit-4.12.0.1-6.fc21.i686                                                    12/27 
  Installing : createrepo_c-libs-0.7.4-1.fc21.i686                                                                13/27 
  Installing : createrepo_c-0.7.4-1.fc21.i686                                                                     14/27 
  Installing : pigz-2.3.3-1.fc21.i686                                                                             15/27 
  Installing : libcomps-0.1.6-14.fc21.i686                                                                        16/27 
  Installing : python-libcomps-0.1.6-14.fc21.i686                                                                 17/27 
  Installing : dnf-0.6.4-5.fc21.noarch                                                                            18/27 
  Installing : dnf-plugins-core-0.1.5-2.fc21.noarch                                                               19/27 
  Installing : mock-1.2.9-1.fc21.noarch                                                                           20/27 
  Cleanup    : rpm-python-4.12.0.1-3.fc21.i686                                                                    21/27 
  Cleanup    : rpm-build-libs-4.12.0.1-3.fc21.i686                                                                22/27 
  Cleanup    : rpm-4.12.0.1-3.fc21.i686                                                                           23/27 
  Cleanup    : rpm-plugin-selinux-4.12.0.1-3.fc21.i686                                                            24/27 
  Cleanup    : rpm-libs-4.12.0.1-3.fc21.i686                                                                      25/27 
  Cleanup    : hawkey-0.5.1-1.fc21.i686                                                                           26/27 
  Cleanup    : librepo-1.7.5-2.fc21.i686                                                                          27/27 
  Verifying  : rpm-build-libs-4.12.0.1-6.fc21.i686                                                                 1/27 
  Verifying  : dnf-plugins-core-0.1.5-2.fc21.noarch                                                                2/27 
  Verifying  : mock-1.2.9-1.fc21.noarch                                                                            3/27 
  Verifying  : python-hawkey-0.5.3-2.fc21.i686                                                                     4/27 
  Verifying  : librepo-1.7.13-1.fc21.i686                                                                          5/27 
  Verifying  : rpm-plugin-selinux-4.12.0.1-6.fc21.i686                                                             6/27 
  Verifying  : libcomps-0.1.6-14.fc21.i686                                                                         7/27 
  Verifying  : python-librepo-1.7.13-1.fc21.i686                                                                   8/27 
  Verifying  : rpm-plugin-systemd-inhibit-4.12.0.1-6.fc21.i686                                                     9/27 
  Verifying  : dnf-0.6.4-5.fc21.noarch                                                                            10/27 
  Verifying  : rpm-libs-4.12.0.1-6.fc21.i686                                                                      11/27 
  Verifying  : createrepo_c-libs-0.7.4-1.fc21.i686                                                                12/27 
  Verifying  : python-urllib3-1.10.2-1.fc21.noarch                                                                13/27 
  Verifying  : hawkey-0.5.3-2.fc21.i686                                                                           14/27 
  Verifying  : rpm-4.12.0.1-6.fc21.i686                                                                           15/27 
  Verifying  : python-libcomps-0.1.6-14.fc21.i686                                                                 16/27 
  Verifying  : pigz-2.3.3-1.fc21.i686                                                                             17/27 
  Verifying  : python-requests-2.5.3-2.fc21.noarch                                                                18/27 
  Verifying  : rpm-python-4.12.0.1-6.fc21.i686                                                                    19/27 
  Verifying  : createrepo_c-0.7.4-1.fc21.i686                                                                     20/27 
  Verifying  : hawkey-0.5.1-1.fc21.i686                                                                           21/27 
  Verifying  : rpm-python-4.12.0.1-3.fc21.i686                                                                    22/27 
  Verifying  : rpm-4.12.0.1-3.fc21.i686                                                                           23/27 
  Verifying  : librepo-1.7.5-2.fc21.i686                                                                          24/27 
  Verifying  : rpm-libs-4.12.0.1-3.fc21.i686                                                                      25/27 
  Verifying  : rpm-build-libs-4.12.0.1-3.fc21.i686                                                                26/27 
  Verifying  : rpm-plugin-selinux-4.12.0.1-3.fc21.i686                                                            27/27 

Installed:
  mock.noarch 0:1.2.9-1.fc21                                                                                            

Dependency Installed:
  createrepo_c.i686 0:0.7.4-1.fc21                     createrepo_c-libs.i686 0:0.7.4-1.fc21                           
  dnf.noarch 0:0.6.4-5.fc21                            dnf-plugins-core.noarch 0:0.1.5-2.fc21                          
  libcomps.i686 0:0.1.6-14.fc21                        pigz.i686 0:2.3.3-1.fc21                                        
  python-hawkey.i686 0:0.5.3-2.fc21                    python-libcomps.i686 0:0.1.6-14.fc21                            
  python-librepo.i686 0:1.7.13-1.fc21                  python-requests.noarch 0:2.5.3-2.fc21                           
  python-urllib3.noarch 0:1.10.2-1.fc21                rpm-plugin-systemd-inhibit.i686 0:4.12.0.1-6.fc21               

Dependency Updated:
  hawkey.i686 0:0.5.3-2.fc21              librepo.i686 0:1.7.13-1.fc21      rpm.i686 0:4.12.0.1-6.fc21                 
  rpm-build-libs.i686 0:4.12.0.1-6.fc21   rpm-libs.i686 0:4.12.0.1-6.fc21   rpm-plugin-selinux.i686 0:4.12.0.1-6.fc21  
  rpm-python.i686 0:4.12.0.1-6.fc21      

Complete!

Against Generations | Aeon

Against Generations; Rebecca Onion; In Aeon; 2015-05-20.
Teaser: Generational thinking is seductive and confirms preconceived prejudices, but it’s a bogus way to understand the world

tl;dr => Stereotypes are bad, m’Kay?  Look! a single exemplar, the myth is exploded!

Mentions

  • Neil Howe
  • William Strauss
  • LifeCourse Associates
  • It’s all about selective interviewing c.f. The Millennial Muddle
    Cited

    • Palmer H Muntz, (then-) director of admissions of Lincoln Christian University in Illinois,
    • Fred A Bonner II, now at Prairie View A & M University in Texas,
    • Siva Vaidhyanathan, postdoc? University of Virginia.
  • This is not new
  • Meme: Old Economy Steve
    Old Economy Steven
    via Know Your Meme

Nearby

Aeon helpfully provides links to their thoughts on demographics & life stage psychology via their tag cloud:

Reviewed

  • Karl Mannheim; The Problem of Generations; In Paul Kekskemeti (editor); Karl Mannheim Essays; routledge; 1052, 1972; pages 276-322.
    Surveys generational theories

    • Positivist => uninlinear development, per Auguste Compte
    • Romantic => qualitative & mystical, generational bonding exists
      Wilhelm Pinder defines entelechy of Aristotle & Gottfried Leibnitz.
    • His own => is
  • Norman Ryder, The Cohort as a Concept in the Study of Social Change; In American Sociological Review, Volume 30, 1965; pages 843–861; book version; Bobbs-Merrill; 1967; 19 pages; revised version; In Cohort Analysis in Social Research; 1985; pages 9-44; paywall.
    tl;dr => control for other factors: social position: geographical location, gender, race, education, occupation; controlling for birthdate is a fallacy, is ‘arithmetical mysticism’
  • Robert Wohl; Generation of 1914; Harvard University Press; 1979-01; promotion, Amazon.
    Concept: the older cohort behaved differently (had different outcomes) than the younger cohort.
  • Joyce Appleby; Inheriting the Revolution: The First Generation of Americans; Harvard University Press; 2000; promotion, Amazon.
  • Ira Berlin; Generations of Captivity: A History of African-American Slaves; Harvard University Press; 2003; promotion, Amazon.
    tl;dr => Generational Theory doesn’t work for slaves.
  • Malcolm Harris; an unspecified essay; The New Inquiry, ‘Youth’; 2012.
    tl;dr => Malcolm Harris is editor at The New Enquirer, a contributor at Aeon; a book is promised 2015; previous books on sharing & crowdfunding.

Named but not reviewed

  • François Mentré
  • Henri Peyre
  • Julián Marías,
  • José Ortega y Gasset
  • Pierre Nora, 1996; an uncited essay.
    Generational Theory suffers from unclassifiability.

Referenced

Via: backfill.

UNSOLVED: Xorg gives EE backtrace with [mi] EQ overflowing.

The sluggishness in emacs seemed to start after around 19 days, 4 hours (timestamp circa 1658381).
The system is still useable, and is within (poor) performance limits for other applications. However emacs is particularly stressed, as separately characterized.

Context

$ uname -a
Linux devbox.example.com 3.14.4-100.fc19.x86_64 #1 SMP Tue May 13 15:00:26 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
$ rpm -q -a | grep -Ee '(Xorg|catalyst|wacom|gnome-shell-[0-9]|^kernel.*3.14)'  | sort
akmod-catalyst-14.4-1.fc19.x86_64
gnome-shell-3.8.4-3.fc19.x86_64
kernel-3.14.4-100.fc19.x86_64
kernel-devel-3.14.4-100.fc19.x86_64
kernel-headers-3.14.4-100.fc19.x86_64
kernel-modules-extra-3.14.4-100.fc19.x86_64
kmod-catalyst-14.4-1.fc19.1.x86_64
kmod-catalyst-3.14.4-100.fc19.x86_64-14.4-1.fc19.1.x86_64
libwacom-0.8-1.fc19.x86_64
libwacom-data-0.8-1.fc19.noarch
xorg-x11-drv-catalyst-14.4-1.fc19.x86_64
xorg-x11-drv-catalyst-libs-14.4-1.fc19.x86_64
xorg-x11-drv-wacom-0.23.0-5.fc19.x86_64
xorg-x11-server-Xorg-1.14.4-3.fc19.x86_64

Interesting

/var/log/Xorg.0.log

Complete: /var/log/Xorg.0.log, to date.

Summarized

<snip/>
[663981.776] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.1/2-1.1.3/2-1.1.3:1.0/0003:0E8F:0041.000F/input/input47/event6"
[663981.776] (II) XINPUT: Adding extended input device "GASIA USB Keyboard" (type: KEYBOARD, id 16)
[663981.777] (**) Option "xkb_rules" "evdev"
[663981.777] (**) Option "xkb_model" "pc104"
[663981.777] (**) Option "xkb_layout" "us"
(EE) [mi] EQ overflowing.  Additional events will be discarded until existing events are processed.
(EE) 
(EE) Backtrace:
(EE) 0: /usr/bin/Xorg (mieqEnqueue+0x22b) [0x57728b]
(EE) 1: /usr/bin/Xorg (QueuePointerEvents+0x52) [0x44db12]
(EE) 2: /usr/lib64/xorg/modules/input/evdev_drv.so (_init+0x2c4d) [0x7fe18c882b1d]
(EE) 3: /usr/bin/Xorg (DPMSSupported+0xe8) [0x486498]
(EE) 4: /usr/bin/Xorg (xf86SerialModemClearBits+0x230) [0x4aea80]
(EE) 5: /lib64/libpthread.so.0 (__restore_rt+0x0) [0x3fd500ef9f]
(EE) 6: /lib64/libc.so.6 (__libc_fork+0xaa) [0x3fd48bd20a]
(EE) 7: /usr/bin/Xorg (Popen+0x82) [0x471772]
(EE) 8: /usr/bin/Xorg (XkbDDXLoadKeymapByNames+0x1fe) [0x537b2e]
(EE) 9: /usr/bin/Xorg (XkbCompileKeymap+0x97bc) [0x54ac9c]
(EE) 10: /usr/bin/Xorg (SendErrorToClient+0x3f7) [0x437217]
(EE) 11: /usr/bin/Xorg (_init+0x3aa2) [0x429db2]
(EE) 12: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3fd4821b45]
(EE) 13: /usr/bin/Xorg (_start+0x29) [0x426a21]
(EE) 14: ? (?+0x29) [0x29]
(EE) 
(EE) [mi] These backtraces from mieqEnqueue may point to a culprit higher up the stack.
(EE) [mi] mieq is *NOT* the cause.  It is a victim.
(EE) [mi] EQ overflow continuing.  100 events have been dropped.
(EE) 
(EE) Backtrace:
(EE) 0: /usr/bin/Xorg (QueuePointerEvents+0x52) [0x44db12]
(EE) 1: /usr/lib64/xorg/modules/input/evdev_drv.so (_init+0x2c4d) [0x7fe18c882b1d]
(EE) 2: /usr/bin/Xorg (DPMSSupported+0xe8) [0x486498]
(EE) 3: /usr/bin/Xorg (xf86SerialModemClearBits+0x230) [0x4aea80]
(EE) 4: /lib64/libpthread.so.0 (__restore_rt+0x0) [0x3fd500ef9f]
(EE) 5: /lib64/libc.so.6 (__libc_fork+0xaa) [0x3fd48bd20a]
(EE) 6: /usr/bin/Xorg (Popen+0x82) [0x471772]
(EE) 7: /usr/bin/Xorg (XkbDDXLoadKeymapByNames+0x1fe) [0x537b2e]
(EE) 8: /usr/bin/Xorg (XkbCompileKeymap+0x97bc) [0x54ac9c]
(EE) 9: /usr/bin/Xorg (SendErrorToClient+0x3f7) [0x437217]
(EE) 10: /usr/bin/Xorg (_init+0x3aa2) [0x429db2]
(EE) 11: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3fd4821b45]
(EE) 12: /usr/bin/Xorg (_start+0x29) [0x426a21]
(EE) 13: ? (?+0x29) [0x29]
(EE) 
(EE) [mi] EQ overflow continuing.  200 events have been dropped.

<snip>many many more stanzas are omitted here</snip>
(EE) [mi] EQ overflow continuing. 1000 events have been dropped.
(EE) [mi] No further overflow reports will be reported until the clog is cleared.
(EE)
(EE) Backtrace:
(EE) 0: /usr/bin/Xorg (QueuePointerEvents+0×52) [0x44db12]
(EE) 1: /usr/bin/Xorg (xf86PostButtonEvent+0xe5) [0x496135]
(EE) 2: /usr/lib64/xorg/modules/input/evdev_drv.so (_init+0x29be) [0x7fe18c88288e]
(EE) 3: /usr/bin/Xorg (DPMSSupported+0xe8) [0x486498]
(EE) 4: /usr/bin/Xorg (xf86SerialModemClearBits+0×230) [0x4aea80]
(EE) 5: /lib64/libpthread.so.0 (__restore_rt+0×0) [0x3fd500ef9f]
(EE) 6: /lib64/libc.so.6 (__libc_fork+0xaa) [0x3fd48bd20a]
(EE) 7: /usr/bin/Xorg (Popen+0×82) [0x471772]
(EE) 8: /usr/bin/Xorg (XkbDDXLoadKeymapByNames+0x1fe) [0x537b2e]
(EE) 9: /usr/bin/Xorg (XkbCompileKeymap+0x97bc) [0x54ac9c]
(EE) 10: /usr/bin/Xorg (SendErrorToClient+0x3f7) [0x437217]
(EE) 11: /usr/bin/Xorg (_init+0x3aa2) [0x429db2]
(EE) 12: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x3fd4821b45]
(EE) 13: /usr/bin/Xorg (_start+0×29) [0x426a21]
(EE) 14: ? (?+0×29) [0x29]
(EE)
[1658381.093] [mi] Increasing EQ size to 1024 to prevent dropped events.
[1658381.094] [mi] EQ processing has resumed after 3823 dropped events.
[1658381.094] [mi] This may be caused my a misbehaving driver monopolizing the server’s resources.

UNSOLVED: emacs becomes sluggish & unusable unto hanging

Problem

Emacs becomes unuseable

  • General sluggishness.
    • Hanging permanently with probability 1 as usage time goes to several hours
    • Upon hanging “permanently”, it requires to be killed. It takes multiple SIGTERM to get it to die.
  • Hanging for seconds-to-minutes at a time when cutting, yanking.
  • Hanging for seconds-to-minutes at a time when running the keyboard macro M-x e.
  • Inserting characters out of order when typing fast.

Remediation

Just grasping at straws. No idea what’s wrong with the X clipboard manager.

(setq x-select-enable-clipboard-manager nil)
(setq interprogram-cut-function nil)

Indications

In the *Message* buffrer:

X clipboard manager error: Timed out waiting for reply from selection owner
If the problem persists, set `x-select-enable-clipboard-manager' to nil.

Context

$ rpm -q emacs gnome-shell
emacs-24.3-11.fc19.x86_64
gnome-shell-3.8.4-3.fc19.x86_64

Documentation

x-select-enable-clipboard‘s value is t(true).Documentation:
Non-nil means cutting and pasting uses the clipboard. This is in addition to, but in preference to, the primary selection.
Note that MS-Windows does not support selection types other than the clipboard. (The primary selection that is set by Emacs is not accessible to other programs on MS-Windows.)
This variable is not used by the Nextstep port.
You can customize this variable.
This variable was introduced, or its default value was changed, in version 24.1 of Emacs.
interprogram-cut-function‘s value is x-select-textThis variable may be risky if used as a file-local variable.Documentation:
Function to call to make a killed region available to other programs. Most window systems provide a facility for cutting and pasting text between different programs, such as the clipboard on X and MS-Windows, or the pasteboard on Nextstep/Mac OS.
This variable holds a function that Emacs calls whenever text is put in the kill ring, to make the new kill available to other programs. The function takes one argument, TEXT, which is a string containing the text which should be made available.

Workarounds

Via: Make emacs explicitly copy to/from the X11 selection and clipboard buffers?; Some dude using the self-asserted identity token bstpierre; In Superuser; 2012-05-02 2012-05-03

(defun my-yank (&optional arg)
  "Yank from the clipboard, not the primary selection."
  (interactive "*P")
  (let ((x-select-enable-clipboard t)
        (x-select-enable-primary nil))
    (yank arg)))

(defun my-kill-region (beg end)
  "Kill to the clipboard, not the primary selection."
  (interactive "r")
  (let ((x-select-enable-clipboard t)
        (x-select-enable-primary nil))
    (kill-region beg end)))

(defun my-kill-ring-save (beg end)
  "Save to the clipboard, not the primary selection."
  (interactive "*r")
  (let ((x-select-enable-clipboard t)
        (x-select-enable-primary nil))
    (kill-ring-save beg end)))

(define-key global-map (kbd "C-S-w") 'my-kill-region)
(define-key global-map (kbd "C-M-S-w") 'my-kill-ring-save)
(define-key global-map (kbd "C-S-y") 'my-yank)

Folklore

Based on information & belief, maybe these are relevant

Via /etc/PROBLEMS
Member “emacs-24.5/etc/PROBLEMS” (2 Apr 2015, 123908 Bytes) of archive /linux/misc/emacs-24.5.tar.gz

  920 *** Gnome: Emacs receives input directly from the keyboard, bypassing XIM.
  921 
  922 This seems to happen when gnome-settings-daemon version 2.12 or later
  923 is running.  If gnome-settings-daemon is not running, Emacs receives
  924 input through XIM without any problem.  Furthermore, this seems only
  925 to happen in *.UTF-8 locales; zh_CN.GB2312 and zh_CN.GBK locales, for
  926 example, work fine.  A bug report has been filed in the Gnome
  927 bugzilla: http://bugzilla.gnome.org/show_bug.cgi?id=357032
  928 
  929 *** Gnome: Emacs's xterm-mouse-mode doesn't work on the Gnome terminal.
  930 
  931 A symptom of this bug is that double-clicks insert a control sequence
  932 into the buffer.  The reason this happens is an apparent
  933 incompatibility of the Gnome terminal with Xterm, which also affects
  934 other programs using the Xterm mouse interface.  A problem report has
  935 been filed.
  936 
<snip/>
  966 *** KDE: Emacs hangs on KDE when a large portion of text is killed.
  967 
  968 This is caused by a bug in the KDE applet `klipper' which periodically
  969 requests the X clipboard contents from applications.  Early versions
  970 of klipper don't implement the ICCCM protocol for large selections,
  971 which leads to Emacs being flooded with selection requests.  After a
  972 while, Emacs may print a message:
  973 
  974   Timed out waiting for property-notify event
  975 
  976 A workaround is to not use `klipper'.  An upgrade to the `klipper' that
  977 comes with KDE 3.3 or later also solves the problem.

FAIL – NOT POSSIBLE: Installing Fedora via NFS & PXE

Actualities

dhcpd.conf
# PXE for UEFI; SLEX11; Dell; 2010-10-02.
#if option pxe-system-type = 00:07 {
#    # UEFI client
#    filename "uefi/bootx64.efi";
#} else {
#    # BIOS client
#    filename "bios/pxelinux.0";
#}
# Installation Guide: S1 Netboot PXE Config for EFI, Fedora 18
option space PXE;
option PXE.mtftp-ip    code 1 = ip-address;
option PXE.mtftp-cport code 2 = unsigned integer 16;
option PXE.mtftp-sport code 3 = unsigned integer 16;
option PXE.mtftp-tmout code 4 = unsigned integer 8;
option PXE.mtftp-delay code 5 = unsigned integer 8;
# RFC 4578 - Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE)
option arch code 93 = unsigned integer 16;
class "pxeclients" {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    next-server tftp.sanguine.emerson.baker.org;
    if option arch = 00:06 {
        filename "uefi/bootia32.efi"; # in the recipe, but unused
    } else if option arch = 00:07 {
        filename "uefi/BOOTX64.efi";
    } else {
        filename "bios/pxelinux.0";
    }
}

References

What If Everybody Didn’t Have to Work to Get Paid? | The Atlantic

What If Everybody Didn’t Have to Work to Get Paid?; David R. Wheeler; In The Atlantic; 2015-05-19.

tl;dr → it would look like graduate school on the occasion of the professor’s sabbatical abroad.

tl;dr → one needs
  • a patron as one is an artist
  • granted tenure at a large bureaucratic host, a university, as one is a professor
  • a trust fund as one is substantially indolent
  • charity, this is a solicitation for a charity.

Mentions

  • Guaranteed Basic Income (GBI), also Unconditional Basic Income (UBI)
  • Proponents (previous oped work in The Atlantic)
  • Patreon, a donation conduit.
  • <quote>The crowdfunding approach to basic income has shown some promise: A group of more than 19,000 basic-income advocates in Germany have funded11 people so far with living stipends of 1,000 euros per month, no strings attached. The first few winners, chosen by a lottery, started receiving their basic incomes in 2014-09. The eleventh winner was announced 2015-05-07.</quote>
    • Who?
    • “I did not realize how unfree we all are,” attributed to the commentariat
  • North American Basic Income Guarantee Congress
    • New York
    • 2015-03.

Robots & Unemployment

Something about how robots took all the jobs, so therefore “we” “need” the Guaranteed Basic Income.

Who

  • Scott Santens, bio

    • a wruterm an exemplar, receives the dole.
    • a leader (of the Basic Income Movement)
    • age 37
    • New Orleans
    • Bachelor of Science, Psychology, University of Washington, YEAR?
  • Jason Burke Murphy
    • an activist (of the Basic Income Movement)
    • professor, philosophy, Elms College in Massachusetts,
  • Matt Zwolinski
    • professor, philosophy, University of San Diego.
    • quoted for color, background & verisimilitude
  • Guy Standing
  • Karl Phillip Widerquist, bio, cv
    • a leader (of the Basic Income Movement)
    • professor, philosophy at SFS-Qatar
    • professor, Georgetown University
    • Opera, in archaeological order
      • author, Propertylessness, and Basic Income: A Theory of Freedom as the Power to Say (Palgrave Macmillan 2013).
      • coauthor, Economics for Social Workers (Columbia University Press 2002).
      • coeditor, Basic Income: An Anthology of Contemporary Research (Wiley-Blackwell 2013).
      • author, Alaska’s Permanent Fund Dividend: Examining its Suitability as a Model (Palgrave Macmillan 2012)
      • author, Exporting the Alaska Model: Adapting the Permanent Fund Dividend for Reform around the World (Palgrave Macmillan 2012).
      • author, Ethics and Economics of the Basic Income Guarantee (Ashgate 2005).
    • Estimated as forthcoming
      • Prehistoric Myths in Modern Political Philosophy (Edinburgh University Press forthcoming)
      • Justice as the Pursuit of Accord (Palgrave Macmillan forthcoming).

Via: backfill

Facebook asked me: Which of these are ads?

Question [by Facebook, to me]: Which of these are ads?
Answer [by me]: all but two, sir; but I think you knew that.

Cocktail Party Joke

Comedian: Have you ever noticed the ads on Craig’s List?
Stooge: No, I thought they didn’t have ads.
Comedian: It’s all ads, all the time, in fact, that’s all they have there.

All Ads, All The Time & On Every Available Surface


To wit:

Anaconda – the past, present and future | David Cantrel, Martin Sivák et al.

Anaconda – the past, the present and the future; David Cantrell, Martin Sivák with Máirín Duffy; circa 2011 (no longer current)

Noted
  • the Add a Custom Add-On screen is no longer available as of Fedora 21.

Actualities

Flow

reminder: the diagram is circa 2011-Q4, is not representative as of Fedora 21.

Screens

reminder: the diagram is circa 2011-Q4, is not representative as of Fedora 21.