Recent

Author Topic: Scripts to generate oficial FPC and Lazarus deb packages  (Read 1030 times)

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Scripts to generate oficial FPC and Lazarus deb packages
« on: May 08, 2026, 07:47:57 am »
Here are the generated deb files:

Lazarus Bugfix Release 4.6
https://forum.lazarus.freepascal.org/index.php/topic,73549.0.html

Lazarus Linux amd64 DEB / Lazarus 4.0
https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%204.0/

fpc-laz_3.2.2-210709_amd64.deb      2026-02-22   39.3 MB
fpc-src_3.2.2-210709_amd64.deb      2026-02-22   30.6 MB
lazarus-project_4.6.0-0_amd64.deb   2026-02-22   157.0 MB


Are the scripts to generate oficial FPC and Lazarus deb packages available?

If so, where?

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12901
  • FPC developer.
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #1 on: May 08, 2026, 11:05:40 am »
Afaik for FPC, debian has own scripts, but they are based on the FPC scripts in the fpcbuild repository.

I think that you can download debian's package script on the package page of debian, or at least you could a decade ago :-)
« Last Edit: May 08, 2026, 01:10:12 pm by marcov »

PeterBB

  • Jr. Member
  • **
  • Posts: 90
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #2 on: May 08, 2026, 12:16:29 pm »
Are the scripts to generate oficial FPC and Lazarus deb packages available?

If so, where?

If you mean Debian's packages of FPC & Lazarus (as opposed to FPC & Lazarus's deb packages)
this might help
https://wiki.debian.org/BuildingTutorial

(You need to be running a Debian system, as several Debian specific tools are used)

The respective package pages are here;
https://tracker.debian.org/pkg/fpc
https://tracker.debian.org/pkg/lazarus

Cheers,
Peter





valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #3 on: May 09, 2026, 02:29:41 am »
Afaik for FPC, debian has own scripts, but they are based on the FPC scripts in the fpcbuild repository.

I think that you can download debian's package script on the package page of debian, or at least you could a decade ago :-)


Are the scripts to generate oficial FPC and Lazarus deb packages available?

If so, where?

If you mean Debian's packages of FPC & Lazarus (as opposed to FPC & Lazarus's deb packages)
this might help
https://wiki.debian.org/BuildingTutorial

(You need to be running a Debian system, as several Debian specific tools are used)

The respective package pages are here;
https://tracker.debian.org/pkg/fpc
https://tracker.debian.org/pkg/lazarus


Cheers,
Peter

I am curious why both of you have wrongly thought I was asking about Debian's distribution packages for FPC & Lazarus [https://www.debian.org] instead of SourceForge deb packages [https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%204.0/]?


