Skip to content

Instantly share code, notes, and snippets.

View plembo's full-sized avatar

Phil Lembo plembo

View GitHub Profile
@plembo
plembo / list-atom-packages.md
Last active August 19, 2018 23:41
List Atom Packages Installed

List Atom Packages Installed

To list all Atom packages installed by a user, run:

apm list --packages --installed

(apm is the "Atom Package Manager")

The response will be look somethng like this:

@plembo
plembo / UbuntuUpgradeToLTS.md
Last active September 25, 2022 15:53
Upgrade Ubuntu to Latest LTS

Upgrade Ubuntu to the Latest LTS

Lots of caveats here. While Ubuntu's upgrade process has gotten much better, there are still annoyances. Now based on experience with multiple upgrades, including most recently from Ubuntu 20.04 LTS to 22.04 (the most current LTS as of this update).

Preparation

Do your homework. There's nothing more discouraging long into an upgrade but to learn that some favorite app or service is no longer supported. Have a list like "Useful Software" with the names and web site urls of everything you may need to restore afterwards (here is mine).

Do the Upgrade

First, update your system to the latest packages for its current version:

@plembo
plembo / idswaprecipe.md
Last active June 2, 2018 15:49
Recipe for swappin ids on Linux

Recipe for swapping ids on Linux

Had to do this today on a rebuild of the home theater machine. Stupidly made theater the first user. That made it user 1000, group 1000. To make things consistent across my home network, I wanted to have my "myuser" user be uid and gid 1000 instead.

Basically followed the process described in this article.

Obviously, I needed to create myuser on the box and make them an admin (by adding to the "sudo" group), before I could do anything -- the theater user can't change its own ids.

Here's how I did it.

@plembo
plembo / sqlwbsetuplinux.md
Last active July 9, 2024 12:30
SQL Workbench/J on Linux

Setting up SQL Workbench/J on Linux

SQL Workbench/J is a cross-platform graphical database query tool written in Java. All you need to run it is to download and extract the zip distribution and have the JRE and JDBC drivers for your DBMS installed.

These instructions were tested on Ubuntu 18.04 LTS with the Gnome Shell desktop environment. YMMV.

  1. Verify that the JRE is installed:
@plembo
plembo / 7zexamples-linux.md
Last active June 9, 2018 16:39
7z Examples for Linux

7z Examples for Linux

7zip on Linux is a port from Windows. The man page explicitly cautions against using it as a general purpose backup solution on Linux because it does not preserve file permissions. It can be more useful than Unix zip for creating cross-platform archives, however, as 7zip can be used to encrypt both data and filenames in an archive with strong 256-bit AEC encryption (Unix zip uses relatively weaker encryption limited to 96-bits for circa 2008 export compliance).

On Ubuntu, 7zip is suppled by the p7zip-full package.

As the result of syntax changes over the years anyone using 7zip on Linux should pay careful attention to its man pages and release notes.

@plembo
plembo / CalibreServerOnLinux.md
Last active April 25, 2025 22:43
Calibre Server on Linux

Calibre Server on Linux

Introduction

Calibre is a powerful cross-platform, open source, ebook manager and editing platform. Its calibre-server component can be used to publish an e-book library on a local network. While you can launch calibre-server as a desktop application, it can also be run as a daemon on a headless Linux server.

This tutorial on setting up calibre-server using Ubuntu 14.04 is very good, but dated.

@plembo
plembo / asusb250mcfans.md
Last active September 17, 2024 02:53
Monitoring ASUS Prime B250M-C fans on Linux with lm-sensors

Monitoring ASUS Prime B250M-C fans with lm-sensors

Introduction

The lm-sensors package is the standard software used to monitor things like CPU temperature on Linux. All major distributions include this package. Basic configuration, using the sensors-detect utility, is straightforward. For many systems, running sensors-detect and accepting the defaults is enough to get full functionality.

ASUS Prime B250M-C motherboard

The basic configuration for lm-sensors will provde temperatures for the CPU and ASUS Prime B250M-C motherboard, but not fan speeds.

@plembo
plembo / mixingonlinux.md
Last active January 9, 2025 12:11
Mixing Audio with Linux

Mixing Audio with Linux

Simple procedure for bare bones audio mixing with Linux. Sample case is a voiceover of some audio content. PulseAudio loopback will allow mixing of mic input with some other audio input (like music being played in a browser) and recording in audacity by selecting "Monitor of Built-in Analog Stereo" as input on the Recording tab of pavucontrol.

Thanks to Iñigo Aldazabal (iamc) for the code.

My Setup

@plembo
plembo / fixsnmpdubu.md
Last active December 8, 2020 15:32
Fixing SNMPD on Ubuntu

Fixing SNMPD on Ubuntu

SNMP is a foundational protocol for enterprise network and system management. Getting it right shows that a vendor actually cares about servicing IT in the enterprise. Debian, and its downstream progeny, Ubuntu, ship a configuration for the SNMP server, snmpd, that's so broken it positively screams "I don't care".

This brokenness is a known thing. The following bug reports go back to , but nothing has been done to address them:

The following has been tested on both Ubuntu 16.04 LTS and 18.04 LTS.

First steps

@plembo
plembo / AutoMountGCSinGCE.md
Last active September 9, 2023 01:48
Auto Mount GCS in GCE

Auto mount Google Cloud Storage in a Google Compute machine

The documentation covering this is pretty inartful when it comes to giving examples. Clearly the work of a slave, indentured servant or hostage.

But read it anyway to see if you agree:

Cloud Storage FUSE

Under normal circumstances the gcsfuse utility cannot mount GCS storage as root. For security reasons it will only work out of the box with a non-root user. What we want to do is get it to mount GCS storage