Customize an Intel NUC 11

In the previous year, I acquired a Hewlett-Packard DevOne to replace an Intel NUC 10, which had been serving as my primary workstation. I set up the DevOne with a docking solution detailed in an article I wrote last year, aiming to replace both the NUC and an older Darter Pro I had been using. However, I gradually realized that the DevOne wasn’t quite suitable for me due to its smaller fourteen-inch screen. Given my aging eyes, I needed to adjust accessibility settings, which work better with larger displays.

I must acknowledge that the DevOne is an impressive laptop—crafted with quality and firm performance. Nevertheless, the idea of docking a computer that I never use in a laptop mode started to seem less logical. After careful consideration, I recently decided to transition back to a dedicated desktop setup. Despite being four years old, I plan to retain the Darter Pro, which continues to serve me well during my travels and while assisting clients at their residences.

A lot of research for a bit of PC

Embarking on constructing your computer brings forth a distinct feeling of liberation. Instead of accepting pre-determined choices from a computer manufacturer, you can handpick each component that constitutes your system. Engaging in a do-it-yourself PC project entails an element of risk and adventure and lends a greater sense of accomplishment than a mere purchase.

I diligently conducted research to ensure the compatibility and viability of my selected NUC and its associated components. As part of this process, I switched from Pop!_OS 22.04 to Linux Mint 21.2, which also draws from the Ubuntu 22.04 base. I have relied on Cronopete as my chosen backup solution throughout my journey. Anticipating a smooth installation of Mint, I’m confident that I can seamlessly restore my files, reassuring me of the feasibility of my chosen path.

Assembling the NUC

When the package arrived, I was eager to assemble my new computer. I took the NUC out of its box and looked at the directions. The NUC has four screws in the base, which I loosened until I could easily remove the bottom plate. Once the case was opened, it was easy to see where the RAM chips belonged. I gingerly removed them from their packaging and, one by one, inserting them into their places.

Installing the SSD drive was a bit more complicated. I had to remove a tiny mounting screw before inserting the NVMe drive. A good screwdriver with a magnetic tip is an excellent aid when securing the NVME drive.

It was finally time to see the fruits of my labor. I connected the NUC to a monitor with an HDMI cable, attached the keyboard and mouse to the USB ports, and turned on the device. As the directions instructed, I pressed the F10 key at startup to enter the BIOS and selected the USB drive on which I had previously installed Linux Mint 21.2.

Booting Linux on a NUC

After connecting the NUC to my Logitech wireless keyboard and mouse and a Sceptre 27-inch monitor, I was ready to begin the installation. My first boot was unsuccessful, so I turned off the ‘Secure boot’ option, and on the second boot, Linux Mint came up! A quick check revealed that the wireless was fine, and the keyboard and mouse were both working. The installation took only about 10 minutes. I added my favorite applications, including the Chrome browser, and began to have some fun.

The NUC is certified on several Linux distributions, including Ubuntu, OpenSuse, and Clear Linux.

Once the operating system and updates were installed, boot time was much quicker than the NUC 10 I replaced a year ago. I used ‘Neofetch’ for a brief overview of the system.

Give it a try

I use my system primarily for writing, coding, video conferencing, virtualizing other operating systems, and reading. If you are considering building your compact Linux system, this is an excellent option.

Discovering System Information with ‘inxi’

In the world of Linux, where power and flexibility reign supreme, one of the most valuable tools at a user’s disposal is the command line utility ‘inxi.’ This versatile tool allows users to gather detailed system information concisely and organized, making it an indispensable aid for troubleshooting, hardware identification, and overall system assessment.

The ‘inxi’ command operates under the GPLv3 license and finds its inclusion in many Linux distributions. You can install ‘inxi’ from your distribution’s software repository. from the command line on Fedora and ‘RPM’ based distributions as follows

$ sudo dnf install inxi

On Debian, Elementary, Linux Mint and Ubuntu based systems:

$ sudo apt install inxi

Running inxi without any flags will generate output related to the system’s CPU, kernel, uptime, memory size, hard disk size, number of processes, client used, and the Inxi version.

