---
name: "Catalyst::Plugin::Setenv"
section: "3pm"
platform: "linux"
package: "libcatalyst-plugin-setenv-perl"
version: "0.03-5"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Catalyst::Plugin::Setenv"
---

# Catalyst::Plugin::Setenv(3pm)

Allows you to set up the environment from Catalyst's config file.

## NAME

Catalyst::Plugin::Setenv - Allows you to set up the environment from Catalyst's config file.

## VERSION

Version 0.03

## SYNOPSIS

In your application:

```
    use Catalyst qw/Setenv/;
```

In your config file:

```
    environment:
      FOO: bar
      BAR: baz
```

When your app starts, `$ENV{FOO}` will be "bar", and `$ENV{BAR}` will be "baz".

You can also append and prepend to existing environment variables. For example, if `$PATH` is `"/bin:/usr/bin"`, you can append `"/myapp/bin"` by writing:

```
   environment:
     PATH: "::/myapp/bin"
```

After that, `$PATH` will be set to `"/bin:/usr/bin:/myapp/bin"`.  You can prepend, too:

```
   environment:
     PATH: "/myapp/bin::"
```

which yields `"/myapp/bin:/bin:/usr/bin"`.

If you want a literal colon at the beginning or end of the environment variable, escape it with a `"\"`, like `"\:foo"` or `"foo\:"`.  Note that slashes aren't meaningful elsewhere, they're inserted verbatim into the relevant environment variable.

## EXPORT

A list of functions that can be exported.  You can delete this section if you don't export anything, such as for a purely object-oriented module.

## FUNCTIONS

### setup

Calls the other setup methods, and then sets the environment variables.

## AUTHOR

Jonathan Rockway, `"<jrockway at cpan.org>"`

## BUGS

### Escaping

Things like "\\:foo" can't be literally inserted into an environment variable, due to my simplistic escaping scheme.  Patches to fix this (but not interpert `"\"`s anywhere else) are welcome.

### REPORTING

Please report any bugs or feature requests to `"bug-catalyst-plugin-setenv at rt.cpan.org"`, or through the web interface at \<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Catalyst-Plugin-Setenv\>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

## SUPPORT

You can find documentation for this module with the perldoc command.

```
    perldoc Catalyst::Plugin::Setenv
```

You can also look for information at:

- •

  The Catalyst Website

  \<http://www.catalystframework.org/\>

- •

  AnnoCPAN: Annotated CPAN documentation

  \<http://annocpan.org/dist/Catalyst-Plugin-Setenv\>

- •

  CPAN Ratings

  \<http://cpanratings.perl.org/d/Catalyst-Plugin-Setenv\>

- •

  RT: CPAN's request tracker

  \<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Catalyst-Plugin-Setenv\>

- •

  Search CPAN

  \<http://search.cpan.org/dist/Catalyst-Plugin-Setenv\>

## ACKNOWLEDGEMENTS

Thanks to Bill Moseley's message to the mailing list that prompted me to write this.

## COPYRIGHT & LICENSE

Copyright 2006 Jonathan Rockway, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
