---
name: "config-model-edit"
section: "1p"
platform: "linux"
package: "libconfig-model-itself-perl"
version: "2.006-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/config-model-edit"
---

# config-model-edit(1p)

Deprecated use cme meta edit

## NAME

config-model-edit - Deprecated use cme meta edit

## SYNOPSIS

```
  config-model-edit [options] -model Sshd [ class:Sshd element:Foo ... ]
  # plugin mode
  config-model-edit [options] -model Debian::Dpkg -plugin-file dpkg-snippet.pl
```

## DESCRIPTION

config-model-edit will provides a Perl/Tk graphical interface to edit configuration models that will be used by Config::Model.

Config::Model is a general purpose configuration framework based on configuration models (See Config::Model for details).

This configuration model is also expressed as structured data. This structure data is structured and follow a set of rules which are described for humans in Config::Model.

The structure and rules documented in Config::Model are also expressed in a model in the files provided with Config::Model::Itself.

Hence the possibity to verify, modify configuration data provided by Config::Model can also be applied on configuration models using the same user interface as config-edit.

The model editor program is config-model-edit.

## USAGE

`"config-model-edit"` will read and write model file from `"./lib/Config/Model/models"`.

When you specify a `"-model"` options, only configuration models matching this options will be loaded. I.e.

```
  config-model-edit -model Xorg
```

will load models `"Xorg"` (file `"Xorg.pl"`) and all other `"Xorg::*"` like `"Xorg::Screen"` (file `"Xorg/Screen.pl"`).

## Options

- \-model

  Mandatory option that specifies the configuration model to be edited.

- \-plugin-file foo.pl

  this option can be used to create model plugins. A model plugin is an addendum to  an existing model. The resulting file will be saved in a `".d"` directory besides the  original file to be taken into account.

  For instance:

  ```
   $ config-model-edit -model Debian::Dpkg -plugin-file my-plugin.pl
   # perform additions to Debian::Dpkg and Debian::Dpkg::Control::Source and save
   $ find lib -name my-plugin.pl
   lib/Config/Model/models/Debian/Dpkg.d/my-plugin.pl
   lib/Config/Model/models/Debian/Dpkg/Control/Source.d/my-plugin.pl
  ```

- system

  Read model from system files, i.e. from installed files, not from `"./lib"` directory.

- \-trace

  Provides a full stack trace when exiting on error.

- \-force-load

  Load file even if error are found in data. Bad data are loaded, but should be cleaned up  before saving the model. See menu `"File -> check"` in the GUI.

- \-dot-diagram

  Returns a dot file that represent the structure of the configuration model. `"include"` are represented by solid lines. Class usage (i.e. `"config_class_name"` parameter) is represented by dashed lines. The name of the element is attached to the dashed line.

- \-dump \[ file \]

  Dump configuration content on STDOUT or in the specified with Config::Model syntax.

  By default, dump only custom values, i.e. different from application built-in values or model default values. See -dumptype option for other types of dump

- \-dumptype \[ full \| preset \| custom \]

  Choose to dump every values (full), only preset values or only customized values (default)

- \-load \<cds\_file\_to\_load\> \| -

  Load model from cds file (using Config::Model serialisation format, typically done with -dump option). This option can be used with `"-save"` to directly save a model loaded from the cds file or from STDIN.

- \-load-yaml \<yaml\_file\_to\_load\> \| -

  Load configuration data in model from YAML file. This option can be used with `"-save"` to directly save a model loaded from the YAML file or from STDIN.

- \-dump\_yaml

  Dump a model in YAML format

- \-save

  Force a save of the model even if no edition was done. This option is useful to migrate a model when Config::Model model feature changes.

- \-dir

  Directory where to read and write model

- \-open-item 'path'

  In graphical mode, force the UI to open the node specified. E.g.

  ```
   -open_item 'class:Fstab::FsLine element:fs_mntopts rules'
  ```

## LOGGING

All Config::Model logging was moved from klunky debug and verbose prints to Log::Log4perl. Logging can be configured in the following files:

- •

  ```
   ~/.log4config-model
  ```

- •

  ```
   /etc/log4config-model.conf
  ```

Without these files, the following Log4perl config is used:

```
 log4perl.logger=WARN, Screen
 log4perl.appender.Screen        = Log::Log4perl::Appender::Screen
 log4perl.appender.Screen.stderr = 0
 log4perl.appender.Screen.layout = Log::Log4perl::Layout::PatternLayout
 log4perl.appender.Screen.layout.ConversionPattern = %d %m %n
```

Log4Perl categories are shown in "LOGGING" in config-edit

## AUTHOR

Dominique Dumont, ddumont at cpan dot org

## SEE ALSO

Config::Model,  Config::Model::Node,  Config::Model::Instance,  Config::Model::HashId, Config::Model::ListId, Config::Model::WarpedNode, Config::Model::Value