don@pluto:~$ inxi
CPU: quad core Intel Core i7-8565U (-MT MCP-) speed/min/max: 900/400/4600 MHz
Kernel: 5.15.0-78-generic x86_64 Up: 1h 41m Mem: 2855.0/15700.3 MiB (18.2%)
Storage: 232.89 GiB (11.1% used) Procs: 322 Shell: Bash inxi: 3.3.13

For a basic overview of your system use ‘inxi -b’:

don@pluto:~$ inxi -b
System:
  Host: pluto Kernel: 5.15.0-78-generic x86_64 bits: 64
    Desktop: Cinnamon 5.8.4 Distro: Linux Mint 21.2 Victoria
Machine:
  Type: Laptop System: System76 product: Darter Pro v: darp5
    serial: <superuser required>
  Mobo: System76 model: Darter Pro v: darp5 serial: <superuser required>
    UEFI: INSYDE v: 1.07.07-1 date: 06/24/2019
Battery:
  ID-1: BAT0 charge: 45.1 Wh (100.0%) condition: 45.1/53.2 Wh (84.9%)
CPU:
  Info: quad core Intel Core i7-8565U [MT MCP] speed (MHz): avg: 799
    min/max: 400/4600
Graphics:
  Device-1: Intel WhiskeyLake-U GT2 [UHD Graphics 620] driver: i915 v: kernel
  Device-2: Chicony USB2.0 Camera type: USB driver: uvcvideo
  Display: x11 server: X.Org v: 1.21.1.4 driver: X: loaded: modesetting
    unloaded: fbdev,vesa gpu: i915 resolution: 1600x900~60Hz
  OpenGL: renderer: Mesa Intel UHD Graphics 620 (WHL GT2)
    v: 4.6 Mesa 23.0.4-0ubuntu1~22.04.1

Determine the battery status of your laptop with ‘inxi -B’:

don@pluto:~$ inxi -B
Battery:
  ID-1: BAT0 charge: 45.1 Wh (100.0%) condition: 45.1/53.2 Wh (84.9%)

You can determine the make and model of your laptop or desktop PC with ‘inxi -M’:

don@pluto:~$ inxi -M
Machine:
  Type: Laptop System: System76 product: Darter Pro v: darp5
    serial: <superuser required>
  Mobo: System76 model: Darter Pro v: darp5 serial: <superuser required>
    UEFI: INSYDE v: 1.07.07-1 date: 06/24/2019

Determine the network and associated information with ‘inxi -n’:

don@pluto:~$ inxi -n
Network:
  Device-1: Intel Cannon Point-LP CNVi [Wireless-AC] driver: iwlwifi
  IF: wlp0s20f3 state: up mac: 18:56:80:53:58:b3
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    driver: r8169
  IF: enp57s0f1 state: down mac: 80:fa:5b:65:ba:55

The ‘inxi’ command line utility proves itself to be an indispensable tool for any Linux user. Its ability to provide an extensive range of system information concisely and well-organized simplifies the task of understanding your system’s hardware and software configuration. Whether you’re a seasoned Linux user or a newcomer to the open-source world, ‘inxi’ is a must-have in your toolkit. By empowering users to make informed decisions, troubleshoot effectively, and optimize their systems, ‘inxi’ reaffirms Linux’s reputation as a platform tailored for true enthusiasts and professionals.

Why Linux Mint Could be Your Perfect OS Choice

I have owned several MacBooks and purchased one for my wife a few years ago. She’s not a power user, mainly utilizing it for shopping, email, and discovery. As it approaches the end of its life, each new OS upgrade renders it less usable. Although my wife has never used a Linux computer, transitioning might be smooth. After all, many of her applications are readily available on Linux Mint. Upgrading to Linux Mint could be the best option for her.

Here are five reasons why Linux Mint might be a better choice for the average user than purchasing a new MacBook.

Customizability and Flexibility:

Linux Mint offers a high level of customizability and flexibility. Users can choose from various desktop environments (Cinnamon, MATE, and Xfce) and tweak the system to suit their needs. This level of control is not as readily available in macOS, which is designed to offer a consistent user experience across its devices.

Cost and Accessibility:

Linux Mint offers an open-source and free-to-use platform, while macOS remains exclusive to Apple hardware, leading to higher costs than comparable PCs. For budget-conscious users or those seeking the freedom to install the OS on a wide range of hardware, Linux Mint presents a more affordable and accessible alternative. It’s even possible to install Linux Mint on her MacBook Air.

