Monitor bandwidth usage with bandwhich

Back in 2020 I stumbled on Bandwhich, a “Terminal bandwidth utilization tool”, written in Rust. More recently, I was looking for a tool to identify which processes on a box were using bandwidth, and how much. I remembered Bandwhich and took another look. I wanted an easy way to install Bandwhich on a variety of machines, running a variety of Linux distributions across different architectures. So I built a snap of bandwhich. [Read More]

Disabling snap Autorefresh

Preamble Until recently, I worked for Canonical on the Snap Advocacy Team. Some of the things in this blog post may have changed or been fixed since I left. It’s quite a long post, but I feel it’s neccessary to explain fully the status-quo. This isn’t intended to be a “hit piece” on my previous employer, but merely information sharing for those looking to control their own systems. I’ve previously provided feedback in my previous role as Snap Advocate, to enable them to better control updates. [Read More]

Updating Snap Bases

This is a bit of a dayjob post, but as I maintain a bunch of snaps in my own time, I figured it’s not out of place here. Typically when I (or indeed any developer) uses snapcraft to build a snap, a snapcraft.yaml drives the process. I’ll integrate some kind of CI or build system, and start publishing to the Snap Store. Usually, once created, the yaml doesn’t need much in the way of changes. [Read More]

Snapcraft Clinic Successes

On Thursday I mentioned we were restarting the Snapcraft Clinic. Basically we stand up a regular video call with engineers from the snap and snapcraft team & us from Snap Advocacy. Developers of applications and publishers of snaps are invited to join to troubleshoot. There was nothing especially secret or private discussed, but as we don’t record or stream the calls, and I don’t have direct permission to mention the applications or people involved, so I’ll keep this a little vague. [Read More]

Snapcraft Clinic

At work we have a forum where developers can discuss packaging Linux applications, specifically as snaps. Sometimes developers just want to pair through a problem to get it either resolved for themselves, or for whatever is blocking to be handed off to the right people. One strategy for supporting developers we found effective was via regular live video conference. So last year we started the Snapcraft Clinic. On a semi-regular basis we dedicate time to join with anyone who has technical issues with snapping, to help them. [Read More]

Let's Go Snapping

Last year ( 😄 ) I wrote an article called Snap Along With Me in which I detailed how I approached snapping a rust application called t-rec. Well, I’m back with another “Snap Along”, this time we’re snapping an application written in Golang. During a meeting to on-board a new member of the team at work today, I went through a similar process as my last blog post. This time I chose a different application, so I thought I’d write it up here. [Read More]

Late Night Linux Extra: 14 - Transcription

I was recently interviewed by Joe Ressington for Late Night Linux Extra episode 14. Here’s a transcription I typed up, which may be useful. I used an automated tool to create the transcription, then tidied it up myself. If you spot anything which doesn’t match the audio, and is materially important, do feel free to propose an edit on GitHub (link at the top of the page). Joe: This episode is about snaps, quite the controversial topic in some circles, and who better to talk about it than Alan Pope - “popey” as he’s affectionately known by almost everyone. [Read More]

Snapcraft GNOME Extension Update

This is an early PSA aimed at developers who publish snaps in the Snap Store. They can probably skip this preamble, but for anyone else here’s some backstory in case you’re bored interested. Preamble Snaps are confined software packages for Linux. They were originally designed / intended for IoT use cases so are optimised for size, bundling dependencies, are compressed on disk and auto update. They can also be used to package server software, like NextCloud, and desktop software like Signal Desktop. [Read More]

Check for Outdated Snaps

I don’t consider myself a ‘Developer’ but I maintain a bunch of snaps in the Snap Store, and threw together a shell script which I’m sharing here in case it’s useful to other publishers. The goal of the script is to go through each snap and check to see if there’s a newer version of it upstream than currently published in the store. As such it’s not meant for end-users, but for people like me who publish multiple snaps from different places, and want to keep on top of them. [Read More]

Snap Along With Me

Every so often I find myself with an idle hour and decide to use that time to package some new software for Linux. A common activity among nerds, I’m sure ;). This blog post is a write up of what I did, and why, which may be useful to others with time on their hands. I keep meaning to live stream when I do, but on this occasion I had a bad hair day was also listening to and engaging with a podcast, so it wasn’t practical. [Read More]

Snap Tips

As you may or may not be aware, I work for Canonical on Snapcraft and Ubuntu. I use Ubuntu as my daily driver, and spend a lot of time maintaining snap packages, and listening to developers and users talk about software packaging, publishing, delivery and use. Over time I’ve collected a bunch of virtual notes in my head. Much of it has been turned into documentation, but often the information is rather spread out. [Read More]

Building Apps for Linux without Linux

It’s now super easy to build Linux software packages on your Windows laptop. No VM required, no need for remote Linux hosts. I spend a lot of my day talking to developers about their Linux software packaging woes. Many of them are using Linux desktops as their primary development platform. Some aren’t, and that’s their (or their employers) choice. For those developers who run Windows and want to target Linux for their applications, things just got a bit easier. [Read More]

April Snapcraft Docs Day

Continuing Snapcraft Docs Days In March we had our first Snapcraft Docs Day on the last Friday of the month. It was fun and successful so we’re doing it again this Friday, 28th April 2017. Join us in #snapcraft on Rocket Chat and on the snapcraft forums Flavour of the month This month’s theme is ‘Flavours’, specifically Ubuntu Flavours. We’ve worked hard to make the experience of using snapcraft to build snaps as easy as possible. [Read More]

Snapcraft Docs Day

Announcing Snapcraft Docs Day Snap is a simple archive format for big things. Snapcraft is a delightful tool for automatically building and publishing software for any Linux system or device. Our documentation and tutorials are great for getting started with snapcraft. We can always improve these though, so this Friday, will be our first Snapcraft Docs Day. When: Friday, 31st March 2017, all day Where: #snapcraft on Rocket Chat Who: Developers & documentation experts of all levels Why we’re doing this The goal is to ensure our documentation and tutorials are useful and accurate. [Read More]