Debian Packaging Tutorial
Total Page:16
File Type:pdf, Size:1020Kb

Load more
Recommended publications
-
Debian Developer's Reference Version 12.0, Released on 2021-09-01
Debian Developer’s Reference Release 12.0 Developer’s Reference Team 2021-09-01 CONTENTS 1 Scope of This Document 3 2 Applying to Become a Member5 2.1 Getting started..............................................5 2.2 Debian mentors and sponsors......................................6 2.3 Registering as a Debian member.....................................6 3 Debian Developer's Duties 9 3.1 Package Maintainer's Duties.......................................9 3.1.1 Work towards the next stable release............................9 3.1.2 Maintain packages in stable .................................9 3.1.3 Manage release-critical bugs.................................. 10 3.1.4 Coordination with upstream developers............................ 10 3.2 Administrative Duties.......................................... 10 3.2.1 Maintaining your Debian information............................. 11 3.2.2 Maintaining your public key.................................. 11 3.2.3 Voting.............................................. 11 3.2.4 Going on vacation gracefully.................................. 12 3.2.5 Retiring............................................. 12 3.2.6 Returning after retirement................................... 13 4 Resources for Debian Members 15 4.1 Mailing lists............................................... 15 4.1.1 Basic rules for use....................................... 15 4.1.2 Core development mailing lists................................. 15 4.1.3 Special lists........................................... 16 4.1.4 Requesting new -
Application of Ultimate Debian Database in Debian Pure Blends Harvesting Information About Packages for Specific Work fields
Application of Ultimate Debian Database in Debian Pure Blends Harvesting information about packages for specific work fields Andreas Tille Debian Conference 9 Cáceres, July 26, 2009 Overview 1 Debian Pure Blends Short introduction Blends features Web tools 2 Ultimate Debian Database Short introduction Advantages of using UDD for Blends 3 Future Planned features for Blends TODO 2 / 22 Rename: CDD § Debian Pure Blends Term Custom Debian Distributions was always misunderstood Main misunderstanding: CDD was regarded as “something else than Debian” even if people were told that it is a concept inside Debian explicitly Dropped the misleading name in favour of a name where you just have to read the docs § Debian Pure Blend (in short Blend): a subset of Debian that is configured to support a particular target group out-of-the-box. 3 / 22 Reminder: Basic goal of Blends Debian > 22.000 packages Users interested in subset Groups of specialised users Easy installation and configuration While Debian stays general support specialists as well No derivative from Debian Basic idea: Do not make a separate distribution but make Debian fit for special purpose instead 4 / 22 Upstream - Debian Developer - User Tie a solid network of Debian developers, upstream developers (“developing experts”) and users Rationale: Experts in this field need help in build system / packaging Upstream anticipates enhancements of build system and security audit Finally support upstream developers to become Debian maintainers Penetrating specific work fields with Linux makes it even more -
Debian's Perl Team from an End-User Perspective
Getting Perl modules into Debian Debian's Perl team from an end-user perspective Tim Retout 11th September 2010 HantsLUG @ IBM Hursley Tim Retout pkg-perl for users What is the Debian Perl team? Maintain about 2000 Perl packages within Debian Both official Debian Developers and sponsees Around 70-80 committers,1 but most activity from a small core team Also indirectly contributes most of the Perl packages in Debian's derivatives (e.g. Ubuntu). 1http://www.ohloh.net/p/pkg-perl Tim Retout pkg-perl for users Using Perl on Debian How do you install Perl modules? apt-get install libfoo-perl Backports for older releases CPAN for unpackaged modules CPAN (the tool) is configured to play nicely with Debian packages, but does not install packages when satisfying dependencies. Tim Retout pkg-perl for users When a module isn't packaged If the Perl module you need is not available, you have several options: 1 Install it with CPAN, and handle future upgrades yourself. 2 File an RFP (Request for package) bug in Debian.2 3 Build yourself a private Debian package with dh-make-perl, and handle future upgrades yourself. 4 Get involved and contribute it back to Debian! Getting involved is easier than you think. 2http://pkg-perl.alioth.debian.org/howto/RFP.html Tim Retout pkg-perl for users Getting involved - tools The Perl team uses tools to speed up packaging. alioth.debian.org for team management git for most packages http://bugs.debian.org/ Package Entropy Tracker (PET) IRC (#debian-perl on OFTC) Two mailing lists - one for discussion, one to receive automated messages http://pkg-perl.alioth.debian.org/ links to all of these. -
Sbt-Native-Packager Release 1.0A1
sbt-native-packager Release 1.0a1 Josh Suereth Sep 18, 2021 Contents 1 Introduction 1 1.1 Goals...................................................1 1.2 Scope...................................................1 1.3 Core Concepts..............................................2 2 Getting Started 5 2.1 Setup...................................................5 2.2 Your first package............................................5 3 Packaging Formats 7 3.1 Universal Plugin.............................................8 3.2 Linux Plugin............................................... 15 3.3 Debian Plugin.............................................. 21 3.4 Rpm Plugin................................................ 25 3.5 Docker Plugin.............................................. 31 3.6 Windows Plugin............................................. 38 3.7 JDKPackager Plugin........................................... 41 3.8 GraalVM Native Image Plugin...................................... 44 4 Project Archetypes 47 4.1 Java Application Archetype....................................... 47 4.2 Java Server Application Archetype................................... 54 4.3 Systemloaders.............................................. 59 4.4 Configuration Archetypes........................................ 62 4.5 Jlink Plugin................................................ 62 4.6 Archetype Cheatsheet.......................................... 64 5 Recipes 69 5.1 Custom Package Formats........................................ 69 5.2 Dealing with long classpaths...................................... -
Debian Packaging Tutorial
Debian Packaging Tutorial Lucas Nussbaum [email protected] version 0.27 – 2021-01-08 Debian Packaging Tutorial 1 / 89 About this tutorial I Goal: tell you what you really need to know about Debian packaging I Modify existing packages I Create your own packages I Interact with the Debian community I Become a Debian power-user I Covers the most important points, but is not complete I You will need to read more documentation I Most of the content also applies to Debian derivative distributions I That includes Ubuntu Debian Packaging Tutorial 2 / 89 Outline 1 Introduction 2 Creating source packages 3 Building and testing packages 4 Practical session 1: modifying the grep package 5 Advanced packaging topics 6 Maintaining packages in Debian 7 Conclusions 8 Additional practical sessions 9 Answers to practical sessions Debian Packaging Tutorial 3 / 89 Outline 1 Introduction 2 Creating source packages 3 Building and testing packages 4 Practical session 1: modifying the grep package 5 Advanced packaging topics 6 Maintaining packages in Debian 7 Conclusions 8 Additional practical sessions 9 Answers to practical sessions Debian Packaging Tutorial 4 / 89 Debian I GNU/Linux distribution I 1st major distro developed “openly in the spirit of GNU” I Non-commercial, built collaboratively by over 1,000 volunteers I 3 main features: I Quality – culture of technical excellence We release when it’s ready I Freedom – devs and users bound by the Social Contract Promoting the culture of Free Software since 1993 I Independence – no (single) -
A Debian Pure Blend for Astronomy and Astrophysics
The Debian Astro project A Debian Pure Blend for astronomy and astrophysics Ole Streicher [email protected] Zeuthen, 2018-02-13 Ole Streicher (AIP Potsdam) The Debian Astro project Zeuthen, 2018-02-13 1 / 23 Debian GNU/Linux Free Linux based operating system One of the oldest distributions (founded 1993) Free as in \Free Speech" Base: Social Contract; Debian Free Software Guidelines > 50:000 software packages > 1:000 official developers Base for many derivatives: Ubuntu, Mint, ... Current stable version: Debian 9 (Stretch), since June 2017 Ole Streicher (AIP Potsdam) The Debian Astro project Zeuthen, 2018-02-13 2 / 23 The Debian Astro Pure Blend Blended tea: a combination of different kinds of teas to guarantee consistent quality (Wikipedia) Method to organize Debian astronomy packages currently 294 packages, (more in preparation) 19 metapackages Web page, \tasks" pages Handle citations, ASCL entries Completely integrated into Debian (Pure) First release with Debian Stretch (June 2017) Ole Streicher (AIP Potsdam) The Debian Astro project Zeuthen, 2018-02-13 3 / 23 Debian Pure Blends Debian Astro - Astronomy and astrophysics Debian GIS - Geographical Information Systems DebiChem - Chemistry Debian Med - Strong focus on Microbiology NeuroDebian - Neuroscience Debian Science - \Umbrella" blend for sciences Debian Edu - Education of all kind Debian Games, Debian Junior, Debian Multimedia, Hamradio, ... Ole Streicher (AIP Potsdam) The Debian Astro project Zeuthen, 2018-02-13 4 / 23 History of Debian Astro First packages: saoimage (1999), cfitsio -
I Deb, You Deb, Everybody Debs: Debian Packaging For
I deb, you deb, everybody debs Debian packaging for beginners and experts alike Ondřej Surý • [email protected] • [email protected] • 25. 10. 2017 Contents ● .deb binary package structure ● Source package structure ● Basic toolchain ● Recommended toolchain ● Keeping the sources in git ● Clean build environment ● Misc... ● So how do I become Debian Developer? My Debian portfolio (since 2000) ● Mostly team maintained ● BIRD ● PHP + PECL (pkg-php) ● Cyrus SASL ○ Co-installable packages since 7.x ● Cyrus IMAPD ○ Longest serving PHP maintainer in Debian ● Apache2 + mod_md (fresh) (and still not crazy) ● ...other little stuff ● libjpeg-turbo ○ Transitioned Debian from IIJ JPEG (that Older work crazy guy) to libjpeg-turbo ● DNS Packaging Group ● GTK/GNOME/Freedesktop ○ CZ.NIC’s Knot DNS and Knot Resolver ● Redmine/Ruby ○ NLnet Lab’s NSD, Unbound, getdns, ldns Never again, it’s a straight road to madness ○ PowerDNS ○ ○ BIND 9 ● Berkeley DB and LMDB (pkg-db) ○ One Berkeley DB per release (yay!) Binary package structure ● ar archive consisting of: $ ar xv knot_2.0.1-4_amd64.deb x – debian-binary ○ debian-binary x – control.tar.gz x – data.tar.xz ■ .deb format version (2.0) ○ control.tar.gz $ dpkg-deb -X knot_2.0.1-4_amd64.deb output/ ./ ■ Package informatio (control) ./etc/ ■ Maintainer scripts […] ./usr/sbin/knotd ● {pre,post}{inst,rm} […] Misc (md5sum, conffiles) ■ $ dpkg-deb -e knot_2.0.1-4_amd64.deb DEBIAN/ ○ data.tar.xz $ ls DEBIAN/ conffiles control md5sums postinst postrm preinst ■ Actual content of the package prerm ■ This is what gets installed $ dpkg -I knot_2.0.1-4_amd64.deb ● Nástroje pro práci s .deb soubory new debian package, version 2.0. -
Debian Secrets Power Tools for Power Users
About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu Debian Secrets Power tools for Power users Wouter Verhelst FOSDEM 2010 Wouter Verhelst Debian Secrets Idea: compare Debian-specic features against other distributions' features Help! About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk Recycled from DebConf8 DebianDay Wouter Verhelst Debian Secrets Help! About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk Recycled from DebConf8 DebianDay Idea: compare Debian-specic features against other distributions' features Wouter Verhelst Debian Secrets About this talk Changing system behaviour Searching Fooling the package system Anticipating and correcting problems Debian menu About this talk Recycled from DebConf8 DebianDay Idea: compare Debian-specic features against other distributions' features Help! Wouter Verhelst Debian Secrets update-alternatives −−config x-terminal-emulator more info: man update-alternatives About this talk Changing system behaviour Searching update-alternatives Fooling the package system dpkg-statoverride Anticipating and correcting problems Debian menu update-alternatives multiple packages providing a particular command Wouter Verhelst Debian Secrets more info: man update-alternatives About this talk Changing system behaviour Searching update-alternatives Fooling -
Debian Developer's Reference
Debian Developer’s Reference Developer’s Reference Team <[email protected]> Andreas Barth Adam Di Carlo Raphaël Hertzog Christian Schwarz Ian Jackson ver. 3.3.9, 04 August, 2007 Copyright Notice copyright © 2004—2007 Andreas Barth copyright © 1998—2003 Adam Di Carlo copyright © 2002—2003 Raphaël Hertzog copyright © 1997, 1998 Christian Schwarz This manual is free software; you may redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. See the GNU General Public License for more details. A copy of the GNU General Public License is available as /usr/share/common-licenses /GPL in the Debian GNU/Linux distribution or on the World Wide Web at the GNU web site (http://www.gnu.org/copyleft/gpl.html). You can also obtain it by writing to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. i Contents 1 Scope of This Document 1 2 Applying to Become a Maintainer 3 2.1 Getting started ....................................... 3 2.2 Debian mentors and sponsors .............................. 4 2.3 Registering as a Debian developer ........................... 4 3 Debian Developer’s Duties 7 3.1 Maintaining your Debian information ......................... 7 3.2 Maintaining your public key ............................... 7 3.3 Voting ............................................ 8 3.4 Going on vacation gracefully .............................. 8 3.5 Coordination with upstream developers ....................... -
Apt-Get Install Cran Bioc: on Automated Builds of 1700 R Packages for Debian
apt-get install cran bioc: On automated builds of 1700 R packages for Debian Dirk Eddelbuettel1 David Vernazobres2 Albrecht Gebhard 3 Steffen Möller 4 1Debian Project 2Universität Münster 3Universität Klagenfurt 4Universität Lübeck UseR! 2007 – Iowa State University, August 8 - 10, 2007 Eddelbuettel, Vernazobres et al (Debian etc) apt-get install cran bioc UseR 2007 1 / 15 Outline 1 Background and Motivation 2 Bringing both worlds together 3 What is behind it? 4 Debian Pkg-BioC Team 5 Where to go from here? 6 Conclusion Eddelbuettel, Vernazobres et al (Debian etc) apt-get install cran bioc UseR 2007 2 / 15 R – and its repos An open statistical language / environment – with lots of excellent code contributions To restate a what is well known at useR! 2007: R has become a standard for statistical applications and research As “success has many fathers”, several key drivers can be identified as to whyR has done so remarkably well However, we would like to stress repos here CRAN has been one of the drivers: an open yet rigourously QA’ed repostory which has experienced tremendous growth BioConductor has become a key technology enabler in bioinformatics, and provides a repo for that community Omegahat was meant to be a driver for the ’next R’ and is still an excellent experimental area Eddelbuettel, Vernazobres et al (Debian etc) apt-get install cran bioc UseR 2007 3 / 15 CRAN Packages Exponential Growth Number of distinct CRAN packages through time 1200 1000 800 600 400 200 0 1998 2000 2002 2004 2006 The count is based on files found at CRAN/src/contrib -
A Brief History of Debian I
A Brief History of Debian i A Brief History of Debian A Brief History of Debian ii 1999-2020Debian Documentation Team [email protected] Debian Documentation Team This document may be freely redistributed or modified in any form provided your changes are clearly documented. This document may be redistributed for fee or free, and may be modified (including translation from one type of media or file format to another or from one spoken language to another) provided that all changes from the original are clearly marked as such. Significant contributions were made to this document by • Javier Fernández-Sanguino [email protected] • Bdale Garbee [email protected] • Hartmut Koptein [email protected] • Nils Lohner [email protected] • Will Lowe [email protected] • Bill Mitchell [email protected] • Ian Murdock • Martin Schulze [email protected] • Craig Small [email protected] This document is primarily maintained by Bdale Garbee [email protected]. A Brief History of Debian iii COLLABORATORS TITLE : A Brief History of Debian ACTION NAME DATE SIGNATURE WRITTEN BY September 14, 2020 REVISION HISTORY NUMBER DATE DESCRIPTION NAME A Brief History of Debian iv Contents 1 Introduction -- What is the Debian Project? 1 1.1 In the Beginning ................................................... 1 1.2 Pronouncing Debian ................................................. 1 2 Leadership 2 3 Debian Releases 3 4 A Detailed History 6 4.1 The 0.x Releases ................................................... 6 4.1.1 The Early Debian Packaging System ..................................... 7 4.2 The 1.x Releases ................................................... 7 4.3 The 2.x Releases ................................................... 8 4.4 The 3.x Releases ................................................... 8 4.5 The 4.x Releases .................................................. -
Package Management Michael Tsai 2016/4/27 Pxeboot
Package Management Michael Tsai 2016/4/27 PXEBoot • Diskless host operation • Boot ROM on your network interface card uses DHCP to get the initial network setting • Including the location of the boot file at a TFTP server • Then the boot file is used to initiate the operating system • The root file system can be mounted from a server (for example, using NFS) Setup your own PXE environment • http://goo.gl/Fgr0JT <— Ubuntu 16.04 LTS 64 bit server ISO • http://goo.gl/duqdjS <— Guide to setup a PXEBoot environment Software Installation • System administrators often perform the following: • Automating mass installations of OS’s (not covered today. Additional: • Maintaining custom OS configurations for the local environment • Keeping systems and applications patched and up to date • Managing add-on software packages Packages - WHY? • The old ways - .tar.gz (“zipped tar ball”) • Advantages of the use of packages: • Ability to roll back to the original state • Quick (binary packages v.s. compile from source) • Handles dependency • Ability to run scripts during installation Automation is important • Install software for once is easy • Install the same software for 10 times is boring and painful • Human errors (typo, you forgot to install one of them) • Human intervention takes the most time. • Use a tool to automate the process! The Old Ways • tar - “store and extract files from a tape or disk archive” • Example: tar zcvf nasa117.tar.gz nasa117/ (create a tar archive with all files in nasa117/) tar zxvf nasa117.tar.gz (extract nasa117.tar) • Commonly