S4E4: "Special Delivery"

Posted
Modified
Comments 0

Navigation
Previous EpisodeNext Episode
Log
Recorded (UTC) Aired (UTC) Editor
2019-04-04 02:27:27 2019-04-15 01:44:24 "Edita"
Verification
Format SHA256 GPG Audio File
MP3 a9ac4911397ad5364c8f6b5855699bde064648f45206c52b12b55d14409d32cb click click
OGG 55dd0d150a527bb3000b765eff932e6ca98f8853f397d93882a6264ee01a620f click click
Quicklisten:

In which we talk about our packages.

Per Jthan, “somethings things can be good.”

Just the Tip

  • Paden talks about find (part of findutils).
    • It lets you find files (and directories!) based on time-constraints (e.g. find /path -type d -mmin "-5" would find all directories under path modified over the past 5 minutes).
    • You can find files/directories based on size (find /path -type f -size "+500k" would find all files under path more than 500kB).
    • You can also negate matches with !.
    • There are a LOT of options we don’t cover; you should be able to use find to search for just about anything you want.
    • If you’re doing a little more complicated work with files you find, you may want to look into xargs, or you can reproduce a LOT of the same functionality with Python’s os.walk() and os.stat().

Notes

Starts at 14m25s.

I was drinking another Victory DirtWolf. Paden was drinking Absolut. Jthan was drinking a double gin (Tanqueray) and tonic.

  • Packaging/creating custom packages (a tie-in with S4E2)
    • CentOS/RHEL-based (RPMs)
      • And other derivates such as SuSE (1, 2), Fedora (1, 2)
    • Debian / Ubuntu (and derivatives) (DEBs)
    • Arch-based
    • Gentoo-based:
    • Jthan has a hard-on for FPM even though it serves no benefit and only encourages abstraction rather than expertise.
      • His unnecessary script is as such:
#!/bin/bash

cd /tmp/
wget http://skipper.colorado.edu/src/python/Python-3.6.3.tar.xz
tar xf Python-3.6.3.tar.xz
cd /tmp/Python-3.6.3
mkdir /tmp/python3
./configure --prefix=/opt/python/3.6.3 --enable-loadable-sqlite-extensions
make
make install DESTDIR=/tmp/python3
cd /tmp
fpm -s dir -t rpm -n biof-python3_6_3 -v 3.6.3 --iteration 4 -C /tmp/python3
rm -rf /tmp/python3
rm -rf /tmp/Python-3.6.3
rm -rf /tmp/Python-3.6.3.tar.xz

And here’s the .SPEC file (which he doesn’t even need to write since it’s already written) for Fedora, SuSE. For CentOS/RHEL, he can even just do rpmrebuild --package --notest-install -e python36-3.6.6-5.el7.x86_64.src.rpm, or rpmrebuild -s python36.spec python36 OR yumdownloader --source < /path/to/python36-3.6.6-5.el7.x86_64.src.rpm even, extract it with rpm2cpio python36-3.6.6-5.el7.x86_64.src.rpm | cpio -ivd, or… etc.

  • It’s important to design a maintainable packaging method, ideally one you can script.
  • You can also package your python libraries too, and then upload to PyPI (so it can be installed with pip) or your own personal PyPI repo (which we talk about in S4E2).

15 Clams

In this segment, Jthan shares with you a little slice of life. The title is a reference to this video. (2m16s in)

Starts at 51m12s.

Jthan talks about monitoring your own physical health in this industry. Stress kills, man. (The episode where we talk about the “Hit By a Bus Clause” is S1E19.)

Errata

  • Jthan doesn’t understand basic mechanics of keeping liquid cool.
  • Jthan has experience with Slurm, not Slurm.
  • It appears we never actually did give a baddie to npm ruining system directories – they also didn’t e.g. delete /etc, they trashed the permissions of system directories (which still serves to basically ruin the system).
  • Here’s the alias addition I made for !jthan while we were waiting for him to come up with a 15 Clams:
22:13:14< r00t^2> sysbot: jthan is also baby jthan
22:13:15<@sysbot> r00t^2: yeah, let me get RIGHT fucking on that for you, fucker.

Music

Music Credits
Track Title Artist Link Copyright/License
Intro Dream Catcher Kevin MacLeod click CC-BY 4.0
Outro Midnight Tale Kevin MacLeod click CC-BY 4.0
(All music is royalty-free, properly licensed for use, used under fair use, or public domain.)

Author
Categories

Comments

There are currently no comments on this article.

Comment...

Enter your comment below. Fields marked * are required. You must preview your comment before submitting it.