Recent

Author Topic: Accessing the "registry" of other programs  (Read 350 times)

EddeVries

  • Newbie
  • Posts: 4
Accessing the "registry" of other programs
« on: May 15, 2026, 03:39:51 pm »
I'm converting a number of programs from Windows to Linux (Mint).
One of the programs reads/writes registry-values of a few other programs.

In Windows, the registry is accessable by all programs, so this is not an issue.
However, in Linux the "registry" is only accessable by its own program (/home/[user]/.config/[application_name]/reg.xml)

Is there a way to point the registry to another reg.xml so it can read/write values in that file?
Or can this only be done by using ini-files?

Bart

  • Hero Member
  • *****
  • Posts: 5731
    • Bart en Mariska's Webstek
Re: Accessing the "registry" of other programs
« Reply #1 on: May 15, 2026, 11:04:29 pm »
Registry is an alien concept to linux.
For cross-platform development I wouldn't use it.

Bart

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Accessing the "registry" of other programs
« Reply #2 on: May 16, 2026, 01:11:45 am »
I'm converting a number of programs from Windows to Linux (Mint).
One of the programs reads/writes registry-values of a few other programs.

In Windows, the registry is accessable by all programs, so this is not an issue.
However, in Linux the "registry" is only accessable by its own program (/home/[user]/.config/[application_name]/reg.xml)

Is there a way to point the registry to another reg.xml so it can read/write values in that file?
Or can this only be done by using ini-files?

Linux does not have a centralized registry like Windows; instead, applications typically use individual config files (INI, XML, JSON) located in ~/.config/.

To allow one program to read/write another's data, you can use symbolic links to point to a shared file, shared folders with appropriate permissions, or adopt standard INI/configuration file practices, which are the native Linux equivalent.

Here are the best ways to achieve cross-program data access on Linux:

- Symbolic Links (ln -s): Point both applications to a single shared configuration file. If Program A writes to ~/.config/shared_settings.xml, you can create a link from Program B's expected path to that file.

- Shared Configuration File: Instead of relying on /home/[user]/.config/[application_name]/, configure the applications to look for a shared file in a common directory, such as a dedicated folder in the user's home directory.

- INI Files/Text Configuration: Linux relies heavily on plain text configuration files. Modifying or replacing your XML-based registry with a shared INI file (which can be edited using tools like sed or awk in scripts) is a robust and native approach.

Beyond all that, my choice remains to use a local or remote database. For example, Firebird, which is free and open source:

Firebird (free and open source):
https://firebirdsql.org/

TurboBird IBX (Firebird admin tool, open source too)
https://forum.lazarus.freepascal.org/index.php/topic,72948.msg580579.html#msg580579

https://github.com/mdadali/TurboBird/
https://github.com/mdadali/TurboBird/tags
https://github.com/mdadali/TurboBird/releases

valdir.marcos

  • Hero Member
  • *****
  • Posts: 1285
Re: Accessing the "registry" of other programs
« Reply #3 on: May 16, 2026, 01:12:32 am »
Registry is an alien concept to linux.
For cross-platform development I wouldn't use it.

Bart

+1

EddeVries

  • Newbie
  • Posts: 4
Re: Accessing the "registry" of other programs
« Reply #4 on: May 31, 2026, 12:32:37 pm »
Registry is an alien concept to linux.
For cross-platform development I wouldn't use it.

Bart

Yeah, I know, for new Linux programs I woudn't use it. But it's about existing Window-programs.

EddeVries

  • Newbie
  • Posts: 4
Re: Accessing the "registry" of other programs
« Reply #5 on: May 31, 2026, 12:39:07 pm »
Quote
Here are the best ways to achieve cross-program data access on Linux:

Ok, thanks. I think the best way is to rewrite all programs to use shared INI-files. Future-proof, but a lot of work...

 

TinyPortal © 2005-2018