Software Repository:

Linux Mint gains a significant advantage from its vast software repository, offering users a plethora of free and open-source software. The package manager (APT) streamlines application installation and updates. While macOS also features an extensive collection of applications through the App Store, it fails to rival the sheer number and variety available in Linux’s repositories.

Community and Support:

The Linux Mint community exudes passion and activity, always eager to assist newcomers and experienced users. Online forums, documentation, and community-driven support offer many resources to troubleshoot issues and delve deeper into the OS. While macOS also boasts a strong user base, the open-source community’s nature often fosters more accessible and diverse support channels.

Privacy and Data Control:

Linux Mint empowers users with greater control over their data and privacy. Unlike macOS, which tightly integrates with Apple’s ecosystem and services, Linux Mint enables users to determine data-sharing preferences and recipients. Moreover, being open-source, the operating system’s inner workings remain transparent, facilitating auditing for potential security and privacy concerns.

New Paths for the Turtle

Turtle graphics, a popular approach to introducing young learners to programming, traces its roots back to the original Logo programming language. Logo, an educational programming language designed by Seymour Papert and others in 1967, played a significant role in the development of this technique.

My personal journey with Logo began during my time as a graduate student in education. As a young adult, I struggled with mathematics, finding abstract concepts elusive and distant, while others seemed to grasp them effortlessly. Mathematics became an enigma, something I couldn’t connect with. However, everything changed when I entered graduate school and was given the task of teaching geometry to a fifth-grade student using a special curriculum that leveraged Logo and its Turtle graphics feature.”

A friend suggested several years ago that I learn Python. I had dabbled with computer programming but never stuck with it. He invited me to sit in on a staff development session on using Python in educational settings. Fortunately for me, he introduced them to the Python ‘turtle module.’ There was a connection immediately to my earlier experiences with Apple LOGO, and I began to experiment. I was comfortable on the command line but new to the Python REPL. Nonetheless, I opened a new session and began by importing the ‘turtle module.’

don@pop-os:~$ python3
Python 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

I imported the turtle module and followed my friend’s example. He was on a MacOS computer while I was using a Linux laptop. The results were nearly identical, though.

I enjoyed moving the turtle around the screen and drawing some simple shapes. The true potential of Turtle lies not merely in its capacity to execute commands but in its ability to foster procedural thinking and encourage students to reflect on their thought processes. With the aid of Turtle graphics, programming students can receive instant visual feedback from their code and simultaneously explore mathematical concepts, such as estimation and variability.

Reading books like “Teach Your Kids to Code” by Bryson Payne and “Python for Kids” by Jason Briggs, I learned more about the ‘Turtle’ and Python in general. My love of learning and teaching invited me to think of how I could share this with others. In the past half dozen years, I have taught homeschool classes and conducted workshops in public libraries.

I recently completed a three-day session in a nearby public library. Each of the participating youngsters received a Raspberry Pi 400, which they learned to set up and connect to library-supplied displays and the local area network. The main focus of our classes was getting them started programming with Python. We used the Mu editor included with the Raspberry Pi operating system. In a bit less than three days, the students learned how to program the turtle using simple commands at first, then progressed to ‘for’ loops and the ‘random’ module. Each of the participants was able to take their library-supplied Raspberry Pi 400 home with them.

There is nothing more exciting than seeing students excited about learning. I encourage you to share your skills with young learners wherever and whenever you can.

My open source story

In 1995, an email from my brother introduced me to Linux. Although I had heard of a high school student using Linux to build a web server, my knowledge was limited. Intrigued by my brother’s recommendation, I purchased a copy of Red Hat 5.0 from a nearby computer store. However, my initial attempt to explore it on an older computer resulted in a command prompt without success in running Xserver, leaving me unimpressed. A year later, I stumbled upon Red Hat 6.0 during another visit to the store. Taking it to work, I successfully installed Gnome on a Hewlett-Packard Vectra 75 with a Cyrix processor upgrade. This experience sparked my interest further.

