mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 13:07:46 +00:00
Userland: Introduce ConfigServer and LibConfig
ConfigServer is an IPC service that provides access to application configuration and settings. The idea is to replace all uses of Core::ConfigFile with IPC requests to ConfigServer. This first cut of the API is pretty similar to Core::ConfigFile. The old: auto config = Core::ConfigFile::open_for_app("App"); auto value = config->read_entry("Group", "Key"); The new: auto value = Config::read_string("App", "Group", "Key"); ConfigServer uses the ~/.config directory as its backing store and all the files remain human-editable. :^)
This commit is contained in:
parent
c97f7ea23b
commit
bdcd0abf9d
12 changed files with 319 additions and 0 deletions
18
Userland/Services/ConfigServer/CMakeLists.txt
Normal file
18
Userland/Services/ConfigServer/CMakeLists.txt
Normal file
|
@ -0,0 +1,18 @@
|
|||
serenity_component(
|
||||
ConfigServer
|
||||
REQUIRED
|
||||
TARGETS ConfigServer
|
||||
)
|
||||
|
||||
compile_ipc(ConfigServer.ipc ConfigServerEndpoint.h)
|
||||
compile_ipc(ConfigClient.ipc ConfigClientEndpoint.h)
|
||||
|
||||
set(SOURCES
|
||||
ClientConnection.cpp
|
||||
main.cpp
|
||||
ConfigServerEndpoint.h
|
||||
ConfigClientEndpoint.h
|
||||
)
|
||||
|
||||
serenity_bin(ConfigServer)
|
||||
target_link_libraries(ConfigServer LibIPC)
|
Loading…
Add table
Add a link
Reference in a new issue