Full Circle THE INDEPENDENT MAGAZINE FOR THE COMMUNITY

ISSUE #172 - August 2021

VIE RE W

U

B 4 U .0 N 1 T 2 U PPRRIINNTTIINNGG MAKE YOUR OWN PRINT SERVER

full circle magazine #172 contents ^ Full Circle Magazine is neither affiliated with,1 nor endorsed by, Canonical Ltd. HowTo Full Circle THE INDEPENDENT MAGAZINE FOR THE UBUNTU LINUX COMMUNITY Python p.20 Linux News p.04

Eternal Terminal p.24 Command & Conquer p.18 ... p.XX Everyday Ubuntu p.35

Making Print Server p.26 Ubuntu Devices p.XX The Daily Waddle p.34 Micro This Micro That p.37

p.XX My Opinion p.XX Letters p.XX Review p.47

Inkscape p.30 Q&A p.52 Review p.XX Ubuntu Games p.56 Graphics

The articles contained in this magazine are released under the Creative Commons Attribution-Share Alike 3.0 Unported license. This means you can adapt, copy, distribute and transmit the articles but only under the following conditions: you must attribute the work to the original author in some way (at least a name, email or URL) and to this magazine by name ('Full Circle Magazine') and the URL www.fullcirclemagazine.org (but not attribute the article(s) in any way that suggests that they endorse you or your use of the work). If you alter, transform, or build upon this work, you must distribute the resulting work under the same, similar or a compatible license. Full Circle magazine is entirely independent of Canonical, the sponsor of the Ubuntu projects, and the views and opinions in the magazine should in no way be assumed to have Canonical endorsement. full circle magazine #172 2 contents ^ EEDDIITTOORRIIAALL

This magazine was created using :

WELCOME TO THE LATEST ISSUE OF FULL CIRCLE

his month we have the usual suspects of Python, , LMMS, and Micro this, that, and the T next thing. Absent this month is Latex as Erik was busy with some real world stuff. Filling in are pieces on Eternal Terminal and one on making your own network print server.

Elsewhere, we have a review of 21.04 which rounds off the series of 21.04 reviews from Adam. But fear not! I installed Linux Lite on my old laptop and I'm hoping to have a review of that next month. Fingers crossed!

Don't forget: if you're looking for some help, advice, or just a chit chat: remember, we have a Telegram group. I mention this as I've been giving out the wrong link in a couple of emails. The Find Full Circle on: (new and updated) link is: https://t.me/joinchat/24ec1oMFO1ZjZDc0. I hope to see you there. Come facebook.com/ and say hello. fullcirclemagazine Anyway, stay safe, and all the best for 2021! twitter.com/#!/fullcirclemag Ronnie http://issuu.com/ [email protected] fullcirclemagazine

https://mastodon.social/ @fullcirclemagazine

Weekly News: http://fullcirclemagazine.org/ feed/podcast http://www.stitcher.com/s? fid=85347&refid=stpr http://tunein.com/radio/Full- FCM PATREON : https://www.patreon.com/fullcirclemagazine Circle-Weekly-News-p855064/

full circle magazine #172 3 contents ^ NNEEWWSS Submitted by ErikTheUnready

