AU
  
You are currently viewing the Australia version of the site.
Would you like to switch to your local site?
15 MIN READ TIME

PACKAGE DELIVERY

Add your own Linux software to the ecosystem. Michael Reed looks at what it takes to become a package maintainer.

W elcome to the world of package maintenance – in other words, taking a source code package and making it available in a form that can easily be installed such as a deb or snap file.

There are two types of package maintenance. You can create packages to be hosted online, or you can prepare packages to be submitted to the repository of a distribution. With this guide, we hope to give you an introduction to both of those approaches. There’s no “best” approach to making Linux software available, and each has its pros and cons.

Why would you get involved in package maintenance? Well, typically, the motive is to make a piece of software easily installable for the general user. You might be the creator of this software, or you might feel that there’s a good project out there which would benefit from greater accessibility. Whatever your motivation, the package creation procedure for all of the package formats is similar, in broad terms. We’re going to assume that you’ve some experience with building source code using ./configure && make && make install (see features LXF256) and that you know how to install packages on to your system from the command line.

Keeping it official

This is an overview of what the procedures are and where to obtain the information and tools that you’ll need. We’ve used the official guides as our source material, as should you, but we don’t seek to replicate them here. This isn’t due to laziness on our part – it’s vitally important to follow the official documentation when building packages that are destined for installation by other people or for inclusion in the official repositories. Bodge jobs are no good if you’re creating packages that people are going to depend on, and the official procedures can change over time. Remember, these packages will normally install files into the most vulnerable and delicate parts of the system!

Selecting the right project is the first step to becoming a package maintainer. Check that the package you have your sights on isn’t maintained already. In some cases, a package can exist in the official repository or on the web, but is badly out of date and not actively maintained. Best practice in such cases is to contact the lapsed maintainer and ask permission to take over maintenance of the package.

You can obtain the identity of the current maintainer with a web search or by using the package tools of a distribution. For example, in Ubuntu typing: apt show will display this information. On the other hand, you might

want to get in touch with a developer of a piece of software that you enjoy using and ask, “Would you like me to maintain packages for your project?”

Once you’ve decided that a package is either not currently maintained or completely absent from the repository of the target distribution, you must obtain the source code of that package. The first stage of this is to locate the website of the author or authors of the package. In most cases, you’re looking for a source code package that builds with the familiar ./configure && make && make install procedure.

Unlock this article and much more with
You can enjoy:
Enjoy this edition in full
Instant access to 600+ titles
Thousands of back issues
No contract or commitment
Try for $1.48
SUBSCRIBE NOW
30 day trial, then just $14.99 / month. Cancel anytime. New subscribers only.


Learn more
Pocketmags Plus
Pocketmags Plus

This article is from...


View Issues
Linux Format
January 2021
VIEW IN STORE

Other Articles in this Issue


