Recent

Author Topic: Linux Laz Packages have issues.  (Read 2041 times)

dbannon

  • Hero Member
  • *****
  • Posts: 3822
    • tomboy-ng, a rewrite of the classic Tomboy
Linux Laz Packages have issues.
« on: April 30, 2025, 01:56:35 pm »
I am talking here about the binary install packages for Linux, .deb, .rpm etc.

There are a number of problems with the (very clever) tricks that Lazarus uses when it is installed in read only space, see below) on Linux.  This typically happens when a user uses a deb, rpm or pacman package to install Lazarus (on Linux) instead of the (IMHO better) model of downloading source and building in user space.

Given that some people do seem to prefer to install eg a Deb, is it time to look at a Lazarus .deb (and .rpm and .zst) package that just installs the source code. Provide a script with the source that will, when invoked by a user, build a working Lazarus in their own home directory ?

Even call that script startlazarus if you must ! The script would look to see if the user has an install in the default place, if so, load it, if not, ask user if they want to install a working Lazarus.

This approach would sole things like -

And, I am quite sure lots and lots more.

Some 'work shopping' needed to get that 'startlazarus' behavior right but it would sure prevent a lot of dissatisfied users, most of whom have just given up and crossed FPC/Lazarus off their list.

Maybe consider some trickery with a post install script for the package (although against the spirit, debian packages are not ever to mess around in a user directory. But ...

Any thoughts ?

Davo

Edit : link to post about clen up and build problem
« Last Edit: April 30, 2025, 02:04:59 pm by dbannon »
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

robert rozee

  • Sr. Member
  • ****
  • Posts: 376
Re: Linux Laz Packages have issues.
« Reply #1 on: May 05, 2025, 09:25:52 am »
i wonder how much smaller the .deb packages would be if all the pre-built stuff (including object files, but excluding the ELF file for FPC) was removed? currently we have .deb files sized at:

fpc-laz_3.2.2-210709_amd64.deb      2025-01-19   39.3 MB
fpc-src_3.2.2-210709_amd64.deb      2025-01-19   30.6 MB    
lazarus-project_3.8.0-0_amd64.deb   2025-01-19   148.4 MB
   

has anyone experimented with this?

i think that building 'locally' in either the user's directory or in /home/user/Public would be an excellent idea.


cheers,
rob   :-)

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Linux Laz Packages have issues.
« Reply #2 on: May 08, 2026, 08:44:32 am »
I am talking here about the binary install packages for Linux, .deb, .rpm etc.

There are a number of problems with the (very clever) tricks that Lazarus uses when it is installed in read only space, see below) on Linux.  This typically happens when a user uses a deb, rpm or pacman package to install Lazarus (on Linux) instead of the (IMHO better) model of downloading source and building in user space.

Given that some people do seem to prefer to install eg a Deb, is it time to look at a Lazarus .deb (and .rpm and .zst) package that just installs the source code. Provide a script with the source that will, when invoked by a user, build a working Lazarus in their own home directory ?

Even call that script startlazarus if you must ! The script would look to see if the user has an install in the default place, if so, load it, if not, ask user if they want to install a working Lazarus.

This approach would sole things like -

And, I am quite sure lots and lots more.

Some 'work shopping' needed to get that 'startlazarus' behavior right but it would sure prevent a lot of dissatisfied users, most of whom have just given up and crossed FPC/Lazarus off their list.

Maybe consider some trickery with a post install script for the package (although against the spirit, debian packages are not ever to mess around in a user directory. But ...

Any thoughts ?

Davo

Edit : link to post about clen up and build problem

Any thoughts ?

Yes.

The first would be to reduce the need to recompile the IDE by incorporating a new efficient plug-in system. For example:

P.I.S.S. a PlugIn-framework / Service-locator Solution
https://forum.lazarus.freepascal.org/index.php/topic,73966.0.html



Given that some people do seem to prefer to install eg a Deb, is it time to look at a Lazarus .deb (and .rpm and .zst) package that just installs the source code. Provide a script with the source that will, when invoked by a user, build a working Lazarus in their own home directory ?

Same purpose. Different idea.

What other IDEs from other programming languages ​​do you know that have the need for and ease of recompilation that Delphi and Lazarus have?

Aside from core developers of FPC or Lazarus, the vast majority of programmers shouldn't need to recompile either FPC or Lazarus [with the new plug-in system]. Therefore, rebuilding FPC or Lazarus would depend on an administrator user (root or sudo).

My second idea is to change the location of FPC and Lazarus to facilitate recompilation on the few occasions when it is necessary.

Furthermore, facilitate integration with Git for updating the source code and creating new builds whenever the programmer wishes.

Create DEB files for stable, fixes, and main to facilitate access for beginners who want to evolve into core developers.

robert rozee

  • Sr. Member
  • ****
  • Posts: 376
Re: Linux Laz Packages have issues.
« Reply #3 on: May 08, 2026, 03:56:36 pm »
[...] Aside from core developers of FPC or Lazarus, the vast majority of programmers shouldn't need to recompile either FPC or Lazarus [with the new plug-in system]. Therefore, rebuilding FPC or Lazarus would depend on an administrator user (root or sudo) [...]

for myself, being able to modify and then rebuild/recompile both FPC and Lazarus for Linux x86-64 is somewhat essential in order to successfully create functional ELF binaries of my applications. this is due to a philosophical stance taken by the FPC developers, a stance that they seem unable to move away from, and which results in ELF binaries (for GUI applications that one creates) to contain faulty symbol versioning information if compiled with the pre-built FPC compiler and linked with the pre-built Lazarus libraries routines.


[...] My second idea is to change the location of FPC and Lazarus to facilitate recompilation on the few occasions when it is necessary [...]

this is an excellent idea! in an ideal world the .deb Linux packages should offer the option of either installing to root-owned filesystem space, or installing to the current user's filesystem space.

the current approach, of installing under root and then later (as required) creating modified copies under the current user, is both inelegant and wasteful. 


cheers,
rob   :-)
« Last Edit: May 08, 2026, 04:00:26 pm by robert rozee »

 

TinyPortal © 2005-2018