HAIKU R1 BETA 3: system is directly based on BeOS 5 ports (it can determine known stream format on the fly and use technologies and is aimed at binary protocols whose handlers accept plug-ins, making it possible to 07/26/2021 compatibility with applications for connections on non-standard transparently redirect the audio this OS. Minimum hardware network ports, for example, if http stream to another machine. fter a year of development, the requirement: CPU Pentium II and is sent not from port 80, or, PulseAudio code is distributed A third beta release of the 384 MB RAM (Intel Core i3 and 2 GB conversely, when which they try to under the LGPL 2.1+ license. R1 has been RAM recommended). camouflage other network activity Supports Linux, Solaris, FreeBSD, published. The project was as http by running on port 80). OpenBSD, DragonFlyBSD, NetBSD, originally created in response to RELEASE OF NDPI 4.0 DEEP macOS and Windows. the shutdown of BeOS and https://www.ntop.org/ndpi/ PACKET INSPECTION SYSTEM developed under the name : introducing-ndpi-4-0-dpi-for- https://lists.freedesktop.org/ OpenBeOS, but was renamed in cybersecurity-and-traffic-analysis/ archives/-discuss/2021- 07/27/2021 2004 due to claims related to the July/032099.html use of the BeOS trademark in the he ntop project, which develops PULSEAUDIO 15.0 SOUND name. Several bootable Live images tools for capturing and SERVER RELEASED RELEASE OF OPNSENSE (x86, x86-64) have been prepared T : analyzing traffic, has published a to evaluate the performance of the 21.7: release of the nDPI 4.0 deep packet 07/28/2021 new release. The source code for inspection toolkit, which continues 07/29/2021 most of the Haiku OS is distributed the development of the OpenDPI he PulseAudio 15.0 sound under the free MIT license, with the library. The nDPI project was server, which acts as an PNsense 21.7 is out, which is a exception of some libraries, media T founded after an unsuccessful intermediary between applications fork of the pfSense project, codecs and components borrowed O attempt to push changes to an and various low-level sound created with the aim of forming a from other projects. unattended OpenDPI repository. subsystems, abstracting the work completely open distribution that The nDPI code is written in and is with the equipment. PulseAudio could function at the level of Haiku OS is focused on personal licensed under the LGPLv3 license. allows you to control the volume commercial solutions for deploying computers, uses its own kernel, and mixing of sound at the level of firewalls and network gateways. built on a modular architecture, The project allows you to individual applications, organize the Unlike pfSense, the project is optimized for high responsiveness determine the application-level input, mixing and output of sound positioned as not controlled by one to user actions and efficient protocols used in traffic by in the presence of several input and company, developed with the direct execution of multithreaded analyzing the nature of network output channels or sound cards, participation of the community and applications. An object-oriented API activity without binding to network allows you to change the audio has a completely transparent is presented for developers. The full circle magazine #172 4 contents ^ NEWS development process, as well as arrays stored in the form of an RELEASE OF SIDUCTION with the Debian Unstable providing the opportunity to use associative array (hash). The release repository as of July 28th. In Xorg any of its developments in third- of Cassandra 4.0 is considered 2021.2: and noX builds, as well as in the party products, including ready for production and has second build with Plasma 5.22.4, by 07/29/2021 commercial ones. The source code already been tested on Amazon, default, the iwd daemon is used to of the distribution's components, as Apple, DataStax, Instaclustr, iland connect to the wireless network he Siduction 2021.2 project, well as the tools used for building, and Netflix infrastructures with instead of wpa_supplicant (in other which develops a desktop- are distributed under the BSD clusters of more than 1000 nodes. T builds, iwd is provided as an oriented , built on license. Assemblies are prepared in The project code is written in Java option). the Debian Sid (unstable) package the form of a LiveCD and a system and is distributed under the Apache base, was released. Siduction is a image for writing to Flash drives 2.0 license. The DBMS allows you to https://siduction.org/2021/07/ fork of Aptosid that spun off in July (422 MB). create fault-tolerant storages: the release-notes-for-siduction-2021-2- 2011. The key difference from data placed in the database is 0/ Aptosid is the use of a newer The base distribution is based automatically replicated to several version of KDE from the on the HardenedBSD code, which nodes of the distributed network, experimental Qt-KDE repository as OPEN SOURCE ORBITER maintains a synchronized fork of which can span different data a user environment, as well as fresh FreeBSD, which integrates centers. If a node fails, its functions SPACE FLIGHT SIMULATOR: versions of , LXDE, Cinnamon additional protection mechanisms are picked up on the fly by other and LXQt (GNOME and MATE are and techniques for countering nodes. Adding new nodes to the 08/01/2021 skipped due to the lack of exploitation of vulnerabilities. cluster and updating the Cassandra maintainers), as well as a version is done on the fly, without he Orbiter Space Flight minimalistic X.Org assembly based https://forum.opnsense.org/ additional manual intervention and T Simulator project has been on the Fluxbox window manager index.php?topic=24112.0 reconfiguration of other nodes. announced, offering a realistic and the "noX" assembly, supplied space flight simulator that complies without a graphical environment https://blogs.apache.org/ with the laws of Newtonian physics. APACHE CASSANDRA 4.0 IS for users who wish to build their foundation/entry/the-apache- The motivation for opening the own system. AVAILABLE: cassandra-project-releases code is the desire to provide the community with the opportunity to In the new release, the versions 07/29/2021 SEE - continue the development of the of the KDE Plasma 5.20.5 desktops https://www.youtube.com/watch? project after the author has been have been updated, LXQt 0.16.0, he Apache Software Foundation v=kOf29M8qFts unable to develop for several years T has presented Apache Cinnamon 4.8.6.2, Xfce 4.16 and for personal reasons. The project Cassandra 4.0 DBMS. It belongs to Lxde 11. The Linux kernel has been code is written in C++ with scripts in the class of noSQL systems and is updated to version 5.13.6, and the Lua and published under the MIT designed to create highly scalable system Systemd manager up to license. Only the Windows platform and reliable storage of huge data 247.3-6. The package base is in sync is currently supported, and full circle magazine #172 5 contents ^ NEWS compilation requires Microsoft enlargement of icons in the style of resolves the Fedora Project's containers. The distribution and Visual Studio. The published macOS or the Plank. Latte panel is comments regarding control components are written in sources are for the "2016 Edition" built on top of the KDE Frameworks incompatibility with the open Rust and are distributed under the with additional fixes. framework and the Qt library. source NPSL (GPLv2-based) license MIT and Apache 2.0 licenses. Integration with the KDE Plasma under which Nmap code is Supported systems for running The program offers models of desktop is supported. The project distributed. In the new version of Bottlerocket: Amazon ECS, both historical and modern code is distributed under the GPLv2 the license, the mandatory VMware, and AWS EKS Kubernetes spacecraft, and hypothetically license. requirement to purchase a separate clusters, as well as creating custom possible and fantastic spaceships. commercial license when using the builds and revisions that allow for a The key difference between The project is based on the code in proprietary software is variety of container orchestration Orbiter and computer games is that merger of similar panels in their replaced by recommendations for and runtime tools. the project does not offer any tasks - Now Dock and Candil Dock. using the OEM licensing program missions, but provides an After the merger, the developers and the possibility of buying a The distribution provides an opportunity to simulate a real tried to combine the two into a new commercial license if the atomically and automatically flight, covering such tasks as one, which works separately from manufacturer does not want to updated indivisible system image calculating an orbit, docking with the Plasma , proposed in open the code of his product in that includes the Linux kernel and a other vehicles and planning a flight Candil, with the high-quality accordance with the requirements minimal system environment that path to other planets. The interface design inherent in Now of the copyleft license or intends to includes only the components simulation uses a fairly detailed Dock and using only the KDE and integrate Nmap into products needed to run containers. The model of the solar system. Plasma libraries without third-party incompatible with the GPL environment uses the systemd dependencies. system manager, Glibc library, https://www.orbiter-forum.com/ https://seclists.org/nmap-announce/ Buildroot build toolkit, GRUB threads/orbiter-is-now-open- https://psifidotos.blogspot.com/ 2021/3 bootloader, wicked network source.40023/ 2021/08/latte-dock-v0100-official- configurator , runtime for isolated stable-release.html containerd containers , Kubernetes LATTE DOCK 0.10 BOTTLEROCKET 1.2, container orchestration framework, NMAP 7.92 RELEASED: aws-iam-authenticator, and Amazon RELEASED: ISOLATED CONTAINER ECS agent. 08/07/2021 DISTRIBUTION RELEASED: 08/07/2021 Most of the system components he release of the Nmap 7.92 08/08/2021 are written in Rust, which provides fter two years of development means for safe memory handling to the Latte the Dock 0.10 is out, T network security scanner is A available, designed to audit a ottlerocket 1.2.0 is now avoid vulnerabilities caused by offering an elegant and simple available, developed with the accessing a memory area after it is solution for managing tasks and network and identify active B network services. The new release participation of Amazon to freed, dereferencing null pointers, plasmoids. This includes effects like efficiently and safely run isolated and overflowing buffer boundaries. full circle magazine #172 6 contents ^ NEWS Encryption . The game's source code was TOR BROWSER 10.5.4 AND released by Wildfire Games under https://github.com/bottlerocket-os/ TAILS 4.21: bottlerocket/releases/tag/v1.2.0 The system is characterized by the GPL after 9 years of low resource consumption and the development as a proprietary 08/10/2021 use of a multi-process architecture product. The game is available for RELEASE OF THE P2P to ensure isolation between Linux (Ubuntu, , Debian, he specialized distribution Tails PLATFORM GNUNET 0.15.0: components. Flexible means of openSUSE, Fedora and Arch Linux), 4.21 (The Amnesic Incognito logging and statistics accumulation FreeBSD , OpenBSD, macOS and T Live System), based on Debian and 08/09/2021 are provided. For the development Windows. The current version designed to provide anonymous of final applications, GNUnet supports network play and single- access to the , has been he GNUnet 0.15 framework, provides APIs for the C language player game with bots on pre- released. Anonymous logging into T intended for building secure and bindings for other modeled or dynamically created Tails is provided by the Tor system. decentralized P2P networks, is out. programming languages. To maps. The game spans over ten All connections, except for traffic Networks created using GNUnet do simplify development, it is civilizations ranging from 500 BC to through the Tor network, are not have a single point of failure suggested to use event loops and 500 AD. blocked by the packet filter by and are able to guarantee the processes instead of threads. It default. Encryption is used to store privacy of users, including includes a test library for the Non-code-related components user data between runs. A 1 GB iso excluding possible abuse by special automatic deployment of of the game, such as graphics and image has been prepared for services and administrators who experimental networks covering sound, are licensed under a downloading, capable of working in have access to network nodes. tens of thousands of peers. Creative Commons BY-SA license Live mode. for modification and use in GNUnet supports the creation https://gnunet.org/en/news/2021- commercial products, provided that The new release has updated of P2P networks over TCP, UDP, 08-0.15.0.html derivative works are credited and versions of Tor Browser 10.5.4 and HTTP / HTTPS, Bluetooth and redistributed under a similar Thunderbird 78.12. The installer has WLAN, and can work in F2F (Friend- license. The game engine 0 AD has 25TH ALPHA RELEASE solved the problem with to-friend) mode. NAT traversal is about 150 thousand lines of code in permanent data deletion when the supported, including using UPnP AVAILABLE 0 AD: C++, OpenGL is used to display 3D "Cancel" button is selected during and ICMP. A distributed hash table graphics, OpenAL is used to work manual update of the distribution. (DHT) can be used to address data 08/09/2021 with sound, and ENet is used to allocation. Means for deploying organize a network game. mesh networks are provided. To he twenty-fifth alpha release of At the same time, a new version of the Tor Browser 10.5.4 was selectively grant and revoke access T the 0 AD - a free game has been https://play0ad.com/new-release-0- released, focused on ensuring rights, a decentralized exchange of published. It is a real-time strategy a-d-alpha-25-yauna/ identification attributes reclaimID game with high-quality 3D graphics anonymity, security and privacy. is used , using GNS (GNU Name and gameplay very similar to the The release is synchronized with System) and Attribute-Based games in the Age of Empires series. the Firefox 78.13.0 ESR codebase, full circle magazine #172 7 contents ^ NEWS which has fixed 10 vulnerabilities. from the project's website , enter 0 THUNDERBIRD 91 MAIL They also updated NoScript to in the field with the donation THE TENTH ALT PLATFORM: LIENT ELEASED 11.2.11. amount). C R : 08/11/2021 08/12/2021 https://tails.boum.org/news/ When developing the original version_4.21/ components of Elementary OS, LT (p10) - a new stable branch, year after the publication of GTK3, Vala language and Granite's based on a repository of free the last major release, the e- own framework are used. A A RELEASE OF ELEMENTARY software Sisyphus, is out. The mail client Thunderbird 91, as Elementary OS 6 is compatible with platform is designed to develop, developed by the community and OS 6: Ubuntu 20.04 at the package level test, distribute, update and support based on Mozilla technologies, is and repository support. The complex solutions at all levels - out. The new release is categorized 08/11/2021 16:36 graphical environment is based on from embedded devices to as a version with long-term the proprietary shell, enterprise servers and data centers; support, updates for which are lementary OS 6, positioned as a which combines such components created and developed by the ALT released throughout the year. E fast, open and privacy-friendly as the Gala window manager (based Linux Team , supported by the Thunderbird 91 is based on the ESR alternative to Windows and macOS, on LibMutter), the WingPanel top Basalt SPO company . codebase for Firefox 91. The is out. The main focus of the panel, the Slingshot launcher, the release is available for direct project is on quality design aimed Switchboard control panel, the http://basealt.ru/about/news/ download only, automatic updates at creating an easy-to-use system Plank lower taskbar (the Docky archive/view/desjataja-platforma- from previous releases to version that consumes minimal resources panel rewritten in Vala) and the proekta-sizif-novyi-vitok-ehvolju/ 91.0 are not provided and will only and provides a high start-up speed. session manager Pantheon Greeter be generated in version 91.2. Users are offered their own (based on LightDM). Pantheon . https://www.thunderbird.net/en- Bootable iso-images (2.36 GB) are https://blog.elementary.io/ US/thunderbird/91.0/releasenotes/ available for the amd64 elementary-os-6-odin-released/ architecture (for free download

