[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Questions before my first upload attempt



On 2015-08-20 18:33, Thomas Schmitt wrote:
> Currently i am stuck at:
> 
> - https://wiki.debian.org/DebianMentorsFaq#How_do_I_make_my_first_package.3F
>   "Put a package together, built against a current version of sid."
> 
>   I'm on Jessie 8.1. The dependencies of the packages in question
>   are very basic. The package sources are portable to any X/Open
>   compliant system. Tested upstream on very old GNU/Linux, FreeBSD,
>   Solaris, and NetBSD.
>   I understand i have to submit source packages anyway.
> 
>   So is there a way to do my packaging work in Debian 8.1 ?

Generally speaking, the advice to "build against a current version of
sid" is an important one, because that's where the package eventually
gets uploaded to, and your package must work with what's in there, and
not with what's in 8.1.

But yes, there are ways you can do development against sid whilst
remaining mainly in an 8.1 environment. Commonly used solutions are
chroots and VMs, which provide a sid environment more or less isolated
from the host environment.

>   (The PackagingTutorial says i shall write "9" into
>    debian/compat. Is that enough of a sid ?)

As Johan already indicated, the "9" is unrelated to the Debian version.
It refers to the feature set of debhelper, a helper program very
frequently used by packages.

The section "COMPATIBILITY LEVELS" of debhelper(7) has more details, but
you probably shouldn't care about these yet. Completing a few tutorials
and becoming familiar with the "big picture" first are probably more
important, so you are non the right track :-)

>   Else: Is there a shortcut description how to quickly set up
>   Debian package development in a virtual machine and how
>   to keep it up to date ?
>   (Hardware is plenty but my own VM scripts date back to Debian 6.)

The simplest way I can think of is to create a qemu-based VM with
vmdebootstrap(8). The following should create a useful result, which you
can then further modify:

$ sudo vmdebootstrap \
    --distribution sid \
    --image mysid.img \
    --size=5g \
    --mirror http://httpredir.debian.org/debian \
    --configure-apt \
    --package build-essential \
    --package devscripts \
    --enable-dhcp \
    --hostname mysidvm \
    --serial-console \
    --owner ${USER}

$ qemu-system-x86_64 -enable-kvm -m 2048 mysid.img

Adapt the QEMU options to your hardware environment and to the features
you need, and inside the VM, adapt to your liking.

> - I still did not find a hands-on description of fulfilling
>   the demand of http://mentors.debian.net/intro-maintainers:
>     "All packages must be signed with the GnuPG key you configured
>      in your control panel."
> 
>   http://mentors.debian.net/my has my public key now. I guess
>   this does the necessary configuration.
>   But how to use gpg or other programs to sign the packages ?
[...]
>   Suspiciously all newbie tutorials for Debian packaging
>   propose to use options -us -uc, which i understand prevent
>   some kind of signing.

You only want to sign the final result of your packaging efforts;
signing every intermediate result of the development process is
unnecessary and annoying, hence the -us -uc.

As Johan already mentioned, simply omit these, and you will be asked for
a signature.

Alternatively, if you used -us -uc, and you'd like to sign the result
later on, you can use the debsign(1) utility from the devscripts package.

Regards,
Christian


Reply to: