Installing Lazarus Packages System-wide lazarus / 32-Linux ---------------------------------------------------------------------- TheChymera · 2018-09-21 21:36 I am trying to make a system-wide Lazarus installation (with a package) consistent with (Gentoo) Linux best practices: (a) system-wide usable files should only be added/removed/changed by the package manager (b) that was it, huh? The way I currently manage this is: (1) I install the Lazarus package with Code: Text  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i lazbuild -B --lazarusdir="." --pcp="/etc/lazarus" --build-ide= --add-package Python-for-Lazarus/python4lazarus/python4lazarus_package.lpk (2) I launch Lazarus with Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i startlazarus and I get Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i The package "python4lazarus_package" is installed, but no valid package file (.lpk) was found.A broken dummy package was created.  This, however, only happens if I run startlazarus as my user. Run as root, it detects the package just fine. Changing the PCP permissions: Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i chmod -R 777 /etc/lazarus Makes it also work as user. This is however not a suitable solution, since any user could modify the files. A Lazarus installation which my package manager knows has python4lazarus support, could have the python4lazarus removed by a user, and would break anything that depends on the feature. How would you suggest I address this? I had thought that Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i /etc/lazarus could be copied to Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i ~/.lazarus whenever Lazarus is first launched. I could do this via a wrapper easily enough, but that would't really suffice. I would need to do the same at least for lazbuild as well and perhaps also other stuff, and it might break in the future contingent on what other executables you might add. I was thinking maybe you have a more sustainable suggestion? I have read this page, and it sounds like it should “just work”, except it appears that if it doesn't have permission to read /etc/lazarus startlazarus creates a no-package-containing directory under ~/.lazarus, instead of copying /etc/lazarus/ (which it can) and taking it from there. Is there any way to instruct it to do so? ---------------------------------------------------------------------- TheChymera · 2018-09-21 22:20 copying /etc/lazarus manually to ~/.lazarus solves the issue (but ideally this should be done automatically when lazarus is started), but I get this pop-up. It would be even cooler if it didn't appear. Would any solution to the aforementioned issue also prevent the pop- up? Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i Welcome to Lazarus 1.8.4 There is already a configuration from version prior 1.8.4 in/home/chymera/.lazarusThe old configuration will be upgraded. If you want to use two different Lazarus versions you must start the second Lazarus with the command line parameter primary- config-path or pcp. For example:/usr/share/lazarus/startlazarus --pcp=~/.lazarus_test ---------------------------------------------------------------------- JuhaManninen · 2018-09-22 07:45 You must study the sources about PrimaryConfigPath and SecondaryConfigPath etc. I guess it should be improved. Maybe you can figure out what goes on there. ---------------------------------------------------------------------- TheChymera · 2018-09-23 22:44 Ok, I was able to solve issue by switching the default PCP and SCP (that way by default the system install is used) Ofc it's not editable, so if that is needed /etc/lazarus needs to be manually copied to ~/.lazarus .  This actually should/needs to be done manually, since writing anything automatically to the user's home dir, may modify the user's files outside of his view. The fix was (before building): Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i         sed -i \                -e "s;SecondaryConfigPath:='/etc/lazarus';Secondar yConfigPath:=ExpandFileNameUTF8('~/.lazarus');g" \                -e " s;PrimaryConfigPath:=ExpandFileNameUTF8('~/.lazarus');PrimaryConfigPat h:='/etc/lazarus';g" \                ide/include/unix/lazbaseconf.inc