POSTGRESQL UPDATE WITH VULNERABILITY FIX:

08/12/2021

orrective updates have been C generated for all supported PostgreSQL branches: 13.4 , 12.8 ,

full circle magazine #172 8 contents ^ NEWS 11.13 , 10.18 and 9.6.23. Updates developed by the KDE Project, is only actively developed Debian https://lists.debian.org/debian- for branch 9.6 will be generated out. As a reminder, the KDE platform based on a non-Linux hurd/2021/08/msg00040.html until November 2021, 10 until Consolidated Application Kit has kernel (a port of Debian GNU / November 2022, 11 until November been published since April under KFreeBSD was previously ARDOR 6.9 FREE SOUND 2023, 12 until November 2024, 13 the name KDE Gear, instead of KDE developed, but it has long been until November 2025. Apps and KDE Applications. In total, abandoned). The GNU / Hurd EDITOR RELEASED: within the framework of the platform is not one of the officially The new versions offer 75 fixes update , releases of 226 programs, supported architectures for Debian 08/14/2021 and fix the CVE-2021-3677 libraries and plugins have been 11, so Debian GNU / Hurd 2021 is vulnerability, which allows reading published . Information on the released separately and has the rdor 6.9 , intended for the memory of a server process availability of Live images with new status of an unofficial Debian A multichannel recording, through a specially crafted request. releases of applications can be release. Prebuilt images provided processing and mixing of sound, is The attack can be carried out by any found on this page: https:// with a specially crafted graphical out. Ardor provides a multitrack user with access to execute SQL community.kde.org/Plasma/ installer, and packages are currently timeline, an unlimited rollback level queries. Only PostgreSQL branches LiveImages only available for the i386 for the entire duration of working 11, 12 and 13. Known attack architecture. The NETINST with a file (even after closing the variants do not affect https://kde.org/announcements/ installation images, CDs and DVDs, program), and support for a variety configurations with the gear/21.08.0/ as well as an image for launching in of hardware interfaces. The max_worker_processes = 0 setting, virtualization systems are prepared program is positioned as a free alternative to professional tools but it is possible that there are DEBIAN GNU / HURD 2021 for downloading . options that do not depend on this like ProTools, Nuendo, Pyramix and setting. AVAILABLE: GNU Hurd is a kernel developed Sequoia. The code is distributed as a replacement for the Unix under the GPLv2 license. Linux https://www.postgresql.org/about/ 08/14/2021 kernel and is designed as a set of prebuilt builds are available in news/postgresql-134-128-1113- servers running on top of the GNU Flatpak format . 1018-9623-and-14-beta-3-released- he release of the Debian GNU / Mach microkernel and 2277/ T Hurd 2021 distribution, which implementing various system https://discourse.ardour.org/t/ combines the Debian software services such as file systems, ardour-6-9-released/106273 environment with the GNU / Hurd RELEASE OF KDE GEAR networking stack, and file access kernel, is out. The Debian GNU / control system. The GNU Mach 21.08: Hurd repository contains microkernel provides an IPC approximately 70% of the total mechanism used to organize the 08/13/2021 Debian archive size, including interaction of GNU Hurd ported Firefox and Xfce. components and build a distributed he August Cumulative Update multiserver architecture. T of Applications (21.08) Debian GNU / Hurd remains the full circle magazine #172 9 contents ^ NEWS DEBIAN 11 "BULLSEYE" source packages), which is about conferencing over the Web, as well PostgreSQL can be used as a DBMS. 1848 packages more than what was as collaboration and messaging RELEASED: proposed in Debian 10. Compared between participants. Both https://blogs.apache.org/ to Debian 10, 11294 new binaries webinars with one speaker and openmeetings/entry/ 08/15/2021 were added, 9519 (16%) obsolete conferences with an arbitrary openmeetings-v6-1-0-webrtc or abandoned packages were number of participants interacting fter two years of development removed, 42821 updated (72%) with each other are supported. The the Debian the GNU / the Linux A packages. The total total size of all project code is written in Java and 11.0 ( Bullseye ), available for nine THE PINE64 PROJECT sources offered in the distribution distributed under the Apache 2.0 of officially supported is 1,152,960,944 lines of code. 6208 license. INTRODUCED THE PINENOTE architectures : Intel IA-32 / x86 developers took part in the E-BOOK: (i686), AMD64 / x86-64, ARM EABI preparation of the release. Additional features include: (armel), 64-bit ARM (arm64 ), tools for integrating with a 08/16/2021 ARMv7 (armhf), mipsel, mips64el, For 95.7% of packages, support calendar-scheduler, sending PowerPC 64 (ppc64el) and IBM for repeatable builds are provided, individual or broadcast notifications he Pine64 community, unveilled System z (s390x). Updates for which allows you to confirm that and invitations, sharing files and the PineNote e-book, equipped Debian 11 will be released for 5 T the executable file is built exactly documents, maintaining the with a 10.3-inch e-ink screen. The years. from the declared sources and does address book of participants, device is based on a Rockchip not contain extraneous changes. keeping an event protocol, jointly RK3566 SoC with a quad-core ARM Installation images, can be scheduling tasks, broadcasting the Cortex-A55 processor, AI- downloaded on the HTTP , jigdo or https://www.debian.org/News/ output of running applications accelerator RK NN (0.8Tops) and BitTorrent . Also, an unofficial 2021/20210814 (screencast demonstration), GPU Mali G52 2EE (OpenGL ES 3.2, nonfree installation image has been conducting polls and polls. Vulkan 1.1, OpenCL 2.0), which generated, which includes makes the device one of the proprietary firmware. For amd64 One server can serve an highest performing devices in its and i386 architectures, LiveUSB has APACHE OPENMEETINGS 6.1 arbitrary number of conferences class. PineNote is currently in a been developed, available in WEB CONFERENCING SERVER held in separate virtual conference preproduction prototype stage. It is variants with GNOME, KDE, LXDE, RELEASED: rooms and including its own set of scheduled to go on sale this year Xfce, Cinnamon and MATE, as well participants. The server supports for $ 399. PineNote software is as a multi-architecture DVD that 08/16/2021 flexible permissions management based on Linux - support for the combines packages for the amd64 tools and a powerful conference Rockchip RK3566 SoC is already platform with add-on packages for he Apache Software Foundation moderation system. Management included in the main Linux kernel the i386 architecture. T has announced the release of and interaction of participants is during the development of the the Apache OpenMeetings 6.1, a carried out through the web Quartz64 board. The e-paper There are 59551 binary web conferencing server which interface. OpenMeetings code is screen driver is still under packages in the repository (42821 enables audio and video written in Java. MySQL and development but will be ready for full circle magazine #172 10 contents ^ NEWS production. The first batches are for the Slackware 15.0 distribution, the GCC 11.2 compiler set, and the "retroactively", implicit hashing of planned to be released with which marked the freeze of most Glibc 2.33 system library. Desktop the entire previous history in each Manjaro Linux preinstalled and packages prior to release and a components have been updated to commit is used, and it is also Linux 4.19 kernel. They plan to use focus on the remaining release- KDE Plasma 5.22 and KDE Gear possible to certify with digital KDE Plasma Mobile or a slightly blocking bugs. An installation image 21.08. signatures, the developers of modified KDE Plasma desktop of 3.1 GB in size (x86_64) is individual tags and commits. desktop as a custom shell. prepared for download, as well as a http://www.slackware.com/ However, the development has not minimal image for running in Live changelog/current.php?cpu=x86_64 Compared to the previous yet been completed and the final mode. release, 649 changes were adopted software filling will depend on how GIT 2.33 SOURCE CONTROL in the new version, prepared with the selected technologies behave Slackware has been around since the participation of 74 developers, on the screen based on electronic 1993 and is the oldest distribution RELEASED: of which 19 took part in the paper. in existence. The distribution's development for the first time. features are its lack of 08/17/2021 https://www.pine64.org/ complications and a simple init https://lkml.org/lkml/ 2021/08/15/introducing-the- system in the style of classic BSD fter two months of 2021/8/16/1323 pinenote/ systems, which makes Slackware an A development, the release of interesting solution for learning the distributed source control system Git 2.33 was published. Git A NEW PALE MOON SLACKWARE 15 RC how Unix-like systems work, experimenting and getting to know is one of the most popular, reliable BROWSER VERSION: PUBLISHED: Linux. and high-performance version control systems, providing flexible 08/18/2021 08/16/2021 Slackware 15 has updated non-linear development tools versions of software, including the based on branching and merging. release of the Pale Moon 29.4 atrick Volkerding announced upgrade to the Linux 5.13 kernel, To ensure the integrity of history A web browser is now available, a P testing of the release candidate and resistance to changes fork of the Firefox codebase to provide better performance, preserve the classic interface, minimize memory consumption, and provide additional customization options. Pale Moon builds are available for Windows and Linux (x86 and x86_64). The project code is distributed under the MPLv2 license (Mozilla Public License).

