[SOLVED] Building Custom Backports - Davmail

If none of the more specific forums is the right place to ask

[SOLVED] Building Custom Backports - Davmail

Postby Mike.Fuller » 2020-03-11 05:05

Hello,

Currently running Debian Buster (amd64). I have followed the instructions on the Debian Wiki regarding building your own custom backports, and have several times successfully built several packages. I was able to successfully build a Davmail backport (package name = davmail) from a previous version in testing that has since been superseded from the mirror.

https://wiki.debian.org/SimpleBackportCreation

Following the last rounds of updates, I seem to be getting two issues with making successful builds:

1. I can no longer pull from the testing or unstable sources [deb-src] without also adding the [deb] to /etc/apt/sources.list ; command output appears as:

Code: Select all
$ sudo apt-get source -t unstable davmail
Reading package lists... Done
E: The value 'unstable' is invalid for APT::Default-Release as such a release is not available in the sources
E: Unable to find a source package for


in my /etc/apt/sources.list I have these entries for testing and unstable:

Code: Select all
# testing, only uncommenting SOURCE repository for making manual backports
#deb http://deb.debian.org/debian/ testing main contrib non-free
deb-src http://deb.debian.org/debian/ testing main contrib non-free

# sid, only uncommenting SOURCE repository for making manual backports
#deb http://deb.debian.org/debian/ unstable main contrib non-free
deb-src http://deb.debian.org/debian/ unstable main contrib non-free



2. When building the package after I do get the source downloaded via apt, when building, the output appears as:

Code: Select all
$ fakeroot debian/rules binary
dh binary --with javahelper
   dh_update_autotools_config
   dh_autoreconf
   dh_auto_configure
   jh_linkjars
dpkg-query: package 'debhelper-compat' is not installed
Use dpkg --contents (= dpkg-deb --contents) to list archive files contents.
jh_linkjars: error: dpkg -L "debhelper-compat" returned exit code 1
make: *** [debian/rules:5: binary] Error 1


According to APT, the package "debhelper-compat" doesn't exist, but there is the package "debhelper" which I have tried building with the Buster Stable version 12.1.1 and the official backport version 12.9~bpo10+1 . Is this something that can be easily remedied in the source of Davmail, or does this have to do with the devscripts? I am theorizing the build instructions are looking for something that doesn't exist, but sometimes these messages are more cryptic than they appear.

So for #1, that just seems like an apt pinning issue, does anyone know where I can tell apt to allow SOURCES from Testing or Unstable without having to resort to editing in the actual package themselves? This will save me from having to edit the sources.list every time I want to download sources for a backport. I am comfortable pulling the source from other means if apt is too much fuss.

For #2, is anyone else able to build Davmail successfully? This is an important package for me because they patched multifactor authentication upstream so we can at least get partial functionality via he O365Manual option until those developers can get the java issue for O365Interactive figured out for the Linux port.

Thanks!
-Mike

Update #1 - So it looks like some of the apt syntax on the Debian wiki is somewhat depriciated. If I use

Code: Select all
$ sudo apt source davmail/unstable


That pulls the sources nicely with my sources.list shown above. Still struggling with the debhelper build error.
Last edited by Mike.Fuller on 2020-03-11 20:06, edited 1 time in total.
Mike.Fuller
 
Posts: 3
Joined: 2020-03-11 04:36

Re: Building Custom Backports - Davmail

Postby shep » 2020-03-11 19:44

Upstream has a Trunk Build for Debian:

https://sourceforge.net/p/davmail/code/HEAD/tree/trunk/

~2/3 the way down.
shep
 
Posts: 403
Joined: 2011-03-15 15:22

Re: Building Custom Backports - Davmail

Postby Mike.Fuller » 2020-03-11 20:06

shep wrote:Upstream has a Trunk Build for Debian:

https://sourceforge.net/p/davmail/code/HEAD/tree/trunk/

~2/3 the way down.


I see it...thanks shep. Not sure why I didn't think to look at the developer's site. :roll: A lot easier then fighting to build from repository sources or installing from testing / sid. Trying to avoid a franken-debian build.
Mike.Fuller
 
Posts: 3
Joined: 2020-03-11 04:36

Re: [SOLVED] Building Custom Backports - Davmail

Postby stevepusser » 2020-03-11 21:00

Debhelper-compat is provided by the debhelper 12 that's stock in Buster. Let me see if I can backport davmail, though I don't mess around with adding and disabling repositories--I just directly download the source files from packages.debian.org.
MX Linux packager and developer
User avatar
stevepusser
 
Posts: 12144
Joined: 2009-10-06 05:53

Re: [SOLVED] Building Custom Backports - Davmail

Postby stevepusser » 2020-03-11 22:52

You can work around the dephelper-compat problem by changing the build-depend in debian/control to
Code: Select all
debhelper (>= 12~)


and then creating a text file called "compat" in the debian folder with the contents:
Code: Select all
12
MX Linux packager and developer
User avatar
stevepusser
 
Posts: 12144
Joined: 2009-10-06 05:53

Re: [SOLVED] Building Custom Backports - Davmail

Postby stevepusser » 2020-03-11 23:08

I also got a successful backport without modifying the build-deps by downloading and using Bullseye's javahelper package for the build, which apparently fixes that bug. I just directly downloaded and put it in my build system's local repo, but you can backport that first if you want to be thorough.
MX Linux packager and developer
User avatar
stevepusser
 
Posts: 12144
Joined: 2009-10-06 05:53

Re: [SOLVED] Building Custom Backports - Davmail

Postby Mike.Fuller » 2020-03-12 11:15

stevepusser wrote:You can work around the dephelper-compat problem by changing the build-depend in debian/control to
Code: Select all
debhelper (>= 12~)


and then creating a text file called "compat" in the debian folder with the contents:
Code: Select all
12


Good eye, I missed that - I'll reach out to Alexandre / Geert to modify the script. Does the tilde on the end just tell it to ignore any point versioning?

stevepusser wrote:I also got a successful backport without modifying the build-deps by downloading and using Bullseye's javahelper package for the build, which apparently fixes that bug. I just directly downloaded and put it in my build system's local repo, but you can backport that first if you want to be thorough.


Yeah they've been struggling with that on Linux. In the current build I need the O365Manual for the one time token generation, then I switch to O365Modern and Thunderbird runs smoothly, the MFA requests push to the phone app. I do hope they get O365Interactive solved. I am supposed to be getting my Pursim phone soon, and as such I won't have the app. MFA has to be done by entering a SMS code / phone call. Someone needs to find a way to run that silly thing in a container and have it auto approve all the requests :twisted: Microsoft pulled the app passwords on everyone, so davmail has become a necessity for me to get my work e-mail at home if I want to automate the use of GPG.

Back to the task - I was able to backport javahelper and then backport davmail. The O365Interactive still does not work unfortunately - still need to do O365Manual then switch it to O365Modern, but at least I learned some more about debian and I can now use manual authentication. How did you know it was that specific package (javahelper) that needed updating? Thanks for the help Steve!
Mike.Fuller
 
Posts: 3
Joined: 2020-03-11 04:36


Return to General Questions

Who is online

Users browsing this forum: No registered users and 16 guests

fashionable