Show more

The talk ended up looking like a demo of new features I worked on as I was preparing it.

One of the things I showed is the #GNU #Guix System Explorer, a new tool to visualize and query system components and their connections:
notabug.org/civodul/guix-explo

tl;dr: Ship every FOSS project with a "guix.scm" file.

These can be used to set up dev environments with
"guix environment -l guix.scm"

Projects built using Guix as a dev environment are free from the "binary-black-box-container-only" plague, healthier for user freedom!

Guix has made it into Debian Unstable! This means Debian users can use Guix as a "userspace" package manager now! tracker.debian.org/pkg/guix

This is really wonderful! Debian and Guix both care deeply about reproducibility.

This could be a big win for user freedom on both (cotd ...)

With my recent C920 webcam purchase, I decided to give it a test by using it and another generic webcam with OBS Studio to create a multi-perspective live 1080p live stream of my kids' Leopard Gecko enclosure. It streams to RTMP nginx proxy on the same box so that other computers on the LAN can connect via e.g. VLC.

My kids love watching it and positioning the cameras (C920 as a top view, the lower-quality camera as a cute ground-level face view); it feels like a zoo exhibit.

As mentioned here, an older version of the C920 had a different ID (046d:082d, which is the one typically listed for GNU/Linux support) and had H.264 support:

medium.com/@cmeister2/logitech

Recent versions, including mine, stream MJPEG and do _not_ support H.264. Just an FYI.

And one of my golden retrievers decided to try to eat it while I wasn't looking. So it's also durable, though I don't recommend buying for that use case.

(Sorry for the delete & repost---I left a "not" in the original message that completely negated what I was trying to say.)

So I purchased a Logitech C920 webcam, which has UVC support. The USB ID is 046d:0892.

My primary driver is an X200, which is great for my typical uses, but horrible for transcoding. But guvcview is able to record 720p raw (no transcoding) at a full 30fps (well, just slightly under), with audio. So I could offload transcoding to another machine (either pre-record, or stream).

This works under GNU Guix System with entirely free software and zero setup.

I do have a system that supports OpenGL 4 (>=3 is needed for my kids to play SuperTuxKart), and it happily recommends 1920x1080. But it's not physically placed in an optimal recording environment, to say the least.

OBS on my X200, having to run in software mode since OpenGL 2.1 is not supported, has determined that my optimal output resolution is...a whopping 426x240.

;_;

As someone who works almost exclusively from a terminal and is happy with older hardware, I'm not used to my software basically outputting "lol".

What happened at the US Capitol is disgusting and disgraceful.

I have to leave it there [for now].

The four-person tech team at the FSF delivers a huge range of services for the free software community. Learn how you can support their work, and share with #UserFreedom! u.fsf.org/379

The county I live in has the highest COVID-19 infection rate in the entire state of New York (7-day rolling avg), and is on the verge of another shutdown of non-essential businesses.

The entire state. That includes New York City, on the opposite end of the state.

This also as my wife is heading back to work as a nurse on a floor with COVID-19 patients. Nearly half of them, according to the county, under the age of 64.

Whether you care or not, your actions affect those who actually do.

For those who may be wondering: it's an X200, and the script simply polls /sys/class/drm/card0-HDMI-A-2/status.

The `xrandr` utility can be used to configure outputs for X11 from the command line. For example, you can use it to configure and inspect resolution, position (relative to other monitors), rotation, scaling, refresh rate, DPI, and much more. It can even apply geometric transformations.

As an example, since I don't use a desktop environment, I have a script that detects when I connect/disconnect my laptop to/from its dock, and applies the appropriate monitor configuration.

@ashwinvis @mikegerwitz there's also the wonderful xcape tool which let's you assign different actions to a key when being pressed alone or together with another.

In other words, with the remapping and xcape you can use capslock as both ctrl and esc - best of both worlds.

`setxkbmap` can be used to modify the keyboard layout under X11. For example, I use `setxkbmap -option ctrl:nocaps` to bind capslock to ctrl, to cut my pinky and wrist some slack.

Some people bind capslock to escape (e.g. `-option caps:escape`) because that's the keyboard layout under which vi was developed. I don't bother, because ^[ is equivalent to escape in a terminal, so I get more utility out of having ctrl:nocaps.

(See `man xkeyboard-config` if your system has it.)

Show more
Mike Gerwitz's Mastodon Instance

Mike Gerwitz's personal Mastodon instance