---
name: "Config::Model::FuseUI"
section: "3pm"
platform: "linux"
package: "libconfig-model-perl"
version: "2.155-1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Config::Model::FuseUI"
---

# Config::Model::FuseUI(3pm)

Fuse virtual file interface for Config::Model

## NAME

Config::Model::FuseUI - Fuse virtual file interface for Config::Model

## VERSION

version 2.155

## SYNOPSIS

```
 # command line
 mkdir mydir
 cme fusefs popcon -fuse-dir mydir
 ll mydir
 fusermount -u mydir
 # programmatic
 use Config::Model ;
 use Config::Model::FuseUI ;
 my $model = Config::Model -> new;
 my $root = $model -> instance (root_class_name => "PopCon") -> config_root ;
 my $ui = Config::Model::FuseUI->new( root => $root, mountpoint => "mydir" );
 $ui -> run_loop ;  # blocking call
 # explore mydir in another terminal then umount mydir directory
```

## DESCRIPTION

This module provides a virtual file system interface for you configuration data. Each possible  parameter of your configuration file is mapped to a file.

## Example

```
 $ cme fusefs popcon -fuse-dir fused
 Mounting config on fused in background.
 Use command 'fusermount -u fused' to unmount
 $ ll fused
 total 4
 -rw-r--r-- 1 domi domi  1 Dec  8 19:27 DAY
 -rw-r--r-- 1 domi domi  0 Dec  8 19:27 HTTP_PROXY
 -rw-r--r-- 1 domi domi  0 Dec  8 19:27 MAILFROM
 -rw-r--r-- 1 domi domi  0 Dec  8 19:27 MAILTO
 -rw-r--r-- 1 domi domi 32 Dec  8 19:27 MY_HOSTID
 -rw-r--r-- 1 domi domi  3 Dec  8 19:27 PARTICIPATE
 -rw-r--r-- 1 domi domi  0 Dec  8 19:27 SUBMITURLS
 -rw-r--r-- 1 domi domi  3 Dec  8 19:27 USEHTTP
 $ fusermount -u fuse_dir
```

## BUGS

- •

  For some configuration, mapping each parameter to a file may lead to a high number of files.

- •

  The content of a file is when writing a wrong value. I.e. the files is empty and the old value is lost.

## constructor

## new

parameters are:

- model

  Config::Model object

- root

  Root of the configuration tree (`"Config::Model::Node"` object )

- mountpoint

  ## Methods

### run\_loop

Parameters: `"( fork_in_loop => 1|0, debug => 1|0 )"`

Mount the file system either in the current process or fork a new process before mounting the file system. In the former case, the call is blocking. In the latter case, the call returns after forking a process that performs the mount. Debug parameter is passed to Fuse system to get traces from Fuse.

### fuse\_mount

Mount the fuse file system. This method blocks until the file system is unmounted (with `"fusermount -u mount_point"` command)

## SEE ALSO

Fuse, Config::Model, cme

## AUTHOR

Dominique Dumont

## COPYRIGHT AND LICENSE

This software is Copyright (c) 2005-2022 by Dominique Dumont.

This is free software, licensed under:

```
  The GNU Lesser General Public License, Version 2.1, February 1999
```
