Config(3pm)
π» Config(3pm) β Lire::Config π
okay so this is Config(3pm) from LogReport's Lire Documentation, and it's literally the module that lets perl slurp up your Lire configuration variables. bestie, it's giving "plumbing but make it cute" β¨
πΈ NAME πΈ
Lire::Config β the vibe is: import Lire configuration variables into perl π«Ά
β¨ SYNOPSIS β¨
use Lire::Config;
Lire::Config->init();
my $cfg->value = Lire::Config->get( 'lr_schemas_path' );
my $var = Lire::Config->get_var( 'lr_schemas_path' );
like, that's the whole mood. no cap π
π¦ DESCRIPTION π¦
This package hands you the API for accessing the Lire configuration. that's it, that's the job, and it does it slayfully π
π METHODS π
so here's the tea: these methods can be called directly on a Lire::Config instance or on the Lire::Config package itself. and in that second case? it's literally the same thing as calling the method on the object returned by the instance() method. same energy, different door π
β instance()
Returns the singleton Lire::Config object β the one main character π
β from which configuration can be queried.
β config_spec()
Returns the configuration specification used by the current configuration.
β config_spec_path()
Returns a list of directories which will be searched for configuration specification files. by default, configuration specifications are only looked for in <datadir/lire/config-spec>. that's the default, ok, don't come for me π
β add_config_spec_path_dir( $dir )
Adds a directory to the list of directories that is used to search for configuration specification files. more places to look = more chances to find your fave π
β del_config_spec_path_dir( $dir )
Removes a directory from the list of directories that is used to search for configuration specification files. bye bestie π
β config_files()
Returns the list of configuration files that will be used for this configuration.
β add_config_path( $path )
Adds configuration files to the list of files that are part of the configuration. oh and heads up β directories will be scanned recursively π
β add_config_file( $file )
Adds a configuration file to the list of files that will be parsed to initialize the configuration.
β del_config_file( $file )
Removes a configuration file from the list of files that are part of the configuration.
β get_config_file($file)
Get a parsed configuration file object from the list of files.
β init()
This method loads and parses the configuration files. it should be called prior to using the get() method to obtain configuration data β like, do this first, fr fr.
β οΈ real talk: this method will throw an exception in case there is an invalid parameter in the configuration. so like... handle it π
β get( $varname )
Returns the configuration value for the $varname configuration variable. init() should have been called to load the configuration data before using this method. it will croak() otherwise β yes, croak, as in it will not be chill about it π
If the $varname is unknown, an exception will also be thrown. unknown var = no vibes = error πΈ
β get_var( $varname )
Returns the configuration value for the $varname configuration variable as the configuration object. init() should have been called to load the configuration data before using this method, and it will croak() otherwise.
If the $varname is unknown, an exception will also be thrown. same rules, same drama π
π₯ DEBUGGING π₯
you can call this module direct from the commandline, e.g. for debugging purposes, by doing something like:
perl -e 'use lib "/path/to/your/share/perl5"; use Lire::Config; \
use Lire::Program; print Lire::Config->get( "lr_mail_from" ), "\n"'
or
perl -e 'use Lire::Config; use Lire::Program; \
$a = Lire::Config->get( lr_converters_init_path ); print "@$a\n"; '
.
(that lone period is part of the original, iykyk π)
π SEE ALSO π
Lire::Config::TypeSpec(3pm)Lire::Config::Value(3pm)
go read those too, they're iconic π
π AUTHORS π
- Wessel Dankers <wsl@logreport.org>
- Francis J. Lacoste <flacoste@logreport.org>
- Joost van Baal <joostvb@logreport.org>
three absolute legends, we stan π«Ά
π§ VERSION π§
$Id: Config.pm,v 1.47 2006/07/23 13:16:28 vanbaal Exp $
π COPYRIGHT π
Copyright (C) 2001-2004 Stichting LogReport Foundation LogReport@LogReport.org
This file is part of Lire.
Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.
π and that's the whole page bestie! ok so this was Config(3pm), part of Lire 2.1.1, dated 2025-09-28 β mwah, go touch some config files, ily, bye! π
β¨π
π¦ where this page comes from
- arch rolling: lire 2.1.1-8 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms