packaging interview questions

Top 15 packaging interview questions

How to solve dpkg-source source problem when building a package?

Has anyone here had some experience creating a Debian / Ubuntu package? I am trying to backport the lammps package (http://packages.ubuntu.com/quantal/lammps) from Ubuntu 12.10 (Quantal) to Ubuntu 12.04

I only need it unofficially - just need a .deb package for convenience's sake when creating custom virtual machine images for deployment to IaaS platform.

Following the Ubuntu Packaging Guide at https://wiki.ubuntu.com/PackagingGuide , I can build successfully, except when I try to rebuild using the debuild command, I usually get this error:

 dpkg-source: error: aborting due to unexpected upstream changes, see
 /tmp/lammps_0~20120615.gite442279-1.diff.aie32n dpkg-source: info: you
 can integrate the local changes with dpkg-source --commit
 dpkg-buildpackage: error: dpkg-source --include-binaries -i -b
 lammps-0~20120615.gite442279 gave error exit status 2

Running 'make clean-all' at the src directory still does not solve the problem. Is there any way to completely clean off all the files that were generated during the build process, or to ask debuild to ignore any differences in the source files?

Source: (StackOverflow)

How to create and administer multi-architecture PPAs?

I have a program that needs to be recompiled for every ubuntu version.

Currently I am packaging it using Ubuntu's PPA just for the current distribution.

Eventually, I have to provide packages for the previous ubuntu version.

I am not sure how to accomplish this.

How does the Ubuntu PPA build server works - does it just look at the distribution field in the most current changelog entry (in the debian/changelog file) to determine for what distribution the package should be build?

The debian specification allows to add multiple distributions into the distribution field. But this does not seam to help me.

Some ubuntu documents talk about encoding the distribution name into the version number (in the debian changelog file).

But how does this work in practice? A new version of the program is available, then what? Do I add for each distribution a new changelog entry and the PPA buildserver builds automatically for each distribution new packages after dput'ing it up? Or does the PPA buildserver just looks at the first changelog entry?

Source: (StackOverflow)

How to add dependency after submitting a proprietary app to USC?

I submitted my app "Brightness Controller" under proprietary license and it has been published. It contains an executable .py file. But the app depends on python-wxgtk2.8 I wrote it in the comments field but probably the packagers have ignored it. Is there any way I can add the dependency myself?
Please note that I had not debianized the package. I just tarred the brightness.py file and submitted it. Can I just make a .deb with the dependency file and submit it?
The app is originally open-source, but I submitted it under proprietary so that I won't have to package it.

Source: (StackOverflow)

How to make a deb file which tells the system a reboot is required?

I plan to set up a PPA or perhaps submit my package to Debian, but there is something I really need to know, I understand that packages normally do something with /var/run/reboot-required and are listed in /var/run/reboot-required.pkg, but how exactly does one create a deb file which tells the system through that method that a reboot is required to make all the necessary changes? Is there simply a flag I need to set in one of the files or is it more manual than that? I am running Ubuntu GNOME 16.04 with GNOME 3.20.

Source: (StackOverflow)

I've filed an ITP bug on bugs.debian.org - now how do I get the package into Ubuntu?

I've written a development library that I would like to include in the Ubuntu archives. From what I understand, the best way to do this is to first get the package into Debian and then request a package sync.

Here is the ITP bug.

What do I do now?

Looking at this page, I see horrifying things like "419 days in preparation" and "last activity 404 days ago". I get the impression that getting a package into Debian is a slow process.

Is there anything I can do to speed up the process? I've tried to do as much work as I can to smooth out the process - I've got a branch with Debian packaging (which gets by Lintian without any errors).

Source: (StackOverflow)

How to have Debian packaging generate two packages given an upstream source archive?

I am packaging something for my PPA. The upstream source is a .tar.gz archive which is Makefile-based.

Since this package has a significant amount of architecture-independent data, it would be wise to have the build scripts generate two packages:

  • package
  • package-data

How can I set this up? I've edited my Debian control file to generate two packages, but I have no idea how to get the right files to the right package.

Since the data files are currently all installed via the Makefile, I am kind of lost here.

Source: (StackOverflow)

Adding post .deb install scripts

So I'm building a .deb, and I need to do a few post-install commands (linking libraries paths, and a few other things).

Is there a way to have it so when you do a sudo dpkg -i <pacakage-name>.deb, a script runs?

Source: (StackOverflow)

Manually Created .deb, how do I upload to a PPA?

I have a manually created .deb, and I'd like to upload it to a PPA.

My question is as follows:

  • Is that possible?

and If so,

  • how do I do that?

Source: (StackOverflow)

How and why to create -dbg, -dev, -doc packages?

I'm writing an Ubuntu package for a package which essentially provides a number of libraries and headers which then be used to build other software. The package also breaks up in smaller subpackages which are interdependent; in this sense the package is quite similar to boost.

I noticed that packages like boost provide


but nothing that goes by the name boost or libboost.

  • What is the idea behind this?
  • What are the purposes of the -dbg, -dev, and -doc packages?
  • Are there any instructions provided on how to write build files for those packages?

Source: (StackOverflow)

How can GIMP 2.8 have two different icons together?

In Unity dash GIMP 2.8.10 has a icon and uses a different one in launcher.

GIMP in Dash

enter image description here

GIMP in Launcher

enter image description here

I searched for GIMP in "File System" and got this.

enter image description here

How can this be done while packaging other apps?

Source: (StackOverflow)

How do I put a package into the Ubuntu repositories? [duplicate]

Possible Duplicate:
How to get my software into Ubuntu?

I've created a Python application for Ubuntu. How do I package it and submit it for possible inclusion in the universe repository?

Source: (StackOverflow)

Is is possible to get a patch included in the current release? If so, how?

So a while back I reported a bug in Compiz's Place Window plugin. It's a fairly major regression for people affected by it: mainly those using Gnome-Fallback, judging by the reports.

A patch surfaced a short time later. I created a PPA for testing and everybody involved so far is reporting the issues are fixed. It even fixes another bug. I've done testing with a standard Unity desktop and can say (for my testing) no adverse effects were visible.

I want to get this pushed to Ubuntu right now for two main reasons:

  • I'm selfish. I don't want to need to update my PPA every time a new version of Compiz is pushed to 12.04.
  • I don't want Ubuntu users seeing their windows flying around because of a silly little bug.

I want this patch pushed to Ubuntu's version of Compiz as soon as possible, so we can mark these bugs fixed and move on with our lives.

Whose leg do I have to hump to get this pulled into Ubuntu right now?

I don't maintain this project and it's an upstream thing but it's fairly integral to Ubuntu. I could go to Compiz but I imagine that if they accept the patch, it'll be months (at least a release) before it's anywhere near Ubuntu.

And when I do find the right person, how can I make the process as slick as possible for them?

I want them to see my request, go "Yup, that all looks great, done" and that be it. I don't want seventeen rounds of emails addressing aspects of the patch. More importantly, I don't want to waste their time either.

And what do I have to provide them? My packaging skills are... lamentable. This was my first attempt at patching a package for redistribution so I've probably made every single packaging error known to man. Will they be happy with the original patch (so they can apply it themselves) or should I repackage things so the diff/changelog is a little cleaner (it took me a few goes and the versioning is all over the place).

Note: This question is about Compiz but I'd prefer if answers could address other styles of package too so we have an authoritative and comprehensive thread of how to get things fixed.

Source: (StackOverflow)

Graphical tool for creating Deb packages

Are there any graphical tools for creating ubuntu/debian packages?

Source: (StackOverflow)

Compiling source into a DEB package

I have always had a problem installing and removing compiled software, so I have decided I would like to build software from source into a .deb package for easier installation/removal.

I would like to know of an easy and short way to build source into a .deb package, as an end user.

I have tried:

Source: (StackOverflow)

What is an "AppImage"? How do I install it?

I just read Meet Etcher, A Stylish Open-Source USB Image Writer Tool. It talks about downloading an AppImage.

Yes, Linux; the Linux packages is distributed as an .appimage for 32-bit and 64-bit distributions, and should run across all major Linux distributions without any issues. The team currently have no plan to provide a native .deb (or .rpm) installer.

What are AppImages? How do they differ from snaps?

Source: (StackOverflow)