feat(cloudron): add tirreno package artifacts

- Add CloudronStack/output/CloudronPackages-Artifacts/tirreno/ directory and its contents
- Includes package manifest, Dockerfile, source code, documentation, and build artifacts
- Add tirreno-1761840148.tar.gz as a build artifact
- Add tirreno-cloudron-package-1761841304.tar.gz as the Cloudron package
- Include all necessary files for the tirreno Cloudron package

This adds the complete tirreno Cloudron package artifacts to the repository.
This commit is contained in:
2025-10-30 11:43:06 -05:00
parent 0ce353ea9d
commit 91d52d2de5
1692 changed files with 202851 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
<?php
/**
* Device Detector - The Universal Device Detection library for parsing User Agents
*
* @link https://matomo.org
*
* @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
*/
declare(strict_types=1);
namespace DeviceDetector\Yaml;
interface ParserInterface
{
/**
* Parses the file with the given filename and returns the converted content
*
* @param string $file
*
* @return mixed
*/
public function parseFile(string $file);
}

View File

@@ -0,0 +1,42 @@
<?php
/**
* Device Detector - The Universal Device Detection library for parsing User Agents
*
* @link https://matomo.org
*
* @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
*/
declare(strict_types=1);
namespace DeviceDetector\Yaml;
use Exception;
/**
* Class Pecl
*
* Parses a YAML file with LibYAML library
* @see http://php.net/manual/en/function.yaml-parse-file.php
*/
class Pecl implements ParserInterface
{
/**
* Parses the file with the given filename using PECL and returns the converted content
* @param string $file The path to the YAML file to be parsed
*
* @return mixed The YAML converted to a PHP value or FALSE on failure
*
* @throws Exception If the YAML extension is not installed
*/
public function parseFile(string $file)
{
if (false === \function_exists('yaml_parse_file')) {
throw new Exception('Pecl YAML extension is not installed');
}
return \yaml_parse_file($file);
}
}

View File

@@ -0,0 +1,30 @@
<?php
/**
* Device Detector - The Universal Device Detection library for parsing User Agents
*
* @link https://matomo.org
*
* @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
*/
declare(strict_types=1);
namespace DeviceDetector\Yaml;
use Spyc as SpycParser;
class Spyc implements ParserInterface
{
/**
* Parses the file with the given filename using Spyc and returns the converted content
*
* @param string $file
*
* @return mixed
*/
public function parseFile(string $file)
{
return SpycParser::YAMLLoad($file);
}
}

View File

@@ -0,0 +1,30 @@
<?php
/**
* Device Detector - The Universal Device Detection library for parsing User Agents
*
* @link https://matomo.org
*
* @license http://www.gnu.org/licenses/lgpl.html LGPL v3 or later
*/
declare(strict_types=1);
namespace DeviceDetector\Yaml;
use Symfony\Component\Yaml\Yaml;
class Symfony implements ParserInterface
{
/**
* Parses the file with the given filename using Symfony Yaml parser and returns the converted content
*
* @param string $file
*
* @return mixed
*/
public function parseFile(string $file)
{
return Yaml::parseFile($file);
}
}