full circle magazine #172 11 contents ^ NEWS The development of the GNOME without exception, including well as provide better filtering The project adheres to the 2.32 code base has been continued corporate users. For enterprises quality. The system code is written classic layout of the interface, while maintaining the classic requiring additional services, the in C and is distributed under the without switching to the Australis desktop. Installation packages with LibreOffice Enterprise family Apache 2.0 license. The major interface integrated into Firefox 29, MATE 1.26 will soon be ready for products are separately developed, increase in the version number is and providing ample customization the Linux Arch, the Debian, of for which partner companies will due to significant changes in the options. Remote components Ubuntu, the Fedora, the openSUSE , provide full support, the ability to internal architecture, specially in include DRM, Social API, WebRTC, the ALT and other distributions. receive long-term updates (LTS) and the parts that ensure the parsing of PDF viewer, Crash Reporter, code additional functions such as SLA HTML, which have been completely for collecting statistics, parental https://mate-desktop.org/blog/ (Service Level Agreements). rewritten. The new parser parses controls, and people with 2021-08-08--1-26-released/ HTML using the DOM and forming a disabilities. Compared to Firefox, https:// tag tree. The new release also the browser retains support for LIBREOFFICE 7.2 RELEASED: blog.documentfoundation.org/blog/ introduces a CSS parser that, when XUL technology and retains the 2021/08/19/libreoffice-7-2- combined with the new HTML ability to use both full-fledged and 08/19/2021 community/ parser, allows you to correctly lightweight themes. Pale Moon is extract data from emails with built on the UXP (Unified XUL he Document Foundation has RSPAMD 3.0 SPAM FILTERING modern HTML markup, including Platform) platform, where the distinguishing between visible and T presented the release of AVAILABLE: Firefox components are forked LibreOffice 7.2. Ready-made invisible content. It is noteworthy from the Mozilla Central repository, that the parser code is written not installation packages are prepared 08/19/2021 free of bindings to the Rust code for various Linux, Windows and in C, but in C++ 17, which requires a and not including the work of the compiler with support for this macOS distributions. In preparation he spam filtering system Quantum project. standard. for the release, 70% of the changes T Rspamd 3.0 is out, which were made by people in charge of provides tools for evaluating https://forum.palemoon.org/ https://rspamd.com/announce/ the project, such as Collabora, Red messages according to various viewtopic.php?t=27260&p=219173 2021/08/19/rspamd-3.0.html Hat, and Allotropia, and 30% of the criteria, including rules, statistical changes were contributed by methods and blacklists, on which MATE 1.26 RELEASED: independent enthusiasts. the final message weight is formed, MANJARO LINUX 21.1.0 which is then used to decide DISTRIBUTION RELEASED: 08/19/2021 The LibreOffice 7.2 release is whether to block it or not. Rspamd tagged as "Community", will be supports almost all of the 08/19/2021 fter a year and a half of supported by enthusiasts, and is capabilities of SpamAssassin, and A development, the release of not intended for enterprise use. has a number of features that allow he release of the Manjaro Linux the MATE 1.26 desktop LibreOffice Community is available you to filter mail on average 10 T distribution, built on Arch Linux environment has been published. without restrictions to everyone times faster than SpamAssassin, as and aimed at novice users, was full circle magazine #172 12 contents ^ NEWS announced. The distribution is RELEASE OF BUSYBOX 1.34: https://busybox.net/news.html The filtering rules and protocol- notable for the presence of a specific handlers are compiled into simplified and user-friendly 08/20/2021 PACKET FILTER user-space bytecode, after which installation process, support for this bytecode is loaded into the ELEASED automatic hardware detection and The release of the BusyBox 1.34 1.0.0 R : kernel using the Netlink interface installation of the drivers necessary package is presented with the and executed in the kernel in a 08/20/2021 for its operation. Manjaro comes in implementation of a set of special virtual machine resembling live builds with the KDE (3 GB), standard UNIX utilities, designed in BPF (Berkeley Packet Filters). This he nftables 1.0.0 packet filter GNOME (2.9 GB) and Xfce (2.7 GB) the form of a single executable file approach allows you to significantly has been released, which unifies graphical environments. Builds with and optimized for minimum T reduce the size of the filtering code the packet filtering interfaces for Budgie, Cinnamon, Deepin, LXDE, consumption of system resources working at the kernel level and IPv4, IPv6, ARP, and network LXQt, MATE and i3 are additionally when the package size is less than 1 move all the functions of parsing bridging (aims to replace , developed with community MB. The first release of the new rules and logic for working with ip6table, arptables, and ebtables). participation . 1.34 branch is positioned as protocols into user space. Changes necessary for the release unstable, full stabilization will be of nftables 1.0.0 to work are To manage repositories, provided in version 1.34.1, which is https://www.mail-archive.com/ included in the Linux 5.13 kernel. A Manjaro uses its own BoxIt toolkit, expected in about a month. The netfilter- major change in the version number designed in the same way as Git. project code is distributed under [email protected]filter.org/ is not associated with any cardinal The repository on a rolling basis, the GPLv2 license. BusyBox is the msg00231.html changes, but is only a consequence but new versions go through an main tool in the fight against GPL of the sequential continuation of additional stage of stabilization. In violation in firmware. The Software numbering in decimal (the last OPENNSSH 8.7 RELEASED: addition to its own repository, Freedom Conservancy (SFC) and the release was 0.9.9). The nftables there is support for using the AUR Software Freedom Law Center package contains user-space packet 08/20/2021 (Arch User Repository) repository. (SFLC), on behalf of BusyBox filter components, while the The distribution is supplied with a developers, have repeatedly nf_tables subsystem, which has fter four months of graphical installer and a graphical successfully influenced companies been part of the Linux kernel since A development, OpenSSH 8.7 is interface for configuring the that do not provide access to the release 3.13, provides kernel-level presented, an open system. source code of GPL programs functionality. At the kernel level, implementation of a client and through the courts and through the only a generic interface is provided server for working with the SSH 2.0 https://forum.manjaro.org/t/ conclusion of out-of-court that is protocol agnostic and and SFTP protocols. manjaro-21-1-0-pahvo-released/ agreements. At the same time, the provides basic functions for 78663 author of BusyBox strongly objects extracting data from packets, Notably: An experimental data to such protection, believing that it performing data operations, and transfer mode has been added to breaks his business. controlling flow. scp using the SFTP protocol instead of the traditionally used SCP / RCP