The Red Hat 6.0 distribution came bundled with fascinating software like the Mozilla browser and OpenOffice 1.0, which I hadn’t encountered before. Excited about this discovery, I shared it with my IT team, and together we experimented with another machine. While we could browse Yahoo Mail using the browser, our workplace’s official email system, Lotus Notes, remained inaccessible. It was around early 2001 when I expressed my dissatisfaction with content filters to a vendor, and he suggested I build my own using Linux. This suggestion was an epiphany for me.

With minimal knowledge of Linux and no prior experience building a content filter, I embarked on a rapid learning journey. Armed with a Dell Optiplex GX1 equipped with a Pentium II-300 processor, I upgraded the hard disk and purchased Suse Linux 7. Through my exploration, I came across Squid and Squidguard and discovered Mandrake Linux, which appealed to me for various reasons. I also learned about the Red Hat Package Manager. Leveraging these newfound tools, I successfully built the first non-proprietary content filter in the history of Western New York’s public schools. Initially using Mandrake and later Fedora Core 1 on the older Dell machine, I employed Squid and Dansguardian to meet the requirements of CIPA compliance with E-rate. Although I faced some resistance from other technicians, I gradually demonstrated the legality and practicality of this solution over time.

This was just the beginning of my Linux journey. While developing the content filter, I delved into Samba and created our first network-attached storage device, providing our teachers with a reliable file backup solution. Subsequently, we built a Samba server running Fedora Core 1 and 2. I found stories of other schools utilizing Linux and learned about the K12 Linux Terminal Server Project. I taught myself Linux and Linux system administration through online forums, Google searches, and several books. I became a passionate advocate for open source, often promoting it at regional technology coordinator gatherings.

Using idle computers tucked away in closets across our school, I assembled a working demonstration of the K12 Linux Terminal Server. With an old Pentium II-300 boasting a mere 192 megabytes of RAM, I acquired special boot ROMs and repurposed additional older computers as thin clients for the server. One of our principals was so impressed with the results that he suggested implementing this solution in one of our computer labs. The success of the trial led to equipping two computer labs and numerous computers in classrooms and libraries with the K12LTSP solution. As the project expanded, we needed a more robust server and acquired a Dell PowerEdge with an advanced RAID controller. However, this setup proved incompatible with K12LTSP packages on Fedora Core 4. That’s when I discovered K12LTSP on CentOS. We adopted the CentOS 4 LTSP server as our DHCP server, seamlessly integrating it with Microsoft’s Active Directory. It served us well for over three years until we eventually virtualized our servers using VMWare ESX.

My foray into learning Linux empowered me to explore and create in ways I never imagined possible. Initially, open source presented challenges, with some components requiring unfamiliar configurations. However, I overcame these obstacles by relying on search engines and reading forums on the internet on Red Hat, Fedora, and other Linux user groups. Subsequently, I secured grants funded by our New York State Legislature, allowing me to attend Red Hat System Administration training in March 2003. A year later, another grant facilitated my participation in the Linux Boot Camp hosted by Training Camp and taught by Ross Brunson. Brunson’s teaching method involved building a system “from the ground up” with Red Hat 7.0, starting with the command line and gradually transitioning to a graphical user interface.

Equipped with experience and training, I became a resource for other regional school districts. Recognizing the tremendous potential of teaching students Linux, I seized every opportunity to do so. Unlike other operating systems, Linux allowed students to learn the fundamentals and progress to building their files and web servers. I utilized tools like VirtualBox to virtualize other Linux systems, such as Ubuntu and Debian, providing students with additional learning opportunities. Beyond developing a deep understanding of the operating system, my students and I familiarized ourselves with various open-source projects such as Audacity, OpenOffice.org, Apache, WordPress, Drupal, and Moodle, to name just a few.

The open-source ethos resonated with my desire to serve individuals and small businesses, which continues to this day as I work as a consultant for my own information technology business.

The foundational knowledge that propelled me toward advanced studies continues to animate my life and career. I teach young people and adults about Linux using platforms like the Raspberry Pi computer at our local library and other venues. Linux and open-source software have also spurred my exploration of social entrepreneurship, heavily influenced by what I have learned and witnessed within the open-source community. Later this month, I will be able to teach middle school students how to use Raspberry Pi 400 computers and Python at a local library.

