Recent

Author Topic: Creating .deb packages for Lazarus applications?  (Read 29042 times)

metis

  • Sr. Member
  • ****
  • Posts: 276
Re: Creating .deb packages for Lazarus applications?
« Reply #60 on: February 22, 2023, 02:50:47 pm »
Also found two programs to make Debian packages. I haven't tested them - Link #2
Has anyone had any experience with the Debian Packager, in the meantime ?
« Last Edit: February 22, 2023, 02:58:10 pm by metis »
Life could be so easy, if there weren't those f*** Details.
My FFmpeg4Lazarus = FFPlay4Laz + FFGrab4Laz + FFInfo4Laz

dbannon

  • Hero Member
  • *****
  • Posts: 2445
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Creating .deb packages for Lazarus applications?
« Reply #61 on: February 24, 2023, 12:10:11 am »
No, I have not, but I suggest that a "one size fits all" approach is going to be harder that you imagine. Especially if you are compiling with FPC, have extra units you need, want to make a src package....

Making a binary is easy, in very simplified terms, you build a directory (I call it BUILD) containing the things you want to appear on the user's system. You then run something like -

fakeroot dpkg-deb -b BUILD/. myapp_amd64.deb <enter>

In practice that will probably have a lot of lintian errors but will probably work fine.

Building a SRC package to submit to debian is a bit harder, it has to (later) build (from src package to binary package) with make and those lintian errors I mentioned will have the debian people shaking their heads. But all that can be fixed and scripted if you are willing to put a bit of effort in.

Here is my script to build debian and rpm binary packages for amd64, i386 and raspi (along with a kit to package a windows installer) - https://github.com/tomboy-notes/tomboy-ng/blob/master/package/package.bash

Its probably far more complicated that you need initially but look into the methods inside.

Here is a my doc of my method of building a SRC a package that I routinely submit to Debian (v0.36 accepted into unstable today) - https://github.com/tomboy-notes/tomboy-ng/blob/master/prepare.md

In both cases, most certainly NOT scripts you can use because they are setup for my particular project. But you can easily pick out the bits you want, modify them accordingly and discard the remainder.

Davo


Lazarus 2, Linux (and reluctantly Win10, OSX)
My Project - https://github.com/tomboy-notes/tomboy-ng

 

TinyPortal © 2005-2018