full circle magazine #172 13 contents ^ NEWS protocol. SFTP uses a more translation of DirectX calls to the technologies are used, based on the SHATTERED PIXEL DUNGEON predictable method of handling Vulkan API, provides improved use of cgroups, namespaces, ELEASED names and does not use shell glob support for game controllers and Seccomp and SELinux. To perform 1.0 R : template processing on the other the ability to use full screen mode privileged operations on 08/21/2021 host's side, which poses a security regardless of supported in games configuring the container, problem. The "-s" flag has been screen resolutions. " Esync Bubblewrap is launched as root (an he release of Shattered Pixel proposed to enable SFTP in scp, but " (Eventfd Synchronization) and " executable file with a suid flag) and Dungeon 1.0, a turn-based in the future it is planned to switch futex / fsync " mechanisms are then reset privileges after the T game in the roguelike genreis out. to this protocol by default. supported to increase the initialization of the container is It offers dynamically generated performance of multi-threaded complete. The key difference from dungeon levels, collecting artifacts, https://lists.mindrot.org/pipermail/ games the similar Firejail project, which training a character and defeating openssh-unix-dev/2021-August/ also uses a setuid launch model, is monsters. The game uses pixel 039543.html https://github.com/ValveSoftware/ that in Bubblewrap the layer for graphics. The code is written in the Proton/releases/tag/proton-6.3-6b creating containers includes only Java language and is distributed the necessary minimum of VALVE RELEASES PROTON under the GPLv3 license. Launch capabilities, and all the advanced files are prepared for Android, iOS 6.3-6: functions necessary for launching BUBBLEWRAP 0.5.0, and desktop systems. graphical applications, interacting 08/21/2021 SANDBOXES FOR CREATING with the desktop and filtering calls Release 1.0 is marked as the first ISOLATED ENVIRONMENTS to Pulseaudio, moved to the : full-fledged release of the project, alve published Proton 6.3-6 , Flatpak side and are executed after which is no longer marketed as V which is based on Wine and 08/21/2021 the privileges are dropped. Firejail, unfinished. The game offers a aims to get games and applications on the other hand, combines all the choice of four types of characters to run on Linux, designed for ubblewrap 0.5.0 sandboxed related functions in one executable (warrior, magician, robber and Windows and presented in the environment is available, file, which makes it difficult to audit B huntress), each of which has Steam directory. The code is typically used to restrict individual and maintain security at the proper strengths and weaknesses. In turn, distributed under the BSD license. applications of unprivileged users. level . a character, depending on In practice, Bubblewrap is used by experience, can occupy one of 8 Proton allows you to directly run the Flatpak project as a layer to https://github.com/containers/ subclasses. Additionally, over 100 Windows-only gaming applications isolate bundled applications. The bubblewrap/releases/tag/v0.5.0 talents are offered to enhance the on the Steam Linux client. The project code is written in C and is player and 13 separate abilities that package includes the distributed under the LGPLv2+ provide special strength in the final implementation of DirectX 9/10/11 license. (based on the DXVK package ) and battle. More than 100 types of weapons and equipment are DirectX 12 (based on vkd3d- For isolation, traditional Linux available. The player is invited to go proton ), working through container virtualization full circle magazine #172 14 contents ^ NEWS through 26 underground floors with unique enemies and level schemes. There are over 60 types of enemies, 30 traps and 5 main villains. https://shatteredpixel.com/blog/ shatteredpd-v100-and-ios- release.html

