Configuration

Le répertoire actif est toujours /usr/share/webapps/pixelfed

Initialiser les services Pixelfed :

sudo php artisan key:generate
sudo php artisan storage:link
sudo php artisan migrate --force
sudo php artisan import:cities
sudo php artisan instance:actor
sudo php artisan passport:keys
sudo php artisan horizon:install
sudo php artisan horizon:publish

Définir le service en arrière-plan

Créer le fichier de service systemd :

sudo nano /etc/systemd/system/pixelfed.service

Et coller :

[Unit]
Description=Pixelfed task queueing via Laravel Horizon
After=network.target mysql.service php8.4-fpm.service redis-server.service apache2.service
Requires=mysql.service php8.4-fpm.service redis-server.service apache2.service

[Service]
Type=simple
User=pixelfed-user
WorkingDirectory=/usr/share/webapps/pixelfed
ExecStart=/usr/bin/php8.4 artisan horizon
Restart=always
RestartSec=5
Environment=QUEUE_CONNECTION=redis

[Install]
WantedBy=multi-user.target

Enregistrer et quitter Nano.
Redémarrer le démon systemctl :

sudo systemctl daemon-reload

Et démarrer Pixelfed :

sudo systemctl enable --now pixelfed

Créer une tâche Cron :

sudo crontab -u pixelfed-user -e

À la fin du ficheir, coller cette ligne :

* * * * * /usr/bin/php8.4 /usr/share/webapps/pixelfed/artisan schedule:run >> /dev/null 2>&1

Modifier les fichiers de configuration

Pour chaque fichier, modifier les lignes indiquées, puis enregistrer et quitter Nano :

sudo nano config/app.php
    'name' => env('APP_NAME', 'Pixelfed Demo'),
    'url' => env('APP_URL', 'https://pixelfed.fediverse.ovh'),
    'locale' => env('APP_LOCALE', 'en'),

 

sudo nano config/instance.php
    'description' => env('INSTANCE_DESCRIPTION', 'Pixelfed Demo website for pixelfed.howto.ovh tutorial'),

 

sudo nano config/pixelfed.php
    'domain' => [
        'admin' => env('ADMIN_DOMAIN'),
        'app' => env('APP_DOMAIN', 'pixelfed.fediverse.ovh'),
    ],

Créer le premier utilisateur

sudo php artisan user:create
Creating a new user...

Name:
> Yves LeGuellec

Username:
> leguellec

Email:
> leguellec@fediverse.ovh

Password:
> pixelfed-password

Confirm password:
> pixelfed-password

Make this user an admin? (yes/no) [no]:
> yes

Manually verify email address? (yes/no) [no]:
> no

Are you sure you want to create this user? (yes/no) [no]:
> yes

Valider l'utilisateur :

sudo php artisan user:verify leguellec

Visiter https://pixelfed.fediverse.ovh/i/actor pour activer le cache.
Visiter l'instance pixelfed.fediverse.ovh.