Code Monkey home page Code Monkey logo

Comments (16)

digint avatar digint commented on July 20, 2024

Hi!

Can you point me to some documentation on how this is done? (I'm assuming that "debian proper" is some kind of public repository for debian packages)

My knowledge of debian packaging is pretty limited, and some HOWTO page convinced me that the btrbk package should be a binary package rather than a source package. Please correct me if I'm wrong here.

Please note that I'm not using debian myself, all I do is creating the debian packages out of my gentoo system using dpkg-buildpackage (and then check if it does install correctly on a naked debian VM).

(btrbk debian packages download: https://www.digint.ch/btrbk/download.html)

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

well -- there is a low-level "bible": https://www.debian.org/doc/debian-policy/, but what you need really is a simple smth like https://wiki.debian.org/IntroDebianPackaging . But even then you could skip the beginning -- just create a branch 'debian' on top of your release or master, and then populate there debian directory with control,rules,btrbk.manpages,btrbk.install,copyright . I will help to finish it up. dpkg-buildpackage (or even better git-buildpackage) again should be the tool to build both source (from which debian builds binary packages) and binary packages. so you were told right to build binary packages for consumption by users, but to make such builds automated we need source packages. Whenever you populate those files I can just chime in and finalize the packaging.

Cheers!

from btrbk.

digint avatar digint commented on July 20, 2024

Regarding the source package: There is nothing to compile in btrbk, so why would anyone want to have a source package?

I don't have the "debian" files in the btrbk repository, as I don't want to pollute the project with distro-specific files (i'd have to add gentoo ebuilds, arch package scripts, ... too).
Here's the content of the files I have in the "debian" folder when building packages:

changelog:

btrbk (0.19.3-1) unstable; urgency=medium

  * New upstream release.
  * Bugfix: fix sorting of dates in schedule().
  * Bugfix: correct parsing of btrfs subvolume list (closes: #28).
  * Support for btrfs-progs v4.1-rc1.

 -- Axel Burri <[email protected]>  Sun, 21 Jun 2015 15:39:05 +0200

[...]

compat:

9

control:

Source: btrbk
Section: utils
Priority: optional
Maintainer: Axel Burri <[email protected]>
Standards-Version: 3.9.4
Homepage: http://www.digint.ch/btrbk/

Package: btrbk
Architecture: all
Depends: perl, libdate-calc-perl, btrfs-tools (>= 3.14)
Description: Backup tool for btrfs volumes
 Backup tool for btrfs volumes, using a configuration file, allows
 creation of backups from multiple sources to multiple destinations at
 once, with ssh and configurable retention support
 (daily/weekly/monthly).

copyright:

Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: btrbk
Source: http://www.digint.ch/download/btrbk/releases/

Files: *
Copyright: 2014-2015 Axel Burri <[email protected]>
License: GPL-2+<special license>
 This package is free software; you can redistribute it and/or modify
[...]

rules:

#!/usr/bin/make -f

DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/default.mk

%:
        dh $@ 

source/format:

3.0 (quilt)

from btrbk.

digint avatar digint commented on July 20, 2024

Btw. are you a debian package maintainer? Are you proposing to maintain debian btrbk package creation?

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

That is why I suggested to create a debian branch with the debian/ directory content (branch would also be used happen you need to introduce fixes to prev released/uploaded version).

even if you don't build anything, source package would be the one describing the "composition" of the binary package and all the meta-information (debian/control, copyright files) so anyone later on could change/build again.

yes -- I am a debian developer. We could maintain it together (well - I would prefer you to do so) and I would just mentor/sponsor uploads to debian proper (and probably neurodebian for a good measure ;-) )

your control file should also get at least Build-Depends: debhelper (>= 7) since you do use debhelper in rules. You might also like to add Suggests: openssh-client for the binary package

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

why do you have GPL-2+<special license>? seems it is just GPL-3+, right?

from btrbk.

digint avatar digint commented on July 20, 2024

Thanks

I just pushed a "debian" branch, where I already added your suggestions on the control file. (sorry I kind of missed the branching part of your comment...)

Regarding the license: If I just write License: GPL-2+, can I strip the license text below?

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

On Wed, 08 Jul 2015, Axel Burri wrote:

Thanks

I just pushed a "debian" branch, where I already added your suggestions on
the control file. (sorry I kind of missed the branching part of your
comment...)

Regarding the license: If I just write License: GPL-2+, can I strip the
license text below?

GPL-3+, right? ;)
not entirely... hold on there -- I will send in few tune ups shortly

Yaroslav O. Halchenko, Ph.D.
http://neuro.debian.net http://www.pymvpa.org http://www.fail2ban.org
Research Scientist, Psychological and Brain Sciences Dept.
Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755
Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419
WWW: http://www.linkedin.com/in/yarik

from btrbk.

digint avatar digint commented on July 20, 2024

I see that you have added a bug "whishlist" for adding btrbk to the debian packages.

What is best-practice to simplify the process? Will the debian package maintainer build the package using the "debian" branch from now on? Or do I build the package and upload it somewhere? And how do I trigger debian people when I have a new release?

from btrbk.

digint avatar digint commented on July 20, 2024

@yarikoptic

I've been thinking on Debian releasing, and I came to the conclusion that it has to be done in a separate repository (mainly because I don't want the main btrbk repository to be polluted with distro-specific stuff, especially tags).

So I created btrbk-packaging (https://github.com/digint/btrbk-packaging.git), with two main branches:

  1. master branch, holding only a README.md file which makes clear that this repository is only for packaging.
  2. debian branch, holding the Debian build environment, as well as upstream and debian release tags.
  3. branches might come in the future.

I've been playing around with "git-buildpackage" trying to automate things, but I could not figure out how to really simplify things, so I wrote a quick step-by-step HOWTO in master/README.md (this is how I magage to build debian packages on my gentoo system). Feel free to add some gbp configurations and build instructions on how you would build the package.

If you agree on this, I will delete the "debian" branch in the main btrbk repository.

I also found that the current "btrbk-0.19.3-1" package has some lintian bugs (https://lintian.debian.org/maintainer/[email protected]#btrbk), which I fixed in the debian_fix_lintian_bugs branch by "sed"-ing the btrbk Makefile in override_dh_auto_configure. This would then create a btrbk-0.19.3-2 release.

What do you think?

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

digint/btrbk-packaging#1

from btrbk.

micressor avatar micressor commented on July 20, 2024

I see that btrbk is uploaded to debian. May be that issue can be closed?

from btrbk.

digint avatar digint commented on July 20, 2024

@yarikoptic btrbk-0.20.0 is released, and I have updated the debian branch in btrbk-packaging.

Could you please build a deb package from it and send it to debian testing. If everything goes well, I will close this issue.

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

On Wed, 02 Sep 2015, Axel Burri wrote:

[1]@yarikoptic btrbk-0.20.0 is released, and I have updated the debian branch
in [2]btrbk-packaging.

Could you please build a deb package from it and send it to debian testing. If
everything goes well, I will close this issue.

uploaded 0.20.0-1 to debian sid (unstable) and everything stays fine it
will get to testing in few days (so push your tag for debian
release or let me do it)

from btrbk.

digint avatar digint commented on July 20, 2024

Thanks, I just pushed the new tag.
@yarikoptic please provide me with your email address so I can trigger you outside github next time:
axel <at> tty0.ch

from btrbk.

yarikoptic avatar yarikoptic commented on July 20, 2024

On Wed, 02 Sep 2015, Axel Burri wrote:

[1]@yarikoptic please provide me with your email address so I can trigger you
outside github next time:

the same old (as I use for git commits) [email protected] would work

from btrbk.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.