full circle magazine #172 15 contents ^ full circle magazine #172 16 contents ^ The VirtualBox Networking Primer Connecting and Configuring Virtual Machines

The VirtualBox Networking Primer is a no-nonsense guide for the VirtualBox user taking their next steps into virtual networks.

While Oracle VM VirtualBox is a great free tool, the real power of virtualisation comes when you start connecting virtual machines to each other and to the wider world. Software development, sales, education and training are just some of the areas in which network access to virtual machines offers endless opportunities. But the world of computer networks is filled with complex technical jargon.

Complete with principles, practice, examples and glossary, The VirtualBox Networking Primer takes the frustration and confusion out of connecting real-world projects.

Author: Robin Catling Publisher: Proactivity Press ISBN13 : 9781916119482

Amazon US link: https://www.amazon.com/dp/1916119484? ref_=pe_3052080_397514860

Amazon UK link: https://www.amazon.co.uk/VirtualBox-Networking-Primer- Connecting-Configuring/dp/1916119484/ref=sr_1_1? dchild=1&keywords=virtualbox+networking+primer&qid=16002536 99&s=books&sr=1-1

Kobo: https://www.kobo.com/us/en/ebook/the-virtualbox-networking- primer full circle magazine #172 17 contents ^ CCOOMMMMAANNDD && CCOONNQQUUEERR LMMS Pt.8 Written by Erik LMMS Pt.8

hope you have paid attention to to add it ot the base side, so you are time. What I like about LMMS on I the last two issues, as this month not limited to the drop down list on Ubuntu is that I get tw icons in my we will be steaming ahead. If you the base side. If you are unsure of dock when working with Zyn, and it did not, I strongly advise that you what you can actually do, then makes it easy to switch back and do. However, to avoid confusion, we there is a button for that too... :) forth to get to my Zyn GUI so I can are looking into ZynaddsubFX (Zyn tinkle on the piano keys to hear from now on) that comes with The button is ‘wsh’ – short for what my changes sound like. BTW, I LMMS. I want you to know that as wave shaper. Right next to the ’use use with plank, mileage ugly as Zyn is, (Ugly as Zyn… OK, I’ll as base’ and to let you mess with it, may vary on other docks. However, see myself out) you can make it has a knob. Oooh more knobs! the point I was getting to, is that Now on top of this, there is a almost any synth out there on the Well, pass me that spoon Pinky, this you need to play with it to ‘get’ it. I filter to the right of it, that you can market with this. Not kidding! is brain surgery, not rocket science. am not referring to you guys with apply to your harmonics, with a list Yes, you will have to remember degrees in music, but us regular of the usual suspects, HP for high Fire up LMMS and let’s start! which knobs you turned in the plebs. The switching back-and-forth pass, LP for low pass and so forth. hundreds that there are if you will allow you to hear the subtle The filter pre-sets have their own So how do we use what we have bungle it, so small changes at a changes your tweaks make. buttons again, allowing you to learned so far? By doing, of course! tweak even more! See, I told you Please navigate to the addsynth that you can create almost any oscillator editor and lets discuss the other synth in Zyn. To the right of base vs harmonics and all the that you will see ‘mod’ – it does related buttons an knobs, as they modify the sound, but it is actually are really daunting for someone short for modulation. Again, you who has never played with them. I need to play with these to know I had a hard time, so I hope to understand what the sound ease it for the next guy. The base is changes to, but you can think of if on your right, but say you have as granularity as you move to the done something with the right. You are tuning finer an finer harmonics side on the left that as we move right. (Not really 100%, interests you or sounds really good but think of it that way and you and you want to build on it, you can wont steer yourself wrong.) The then simply click the button below last one in the line is ‘sp. adj.’ which the harmonics marked, ‘use as base’

full circle magazine #172 18 contents ^ COMMAND & CONQUER is short for spectrum adjust. No turning knobs. The interesting one, pack away that Sinclair machine, it is the the ‘Sine’ button below it. It is not that type of Spectrum. takes your base function, converts it to a sine wave and applies your To the right of all the sliders, changes that you made to said sine you will see an ‘harmonic shift’ wave, regardless if the previous block. There is a catch to this one, base was square or triangle, etc. it used to be inverted. What I man by this is that is if you use an older If you are a perfectionist or have version, clicking the right arrow OCD and the like, I do not would move the harmonics to the recommend that you come here, as right and vice-versa. If you are on this is a time sink of note. I have version numbers greater than 1.0, spent hours here just fine tuning a then it works the other way around. saw wave, yes, a saw wave – laugh if (Right way?) Anyway, just be aware you must, but it is very addictive. of this when you have different versions, say a deb and a snap. I hope this demystifies some of Should you make a mistake, the ‘R’ the arb acronyms and button button is for reset. Yes, it gets a bit functions for you if you are a total hairy for newcomers, I know, I have newbie to LMMS and Zyn. been there, or should I say I am still there, as my music degree is As always, if I made a mistake, probably in still in the mail for life, please let us know at: but this really needs a UI makeover [email protected] to make it newbie-friendly. (But the where will FCM be bringing you all these lovely informational snippets, if it was simple?) You can probably guess that ‘adpt harm’ below that, is short for adapt harmonics. This is great for creating game sounds, Erik has been in IT for 30+ years. He hint-hint, nudge-nudge, wink-wink. has seen technology come and go. The clear button only clears the From repairing washing machine sized hard drives with multimeters and harmonics settings, so your base oscilloscopes, laying cable, to scaling and harmonic waves will stay as 3G towers, he's done it. they were before we started full circle magazine #172 19 contents ^ HHOOWW--TTOO Written by Greg Walters PPyytthhoonn IInn TThhee RREEAALL WWoorrlldd PPtt..112200

ell, I’ve made it. 10 full years Run the clock forward, and I Type W worth of Python articles in eventually added Visual Basic (both Str25 = String[25]; the series. Actually, it’s been over DOS and Windows versions) to my TBookRec = Record 10 years in calendar time, but as far toolkit of programming languages. Title, Author, ISBN : Str25; as articles are concerned, it’s 10 Visual Basic also had a similar user Price : Real; years worth. Thank you, dear defined type, but it was called a End; readers, for hanging in with me for structure. You would define the Var so long. structure like this: myBookRec : TBookRec;