WELCOME
Mobile mania
Get Linux on your laptop! There’s no doubt
REGULARS AT A GLANCE
GitHub fights back against RIAA
SOFTWARE FREEDOM
Android 7.1 internet woes
From 2021, Android 7.1 and earlier could lose access to 30 per cent of all websites due to Let’s Encrypt certificate changes
CRYSTAL DB BALLS
Matt Yonkovit is Percona’s chief experience officer and
Linux on new ARMbased M1 MacBooks?
Apple M1 ARM-based SoC could boot custom kernels
ALWAYS BE PREPARED
Keith Edmunds is MD of Tiger Computing Ltd,
Firefox 83 is now 20 per cent faster!
SpiderMonkey’s Warp update brings huge performance benefits
RetroFreedom webshop launched
Now available: Linux laptops with Libreboot installed
Python creator now part of Microsoft
Guido van Rossum joins Microsoft’s Developer Division
MOBILE MONADO
Jakob Bornecrantz is a senior software engineer working
Distro watch
What’s down the side of the free software sofa?
IT’S NOT UNUSUAL
Jon Masters has been involved with Linux for
Kernel Watch
Jon Masters summarises the latest happenings in the Linux kernel, so you don’t have to
Answers
Got a burning question about open source or the kernel? Whatever your level, email it to lxf.answers@futurenet.com
Mailserver
Write to us at Linux Format, Future Publishing, Quay House, The Ambury, Bath BA1 1UA or lxf.letters@futurenet.com
BACK ISSUES
HotPicks
THE BEST NEW OPEN SOURCE SOFTWARE ON THE PLANET
Filmulator
IMAGE EDITOR
Far2l
FILE MANAGER
Dooble
WEB BROWSER
MiniPaint
IMAGE EDITOR
Straw viewer
YOUTUBE VIEWER
Triangle
IMAGE RENDERER
Pick2Hand
2D PLATFORMER
Zabuyaki
COMBAT GAME
Flying Carpet
FILE TRANSFER TOOL
Bluedo
BLUETOOTH TOOL
REVIEWS
AMD Ryzen 9 5900X
The Zen 3 architecture packing Ryzen 9 5900X moves AMD out of Intel’s shadow to take centre stage. Jarred Wilton and Alan Dexter are impressed
Trisquel 9.0 Etiona
Jonni Bidwell is on a brave quest to banish binary blobs from his legendary Eee PC. Will this distro prove helpful, or become more of a hindrance?
Ubuntu 20.10
The Groovy Gorilla is out. Jonni Bidwell wonders if he might finally meet his spirit animal, or if he’ll be maimed
Brave 1.17.3
Firefox loyalist Jonni Bidwell has a dalliance with an altogether different kind of web browser. Will he be able to look at himself in the mirror afterwards…?
What the Golf?
Management loves a good round of golf, so this daemon spawn from Christopher Livingston has enraged them!
ROUNDUP
Presentation software
WE COMPARE Presentation TONS OF software STUFF SO YOU DON’T HAVE TO!
Output quality
Considering the end results
Ease of installation
Getting it up and running
Main features
Investigating the core functionality
Documentation and support
What assistance is on offer?
File formats
Investigating compatibility issues
Collaboration
Enabling team working
Ease of use
Spotlight on the learning curve
The Verdict
Presentation software
LINUX ON THE GO
LINUX ON THE GO
Jonni Bidwell’s desktop PC exploded, but fret not – he’s found that Linux works great on laptops. And phones. And Chromebooks
Myths and facts
Your laptop can almost certainly run Linux and there’s only a few pitfalls to watch out for. Let us explain…
Installing Pop!_OS
Learn the rudiments of Pop!_OS risk free, and when you’re sufficiently amazed install it on your system
Tweaking Pop!_OS
Linux, and Pop!_OS in particular, can do a lot for your lapto p’s performance and security with just a little persuasion…
Linux on phones
Prepare for a quick survey of the diverse Linux options for mobile and a deep dive into Ubports’ fantastic Ubuntu Touch
Google ChromeOS
With a limited lifespan you’ll eventually want to replace the Google-maintained OS for something with more Tux to it
Pi USER
Stereo Pi v2
Seeing a good idea
MAKING THE CASE FOR Pi WAR
Mike Horne is a web developer with over
Wio a display
USB-powered micro screen
The Pi 400 design process aka lefty bias
Insights into the design and creation of the latest Raspberry Pi device reveal something surprising…
PiKISS
Les Pounder wants to tweak his Raspberry Pi to perfection and with PiKISS he just might manage it. Could this be a “chef’s kiss” moment?
How to build Internet of Thing devices
NODE-RED
Use a Raspberry Pi as your daily driver
RASPBERRY PI
TIMELINE
Day 0 “Sensing that preparation would be key
SET UP A RASPBERRY Pi AS A DAILY DRIVER
1 Choose your OS Raspberry Pi OS with
TUTORIALS
Partitioning disks from the command line
FDISK
Improve your video conferencing sessions
Nick Peers reveals how to set up and use Jami – the open-source, peer-topeer and privacy-focused chat tool – for all your messaging needs
Top 10 Ubuntu tips
UBUNTU
Run the classic Amstrad CPC 464
Les Pounder goes back to the 80s, when Alan Sugar hired more people than he fired and computers came built inside the keyboards. Madness!
Securely joint-edit your docs in real-time
So, you want to work and collaborate on your documents securely, but are concerned about your confidential data? Kseniya Fedoruk has the solution
Plot geolocation data with ELK
Simon Quain reveals how to display local restaurants and their food hygiene ratings on a map with Elasticsearch, Logstash and Kibana, aka ELK
Improve your browsing with Firefox
Nick Peers uncovers 10 clever ways to improve the performance and behaviour of your favourite open source web browser
Emulation-free Amiga
Fed up with modern indulgence and bulky nonsense, John Knight tries PC computing the Amiga way, with the AROS operating system
CODING ACADEMY
Build an overhead Python racing game
Calvin Robinson creates a racing video game in Python with PyGame – there’s nothing like a mad dash to the finish line to get the heart pounding!
Programming a Turing Machine
It was the computer that started it all, albeit in theory. Mike Bedford shows you how to program a Turing Machine and put it through its paces
On the disc
On the disc
CREATIVE DISTRO MIN SPECS: 2GB RAM (4GB RECOMMENDED),
START HERE
USING THE LXFDVD Using Linux for the first
Fedora Workstation 33
VERSATILE DISTRO MIN SPECS: 2GB RAM, 20GB DISK
AND MORE!
THE LXF LIBRARY Advanced Bash Scripting Guide Go
Chat
X
Pocketmags Support