mirror of
https://github.com/YunoHost/doc.git
synced 2024-09-03 20:06:26 +02:00
* 1rst pass - French localization
- Addition of french files - Traduction of existing incomplete french file based on english and subject comprehension - Correction of found link reference using _en suffix - deletion of duplicate file
This commit is contained in:
parent
a092760688
commit
ade0bf132f
27 changed files with 909 additions and 60 deletions
|
@ -21,10 +21,10 @@
|
||||||
* [Post-installation](/postinstall_fr)
|
* [Post-installation](/postinstall_fr)
|
||||||
* [Diagnostic du bon fonctionnement du YunoHost](/diagnostic_fr)
|
* [Diagnostic du bon fonctionnement du YunoHost](/diagnostic_fr)
|
||||||
* [DNS - Système de nom de domaine](/dns_fr)
|
* [DNS - Système de nom de domaine](/dns_fr)
|
||||||
* [Bureaux d’enregistrements de nom de domaine - Registrar](registar_en)
|
* [Bureaux d’enregistrements de nom de domaine - Registrar](registar_fr)
|
||||||
* [Configuration du DNS chez son registar](/dns_config_fr)
|
* [Configuration du DNS chez son registar](/dns_config_fr)
|
||||||
* [Utiliser le résolveur DNS](/dns_resolver_fr)
|
* [Utiliser le résolveur DNS](/dns_resolver_fr)
|
||||||
* [Configurer un DNS dynamique avec une adresse IP dynamique](dns_dynamicip_en)
|
* [Configurer un DNS dynamique avec une adresse IP dynamique](dns_dynamicip_fr)
|
||||||
* [Avec OVH](/OVH_fr)
|
* [Avec OVH](/OVH_fr)
|
||||||
* [Accéder à son domaine depuis le réseau local](/dns_reseau_local_fr)
|
* [Accéder à son domaine depuis le réseau local](/dns_reseau_local_fr)
|
||||||
* [Applications officielles](/apps_fr)
|
* [Applications officielles](/apps_fr)
|
||||||
|
@ -40,7 +40,7 @@
|
||||||
* [Administration en ligne de commande avec la Moulinette](/moulinette_fr)
|
* [Administration en ligne de commande avec la Moulinette](/moulinette_fr)
|
||||||
* [Changer le mot de passe d'administration](/change_admin_password_fr)
|
* [Changer le mot de passe d'administration](/change_admin_password_fr)
|
||||||
* [Courier électronique](email_fr)
|
* [Courier électronique](email_fr)
|
||||||
* [Formulaires pour enlever son IP des listes noires](blacklist_forms_en)
|
* [Formulaires pour enlever son IP des listes noires](blacklist_forms_fr)
|
||||||
* [DKIM](dkim_fr)
|
* [DKIM](dkim_fr)
|
||||||
* [Gestion du certificat](/certificate_fr)
|
* [Gestion du certificat](/certificate_fr)
|
||||||
* [Régénérer un certificat](/regenerate_certificate_fr)
|
* [Régénérer un certificat](/regenerate_certificate_fr)
|
||||||
|
|
|
@ -9,6 +9,8 @@ https://domain.org/baikal/admin
|
||||||
|
|
||||||
The user name specified is "admin" followed by the specific password choosen at Baïkal installation procedure.
|
The user name specified is "admin" followed by the specific password choosen at Baïkal installation procedure.
|
||||||
|
|
||||||
|
## CalDAV Connection
|
||||||
|
|
||||||
### Connection with Thunderbird + Lightning
|
### Connection with Thunderbird + Lightning
|
||||||
|
|
||||||
Add a new agenda with type "Network" and "CalDAV"
|
Add a new agenda with type "Network" and "CalDAV"
|
||||||
|
@ -19,7 +21,6 @@ https://domain.org/baikal/cal.php/calendars/username/default
|
||||||
|
|
||||||
Be careful to replace "domain.org" by your own domain and the "username" by your user name.
|
Be careful to replace "domain.org" by your own domain and the "username" by your user name.
|
||||||
|
|
||||||
|
|
||||||
### Connection to AgenDAV
|
### Connection to AgenDAV
|
||||||
|
|
||||||
AgenDAV is a web client for using your calendars. It's packaged for Yunohost and you can used it after installing Baïkal.
|
AgenDAV is a web client for using your calendars. It's packaged for Yunohost and you can used it after installing Baïkal.
|
||||||
|
@ -28,3 +29,19 @@ AgenDAV is already connected to Baïkal, any other configuration is necessary. I
|
||||||
|
|
||||||
AgenDAV also allows you to create a new calendars very easily.
|
AgenDAV also allows you to create a new calendars very easily.
|
||||||
|
|
||||||
|
## CardDAV Connection
|
||||||
|
### Roundcube Connection
|
||||||
|
|
||||||
|
Add new adressbook by navigating to Parameters > Preferences > CardDAV.
|
||||||
|
|
||||||
|
Make sure it is filled with:
|
||||||
|
* Adressbook name: `default`
|
||||||
|
* Username: `username`
|
||||||
|
* Password: `thePasswordAssociatedToUsername`
|
||||||
|
* URL : `https://example.com/baikal/card.php/addressbooks/username/default`
|
||||||
|
|
||||||
|
* Make sure to replace "example.com" with your domain and "username" with your username*
|
||||||
|
|
||||||
|
Save.
|
||||||
|
|
||||||
|
Now, the adressbook is accessible.
|
|
@ -1,11 +1,3 @@
|
||||||
#Jappix
|
#<img src="https://yunohost.org/images/jappix.png">Jappix
|
||||||
|
|
||||||
This page is not created yet, you can edit it by pressing ```<ESC>``` on your keyboard or by clicking the "edit" button on the bottom-right side of your screen. You will be able to preview your changes by pressing ```<ESC>``` again or by clicking the "preview" button.
|
Jappix is a web client for [XMPP](/XMPP).
|
||||||
|
|
||||||
** Note: ** If you don't have any account you will have to send the modifications manually.
|
|
||||||
|
|
||||||
###Syntax
|
|
||||||
|
|
||||||
This page use the markdown syntax, please refer to the documentation for further informations:
|
|
||||||
|
|
||||||
http://daringfireball.net/projects/markdown/syntax
|
|
||||||
|
|
|
@ -1,11 +1,77 @@
|
||||||
#Roundcube - Webmail
|
#<img src="https://yunohost.org/images/roundcube.png">Roundcube - Webmail
|
||||||
|
|
||||||
This page is not created yet, you can edit it by pressing ```<ESC>``` on your keyboard or by clicking the "edit" button on the bottom-right side of your screen. You will be able to preview your changes by pressing ```<ESC>``` again or by clicking the "preview" button.
|
Roundcube is a web client for email messaging also called webmail.
|
||||||
|
|
||||||
** Note: ** If you don't have any account you will have to send the modifications manually.
|
### Install CardDAV support for Roundcube
|
||||||
|
|
||||||
###Syntax
|
Roundcube allows you to synchronize your contacts with a CardDAV server, through a third party plugin. Using a CardDAV server like Radicale or owncloud's "Contacts" application, both available in Yunohost, allows you to centralize and manage your contacts.
|
||||||
|
|
||||||
This page use the markdown syntax, please refer to the documentation for further informations:
|
Similarly to IMAP that allows you to synchronize your emails with your mail server, CardDAV allows you to access your contacts through multiple clients, such as Roundcube.
|
||||||
|
Thanks to CardDAV, you will not have to import your contacts in each of your devices.
|
||||||
|
|
||||||
http://daringfireball.net/projects/markdown/syntax
|
CardDAV support requires a third party plugin, developped by par Christian Putzke.
|
||||||
|
|
||||||
|
|
||||||
|
Follow the instructions to install:
|
||||||
|
|
||||||
|
* Connect to your server (physically or through SSH):
|
||||||
|
```bash
|
||||||
|
ssh admin@your_server_ip
|
||||||
|
```
|
||||||
|
|
||||||
|
* Next you'll need to gain administrator rights (“root” user): `sudo su`
|
||||||
|
|
||||||
|
* Move to the Roundcube plugin directory (“plugins”):
|
||||||
|
```bash
|
||||||
|
cd /var/www/roundcube/plugins/
|
||||||
|
```
|
||||||
|
|
||||||
|
* Download plugin:
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/christian-putzke/Roundcube-CardDAV/
|
||||||
|
```
|
||||||
|
|
||||||
|
* Rename downloaded folder to “carddav”:
|
||||||
|
```bash
|
||||||
|
mv Roundcube-CardDAV carddav
|
||||||
|
```
|
||||||
|
|
||||||
|
* Get MySQL "root" password:
|
||||||
|
```bash
|
||||||
|
cat /etc/yunohost/mysql
|
||||||
|
```
|
||||||
|
|
||||||
|
* Add the plugin necessary SQL tables:
|
||||||
|
```bash
|
||||||
|
mysql -u root -p roundcube < carddav/Roundcube-CardDAV/SQL/mysql.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
* Type in the MySQL root password and press `Enter`.
|
||||||
|
|
||||||
|
* Open Roundcube configuration file:
|
||||||
|
```bash
|
||||||
|
nano /var/www/roundcube/config/main.inc.php
|
||||||
|
```
|
||||||
|
|
||||||
|
* Look for “Plugins” section using the nano search function (Ctrl-W) and identify the line beginning with `$rcmail_config['plugins'] = array('carddav','http_authentication', 'archive', 'new_user_identity'`
|
||||||
|
|
||||||
|
* Add "carddav" at the beginning, in order to result to the following: `array('carddav','http_authentication', 'archive', 'new_user_identity'`
|
||||||
|
|
||||||
|
* Exit nano by pressing `Crtl-X` and save.
|
||||||
|
|
||||||
|
* Finally, type:
|
||||||
|
```bash
|
||||||
|
cp /var/www/roundcube/plugins/carddav/config.inc.php.dist /var/www/roundcube/plugins/carddav/config.inc.php
|
||||||
|
```
|
||||||
|
|
||||||
|
Now, you just have to connect to your Roundcube application, select “Parameters” located at the top right corner, then select “CardDAV” in the left panel.
|
||||||
|
|
||||||
|
Synchronize your owncloud contacts:
|
||||||
|
|
||||||
|
* Go to “Contacts” section of your owncloud application and click on the gear wheel icon located at the bottom left. Then, click on “CardDAV link” and copy the URL that appeared.
|
||||||
|
|
||||||
|
* Go to Roundcube's CardDAV section and type in “ownCloud” in “Label” field, paste the previously copied URL and type your username and password.
|
||||||
|
|
||||||
|
Your contacts are now synchronized!
|
||||||
|
|
||||||
|
Note that even if Roundcube may complain about some “time out” but process is working.
|
|
@ -71,11 +71,3 @@ Pour synchroniser vos contacts ownCloud :
|
||||||
* Rendez-vous dans la section “Contacts” de votre espace ownCloud et cliquez sur l'icône représentant une roue dentée en bas à gauche. Ensuite cliquez sur l'icône “Lien CardDAV” et copiez l'URL qui s'affiche en-dessous.
|
* Rendez-vous dans la section “Contacts” de votre espace ownCloud et cliquez sur l'icône représentant une roue dentée en bas à gauche. Ensuite cliquez sur l'icône “Lien CardDAV” et copiez l'URL qui s'affiche en-dessous.
|
||||||
|
|
||||||
* Rendez-vous ensuite dans la section CardDAV des paramètres de Roundcube et entrez “ownCloud” dans le champ “Label”, collez l'URL que vous venez de copier et enfin entrez votre nom d'utilisateur et votre mot de passe. Vos contacts sont désormais synchronisés ! Notez que Roundcube risque de se plaindre d'un “time out”, mais le processus fonctionne quand même.
|
* Rendez-vous ensuite dans la section CardDAV des paramètres de Roundcube et entrez “ownCloud” dans le champ “Label”, collez l'URL que vous venez de copier et enfin entrez votre nom d'utilisateur et votre mot de passe. Vos contacts sont désormais synchronisés ! Notez que Roundcube risque de se plaindre d'un “time out”, mais le processus fonctionne quand même.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -22,3 +22,18 @@ sftp://<user>@<your-domain.org>/home/yunohost.transmission/completed
|
||||||
```
|
```
|
||||||
user = admin or root
|
user = admin or root
|
||||||
|
|
||||||
|
#### With SCP (complex)
|
||||||
|
To transfer file, type in the following command:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
scp (-r) /your/file/ root@your-domain.org:/home/yunohost.transmission/completed
|
||||||
|
```
|
||||||
|
|
||||||
|
##### How to download a complete folder?
|
||||||
|
Once connected to your server, using [SSH](ssh), move to the download folder and zip it :
|
||||||
|
```bash
|
||||||
|
cd /home/yunohost.transmission/completed
|
||||||
|
zip -r your_archive.zip [dossier]
|
||||||
|
```
|
||||||
|
|
||||||
|
More informations about file transfer using *scp*: http://doc.ubuntu-fr.org/ssh#transfert_-_copie_de_fichiers (french, need english documentation)
|
21
app_ttrss.md
21
app_ttrss.md
|
@ -1,11 +1,20 @@
|
||||||
#Tiny Tiny RSS
|
#<img src="https://yunohost.org/images/ttrss.png">Tiny Tiny RSS
|
||||||
|
|
||||||
This page is not created yet, you can edit it by pressing ```<ESC>``` on your keyboard or by clicking the "edit" button on the bottom-right side of your screen. You will be able to preview your changes by pressing ```<ESC>``` again or by clicking the "preview" button.
|
Tiny Tiny RSS is a news feed reader using RSS and atom protocols.
|
||||||
|
|
||||||
** Note: ** If you don't have any account you will have to send the modifications manually.
|
### Exporting/importing feeds
|
||||||
|
TTRSS allows you to save your feeds in opml format.
|
||||||
|
In order to do so, go to Actions -> Configuration -> feed tab -> OPML section -> Export/Import OPML.
|
||||||
|
|
||||||
###Syntax
|
### Android Client
|
||||||
|
|
||||||
This page use the markdown syntax, please refer to the documentation for further informations:
|
You can read your feeds on Android using ttrss-reader application:
|
||||||
|
|
||||||
http://daringfireball.net/projects/markdown/syntax
|
**[ttrss-reader](https://f-droid.org/repository/browse/?fdfilter=rss&fdid=org.ttrssreader)**
|
||||||
|
|
||||||
|
To use it, you need to go to Actions -> Configuration, in TTRSS web interface and select "Activate API".
|
||||||
|
Then, in your android ttrss-reader, fill the TTRSS server adress: "https://yourdomain.org/ttrss", username, password. (no need to use HTTP authentification)
|
||||||
|
|
||||||
|
**Note** : you may need to desinstall and reinstall the TTRSS application, through the Yunohost admin panel in order to be able to connect.
|
||||||
|
|
||||||
|
* [Tiny Tiny RSS Website](http://tt-rss.org/redmine/projects/tt-rss/wiki)
|
29
app_update.md
Normal file
29
app_update.md
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
#Upgrade your applications
|
||||||
|
|
||||||
|
Once you installed applications, you may need to updgrade them, sooner or later.
|
||||||
|
|
||||||
|
** Attention : ** Please be advised to backup your databases (using phpmyadmin application for example) and files before any upgrade.
|
||||||
|
|
||||||
|
### Upgrade using the admin panel
|
||||||
|
Go to Tools > Update system
|
||||||
|
|
||||||
|
Once the applications packages list is retrieved, you will be able to update official applications that have a pending upgrade.
|
||||||
|
|
||||||
|
### Upgrade using command line
|
||||||
|
First, connect to your server through SSH and type in the following command (WordPress update):
|
||||||
|
```bash
|
||||||
|
yunohost app upgrade wordpress
|
||||||
|
```
|
||||||
|
** Note : ** In case you have multiple instances of the same type (ex : 2 wordpress) installed, you will need to specify the instance name (ex : wordpress ou wordpress__2 ).
|
||||||
|
|
||||||
|
#### Upgrade an unofficial application
|
||||||
|
Spcify the git repository containing the updgrade.
|
||||||
|
|
||||||
|
FOr example, to upgrade LimeSurvey :
|
||||||
|
```bash
|
||||||
|
yunohost app upgrade limesurvey -u https://github.com/zamentur/limesurvey_ynh
|
||||||
|
```
|
||||||
|
|
||||||
|
** Note : ** Be cautious when installing unofficial applications and upgrades. Be sure that theses updates are stables and are not a step in the development process. There may be a good reason if an application is not listed in the official repository.
|
||||||
|
|
||||||
|
** Attention : ** Be sure to check the content of any update ; installing or upgrading an unofficial application allows it to run scripts with the highest privileges.
|
|
@ -3,6 +3,6 @@ Black and white YunoHost png logo done by ToZz (400 × 400 px):
|
||||||
|
|
||||||
<a href="https://yunohost.org/images/Black_YunoHost_logo.png"><img src="https://yunohost.org/images/Black_YunoHost_logo.png" width=220></a><a href="https://yunohost.org/images/White_YunoHost_logo.png"><img src="https://yunohost.org/images/White_YunoHost_logo.png" width=220></a>
|
<a href="https://yunohost.org/images/Black_YunoHost_logo.png"><img src="https://yunohost.org/images/Black_YunoHost_logo.png" width=220></a><a href="https://yunohost.org/images/White_YunoHost_logo.png"><img src="https://yunohost.org/images/White_YunoHost_logo.png" width=220></a>
|
||||||
|
|
||||||
Clic to download.
|
Click to download.
|
||||||
|
|
||||||
Licence: CC-BY-SA 4.0
|
Licence: CC-BY-SA 4.0
|
8
artworks_fr.md
Normal file
8
artworks_fr.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
#Art Works
|
||||||
|
Logo Yunohost noir et blanc réalisé par ToZz (400 × 400 px):
|
||||||
|
|
||||||
|
<a href="https://yunohost.org/images/Black_YunoHost_logo.png"><img src="https://yunohost.org/images/Black_YunoHost_logo.png" width=220></a><a href="https://yunohost.org/images/White_YunoHost_logo.png"><img src="https://yunohost.org/images/White_YunoHost_logo.png" width=220></a>
|
||||||
|
|
||||||
|
Cliquer pour télécharger.
|
||||||
|
|
||||||
|
Licence: CC-BY-SA 4.0
|
19
blacklist_forms_fr.md
Normal file
19
blacklist_forms_fr.md
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
# Formulaires liste noire (Blacklist Forms)
|
||||||
|
|
||||||
|
Il peut arriver que votre IP soit ajoutée à la liste noire de certains fournisseurs d'adresse de courrier électronique ou de services anti-spam.
|
||||||
|
|
||||||
|
Voici certains des formulaires vous permettant de retirer votre adresse IP de ces listes.
|
||||||
|
|
||||||
|
## Fournisseurs Email
|
||||||
|
|
||||||
|
* Hotmail: https://support.live.com/eform.aspx?productKey=edfsmsbl3&ct=eformts&scrx=1
|
||||||
|
* GMail : https://support.google.com/mail/contact/msgdelivery
|
||||||
|
|
||||||
|
## Services anti-spam
|
||||||
|
|
||||||
|
* SpamHaus: http://www.spamhaus.org/lookup/
|
||||||
|
|
||||||
|
## Tester votre serveur
|
||||||
|
|
||||||
|
* https://www.mail-tester.com/
|
||||||
|
* http://whatismyipaddress.com/blacklist-check
|
69
build_openresty_fr.md
Normal file
69
build_openresty_fr.md
Normal file
|
@ -0,0 +1,69 @@
|
||||||
|
# Openresty build
|
||||||
|
|
||||||
|
**Note:** Vu que nginx-extras ne fonctionne pas sur Raspbian, il faut compiler un équivalent, ici [Openresty](http://openresty.org).
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wget http://openresty.org/download/ngx_openresty-1.4.3.3.tar.gz
|
||||||
|
tar zxf ngx_openresty-1.4.3.3.tar.gz
|
||||||
|
cd ngx_openresty-1.4.3.3
|
||||||
|
|
||||||
|
./configure --with-luajit \
|
||||||
|
--sbin-path=/usr/sbin/nginx \
|
||||||
|
--conf-path=/etc/nginx/nginx.conf \
|
||||||
|
--error-log-path=/var/log/nginx/error.log \
|
||||||
|
--http-client-body-temp-path=/var/lib/nginx/body \
|
||||||
|
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
|
||||||
|
--http-log-path=/var/log/nginx/access.log \
|
||||||
|
--http-proxy-temp-path=/var/lib/nginx/proxy \
|
||||||
|
--http-scgi-temp-path=/var/lib/nginx/scgi \
|
||||||
|
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
|
||||||
|
--lock-path=/var/lock/nginx.lock \
|
||||||
|
--pid-path=/run/nginx.pid \
|
||||||
|
--with-http_dav_module \
|
||||||
|
--with-http_flv_module \
|
||||||
|
--with-http_geoip_module \
|
||||||
|
--with-http_gzip_static_module \
|
||||||
|
--with-http_image_filter_module \
|
||||||
|
--with-http_realip_module \
|
||||||
|
--with-http_stub_status_module \
|
||||||
|
--with-http_ssl_module \
|
||||||
|
--with-http_sub_module \
|
||||||
|
--with-http_xslt_module \
|
||||||
|
--with-ipv6 \
|
||||||
|
--with-sha1=/usr/include/openssl \
|
||||||
|
--with-md5=/usr/include/openssl \
|
||||||
|
--with-mail \
|
||||||
|
--with-mail_ssl_module \
|
||||||
|
--with-http_stub_status_module \
|
||||||
|
--with-http_secure_link_module \
|
||||||
|
--with-http_sub_module
|
||||||
|
# Durée : ~15 minutes
|
||||||
|
|
||||||
|
make # ~15 minutes supplémentaires
|
||||||
|
|
||||||
|
INSTALL=/tmp/openresty
|
||||||
|
make install DESTDIR=$INSTALL
|
||||||
|
mkdir -p $INSTALL/var/lib/nginx
|
||||||
|
|
||||||
|
# Installation de fpm
|
||||||
|
apt-get -y install make ruby1.9.1 ruby1.9.1-dev \
|
||||||
|
git-core libpcre3-dev libxslt1-dev libgd2-xpm-dev \
|
||||||
|
libgeoip-dev unzip zip build-essential
|
||||||
|
|
||||||
|
gem install fpm
|
||||||
|
|
||||||
|
# Compilation du paquet
|
||||||
|
fpm -s dir -t deb -n openresty -v 1.4.3.3 --iteration 1 -C $INSTALL \
|
||||||
|
--description "openresty 1.4.3.3" \
|
||||||
|
-d libxslt1.1 \
|
||||||
|
-d libgd2-xpm \
|
||||||
|
-d libgeoip1 \
|
||||||
|
-d libpcre3 \
|
||||||
|
-d "nginx-common (>= 1.4.1)" \
|
||||||
|
--conflicts nginx-extras \
|
||||||
|
--conflicts nginx-full \
|
||||||
|
--conflicts nginx-light \
|
||||||
|
run usr var
|
||||||
|
```
|
||||||
|
|
||||||
|
Inspiré par http://brian.akins.org/blog/2013/03/19/building-openresty-on-ubuntu/
|
76
build_packages.md
Normal file
76
build_packages.md
Normal file
|
@ -0,0 +1,76 @@
|
||||||
|
# Yunohost Debian Packages
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
|
||||||
|
Yunohost packages are located on the yunohost.org workstation, in the `/home/yunohost/packages.git` folder.
|
||||||
|
|
||||||
|
Build system is based on debuild and pbuilder. It will generate a chroot, embedding every dependencies and Debian build tools.
|
||||||
|
|
||||||
|
Configuration is defined in the `/etc/pbuilder/megusta-amd64` file and allows to make packages without any specific architecture.
|
||||||
|
|
||||||
|
<div class="alert alert-info">
|
||||||
|
**Attention :** Be advised not to be logged in as "root" to execute the following commands (except those starting with `sudo`).
|
||||||
|
</div>
|
||||||
|
|
||||||
|
## Package update
|
||||||
|
|
||||||
|
<br>
|
||||||
|
#### Packages with external sources
|
||||||
|
Packages based on Github sources (moulinette, moulinette-yunohost, ssowat, et yunohost-admin) require the latest modifications:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[yunohost@yunohost] ~/packages.git/moulinette $ cd src
|
||||||
|
[yunohost@yunohost] ~/packages.git/moulinette/src $ git pull
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, start package build (**attention : you need to be located in the package root folder**):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[yunohost@yunohost] ~/packages.git/moulinette/src $ cd ..
|
||||||
|
[yunohost@yunohost] ~/packages.git/moulinette $ commit-and-build "Message de commit"
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Configuration Packages
|
||||||
|
To update a yunohost-config-* package, move to the root folder, make your changes (for example: change a `debian/postinst` script), and type in the same command as for packages with sources:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[yunohost@yunohost] ~/packages.git/yunohost-config-nginx $ commit-and-build "Commit message"
|
||||||
|
```
|
||||||
|
|
||||||
|
The build command will update the Debian changelog (`debian/changelog`) and start the package creation. Once created, it will automatically added in the repository test`.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
#### Update in a production environment
|
||||||
|
To add a package in the `megusta` (stable) (`debian/changelog`):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[yunohost@yunohost] ~/packages.git/monpaquet $ commit-and-build "Commit message" production
|
||||||
|
```
|
||||||
|
|
||||||
|
Once modifications are applied, you may execute `git push` to send your modifications to GitHub.
|
||||||
|
|
||||||
|
## Add a package to a repository manually
|
||||||
|
You can add Debian packages into the repository. NodeJS package is an example.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo reprepro -Vb /var/www/repo.yunohost.org/ includedeb repository_name package_name.deb
|
||||||
|
```
|
||||||
|
|
||||||
|
`repository_name` may be `test` or `megusta`.
|
||||||
|
|
||||||
|
## Delete a package from a repository
|
||||||
|
Delete a Debian package from a repository in order to empty the test repository for example:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo reprepro -Vb /var/www/repo.yunohost.org/ includedeb repository_name package_name
|
||||||
|
```
|
||||||
|
|
||||||
|
## TODO
|
||||||
|
Modify commit-build script to retrieve git commit messages and generate Debian changelog with `git-dch` command.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
195
build_system.md
Normal file
195
build_system.md
Normal file
|
@ -0,0 +1,195 @@
|
||||||
|
#Debian package creation
|
||||||
|
|
||||||
|
## Architecture
|
||||||
|
The system contains `rebuildd`, a front-end for `pbuilder`, some chroot pbuilder for i386, amd64, armhf and `reprepro` for debian repository system.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Workflow
|
||||||
|
|
||||||
|
There is 3 repositories (`unstable`, `testing` & `stable`):
|
||||||
|
* Packages from `unstable` (aka `daily`) are the latest version from git and are build automatically every night.
|
||||||
|
|
||||||
|
* Packages from `testing` (aka `test`) allow to set up a new package version to be tested.
|
||||||
|
|
||||||
|
* Packages from `stable` (aka `megusta`) contains only production versions
|
||||||
|
|
||||||
|
This workflow purpose is to avoid any manual interaction (script launch, ...) on your server and to focus on package management through Github only.
|
||||||
|
|
||||||
|
Thus, each yunohost package has 3 branches, matching the 3 repositories (`unstable`, `testing` et `stable`). The build server will **automatically** build and deploy Debian source packages and binaries into the corresponding state on Github
|
||||||
|
|
||||||
|
### Unstable branch
|
||||||
|
Commits to the unstable branch will not modify the `debian/changelog` file because it is automatically updated during daily builds with corresponding date and time.
|
||||||
|
|
||||||
|
Any commit that will alter a package behaviour need to be done to the `unstable` branch first.
|
||||||
|
|
||||||
|
**`TODO`** Add pre-commit hook to avoid errors ?
|
||||||
|
|
||||||
|
### Testing et stable branch - standard workflow
|
||||||
|
|
||||||
|
No commit can be done directly in those branches. You need to use merges (merge from `unstable` to `testing` & merge from `testing` to `stable`).
|
||||||
|
|
||||||
|
The only specific changes that occur on the repositories are version changes (modification of `debian/changelog`, then tag).
|
||||||
|
|
||||||
|
As a Yunohost application maintainer, you may find specific tools in the repository [yunohost-debhelper](https://github.com/YunoHost/yunohost-debhelper)
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/YunoHost/yunohost-debhelper
|
||||||
|
yunohost-debhelper/setup_git_alias.sh
|
||||||
|
```
|
||||||
|
The previous instructions will configure a new git alias named `yunobump`. It is global and located at `~/.gitconfig`, therefore accessible through any local git repository.
|
||||||
|
|
||||||
|
<div class="alert alert-warning">
|
||||||
|
**Attention :** This helper `yunobump` only works for Ubuntu or Debian Jessie for the moment. You **need** to install `git` and `git-buildpackage` packages in order to make this helper work properly.
|
||||||
|
</div>
|
||||||
|
|
||||||
|
#### Without helper
|
||||||
|
|
||||||
|
1. Go into the repository you wish to build
|
||||||
|
2. Make sure `unstable` branch contains all modifications you wish to apply
|
||||||
|
3. Get the current version number: `head debian/changelog`
|
||||||
|
4. Move to the `testing` or `stable` branch
|
||||||
|
5. Merge or cherry-pick commits you want to insert into the `unstable` branch
|
||||||
|
6. Add to `debian/changelog` the corresponding commits messages (or use `git-dch` to do it automatically)
|
||||||
|
7. Tag the current branch (`testing` or `stable`) with the next superior value for version number
|
||||||
|
8. Push modifications **and tags** into GitHub repository
|
||||||
|
9. Go back to `unstable` branch
|
||||||
|
10. Merge changelog
|
||||||
|
11. Push `unstable` branch
|
||||||
|
|
||||||
|
#### With helper
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# You Only Clone Once
|
||||||
|
$ git clone git@github.com:YunoHost/yunohost-config-nginx.git
|
||||||
|
$ cd yunohost-config-nginx
|
||||||
|
|
||||||
|
# Be sure to be up-to-date, and don't forget to get the tags !
|
||||||
|
$ git fetch --tags
|
||||||
|
|
||||||
|
# Checkout your branch : stable or testing
|
||||||
|
$ git checkout testing
|
||||||
|
|
||||||
|
# Do your 'functional' modifications: either merge unstable in testing, or merge testing in stable
|
||||||
|
$ git pull origin unstable
|
||||||
|
# Or just
|
||||||
|
$ git merge unstable
|
||||||
|
|
||||||
|
# What is the current version number in test ?
|
||||||
|
$ dpkg-parsechangelog | grep "^Version" | cut -d ' ' -f 2
|
||||||
|
# Or just
|
||||||
|
$ head debian/changelog
|
||||||
|
|
||||||
|
# Update changelog and do a proper tag (explained below)
|
||||||
|
$ git yunobump x.y.z-p
|
||||||
|
|
||||||
|
# Push the branch state AND the tags to the remote repository
|
||||||
|
$ git push origin --tags testing:testing
|
||||||
|
|
||||||
|
# Merge changelog modifications to the `unstable` branch
|
||||||
|
$ git checkout unstable
|
||||||
|
$ git merge testing
|
||||||
|
$ git push origin unstable
|
||||||
|
```
|
||||||
|
|
||||||
|
**`TODO`** Tag format policy: actually $branch/$version to enable the same version into two different branches. Is it necessary?
|
||||||
|
|
||||||
|
**`TODO`** Under normal circumstances, every push to test or stable, the last commit will result in a changelog commit properly tagged. It should be possible to set a pre-push git hook that prevents from pushing unfinished work
|
||||||
|
|
||||||
|
#### Test and stable branches - hotfix
|
||||||
|
|
||||||
|
Exceptionally, you may hotfix (for security purposes for example) `stable` or `test` packages, leading to a merge into daily branch which is not acceptable (too much new features in development).
|
||||||
|
|
||||||
|
** This MUST remain exceptional **
|
||||||
|
|
||||||
|
**`TODO`** Describe
|
||||||
|
|
||||||
|
**`TODO`** Develop a 'git yunohotfix ...' helper that commit into stable and cherry-pick right away into daily? or the opposite?
|
||||||
|
|
||||||
|
#### Not YunoHost packages
|
||||||
|
|
||||||
|
« not-YunoHost » packages (`python-bottle` for example) don't go through `unstable` repository. Once package tests are completed, they need to be manually transferred into `backport` repository.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Version number
|
||||||
|
|
||||||
|
So far, YunoHost global base version is **2**. The current convention for the version number is **2.x.x**.
|
||||||
|
|
||||||
|
The second section of the number string is incremented if a major functional change has occured: addition of a new functionality, modification of a behaviour. For now, all packages are versionned **2.1.x**.
|
||||||
|
|
||||||
|
The third section of the number string is incremented if a bugfix or a minor functional change has occured. For example, you may currently find **2.1.3** or **2.1.5** packages
|
||||||
|
|
||||||
|
A fourth section is dedicated for exceptional cases like bugfixes in stable branch. In this case, we want to pass on a unique change directly into stable branch, therefore we add **-x** to the number string. This may result into something like this: **2.1.3-1**.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Packages management
|
||||||
|
|
||||||
|
#### Daily build
|
||||||
|
|
||||||
|
A cron task defined for `pbuilder` user is executed **every day at 01:00**. The script will update the `packages` git repository and submodules (`ssowat`, `moulinette`, `moulinette-yunohost` & `admin_js`).
|
||||||
|
Once sources are up to date, the script will rebuild packages that have been updated the day.
|
||||||
|
|
||||||
|
Sources packages will then need to be created and moved into `/var/www/repo.yunohost.org/daily/incomming` folder.
|
||||||
|
|
||||||
|
Launch source file addition to the repository. This will automatically launch a `rebuildd` job (see daily repository configuration: `/var/www/repo.yunohost.org/daily/conf/distribustion`).
|
||||||
|
|
||||||
|
Once packages are built, they are added to the `unstable` repository.
|
||||||
|
|
||||||
|
|
||||||
|
#### (Re)build a YunoHost package
|
||||||
|
|
||||||
|
You may manualy launch a package build by typing:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ daily_build -p package_name
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Build a not YunoHost package
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ build_deb /path/of/package
|
||||||
|
```
|
||||||
|
|
||||||
|
**`TODO`** Describe : need to bump the version to pass from test to stable
|
||||||
|
|
||||||
|
### Passing from `daily` to `test`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ push-packages-test -p package_name
|
||||||
|
```
|
||||||
|
You may add the `-v` argument to manually define the package version.
|
||||||
|
|
||||||
|
The script will get the `daily` sources package and define the version and changelist into the changelog. Build package will be added to the rebuildd jobs list that will pass everything to the `test` repository.
|
||||||
|
|
||||||
|
**Attention :** Version name must not contain `daily` otherwise the package will be added to the `daily` repository.
|
||||||
|
|
||||||
|
|
||||||
|
### Passing from `test` to `stable`
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ push-package-stable -p package_name
|
||||||
|
```
|
||||||
|
|
||||||
|
The previous command only passes the package from `test` to `stable` repository, without rebuild.
|
||||||
|
|
||||||
|
|
||||||
|
### Repository management with `reprepro`
|
||||||
|
|
||||||
|
* Delete a package
|
||||||
|
```bash
|
||||||
|
$ reprepro -V -b /var/www/repo.yunohost.org/repo_name/ remove megusta package_name
|
||||||
|
```
|
||||||
|
|
||||||
|
* Add a Debian package into a repository
|
||||||
|
```bash
|
||||||
|
$ reprepro -V -b /var/www/repo.yunohost.org/repo_name/ includedeb megusta package_name.deb
|
||||||
|
```
|
||||||
|
|
||||||
|
### Backports management
|
||||||
|
Packages from backports repository can be quickly into Yunohost `test` repository.
|
||||||
|
To do so, you need to add the package name into the `/var/www/repo.yunohost.org/test/conf/list` file and type in the following command:
|
||||||
|
```bash
|
||||||
|
$ reprepro -V -b /var/www/repo.yunohost.org/test update megusta
|
||||||
|
```
|
||||||
|
Now packages will be downloaded and added to `test` repository.
|
|
@ -50,7 +50,7 @@ Ceci va configurer un nouvel alias git nommé `yunobump`, global (stocké dans `
|
||||||
3. Récupérez le numéro de version actuel : `head debian/changelog`
|
3. Récupérez le numéro de version actuel : `head debian/changelog`
|
||||||
4. Rendez-vous sur la branche `testing` ou `stable`
|
4. Rendez-vous sur la branche `testing` ou `stable`
|
||||||
5. Mergez ou cherry-pickez les commits que vous voulez intégrer à la version depuis la branche `unstable`
|
5. Mergez ou cherry-pickez les commits que vous voulez intégrer à la version depuis la branche `unstable`
|
||||||
6. Modifiez le `debian/changelog` en intégrant les messages de commits correspondant aux modifications que vous avez intégrer (ou utilisez `git-dch` pour le faire automatiquement)
|
6. Modifiez le `debian/changelog` en intégrant les messages de commits correspondant aux modifications que vous avez intégré (ou utilisez `git-dch` pour le faire automatiquement)
|
||||||
7. Taggez la branche actuelle (`testing` ou `stable`) du numéro de version juste supérieur à l'actuel
|
7. Taggez la branche actuelle (`testing` ou `stable`) du numéro de version juste supérieur à l'actuel
|
||||||
8. Pushez vos modifications **ainsi que vos tags** sur le repo GitHub
|
8. Pushez vos modifications **ainsi que vos tags** sur le repo GitHub
|
||||||
9. Retournez sur la branche `unstable`
|
9. Retournez sur la branche `unstable`
|
||||||
|
|
4
communication.md
Normal file
4
communication.md
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
# Communication
|
||||||
|
<a href="https://linuxfr.org/news/yunohost-2-0-l-auto-hebergement-a-portee-de-clic"><img src="https://yunohost.org/images/Linuxfr.png" width=180></a>
|
||||||
|
<a href="https://en.wikipedia.org/wiki/YunoHost"><img src="https://yunohost.org/images/Wikipedia-logo-v2-fr.svg" width=180></a>
|
||||||
|
* LinuxFr (french): [YunoHost 2.0 : self hosting at click range](https://linuxfr.org/news/yunohost-2-0-l-auto-hebergement-a-portee-de-clic)
|
|
@ -1,13 +1,13 @@
|
||||||
# Contributor documentation
|
# Contributor documentation
|
||||||
|
|
||||||
*For want of anything better, here is an index of interesting pages for the YunoHost contributor.*
|
|
||||||
|
|
||||||
* [What is YunoHost](/whatsyunohost)
|
|
||||||
* [How to contribute](/contribute)
|
* [How to contribute](/contribute)
|
||||||
|
* [What is YunoHost](/whatsyunohost)
|
||||||
|
* Développement
|
||||||
* [Roadmap](/roadmap)
|
* [Roadmap](/roadmap)
|
||||||
* [List of available applications](/apps)
|
* [List of available applications](/apps)
|
||||||
* [Package new applications](/packaging_apps)
|
* [Package new applications](/packaging_apps)
|
||||||
* [Write documentation](/write_documentation)
|
|
||||||
* [Develop on Docker](/docker)
|
* [Develop on Docker](/docker)
|
||||||
* [Build OpenResty (Web server) for Raspberry Pi](/build_openresty)
|
* [Build OpenResty (Web server) for Raspberry Pi](/build_openresty)
|
||||||
|
* Documentation
|
||||||
|
* [Account creation to edit documentation](/accounting)
|
||||||
|
* [Write documentation](/write_documentation)
|
|
@ -3,11 +3,11 @@
|
||||||
* [Guide du contributeur](/contribute_fr)
|
* [Guide du contributeur](/contribute_fr)
|
||||||
* [Qu'est-ce que YunoHost](/whatsyunohost_fr)
|
* [Qu'est-ce que YunoHost](/whatsyunohost_fr)
|
||||||
* Développement
|
* Développement
|
||||||
* [Feuille de route du projet](/roadmap_en)
|
* [Feuille de route du projet](/roadmap_fr)
|
||||||
* [Liste des applications disponibles](/apps_fr)
|
* [Liste des applications disponibles](/apps_fr)
|
||||||
* [Packager une application](/packaging_apps_fr)
|
* [Packager une application](/packaging_apps_fr)
|
||||||
* [Développer avec Docker](/docker_fr)
|
* [Développer avec Docker](/docker_fr)
|
||||||
* [Builder OpenResty (serveur Web) pour Raspberry Pi](/build_openresty_en)
|
* [Builder OpenResty (serveur Web) pour Raspberry Pi](/build_openresty_fr)
|
||||||
* Documentation
|
* Documentation
|
||||||
* [Création d’un compte pour l’édition de la documentation](/accounting_fr)
|
* [Création d’un compte pour l’édition de la documentation](/accounting_fr)
|
||||||
* [Écrire de la documentation](/write_documentation_fr)
|
* [Écrire de la documentation](/write_documentation_fr)
|
149
create_live_usb_fr.md
Normal file
149
create_live_usb_fr.md
Normal file
|
@ -0,0 +1,149 @@
|
||||||
|
# Créer une Live ISO de YunoHost
|
||||||
|
|
||||||
|
Testé sur Debian Wheezy (devrait marcher sur Ubuntu également).
|
||||||
|
Tutoriel original : http://willhaley.com/blog/create-a-custom-debian-live-environment/
|
||||||
|
|
||||||
|
**Attention**: Toutes les sections où vous devrez être dans un environnement **chroot** sont **surlignées**.
|
||||||
|
|
||||||
|
1. Installation des applications nécessaires à la compilation de l'environnement
|
||||||
|
```bash
|
||||||
|
sudo apt-get install debootstrap syslinux squashfs-tools genisoimage memtest86+ rsync
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Configuration de l'environnement de base Debian. Debian wheezy et une architecture i386 ont été utilisés pour effectuer les tests.
|
||||||
|
Changer le mirroir si vous n'êtes pas aux Pays Bas ou que vous connaissez un mirroir plus proche.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkdir live_boot && cd live_boot
|
||||||
|
sudo debootstrap --arch=i386 --variant=minbase wheezy chroot http://ftp.nl.debian.org/debian/
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Deux étapes importantes avant de chroot :
|
||||||
|
```bash
|
||||||
|
sudo mount -o bind /dev chroot/dev && sudo cp /etc/resolv.conf chroot/etc/resolv.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Chroot l'environnement Debian :
|
||||||
|
```bash
|
||||||
|
sudo chroot chroot
|
||||||
|
```
|
||||||
|
|
||||||
|
5. **chroot**
|
||||||
|
Configuration de variables et d'options système de l'environnement Debian :
|
||||||
|
```bash
|
||||||
|
mount none -t proc /proc &&
|
||||||
|
mount none -t sysfs /sys &&
|
||||||
|
mount none -t devpts /dev/pts &&
|
||||||
|
export HOME=/root &&
|
||||||
|
export LC_ALL=C &&
|
||||||
|
apt-get install dialog dbus --yes &&
|
||||||
|
dbus-uuidgen > /var/lib/dbus/machine-id &&
|
||||||
|
apt-get update
|
||||||
|
```
|
||||||
|
|
||||||
|
6. **chroot** Configuration du mot de passe root de **yunohost** :
|
||||||
|
```bash
|
||||||
|
passwd root
|
||||||
|
```
|
||||||
|
|
||||||
|
7. **chroot** Installation des paquets requis, remplacement du noyau si nécessaire :
|
||||||
|
```bash
|
||||||
|
apt-get install --no-install-recommends \
|
||||||
|
linux-image-3.2.0-4-486 live-boot \
|
||||||
|
net-tools wireless-tools wpagui tcpdump wget openssh-client \
|
||||||
|
xserver-xorg-core xserver-xorg xinit xterm \
|
||||||
|
pciutils usbutils gparted ntfsprogs hfsprogs rsync dosfstools syslinux partclone nano pv \
|
||||||
|
chromium-browser libnss3-tools openbox git ca-certificates openssl
|
||||||
|
```
|
||||||
|
|
||||||
|
8. **chroot** Le NetworkManager peut casser la configuration de votre environnement chroot. Il est possible de l'installer à posteriori et d'annuler en pressant CTRL-C pendant l'installation.
|
||||||
|
```bash
|
||||||
|
apt-get --no-install-recommends install network-manager
|
||||||
|
```
|
||||||
|
|
||||||
|
9. **chroot** Installation de YunoHost :
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/YunoHost/install_script /tmp/yunohost_install
|
||||||
|
cd /tmp/yunohost_install && ./autoinstall_yunohostv2
|
||||||
|
```
|
||||||
|
|
||||||
|
10. **chroot** Configuration des paramètres :
|
||||||
|
```bash
|
||||||
|
echo "127.0.0.1 yunohost.org" >> /etc/hosts
|
||||||
|
echo "chromium --user-data-dir=/root/.config/chromium --app=https://yunohost.org/yunohost/admin/" >> /etc/xdg/openbox/autostart
|
||||||
|
echo -e "if [ -z \"\$DISPLAY\" ] && [ \$(tty) == /dev/tty1 ]; \nthen \n startx \nfi" >> /root/.bashrc
|
||||||
|
certutil -d sql:$HOME/.pki/nssdb -A -t "C,," -n YunoHostCA -i /etc/yunohost/certs/yunohost.org/ca.pem
|
||||||
|
certutil -d sql:$HOME/.pki/nssdb -A -t "P,," -n YunoHostCrt -i /etc/yunohost/certs/yunohost.org/crt.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
11. **chroot** Editer `/etc/inittab` opur se connecter automatiquement :
|
||||||
|
```bash
|
||||||
|
nano /etc/inittab
|
||||||
|
# Remplacer la ligne suivante :
|
||||||
|
1:2345:respawn:/sbin/getty 38400 tty1
|
||||||
|
# par :
|
||||||
|
1:2345:respawn:/bin/login -f root tty1 </dev/tty1 >/dev/tty1 2>&1
|
||||||
|
```
|
||||||
|
|
||||||
|
12. **chroot** Nettoyage de l'environnement Debian avant de quitter :
|
||||||
|
```bash
|
||||||
|
rm -f /var/lib/dbus/machine-id &&
|
||||||
|
apt-get clean &&
|
||||||
|
rm -rf /tmp/* &&
|
||||||
|
rm /etc/resolv.conf &&
|
||||||
|
umount -lf /proc &&
|
||||||
|
umount -lf /sys &&
|
||||||
|
umount -lf /dev/pts
|
||||||
|
# Puis exit
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
|
13. Démonter dev du chroot :
|
||||||
|
```bash
|
||||||
|
sudo umount -lf chroot/dev
|
||||||
|
```
|
||||||
|
|
||||||
|
14. Créer les répertoires qui seront copiés dans le media bootable :
|
||||||
|
```bash
|
||||||
|
mkdir -p image/{live,isolinux}
|
||||||
|
```
|
||||||
|
|
||||||
|
15. Compresser l'environnement chroot dans un système de fichier Squash :
|
||||||
|
```bash
|
||||||
|
sudo mksquashfs chroot image/live/filesystem.squashfs -e boot
|
||||||
|
```
|
||||||
|
|
||||||
|
16. Preparer le bootloader USB/CD :
|
||||||
|
```bash
|
||||||
|
cp chroot/boot/vmlinuz-3.2.0-4-486 image/live/vmlinuz1 &&
|
||||||
|
cp chroot/boot/initrd.img-3.2.0-4-486 image/live/initrd1
|
||||||
|
```
|
||||||
|
|
||||||
|
17. Créer le menu `image/isolinux/isolinux.cfg` pour le bootloader.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
UI menu.c32
|
||||||
|
|
||||||
|
prompt 0
|
||||||
|
menu title YunoHost Live
|
||||||
|
|
||||||
|
timeout 300
|
||||||
|
|
||||||
|
label YunoHost Live
|
||||||
|
menu label ^YunoHost Live
|
||||||
|
menu default
|
||||||
|
kernel /live/vmlinuz1
|
||||||
|
append initrd=/live/initrd1 boot=live
|
||||||
|
```
|
||||||
|
|
||||||
|
### Compiler le .iso
|
||||||
|
|
||||||
|
Copier les fichiers nécessaires au démarrage de l'ISO et créer l'ISO :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cp /usr/lib/syslinux/isolinux.bin image/isolinux/ &&
|
||||||
|
cp /usr/lib/syslinux/menu.c32 image/isolinux/
|
||||||
|
cd image && genisoimage -rational-rock -volid "YunoHost Live" -cache-inodes -joliet -full-iso9660-filenames -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -output ../yunohost-live.iso . && cd ..
|
||||||
|
```
|
||||||
|
|
||||||
|
Félicitations ! L'ISO peut désormais être gravée ou utilisée avec [Unetbootin](http://unetbootin.sourceforge.net/) pour la copier sur une clé USB.
|
44
dns_reseau_local.md
Normal file
44
dns_reseau_local.md
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
#Local network access to your server
|
||||||
|
|
||||||
|
After completing your server installation, it is most likely that your domain will not be accessible through the local network. This is a know issue known as [hairpinning](http://en.wikipedia.org/wiki/Hairpinning).
|
||||||
|
|
||||||
|
To resolve this issue, you need to configure your router dns or, failing, your hosts files on your clients workstation
|
||||||
|
|
||||||
|
### Get the server local IP adress
|
||||||
|
In order to configure DNS or hosts file, you must know the private IP adress of your server. This adress is only working in the server local network and is not linked to your public IP adress.
|
||||||
|
|
||||||
|
You may retrieve your server private IP adress through different means:
|
||||||
|
- Using the Yunohost connection screen on the server:
|
||||||
|
<img src="https://yunohost.org/images/ynh_login.png" width=600>
|
||||||
|
|
||||||
|
- Using Yunohost administration panel:
|
||||||
|
Go to "State of the server" > Network
|
||||||
|
<img src="https://yunohost.org/images/ynh_admin_etat_ip.png" width=900>
|
||||||
|
|
||||||
|
- Or using your router or internet box, depending on model.
|
||||||
|
|
||||||
|
## Configure DNS of internet box or router
|
||||||
|
### SFR Box
|
||||||
|
If you haven't found your server private IP, you may find it using the SFR box admin panel:
|
||||||
|
Go to Network tab > General
|
||||||
|
<img src="https://yunohost.org/images/ip_serveur.png" width=800>
|
||||||
|
|
||||||
|
#### Configure SFR box's DNS
|
||||||
|
Go to Network tab > DNS and add your domain name to the box's DNS.
|
||||||
|
<img src="https://yunohost.org/images/dns_9box.png" width=800>
|
||||||
|
|
||||||
|
## Configure [hosts](http://fr.wikipedia.org/wiki/Hosts) file on client workstation
|
||||||
|
Modifying hosts file should be done only if you cannot alter your box's DNS or router, because hosts file will only impact the workstation where the file was modified.
|
||||||
|
|
||||||
|
- Windows hosts file is located at:
|
||||||
|
`%SystemRoot%\system32\drivers\etc\`
|
||||||
|
> You MUST activate hidden and system file display to see the hosts file.
|
||||||
|
- UNIX systems (GNU/Linux, Mac OS) hosts file is located at:
|
||||||
|
`/etc/hosts`
|
||||||
|
> You MUST have root privileges to modify the file.
|
||||||
|
|
||||||
|
Add a line at the end of the file containing your server private IP followed by a space and your domain name
|
||||||
|
|
||||||
|
```bash
|
||||||
|
192.168.1.62 domain.tld
|
||||||
|
```
|
57
fail2ban.md
Normal file
57
fail2ban.md
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
# Fail2ban
|
||||||
|
|
||||||
|
For a number of reasons, an IP adresse may be wrongly blacklisted. If you wish to access your server through this specifi IP you will need to unblock it.
|
||||||
|
|
||||||
|
## IP unblock
|
||||||
|
|
||||||
|
First, list all iptables rules with : `iptables -L --line-numbers` :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
root@beudi:~# iptables -L --line-numbers
|
||||||
|
Chain INPUT (policy ACCEPT)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 fail2ban-yunohost tcp -- anywhere anywhere multiport dports http,https
|
||||||
|
2 fail2ban-nginx tcp -- anywhere anywhere multiport dports http,https
|
||||||
|
3 fail2ban-dovecot tcp -- anywhere anywhere multiport dports smtp,ssmtp,imap2,imap3,imaps,pop3,pop3s
|
||||||
|
4 fail2ban-sasl tcp -- anywhere anywhere multiport dports smtp,ssmtp,imap2,imap3,imaps,pop3,pop3s
|
||||||
|
5 fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
|
||||||
|
|
||||||
|
Chain FORWARD (policy ACCEPT)
|
||||||
|
num target prot opt source destination
|
||||||
|
|
||||||
|
Chain OUTPUT (policy ACCEPT)
|
||||||
|
num target prot opt source destination
|
||||||
|
|
||||||
|
Chain fail2ban-dovecot (1 references)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 RETURN all -- anywhere anywhere
|
||||||
|
|
||||||
|
Chain fail2ban-nginx (1 references)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 RETURN all -- anywhere anywhere
|
||||||
|
|
||||||
|
Chain fail2ban-sasl (1 references)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 RETURN all -- anywhere anywhere
|
||||||
|
|
||||||
|
Chain fail2ban-ssh (1 references)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 RETURN all -- anywhere anywhere
|
||||||
|
|
||||||
|
Chain fail2ban-yunohost (1 references)
|
||||||
|
num target prot opt source destination
|
||||||
|
1 DROP all -- 80.215.197.201 anywhere
|
||||||
|
2 RETURN all -- anywhere anywhere
|
||||||
|
```
|
||||||
|
|
||||||
|
Here, Ip adress `80.215.197.201` is banned in the `fail2ban-yunohost` rule.
|
||||||
|
To unblock:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
iptables -D rule_name entry_number
|
||||||
|
```
|
||||||
|
|
||||||
|
For example :
|
||||||
|
```bash
|
||||||
|
iptables -D fail2ban-yunohost 1
|
||||||
|
```
|
56
install_brick.md
Normal file
56
install_brick.md
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
# Introduction
|
||||||
|
Installation instructions for the "brique" written in live during the General Meeting "FFDN" of 2015. To be completed.
|
||||||
|
|
||||||
|
## VPN reservation
|
||||||
|
|
||||||
|
This step is specific to your internet provider. Get the required certificates and/or password for VPN connection to the client, as well as specific OpenVPN directives if necessary.
|
||||||
|
|
||||||
|
For example, Neutrinet needs the `topology subnet` directive (for Windows compatibility \o/)
|
||||||
|
|
||||||
|
## Download ISO
|
||||||
|
|
||||||
|
Go to http://repo.labriqueinter.net/
|
||||||
|
(get latest http://repo.labriqueinter.net/labriqueinternet_latest.img.tar.gz)
|
||||||
|
|
||||||
|
Save ISO to to SD card using `dd`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo dd if=labriqueinternet_latest.img of=/dev/sdX
|
||||||
|
```
|
||||||
|
|
||||||
|
Insert SD card into the box, plug in ethernet cable (to connect to local network) and turn it on.
|
||||||
|
|
||||||
|
## Post-configuration
|
||||||
|
Connect to `yunohost.local` or through SSH, using the IP adress and update packages.
|
||||||
|
|
||||||
|
* user : root
|
||||||
|
* password : olinux
|
||||||
|
|
||||||
|
```bash
|
||||||
|
apt-get update && apt-get dist-upgrade
|
||||||
|
```
|
||||||
|
|
||||||
|
Then connect using https and accept the self signed certificate. Then follow instructions and proceed to [postinstall](/postinstall).
|
||||||
|
|
||||||
|
* Choose domain name
|
||||||
|
* Choose administrator password
|
||||||
|
|
||||||
|
You will be redirected to the admin panel, where you will be able to add your first user.
|
||||||
|
|
||||||
|
Then, you can install applications using "applications -> install" or fill the bottom field with a Github repository URL:
|
||||||
|
|
||||||
|
* [HotSpot](https://github.com/labriqueinternet/hotspot_ynh)
|
||||||
|
* [VPNCient](https://github.com/labriqueinternet/vpnclient_ynh)
|
||||||
|
* [TorClient](https://github.com/labriqueinternet/torclient_ynh)
|
||||||
|
* [PirateBox](https://github.com/labriqueinternet/piratebox_ynh)
|
||||||
|
|
||||||
|
|
||||||
|
Go to `http://monurl.com/vpnadmin` (or the custom value you picked):
|
||||||
|
|
||||||
|
(neutrinet) Fill with `vpn.neutrinet.be`
|
||||||
|
copy/paste the generated vpn conf into "advanced" section
|
||||||
|
(Note that IPv6 script isn't ready yet so don't try to configure it... If you're wreckless, you can get it at https://vpn.neutrinet.be:8000)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
scp auth client.crt client.key ca.crt dans /etc/openvpn/
|
||||||
|
```
|
|
@ -4,9 +4,9 @@
|
||||||
|
|
||||||
users, domains, applications, firewall, backup, monitoring.
|
users, domains, applications, firewall, backup, monitoring.
|
||||||
|
|
||||||
The other interface is a [web administration](/admin_fr), which eliminates the need for the command line.
|
The other interface is a [web administration](/admin), which eliminates the need for the command line.
|
||||||
|
|
||||||
To use Moulinette you need to connect to your server via [SSH](/ssh_en).
|
To use Moulinette you need to connect to your server via [SSH](/ssh).
|
||||||
|
|
||||||
##yunohost
|
##yunohost
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,47 @@
|
||||||
#Régénérer un certificat
|
#Régénérer un certificat
|
||||||
|
|
||||||
Voir la [version anglaise](/regenerate_certificate_en)
|
Si vous désirez générer à nouveau -- et non renouveler -- un certificat pour un domain, suivre les étapes suivantes :
|
||||||
|
|
||||||
|
(remplacer **example.org** avec votre domaine)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Sauvegarde du répertoire SSL de Yunohost, pour la lisibilité
|
||||||
|
ssldir=/usr/share/yunohost/yunohost-config/ssl/yunoCA
|
||||||
|
|
||||||
|
# Sauvegarde du chemin final SSL (ne pas oublier de modifier avec votre domaine)
|
||||||
|
finalpath=/etc/yunohost/certs/example.org
|
||||||
|
|
||||||
|
# Sauvegarde du numéro de série du nouveau certificat
|
||||||
|
serial=$(cat "$ssldir/serial")
|
||||||
|
|
||||||
|
# Sauvegarde du certificat actuel du domaine
|
||||||
|
cp -a $finalpath $finalpath.back
|
||||||
|
|
||||||
|
# Suppression des certificats et des fichiers de configuration
|
||||||
|
rm $finalpath/{crt.pem,key.pem,openssl.cnf}
|
||||||
|
|
||||||
|
# Copie du fichier de configuration d'openSSL
|
||||||
|
cp $ssldir/openssl.cnf $finalpath/
|
||||||
|
|
||||||
|
# Changement de la configuration yunohost.org avec votre domaine
|
||||||
|
# NE PAS OUBLIER DE REMPLACER example.org !
|
||||||
|
sed -i "s/yunohost.org/example.org/g" $finalpath/openssl.cnf
|
||||||
|
|
||||||
|
# Generation du certificat et de la clé
|
||||||
|
openssl req -new -config $finalpath/openssl.cnf -days 3650 -out $ssldir/certs/yunohost_csr.pem -keyout $ssldir/certs/yunohost_key.pem -nodes -batch
|
||||||
|
|
||||||
|
# Signature du certificat avec le CA du serveur
|
||||||
|
openssl ca -config $finalpath/openssl.cnf -days 3650 -in $ssldir/certs/yunohost_csr.pem -out $ssldir/certs/yunohost_crt.pem -batch
|
||||||
|
|
||||||
|
# Copie du certificat et de la clé au bon endroit
|
||||||
|
cp $ssldir/newcerts/$serial.pem $finalpath/crt.pem
|
||||||
|
cp $ssldir/certs/yunohost_key.pem $finalpath/key.pem
|
||||||
|
|
||||||
|
# Réparation des permissions
|
||||||
|
chmod 755 $finalpath
|
||||||
|
chmod 640 $finalpath/key.pem $finalpath/crt.pem
|
||||||
|
chmod 600 $finalpath/openssl.cnf
|
||||||
|
|
||||||
|
# Authoriser metronome à accéder aux certificats
|
||||||
|
chown root:metronome $finalpath/key.pem $finalpath/crt.pem
|
||||||
|
```
|
8
registar_fr.md
Normal file
8
registar_fr.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
#Registar
|
||||||
|
|
||||||
|
Voici une liste des hébergeurs pour réserver un nom de domaine :
|
||||||
|
* [OVH](http://ovh.com/)
|
||||||
|
* [GoDaddy](https://godaddy.com/)
|
||||||
|
* [Gandi](http://gandi.net/)
|
||||||
|
* [Namecheap](https://www.namecheap.com/)
|
||||||
|
* [BookMyName](https://www.bookmyname.com/)
|
|
@ -4,7 +4,7 @@
|
||||||
**Self-hosting** consist to host at home its server, its data and its services.
|
**Self-hosting** consist to host at home its server, its data and its services.
|
||||||
|
|
||||||
#### Administrator responsibilities
|
#### Administrator responsibilities
|
||||||
If you want to serve a web site, the [email system](email_en) and [instant messaging](XMPP_en), the server need to stay turn on all the time, 24h/24 and 7d/7.
|
If you want to serve a web site, the [email system](email) and [instant messaging](XMPP), the server need to stay turn on all the time, 24h/24 and 7d/7.
|
||||||
|
|
||||||
Self-hosting results availability of the server to users hosted and/or to externals people consulting it.
|
Self-hosting results availability of the server to users hosted and/or to externals people consulting it.
|
||||||
|
|
||||||
|
|
12
userdoc.md
12
userdoc.md
|
@ -1,11 +1,11 @@
|
||||||
# User documentation
|
# User documentation
|
||||||
|
|
||||||
*For want of anything better, here is an index of interesting pages for the YunoHost server's user.*
|
* [What is YunoHost](/whatsyunohost)
|
||||||
|
* [User Interface](user_interface)
|
||||||
|
* [Roadmap](/roadmap)
|
||||||
|
* [Applications](apps):
|
||||||
* [Instant messaging usage](/XMPP)
|
* [Instant messaging usage](/XMPP)
|
||||||
* [Configure a mail client](/email)
|
* [Configure a mail client](/email)
|
||||||
* [What is YunoHost](/whatsyunohost)
|
* [Setting up firefox sync](/app_ffsync)
|
||||||
* [Applications](apps_en):
|
* [Torrent usage](/app_transmission)
|
||||||
* [Setting up firefox sync](/app_ffsync_en)
|
|
||||||
* [Torrent usage](/app_transmission_en)
|
|
||||||
* [Calendar and contact sync](/app_radicale)
|
* [Calendar and contact sync](/app_radicale)
|
Loading…
Reference in a new issue