This article is adapted from https://opensource.com/life/15/6/my-linux-story-don-watkins

4 Ways Open Source Software Can Improve Education

Everyone deserves an equal opportunity for a good education. But, we all know that some folks have monetary constraints that make those educational opportunities less likely to occur. I taught in a school district with a high percentage of rural poverty and our students did not have access to the opportunities that their urban and suburban peers. Closing that gap was always on our minds. That’s when we discovered open source software. Here are four ways that open source software levels the playing field for students.

  1. Cost-effectiveness. Open source software like LibreOffice, provides students with state of the art software that ensures that any document they create is theirs to keep and share with their teachers and classmates. Access to the same software with identical file formats ensures that everyone can share information easily. This is especially important for schools and universities that are operating on tight budgets.
  2. Flexibility. Open source software is typically very flexible and customizable.. There is no vendor lock-in. There are no contractual limits on deployment. Every student and teacher can have a copy of the software and they are free to share it with their family too. Support from active communities of users and excellent documentation are key selling points.
  3. Security. The source code of open source software can be inspected by anyone making it less likely that malicious code could be hidden from view and can more easily be found by security teams. Open source software is updated more regularly than proprietary products. This is because the open source community is constantly working to improve the software, and they are able to release updates more quickly.
  4. Collaboration. The open source community is a large and vibrant community of developers who are constantly working to improve open source software. This means that educational institutions can tap into a wealth of expertise and resources when using open source software.

Here are some examples of open source projects and communities that have a direct connection to education.

  • Moodle: Moodle is an open source learning management system (LMS) that is used by millions of students and teachers around the world. Moodle is highly flexible and can be customized to meet the needs of any educational institution.
  • Jupyter Notebooks: Jupyter Notebooks are a popular open source tool for creating and sharing interactive documents that contain code, text, and visualizations. Jupyter Notebooks are an excellent way for students to learn how to code and to share their work with others.
  • GCompris: Gcompris is a free and open-source educational software suite for children aged 2 to 10. It includes a wide range of activities.
  • Gimp: Gimp is a free and open source raster graphics editing package that is used for image editing and manipulation. Gimp is available on Linux, MacOS and Windows.

Open Source Software: A Cost-Effective, Secure, and Flexible Option

Open source software is developed and distributed under a license that gives users the right to use, modify, and redistribute the software. When you purchase proprietary software, you don’t own it. In many cases, proprietary software is effectively leased to you for a set period. Many companies force their customers to upgrade to newer versions to continue to have access to their creations. That is not the case with open source software. Open source software is the best value in the market, and here are five reasons why that is so.

1. Lower costs

One of the most significant advantages of open source software is its low cost. This can save businesses a significant amount of money on software licensing fees. I am writing this blog with MarkText , a simple yet elegant editor that’s available for Linux, MacOS and Windows.   It saves my work by default in MarkDown, which is an open source format. I can export the file to HTML or PDF or I can copy and paste it directly into LibreOffice Writer or into my WordPress blog. In all cases, I own my work without needing a license for the software.

2. Flexibility

Open source software is often very flexible and customizable. This means that businesses can tailor the software to their specific needs. Businesses and individuals can modify their software or move from one application to another with compatible formats. One of my clients had files written and saved in a proprietary format that was no longer accessible because the proprietary software was no longer on the market. I was able to open and save the person’s files using LibreOffice Writer because it had the filters built into it that allowed that to happen. You can imagine the delight my client felt when her work of many years was made freely available to her in a format that was accessible using a free product.

3. Community support

Open source software often has a large and active community of users and developers. This community can provide support for the software. These communities are responsive to the needs fo users because they have a share interest in the success of the software and are part of a caring community committed to the development of quality software and the maintenance of the communities, many of which are governed by codes of conduct which ensure respect for the users.

4. Security

Open source software is often very secure. This is because the software is constantly being reviewed and audited by a large community of users and developers. This helps to identify and fix security vulnerabilities before attackers can exploit them. An adequate number of eyes on a project ensures that bugs in the software are quickly identified and quickly fixed.

5. Innovation

Open source software is often a source of innovation. By its very nature open source software frequently leads to rapid innovation as communities form around projects of common interest. With a quick look at Github and Gitlab one can easily find new projects or forks of older projects that are leading to new solutions. The development of the Linux kernel and the subsequent proliferation of nearly six-hundred different distributions, each one customized for its community, is but one example.