Way back in the dawn of time, Public Structure TbookRec And then to put data into the record, we would do something like this. Public Title as String when rainbows were in black-and- Public Author as String Begin white, and we had to watch Public ISBN as String myBookRec.Title := ‘I Robot’; television by candlelight because Public Price as Decimal myBookRec.Author := ‘Isaac Asimov’; End Structure electricity hadn’t been invented • Namedtuples were introduced Next, you need to add a yet, one of the first programming Dim myBookRec as TbookRec back in Python 2.6 but decorator to start defining your languages I learned well was Pascal. TbookRec.Title = “I Robot” TbookRec.Author = “Isaac namedtuples, like any tuples, are class. The dataclass is like almost Along with everything else that Asimov” immutable. any other classes, but the __init__ Pascal had to offer, there was a • Dataclasses are easy to use, easy and __repr__ functions, as well as a data structure named Records. And on and on. When I came to to read, and are mutable. few other basic functions, are Records were special User Defined Python (it was back before 3.0 came automatically created for you. We’ll data types that would allow the out), there wasn’t a convenient data We’ll create a very simple (and take the structure from the programmer to set up a logical structure like these. Having done a unrealistic) small book store point discussion above... grouping of data using existing tonne of database work in my of sale demo. Here’s how to start primitive types line string, integers, previous projects, I was somewhat working with dataclasses. @dataclass reals, and so on. When we would at a loss. How could such a cool class TbookRec: define a record, it would look programming language like Python Title : str First, you have to import them Author : str something like this (top right). not have a structure like other into your project. They are a part of ISBN : str languages. Price : float the dataclasses library. And so on. We could use an array QtyOnHand : int of the records to maintain a very This month, we will be looking at from dataclasses import Notice I added a field, simple database type structure. dataclasses, something that was dataclass QtyOnHand in our example. This introduced back in Python 3.7: full circle magazine #172 20 contents ^ HOWTO - PYTHON makes it a bit more realistic but still def setup_structures(): minimal and a good way to demo myRec = TbookRec("I Robot", "Isaac Asimov", "978-0553382563", 6.79, 2) the dataclass. At this point, we myRecs.append(myRec) myRec = TbookRec("The Gentle Giants of Ganymede", "James P. Hogan", need to define an empty list to hold "978-0345298126", 6.11, 1) the record structures, and then myRecs.append(myRec) create our in memory “database” myRec = TbookRec("Raise The Titanic", "Clive Cussler", "978-0425194522", 9.99, 1) by creating various “books” that myRecs.append(myRec) will be in our imaginary store inventory. Now that we have that taken care of, we can create some simple functions to interact with the user. The first one will show a list of all the items in the “database” including the quantity on hand. Let’s call it “books” to keep myRecs = [] things simple.

To make things a bit cleaner, def books(): print(f'Number of Unique Books: {len(myRecs)}') we’ll create a function to do all the for rec in myRecs: “database” entries at one time. We print( f'Title: {rec.Title} Author: {rec.Author} Price: {rec.Price} Qty: load the data into the dataclass and {rec.QtyOnHand}' then append it to the myRecs list ) and “rinse and repeat”. I’ll show the creation of only three records, but When the function books is called, the output will look like this… in the demo file from the Number of Unique Books: 5 repository, I create five records. Title: I Robot Author: Isaac Asimov Price: 6.79 Qty: 2 The main thing I want to show here Title: The Gentle Giants of Ganymede Author: James P. Hogan Price: 6.11 Qty: 1 Title: Raise The Titanic Author: Clive Cussler Price: 9.99 Qty: 1 is that inserting data into a Title: The Hitchiker's Guide to the Galaxy Author: Douglas Adams Price: 6.83 Qty: 1 dataclass is simple. So simple in Title: The Restaurant at the End of the Universe Author: Douglas Adams Price: 7.99 Qty: 0 fact, that, assuming you maintain the order of variables, you don’t have to include the field names. If Now let’s create a function to def infoAuthor(author): you don’t keep the order of the found = False variables, you must include the search the recordset by author. for rec in myRecs: field names (top right). Again, this is not a realistic search if rec.Author == author: print( function, just a very simple one. The f'Title: {rec.Title} Author: So you should see that it’s not author name must be entered the {rec.Author} ISBN: {rec.ISBN} Price: {rec.Price} Qty: way it is when it was put into the {rec.QtyOnHand}' only easy to put data into the ) dataclass record structure, but also dataclass instances (bottom right). found = True to get the data that you want out if found == False: print(f'Could not find {author} in the database.') just as easily. The output of the search full circle magazine #172 21 contents ^ HOWTO - PYTHON function for Author looks like this... def infoTitle(title): found = False Title: The Hitchiker's Guide for rec in myRecs: to the Galaxy Author: if rec.Title == title: Douglas Adams ISBN: 978- print( 0345391803 Price: 6.83 f'Title: {rec.Title} Author: {rec.Author} ISBN: {rec.ISBN} Price: Qty: 1 {rec.Price} Qty: {rec.QtyOnHand}' ) Title: The Restaurant at the found = True End of the Universe Author: if found == False: Douglas Adams ISBN: 978- print(f'Could not find {title} in the database.') 1529034530 Price: 7.99 Qty: 0 def infoISBN(isbn): Now another simple function to for rec in myRecs: found = False search by book title. Remember, I’m if rec.ISBN == isbn: not trying to cover any typos, print( capitalization errors, etc. Just f'Title: {rec.Title} Author: {rec.Author} ISBN: {rec.ISBN} Price: {rec.Price} Qty: {rec.QtyOnHand}' trying to make it simple to show ) the ease of dealing with searching found = True if found == False: the data (top right). print(f'Could not find any books with the ISBN of {isbn} in the database.')

And it’s output is like this…

