Thanks for the tips on this. I am brand new to packaging Debian products. The product I am working on packaging is https://github.com/keepassxreboot/keepassxc. My main goal with packaging it is because I am a big fan of it and I keep my systems clean so I want a pure Debian package that I can install. Hopefully others will find it useful as well. I am following the new maintainers guide for now and I don’t see anything too taxing in it beyond the work needed and the care that needs to be taken to make sure it is done right.
Right now I am still at the make sure it installs cleanly stage. I spun up a clean Jessie box in vagrant and have been hammering at the upstream install instructions to ensure they are valid for building from source rather than using the pre-built packages. Thanks for tips on this, I had completely forgort about connecting to a remote server. -- Matt Jones @CaffeinatedEng On 2/26/17, 11:15 AM, "Christian Seiler" <christ...@iwakd.de> wrote: On 02/26/2017 04:52 PM, The Wanderer wrote: > On 2017-02-26 at 10:47, Ghislain Vaillant wrote: > >> On Sun, 2017-02-26 at 10:15 -0500, matt jones wrote: >> >>> I am packaging a gui that has dependencies for qt and such. How do >>> I go about ensuring that X is available as well? Do I list that as >>> a dependency as well. The upstream maintainers don’t call it out >>> specifically but it is understood. Links to docs are always >>> welcome. >> >> Usually, the toolkit your application depends on (here Qt), will >> bring the necessary dependencies for you. So you don't need to care >> about X. > > I recall that historically the rule was "you don't depend on having X > packages installed" regardless, on the grounds that it is or was > possible to connect to an X instance running on a different machine (it > is called "the X server", after all) - but I don't spot that in current > policy, and I do seem to remember reading discussion about repealing > that rule on the grounds that doing this hasn't actually _worked_ in > modern X for years if not longer. I'm not saying it works great, and X forwarding has its problems, but in general from my experience most programs do still work when forwarded via X11. Heck, even Firefox works. And I know plenty of people that use X11 forwarding in various ways (though not necessarily Firefox). Even OpenGL stuff works, it just falls back to software rendering via Mesa in that case. >From my POV, packaging a GUI application is simple in general: - dh_shlibdeps will take care of all the dependencies via shared libraries (e.g. Qt) automatically, so you don't have to care about that directly - if you require certain plugins for a library you are using to be available, Depend: or Recommend: those packages (depending on how fatal their non-availability is) - if you need some framework such as KDE, Depend: on that (for example, KDE5 packages typically require a Depends: kde-runtime) - if you require a DBus bus to be around, Depend: dbus-x11 (or Recommend: it if the non-availability is non-fatal) - if the package contains any scripts, make sure that any tools required from those scripts are in your dependencies (since they won't be auto-detected at build time) Regards, Christian