Conclusion

There are many good reasons to use open source software. These reasons include lower costs, flexibility, community support, security, and innovation. If you are looking for a cost-effective, flexible, and secure software solution, then open source software is a good option to consider.

Here are some additional resources about open source software:

I hope this blog post has been helpful. If you have any questions, please feel free to comment below.

Linux Mint: A Stable and Reliable Operating System for Your Everyday Needs

I own two laptops. One of them is a System76 Darter Pro which is the older of the two computers. It came with Pop!_OS preinstalled when I bought it over four years ago. I’ve experimented with Fedora, Ubuntu and Linux Mint on this computer, and I’ve settled on Linux Mint because its easy to use and its a great way to introduce new people to Linux. I have found Linux Mint to be the easiest way to transition folks who are former users of MacOS and Windows. There are three main reasons that I recommend Linux Mint.

First, the software is also open-source, meaning anyone can contribute to its development. This makes Linux Mint a very cost-effective and secure operating system. Second, it’s easy to use. The Cinnamon desktop is very similar to Windows and MacOS, so new folks will find it easy to get up and running. There are also a wide variety of tutorials and documentation online to help them learn more about Linux Mint. Third, the distribution is stable, reliable, and regularly updated. Linux Mint is based on Ubuntu and Debian and it’s been under continuous development since it was first released in 2006.

The Cinnamon desktop is very intuitive, and most folks who are at least a little computer savvy can easily find the software that they need to accomplish the tasks they want to. The power of Linux Mint is simple enough for a neophyte to use yet powerful enough to satisfy the needs of a power user. Linux Mint’s ‘Software Manager’ is easy to find in the ‘Main Menu’, and if you can’t find it there, you can begin typing ‘software…’ in the default search bar at the top of the menu. I have found that most of the software that I need to be productive is found in the default install, but other software can easily be added from the command line or the ‘Software Manager.’

Linux Mint supports ‘Flatpak’ out of the box which is another feature I have come to appreciate which is different from its upstream Ubuntu base. Linux Mint also comes with a ‘Backup Tool‘, which makes it easy to backup your important files to another disk. Linux Mint is powerful yet doesn’t burden your system even if you have a computer past its prime. Linux Mint is designed with privacy in mind, so it is not sending your information to a third party. Mint is easy to use yet powerful enough for developers.

Why Flatpaks on Linux Make Sense for Users

Introduction

Linux is celebrated for its flexibility and customization options. However, one aspect that has historically presented challenges for users is software installation and management. Thankfully, the advent of Flatpak has revolutionized the Linux ecosystem, offering a solution that simplifies software deployment and enhances user experience.

Streamlined Software Distribution

Flatpak, a universal package management system, allows users to install and update software from a central repository effortlessly—no need to look for the latest package or manually resolve complex dependencies. With Flatpaks, you no longer need to worry about conflicting library versions or package compatibility issues, as applications are bundled with all their necessary dependencies, creating a self-contained environment. This streamlined software distribution ensures a seamless experience, freeing users from the burdensome tasks of dependency hunting and manual installation.

Enhanced Security

Computer users ‘ security is a paramount concern, and Flatpaks significantly boosts this area. By encapsulating applications and their dependencies within sandboxes, Flatpak offers a layer of isolation that helps prevent software vulnerabilities from compromising the entire system. Each Flatpak runs in its container, limiting its access to system resources and ensuring any potential security breaches remain within the sandbox. Moreover, with frequent updates and security patches available through the central repository, users can easily stay protected against emerging threats.

Application Portability

One of the standout advantages of Flatpak is its ability to run applications consistently across different Linux distributions. By packaging applications with their necessary libraries, Flatpaks eliminate compatibility issues and allow users to enjoy their favorite software regardless of the underlying distribution. This application portability level dramatically simplifies switching between different Linux flavors or even sharing applications with friends and colleagues. With Flatpak, you can say goodbye to the frustrating search for software that works on your specific distribution.

Isolated Environments for Testing