Enter Book Title -> I Robot Enter ISBN -> 978-1529034530 def sell(title): Title: I Robot Author: Title: The Restaurant at the found = False Isaac Asimov ISBN: 978- End of the Universe Author: for rec in myRecs: 0553382563 Price: 6.79 Douglas Adams ISBN: 978- if rec.Title == title: Qty: 2 1529034530 Price: 7.99 if rec.QtyOnHand > 0: ... Qty: 0 rec.QtyOnHand -= 1 Enter Book Title -> Raise The print(f'There are now {rec.QtyOnHand} book(s) left in stock.') Titanic Now that we’ve covered the Title: Raise The Titanic else: Author: Clive Cussler ISBN: simple search functions, it only print('There is no stock of this title to 978-0425194522 Price: makes sense to add a function to sell!') 9.99 Qty: 1 found = True “sell” one of our books. This also if found == False: shows how easy it is to modify one print(f'Could not find {title} in stock.') We’ll create one more very of the dataclass items. We’ll “sell” here is the output. (As my sainted simple search function, this time by one of our two copies of “I Robot”. ISBN (bottom right). mother would say, “Do as I say do, not as I do do.”) While not grammatically correct, The output is as follows: full circle magazine #172 22 contents ^ HOWTO - PYTHON Enter Title ->I Robot There are now 1 book(s) left def work(): in stock. quitit = False while quitit == False: print( And just to make sure, you can "1 - Find book by Title 2 - Find book by Author 3 - Find book by ISBN 4 - call for a refresh of the book data, Show All Books 5 - Sell A Book 0 - Quit", end='') the list of books shows that we did resp = input(' -> ') in fact decrement the quantity-on- if resp == "0": hand for that book by calling the quitit = True if resp == "1": book function. resp = input('Enter Book Title -> ') infoTitle(resp) Number of Unique Books: 5 if resp == "2": Title: I Robot Author: Isaac resp = input('Enter Author name -> ') Asimov Price: 6.79 Qty: 1 infoAuthor(resp) Title: The Gentle Giants of if resp == "3": Ganymede Author: James P. resp = input('Enter ISBN -> ') Hogan Price: 6.11 Qty: 1 infoISBN(resp) Title: Raise The Titanic if resp == "4": Author: Clive Cussler Price: books() 9.99 Qty: 1 if resp == "5": Title: The Hitchiker's Guide resp = input('Enter Title ->') to the Galaxy Author: sell(resp) Douglas Adams Price: 6.83 Qty: 1 discussion and guide at Real Python Title: The Restaurant at the End of the Universe Author: (https://realpython.com/python- Douglas Adams Price: 7.99 data-classes/) written by Geir Arne Qty: 0 Hjelle.

Now, last but not least, let’s You’ll be able to find the code create a “work” loop that offers a for this month’s article at my github Greg Walters is a retired simple menu to handle the calls to repository at https://github.com/ programmer living in Central Texas, the various functions (top right). gregwa1953/FCM-172 . USA. He has been a programmer since 1972 and in his spare time, he is an author, amateur photographer, So, I hope you find the use of Until next time, as always; stay luthier, fair musician and a pretty dataclasses helpful in your future safe, healthy, positive and creative! darn good cook. He still is the owner projects. of RainyDaySolutions a consulting company and he spends most of his time writing articles for FCM and If you want to learn more about tutorials. His website is Python dataclasses, you would do www.thedesignatedgeek.xyz . well to check out the really good full circle magazine #172 23 contents ^ HHOOWW--TTOO Written by Erik EEtteerrnnaall TTeerrmmiinnaall

remote server. sudo add-apt-repository This will kill those background ppa:jgmath2000/et Latex will return next month. To terminate your connection, processes and start your sudo apt update the same as with SSH, just press connection fresh. CTRL + d. sudo apt install et Website: https:// This is handy if you have eternalterminal.dev/ The catch is that it requires et to HOW IT WORKS somewhere you need to connect be installed on BOTH sides, client where the WiFi is bad, like in a Github: https://github.com/ and server. To check if it is running You connect to the remote warehouse or area with a lot of MisterTea/EternalTerminal on your server simply type: machine via SSH in the background interference. Though many of you and once you have a connection, may ask, why would you need it, if systectl status et you continue as normal. Now, when you have SSH TMUX and screen? o my eye caught an article the connection drops, the terminal The problem with those three, is S (https://ostechnix.com/eternal- Tip: By default Eternal Terminal no longer echo’s what you type. If that, when you start to drop terminal-remote-shell- uses port 2022, so be sure it is you did not look when this packets like it is nobody’s business, automatically-reconnects-without- open. SSH must be installed, happened, the keystrokes you they will hang. On a stable interrupting-session/) It is like working and running. typed are kept in a buffer until the connection, the above trifecta will MOSH, but with scrolling. connection resumes, so not all hope work flawlessly. You use et the same way that is lost. There is no saving grace I was looking up persistent SSH you use SSH. should your power trip though, so it NOW FOR THE TESTING connections for hand held scanners is not a magic bullet. – a big problem we have at work – The syntax of the command is The scanners we have are a and I thought it may be fun to try it Because et tries it’s level best to mixed bag, going back as far as out. However, the article above et username@: keep that connection, if something {port] . Windows XP CE up to Honeywell seemed a little Arch Linux oriented happens on your side, you need to android and then everything in and terse, so I thought you may like kill that connection and start over. To connect to a remote machine, between. an Ubuntu beginners version: The way to do it is with -x. you only need to provide the port number if you changed the default. The testing ended abruptly as et Installation on Ubuntu is as Specifically: If no user name is provided, the tool was not considered to be mature simple as adding a PPA. For those enough, even though the project of you that don’t like PPA’s, you can uses the current user name on the et -x username@: host machine to connect with the {port] has been around for four years. build it from scratch too. (and thus not allowed on the full circle magazine #172 24 contents ^ HOWTO - ETERNAL TERMINAL network) Did we make a mistake? Tell us However, we did go ahead and on [email protected] test it on a different network with a test server and an Ubuntu PC. Simulating a bad network, by turning the output on the router to its lowest possible setting and moving the PC out of range, I am happy to report that it did work, even recording all our scans from the USB hand-held scanner we used for input.

To the developers, great work! We need an android-compatible version please.

We did not test an IP change, time caught up to us, but that is what the application was designed for, so it should work.

Here is basically all you need to know, so I will not rehash it. https://eternalterminal.dev/ howitworks/

And more reading for those of you who would like to know the differences of the products Erik has been in IT for 30+ years. He mentioned above: https:// has seen technology come and go. grassfedcode.medium.com/what- From repairing washing machine sized could-be-better-than-ssh- hard drives with multimeters and oscilloscopes, laying cable, to scaling e69561ec1b83 3G towers, he's done it.

full circle magazine #172 25 contents ^ HHOOWW--TTOO Written by Alan Ward MMaakkee AA NNeettwwoorrkk PPrriinntt SSeerrvveerr

his will be a short note on how Although the Laserjet 2100 is a fine physical Ethernet cable (red) to delve here into setting up the T to connect a printer to your printer, its connectivity is limited to connect the RPi to my home router, network on the RPi since such network using a Raspberry Pi. It is a single parallel port. Remember and a spare USB cable and matters are very well explained in not meant to be a full tutorial, but back when? I am sure older readers telephone charger (white) to power the official documentation (https:// rather some quick notes that may will, but youngsters may struggle the RPi. That was the hardware side www.raspberrypi.org/ help you, the reader, if you find with the concept. Anyway, the of things taken care of. documentation/). In particular, I yourself in the same position I was. printer came with a parallel port-to- would like to point you to the page USB converter cable that works The operating system I already on setting up Wireless networking, I happen to be the proud owner very well. I also had a spare had on the SD card in my RPi was which may be of interest if using a of a HP Laserjet 2100 printer. This is Raspberry Pi lying around, and so Raspberry Pi OS, previously known RPi version 3 or 4. These have a a now ancient 1999-era piece of was all set to plug the hardware in as Raspbian. Based on Debian built-in WiFi chip, and can connect equipment that prints a tad more and build myself a 1999/2021 “Buster