I know how to build deb files [in general] and how to work on Lintian [https://wiki.debian.org/Lintian].

I am just trying to understand how the oficial Lazarus Team build the files "fpc-laz_3.2.2-210709_amd64.deb", "fpc-src_3.2.2-210709_amd64.deb" and "lazarus-project_4.6.0-0_amd64.deb".
« Last Edit: May 09, 2026, 09:16:23 am by valdir.marcos »

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #4 on: May 09, 2026, 02:33:20 am »
Afaik for FPC, debian has own scripts, but they are based on the FPC scripts in the fpcbuild repository.

I think that you can download debian's package script on the package page of debian, or at least you could a decade ago :-)


How fpcbuild repository [https://gitlab.com/freepascal.org/fpc/build/-/tree/main/install/debian?ref_type=heads] is used to build the files below?

Here are the generated deb files:

Lazarus Linux amd64 DEB / Lazarus 4.0
https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%204.0/

fpc-laz_3.2.2-210709_amd64.deb      2026-02-22   39.3 MB
fpc-src_3.2.2-210709_amd64.deb      2026-02-22   30.6 MB
lazarus-project_4.6.0-0_amd64.deb   2026-02-22   157.0 MB

Thausand

  • Hero Member
  • *****
  • Posts: 560
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #5 on: May 09, 2026, 02:49:15 am »
How fpcbuild repository [https://gitlab.com/freepascal.org/fpc/build/-/tree/main/install/debian?ref_type=heads] is used to build the files below?
Some instruct: https://wiki.freepascal.org/Debian_Packaging
A docile goblin always follow HERMES.md

dbannon

  • Hero Member
  • *****
  • Posts: 3826
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #6 on: May 09, 2026, 03:30:15 am »
Some instruct: https://wiki.freepascal.org/Debian_Packaging

Looks like the content (as opposed to fiddling around) was created in 2008 or 2007. I guess who ever makes those packages for us likes to keep the details to them selves. Sigh ...

Davo
Lazarus 4, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #7 on: May 09, 2026, 06:27:02 am »
How fpcbuild repository [https://gitlab.com/freepascal.org/fpc/build/-/tree/main/install/debian?ref_type=heads] is used to build the files below?

Some instruct: https://wiki.freepascal.org/Debian_Packaging

Looks like the content (as opposed to fiddling around) was created in 2008 or 2007. I guess who ever makes those packages for us likes to keep the details to them selves. Sigh ...

Davo

So far, so it seems...

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12901
  • FPC developer.
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #8 on: May 09, 2026, 11:20:38 am »
Looks like the content (as opposed to fiddling around) was created in 2008 or 2007. I guess who ever makes those packages for us likes to keep the details to them selves. Sigh ...

Do you have concrete complaints, other than the obvious SVN line (which was valid 5 years ago) ? (and honestly, I would replace it with a GIT command if I knew how to export sources uses GIT)  Since there hasn't been a release in the git era, there are still a lot of SVN references.

There is also https://wiki.freepascal.org/Release_engineering#Building_a_deb

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 12411
  • Debugger - SynEdit - and more
    • wiki
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #9 on: May 09, 2026, 02:02:56 pm »
(and honestly, I would replace it with a GIT command if I knew how to export sources uses GIT)

(don't miss the dot at the end)
Code: Bash  [Select][+][-]
  1. git  -C  /repo_dir --work-tree=/folder_to_export_to  restore  .

dbannon

  • Hero Member
  • *****
  • Posts: 3826
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #10 on: May 10, 2026, 02:25:56 am »
Do you have concrete complaints,
No Marcov, the scarcity of documentation is something I have gotten used to.
Quote
There is also https://wiki.freepascal.org/Release_engineering#Building_a_deb
Indeed, and that looks to be a far more helpful page ! What a good thing !

I dare to suggest that the way Debian does it might be worth considering (no, not their breaking it up into little bits !). They make a SRC deb that can then be used to build all the supported (ie unix like) system's binary debs. A SRC deb is a bit harder to create but once made it does save all the platform by platform grunt work. I build a SRC deb for my app in a single script (fpc would, of course, be a much bigger project).

Looking at the Makefile is also interesting. Doing "make help" tells us there are four targets, doing the old bash trick of "make tab tab" shows 164 potential targets. Be really nice to have more than four with  a few words about what they are for. But still not complaining....

Davo
Lazarus 4, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12901
  • FPC developer.
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #11 on: May 10, 2026, 09:28:54 pm »
I dare to suggest that the way Debian does it might be worth considering (no, not their breaking it up into little bits !). They make a SRC deb that can then be used to build all the supported (ie unix like) system's binary debs. A SRC deb is a bit harder to create but once made it does save all the platform by platform grunt work. I build a SRC deb for my app in a single script (fpc would, of course, be a much bigger project).

It does not. Uninstalling the source deb, doesn't install the built parts. 

Quote
Looking at the Makefile is also interesting. Doing "make help" tells us there are four targets, doing the old bash trick of "make tab tab" shows 164 potential targets. Be really nice to have more than four with  a few words about what they are for. But still not complaining....

Yes. More vague complaints. Few concrete.

dbannon

  • Hero Member
  • *****
  • Posts: 3826
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #12 on: May 12, 2026, 08:52:19 am »
I dare to suggest that the way Debian does it might be worth considering.....

It does not. Uninstalling the source deb, doesn't install the built parts. 
Sorry marcov, I really do not understand your answer. You do not Uninstall a source deb (nor install it for that matter). A source deb is used to make binary debs which can be installed and, given the right content, uninstalled.

Quote
Quote
Looking at the Makefile is also interesting. Doing "make help" tells us there are four targets, doing the old bash trick of "make tab tab" shows 164 potential targets. Be really nice to have more than four with  a few words about what they are for. But still not complaining....

Yes. More vague complaints. Few concrete.

Cannot see how I can be more concrete than that, there are four documented targets, maybe as many as 164 undocumented ones. Hard, confirmable, easily demonstrated numbers.

I fully understand documenting such things is a dull, boring task and takes the time of valuable developers. I only mention it in the hope some may consider adding those "few words" next time they poke a particular part. I am sure you would agree.

Davo




Lazarus 4, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

Thausand

  • Hero Member
  • *****
  • Posts: 560
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #13 on: May 12, 2026, 09:26:40 am »
@dbannon
I not have full understand. package source debian is like gentoo package (source distribute and is compile local machine) and is same as is write this ? : https://optimizedbyotto.com/post/debian-source-package-git/ or is other solution ?
A docile goblin always follow HERMES.md

marcov

  • Administrator
  • Hero Member
  • *
  • Posts: 12901
  • FPC developer.
Re: Scripts to generate oficial FPC and Lazarus deb packages
« Reply #14 on: May 12, 2026, 09:44:13 am »
I dare to suggest that the way Debian does it might be worth considering.....

It does not. Uninstalling the source deb, doesn't install the built parts. 
Sorry marcov, I really do not understand your answer. You do not Uninstall a source deb (nor install it for that matter). A source deb is used to make binary debs which can be installed and, given the right content, uninstalled.

Then I'm not understanding what you want to do differently wrt debian packages? Anyway, I see that there are no DEBS on the FPC site for FPC 3.2.2.

That is an anomaly, that used to be there for every release. The debs on the lazarus site are own builds from Lazarus, not official FPC ones.

Quote
Quote
Looking at the Makefile is also interesting. Doing "make help" tells us there are four targets, doing the old bash trick of "make tab tab" shows 164 potential targets. Be really nice to have more than four with  a few words about what they are for. But still not complaining....

Yes. More vague complaints. Few concrete.

Cannot see how I can be more concrete than that, there are four documented targets, maybe as many as 164 undocumented ones. Hard, confirmable, easily demonstrated numbers.

Code: [Select]
C:\repo\fpcbuild>make help

Targets
all Alias for build
build Build a new compiler and all packages
install Install newly build files
zipinstall Create a zip/tar archive for every package
singlezipinstall
Create a single zip/tar archive
crosszipinstall
Build a cross compiler and create zip/tar for every package
crosssinglezipinstall
Build a cross compiler and a create single zip/tar archive

Distribution Targets:
rpm Build linux .rpm packages
deb Build linux .deb packages
inno Build Windows (Innosetup) based installer
innox64 Build Win32-Win64 cross compiler installer
innox86x64 Build Windows (Innosetup) combined installer for Win32 and Win64
innoce Build Win32-Wince cross compiler installer
innomsdos Build Win32-MsDos cross compiler installer
innoandroid Build Win32-Android cross compiler installer
tar Build .tar installer

FV based installer Targets:
go32v2zip Build .zip files for go32v2
os2zip Build .zip files for OS/2
sourcezip Build .zip files for the sources

Hard evidence indeed :-)  Of course there some of the supported targets are built modularly.

Quote
I fully understand documenting such things is a dull, boring task and takes the time of valuable developers. I only mention it in the hope some may consider adding those "few words" next time they poke a particular part. I am sure you would agree.

I have an hunch you ran make help on the normal, not the fpcbuild repo.

 

TinyPortal © 2005-2018