I'm playing with using git submodules to track my entire printer config,
and moonraker only works with separate clones as is. Using `.exists()`
instead of `.is_dir()` allows moonraker to control the submodules.
Signed-off-by: Franklyn Tackitt <git@frank.af>
The previous "/lost+found" is not available on all systems. Change to
"/root", which should be available.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Introduce a "raw" parameter for /server/info that defaults to False.
Front ends that do not wish to recieve warnings with html line breaks
may set this parameter to True, otherwise newlines will be replaced
with "<br/>".
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Don't require the database and gcode paths to exist. Fall back on the
default location if they do not.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Don't raise an exception if the option in a path does not exist. Remove
the option and fall back to the default path location
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This script can be used to fix broken installations on
MainsailOS and FluiddPi distributions running a
single instance of Moonraker.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Prevent users from uploading files before validation is complete, as
this can populate one of the subfolders resulting in a failure when
attempting to symlink the original path.
When validating the config symlink the database first. This should
allow Moonraker to correctly move the database should an error
be encountered when validating the other config options.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This script provides a method for users to complete an upgrade
that requires elevated privileges via ssh.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
This prevents an upgrade from unintentionally populating
the config directory when a legacy install exists.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Specifically check against the detected service unit, otherwise
allow a power device to bind to any available service.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Moonraker no longer takes an `alias` command line option. Use `printer_data`
as a placeholder for the default data folder.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Additionally, rework the systemd unit so it is not necessary to
overwrite and reload systemd when changes are made to Moonraker's
arguments. Use a symbolic link for the executable and an environment
flle to supply the arguments.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Handle exceptions raised when adding a new watch. Warn
the user and skip adding the node to the watched tree.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
Allow components to register reserved paths, then perform reserved
path validation it upon request. Reserved paths may be registered as
read-only or no access. Any request to modify an file/folder that is
either reserved or a child of a reserved path is rejected.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>
The secrets module will now look for "moonraker.secrets"
in the data folder. If the file does not exist the deprecated
"secrets_path" option will be used as a fallback.
Signed-off-by: Eric Callahan <arksine.code@gmail.com>