This is a text-only version of the following page on https://raymii.org: --- Title : I've packaged up CKermit as a snap, for Ubuntu 20.04 Author : Remy van Elst Date : 16-05-2021 URL : https://raymii.org/s/blog/Ive_packaged_up_CKermit_as_a_snap_for_Ubuntu_20.04.html Format : Markdown/HTML --- [![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-white.svg)](https://snapcraft.io/ckermit-raymii) Last year I packaged up [gnash as a snap](/s/blog/Ive_packaged_up_Gnash_as_a_Snap_for_modern_linux.html) because it was missing from the Ubuntu 20.04 apt repositories. Recently I found out that `ckermit` is also not in Ubuntu 20.04, as far as I can tell because it wasn't in the Debian repositories when the Ubuntu 20.04 initial sync happened. Which is very inconvenient for an LTS release. I often use `ckermit` to connect to our hardware via a script, to automatically boot from NFS (via u-boot). I could do that manually via `screen` or `minicom`, but I have a `kermit` script that does it for me, which is very convenient. Since the snapping of `gnash` was so easy, I decided to do it for `ckermit` as well, since I now know how to convert deb packages to snaps. I also have a few colleagues who also use those kermit scripts and are going to update to 20.04 in the (near) future. The snap packaging is based on work by Phil Roche, he wrote about re-packaging older debian packages with an Ubuntu 18.04/16.04 base layer as a snap. My `ckermit` package is confined (no `--classic` needed), the source code for the snap is on my github and on any snap-enabled distro you can now 'snap install ckermit-raymii' to enjoy CKermit.

Recently I removed all Google Ads from this site due to their invasive tracking, as well as Google Analytics. Please, if you found this content useful, consider a small donation using any of the options below:

I'm developing an open source monitoring app called Leaf Node Monitoring, for windows, linux & android. Go check it out!

Consider sponsoring me on Github. It means the world to me if you show your appreciation and you'll help pay the server costs.

You can also sponsor me by getting a Digital Ocean VPS. With this referral link you'll get $200 credit for 60 days. Spend $25 after your credit expires and I'll get $25!

Here is a screenshot of the current [package search][4] for `ckermit` on the Ubuntu package archives. No 20.04 LTS as you can see: ![screenshot packages][2] ### Important setup information for the snap **You must execute the following commands to access a serial port over USB (ttyUSB0 for example). If you don't do this, this snap won't work:** sudo usermod -a -G dialout $USER #replace $USER with your linux login username sudo snap connect ckermit-raymii:raw-usb Now restart your computer and you're good to go! The snapcraft code is up [on github][3], the version is 9.0-302. Since there is no snap core for 21.04, I cannot convert 9.0-305. But as far as support is concerned, this is the LTS version from 18.04. ### What is (c)kermit? Quoted from the [project website][8]: Kermit is the name of a file-transfer protocol and a suite of computer programs for many types of computers that implement that protocol as well as other communication functions ranging from terminal emulation to automation of communications tasks through a high-level cross-platform scripting language. The software is transport-independent, operating over TCP/IP connections in traditional clear-text mode or secured by SSH, SSL/TLS, or Kerberos, as well as over serial-port connections, modems, and other communication methods. The Kermit Project was founded at the Columbia University Computer Center (now CUIT) in 1981, and until the mid- to late 1990s, Kermit was Columbia's standard connectivity software, used by students, faculty, and staff to connect from desktop microcomputers, PCs, Macintoshes, and Unix workstations tothe central computing facilities: the IBM mainframes, the DECSYSTEM-20s, CLIO, and Cunix (our Unix-based severrs). At Columbia, the mainframes and DEC-20s are long gone, but Kermit still may be used for SSH sessions to CUNIX. C-Kermit is an implementation of the kermit protocol, a kermit client/server for unix/linux (and VMS). The [PiDP-8][9], an emulated hardware clone of the PDP-8 also has a kermit implementation so you could use it to communicate with any PDP-8's you might have laying around. Here is a screenshot ([source][7]) of kermit connecting to a Variscite board, similar to the ARM boards I use at work: ![screenshot ckermit][6] This is one of my kermit scripts, after connecting a serial cable, to interrupt the u-boot process. Saves me pressing any key at the right moment, as well as sending some custom boot options to the board. #!/snap/bin/ckermit-raymii + kermit -l /dev/ttyUSB0 set speed 115200 set carrier-watch off set handshake none set flow-control none robust set file type bin set file name lit set rec pack 4096 set send pack 4096 set window 5 SET INPUT ECHO ON INPUT 999 Hit any key to stop autoboot: LINEOUT INPUT 5 => LINEOUT setenv console ttymxc0 INPUT 5 => LINEOUT setenv optargs serial.getty=ttymxc0 LINEOUT boot connect This kermit script is the only way I have to test this snap, so nothing else than this is tested. [1]: https://answers.launchpad.net/ubuntu/+source/ckermit/+question/693175 [2]: /s/inc/img/ckermit-ubuntu.png [3]: https://github.com/RaymiiOrg/ckermit-snap [4]: https://packages.ubuntu.com/search?keywords=ckermit [5]: www.amber-lab.com/wiki/amber-board-tutorials/board-connection-to-pc/ [6]: /s/inc/img/kermit.jpg [7]: www.amber-lab.com/wiki/amber-board-tutorials/board-connection-to-pc/ [8]: https://www.kermitproject.org/ [9]: /s/articles/Running_TSS_8_on_the_DEC_PiDP-8_i_and_SIMH.html --- License: All the text on this website is free as in freedom unless stated otherwise. This means you can use it in any way you want, you can copy it, change it the way you like and republish it, as long as you release the (modified) content under the same license to give others the same freedoms you've got and place my name and a link to this site with the article as source. This site uses Google Analytics for statistics and Google Adwords for advertisements. You are tracked and Google knows everything about you. Use an adblocker like ublock-origin if you don't want it. All the code on this website is licensed under the GNU GPL v3 license unless already licensed under a license which does not allows this form of licensing or if another license is stated on that page / in that software: This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . Just to be clear, the information on this website is for meant for educational purposes and you use it at your own risk. I do not take responsibility if you screw something up. Use common sense, do not 'rm -rf /' as root for example. If you have any questions then do not hesitate to contact me. See https://raymii.org/s/static/About.html for details.