Flatpak provides an excellent environment for testing new software without the risk of destabilizing your system. Creating isolated application sandboxes allows you to freely experiment with beta versions, bleeding-edge releases, or even unfamiliar software without worrying about potential conflicts or unintended consequences. This remote testing environment safeguards your system from potential harm and allows you to explore and discover new software confidently.

Community-driven Collaboration

Flatpak is an open-source project that benefits from a thriving community of developers and enthusiasts. This collaborative ecosystem ensures a wide variety of software is available in Flatpak format, with developers actively contributing to the central repository. Moreover, Flatpak empowers users to provide feedback, report bugs, and even contribute to the packaging efforts, fostering a sense of ownership and community participation. By embracing Flatpak, users become part of a more significant movement that aims to enhance the Linux experience for everyone.

Conclusion

In conclusion, adopting Flatpaks on Linux offers users various compelling advantages. From streamlined software distribution to enhanced security and application portability, Flatpak simplifies the once-complex landscape of software management on Linux. With isolated testing environments and a vibrant community-driven ecosystem, Flatpak paves the way for a more user-friendly and inclusive Linux experience. 

This article was written with an assist from ChatGPT.

Introducing Whisper

I love interviews. It’s a great way to get to know a person and it’s often a great way to learn. One of the most challenging aspects of interviews is capturing exactly what the interview subject had to say. I have used my mobile phone to capture a subject’s voice. I have also used Audacity. In both cases, I am left to transcribe that content into written form. Now the paradigm is changing with the advent of Whisper which is an openly licensed program developed by OpenAI. According to OpenAI’s website introducing Whisper, “Whisper is an automatic speech recognition (ASR) system trained on 680,000 hours of multilingual and multitask supervised data collected from the web.”

It’s an amazing software and easy to install on Linux which is my daily driver. I used Pop!_OS but you can easily install Whisper on Fedora-based distributions also. You need to make sure that Python is installed and you can easily test that by entering the following command.

$python3 –version

In my case the result was

Python 3.10.6

Then install a Python virtual environment.

$ sudo apt install python3.10-venv

Next, you need to install Python pip3

$ sudo apt install python3-pip

Initialize the Python virtual environment for Whisper with

$python3 -m venv whisper

I changed into the ‘whisper’ directory with

$cd whisper

Finally, I installed ‘whisper’ with

$ pip3 install whisper

Now I am ready to use this amazing new tool to transcribe mp3 and mp4 files into easily readable text. If you don’t have any and you would like to try out Whisper you can point your web browser at Librivox and download a free book or part of one. I chose Robert Frost’s ‘Mending Wall’

I can use ‘whisper’ from the command line to convert the mending wall mp3 to text

$ whisper 04_mending_wall_frost_bc.mp3 –model base

In a little over a minute ‘whisper’ has converted the ‘mp3’ to text that can easily be read. The conversion outputs 5 files. One of them is a text file with the text of the ‘mp3’. Here are the first few lines taken from 04_mending_wall_frost_bc.mp3.

“Mending Wall by Robert Frost, read for libravox.org by Becky Crackle, November 16, 2006, Canal Winchester, Ohio. Something there is that doesn’t love a wall that sends the frozen groundswell under it and spills the upper boulders in the sun, and makes gaps even too can pass abreast. The work of hunters is another thing. I have come after them and made repair where they have left not one stone on a stone, but they would have the rabbit out of hiding to please the yelping dogs.”

As you can see the results are accurate

You can create a Python script to automate the process.

import whisper

model = whisper.load_model(“base”)
result = model.transcribe(“04_mending_wall_frost_bc.mp3”) print(result[“text”])

Using the Python script provides a much cleaner output.

“Mending Wall by Robert Frost, read for Librevox.org by Becky Crackle, November 16th, 2006, Canal Winchester, Ohio. Something there is that doesn’t love a wall that sends the frozen groundswell under it and spills the upper boulders in the sun, and makes gaps even too can pass abreast. The work of hunters is another thing. I have come after them and made repair where they have left not one stone on a stone, but they would have the rabbit out of hiding to please the yelping dogs. The gaps I mean, no one has seen them made or heard them made, but at spring-mending time we find them there. I let my neighbor know beyond the hill, and on a day we meet to walk the line and set the wall between us once again. ”

Whisper has an MIT license