Thx a lot for this very accurate and truly useful reply.

FYI, I'm the person who created the debian source package, and I will fix it to 
corresponds to
Debian standards.

In particular, the Qt4 dependency is simply a mistake from the OBS maintainer. 
When creating
packages manually, our script (works for ubuntu+debian) replaces debian/control 
it with a custom
file that depends on the distribution and uses Qt5 most of the time, so it 
shoudn't be hard to fix.

Best regards
C.

On 08/05/2018 08:37, Niels Thykier wrote:
> Cyril Soler:
>> The retroshare software already ships debian packages for Debian 8+9, as can 
>> be seen here:
>> https://build.opensuse.org/project/show/network:retroshare
>>  
> Ok, so there is an initial packaging.  That is a good start.
>
>> [...]
>>
>> What's missing is the distribution part. So according to the document you're 
>> citing page 45, what we
>> need is:
>>
> (quoting out of order to answer the most important point first)
>
>> - "find a Debian developer that will sponsor your package". This what I 
>> thought I was asking for.
>> Maybe the tag "RFP" is not appropriate then?
> This is probably the source the confusion.  The RFP is a "Request For
> Package" in the sense "I would like someone to create and maintain a
> package".  If one is actively working on the package, it should be
> renamed to "ITP" (Intend To Package) to avoid duplicated work.
>   However, it is not useful to request sponsor ship and reviews on wnpp
> bugs (e.g. this bug).  This is partly because of historical reasons and
> partly because there are way too many wnpp bugs for people to be able to
> sanely track them.
>
> Sponsorship requests are instead filed as (separate) bugs against the
> sponsorship-requests pseudo package (e.g. via "reportbug
> sponsorship-request").  You can see existing requests here:
>   https://bugs.debian.org/cgi-bin/pkgreport.cgi?package=sponsorship-requests
>
>> - "prepare a source package". We have this already. Packages build perfectly 
>> well with pbuilder. the
>> -pedantic flag may raise a few bits that I can fix easily.
> I had a superficial look at the package (apologies if it is a bit
> technical/assumes too much Debian specific knowledge).  Based on it, I
> have some suggestions for things you may want to look at before
> requesting a review (all of this is based on the OBS link you sent me):
>
>  * The debian/control file lists QT4 libraries.  Unfortunately, the QT
>    team is actively trying to remove the last remains of QT4 (in favour
>    of QT5).  A potential sponsor will probably be aware of this and be
>    hesitant of introducing a new QT4 relation now.
>
>    - Note that all uploads will target Debian unstable (and not Debian
>      stable or oldstable).  Generally "new" packages are not added to
>      the existing stable release (though they can be added to
>      stable-backports)
>
>  * Ideally, the final "non-native" source package will be downloadable
>    from a "dget'able" URL (i.e. an URL where you can run "dget <URL>"
>    and it will download the Debian source package).  I cannot get that
>    to work with OBS.
>    Among because the [.dsc file on OSB] is for a native package with an
>    "invalid" name for the tarball (Debian only allows lower-case
>    characters).  I note the OBS seems to rewrite it and create a valid
>    [non-native source package during the build].
>
>    - Note: native packages are "built by Debian only for Debian" and the
>      most obvious case would be "dpkg".  Admittedly, there are some that
>      believe this distinction is no longer useful and that "native"
>      packages should be universally converted to what we call
>      "non-native" packages.
>
>    - If OBS cannot provide this functionality, you can upload the
>      package to mentors.debian.net, which does provide it.  As will any
>      other plain static hosting site
>
>    - You can find "dget" in the devscripts package on a Debian-based
>      system.
>
>  * The debian/changelog will be reserved for "Debian related changes"
>    (it is acceptable to highlight important upstream changes, but it is
>     not the upstream changelog).  The Debian changelog will be expected
>    to have a new entry with a single line formatted as:
>      "  * Initial release to Debian.  (Closes: #659069)".
>
>    For most parts, you can simply rename the existing changelog and
>    create one with:
>      "dch --create --package retroshare --newversion 0.6.4-1'
>
>    The "existing" changelog will still be useful for documenting
>    upstream changes.
>
>     - Note that the Debian changelog includes a "-1".  This is known as
>       the Debian revision and is incremented whenever there is a package
>       change without changing the upstream version (it is then reset to
>       "-1" when a new upstream release is packaged).
>
>     - See also:
> https://www.debian.org/doc/manuals/developers-reference/ch06.en.html#bpp-debian-changelog
>       (Note it assumes that debian/changelog is solely used for the
>        Debian packaging.
>
>
> The items above are probably the most important ones to resolve as they
> can trigger "canned" responses from reviewers.
>
>  * The "dget" part is the primary method for downloading source packages
>    to review.
>
>  * On the changelog and native/non-native source package parts, then
>    those are "common mistakes" for new packagers.
>
>  * The QT4 item is (as mentioned above) being retired from Debian
>    unstable.
>
>
>
> Beyond that, you may also want to look at the following:
>
>
>  * debian/rules can probably be reduced to something like:
>
>    """
>    #!/usr/bin/make -f
>
>    %:
>       dh $@
>
>    override_dh_auto_configure:
>       dh_auto_configure --buildsystem qmake-qt4 -- \
>               CONFIG-=debug CONFIG+=release
>    """
>
>    (Admittedly, untested).  This would remove a few deprecated
>    tools/cmdline arguments plus add some (now) required features
>    that are not present in the existing rules file.  Notably the
>    "build-arch" and "build-indep" targets (via the %: wildcard).
>
>  * If you can, run lintian from unstable or stable-backports on the
>    the .changes files from a build that produces both a source package
>    and binary packages (.debs) in unstable.
>
>    - Note: "lintian-info -t <tag-name>" is useful for getting more
>      information about findings from lintian.
>
>    - Additional review can be obtained via -I and then finally
>      -L +pedantic.  Mind you at this point you are dealing a lot more
>      with "style and best practises" rather than "issues".
>
>    Lintian is the source of many canned responses as well.  It helps
>    a lot if you have already seen the lintian output and know whether
>    it is a false-positive or something you need help with fixing (or,
>    in case of pedantic tags, not worth fixing).
>
>
> Hope this is useful.  Remember that you can use
> debian-ment...@lists.debian.org or #debian-mentors on IRC (irc.oftc.net)
> if you have any questions to the above (note that IRC have some periods
> where no one is around, so you may need to stay online for a while to
> get a response).
>
>> Thx for the help. We're definitely making some progress!
>>
>> Cyril
>>
>>
>>  [...]
> You are welcome. :)  Thanks for your interest in improving Debian.
> ~Niels
>
>
>
> [.dsc file on OSB]:
> https://build.opensuse.org/package/view_file/network:retroshare/RetroShare/retroshare.dsc?expand=1
>
> [non-native source package during the build]:
> """
> [ 2504s] DEBS/retroshare_0.6.4_amd64.deb
> [ 2504s] DEBS/retroshare-nogui_0.6.4_amd64.deb
> [ 2504s] DEBS/retroshare_0.6.4.diff.gz
> [ 2504s] DEBS/retroshare_0.6.4.dsc
> [ 2504s] DEBS/retroshare_0.6.4_amd64.changes
> [ 2504s] DEBS/retroshare_0.6.4.orig.tar.gz
> """
>
> Note the .diff.gz and the .orig.tar.gz

-- 
To secure your emails, use PGP (e.g. enigmail on thunderbird)
My key: 0xD1F93BE3 
<http://pgp.mit.edu/pks/lookup?op=get&search=0xA4BD76DED1F93BE3>

Reply via email to