5 ms·
Took me a while (after reading through the reply, to no avail) to figure out what this refers to. Here's the feature this is referring to: $ apt-get moo
by smcl 10y ago
Took me a while (after reading through the reply, to no avail) to figure out what this refers to. Here's the feature this is referring to:
$ apt-get moo
(__)
(oo)
/------\/
/ | ||
* /\---/\
~~ ~~
..."Have you mooed today?"...
Edit: maybe not actually! Just found this too:
$ aptitude moo
There are no Easter Eggs in this program.
$ aptitude -v moo
There really are no Easter Eggs in this program.
- simias 10y agoI don't really understand what in this feature makes the build non-reproducible. Judging by the patch it's the call to time(NULL) that seems to be problematic, but I don't understand why.
- lamby 10y agoIt doesn't; it makes anyone using the output...
- smcl 10y agoYeh I only skimmed the patch but I presumed "reproducable build" referred to the actual binary, and the patch addresses runtime behaviour. Guess I'm missing something.
- karrotwaltz 10y agoFrom what I can read in patch file, it seems to be doing something different on April fools day.
- kr7 10y agoThe output of "apt-get moo" changes on special days (4/1, 12/25, 8/16, 11/7, 2/18). So if another program was using "apt-get moo" in its build script, the build would not be reproducible. With the patch, the SOURCE_DATE_EPOCH environment variable can be set to make "apt-get moo" deterministic. I don't think anything actually uses "apt-get moo" in its build script. This kind of patch makes more sense for build tools like "ar" (static library creator). By default, "ar" injects a timestamp into the output file, so the binary is different each build. But, use the "D" flag and "ar" becomes deterministic.
- rzzzt 10y agoThe time-dependent part can be seen here: https://github.com/Debian/apt/blob/master/apt-private/private-moo.cc#L164 https://github.com/Debian/apt/blob/master/apt-private/privat...
- kr7 10y agoThere is a second part above too: https://github.com/Debian/apt/blob/master/apt-private/private-moo.cc#L33 https://github.com/Debian/apt/blob/master/apt-private/privat...
- CroCroCro 10y agoKeep adding more v.
- smcl 10y agoYep it gets good - wasn't sure whether to spoil the fun or not :)
- paulddraper 10y ago> I got a fever! And the only prescription.. is more -v!
- dabber 10y agotry $ apt-get moo moo $ apt-get moo moo moo
- TimWolla 10y agoThis is “documented” as well. apt-get has got Super Cow Powers and aptitude has not. $ apt-get apt 1.0.9.8.4 for amd64 compiled on Dec 11 2016 09:48:19 Usage: apt-get [options] command apt-get [options] install|remove pkg1 [pkg2 ...] apt-get [options] source pkg1 [pkg2 ...] … This APT has Super Cow Powers. $ aptitude --help aptitude 0.6.11 Usage: aptitude [-S fname] [-u|-i] aptitude [options] <action> ... … This aptitude does not have Super Cow Powers.
- deleted 10y ago[deleted]
- mvo 10y agoTry `aptitude -vv moo` :)
- ansgri 10y agoThanks. A nice New Year's gift, to learn Super Cow Powers. Though talking about more -v's, I don't think Aptitude is written in Python, is it?
- Gaelan 10y agoI recall that aptitude has more messages for more v's.
- dfc 10y agoThis is a patch for apt, it does not have anything to do with aptitude.