LibreCMC v1.4.5 Builds

A bit late, but the builds are available here:

These builds are pre-compiled with a lot of extra networking tools, not included by default in the default builds. Here are packages & options I enabled:

  • Netcat server options and extensions
  • Busybox whois
  • Busybox arp and arping
  • Busybox ip neighbor
  • Busybox telnet (client)
  • Busybox tftp client
  • Busybox iostat
  • BB Lsof
  • BB watch
  • BB flock
  • dnsmasq-dhcpv6 (instead of dnsmasq)
  • Dropbear EEC support
  • Tinyscheme with embedded and extensions
  • luci-ssl-openssl
  • luci-app-openvpn
  • luci-app-wifischedule
  • luci-theme-material
  • lftp
  • wget
  • ebtables & ebtables-utils
  • ncat-ssl
  • nmap-ssl
  • nping
  • nstat
  • ss
  • tc
  • lldpd
  • openvpn-openssl
  • wavemon
  • 6in4
  • arp-scan
  • darkstat
  • iftop
  • iperf3
  • tcpdump
  • nano
  • zile
  • dropbearconvert

Here are the sums:

fb1b26ad9cbd2599143245d4fd80d9356890dd106b3a0049e222ca5c22b96770  generic/librecmc-ar71xx-generic-gl-ar150-squashfs-sysupgrade.bin
c22995acadd8a4713873c3e57cc9ed7c72cd49e83c3ee05e7d9878bf852f9096 generic/librecmc-ar71xx-generic-gl-ar300m-squashfs-sysupgrade.bin
fb1b26ad9cbd2599143245d4fd80d9356890dd106b3a0049e222ca5c22b96770 generic/librecmc-ar71xx-generic-tpe-r1100-squashfs-sysupgrade.bin
745d8ca091dc3505348e8dc7ac5519ae65094370d0587f2065f4b023689e00db nand/librecmc-ar71xx-nand-gl-ar300m-ubi-factory.img

System Information Scripts for Gnu/Linux

Somebody tipped me off to two useful software tools which display detailed system information. This is especially helpful if you are making a tech support forum post and want to provide detailed information about your system. The first is inxi:

First, you need to run the commands sudo update-usbidsand sudo update-pciids, then inxi -Fxz to get the interesting information.

The other command is neofetch which gives a condensed description of your desktop environment and some other basic system information:

Neither of these programs are likely to be installed by default on a system, but they are likely to be in your distro’s package repository.

Beautiful Complex Number Traces

I got a lot of work done on the bookkeeping, but I couldn’t go to bed without playing with the complex number plots some more. I found an a way to produce some attractive plots. First, I needed this additional function, to make experimentation easier:

(define (complexplot f m n)
    (map (lambda (n)
           (complex2vec (f n)))
         (range m n)))))

The idea I came across was taking the standard unit circle rotation, and multiplying that by samples of the cosine wave:

screenshot from 2019-01-24 23-31-35


If I change the “sampling rate” to various fractions of Pi, I get other interesting geometry. Here is Pi/4:

Screenshot from 2019-01-24 23-32-22.pngAnd Pi/7:

screenshot from 2019-01-24 23-32-12

More Fun with Scheme and Complex Numbers

This will be a quick post, as I should be working on some volunteer treasurer work which, I must confess, is infinitely more boring than playing around with Scheme and complex numbers. :) I just wanted to post this screenshot of complex numbers in Dr. Racket:

Screenshot from 2019-01-24 20-57-52.png

Dr. Racket provide a really easy interactive interface, for manipulating plots (and a lot of other graphical things). I just started playing around with it today. Here is a quick explanation of the code:

Preamble stuff:

#lang racket

(require plot)

The plot interface (so far as I know) takes vectors but not straight-up complex numbers, so I needed a conversion function:

(define (complex2vec c) (vector (real-part c) (imag-part c)))

A function to generate a list of numbers is handy:

(define (range m n)
  (if (>= m n) '()
    (cons m (range (+ 1 m) n))))

So, now we generate the plot object:

(define hexspiral
      (map (lambda (n)
             (complex2vec (expt (+ (exp 0+1i) 0+0.1i) n)))
        (range 0 100)))))

What I’m doing here is taking the e^i complex number, and raising it to successive powers, which causes it to rotate around the complex plane origin. Of course, that would simple move around the unit circle over and over again, which would be boring, so I actual started with e^i plus a small complex number which nudges the first point slightly outside the unit circle. This causes the new points to spiral outwards.

Dr. Racket makes a fun scheme playground. Next I want to try some more complex complex-number functions.

Patched Marble Packages for Debian Stretch

The Marble program in Debian stretch has a problem: the API for the interface to Open Street Map search changed, but the Debian version of Marble has not been updated, so the search functionality is broken. I reported this bug in Debian package bug 903491. One individual submitted a patch to the bug report. I downloaded the deb source for this package, added that patch into the deb, and rebuilt the package. For those who do not want to wait for the official fix, the patched marble debs are available here:

( mysteriously does not allow ftp links to be rendered, so you must copy and paste that into you Web browser address bar or your ftp client.)

You’ll need to download all the files that end in “deb”, except the ones with the word “dbgsym” or “dev” which are not required. Then run the command

dpkg -i <packages>

where <packages> is a list of all those package file names exactly, separated by spaces. dpkg -i *.deb might work for you.

When I ran the command, the marble-maps deb did not install, because of a missing dependency. But since the marble-maps package was already installed from the original installation, this did not matter. I started the program, and was able to do searches as normal.

screenshot from 2019-01-07 20-09-03The reason this is important to me is it allows me to do map searches without having to use Web browser application code that I do not trust. (I think though, to submit OSM contributions, you would still need to use the Web browser application.) Also Marble has some nice features like the various map sources that are available.