chore: new Crowdin updates
+ update rector config for crowdin compatibility
This commit is contained in:
parent
204fe208ff
commit
01640fa161
|
@ -10,7 +10,7 @@ declare(strict_types=1);
|
|||
|
||||
return [
|
||||
'title' => "Evezhiadenn {actorDisplayName} evit {episodeTitle}",
|
||||
'back_to_comments' => "Distreiñ d'an evezhiadennoù",
|
||||
'back_to_comments' => 'Distreiñ d\'an evezhiadennoù',
|
||||
'form' => [
|
||||
'episode_message_placeholder' => 'Skrivañ un evezhiadenn…',
|
||||
'reply_to_placeholder' => 'Respont da @{actorUsername}',
|
||||
|
|
|
@ -15,15 +15,15 @@ return [
|
|||
'optional' => 'Diret',
|
||||
'close' => 'Serriñ',
|
||||
'home' => 'Degemer',
|
||||
'explicit' => "Endalc'had evit an oadourien",
|
||||
'explicit' => 'Endalc\'had evit an oadourien',
|
||||
'powered_by' => 'Lusket gant {castopod}',
|
||||
'go_back' => 'Mont war-gil',
|
||||
'play_episode_button' => [
|
||||
'play' => 'Lenn',
|
||||
'playing' => 'O lenn',
|
||||
],
|
||||
'read_more' => "Lenn muioc'h",
|
||||
'read_less' => "Lenn nebeutoc'h",
|
||||
'see_more' => "Gwelout muioc'h",
|
||||
'see_less' => "Gwelout nebeutoc'h",
|
||||
'read_more' => 'Lenn muioc\'h',
|
||||
'read_less' => 'Lenn nebeutoc\'h',
|
||||
'see_more' => 'Gwelout muioc\'h',
|
||||
'see_less' => 'Gwelout nebeutoc\'h',
|
||||
];
|
||||
|
|
|
@ -38,5 +38,5 @@ return [
|
|||
other {# evezhiadenn}
|
||||
}',
|
||||
'all_podcast_episodes' => 'Holl rannoù ar podkast',
|
||||
'back_to_podcast' => "Mont d'ar podkast en-dro",
|
||||
'back_to_podcast' => 'Mont d\'ar podkast en-dro',
|
||||
];
|
||||
|
|
|
@ -10,28 +10,28 @@ declare(strict_types=1);
|
|||
|
||||
return [
|
||||
'your_handle' => 'Ho tornell (ho lesanv)',
|
||||
'your_handle_hint' => "Skrivit an @anv@domani a fell deoc'h ober gantañ.",
|
||||
'your_handle_hint' => 'Skrivit an @anv@domani a fell deoc\'h ober gantañ.',
|
||||
'follow' => [
|
||||
'label' => 'Heuliañ',
|
||||
'title' => 'Heuliañ {actorDisplayName}',
|
||||
'subtitle' => "Emaoc'h o vont da heuliañ:",
|
||||
'accountNotFound' => "N'eo ket bet kavet ar gont-se.",
|
||||
'remoteFollowNotAllowed' => "N'eo ket aotreet heuliañ a-bell gant servijer ar gont-se war a seblant…",
|
||||
'submit' => "Kenderc'hel gant an heuliañ",
|
||||
'subtitle' => 'Emaoc\'h o vont da heuliañ:',
|
||||
'accountNotFound' => 'N\'eo ket bet kavet ar gont-se.',
|
||||
'remoteFollowNotAllowed' => 'N\'eo ket aotreet heuliañ a-bell gant servijer ar gont-se war a seblant…',
|
||||
'submit' => 'Kenderc\'hel gant an heuliañ',
|
||||
],
|
||||
'favourite' => [
|
||||
'title' => "Ouzhpennañ kemennadenn {actorDisplayName} d'ho re garetañ",
|
||||
'subtitle' => "Emaoc'h o vont da ouzhpennañ d'ho re garetañ:",
|
||||
'submit' => "Kenderc'hel gant an ouzhpennañ d'ho re garetañ",
|
||||
'subtitle' => 'Emaoc\'h o vont da ouzhpennañ d\'ho re garetañ:',
|
||||
'submit' => 'Kenderc\'hel gant an ouzhpennañ d\'ho re garetañ',
|
||||
],
|
||||
'reblog' => [
|
||||
'title' => "Rannañ kemennadenn {actorDisplayName}",
|
||||
'subtitle' => "Emaoc'h o vont da rannañ:",
|
||||
'submit' => "Kenderc'hel gant ar rannañ",
|
||||
'subtitle' => 'Emaoc\'h o vont da rannañ:',
|
||||
'submit' => 'Kenderc\'hel gant ar rannañ',
|
||||
],
|
||||
'reply' => [
|
||||
'title' => "Respont da gemennadenn {actorDisplayName}",
|
||||
'subtitle' => "Emaoc'h o vont da respont da:",
|
||||
'submit' => "Kenderc'hel gant ar respont",
|
||||
'subtitle' => 'Emaoc\'h o vont da respont da:',
|
||||
'submit' => 'Kenderc\'hel gant ar respont',
|
||||
],
|
||||
];
|
||||
|
|
|
@ -16,5 +16,5 @@ return [
|
|||
'created_desc' => 'Ar re nevez da gentañ',
|
||||
'created_asc' => 'A re goshañ da gentañ',
|
||||
],
|
||||
'no_podcast' => "N'eo bet kavet podkast ebet",
|
||||
'no_podcast' => 'N\'eo bet kavet podkast ebet',
|
||||
];
|
||||
|
|
|
@ -9,9 +9,9 @@ declare(strict_types=1);
|
|||
*/
|
||||
|
||||
return [
|
||||
'back_to_home' => "Distreiñ d'ar bennbajennad",
|
||||
'back_to_home' => 'Distreiñ d\'ar bennbajennad',
|
||||
'map' => [
|
||||
'title' => 'Kartenn',
|
||||
'description' => "Dizoloit rannoù eus podkastoù war {siteName} lakaet war ur gartenn! Beajit warni ha selaouit ar rannoù a zo diwar-benn al lec'hioù-se.",
|
||||
'description' => 'Dizoloit rannoù eus podkastoù war {siteName} lakaet war ur gartenn! Beajit warni ha selaouit ar rannoù a zo diwar-benn al lec\'hioù-se.',
|
||||
],
|
||||
];
|
||||
|
|
|
@ -14,9 +14,9 @@ return [
|
|||
'list_of_episodes_year' => 'Rannoù {year} ({episodeCount})',
|
||||
'list_of_episodes_season' =>
|
||||
'Rannoù koulzad {seasonNumber} ({episodeCount})',
|
||||
'no_episode' => "N'eo bet kavet rann ebet!",
|
||||
'no_episode' => 'N\'eo bet kavet rann ebet!',
|
||||
'follow' => 'Heuliañ',
|
||||
'followTitle' => "Heuliañ {actorDisplayName} war ar c'hevrebed!",
|
||||
'followTitle' => 'Heuliañ {actorDisplayName} war ar c\'hevrebed!',
|
||||
'followers' => '{numberOfFollowers, plural,
|
||||
0 {heulier·ez ebet}
|
||||
one {<span class="font-semibold">#</span> heulier·ez}
|
||||
|
@ -114,7 +114,7 @@ return [
|
|||
'first_published_at' => 'Embannet eo bet ar rann gentañ d\'an/d\'ar<span class="font-semibold">{0, date, medium}</span>',
|
||||
],
|
||||
'sponsor' => 'Harpit',
|
||||
'funding_links' => "Liammoù evit arc'hantaouiñ {podcastTitle}",
|
||||
'funding_links' => 'Liammoù evit arc\'hantaouiñ {podcastTitle}',
|
||||
'find_on' => 'Kavit {podcastTitle} war',
|
||||
'listen_on' => 'Selaouit war',
|
||||
'persons' => '{personsCount, plural,
|
||||
|
|
|
@ -10,7 +10,7 @@ declare(strict_types=1);
|
|||
|
||||
return [
|
||||
'title' => "{actorDisplayName}'s Beitrag",
|
||||
'back_to_actor_posts' => "Zurück zu {actor}'s Beiträge",
|
||||
'back_to_actor_posts' => 'Zurück zu {actor}\'s Beiträge',
|
||||
'actor_shared' => '{actor} teilte',
|
||||
'reply_to' => 'Antorten auf @{actorUsername}',
|
||||
'form' => [
|
||||
|
|
|
@ -17,7 +17,7 @@ return [
|
|||
'submit' => 'Envoyer !',
|
||||
'submit_reply' => 'Répondre',
|
||||
],
|
||||
'likes' => "{numberOfLikes} j'aime",
|
||||
'likes' => '{numberOfLikes} j\'aime',
|
||||
'replies' => '{numberOfReplies, plural,
|
||||
one {# réponse}
|
||||
other {# réponses}
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,7 +61,7 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,7 +61,7 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,11 +61,11 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
to the newest.
|
||||
No problem! No problem! Just get the latest release as described above. Only,
|
||||
when going through the release instructions (4), perform them sequentially, from
|
||||
the oldest to the newest.
|
||||
|
||||
> You may want to backup your instance depending on how long you haven't updated
|
||||
> Castopod.
|
||||
|
|
|
@ -20,19 +20,19 @@ serveurs web compatibles avec PHP-MySQL.
|
|||
La version 8.0 ou supérieure de PHP est requise, avec les extensions suivantes
|
||||
installées :
|
||||
|
||||
- [intl](https://php.net/manual/en/intl.requirements.php)
|
||||
- [libcurl](https://php.net/manual/en/curl.requirements.php)
|
||||
- [mbstring](https://php.net/manual/en/mbstring.installation.php)
|
||||
- [intl](https://www.php.net/manual/fr/intl.requirements.php)
|
||||
- [libcurl](https://www.php.net/manual/fr/curl.requirements.php)
|
||||
- [mbstring](https://www.php.net/manual/fr/mbstring.installation.php)
|
||||
- [gd](https://www.php.net/manual/en/image.installation.php) avec **JPEG**,
|
||||
**PNG** et bibliothèques **WEBP**.
|
||||
- [exif](https://www.php.net/manual/en/exif.installation.php)
|
||||
- [exif](https://www.php.net/manual/fr/exif.installation.php)
|
||||
|
||||
De plus, assurez-vous que les extensions suivantes sont activées dans votre PHP
|
||||
:
|
||||
|
||||
- json (activé par défaut - ne le désactivez pas)
|
||||
- xml (activé par défaut - ne pas le désactiver)
|
||||
- [mysqlnd](https://php.net/manual/en/mysqlnd.install.php)
|
||||
- [mysqlnd](https://www.php.net/manual/fr/mysqlnd.install.php)
|
||||
|
||||
### Base de données compatible MySQL
|
||||
|
||||
|
@ -110,60 +110,61 @@ installées :
|
|||
* * * * * /path/to/php /path/to/castopod/public/index.php scheduled-video-clips
|
||||
```
|
||||
|
||||
> These tasks run **every minute**. You may set the frequency depending on
|
||||
> your needs: every 5, 10 minutes or more.
|
||||
> Ces tâches s'exécutent **toutes les minutes**. Vous pouvez régler la
|
||||
> fréquence en fonction de vos besoins : toutes les 5, 10 minutes ou plus.
|
||||
|
||||
### (recommended) Install Wizard
|
||||
### (Méthode recommandée) Assistant d'installation
|
||||
|
||||
1. Run the Castopod install script by going to the install wizard page
|
||||
(`https://your_domain_name.com/cp-install`) in your favorite web browser.
|
||||
2. Follow the instructions on your screen.
|
||||
3. Start podcasting!
|
||||
1. Exécutez le script d'installation de Castopod en vous rendant sur la page
|
||||
d'assistant d'installation (`https://votre_domain_name.com/cp-install`) dans
|
||||
votre navigateur Web favori.
|
||||
2. Suivez les instructions affichée.
|
||||
3. Commencer à baladodiffuser !
|
||||
|
||||
::: info Note
|
||||
::: info Nota Bene
|
||||
|
||||
The install script writes a `.env` file in the package root. If you cannot go
|
||||
through the install wizard, you can
|
||||
[create and update the `.env` file manually](#alternative-manual-configuration).
|
||||
Le script install crée un fichier `.env` à la racine du paquet. Si vous ne
|
||||
pouvez pas passer par l'assistant d'installation, vous pouvez
|
||||
[créer et mettre à jour le fichier `.env` manuellement](#alternative-manual-configuration).
|
||||
|
||||
:::
|
||||
|
||||
## Community packages
|
||||
## Paquets fournis par la communauté
|
||||
|
||||
If you don't want to bother with installing Castopod manually, you may use one
|
||||
of the packages created and maintained by the open-source community.
|
||||
Si vous ne voulez pas vous soucier d'installer Castopod manuellement, vous
|
||||
pouvez utiliser un des paquets créés et maintenus par la communauté open-source.
|
||||
|
||||
### Install with YunoHost
|
||||
### Installer avec YunoHost
|
||||
|
||||
[YunoHost](https://yunohost.org/) is a distribution based on Debian GNU/Linux
|
||||
made up of free and open-source software packages. It manages the hardships of
|
||||
self-hosting for you.
|
||||
[YunoHost](https://yunohost.org/) est une distribution basée sur Debian
|
||||
GNU/Linux composée de paquets logiciels libres et open-source. Il simplifie
|
||||
l'auto-hébergement pour vous.
|
||||
|
||||
<div class="flex flex-wrap items-center gap-4">
|
||||
|
||||
<a href="https://install-app.yunohost.org/?app=castopod" target="_blank" rel="noopener noreferrer">
|
||||
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Install Castopod with YunoHost" class="align-middle" />
|
||||
<img src="https://install-app.yunohost.org/install-with-yunohost.svg" alt="Installer avec YunoHost" class="align-middle" />
|
||||
</a>
|
||||
|
||||
<a href="https://github.com/YunoHost-Apps/castopod_ynh" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-[.3rem] mx-auto font-semibold text-center text-black rounded-md gap-x-1 border-2 border-solid border-[#333] hover:no-underline hover:bg-gray-100"><svg
|
||||
xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="1em" height="1em"
|
||||
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Github
|
||||
Repo</a>
|
||||
class="text-xl"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 2A10 10 0 0 0 2 12a10 10 0 0 0 6.84 9.49c.5.09.69-.21.69-.48l-.02-1.86c-2.51.46-3.16-.61-3.36-1.18-.11-.28-.6-1.17-1.02-1.4-.35-.2-.85-.66-.02-.67.79-.01 1.35.72 1.54 1.02.9 1.52 2.34 1.1 2.91.83a2.1 2.1 0 0 1 .64-1.34c-2.22-.25-4.55-1.11-4.55-4.94A3.9 3.9 0 0 1 6.68 8.8a3.6 3.6 0 0 1 .1-2.65s.83-.27 2.75 1.02a9.28 9.28 0 0 1 2.5-.34c.85 0 1.7.12 2.5.34 1.9-1.3 2.75-1.02 2.75-1.02.54 1.37.2 2.4.1 2.65.63.7 1.02 1.58 1.02 2.68 0 3.84-2.34 4.7-4.56 4.94.36.31.67.91.67 1.85l-.01 2.75c0 .26.19.58.69.48A10.02 10.02 0 0 0 22 12 10 10 0 0 0 12 2z"/></svg>Dépôt
|
||||
Github</a>
|
||||
|
||||
</div>
|
||||
|
||||
### Install with Docker
|
||||
### Installer avec Docker
|
||||
|
||||
If you wish to use Docker to install Castopod, it is possible thanks to
|
||||
[Romain de Laage](https://mamot.fr/@rdelaage)!
|
||||
Si vous souhaitez utiliser Docker pour installer Castopod, c'est possible grâce
|
||||
à [Romain de Laage](https://mamot.fr/@rdelaage)!
|
||||
|
||||
<a href="https://gitlab.utc.fr/picasoft/projets/services/castopod" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-md shadow gap-x-1 bg-[#1282d7] hover:no-underline hover:bg-[#0f6eb5]">Install
|
||||
with
|
||||
<a href="https://gitlab.utc.fr/picasoft/projets/services/castopod" target="_blank" rel="noopener noreferrer" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-md shadow gap-x-1 bg-[#1282d7] hover:no-underline hover:bg-[#0f6eb5]">Installer
|
||||
avec
|
||||
Docker<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
|
||||
::: info Note
|
||||
::: info Nota Bene
|
||||
|
||||
Given high demand for docker, we plan on maintaining an official Castopod Docker
|
||||
image directly into the Castopod repository.
|
||||
Étant donné la forte demande de Docker, nous prévoyons de maintenir une image
|
||||
officielle de Castopod Docker directement dans le dépôt Castopod.
|
||||
|
||||
:::
|
||||
|
|
|
@ -1,23 +1,25 @@
|
|||
---
|
||||
title: Security
|
||||
title: Sécurité
|
||||
---
|
||||
|
||||
# Security concerns
|
||||
# Questions de sécurité
|
||||
|
||||
Castopod is built on top of [CodeIgniter4](https://codeigniter.com/), a PHP
|
||||
framework that encourages
|
||||
[good security practices](https://codeigniter.com/user_guide/concepts/security.html).
|
||||
Castopod est développé sur [CodeIgniter4](https://codeigniter.com/), un
|
||||
framework PHP qui encourage
|
||||
[de bonnes pratiques de sécurité](https://codeigniter.com/user_guide/concepts/security.html).
|
||||
|
||||
To maximize your instance's safety and prevent any malicious attack, we
|
||||
recommend you update all your Castopod files permissions after installation or
|
||||
updates (to avoid any prior permission error):
|
||||
Pour garantir au mieux la sécurité de votre instance et éviter les attaques
|
||||
malveillantes, nous vous recommandons de mettre à jour les permissions des
|
||||
fichiers de Castopod après l'installation et chaque mise à jour (et éviter toute
|
||||
erreur de droit d'accès aux fichiers) :
|
||||
|
||||
- `writable/` folder must be **readable** and **writable**.
|
||||
- `public/media/` folder must be **readable** and **writable**.
|
||||
- any other file must be set to **readonly**.
|
||||
- Le dossier `writable/` doit être accessible en **lecture** et en **écriture**.
|
||||
- Le dossier `public/media/` doit être accessible en **lecture** et en
|
||||
**écriture**.
|
||||
- tout autre fichier doit être accessible en **lecture seule**.
|
||||
|
||||
For instance, if you are using Apache or NGINX with Ubuntu you may do the
|
||||
following:
|
||||
Par exemple, si vous utilisez Apache ou NGINX avec Ubuntu, vous pouvez exécuter
|
||||
les commandes suivantes :
|
||||
|
||||
```bash
|
||||
sudo chown -R root:root /path/to/castopod
|
||||
|
|
|
@ -1,54 +1,58 @@
|
|||
---
|
||||
title: Update
|
||||
title: Mise à jour
|
||||
sidebarDepth: 3
|
||||
---
|
||||
|
||||
# How to update Castopod?
|
||||
# Comment installer Castopod ?
|
||||
|
||||
After installing Castopod, you may want to update your instance to the latest
|
||||
version in order to enjoy the latest features ✨, bug fixes 🐛 and performance
|
||||
improvements ⚡.
|
||||
Après avoir installé Castopod, vous pouvez mettre à jour votre instance vers la
|
||||
dernière version afin de profiter des dernières fonctionnalités ✨, des
|
||||
corrections de bugs 🐛 et des améliorations de performance ⚡.
|
||||
|
||||
## Automatic update instructions
|
||||
## Instructions de mise à jour automatique
|
||||
|
||||
> Coming soon... 👀
|
||||
> Prochainement... 👀
|
||||
|
||||
## Manual update instructions
|
||||
## Instructions de mise à jour manuelle
|
||||
|
||||
1. Go to the
|
||||
[releases page](https://code.castopod.org/adaures/castopod/-/releases) and
|
||||
see if your instance is up to date with the latest Castopod version
|
||||
1. Allez sur la
|
||||
[page de notes de versions](https://code.castopod.org/adaures/castopod/-/releases)
|
||||
et vérifiez si votre instance est à jour avec la dernière version de
|
||||
Castopod.
|
||||
|
||||
- cf.
|
||||
[Where can I find my Castopod version?](#where-can-i-find-my-castopod-version)
|
||||
|
||||
2. Download the latest release package named `Castopod Package`, you may choose
|
||||
between the `zip` or `tar.gz` archives
|
||||
2. Téléchargez la dernière version du paquet nommé `Castopod Package`. Vous
|
||||
pouvez choisir entre les archives au format `zip` ou `tar.gz`.
|
||||
|
||||
- ⚠️ Make sure you download the Castopod Package and **NOT** the Source Code
|
||||
- ⚠️ Assurez-vous de bien télécharger le paquet Castopod `Castopod Package`
|
||||
et **PAS** le code source.
|
||||
|
||||
3. On your server:
|
||||
3. Sur votre serveur :
|
||||
|
||||
- Remove all files except `.env` and `public/media`
|
||||
- Copy the new files from the downloaded package into your server
|
||||
- Supprimer tous les fichiers sauf `.env` et `public/media`
|
||||
- Copiez les nouveaux fichiers du package téléchargé sur votre serveur.
|
||||
|
||||
::: info Note
|
||||
::: info Nota Bene
|
||||
|
||||
You may need to reset files permissions as during the install process.
|
||||
Check [Security Concerns](./security.md).
|
||||
Vous devrez peut-être re-définir les autorisations de fichiers comme
|
||||
effectué durant le processus d'installation. Vérifiez les
|
||||
[questions de sécurité](./security.md).
|
||||
|
||||
:::
|
||||
|
||||
4. Releases may come with additional update instructions (see
|
||||
[releases page](https://code.castopod.org/adaures/castopod/-/releases)). They
|
||||
are usually database migration scripts in `.sql` format to update your
|
||||
database schema.
|
||||
4. Les versions peuvent être accompagnées d'instructions de mise à jour
|
||||
supplémentaires (cf. la
|
||||
[page des notes de versions](https://code.castopod.org/adaures/castopod/-/releases)).
|
||||
Il s'agit généralement de scripts de migration de base de données au format
|
||||
`.sql` qui mettent à jour le schéma de votre base de données.
|
||||
|
||||
- 👉 Assurez-vous d'exécuter les scripts sur votre interface phpmyadmin ou
|
||||
utilisez la ligne de commande pour mettre à jour la base de données avec
|
||||
les fichiers du paquet !
|
||||
- cf.
|
||||
[Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire
|
||||
?
|
||||
|
||||
5. Si vous utilisez redis, effacez votre cache.
|
||||
6. ✨ Votre nouvelle instance est prête !
|
||||
|
@ -63,7 +67,7 @@ bas à gauche.
|
|||
Vous pouvez également trouver la version dans le fichier
|
||||
`app > Config > Constants.php`.
|
||||
|
||||
### Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?
|
||||
### [Je n'ai pas mis à jour mon instance depuis longtemps… Que devrais-je faire ?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
Aucun souci ! Il suffit d'obtenir la dernière version comme décrit ci-dessus.
|
||||
Lorsque vous exécutez les instructions de mise à jour (4), lancez-les
|
||||
|
@ -81,9 +85,8 @@ la `v1.0.0-beta.1` :
|
|||
1. Téléchargez la dernière version, écrasez vos fichiers tout en conservant
|
||||
`.env` et `public/media`.
|
||||
|
||||
2. Go through each release update instructions sequentially (from oldest to
|
||||
newest) starting with `v1.0.0-alpha.43`, `v1.0.0-alpha.44`,
|
||||
`v1.0.0-alpha.45`, …, `v1.0.0-beta.1`.
|
||||
2. Effectuez les instructions de mise à jour l'une après l'autre (de la plus
|
||||
ancienne à la plus récente).
|
||||
|
||||
3. ✨ Votre nouvelle instance est prête !
|
||||
|
||||
|
|
|
@ -13,15 +13,15 @@ Castopod est facile à installer et a été conçu avec
|
|||
[CodeIgniter4](https://codeigniter.com/), un framework PHP puissant de très
|
||||
petite taille.
|
||||
|
||||
::: info Status
|
||||
::: info Statut
|
||||
|
||||
Castopod is currently in **beta** but already quite stable and used by
|
||||
podcasters around the world!
|
||||
Castopod est actuellement en **version beta** mais est déjà suffisamment stable
|
||||
et est utilisé par des podcasters autour partout dans le monde !
|
||||
|
||||
:::
|
||||
|
||||
<div class="flex items-center">
|
||||
<a href="/getting-started/install" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-full shadow gap-x-1 bg-pine-500 hover:no-underline hover:bg-pine-600">Installation<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
<a href="/fr/getting-started/install" class="inline-flex items-center px-4 py-2 mx-auto font-semibold text-center text-white rounded-full shadow gap-x-1 bg-pine-500 hover:no-underline hover:bg-pine-600">Installer<svg viewBox="0 0 24 24" width="1em" height="1em" class="text-xl text-pine-200"><path fill="currentColor" d="m16.172 11-5.364-5.364 1.414-1.414L20 12l-7.778 7.778-1.414-1.414L16.172 13H4v-2z"></path></svg></a>
|
||||
</div>
|
||||
|
||||
## Fonctionnalités
|
||||
|
@ -63,157 +63,169 @@ podcasters around the world!
|
|||
- 🌎 support i18n: traduit en Anglais, Français, Polonais, Allemand &
|
||||
Brésilien… et bientôt d'autres à venir !
|
||||
|
||||
## Motivation
|
||||
## Pourquoi Castopod ?
|
||||
|
||||
The podcasting ecosystem is decentralized by nature: you can create your podcast
|
||||
as an RSS file, publish it on the web and have it shared everywhere online.
|
||||
L'écosystème du podcast est décentralisé par nature : vous pouvez créer votre
|
||||
podcast grâce au fichier RSS, le publier sur Internet et le rendre disponible
|
||||
partout dans le monde.
|
||||
|
||||
It is in fact one of the only media to have stayed this way for a long time.
|
||||
C'est en fait l'un des seuls médias à être encore décentralisé aujourd'hui.
|
||||
|
||||
As usages are evolving, more and more people are getting into podcasts: whether
|
||||
it is creators finding new ways to share their ideas, or listeners in the search
|
||||
for better content.
|
||||
À mesure que les usages évoluent, de plus en plus de gens se retrouvent autour
|
||||
du podcast : qu'il s'agisse de créateurs qui y trouvent de nouvelles façons de
|
||||
partager leurs idées ou d'auditeurs à la recherche de contenus de qualité.
|
||||
|
||||
With podcasting becoming more widely used, some companies are trying to shift it
|
||||
towards a more controlled and centralized medium.
|
||||
Avec l'avènement du podcast, certaines entreprises se dirigent vers un medium
|
||||
plus centralisé et plus contrôlé.
|
||||
|
||||
Castopod was created in an effort to provide an open and sustainable alternative
|
||||
to hosting your podcasts, promoting decentralization to ensure that podcasters
|
||||
creativity can express itself.
|
||||
Castopod a été créé dans le but de fournir une alternative ouverte et durable
|
||||
pour l'hébergement de vos podcasts, de promouvoir la décentralisation et ainsi
|
||||
de s'assurer que la créativité des podcasteurs puisse rester libre.
|
||||
|
||||
This project is pushed by the open-source community, and specifically by the
|
||||
[Fediverse](https://fediverse.party/en/fediverse/) and
|
||||
[Podcasting 2.0](https://podcastindex.org/) movements.
|
||||
Ce projet s'appuie sur la communauté open-source, plus spécifiquement sur le
|
||||
[Fédiverse](https://fediverse.party/en/fediverse/) et sur
|
||||
[Podcasting 2.0](https://podcastindex.org/).
|
||||
|
||||
## Comparison with other solutions
|
||||
## Comparaison avec d'autres solutions
|
||||
|
||||
We believe that a solution is not necessarily right for everyone, it highly
|
||||
depends on your needs. So, here are comparisons with other tools to help you to
|
||||
gauge whether Castopod is the right fit for you.
|
||||
Nous pensons qu'une solution n'est pas adaptée à tous, tout dépend vos besoins.
|
||||
Voici donc un comparatif avec d'autres outils qui vous aidera à juger si
|
||||
Castopod est fait pour vous.
|
||||
|
||||
### Castopod vs Wordpress
|
||||
|
||||
Castopod is often referred to as "the Wordpress for podcasts" because of the
|
||||
similarities between the two. In some ways this is true. And actually, Castopod
|
||||
was greatly inspired by the Wordpress ecosystem, seeing the ease of adoption
|
||||
from the community and the number of websites running it.
|
||||
Castopod est souvent appelé "Wordpress pour les podcasts" en raison des points
|
||||
communs entre les deux. D'une certaine manière, c'est vrai. Castopod a
|
||||
d'ailleurs été inspiré par l'écosystème de Wordpress, en raison de la facilité
|
||||
grâce à laquelle sa communauté l'a adopté et du nombre de sites Web qui
|
||||
l'utilisent.
|
||||
|
||||
Just like Wordpress, Castopod is free & open source, built using PHP with a
|
||||
MySQL database and is packaged in a way that you can easily install on most web
|
||||
servers.
|
||||
Tout comme Wordpress, Castopod est gratuit & open source, utilise PHP et une
|
||||
base de données MySQL et est fourni en paquet facilement installable sur la
|
||||
plupart des serveurs web.
|
||||
|
||||
Wordpress is a great way to create your website and extend it with plugins to
|
||||
get what you want. It is a full fledged CMS that helps you get any type of
|
||||
website online.
|
||||
Wordpress est un excellent outil pour créer votre site web et de l'étendre avec
|
||||
des plugins pour faire ce que vous souhaitez. C'est un CMS à part entière qui
|
||||
vous permet de mettre en line tout type de site web.
|
||||
|
||||
On the other hand, Castopod is meant to address the podcasters needs
|
||||
specifically, focusing on podcasting, and nothing else. You don't need any
|
||||
plugin to get you started on your podcasting journey.
|
||||
Castopod quant à lui est destiné à répondre aux besoins spécifiques des
|
||||
podcasteurs, en se concentrant sur les podcasts et rien d'autre. Vous n'avez
|
||||
besoin d'installer aucun plugin pour démarrer votre aventure baladodiffusée.
|
||||
|
||||
This allows optimizing the processes specific to podcasting: ranging from the
|
||||
creation of your podcasts and the publication of new episodes all the way to
|
||||
broadcasting, marketing and analytics.
|
||||
Cela permet d'optimiser tout ce qui est spécifique aux podcasts : de la création
|
||||
de vos podcasts et la publication de nouveaux épisodes jusqu'à la diffusion, le
|
||||
marketing et la mesure d'audience.
|
||||
|
||||
Finally, depending on your needs, Wordpress and Castopod can even live side by
|
||||
side as they share the same requirements!
|
||||
Enfin, en fonction de vos besoins, Wordpress et Castopod peuvent même cohabiter
|
||||
car ils partagent les mêmes pré-requis techniques !
|
||||
|
||||
### Castopod vs Funkwhale
|
||||
|
||||
Funkwhale is a self-hosted, modern free and open-source music server. Just as
|
||||
Castopod, Funkwhale is on the fediverse, a decentralized social network allowing
|
||||
interoperability between the two.
|
||||
Funkwhale est un serveur autohébergé, moderne, libre et open-source, dédié à la
|
||||
musique. Tout comme Castopod, Funkwhale est sur le Fédivers, un réseau social
|
||||
décentralisé, ce qui offre une interopérabilité entre eux.
|
||||
|
||||
Funkwhale was initially built around music. And later on, as the project
|
||||
evolved, the ability to host podcasts was introduced.
|
||||
Funkwhale a été initialement conçu pour la musique. Et plus tard, à mesure que
|
||||
le projet a évolué, la capacité d'héberger des podcasts a été introduite.
|
||||
|
||||
Unlike Funkwhale, Castopod has been designed and built around podcasting
|
||||
exclusively. This allows easier implementation for features related to the
|
||||
podcasting ecosystem, such as the podcasting 2.0 features (transcripts,
|
||||
chapters, locations, persons, …).
|
||||
Contrairement à Funkwhale, Castopod a été pensé et conçu exclusivement pour les
|
||||
podcasts. Cela permet une implémentation plus naturelle des fonctionnalités
|
||||
propres à l'écosystème du podcast, comme celles de Podcasting 2.0
|
||||
(transcriptions, chapitres, géo-localisation, intervenants …).
|
||||
|
||||
So, you should probably use Funkwhale if you want to host your music, and use
|
||||
Castopod if you want to host your podcasts.
|
||||
Vous devriez ainsi probablement utiliser Funkwhale si vous souhaitez héberger
|
||||
votre musique et vous tourner vers Castopod si vous souhaitez héberger des
|
||||
podcasts.
|
||||
|
||||
### Castopod vs other podcast hosts
|
||||
### Castopod vs Autres hébergeurs de podcasts
|
||||
|
||||
There are many solutions for you to host your podcasts, some of which are really
|
||||
great and [a lot of them](https://podcastindex.org/apps) are jumping into the
|
||||
Podcasting 2.0 wagon just like Castopod!
|
||||
Il existe de nombreuses solutions pour héberger vos podcasts, dont certaines
|
||||
excellentes et [de nombreuses](https://podcastindex.org/apps) ont rejoint
|
||||
Castopod dans le train « Podcasting 2.0 » !
|
||||
|
||||
Each of these solutions differ from one another, you may compare with the
|
||||
[list of features](#features).
|
||||
Chacune de ces solutions a ses particularités, vous pouvez comparer grâce à la
|
||||
[liste des fonctionnalités](#features).
|
||||
|
||||
That being said, there are two main differences with other podcasting solutions:
|
||||
Cela étant, on notera deux différences principales avec les autres solutions :
|
||||
|
||||
- Castopod can be self-hosted and is the only solution that allows you to keep
|
||||
full control over what you produce. Also, as it is open-source, you can even
|
||||
customize it as you wish.
|
||||
- Castopod peut être auto-hébergé et est la seule solution qui vous permet de
|
||||
garder le contrôle total sur ce que vous produisez. D'autre part, comme il est
|
||||
open-source, vous avez le pouvoir de le modifier comme vous le souhaitez.
|
||||
|
||||
- Castopod is the only solution that currently integrates both a decentralized
|
||||
social network with ActivityPub as well as many of the podcasting 2.0
|
||||
features, hoping to bridge the gap between the two.
|
||||
- Castopod est la seule solution qui intègre aujourd'hui à la fois un réseau
|
||||
social décentralisé avec ActivityPub et des fonctionnalités de « Podcasting
|
||||
2.0 », réduisant ainsi l'écart entre les deux.
|
||||
|
||||
## Contribuer
|
||||
|
||||
Vous appréciez Castopod et aimeriez donner un coup de main ? Jetez un œil à la
|
||||
documentation suivante pour démarrer.
|
||||
|
||||
### Code of conduct
|
||||
### Code de conduite
|
||||
|
||||
Castopod has adopted a Code of Conduct that we expect project participants to
|
||||
adhere to. Please read the
|
||||
[CODE_OF_CONDUCT manual](https://code.castopod.org/adaures/castopod/-/blob/beta/CODE_OF_CONDUCT.md)
|
||||
so that you can understand what actions will and will not be tolerated.
|
||||
Castopod a mis en place un Code de Conduite destiné aux personnes souhaitant
|
||||
participer au projet. Veuillez lire le manuel
|
||||
[CODE_OF_CONDUCT](https://code.castopod.org/adaures/castopod/-/blob/beta/CODE_OF_CONDUCT.md)
|
||||
afin de connaitre quelles actions seront et ne seront pas tolérées.
|
||||
|
||||
### Contributing guide
|
||||
### Guide de contribution
|
||||
|
||||
Read our [contributing guide](./contributing/guidelines.md) to learn about our
|
||||
development process, how to propose bugfixes and improvements, and how to build
|
||||
and test your changes to Castopod.
|
||||
Lisez notre [guide de contribution](./contributing/guidelines.md) pour en savoir
|
||||
plus sur notre processus de développement et comprendre comment proposer des
|
||||
corrections de bogues et des améliorations, et comment compiler et tester vos
|
||||
modifications sur Castopod.
|
||||
|
||||
## Contact
|
||||
|
||||
You may reach us for help or ask any question you have on:
|
||||
Vous pouvez nous joindre pour obtenir de l'aide ou poser toute question que vous
|
||||
avez sur :
|
||||
|
||||
- [Discord](https://castopod.org/discord) (for direct interaction with
|
||||
developers and the community)
|
||||
- [Issue tracker](https://code.castopod.org/adaures/castopod/-/issues) (for
|
||||
feature requests & bug reports)
|
||||
- [Discord](https://castopod.org/discord) (pour dialoguer en temps réel avec les
|
||||
développeurs et la communauté)
|
||||
- [Suivi de problèmes](https://code.castopod.org/adaures/castopod/-/issues)
|
||||
(pour toute demande de nouvelle fonctionnalité ou rapport de bug)
|
||||
|
||||
Alternatively, you can follow us on social media platforms to get news about
|
||||
Castopod:
|
||||
En outre, vous pouvez nous suivre sur les plateformes de réseaux sociaux pour
|
||||
obtenir des informations sur Castopod :
|
||||
|
||||
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
|
||||
- [podlibre.social](https://podlibre.social/@Castopod) (Instance Mastodon)
|
||||
- [Twitter](https://twitter.com/castopod)
|
||||
- [LinkedIn](https://linkedin.com/company/castopod)
|
||||
- [Facebook](https://www.facebook.com/castopod)
|
||||
|
||||
## Sponsors
|
||||
## Soutenez-nous
|
||||
|
||||
The ongoing development of Castopod is made possible with the support of its
|
||||
backers. If you'd like to help, please consider
|
||||
[sponsoring Castopod's development](https://opencollective.com/castopod/contribute).
|
||||
Le développement de Castopod est rendu possible grâce au soutien de ses
|
||||
parrains. Si vous souhaitez aider, n'hésitez pas à
|
||||
[parrainer le développement de Castopod](https://opencollective.com/castopod/contribute).
|
||||
|
||||
<div class="flex flex-wrap gap-x-16 gap-y-8">
|
||||
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/adaures.svg" alt="Ad Aures Logo" class="h-16" /></a>
|
||||
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/nlnet.svg" alt="NLnet Logo" class="h-16" /></a>
|
||||
<a href="https://adaures.com/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/adaures.svg" alt="Logo d'Ad Aures" class="h-16" /></a>
|
||||
<a href="https://nlnet.nl/project/Castopod/" target="_blank" rel="noopener noreferrer"><img src="/images/sponsors/nlnet.svg" alt="Logo de NLnet" class="h-16" /></a>
|
||||
</div>
|
||||
|
||||
## License
|
||||
## Licence
|
||||
|
||||
[GNU Affero General Public License v3.0](https://choosealicense.com/licenses/agpl-3.0/)
|
||||
[Licence publique générale GNU Affero v3](https://choosealicense.com/licenses/agpl-3.0/)
|
||||
|
||||
Copyright © 2020-present, [Ad Aures](https://adaures.com/).
|
||||
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
|
||||
https://img.shields.io/github/license/ad-aures/castopod?color=blue
|
||||
https://img.shields.io/badge/contributions-welcome-brightgreen.svg
|
||||
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
|
||||
https://img.shields.io/github/stars/ad-aures/castopod?style=social
|
||||
|
||||
[release]: https://code.castopod.org/adaures/castopod/-/releases
|
||||
[release-badge]:
|
||||
https://img.shields.io/gitlab/v/release/2?color=brightgreen&gitlab_url=https%3A%2F%2Fcode.castopod.org%2F&include_prereleases&label=release
|
||||
[license]: https://code.castopod.org/adaures/castopod/-/blob/beta/LICENSE.md
|
||||
[license-badge]:
|
||||
https://img.shields.io/github/license/ad-aures/castopod?color=blue
|
||||
[contributions]: https://code.castopod.org/adaures/castopod/-/issues
|
||||
[contributions-badge]:
|
||||
https://img.shields.io/badge/contributions-welcome-brightgreen.svg
|
||||
[semantic-release]: https://github.com/semantic-release/semantic-release
|
||||
[semantic-release-badge]:
|
||||
https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
|
||||
[discord]: https://castopod.org/discord
|
||||
[discord-badge]: https://img.shields.io/badge/chat-on%20discord-7389D8
|
||||
[stars]: https://github.com/ad-aures/castopod/stargazers
|
||||
[stars-badge]:
|
||||
https://img.shields.io/github/stars/ad-aures/castopod?style=social
|
||||
[crowdin]: https://translate.castopod.org/project/castopod
|
||||
[crowdin-badge]: https://badges.crowdin.net/castopod/localized.svg
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,7 +61,7 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,7 +61,7 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
|
|
|
@ -46,8 +46,7 @@ improvements ⚡.
|
|||
|
||||
- 👉 Make sure you run the scripts on your phpmyadmin panel or using command
|
||||
line to update the database along with the package files!
|
||||
- cf.
|
||||
[I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
- I haven't updated my instance in a long time… What should I do?
|
||||
|
||||
5. If you are using redis, clear your cache.
|
||||
6. ✨ Enjoy your fresh instance, you're all done!
|
||||
|
@ -62,7 +61,7 @@ corner.
|
|||
Alternatively, you can find the version in the `app > Config > Constants.php`
|
||||
file.
|
||||
|
||||
### I haven't updated my instance in a long time… What should I do?
|
||||
### [I haven't updated my instance in a long time… What should I do?](#i-havent-updated-my-instance-in-a-long-time-what-should-i-do)
|
||||
|
||||
No problem! Just get the latest release as described above. Only, when going
|
||||
through the release instructions (4), perform them sequentially, from the oldest
|
||||
|
|
|
@ -29,14 +29,14 @@ return [
|
|||
'fediverse' => 'kevrebed',
|
||||
'block-lists' => 'roll ar re stanket',
|
||||
'users' => 'implijerien·ezed',
|
||||
'my-account' => "ma c'hont",
|
||||
'my-account' => 'ma c\'hont',
|
||||
'change-password' => 'kemmañ ar ger-tremen',
|
||||
'import' => 'enporzhiañ ul lanv',
|
||||
'platforms' => 'savennoù',
|
||||
'social' => 'rouedadoù sokial',
|
||||
'funding' => "arc'hantaouiñ",
|
||||
'funding' => 'arc\'hantaouiñ',
|
||||
'analytics' => 'muzulioù heklev',
|
||||
'locations' => "lec'hioù",
|
||||
'locations' => 'lec\'hioù',
|
||||
'webpages' => 'pajennoù web',
|
||||
'unique-listeners' => 'selaouerien·ezed unel',
|
||||
'players' => 'lennerioù',
|
||||
|
|
|
@ -34,5 +34,5 @@ return [
|
|||
'monthly_listening_time' => 'Sammad miziek ar badelezh selaou',
|
||||
'by_weekday' => 'Dre zeiz ar sizhun (e-pad an 60 devezh diwezhañ)',
|
||||
'by_hour' => 'Dre eur an devezh (e-pad an 60 devezh diwezhañ)',
|
||||
'podcast_by_bandwidth' => "Lec'hed bann implijet bemdez (e MB)",
|
||||
'podcast_by_bandwidth' => 'Lec\'hed bann implijet bemdez (e MB)',
|
||||
];
|
||||
|
|
|
@ -13,14 +13,14 @@ return [
|
|||
'no' => 'Ket',
|
||||
'cancel' => 'Nullañ',
|
||||
'optional' => 'Diret',
|
||||
'more' => "Muioc'h",
|
||||
'more' => 'Muioc\'h',
|
||||
'no_data' => 'Roadenn ebet kavet!',
|
||||
'close' => 'Serriñ',
|
||||
'edit' => 'Kemmañ',
|
||||
'copy' => 'Eilañ',
|
||||
'copied' => 'Eilet!',
|
||||
'home' => 'Degemer',
|
||||
'explicit' => "Endalc'had evit an oadourien",
|
||||
'explicit' => 'Endalc\'had evit an oadourien',
|
||||
'powered_by' => 'Lusket gant {castopod}',
|
||||
'actions' => 'Obererezhioù',
|
||||
'pageInfo' => 'Pajenn {currentPage} diwar {pageCount}',
|
||||
|
@ -34,9 +34,9 @@ return [
|
|||
'multiSelect' => [
|
||||
'selectText' => 'Pouezañ da ziuzañ',
|
||||
'loadingText' => 'O kargañ…',
|
||||
'noResultsText' => "Disoc'h ebet kavet",
|
||||
'noChoicesText' => "N'eus dibab ebet da ziuzañ",
|
||||
'maxItemText' => "N'haller ket ouzhpennañ elfennoù all",
|
||||
'noResultsText' => 'Disoc\'h ebet kavet',
|
||||
'noChoicesText' => 'N\'eus dibab ebet da ziuzañ',
|
||||
'maxItemText' => 'N\'haller ket ouzhpennañ elfennoù all',
|
||||
],
|
||||
'upload_file' => 'Uskargit ur restr',
|
||||
'remote_url' => 'URL a-bell',
|
||||
|
|
|
@ -20,7 +20,7 @@ return [
|
|||
'AM' => 'Armenia',
|
||||
'AO' => 'Angola',
|
||||
'AQ' => 'Antarktik',
|
||||
'AR' => "Arc'hantin",
|
||||
'AR' => 'Arc\'hantin',
|
||||
'AS' => 'Samoa Amerikan',
|
||||
'AT' => 'Aostria',
|
||||
'AU' => 'Aostralia',
|
||||
|
@ -76,7 +76,7 @@ return [
|
|||
'EC' => 'Ecuador',
|
||||
'EE' => 'Estonia',
|
||||
'EG' => 'Egipt',
|
||||
'EH' => "Sahara ar C'hornôg",
|
||||
'EH' => 'Sahara ar C\'hornôg',
|
||||
'ER' => 'Eritrea',
|
||||
'ES' => 'Spagn',
|
||||
'ET' => 'Etiopia',
|
||||
|
@ -85,7 +85,7 @@ return [
|
|||
'FK' => 'Maloù, Inizi (Malvinas)',
|
||||
'FM' => 'Mikronezia, Stadoù Kevreet',
|
||||
'FO' => 'Faroe, Inizi',
|
||||
'FR' => "Bro-C'hall",
|
||||
'FR' => 'Bro-C\'hall',
|
||||
'GA' => 'Gabon',
|
||||
'GB' => 'Rouantelezh Unanet',
|
||||
'GD' => 'Grenada',
|
||||
|
@ -167,10 +167,10 @@ return [
|
|||
'MU' => 'Moris',
|
||||
'MV' => 'Maldivez',
|
||||
'MW' => 'Malawi',
|
||||
'MX' => "Mec'hiko",
|
||||
'MX' => 'Mec\'hiko',
|
||||
'MY' => 'Malaysia',
|
||||
'MZ' => 'Mozambik',
|
||||
'N/A' => "E-maez danvez (IP lec'hel…)",
|
||||
'N/A' => 'E-maez danvez (IP lec\'hel…)',
|
||||
'NA' => 'Namibia',
|
||||
'NC' => 'Kaledonia-Nevez',
|
||||
'NE' => 'Niger',
|
||||
|
@ -186,7 +186,7 @@ return [
|
|||
'OM' => 'Oman',
|
||||
'PA' => 'Panama',
|
||||
'PE' => 'Perou',
|
||||
'PF' => "Polinezia C'hall",
|
||||
'PF' => 'Polinezia C\'hall',
|
||||
'PG' => 'Papoua Ginea-Nevez',
|
||||
'PH' => 'Filipinez',
|
||||
'PK' => 'Pakistan',
|
||||
|
@ -250,8 +250,8 @@ return [
|
|||
'VA' => 'Vatikan',
|
||||
'VC' => 'Sant Visant hag an Inizi Granadinas',
|
||||
'VE' => 'Venezuela, Republik Volivarian',
|
||||
'VG' => "Inizi Gwerc'h Breizhveurat",
|
||||
'VI' => "Inizi Gwerc'h, S.U.",
|
||||
'VG' => 'Inizi Gwerc\'h Breizhveurat',
|
||||
'VI' => 'Inizi Gwerc\'h, S.U.',
|
||||
'VN' => 'Vietnam',
|
||||
'VU' => 'Vanuatu',
|
||||
'WF' => 'Wallis ha Futuna',
|
||||
|
|
|
@ -21,7 +21,7 @@ return [
|
|||
other {# evezhiadenn}
|
||||
}',
|
||||
'all_podcast_episodes' => 'Holl rannoù ar podkast',
|
||||
'back_to_podcast' => "Mont d'ar podkast en-dro",
|
||||
'back_to_podcast' => 'Mont d\'ar podkast en-dro',
|
||||
'edit' => 'Kemmañ',
|
||||
'publish' => 'Embann',
|
||||
'publish_edit' => 'Kemmañ an embannadur',
|
||||
|
@ -29,7 +29,7 @@ return [
|
|||
'publish_error' => 'Embannet eo bet ar rann dija.',
|
||||
'publish_edit_error' => 'Embannet eo bet ar rann dija.',
|
||||
'publish_cancel_error' => 'Embannet eo bet ar rann dija.',
|
||||
'unpublish_error' => "N'eo ket bet embannet ar rann.",
|
||||
'unpublish_error' => 'N\'eo ket bet embannet ar rann.',
|
||||
'delete' => 'Dilemel',
|
||||
'go_to_page' => 'Gwelout ar bajenn',
|
||||
'create' => 'Ouzhpennañ ur rann',
|
||||
|
@ -51,17 +51,17 @@ return [
|
|||
],
|
||||
'form' => [
|
||||
'file_size_error' =>
|
||||
"Re vras eo ho restr! {0} eo ar brasder uhelañ. Dav eo deoc'h kreskaat an talvoudoù `memory_limit`, `upload_max_filesize` ha `post_max_size` en ho restr kefluniañ, a-raok adloc'hañ ho servijer web hag uskargañ ho restr.",
|
||||
'Re vras eo ho restr! {0} eo ar brasder uhelañ. Dav eo deoc\'h kreskaat an talvoudoù `memory_limit`, `upload_max_filesize` ha `post_max_size` en ho restr kefluniañ, a-raok adloc\'hañ ho servijer web hag uskargañ ho restr.',
|
||||
'audio_file' => 'Restr aodio',
|
||||
'audio_file_hint' => 'Dibabit ur restr .mp3 pe .m4a.',
|
||||
'info_section_title' => 'Titouroù ar rann',
|
||||
'cover' => 'Golo ar rann',
|
||||
'cover_hint' =>
|
||||
"Ma n'ho peus ket kaset ur golo e vo implijet hini ar podkast en e blas.",
|
||||
'cover_size_hint' => "Ar golo a rankfe bezañ ur c'harrez 1400px e vent da nebeutañ.",
|
||||
'Ma n\'ho peus ket kaset ur golo e vo implijet hini ar podkast en e blas.',
|
||||
'cover_size_hint' => 'Ar golo a rankfe bezañ ur c\'harrez 1400px e vent da nebeutañ.',
|
||||
'title' => 'Titl',
|
||||
'title_hint' =>
|
||||
"Dleout a rafe anv ar rann, sklaer ha berr. Arabat lakaat niverenn ar rann pe ar c'houlzad amañ.",
|
||||
'Dleout a rafe anv ar rann, sklaer ha berr. Arabat lakaat niverenn ar rann pe ar c\'houlzad amañ.',
|
||||
'permalink' => 'Peurliamm',
|
||||
'season_number' => 'Koulzad',
|
||||
'episode_number' => 'Rann',
|
||||
|
@ -76,25 +76,25 @@ return [
|
|||
],
|
||||
'parental_advisory' => [
|
||||
'label' => 'Kemenn evit ar gerent',
|
||||
'hint' => "Hag ar rann-mañ a zo endalc'had ha ne zlefe ket gwelet gant bugale?",
|
||||
'hint' => 'Hag ar rann-mañ a zo endalc\'had ha ne zlefe ket gwelet gant bugale?',
|
||||
'undefined' => 'andermenet',
|
||||
'clean' => 'Dereat',
|
||||
'explicit' => "Endalc'had evit an oadourien",
|
||||
'explicit' => 'Endalc\'had evit an oadourien',
|
||||
],
|
||||
'show_notes_section_title' => 'Notennoù ar rann',
|
||||
'show_notes_section_subtitle' =>
|
||||
"Betek 4000 arouez, sklaer ha berr. Notennoù a rann a c'hell sikour selaouerien·ezed zo kavout anezhi.",
|
||||
'Betek 4000 arouez, sklaer ha berr. Notennoù a rann a c\'hell sikour selaouerien·ezed zo kavout anezhi.',
|
||||
'description' => 'Deskrivadur',
|
||||
'description_footer' => 'Traoñ an deskrivadur',
|
||||
'description_footer_hint' =>
|
||||
"Emañ ouzhpennet an destenn-mañ e dibenn an holl rannoù. Ul lec'h mat eo evit lakaat liammoù ho rouedadoù sokial da skouer.",
|
||||
'Emañ ouzhpennet an destenn-mañ e dibenn an holl rannoù. Ul lec\'h mat eo evit lakaat liammoù ho rouedadoù sokial da skouer.',
|
||||
'additional_files_section_title' => 'Restroù ouzhpenn',
|
||||
'additional_files_section_subtitle' =>
|
||||
"Ar restroù-mañ a c'hell bezañ implijet gant savennoù all evit aesaat an traoù d'ho selaouerien·ezed.<br />Sellit ouzh {podcastNamespaceLink} evit muioc'h a ditouroù.",
|
||||
'location_section_title' => "Lec'h",
|
||||
'location_section_subtitle' => "Eus peseurt lec'h ez eus kaoz er rann-mañ?",
|
||||
'location_name' => "Anv pe chomlec'h al lec'h",
|
||||
'location_name_hint' => "Al lec'h-mañ a c'hell bezañ unan gwir pe unan faltaziet",
|
||||
'Ar restroù-mañ a c\'hell bezañ implijet gant savennoù all evit aesaat an traoù d\'ho selaouerien·ezed.<br />Sellit ouzh {podcastNamespaceLink} evit muioc\'h a ditouroù.',
|
||||
'location_section_title' => 'Lec\'h',
|
||||
'location_section_subtitle' => 'Eus peseurt lec\'h ez eus kaoz er rann-mañ?',
|
||||
'location_name' => 'Anv pe chomlec\'h al lec\'h',
|
||||
'location_name_hint' => 'Al lec\'h-mañ a c\'hell bezañ unan gwir pe unan faltaziet',
|
||||
'transcript' => 'Treuzskrivadur (istitloù)',
|
||||
'transcript_hint' => 'Aotreet e vez nemet .srt.',
|
||||
'transcript_download' => 'Pellgargañ an treuzskrivadur',
|
||||
|
@ -107,14 +107,14 @@ return [
|
|||
'chapters_file' => 'Restr ar chabistroù',
|
||||
'chapters_remote_url' => 'URL a-bell evit restr ar chabistroù',
|
||||
'chapters_file_delete' => 'Dilemel restr ar chabistroù',
|
||||
'advanced_section_title' => "Arventennoù kempleshoc'h",
|
||||
'advanced_section_title' => 'Arventennoù kempleshoc\'h',
|
||||
'advanced_section_subtitle' =>
|
||||
"M'ho peus ezhomm eus balizennoù RSS ha n'eus ket anezho e Castopod e c'hellit o lakaat amañ.",
|
||||
'M\'ho peus ezhomm eus balizennoù RSS ha n\'eus ket anezho e Castopod e c\'hellit o lakaat amañ.',
|
||||
'custom_rss' => 'Balizennoù RSS personelaet evit ar rann',
|
||||
'custom_rss_hint' => 'An dra-se a vo ouzhpennet e-barzh ar valizenn ❬item❭.',
|
||||
'block' => 'Ar rann-se a rankfe bezañ kuzhet diouzh an holl savennoù',
|
||||
'block_hint' =>
|
||||
"Gwelusted ar rann. Ma fell deoc'h e vefe skarzhet ar rann eus roll Apple, gweredekait ar vaezienn-mañ.",
|
||||
'Gwelusted ar rann. Ma fell deoc\'h e vefe skarzhet ar rann eus roll Apple, gweredekait ar vaezienn-mañ.',
|
||||
'submit_create' => 'Krouiñ ar rann',
|
||||
'submit_edit' => 'Enrollañ ar rann',
|
||||
],
|
||||
|
@ -136,8 +136,8 @@ return [
|
|||
'submit' => 'Embann',
|
||||
'submit_edit' => 'Kemmañ an embannadur',
|
||||
'cancel_publication' => 'Nullañ an embannadur',
|
||||
'message_warning' => "N'ho peus ket skrivet ur gemennadenn evit brudañ ho rann!",
|
||||
'message_warning_hint' => "Ouzhpennañ ur gemennadenn a lakay muioc'h a dud er jeu, ha diwar se e vo gwelet muioc'h ho rann.",
|
||||
'message_warning' => 'N\'ho peus ket skrivet ur gemennadenn evit brudañ ho rann!',
|
||||
'message_warning_hint' => 'Ouzhpennañ ur gemennadenn a lakay muioc\'h a dud er jeu, ha diwar se e vo gwelet muioc\'h ho rann.',
|
||||
'message_warning_submit' => 'Embann memestra',
|
||||
],
|
||||
'unpublish_form' => [
|
||||
|
@ -155,9 +155,9 @@ return [
|
|||
'embed' => [
|
||||
'title' => 'Lenner enkorfet',
|
||||
'label' =>
|
||||
"Dibabit ul liv evit an tem, eilit ar c'hod er golver ha pegit anezhañ war ho lec'hienn.",
|
||||
'Dibabit ul liv evit an tem, eilit ar c\'hod er golver ha pegit anezhañ war ho lec\'hienn.',
|
||||
'clipboard_iframe' => 'Eilañ al lenner enkorfet er golver',
|
||||
'clipboard_url' => "Eilañ ar chomlec'h er golver",
|
||||
'clipboard_url' => 'Eilañ ar chomlec\'h er golver',
|
||||
'dark' => 'Teñval',
|
||||
'dark-transparent' => 'Teñval treuzwelus',
|
||||
'light' => 'Sklaer',
|
||||
|
|
|
@ -10,7 +10,7 @@ declare(strict_types=1);
|
|||
|
||||
return [
|
||||
'messages' => [
|
||||
'actorNotFound' => "N'eo ket bet kavet ar gont-se!",
|
||||
'actorNotFound' => 'N\'eo ket bet kavet ar gont-se!',
|
||||
'blockActorSuccess' => 'Stanket eo bet {actor}!',
|
||||
'unblockActorSuccess' => 'Distanket eo bet an implijer·ez!',
|
||||
'blockDomainSuccess' => 'Stanket eo bet {domain}!',
|
||||
|
|
|
@ -10,7 +10,7 @@ declare(strict_types=1);
|
|||
|
||||
return [
|
||||
'all_podcasts' => 'An holl bodkastoù',
|
||||
'no_podcast' => "N'eo bet kavet podkast ebet!",
|
||||
'no_podcast' => 'N\'eo bet kavet podkast ebet!',
|
||||
'create' => 'Krouiñ ur podkast',
|
||||
'import' => 'Enporzhiañ ur podkast',
|
||||
'new_episode' => 'Rann nevez',
|
||||
|
|
|
@ -71,7 +71,7 @@ return [
|
|||
'Wird von den meisten Plattformen verwendet werden, um den Podcast-Besitz zu überprüfen. Sichtbar im öffentlichen RSS-Feed.',
|
||||
'publisher' => 'Herausgeber',
|
||||
'publisher_hint' =>
|
||||
"Die Gruppe, die für die Erstellung des Podcasts verantwortlich ist. Oft bezogen auf die Muttergesellschaft oder das Netzwerk eines Podcasts. Dieses Feld wird manchmal als 'Autor' bezeichnet.",
|
||||
'Die Gruppe, die für die Erstellung des Podcasts verantwortlich ist. Oft bezogen auf die Muttergesellschaft oder das Netzwerk eines Podcasts. Dieses Feld wird manchmal als \'Autor\' bezeichnet.',
|
||||
'copyright' => 'Urheberrecht',
|
||||
'location_section_title' => 'Standort',
|
||||
'location_section_subtitle' => 'Über welchen Ort handelt dieser Podcast?',
|
||||
|
@ -143,7 +143,7 @@ return [
|
|||
'improv' => 'Improvisation',
|
||||
'stand_up' => 'Stand-Up',
|
||||
'courses' => 'Kurse',
|
||||
'how_to' => "So geht's",
|
||||
'how_to' => 'So geht\'s',
|
||||
'language_learning' => 'Sprachenlernen',
|
||||
'self_improvement' => 'Weiterbildung',
|
||||
'comedy_fiction' => 'Komödie Fiktion',
|
||||
|
|
|
@ -56,7 +56,7 @@ return [
|
|||
'info_section_title' => 'Πληροφορίες επεισοδίου',
|
||||
'cover' => 'Εξώφυλλο επισοδίου',
|
||||
'cover_hint' =>
|
||||
"Εάν δεν ορίσετε ένα εξώφυλλο, το εξώφυλλο του podcast θα χρησιμοποιηθεί αντ 'αυτού.",
|
||||
'Εάν δεν ορίσετε ένα εξώφυλλο, το εξώφυλλο του podcast θα χρησιμοποιηθεί αντ \'αυτού.',
|
||||
'cover_size_hint' => 'Το εξώφυλλο πρέπει να είναι τουλάχιστον 1400px πλάτος και ύψος.',
|
||||
'title' => 'Τίτλος',
|
||||
'title_hint' =>
|
||||
|
|
|
@ -37,7 +37,7 @@ return [
|
|||
'funding' => 'financiering',
|
||||
'analytics' => 'statistieken',
|
||||
'locations' => 'locaties',
|
||||
'webpages' => "web pagina's",
|
||||
'webpages' => 'web pagina\'s',
|
||||
'unique-listeners' => 'unieke luisteraars',
|
||||
'players' => 'spelers',
|
||||
'listening-time' => 'afspeeltijd',
|
||||
|
|
|
@ -28,7 +28,7 @@ return [
|
|||
'by_country_yearly' => 'Afleveringen gedownload per land (van de afgelopen jaar)',
|
||||
'by_domain_weekly' => 'Directe webpagina verzoeken (van de afgelopen week)',
|
||||
'by_domain_yearly' => 'Directe webpagina verzoeken (van de afgelopen jaar)',
|
||||
'by_entry_page' => "Webpagina's bezoeken via landingspagina (van de afgelopen week)",
|
||||
'by_entry_page' => 'Webpagina\'s bezoeken via landingspagina (van de afgelopen week)',
|
||||
'podcast_bots' => 'Bots (crawlers)',
|
||||
'daily_listening_time' => 'Dagelijkse cumulatieve afspeeltijd',
|
||||
'monthly_listening_time' => 'Maandelijkse cumulatieve afspeeltijd',
|
||||
|
|
|
@ -7,6 +7,7 @@ use Rector\CodingStyle\Rector\ClassMethod\UnSpreadOperatorRector;
|
|||
use Rector\CodingStyle\Rector\Encapsed\EncapsedStringsToSprintfRector;
|
||||
use Rector\CodingStyle\Rector\FuncCall\ConsistentPregDelimiterRector;
|
||||
use Rector\CodingStyle\Rector\Stmt\NewlineAfterStatementRector;
|
||||
use Rector\CodingStyle\Rector\String_\SymplifyQuoteEscapeRector;
|
||||
use Rector\Core\Configuration\Option;
|
||||
use Rector\Core\ValueObject\PhpVersion;
|
||||
use Rector\EarlyReturn\Rector\If_\ChangeOrIfContinueToMultiContinueRector;
|
||||
|
@ -66,6 +67,10 @@ return static function (ContainerConfigurator $containerConfigurator): void {
|
|||
__DIR__ . '/app/Language/*',
|
||||
__DIR__ . '/modules/*/Language/*',
|
||||
],
|
||||
SymplifyQuoteEscapeRector::class => [
|
||||
__DIR__ . '/app/Language/*',
|
||||
__DIR__ . '/modules/*/Language/*',
|
||||
],
|
||||
OptionalParametersAfterRequiredRector::class => [
|
||||
__DIR__ . '/app/Validation',
|
||||
],
|
||||
|
|
Loading…
Reference in New Issue