From 336adcc856997c565424ee7656df60ec1eaae845 Mon Sep 17 00:00:00 2001 From: GohuHQ Date: Sun, 13 Jan 2019 22:12:27 +0100 Subject: [PATCH 01/94] backup_core_only option for nextcloud I have been trying to backup nextcloud with "backup_core_only -v 0" but it didn't work until i found a wiki somewhere on the internet which mentions "backup_core_only -v ''" and my data backup worked only since. I hope it helps. --- backup_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_fr.md b/backup_fr.md index 60b76fd1..77cad90e 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -54,7 +54,7 @@ Pour plus d'informations et d'options sur la création d'archives, consultez `yu #### Configuration spécifique à certaines apps -Certaines apps comme Nextcloud sont potentiellement rattachées à des quantités importantes de données, qui ne sont pas sauvegardées par défaut. Dans ce cas, on dit que l'app "sauvegarde uniquement le core" (de l'app). Néanmoins, il est possible d'activer la sauvegarde de toutes les données de cette application avec (dans le cas de Nextcloud) `yunohost app setting nextcloud backup_core_only -v 0`. Soyez prudent : en fonction des données stockées dans Nextcloud, il se peut que l'archive que vous obtenez ensuite devienne énorme... +Certaines apps comme Nextcloud sont potentiellement rattachées à des quantités importantes de données, qui ne sont pas sauvegardées par défaut. Dans ce cas, on dit que l'app "sauvegarde uniquement le core" (de l'app). Néanmoins, il est possible d'activer la sauvegarde de toutes les données de cette application avec (dans le cas de Nextcloud) `yunohost app setting nextcloud backup_core_only -v ''`. Soyez prudent : en fonction des données stockées dans Nextcloud, il se peut que l'archive que vous obtenez ensuite devienne énorme... Télécharger et téléverser des sauvegardes ----------------------------------------- From be13b030bbc47ca8b4becc39a9b55bb2c02ce54d Mon Sep 17 00:00:00 2001 From: GohuHQ Date: Sun, 13 Jan 2019 22:13:44 +0100 Subject: [PATCH 02/94] backup_core_only option to backup nextcloud data I have been trying to backup nextcloud with "backup_core_only -v 0" but it didn't work until i found a wiki somewhere on the internet which mentions "backup_core_only -v ''" and my data backup worked only since. I hope it helps. --- backup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup.md b/backup.md index 312cc99c..787b991d 100644 --- a/backup.md +++ b/backup.md @@ -54,7 +54,7 @@ For more informations and options about backup creation, consult `yunohost backu #### Apps-specific configuration -Some apps such as Nextcloud may be related to a large quantity of data which are not backuped by default. This practice is referred to "backing up only the core" (of the app). However it's possible to enable the backup of all data of this app with `yunohost app setting nextcloud backup_core_only -v 0`. Be careful though that your archive might get huge if there's too much data to be backuped... +Some apps such as Nextcloud may be related to a large quantity of data which are not backuped by default. This practice is referred to "backing up only the core" (of the app). However it's possible to enable the backup of all data of this app with `yunohost app setting nextcloud backup_core_only -v ''`. Be careful though that your archive might get huge if there's too much data to be backuped... Downloading and uploading backups --------------------------------- From ff71cf597efc07a9e1676dd1320ef755833cc7ac Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Mon, 14 Jan 2019 00:39:43 +0100 Subject: [PATCH 03/94] [enh] Add graphical program to exchange files --- backup.md | 1 + filezilla.md | 104 +++++++++++++++++++++++++++++++++++++++++ images/filezilla_1.png | Bin 0 -> 11361 bytes images/filezilla_2.png | Bin 0 -> 47596 bytes images/filezilla_3.png | Bin 0 -> 12727 bytes images/filezilla_4.png | Bin 0 -> 7356 bytes images/filezilla_5.png | Bin 0 -> 12323 bytes images/filezilla_6.png | Bin 0 -> 49908 bytes images/filezilla_7.png | Bin 0 -> 45134 bytes images/filezilla_8.png | Bin 0 -> 45096 bytes 10 files changed, 105 insertions(+) create mode 100644 filezilla.md create mode 100644 images/filezilla_1.png create mode 100644 images/filezilla_2.png create mode 100644 images/filezilla_3.png create mode 100644 images/filezilla_4.png create mode 100644 images/filezilla_5.png create mode 100644 images/filezilla_6.png create mode 100644 images/filezilla_7.png create mode 100644 images/filezilla_8.png diff --git a/backup.md b/backup.md index 312cc99c..18719dda 100644 --- a/backup.md +++ b/backup.md @@ -76,6 +76,7 @@ scp /path/to/your/.tar.gz admin@your.domain.tld:/home/yunohost.back ``` Alternatively, a solution can be to install Nextcloud or a similar app and configure it to be able to access files in `/home/yunohost.backup/archives/` from a web browser. +You could also use the program [Filezilla](/filezilla) from your computer and which is available for Windows, Linux and macOS. Restoring backups ----------------- diff --git a/filezilla.md b/filezilla.md new file mode 100644 index 00000000..a6f54fea --- /dev/null +++ b/filezilla.md @@ -0,0 +1,104 @@ +# Exchange files with your server graphically + +This page will explain how to exchange files with your server graphically so you don't necessary have to use [SCP cryptic commands](/backup) or Nextcloud. + +You could want to download your backups or send some music, pictures, movies, ... + +[`Filezila`](https://filezilla-project.org/) will be mainly used as it is a free software and is available for Windows, Linux and macOS. + +## Requirements + +You will need to know the `IP` or `domain name` of your server for being able to connect to it. +See page [SSH](/ssh) if you don't know this information. + +## Filezilla + +### Download and install + +Get the client from the [download page](https://filezilla-project.org/download.php?type=client). It should autodetect the version needed for your computer. If it fails, follow the instructions to [install the client](https://wiki.filezilla-project.org/Client_Installation) + +Install the program and run `Filezila`. + +### Configuration + +1. Click the *Site Manager* icon in the upper left to begin setting up a connection bookmark for future use. + + ![Main screen of Filezilla](images/filezilla_1.png) + +2. Click **New Site** and give a name the server you will be using : *Familly* here. Fill the settings as on the screenshot except for your server which should be yours + + Once finish, click on **Connect** + + ![Site manager screen](images/filezilla_2.png) + +3. You will get a warning as you connect for the first time to the server. *You can ignore it safely the first time you get it* + + ![warning about the unknown fingerprint of the server](images/filezilla_3.png) + +4. Filezilla is now asking the `admin` password for connecting to your server + + ![credential screen asking for the password](images/filezilla_4.png) + +5. Once bookmarked, your server will be backup up and you will get this screen + + ![View of the "site manager" with the newly server added](images/filezilla_5.png) + +
+ You can now use your new bookmark to connect to the server +
+ +### Usage + +1. Connect to the Site created previously. *Your passwork might be asked again* + + On the left, you have your computer and on the right, the remote Yunohost server. You can navigate between folders as if you were on your computer and do drag and drops. + + ![view while connected to a remote server](images/filezilla_6.png) + +2. In the right panel, navigate to `/home/yunohost.backup/archives/` where the backups are stored. + + ![path where backups are located on Yunohost](images/filezilla_7.png) + +#### Workaround to retrieve the backups + +
+ Since Yunohost version 3.3 and the choice to connect as the `admin` user, there is a [limitation](https://github.com/YunoHost/issues/issues/1266) that prevents straight access to the backups folder `/home/yunohost.backup/archives/` +
+ +Until the issue is solved, you will need to follow [a workaround](/backup_workaround) to manage the backup files. + +#### Back to Filezilla + +You can now see backups previously copied and download them to your computer. + +
+ Be sure to download both files +
+ +![Copy backups from Yunohost to local computer](images/filezilla_8.png) + +---- + +Sources + +* [Official documentation](https://wiki.filezilla-project.org/FileZilla_Client_Tutorial_(en)) +* + +## Alternatives to Filezilla + +### Windows + +* [`WinSCP`](https://winscp.net/) is also a nice candidate for Windows + +### Linux + +From any recent Linux, you should be able to use the `file manager` to reach your server. + +Nautilus from Gnome3 can access out of the box. + +* +* + +### MacOS + +Feel free to complete this part \ No newline at end of file diff --git a/images/filezilla_1.png b/images/filezilla_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a5b3d75c6232d9a9330884ec003740530da3de3f GIT binary patch literal 11361 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 literal 0 HcmV?d00001 diff --git a/images/filezilla_2.png b/images/filezilla_2.png new file mode 100644 index 0000000000000000000000000000000000000000..0eaff4c60729ce48acbd03dd32fe927ebe98ddbf GIT binary patch literal 47596 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%0Abk{xR0DVTs{U~KzpX2j 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 f9;Q6f5AOcb-~Y{< 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 V_Y%2f_4#)sASbOPRUu&#{6BB)GoSzf literal 0 HcmV?d00001 diff --git a/images/filezilla_5.png b/images/filezilla_5.png new file mode 100644 index 0000000000000000000000000000000000000000..ae3a872e09134d0e4e638a0b09c3650afe7fbf0c GIT binary patch literal 12323 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 literal 0 HcmV?d00001 diff --git a/images/filezilla_6.png b/images/filezilla_6.png new file mode 100644 index 0000000000000000000000000000000000000000..6977f3d99cb38ab89f098ca53dd45f8f05c3c200 GIT binary patch literal 49908 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 G!2bZlqv3u4 literal 0 HcmV?d00001 diff --git a/images/filezilla_7.png b/images/filezilla_7.png new file mode 100644 index 0000000000000000000000000000000000000000..0a4d0ff8f5b92f9e170b83f97f6d5f07bb844edb GIT binary patch literal 45134 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≪85c|^dv`*&cZqNFe7Zu?^$eyPtpnf0DR-c4s=K0Dvz z0h-Z|S}LT5mlp$QmD0ByxDYaxCc&Xc{NvL(sCIb&nM|kXHbEb4wE^I{xqgTco=y_f z`B(DEZFc*48*uBk29bCGiYfH+yZ@MuHE~T!NpUf;fUC`m7vwCNRmVPl!0*yEOXGHd za?Q*U7_d{-6#sBv>WazB@U3f{Kp=Q{9TS{0iQJ@rW!K2RvunQ5rm`}29v&VMkvX$b zgv=yQ9FoPIE#S}pAfbXKKS?OSQ9r-D=5F=K{`9yEkjgO`qEui+O>%N_dit@?+(Ef> zsp2}Upu;&ZH8?wI8$8--%kkd}35CN7rdmRO!al&9t5IXS(lcV%*ev=YN* zY5cubWr9T+kD!bL+8~st#B_@u>y}H>$#>#v_6#}NWGQs@i9q^;s;_u)qL{WnW+Y@^ zF$YOKNk$Hj16W`sx^A&d`&AB|Dnq;~_p2`Kr-WG)*bj5620H?w7RG^?*iANfCWYH$ zV})N6HM>^gn4u!B5l&(iV})II0t5~%in?qZX<$RsYy zK5beFomUx%M!C7D@Y+)6!T$!Eny9$NdZi(xA}{43r1Dxao+1#UI1m%|j7b@SJEURccuNPLML+L^Qz)Aj-+SSZNT0q<;Z2DFFM=%L8HKwpOGia)P44n!# z=2ezvKIknY`M>y|00PQPmt=Z^BV;XQLoet!e2-1zntH7vJcrrMTulzCKYgnt%(AYy zkzD8|8x1d%SivY(n8d0W5lDXH#T4uA+o7XsTS2ic#P&wEYUdKjj; zt&S+F5U%x#&T}jhklyOQg>~N|K=>aFF7vXZn0W76dn1w0sS*Yz@$YUTJvSKzKte@e z;V(&Qp2&YEsU-b{pch*LZWgg$q3Rm8N>DpSbc)Jk-8rO5(N7d?J5W zQWPEmJU@m?K)7(6Ym9Cy5IN7nd@6V}Ftayx14I>h>PT#lex<80UXCVJDU?O8g|BBW zNDtm!m^K39BR#fYz|J*R1B(sdQo&jALnpbr zQx~P$!kQ)G7WD28=u;+=g_i#yxc!71N_@Ve8HmYxajK`v6zSMu z%{&>u5~B_^$j{V{$x)OxI9n(q8Vum23eUS`d4ByyhvN zpDLJaB!DB`oCnD)Dpw#$pm(S57J(C>-J#btEf29X!$gE1RA=h}ObU9pk*k*q^JtYV zfeslh=^Cl}zUjn;UP-Css?kAgZpY9DazB-z;gGb>iMX3E*nvV$<2`{^>2s%!b=uqj zRB5F)^%J6WRd#Agee$a&Z0Hz)g!RcsalYqkXg+|t42Og{W!@ttxjh(_@F?`mi*RJEOO}y7q>0Cu2$Dbtb-?F+mtdxflz4a67RVTW~K&@q7oYSm0Hoadyz8N%h}m+AJ6hW z14cYsF)G47{1%zkK!uaFiP@=zR)Er2@1-dRjlRTW@-V`gG%L#iBW+T8_kkWA?cXjHjjK84P| zXiqAQXF4rJ&|yK`QKt8gjI#Ly(0k1G3fQ1^Q&45C<(58L1I@N7CI(#;B+@o{sqpdGE22RlnHA3a1bEF|yLhF7Ll5jU!Y502 zvm%sZLc#|pEsURT{*cO^_>|TxC6Rlw*ZXfeO-bGLi+}YA63Dagb3jk_~}CY4!}g{Cz{5GGr(*^lOXG4&NncH(Go;G!seMQT|}JF6eYzhQ!UZ0Cg0;~TW~{^3Rhu2iF)#Qcki2x|h8 z5IKU9Z$k;<)le{(_TBY%oB4EH>usuT7eO|jaTW$_Qc+%64g9&RXRW+iVmr)q9E5Ze z^6N&n_66wH30?!*rlo|`I|?+an+$I8L#+D8kE6M?t-;3AbuyZz_{f`qoz+-L8~)#h zVz;2(JE>z<^g5rncDCs#J)5Ppy_$f%@VIP+8%vWk)&MK*F>fC1X}$*$5je5>`A%|; zYiCL7BMYx)=(1MmdF7Ow+&WE<{%oirKX8I_<_KNn2?m!YdrXokNxcs*^eC#;lIppJ z5uG&UT&K5mI}Z!JSv|9YoO%-(bPLb%Y>lVP1$sWH6BWJIsChnUH$G!;IR#Tc7wu(_ zNp6cVSd%CjE>0fNX4Sx&FSBifJff)PRkNHdYAX4V8)7S;CpGCOY-G8tbAGF)ET1dH zt(EbFjeUljq{6k$U^hNZsX4fFO+Ny4wR>q`pK9(QJUF0Ap}-!@Y`bYp<>-(;ovXRLIH9k50$FttL3AlvzLBKXjW)ZPVFsdCCnPgL%WJ?8JJx8UWH5Mn+P=#Y3G>$CghwOi!7>hLv}RlP?p{s1+I zeI4tD`4$V0VS?_2{5tFl0tUz*b{1j9$Sa5}Z2$eHt6V<{hyVk~{ueD7rNaLRJ4q4{ zF-Qb=`uABO(BjYUn_-RqGrN^Az*LK|4CWu|ILKu}iv_V+p+tc?hFt}+RkPyDvBc9c zCsAf`f{b9;Ea7>Q}BGA7+5j}h>MH(8C5Z0?CV*fayk9E5TV0Q8n zPv}ke13w;Gg9z^5Tn}u5=LsgtVutRlR^td$s7Vv8i0-P%J%9G6z++9Xb`+mGsTxy- zn&s!YDc~ghq+YgCUk+o~rMf|q7&o^k)UD&~L7|T9-mFy54i+~Lp_hH?x({Ic#Jjm> zjmS@brAa%vziAQ-SR2fkBnaVo#YB5u^I}qWbg@AB)Ys3lZPDO5=1f^h0oBRt@}wWz zANu{15n#jx==I+glZ*G&%;e-`nQ!sfk201{8DH)W(kFVkaJ}1HW4Qix52MU=!d4QU%McI)=IX0HR697A$G(? z|D`$@Cr`1Xl?j>4b2hwvu@!+>cygD!PY_|)!VLZWGKHxoz8inlJtAo^_k1_yk871)=OjW7|csqWQ^M;8 zv&bKan2uh+ae66gJV*O)MI9s}`Rhywj}!egSA{kZsYn13Qkt+IczIf#*H9%UT9u;j zX+?@}>M(fdHAG{$h&y?%NSms(xMARtL0KbbLHJ^kGTIcM-So>mSB9ylT;bqb;-Z8-V z>$c73ZvW{ypqoBVzp!Z(#4Wl!ykB;}q<;M6VYjKgUWBmG5aDC5*^jc_SZ4ZQ%e2bg z#@C&Xc<7_+j~!VLagYjY@;`F*W^W|eHEkUtfLuN%P@XrHRwb%(iwQMaXXjVO?>lA+ zvWhIM8pJKJth3N?Oo*wpD?8Orm2ATLyI!(BPpEI2M%3khqiecc-<-GYQ#w_6+_g&x z8sO1g&-_y#_6qFn?U*Gr_cXkIUlQ8a|JbOr$G!b1n*7UN1%XB+ zyN5plJC!ZCdh)kNid0@vkwnn_rK_teCNN6}^qCBR@xREnhO?FbZHICvQHTOAf|3P} zX8Tif`Ad=_aq&Azx%h4c^yT~eO0R-%w3OVC|Hk^K-TM8wdkuOf>RZ{yHnrn-Ht&H3 z^rzrObhwSDt{-b>Iz#`(v_$(ZFz3ykn$Tt|4P=bszOF%9al(WrUgi3EXdh_AvJM5* zCz)l>hqK9R8!MKMQ^u|4#fPxvkM<+=sbTun8)L3aw?HPgHI#Rr{H{fz=hZ)vj>5bt z=DV2A+6L|)XZz98)6@lV8K%{*%5>VL3S~lt+RESW3Zq#UeC)DW)9Asc4jRkzPD02W zuXb!>10d-s!5p@EUnwdU59K|^r%I8?)#su{|x*yR|+%=0A6EL(wcGz1~~SRD44&?ShpU37A=;5lQfe zW66-f@51Doi%O0%AQF|v*m|$aUMQ6IaC($c6wwbNe=~1u7=fB>1 zPM<7cccjD5hYrerz3tTdg5aL9Abn|950<(~a#m#JUPC%*{z)G7XCZtY%DR#`w9gKG z4rmD^pDUBess}I3dMP~8ys|~NY(OQdO_1Bp(~lAmGDWI^H1vPDj`~Dtdj-3v`dXc< z9~R(GJFP1bD-(-cjaHp-*;u|Ieg1T8$U6ggp~LLxZIGnF`2qkYMsj`-^nKV0f+mdh0BZ@t+C90Ydgkl8dXT*%LX%pjY37f=T7f48a15H)_YEOVq-SfPi8hee{}S1K zsK6Ftb?O2qmKGEV64Xf3+b=b&AxHT%*5?wmbB>I0!g0?P*lK8uRwqKH*UdA?)t7JI zk{tbagc(r9M)Fq$ASRM?5=%v5CqbHGS2oIKM}1E=Z<>hF4bRBDC5a_9<*W+M#MXHj zw$fFcdd;Q;9Zv^hzG&PA)xEimrS80p$yoES6r%0+)T?OL4lJ}GJOv3O5D*;Y}q06)yk5RtdP%}-loz|1A$EMhG9h!v$#OdqXkBTX=^ zdnN#mf0bIAs{RGSHX=8H%Rhp#g_3NjdDgzPBr$`g6PVs3=^bmG%hv(&Ku&J6je{lo4imndDexI=F_d_gzY=?aeEAwHuU z|G4D>@B)#Mk&(m0%3WCcDl;pq;U{Isan6D2P<`ic=99_i`q~y!x9hB@&pG_1Pb#v1 zn!{a58UIC|NjG_5E67;@nd9`mkQAkbKMc{eXt`Gx?=B)_RaX}tsb*ivm@IMrlBFhm6lJ3% zeNmdMW}B}@<(;cIXl>vx%)bQ%BF{Nu_&BFGSf?Jxpn-_HRT^dZMhoU-=DJT4Av2?- zreaKEI^a@Je~g~3qthrPq$oE|C6KgnluL{S;*a+|R`}DhB)gh)ybSde3*8nw3#inEIn;Aa=)3W#hUjGktr*ui%Z6YILYjZjP@{Ax3=f&ZY-KP!R zi884Os*_v%!o}t3jOg^|`ObL7eSHp86Wy4AqPRAo!Ef=W!;<8MQ$^WH$GcfgG|;4! z00qd|f>CPPZS!(GvE)IE_r8OSz1O&2mS2j2&Yh292kX65K_lhNgKN5_4jy}6>I;&nbQ$T{%l$^9KUmKCh6t$~*W z>1t_#Q7wvn=H@EQqgDqGQ8IU=F@f8=Zf;Td(;)eH@Ia7$85oZl%eVlTdj3pz^KXu; z{6Djm9nTW*EJw6@Sy*J*vH@WcBPt+kI$P9d;QlHS!L(xj#g;=A_tLpe8B4^Tl6A@j znrX#>L)4fak4LwmPAx!Hd!WOdD((4-o*@H1QdVdp7NK5qsQYtqTsu&HS+^rw z*X=NeC~yC44Vfy*bu&R*^aoOwdMU@wq`nRI{tXo&4_gJ18hI7d=^zO+vHBi-^-_z8 znF>Y9o1M7~{#!L6gez=K_q)ymN9Rj)B1o`Z^yI=~p*sbR4hxi{t!oy3ECVl8~h>f2AR;R!CH z|MBnr`Zu?9wc9VZG_dtQCswE6c0T;I9RAQ9)<~`|FnZJS8;C6zm=6eSmO^6SoqZ0L zmh|v1e-vMkRTx2QfIaJGE$wYhR3M`h4FGD^Vo%CH)tPhFu|#Jagn*;b{T~vWgy?Iq z`F{j;CtT-*0KJ(FM`N|?+y?se2FU&|8ym&k4Rv&HiW~iRLQ@&FKV+vel!14@dpnJ~ zX09PSYRHtRqDPTIKhr|He7>Dw-9V1&`n&#Bh>%)w=0W)_M2x(d+Dj(&<^AZTwz`uu zy{BK{$W(Wl#Y+v)WPkGh*gAq}^vBPa8jIz-7(zvMdMVgGnOZ2Q2lTf;E zV-)uG-OPL%ceAM*9}%0@eezwH;By?-pdEd)%h7+0_qKm1b3qx{O~136{U7O5=xXs~ zM)J<(?G;`lyt^XmikH=uzOopfi)g-1qdtsNn=LETxqqvcxfeGj+VbX5HIxj$Dn#Vr z%FxGRa0$*yoBS%d`SzX{oZ*3Ny`od*nVj;n``k0`qB&$bM%yYcEp|agjic5+y#nvl z@U3xk{ymDXP=`SBvWpr%8X1G4JA@a<=Fht$XOHPurc*TQs?I*h|BOn<751YtZ$i+HxkSNQd(G?KZDEanldvg+zndWBk>bR{?6FhpLzz~xHlM&vSz3mqr+x$>TKQw zT1M{bR3|M>`^FWouO`xe2(Q1EE*O52_EALi8?y1gRL6T>M!mM&U9JKtJMa1QIaC^% z+l25oiY&Ym>?UlEIro3=^EbGvBY0Ykazbt%G5Dm@M>4w@-CDn&J6&iCTf8dJ+X-(O zAY!ns+)GtbXR_s%?qSv**^ePHN+{r9MN4#%R<3K8m`!xalQqtUmMN2tDGf3?7HWDP zH#nCU|9teOUjJa)(A@hmJEl4%y0gaa_U@P_QkadtI5K7C+&G0SbR?N+a$Z-VVnHUs zx0$Fy+90o{ysB|XY~)SPX1#zyxccm?y7MRB58*paWE`-9 zdhZ&Oy#KGe>x^o$Th^f{hy@TLAiXHPS1Hnalahd7K)Oipy$C8zKsurj>758jAaq4~ z2Ppy(1*CV74!Lj8@B7Yo);a5*weF95*Ub+SlJ(Bs$vd<6%zmDkY5RG;g8%(+()$=V zoD5LDmMrC?fBHf^m8mD8Xvvk7tkX{orR|opz0uQg-HLRvI^_y8~sWq*bZI0E1!5)Re5nfP~W8^)sk4A!)t}yK^9r%heHd8-tPy8 zkq79DM?r1IOeooDf9+zNv_gNS5X8Rwl@PVTc@ebsheP-`zL~?uZ@yUrf-;!<_u&EH zLmS^YPj|Y4WC9IHVNIWL3^=8HsImq0mIq>jKR6Xfp`D$bp#;QzeSO!mpr8TL^ECmu z_#fzFDWawSf@7*Y%p6=h>-(Qt`uR$h>-Om$dv2B1(5HVv|C%eadFueKTck8zuli71 zF>oI9{%0m$WoHnWH3Jt9+*H!w^-Lm#PON#`RM?Ih0>x-XsGAVvWwq)`d4K5op zHAMzd*iG#kpKq6**u?LYwE4oY^_W@bTI#2}gii!w8+M_~Ej*a<1gRGsNPCZU$97uf zd(c>)(eKG44z(6s%D;Sd19muUJge19nezxQ>NTxGW47k5nM7lBc2qgvIs zYQu!jwFZ^kEw6l`&D$R-c{bJfx)Q!;_Kdvh0(3*SA7+w+bZR{^#9^V+I#;q<)jNM8 z45mko03Y6OX!4K(YxTO?kVN(^lAYWv68bRLVhzU?#Uo{Y*j=fdNlyF*^ED1s-II>V z8n9RDmRZ1TWY@0mFXUnCB?n{~+Us-f>K#9DqkR4m@Xt9<-b~YhUs)G0J4iYyZz5b} zb(5g<`v^J5mZ9-HLiwVEwIno7o6ky0hLgk3Nu7qlvPU;MS9Y7-sftP8&+MaJRI`Nl z?N$GXhW>ye2$>TFdhZ1dz7U~)yr%2D8dtgCC)k6>JceDufl82 zY-q_(hB|4-4wN|6&gzMti~84q1hZ<7-bA=z`iOvRjF{siY0nksQ++CQfUKosH#{3_ z{7UDG`rlDLqOaIOaKxtKC1=aErj7%~27we=f z+|=srti$><&GkW@Anr9V%7#)sUqo%{^5Vh!8H0+hmszoDHiOHnGz5|9SN^Aa{co@S z!J9qEVbB=Ns{w$kaiCxz2lyY42#aRWUD}dc3J5z~fc?A))a{}4d?R}?7zqFrzoBd5 ze}JxyZ~zGMB@p{p+Vs=?&i~sbG`uzFpCT}RMnk*!|7Azus9o9NpfM{`-rH!vi#1t?MU-8I^UVuo}Pe0+L80@^!zwS0$k4eN@`Z46UrDq{fNnh%U zQ}o-gmhL4-1ae3J_u)FxkgVjsxm)v-)12D9irm$!JTSN-wJ>|bzegJ_sa4JA4V$9# zE(gyuRsRvBL;Ztw#;Te9E&#*+lMC;7?!q%y*)6S;?bC8oaxSGa{s}YQcXv*DoqXT4 ze5xwNFEgLbutD)zsqGC2!hOdof0`R>6<(}_APYsLJLx_^{J`=(zK&c3nY+CI;7JB(03ZpF!@I1`q;xpsSb?2C!xcaD_K_~_(8*}(OA_8VC3*l{rii@^ z9m5tGYTSpio?!?UFYqRr>VFB$gmPpAP2dq2akkui<UzH<4j3ZTSdD*aZt&MGrjo0X>QZ z&#u?5l-)H5-XwgR^&~$y7c)ti86Snfk@0^O--a-iK5Hw~%Lme^7atbmgYZ59jv~;i zeFL!{opqF+`r`FTl)vU3f zV@z$r#PUXl+g)}_oIs%?7&e6|JU$tT3DU}~4%*BT`Q-z}qadWlx}oB;$=3{^U0Lz% zxwdlq)aw$HhZQ<@46?%2w?TYy5<-)fi*)9#DRazTEtXtB$2u<}Fre2BFY#+x<_*m_ zeB!QJK|X$#3E=>dcLE$tmT*TXbjUV zVx`Z-(ns-{|3=INSYZ+y^_9_^h7(GL@Dmjf!;<2KvvA6cdI#5do6dZltM-CYQkkj}V#ew(Vn#`qpeZBMRwGvj)zA*DN%nR*- zrFV{H3AY&9?6%jeQMc68121#RFDUn52PU~d9NQ|UUM54C6<|TR^5P6&wpmc7cmXek zkl$2hGO(5Ce`^x8^SLJZ31K;y8Fb^NR5+#P2Kb;W*_YaFmgp-pJliXKMHBDK3ua%Mj}cjFgXMU~KUBp$XLdLCJkrNs1;Fj5e`X z3Pm5HLD+mfrvw+J_l^TwO3_9jbD->GesTH51nL+O0LbA~t(vjlhG}6y<1?P4ASCiTV#(X7OvDQMXei z_^Q2ei+`cVnh z=cmkvZtWvb)K2Np@{d4$cam}L^`4p$54ki#{qJ3*l}4w!KNr=-*x6ZhuqW!$9C9N zd>m#i9eQ+6K?;RfSaP$XISR^m3wvHr)cm$)-A>DdHN|T#qm*-o2i|aUi~SYt;7#3K z!D+Lkfp`wPile;uJVtEkuB`F&mCHM>Tq^3rE*c~jJk+k0^i|cBRheB6DonqAbvdE? zamG|5{iB#bpCy_fZwcm76C>8%`#T34DE%E)u+VE(B6wsmwHN(_%PEX8U?o=~ccH#&kv>R2i*(v`^Qi+5wL4Hp(;>fg)Hr>o z-tLpwpm7IC_@H~tz;361)8Zlw=za$J+ySWiJP;NBsmjb)68CQ_`rB&xzyE>$(6vDj zi1?GLf~@}k%^CjxoYieCRrc))pd-P)alaN|5a_4CR?x{t(4T8;YgIo1i~y@rm-kD6 zr)H7zgCoqV`a}4}vFSy_q*_&MU!mY~fh~!q9f_@CIOb%59Yh9%cN(P!zb-cI69gTY_MOQuSWWEt1#O1Og@4tY zW;F4jEo2G8PQjQ!K5s2nr27pgiN*pZQ1;G(qOdkvmn>b+=CU z;Ah>hR>Mt?8;obZkJg}o-H}vctW~uN5QgHsxB4I~pulpeh_X}jW%Bu?bP8$t(<4>c zb4$7ts{LTmS=R4j&z1uA!&RSfXg-3z;z8D4eTUOO7;`XbI%!agTi4gXq2x-IgJlmq z8hN^qa$;}j;L(=KqWRucdBsEb?*4FA{HTmq(iCfURNj55$`=M&NGdLgIiRe;bhPQo zPS9!lfx`(Ck8MC2U3~h4Q;>t{1Az<`fx=a;c%6!b=rEQ9jv}+cPZAV}+DJ~mLZu^* z!R;H6aagla@n}7E=v-0Y4np*$#vZ_aDz#6=D^gjeF?VvNTdO0rlC0B0hB`k49k-(9 znn=v|+7O=*v*rFlOjPmykFS>J!Trhm*?eB7KeMP%%+4`oCF_qFN6{{%30@ZSn>8r8 znb&Q|$!#pZ&(RCZ+BLQ_K?!S^5O3U8nSCG#dJAc&waI8wk6yz;yLO@%$|8U#d?oht{!yO=pWJMZ<+uF|eOOzcz?;XA1Z9<{;Q*S?TSENHG?Z{_4G zee_HW8r8uC46**l5WjvujROg7=|aBuYENaITjz2{1Sl@b>Iz6j3U5YscGfr>r~%;B zD2rFxR>+*zJC%A@_tqhB&dv)uY&eU}@`x5sj2Vyj9`OjcV4X|RZuE4WN5@0>%O8r0 z4c+b>4pXFv23h!e9XUMUqN8Iq>0BIbu5k{#ReEFycx*uaVW~eDJPDhUUR%Hrs#pT^e&76qHXg6V**Y089VALp^MO+0D;4 zd?NhYFo7C0zI1zI#hj4H=!@%k4%DJUqeQRqKm#1dhv6grEirf*tYac{9R{5C*FZAG z9I#k1WKCeP!voOocLWyFI!X1!M8`z59DiSlI_Zv05Oq2^kVg9~!0<{m1Kx;xY*SC4 z5M$p9n0<{g8}Oh~+bXiSFp5tN5I{K&i+^axi*hy{&Dmf!;RJ@SkH#@!nDvR3JwnDa z1bsTCJM8(;6Q@({t;^7dv@F2KDWQc07Rw<`yU_v9@^FKXbpbS z3D?ljP+^beZ=;;v$IS4aF~Pn8>1lIX3zep&C#x8Voo?-*Te&sgo0`s$nD3)@m=O)) zmFP@GV2x;gc{nV6s>k>=QQ(X>_eIvC#PnewanON$yCHQ7$KV;bY@0F>WbM@}|5 zzPN8<5;)rnH`zznoV82rX=`JY;E!V&WwDa@RIdZ9&DXtoiLPUq>8}l^B5`OJkhGwM z-*sx!>kA>gm&#MnQw*76t+v<0-?G2Pz3xtJ=@FIuqmVO)$6Tj4pfF1Xg25mEVT+Sw zH9}YfX@v@fbFh&!-BV%sBD4DGQsZsUnMv=qYl8X22|s;VKU`vhIUgN&RIIuMX1Kkn z_xG^wOU<(qplTCS*0_Sd;JEvfUd;PlS(&51za%*kDZW{`p}2$uy`=Ym-`dfKz5w5V z!PsL+GX_7wGQpn6BIji{(PdjB#(o`135q>}kfq%$-TRM3ZoW72$h$0ny+JQUwK62x z3327Z%~I7Z%n3ZEuibX zjE#+@#R5-0KI5&8p}AL>C_UkYvl26_TUNOA&Ay}M(D0KjyJqf$y?~<#RhN~3n(iC5 zT$tYQlZW9u1bi(W@6!z5@KbeZwz)=Tkyv6KEr!@lN!~IBYXXI*_pGdPr#DztD{53S3Eso20HuX#z-Htt5-!#&_1B*b z4(NrV4FN3Nn>;d%GMSy1yD6GLsovsp+yQZ<)Y-T3gxjH+6?sYwo!)GpZY5a#_~DOn z=pU~!yt0A~31#S-F;F60;W-qoT7h~}W@Xct9O(6s;1f6X3)=HXEhSpT;U|UirTW<# zqtx}%?*oqawzgbcE|eD*MlcY@%$Auni1YD%a~AW?fM;aT(a@9>7sH*kk{6@gG~_F| zSld4JROTpEOw}Z({gAi3c`K|dqj}r26Q?pi%_8w6$r9x(CSWXNz>(-fQD5lJQI$F~ zL{r_-8F$j%iSX1HT8yevZ&l@yq-W2#{C%k60^Er|NzHAFsXh13way=9ya;>S@kX1C zz>Z(vg#TVR! zh8!q<2_z=j*%eQ&WdM&?ulQeS+>P~XxLuztgKQf>n!jT4QkyWa|I!?<%F}!?RR12u z5O-^XP>Nc9jgTlf)wLg$5M`g2YKF4pQ@IdoRw~l#vZTLUr|pbW?dSNIqnE|c*O%eE z%dAf@OAdGcg_+l37jH*QA}_KuT)JVSb%zZ9BW09m7wLW-!&6IvS0j(5e0SLtb>(#_g|5whBEyaA~KJhy@6sQ^EgK1@;XbVu;;N+ z!5?N^C1%dm?Fl!RvCPuJd?x25lx$}d8v{~!L34#p&#x{xHAItSS%shlj9$zv+X-u?O3?$OE*j2El_SKK)1ku z8ysn#ompIdV-M@Of_zl9xVeuzRT!1;R|YI}bf|cE2&={iHcc<=SnXfCdex`FBrVTD zWU`|p{EKCe)T8;Mrk)+6p-FXawt1ew)(fpyQQ_evS+WaT=4Rg~KgcZv}xgkzETzYs33AG!CRPRJhvA-pF+fHRjjk0B&`anYigX)W7d(<@#1EKfpko8LHqiao2c}0|0k)lJEjc0 z2ZzW2IE^^Os^nn;f9KCU$-LY2v1rMCl$-PBoqj!{R%C!5G5n50S&`+dgXuC@n8*2I zYf5XE9@z%v)#JEK?73d&{5=YZL<1_6Z!13BT4C?x=~-v@7J z6eAc(V!t8uCg|Ayg{nfrpsquNb;5HN=lBTT>6a|b&%`HVmUnE(%Eic{m%F-zZeCTL zv1E!VA3&q8QenHMcHrT*u`r@1>n+qjN!Qu82+HB|I(%M<3Jf?%ImO#AgVh0$jE%@^ z{x-T;8*lG%UC37BtQ0VV{Nd}}&pUXFtw*D2AM>}(T(U|E(PfV$y>2-FOjMB~YK3}j z=IVG|jJr`aGzw8ySNHv^C@`K(Aj2hrG?JMqVuMgVqCR!b3mFI9220W#$;e{;E-#6R zpvQJ^oV6nNWj|Bc-aT-j(Bve#d>Nu<)kvVQSy6#!K3_#iLMrDBu)ctYYoXKorge6E z{}orM8TC$D5@5XRzNhK2afzl#UYtX6};;P1|005kW_&dfb?&Y9o&&AEiVSCPedN%9g22?;}94y1;J^wbOq33(C~8Mp$Xoo567 zpgGCux*{QAcK!W%lE{iliiAXkBoBJ4;gzwM>6tMBn(BqGA)2G=e=Th9Zxa%7Me7zjCsXky&1fYvn@QJSf7$!_PP}^ElYp>@6Jolo1lupX_Ic z_B{_D+9<^pxl@H)Eg3G?*3219Kp;?2QBedTXWPwA2_7CE8ZaXyB#k#9uv_!O?qr$o zQOAoIauEi4ZW^ECZbC+tjNhj%RH(sJAWivyO|emk%p$p>SNA+_Q@G5G0`J{vs#~vC zB3652JewDSsi4_J4)jm{HkEY4mIh-#%i45oIqr#zi<5Y~ixj{0A%pO8Z=kSvI48UHe_KgNay*E&dL!|0)XDkirGoF;PCim2I~8jTd)do4`MHKv zB5?iq_GaGe@~4$JBJNPsSYz+(*|#>U(_R0H_KSmtN$)ccf9BZJa~{Lyg|qPnEB49K zJxcVM%-%_k0J~q%+uMuAhYf^31@Xh)S}Lqu$e@%>uby&PU%j&cvP|Cm20P~^>EoZf zeFylL2FM{oioIAr#_lk)F;#%9nP{H?$@H~v?Q0~eo)3wf+ke{RU$QRL2~_NU$VXv= zDwWTb$`6Ii=efrdp{&+lNeW(f2KEG0j*Q$Dm$S2I7qLE^y@Ppr)cb6l3fxRy9A^FT zHJ`h1P4IJ=OTx@t_^O^CILIti>9%u4+`djX-dd`Bn;D9^5c?be%{y9xJo^zIPPX9V*}`s`GnP&x*g^WDkjo zrm0CkhQCZ-IrGlN)|Lfloe)2gT*BlusVuPE$OeooDvi`{s(2{mc1NrHjs#LM{?ONG zEG7>EnG#j#AX@c3@MqG*#XVMNl?8EK2>dBi$d>mm970ii(=W=@-8?!!W(O*r_g`Pv zjf_3k8Vk5>Y&COKc$h#x1qTweAMfld<^v zKY|Bou4LS}zwR*${91-!=ZySO{=9Sgi6m(JEKafBVUg=D)yhgGFrJHlWoGkoe=$%# zo?((6P`RH1zlzRb_nyb$LocFX?hNDB^A8&joev8|(NVt}UF;91sv#sUq>pm~c35kS zd`&wCCaSfwmy4I}*Jg({Nr;DX6IHQ!{zUIdF=S0uLADw@9Pfy zH&SLpltTB+l3>K5Z}dHulHZ9)~6AVLY{{;Q|6rd^#{^L!%PmpGvBUA4&3?hMzwps6gd~mx6`7OL@ z{ij-`OMgZ+f3SLZs8sMM>Q_Z+kMSrLAUEM|ENij%sU=ep z@pzPeeyi$JY&g4p!5Dfrq%@>2MSR&Aw6ON!2SkFwYFT zlcT}M`GrEK-e0MQ>~l^`oK+^tr1}|mJB+XCo@9@zgb`KJk6tE|b7L>CNCTFZzAwW?2Z-hZmp-&Mxm&fJ=ewh&6rf7#wiIX$ zrgA^5YxlI@^boNf-sVq;-cL$^&V`PgytHMZIT^(PLU#bQgyn4mtGW z2T16$X6{d$I}eHZ9peRBrE?O3pSJtISr4h}e*W4Sqxqqv$nf{fk7KAL=&r3@AS+K# z+r91xI#sipGoqes@4|NwV6`YxZj+Uy#lv2t*2DhT_JAw0Ix38qd90G9*n9l2STZWK zGFq`S^;p#`GS1=Ozlpfn-ZiFBahR#E+V9Gju82x)onc7Y=NB_#tBu0~Tc}qXT zFO6=k(<46du(n;(O5ATS9zbm2b61Gp50@CEJU(YfffBq+BaB%OAFNu%vE0fIZmfo$ zYb#nvoVC}O>3O*I4A(ri=fHfe*89ez8_rwvZ^9m11#ZrbRl@k1#DuPliw+E7?T=$c z>Jq~b<`E?ba=7S7p2CsBPNe-zyo@U41W4>~MA|G=MdydOK;5}!SxLsi#n>FYrSb!e zS44C0VWTcN>A-3m128T*Ld*c}n`>Rx3&Gv`!}0OviXxs!^Mm` zmZ_1I2f{4t^cA=tPCSes=~(i7e7v#7lHYcE>1T)3Ef!g6dX~87WMmqjtxodC6dEK8 z9CWO^)*Z=hOzjGp!({=!+Ns9Xq0gRj@`z5D#KUyUJ|JRG?fW#f{4;U&O$@u;BZ_Ok zu8_mSBKO+?SfqVARffTt+haq6qps)I_8pgnv>!cFhEw((ZBNtrVLm@>GHFRCVcB{O zk0o`EvS2p~ktEtmTV>%zzuqBY_c%qzD@ef7jXSzFMcK^qa43asSM1js>&~gbO!@ZW zL#cl6@cN#6BbeCH%TTAC#~yJ(|9dRODN*t51GLo=$cp}X%P$qsud020c(|rdt(^(u z1c%ihEX{_1278!D(SGHOW9IR=^2uopM?K&umUqqq_B(O*@ji9Ju>7~~?@9T| zj`>B}Y#JE%^LOkQuMhHbv; zaREQu?cJQQz}}E}y!QJw`sOijt}mvpf`T;F6Aq(PVf!Zhq_QA`p`NJXN(YW)=hDx1 zUJg_Fl!r6THtKI-9;5>1Xf_ST1yF_K7s-K5H($@ll1nn2T^H?k6!fYT$RT^Wj$>Hu zaI#uU$oa<9!s!w1rO_PKjNYw|sX}!W^vA5Wp?{;pLXw$mbvLP=TkGlQ=;})2{#xTt}JIbC27x}19Um6S&ABMPOC;B6COEi?}V&=+l2&1ZKsW*Rv3$})C z?)u7M15qx`3p6;|n>{8W+76HKMcw)y|AJTc+NqyqX3q{Wg?Ay%CE_#WJM9&4u{QBR*sWHy@KoKpUonFpS4BVP1o(_Q4Y^l zndtMkLtqUX$_sk*2BQ5|WjA+Y6A*cqvgSDiy|GT)N~LM_ zqYGJDz1tZUQY*7AdraTdh-}x}NwJpwQPw#*_16A9lJgKIudv^{=jY?Yiw|IYoX_Z^ z-Ek|p+5KT?O0z<$r2!KPN^Jc@?k?^-lUhSu5yR6s^b8DdR(2MIE&CS;Td0%bI8Z!w z^J;7HvuR?XRd1Mz1gb4>41NyyLVvR+T=3S2>_z^zY_OYW=-9REih?7M-l!uQcXNth zdoKA#m%mOu`OkcVzfWYn_%?sChi*nE;CxU@4C3{ghDzz`!XruUk6SL;6+RZAepLOm z=b&HXtzSZV(0ackyf;7c{u62LABm~0rrormN9(Z)V}gT|T*E*^(!843@zn`qA0q3n z)A}84w?j|q%eDqT(XEkd*$YZGY<+F^^e|^KoJNC#YH4(p^#rIg3mDOZ;p?T9r(4ss z=Qjys74X$V9986Nw%qa`3c@EG=gKi&DR-)wSS;qbky?Nk69x~re)O~pcRcaJ!uRMl220lS&cq{BRXACCv#W#@XB z?>ZN7G7S>%+Dewn<;WBY*14goB~$wtkbHCNJP%8S`uUpy2HMorofsO!|aK1OI_4S?#ZirycoCsTT_N%G#~Q#`b-rV?IsR`iB-9>%^1n_*e=&9 zCq3sEeXa)`B4ot;>o55*T6;b2)X#^fV0#%FN0)mIfx@~uw`;@=5Mn;t<7`jyUEv%@ zriAfmdzU;3P8Pr9Ht{fp%!;-Kv!}8)x%02(oD2*%{dZU@< zOZovt*%rt{eY?ktk&2syZ3q8#k>lM(UxyhmmS(ZR(XL2*V6)CNV&%Z<*23laC?vjN z_p+R{dhF@PY4fpJ3F*HP_~?9Bv1YN~@ghnjSHakJP3f~q@uy38T4i(JxI8WLo3Tpu z+W0R|UQk#Qb~R_j3rn0$^F_^cBq}~S-pdF5cy9POG05Q6O=8$or*dYP0hME`DrhKG z|KUF|1>?BB_sXmHj3Ig4daVZ^9I1cYVk~!HJ20-=yVaaiNfu{X8`Y~T3oyMm_HB)N zIKQ&15cMm{%rhLhuAZ$+cejrp&YY{-|0>X^+&q8>g?3dp_uMc2@cWrSc)0uLV>ATe z$97&%_{FV+WM}J@_HBOKf^CN3!^PlY_#DRLQcgob>)B|!tN6p({uCkGoqflikTJ*o z)x;c$ozI(Wvw}VOYQ6&j_sK5b=3GLE!O8XLVs*;|-WBrqrHV^SKhI*dwnWm6X; zZ^dj+Zp8zA`%>-ReFH3NfXT1vdzQF`y9aNe`A#kMlyQ=aZRer>shvk#VE-Ok!>%}= zhXMamV)DV^G%(Rwr(Bl;l_-0+Ww1}-QCW+Z?UY183r(2xi>b1k#r{OX$1;RRoIq02 z;_MRxc%g5s zf9J;-QEvKCP&<16zCTUz`Ge>1)92`D8SSkuhttOCVyD-;o)as)%_A~wI+q7LW=Uk# ze9hNYp^gVmx?^7^y6*P;^<8Z}_Q#n-VKK*V*LsG@7HLVfK0T$x@^R}JDe2)zovcw? zD|vzR>9wf;bE>8Ud!w4~UyB#qq9&lGL^$E`dh-{OV_Mo%Yi=Gnm?g6|TXTm-+>SlH z5^%D|9I6Fso+Ov%~O>tW4)LZ!f~q##j%LB6Gb~l z+3v)sqN)hqcazC*(Mzjy%%PIkhYzPy3w}Ej{*KLb{0B@(NYp4m?<2X^_r>ie%R;i{3!uNhpZ}%M%MnifD9QToHuS|FM>6ZI@W0AOovy58Pmcdvd$_+`1nIx{ zcN06Jl3agM=0CL$`#k@y|1Sgl|6}(S7fcsBB)_r27VoQ4DycVQvFuFzl>35aGKz>3 z=;k$cv#qha(0rAJ18_6gFFsl;ACiT%qqc#i6x^+s(A+VA)flIMk#jPeQ^<<_s(2Z- zm-#Qjm7qSJMPpNbM%`$8gO6Km=PFo!95N*tgtwD>zmY+OGHe=X_p+}`{S zi7@p(FytAn0llntn=S25?(BPT?j{v60%Y;l8$E#n=NQ1D2cVOU3KjcolB$?NEelSr4ChO*3wUgTdg$h^vwlqv-N3* zpKDtl34g7i)^ZOXsV^=C2ii`c>o_Ey=mqJeLbCwQu2AqQ;HH$O^1Z?uXJL~M$+g3i zZ!YSkTV^YTsi>EV#Ce_O39?hIn4y?jl_@g@V)3`nBDSI#vcCY6`50Ybt>TTA4N_8d z4OA?Obkiu&x!TbB!Wmdtx$@(7&m<4~wERN5;Y0XSptZB)(xG}}EHpw@TgrnZVHl*5 zMS4@pMP|4&Ru}#ebAt(%6{;Y2m6Y_i@#~k5rs1>9&IDk??x>8XLSk3e??3oF*GwWs}6DyTO0|B#c<+OkoAD}a;*0@~>rmDr3f)KT-4 zQ{I@2=E}cTUK%b741NC%jheC)YJ>T=T|4x(YAp2TqLCPR0DWB>;E<7!bQo<_VT7Ew z%(OK%EMNt+2S;m*BuDxr=b76+BBb|H_@jc%&(ZDV#rj2=t8#^}4aQjFlLj$h#z% z>aND$9~A``hXJ6vC52X2#y0P855LfE8g53QpGKrj$(N?5ebfIiP<7hajc^r`_E6b# zlh6BOo8v;Ok|78#v%JS+RMDuIcz@|gCg?HZhDWGrO2%aq>I`xl(@unfA|A38LVZ8? z5M(iV;Y%kE&^s{F(LJLD=zPiAA6v{mC|nIGp0G=T z%*_SFv(V1i*qNDaoOufPcE*?osp~Wm&g-U6^QPkMDXOnJ@nsW9W78&o-tDZoH1;=} zZSn+0Q0nisT2yf7oo`Ie%{gH8=(YfJ1=w_V;Z-Pf;m4ak*NwB{@0uLu3bU}MpQH| z-k)$AsOTAlh|C5#dsRH}yt6KST0v_b%?pr*ge@n*yVpb__&}s+wj~F~hHi!1sPD`p zSmlB!Vm9X+T}M4^ZEam#s@rjmhy-+Z;5O<;qX&THLXij;THhsCo_nDgtGS3T&Q!|0 zbM1Nd)^9&qog${-=qxqqJnp8pLIrf|V(?=4N4Tm;Jh_|HK=Jnp8B%pR8Zf>Xg(`90 zzDHlshe)*GrLihfQ7@--euw%;S11(tWj&U!{MnTd8z=V0aiUn!ZnE_H);L`iCVs!Z za>$^XRk}Mpl)=-koF2tzJO0%?;BF@F*ROYFyxAx~G*@;!wqrX{%zl4C*f8h6h=Rs~ zF+|2J!(tT+)pM||%ejw6TIi~XBi7!b3(uAWMJ68i5aIOd#CW1>W0tv$Wh>}~s+D-} zDwl=f$Qnol{M6Q$pi!Wv0UtfvV~F;)3HRQL=Gr*-361t!UhvGnwy)O4<|#PfaFH+1 z9&&+C% zSIbi{s_3HARX=j6Tj2c zeBf}ZoXq1{`NJ5gc==_)wTIW zX~pNxvQ_WG8HSC4_{P?85 zYqCs#U~ZyB`_WwLA&%Xf5Q`Ac(97%gThNzkbZhdw8tc~aDC4}Zz3c41X=7Wu8%to0 zY?OKrjxri9s|7T!ba-a<;~K*z{0AU{*pe<*rF@brInQ7vYnTFu+XgSg4dTOOCP?1)%@~hh7rw* z;qZzpikgqhJKHh6Ai;=iCdf>6UT*Fu=sd*J$Y|S%k%3{dNSzTWNbjKKR3%5MM7yHg zxIN%>V<;q6!gcsAAt6EB|Hj`R~pE)M<8^3}!a3n#K( zqId{ywSn%KiqfrPUoRf1sxW=l><;3_V1KhzRWpOn^R1d1(4L-Nh%CCuaj@8^)hCff zbM5OUU{s-4-s3O=U?WHUMC1dbA@0J*TAR}%D^dY@MBg+hiuYeUEZqgY>>J*@%%4wR zk*B7qn6krFXDc=|*D%Zc;!bjeLFYLJqSOpu`?V97l$7MOWZx#W`1t#`eO}4;SYFpF zzs$k{p~2nd(^IJ2SrZ_*K~5}gn$0NVD<{07Qhm66-hp1xYO{57hSe2z8rLnYjZZ3X z_xtFw9a|1|lh}HpXy1dzO=0()vxDZta)ZV==yME`@fs_5DvuS1ZZ&B5boyH?W!q(R zSaGo2txLwW3MUR4hqinczL%NzCPqld1~fY*Gn3sn90et>ykH~@A4ve=mD9`m;9U8; zBx-@N)M|oshQv5eL8ZigpcH0$Y%Zsw60jC4J32N7xW}}V6sFeWZ~6_8I@<}ooAW8e zWO9Q&qS{13YWF2i>@kX{@gQf(BQwr|`WaJl7r84rrOOA@l3zXr7b*%0)mPTOfNh;% zd}InwWHB@lV$75VbrJajHk?H+^tqVFK(58|Vs@E#+j8E9|3u=|sU$N{7DRdu*k6_L!uG zdsU-vy|0!-)z#Dlqg|U9;9`7&v^A#=4GTTa^JNW)n@%i=E!*-}BAUPwD5vw2^egh5`EG1%cx?T7dx2kM|4NOJwAXT8UD#Zu;B;?>r7hj+Wv_FL_)X!vCEe4z zpsL#h*P~=vl%boHXsd`NlO*IQz}VXN>*oN`kByERa7@kASglJ7 z5fc+P0|)Zf+p_G34np78pG6cSb^`|ehxgrm+8yp16RIKOq?iAb3s89CN3*l*)s?F@%|*sLyN0V#LV_%qNaWa2O^knG&vXef!FKFq>vvSccZ>%TO*kwp1@;t zFi8PXMMASkeQ8}`6h!GbttXmw*Z9mpcuvGqesAU23*ex$K(gEPU3B>=UG&5g)&~SH zuz`*GMQGB0&I8Zl2fhl)eL@0$1Y{+0hH{(3Yih$hvi0I-kPD90P|gUb zW*~FxPv2G}o6idHEHRX~OWufOCimgC$A{aqvoo0}60~5dvbQR#s>vr`JLV)k>~&d1 zA|@9=+)(C#`U#=a3S1%h6-DB#X5al$Csy79qSe>R(lX9Q$yqG5Rahrr>_@ElEdFWA zN@13}%=tL1)H3&bpK)S3laT(CA7P-g_9tXui&N1i&Mq#;0Yv(xr9IoZ-o^QBgX`{M zcFOOROsI_5X>RSs{Ib*8;i80qfOa^i$|HP$fN!zEaWPju-pK!4lcs-YNX&g_e625j z-8<-5`8X)#QB**0oQ<4SMKSMUKP1+mOpgzMq+h>MNeE~IPK*KdS6kp6YBy)mbrs}B zyFNytVR&TNHAzJyFxgih{_3xyDTsA1i15piIu6|}Z7;{*ftQ7fHA@I^&UYqu&$h=v zbT5A)4Aa-*AY)TJio@B)kiWk5&^C3v4bh#llE-I{R^RmW1t$KpAT9=G`Ft+v@~q`K zzqDNbs_Yn+ZqfV{|N0}Pwt&Ohi%0+P+4d9k@_ToJ!&A&NpB7VaQ6QY&)d2T0&mjx^ zfM}-t%HP&%K+Z~Y+Iw&85P$lLLi9(iaCAI!_-Ki6nH?Z?&%Z)g_ipn!-*K3$H*EE( z`@E6li))uRao}E4m|D0seXEKz%FW@&yFTaGo(Q=6mHmR`$fvroL80 z{QyAIn}>7Nd4puVhOR?=E_-8L&NE)7IpC;Z>x**OPt$NnOv7}M>y!MCrr}x-X-w+R zW$K@iGBYrR2QQ0cABrA-ElZ1nrWi`}d??JX$RjUdE(tZsMd`|2u#2F&@`E@;M6RO6EL z(FntAc+=RQ74=uh<@s^LHyt6N-DpeXB31B|Zzv`KrGdXs9ZRd_yP?Smy?C_X^pk+* zYMYK22?D@RPHuhX3&o(7c z(uruT_$Wt@xAhsfWvP_dBSE`Zg8CwP`+sJw7gAP)mgh|#oWgY8fi{OTB!<~1{3 zS*l7(8i|@O*_4Z3FX0{nqGcemDZKMt%}y}x4|sNXGlRmK^(wZeQ1UDsot%<{!h(iY zhGvFkTUC$Gd8oUho<~OML%-p_s%%8A+TuxRBoZkJ${2h zB}-I@o!w#nhch!XbF1&AmQQ#`%k1gZRq}#tbk^Se`|8BrkQMG0_+AwI;6aVYE!1Mu0h4!Kv8u8%iXk@OF;GeZ5=` zh*#@uB>$7&e$CzGMt35#-wzP6P&de6YXS6jE#kTverc?x8u%skOiNUso|ITnNP&E9 zVx2fOb62!#9$Z7<>=9cf9CPoq)2W{)8u9|`!b=o0boH}yyfUJIsp2DbHjmYCB!$>b zl0GDr&rZwe?+1~d>L!!;3=lq>bhAx+jBu8|9p}KE z-Ri;DWYsell!>4$)M_tQ*3?QZ@ax8RG%^T-3ign+)rJ(}vLoJV^npuoahTN;0t2%p zGk{b&F>eYQ1v%BNO>!sanGTej46m;^HJbG^YWC>+H_o!OQ+MOHVx*CCG9V><3jycN z$#!XQ?TkG~vLe1Tp1|cqa<77k^foISsQ_gD$8mN}d*I^(ur0Hkq6b%gK(Mu^Rpg#b zXisEvA78ne5%<1CsaRt`oS#-Bfx@!AmVO3(!5~!_Xb1svMn)8P z;dr*KOU3uk6uqGmLd+v|J;Tl(+w^)guai(^Nv<%NaATRmt-_0;$nXb<>M$Ggu^ZT8 z8+>)DiluwCt(21kc;#Q8WCx0S^mA}m8_PFhNJ9PfBnFUw`+Qe$aPan60RU-kic898Yi-5=XL@n4Fjr~P zxfpQEE++saOD4S!wLLePEvk(!{b`<0pT7_npt!xd=cZtrOlMD^RjLCvFkm}x99Sng zAB^XWOdlkwSz(*CuLp8Fv(1Znxl;jFODD5C+tc`=hw<|-2MQy>F}FPTa~V;g4*-M@ zBx^aFRm75GHVX1@7E>3;aCym^P6p7B*qGy4*%!)|v!1NO89Wk7vs-X=QU8@L2@3*W ze%tXv@6!$AtjCjv?3JuOG156w_3Ies@QC^sM`S~bFaBgxanuINxfgm)KK1DBhM17i z(xeYrDmDqu2Q&GtzYis?OS8L`y^bQVP#RfwQcAfK?sa~=41Bc8zAoX6As0SDVTG*t z9=6$(E#&=JIN00UyE*3!fRDJcY;OIwQUrlr@QBSM5N=cK5}b7$N8?567^M8U=wtLi z!~qb5IQG1;Td@6I{aX9O^6#z^8zy6!Dg_6ZA0pcnnZc=Xhk~O9XFg$7l`w<=W3Zbb=?Sv%}%VefpiQGotVMZi2`+ZN{n%ftFN+FLpU|V`4+h_re$(F zOkN46rXKaq=Q=_F9Y{rXfy z`Ccf=^d~9NRe_l_+7Z>BJ3iJdIc<{aO%MZDw^@Z7jCCxru-x3|M>LWjGxlCj28}N1gPIr zvCDb00|teb+u>S(J{cn7@hPdNLJg3{qX*WG%m2o0y*WQ7%6ogS%IrjHlhUy%VpVW= z*i=t1jjd8D6jKyVDeNYv#z`aqes`_LLhpIr77MMuI6Tt+aGcdD@+CUK=#N)-Ewel1 zQ2O~HXYCf70;^u`{`mO#SHA|E>90=!0Qq4kNHH(DUR=cGepJ2WJ{wvY!DW=e$&@VWy*8=z1Oll{e0nC>2Dfw z;qH}>C}TL{|Lf@9{e#g-`>gCWwz%J%?Z#in>?BSwl6Abh;}dzf zMNk?G*A<&@Cc@%Yr{O{$$-20rp>k9mtVf$ydE1YC$(Czrl!1A!_s(-rv&gVsBfEl8 zS6~(de2*W7^+9Jq6waTnd_kBOnoAMWyD|@Yi>=X?-_KR-;t4yCH%i)MK%AV80`eQM zVEeOsUYxyGE!m@!%wY(%zP;G*Xbz*6#s0)n#@%%A=Tf{*ZkPs6%5i}6?7N$^Vj)*x z4l*JPU@2mA$JJkzbrQZ|d9ihMyh)te*<*#( z`CTDIg7_3xVEdM^O==qb0xhxjM}<^V3gv`Fuw&Qy5QzbzG)VfKCJbKw$Mj)K2q_3y zvwrfb^A3YVQgC~~y=y_tWQjI>b1`2z{rT#2>LcICo67bL5{jv=WflKFV@+Rhq>4JD zJw)2pHukq_rIt_Xj~g8SCSzmURU)7?!l3OCb>iXxAU4 zmHr)GTuGODg`;w!sCM0zeZ?XG@_qr!;tzYRiUSmYa}kn@?ty^t`hSNXNK_lZ$p~_1 zL*>7FA2~dfZ~$2XpQf%!eV2bF$vq&E`(J5m^|l!flq8i#fHOGj671b)m8jnV9<&CL zMS^J|*~oyKMU$jW%4PEF(~k_sa2zZ&XIGykKU6fZ5M?%>hZaf1dWwwOA;KRBh1NDp zY>!1yWI#;$Oqq3(@_vg=CS4(P!zx%ASZ{H=PpMDLtXiv%ompS&Egc1Y#cM2p1C&d+ zj^TRnj|OL=;}6jGv8S6-Z$OuR(4*<@#Xc;_#^E&`yK z#no}-W|am9f=o*I{;l;yeZ(E-Y}3cB)x+zLV?DxKtnXtxZh@?^-o5E+t=Yf#TQFGI z1Stn&$;IP`!!pYw$dx5gdP55e?+uI8at*yn3*62BkfX4OV4oN_CR|e~H1|K5*r1Da z88kZ~ebL0h!GwK$Ea^9tOv+|uABOB55y^1W=@P)#iqvrWimfs9lJr~JATuyZCGQe~MK z`Ll!d4(h&&eOWl{x87PiqADYRWaGk`*K8M;t^Zk`je!VwAE3R>b1?nU=Aw_x!e`-3 zSggr7!ZYQmD~C^bF=YriDBOdUAl;htvG~=7naTamL4`TCiBdUlzv#wr_K5$t@DI_! zzdx*Rv%LE8+AR>X3Bgb7wI;4kLlyxr!xUFrAqrMi5TDHE!@WeU8W~el(?Z)P&S8P4 z_)@;fPm!fWUIs*cHhw}K=@OZpHu1P}{r!5@egcszF?5!9* zQh@^hP7`*(^vMy`ypL%81PcE4j<}~1SBv)vqm1_pTI*=rSOK$GpK#K_Q^9Z zAvBfIx=P^d&Oe#q-wlzTyc@u5rDvAOk(_+~tEu%=n;R-T+rjsUrXQO#L>#Tifck=< zw~FSjNfQt6X*2W76G;CjIhALs^73t)2M9<5BNtAI&PRF$G3ofPA&@4Bg7h1K*xnYn zyL#mF?#;?H`;>9a?9T@}DUX(AkDo$fpJu=Nx+ygu^KFl~Wb$kaaX}-Pa+>s9(Kdj-}dNRoGWXsXV?KB3_hqI6*rIe&Y$DRoVs z)LRZ1?}!%lWDq09JLJwi44}7l^p=q^MgUo&e;Wt-{Gx~R{vhZ-SpngH#|MVQ`sY@F zLJT>N(O>t3^f3tyk6{`h!pR-@{??Hs?WxP0s_{ku?gI+tVj#zsj^$zq&xUZtON~fR z8q181h5w?q(O|ob3^QG(*mZJ?C|81EfU}nSrHb)g!2~?d)al|F)dsU_fzIAV8z0J$ zUyNJZ(;^fTCOSEvz8?MsF!m;HkX_JSojQiL}G1Sstf#g2=0w?5D zdI@c+BWtrcEnRwVy~(5M6w|z(L|m8EE^IC5cQ-|b>%Z0i%)-A{Vcu@)Zn96%?xGiq zJ(*5$8icC(x<3}9+UoC$qQMq>*v|30(OvN@7$w)8h=zjV73G=x_jRO7%67iW1sSynjDp=O2gz=%DLg&XZ6=+j-iPRL70-h7Vb{vxcC?yL+&;ra1NwNi zCpOE=&2ai4#|;8(6r&UUE#JDo7Jvg>Q#TmRf5Y(>9J*)$0Wy(yX*o3ib>;%3Z5uBX zf-XNqgQ0)-J|<7=Rj5p?bY{aE5>o9?WgrOzTYyL!yN)XVzf)ks0#&)<#xBe}5y*J$t=rjWz(JFp^FM%&q7nGI+b&8G8r4e#SQ^8gDgO>0$UcCG?(nUllw(X+-_*GL@(003adGbo=l zptjvA71I>w$T&>xW8hiMuJQe57#cZ$u9UWVD(&-t+Xvw~NqmYruIoI;zQNnx{6-km zL#xu$Y8%&KopApea=a!W?C6h>+`+{20|6)5C||_*gg>fX9n@eAMnHR9h0De*)I^aM zKtr;iUsI2OQU$u&+9lH$sz@6KPSF*FO2pmnUD+WU2EnnynWF*WQkkR7VHc_LSz zB7wZHqCGs_70$YyOlF~g#64t|K>#Cq_B;cCKu{E9Cp@%8e=Q1bW>dPctwMQ2neIAi z4d#tz7Mr&$`GfW}T?);}B@0%L)^-{XiEwjG-Nc#|o&x@m^J)g7M9rovnX-C8kBxI% zyr^Oxpq5OLwDVi6r`qKRut{#X(c-GYV`#K!Vu8Bkn`Z>-pMcj{ z&VtebeWaTIk6OM};<|ap<0|p7T0A0!jRAF0IOHo7!wA}r8?4KKtJ8t40A;L12DIlF zsFF*1JzN@3k$gaA-V{$m+O1&~N$Vo&qqEZZ3l6&B?0%_H!(4l}aVuR5=lq}H3{4j9 zpY?4}uDLn2RAvif03A(`4c5CY&3JFDQs#7|T!^ZY_>AYO-=L5#)WCia*H5+BM~Q%` zJzo~_hhSu=lwC2+_){X^LX+lhc|tNzVf2ozsZp~u%eW9Qo$oZ}r}*v_N=;P)4%sY) z*z5&k3V5{&X)g?wXt)?s{rji(X&eMd&@M~9!SD2jH0NfkWlW>0i|Ep82bv(}PWi<0 zZ~DHC{|O(SWk`2RYkcM!d=?eV3^7VVIm2}F?(~a{Y#P`i`;$fS#0}Vix>( z(zgoaadoE$DW5?n_uI}H-k{@P=4_$bWZ>>o#}6`S5}_qf_Mm(VgI68RC^?u9Sa%w; zX*tk`fEDY+>|IC-UGzqDFR_U|fdOH4tn2BK6^TRz^`T{j1ruW}uQz;1Cam%6YX!TS z%A{W50&e9hCEM%Cf{0f{!$$E64*wr&n|CQ+TjPKBe|dlX-cYbk&&Kf6kzwxBU8U2k zGwlyYWi>0Wh!eTDpIjgOS}WWcR?zLrPG>soH!GXV{;28;`=rVZJPiHYGJpPdzcgbn z4W=Pax_vLybZkA1DW1TEh%FY!;Qm%P$FU=1^3n>B1l7aU6jn_pVNH#U=9I~uw z7Vlmg9jhfBci{FYa8Sd_* z0KW5S+X$`^cGVHO8$K$YU>#s0Z-S$kkzH3-SMb}kKmr+LPl6pk%zJ{(CEK4MNq+c` z{d9Q3a$>qIFut?w)ix{S4cvaZ0W#tuik{`J>>Zd!P4@#;b~ zn8hn@^lWk)&vsZUBD~+iuItiD>NUlqVx3@&G2U3DpDQBWXhV30te^vQ0hTV1-FiKN z9ZPPfhX;<}GuaTpj`-gg&-nOhq!v!Rz+^%~`b6q?Inx_)>309zLS>&iVnjKo0HH_O zE$0nOyCOq}4e>hXhqMq^>eMB^l3|~?sO+=()^8(iwIF3aZ?l2xH(8$G$la!O#}A{Z zX=K>Qsn~O%6=Q$kuj?;VQ9QK-#QgrdU#UG#rhsEQ=(k^X^*MlVq((ozF>#@;RpVbv z`vi)PHE+xdLdht_*0D;n!&Umg_NLYoB_NTT#q>aqSm;laUg~aXX*Uyro%FX6YP@&u zBu|kfyG^FmbDlEg@u-47UsR2{{oWa>R;@8lN?#=hW%qoWg=&J{3Yfk*43ag9xnjqwk1=eUK-c|mSRDF^#X%O7V zaPs9fCAfk5!4_AC4&L-^f!~(r*}SboK>RBPjvO_q1+`g*luz%X((J{4+Kk%tOU-W9 zD{)o5bsuM{;Xf&`P43G~G#QZ;o^SJZ>8jiSXXNBv}P2!c)F4XGML<(AT z{}mnyGGL!Zjl(YWf8KNz*@Z;!C64+IHNYPLKI}`(di3HP;AJ~$x6VEss;lQc{)C^g z&Rzq`hwe9o1t=jB(iYw$S2t=!dwxn}U5we3z51xA=McDVAVxA0damuMKv{8QtyzsrSK1KrRjQ!zF$^t6XTcmf^c|KFeh$} z1Q#%XbI2s~xI3Qw1^)U#V`8#a7n`YWb{Qs=OzXg**2;@6(>J0nVbPcp80zHnC?Bs2 zp1fyPcAjkQ-V4*==2qp)W=fxAp18JI|QG6$epBmrFwmZXSSh4%y68bFg#4KzZ5Ss2?PgoS{Qj;|R>mLL| z6PuL6Uwlh1ygrk@x{)YdSaDQgeV4NGw&nu=d`3HarIUS@n1tae4(<{H0JuYUV`gi@?>hFHQrTzhVf{+_vOi9!**rE6>XijE= zI%l^v450iO+=*XLP3Ga6ww1(LN^`+LCHiizY1%CCzM9dw{*T!sV^%qXdYtoqRCm%1 z)H0i4<;cZ`W!wRof4L$S!M`)eDORpMPhHIY!QX@@seLuLnyloi>3@(GibVT|{o&$E zw-jKkgtab+n>-=nv)pd}=dM{>5Ly=CKP9}52R!4oKHbA&3kDnVVMm5ex&rWINLSsJ z1u`$*hhH0<;-(9#m}@^?+*;c`dDq#9Xcax*kgXi<5bGkLddxc?aiUb#c$!^?jPx40H*8Olf^_A#II)AYWa-zNAyW=)L%f_Irw{_e*%UD;5&c`Y+nI>wN>YX=rBad>?mQ z3MIaFybn$>1%mODPZ=lHq{?3d?LcRC4G{47Gf-xEiMAr?o0gx9cnnIF6>UyE3AAbE z7V-?7tgI!XJ6Ps#5~w^<&M!1H6+|=RPaOAG8I%b?+OM%4C~QV^1GNY`j*yMzv_@2X zF1UJ%#5^g6GG##x2*1wYh1;Am%>TpQTZTmywrj%!DvE$~cb9;KAdBX-zW?n=G!%`!^2a)V%;gZX5> z_#^urYw3B_Z{`tSs>ANHky}C|#*4GfQ!_e3f7Pv9pp?oJ0>2K^(Sbb}uCQXh`6+%x z!aF!iP3nzh2_Z^>t)nYhRB8G;t*GBForGrA_;@AGD%{R|tlqujG*YK^BuqXl#Ou7vYA(@#<++ z0=k+%rt&{^bj2@yF6($^9TtKet&(t=^JV{qpeSS>P2h>ObZDKL7CNLQ>rC}2!ua@* zD5gqga$J|zsm;{1$XQVu7M9i1&iiJoqJ#T^($n`XeV!HKopROEbwyQ?1emVB*;*>u&?E~!pTWLmZAtfO$krrKjs~E@(V%ww3Y}V+!cd48nl#IFf z=*=TGUS0whG~yAR7RT>D+kMft{A*vTsXbZF&y#My1ywQ)A=5iRQbfoxtqo^U@-l=m z8Z%^>uqvnYbl2|oxQ-?GpDWQ;Z8!n8zaZ^S*fPgr zE*)u>rG;6{oU34nj~ki(ZuG#y5aabDOS+f|kix(PxtlXzGu|uFh$a0T(f*owX>2TG zTEfYf11eDp`zUzANoXJ(>-Q7mgYn$q`Cd8(8ee{^6J&{&`W;Su7)+ARx=p@3>3y8t z;34rLK9_WQ#X)y+y)m4Fz{?K zq~=O;+9^xZEHM;YuaqC-6QOPXbVbSTxbVnqfIhf67DxApG&P1G?ZhTyXqS_S&46C+tWp!p-`bBI(tnug zH_wDGEOvl17hIMMA>eT9>1yy_>n)RcG4FpChBZ#Wg2e2!&)k#M~q{K(=nX2%iC(Rc!onga;IzNgi9TU~5J4gW(Z%ely5Vg6*k&K@;zj1aV zC(Iu&kd+D;$=7gRxY?hgC^Y5ZXlH!?%WcWu_`FCmLKcR;V@l(S>uXYX6q8mh{h}U# zfs?u1`)f%)Q7GK5NqF+^wXI+FV*@nP&muBbCR_}BNNmLvg8s?`F#oKgry-fnBxi&^{*V_$ z=;d(Nvh9yC+9nLcAFz-Y7fIIygRb~z-tpsLl@Pni z-UtsW{?{REWM;owPV14X!*22 ztFxwCuhG*5WOipC87Q*<$&4+JGxDje;B0gPX~p?!=S_-*+g*$|-`{GLlzDB=InmSW zER%*R1w|b1u3JbYq=2mWl{DYW1B4NeSV-+-$P0J$uW;TKc3n7oWLS5(?gQs|#BnpJ zky6dUILN{QS)1JsPE>B^$2%_YxPB56k}Atl)FIM7Jh}(+;?a3sK$v5nZCK~xyoaHs z)9JywEEM#b@;|Ts`t^a3kQ=Hm0e_Sn#3PTbiA@I7v40|izb37g%cQP&%(Pv1wJMu0 z)+vAe{P}YQ1$h7K#YfyCA|kA;tnSaYyVW2Z=qSO?#T_==0ZLM(<49+{A)5J-ouCWfhacaT+YHlE!W zLPOp1gUj@Jz;}q$L3yw=x8vk?YUEk&x%d~p+$2(?5h% zC!HZZ%p;ukJzK%{eYW=o_v!?5WeX;u0*hxbg(RuWCf?yn+&V#~`&>66P!di}UX*Bi zO%S_hqhWYw8(Fzy-)j>=O7K?)Z}D#lT%N#pT?zL-5a~yMDymJ+>|wF(4X7|%&gvn8 zEYM`L-_IS$tnGKKpVm#{FVk{jNIY2diRs6$)mbNc*F zH%Y2hy0pgRW;(j@G>37j@toX4ii-o!M$xTTA;Qy!VRCpuM{q+mqMK@X(zrZ#Gv%P5 z>Z|tFuGtq2!*nX1=;~|;1Sq)9?9EPuG2q@>Zj|?+`i_0l=mOi74b4EIrhroVLlz(j z`MDGX#v9LR$MY|lg(#EOC?~tnh{G$0BA>eXWAaK?~41`ojsRqyHQ43G z-~LW?qq9LKsh{Nzx=G(M{&Rwj80<@C)}Mp*9%1Sw4~Ogg>eL684a}4|M3(hARjcnp zBtuN>oStd_XHoraKML`5mN?0kpA0f>>T_28a?uBS2Nl zS&Z*EQXNR&TT`di74_~DDxgfo-{U6aJI-4j=|5N7!K@hjd$Lk7A@b8FhpUStA*&y9 zLe1VVIE;@^L{{$>#GBE}XZ%V=&x|%6napd_@nyz`?oKO6MQSS{g`|6b1po+9G6pNv zkzd6TB!g7XcotlPo*b?>NIO3pRgu6Udm!0E$2_^=+AxXX=YVH!$Ds4|4eWGZZ8G`a zfiXPL72>De$rHs!*>OD=EIDkj_Xi*w+pt7SaB5;=Vo?07@D1^+ESXS{yG|^ejrQfi z&DVq`y6CM%LHBE8?lR`M0o92@k9sL6&rmv)Wfeh22q3go)|o+w{g9nPW&m(|G!V71%)puk?v)T&#&BNJYjiZcwTrYS2lbS{>I*~%3-0!$8QY9iDSCSslK6d5MKgihRo8bh zD^t!y@n+%+?_!mDHmE=aY~58X5&gkD1BNu38fXySJ1F*!aZzc@flr9_3va?WtyX+t z=WLDo_Y|}g-z`wTXos(iAysbeCrHNl?KF2 zs*K@=C5XixPz&e8JQaMS9{G9efR`ckmCIi160Q$3-?>t7G2`l}ebj~MvcD$LFKJ$U z#7#%ZYl|PP zzTlFYIc)T6Ga4FU()WtnUnkCtEiZz|a$H4!Cb8M|l#?}F34@k@B6vzkXH%{$^pHPllK+oY`^ zWhcQ#@-A)Ai-p}fv8S1#<&H{67-CZ@K1H{&<{97Z$~ANlg>Hjd$F2Vaz4(oZ5-wiB z|AM{pn(yFdYQi74@zL1a=yJ&P_JECdxHiQ3n!@y~v&+t2(h*Y)a|?}jhM#N;r#s&4 zCJTP-EH-$Oshg4cOl>nUi`Xo(Q{gqlIMzLsor1p6{w)-F`MY(BA#Nm`)7j9QGA`7F zb&p3J78_eM^zmhe-DkXB9Y`SV*F)i|adD)L;1j&VWce?8^^>*6;iHVvH6Go?9BELe z5NZ*1{cQD;ljG&JAk|fq6ZmeMCdoe!Yh2~#@xhD&bRo|-he6+T6}l^k{XKoEbljbPyjT?ArO zkzpeR3LnI|Z#rBhM@*3aF&~cIk<9h38_#o?n3zPjzuf>ypxDh;5Wl;m>VMcQ*WEvC z_TjlF8l>lTeD3w#0!ZbvUQ`Xfx${l{O_Ybn{?|x0z}yJFJMUhWPf!S0%prpNArO-5 z%e=2$3yKxL*bIP#`>WIS5?QDSM6&R`2fUP6J-VsI^K{>`1i?ve7q&=d0#bI18s2;b ze?TQ!^{kKA=NB01=xW2p@R4d%j9@M(f`smOP}+C-Vqsx9IXQvcXL8;YG)U8i6(?&3Cv8=q@>5X^4*loy7=-(wRH)|2`e`KL;s5$;2 zNHi&)dPq@xCfyy;E!dIP(N($I)z0&1w|8638n8!HlII_rKgOq7VW2-EzisYR{)CVf zzK+AI^jg4U<8`M&REPxV6<4c8ZSMD*X_&XfMka(Xs=sO1lX->`=RsifW12$!)^ZV+T_bcj1|9dASAo^>qbx5?iEIu>3U7wLGKQ%W-uL1Cvf4 zGz2KyBxE3*nN^rzxMAdl%5YMVcy+NN!4Q#~SH*Pc>6mO0W;kjMgO6D~Byd`4%DwL* zFgJD5C=^{LJ>#~6gR2vJv3I+~woD94oUXsBeqTS$xKdY4AaAqwy zH?i%-Zvk9k4Ikd@=Wr_$GCxUMaO7QyZM;nNoj^!KueaVB%+K2NoC`uBrEJi8n2|e9 z^PAbLi7Vn>2<)IQa4tPV@`>G^uJIH`J-09$q;T2B*!#=o6}M0hwOHG`HREcRX)WQ{ zX75UT$Zb6~@X~*bbbME?t}eYfn27kE+>1(~XE?f;Yk%2?PfV%uF5?>&^Bq#jT2m1p zZvC8}4`Fb?B{d6lVl_&O6x#D&6vAyaY6n-I$Y+=Qovt5@!}w@YPFv`SG$=Y4AkwiL$F&X# z#=lO977eL8^Tw<)qiuE6ITC$ii=Ih%&FK!`TA#zaf~~T|SR^n>W!fG#K~^=P z2sui^_bsK)gBG=@MC(|tGws&+y`$NwV{mi#WI}>j9nn|?KAh?Lm329!EKJ=BURCeo zZh0u>(i@raKC1pm}L@f`&Z8QTygO> zho99|s_-foX$E&B>lJ$z-QP zw2vHKf*d@>IPQbHHN|>)FJ2F(+9E&JV?b8X4Psdo-mz7Kk{Z=MohI*-#-kZz>^K@* zolWQ9$6liP9F<`&jP;=*)kec3^lH#}*i7tnHS4nIT~<~WsKsgqEvk`Yrs)CK7j#s3 z^0M#bxKo0g!RT}(?i?{ZJUl-?52$N(Q9lI!UcBA-fc>r`53G@vcqdTz1MhNc+Dm!+_AMy+n|4Los)+7D z`FT6fp(H-_lx*UsM8RXZt98YTKbq_E9=rY~b>PBRO2! zZcqA)x3?a!YZi=2MXjYK@f2f zh$0c$stu}%!?h<@vwQV2F>Jl!n`oFbPh8pjPj8(cjjK7{cxxCd$l_Yp7|QHE-oS#= z7u>?euid)MgJBZ(#RR`?y8}-tGcAWA^85qlKgLojwLT>R+^$Ho{CqDHZKTS(6^_~5kzmqZ?zlYFjRD^E&+Q_n@*yV)`A zIt0>74rkn{cv7{v(rO0JURMwCa-quAEC_mDW%ex3;!=lUEK$!T+BRVE>wMV`-Q#;` z@9j3gMh9WaQoNm%ycAAPargGNG%<0M#&Y9}LO!veZ$xe!Czw|(Edz6YHFuk*ev5q_ zw9s4477Ng4RyG)md1J85q2Ux=5FNO$QMfmldeUxhdpdCgp+INsKl9z7e=)6vcQzKB zeFZNs8I|HuNUU{n?dyrMaOMzU->d#m3E%CC#EM*z8`dT-?FLkC29U(ROa)wd5u8O^Pv9S1JSmN~-S!LT>Mg!Yd zyP`+|a0Q%UBiO;%h85qC6qw0juW|1ODDU${TG9v}*e}J)_0`qY?d|Qgu>$1yYe@T( zG~?1!BI-^@6~dYC|I7tQPF#Fcyng!D3v?~GapMLMNlRXERN3O*y9acRYFiu(PldSb zpb<9I539$R)jsA5fZXK0RZv$wd>F8gN$1B6TRsg{sN zXV?XLF*Ab#3zVgyIi^e+qv^0uY9-aD^>ok|>MZfJAhh|WS$f9*2HFG}!q9AG(v0U% zi3-NnGUQzb`{TTR8Evmv{1e%3i;Hg7et|xxOZtyo&F6Q`?{x--qbcv&BlAC;4qE)| zma61LSQ?fak2K;uHPfyCQ(*qjvgMeFYiyeqE^}Gws!Cx*8j7u6dHEo|5SUGr{z{+i zwV)h_mivo#LQY-0@@0Ca~tS5{#K`es79_&!(0 ztL)mS-3FxGmv60aMX2YS@wD z*$`gha9qnTj$Q|i{}Z$Hv!S0$j8l9M`*?h;M+a$YG@V-}DG4ZO&iPNpH%C<~TeGx= zHvqSN>2QCVU$+?WHM3sv*axWd3n8J)^Op4nd?`mpdAV-E@4h^;{6A_|qif$lFvyG5 zlj~pN!{8IlHLt(e>F_x_yg9lIN|9QuKct=6Lw%o#=!V@cU|g&mZVNlIw=ivubftQH z8+Qn^aMknr!T{1sn+$MiHG+WCV0Z`BjtFt6ydKR03lx{(lhFT}xCw-P8ZK};UwpG? z_BaEd881wpWO&+hH@1#s*cN#^^(npSLIewLWbpE zZTm4ipS1SxbDu6RFV~Cf?FN9VECj|BJ31K<*}}$AQ-JLR8}-$yK@{Gv69v1ZEPy6N zarbo=0I92+35o<=9SQ-@1HQ5$8p4G$rUz(uw)GAO2*e=0cLXXA7`m*)>F~ePx?&7; zwu=9m))5Q-CtByu%RRsTta`@hN^5iTrFGPUPO2@Py^MILaUFBmNw3kpj^uwZyn=2B zoY~`L!~Te3;}`9kKePh?xKU~J@jGOOOKDg?Z8Ai)^1&+hrx zB~3D-!QZ*J)rRZ7S)gq%;^c4Ene+bgm0MM(-p)79blJ~v;mb7C9@!;cvv>y`42laip#<;Z`RQ+K3y?;`j+Q06Zazm!nZVP1!Iw&$qtu4 z<=QNwK8GBZzLjS&FP<_Fb02<;#-vs=Yt9b9VBx>_E{8W;p@ms}W@RsM(&Y*lPulo9 zsjm7eW@pD!&)J=zR%Dx9SANMux$!AN?KKF`#?40$0o%xT(fh8k@I%9Z9idVD{Gn{E zLXezMdtzaoW%!mDPFv>5`8~g~K&0<`-p=|X;a7dXx_C`dfka|?nMKK__+2+(a1TeS zPRIWh!4lr2NUYcypxVbwk>uIlgej9bg*8uS7YS=leMnR>ltM6~TVS3N?Jd;VRq7IJ zOz=K>>}|ovjiF^@Jt((0M-uASLVxKZI$6;E(G-6b4Y-6%A;JW-1d&U6!(hIY^t-Iw zWfdbKWK_i|w-)F>Jp^gqCT0cm*SdN-Fr8DG`u?Qa0d;4 z6}?*}o+(_IK<+cej7209LpE2Gcj1dg1-e=r?HhhfcjMSypQZgrDivvBLg+M@G?uD~ z#um2}!KKm1>%xI9Df!o4CA$r`hufsFXBzrewv?AEi#e`^BF^Q#bZ@0M^rs)ovDvB=5{`YC=wQsca$VEcZlj5_c!Y|Eik-F&VZbaPbeR(R5 zps5_P+8+1budS`-&AN3EUyXXD3mNhe{@5w9S;Odj6|i3CHVbp}$3$Bd2M(Uon)+0o z%X%cUqCUdK03m|o2)YP>Zf#r!bw4=g>g=+gCy04f*^+L?y@yEdiY}L3dy4M*e?7${ z+c%Ipd2mh1_Y%Qcr!xObs)mRDjZ~e+{5z>42ZFXo54)%*Zpc0V&T!xJMTXsM9$2?8 zHTXkA1KNeTj91-YD*%3lFtvclzxjz-^Z$*XSiKW7hq(i)xr$=c-S=rW7Xmu1OBywy zz)jr3#>T#{SM|FJY3H>N#F~g5{#`1)0o9=KI zDaQ-mv+9-Qm)rVvD}ZH8Ovq@{ppN=HW&CCLA5E(h6+|!xsW9?^!8<>8>K&eAU_1xV+7np;(ZnzWHI%OgC~j0a3$$^AOvzzF@R) zai=F>QOf+dhc+aby``=MI55HrtaFYkjlA#vNq-!|AVQ0)uRnc9EF1!+d05TiNHq`qbARxM# zlt47Q_o^|!;r|XyBSGm)gC8Ak;X+ba&Vba`=#?flztcq9uv%wj(~9{~_KMUzD_2!l z8c8m1bMtXFICK=~Zuh@}sKTr~gq67m6u0UVa_Ah@u(1b z71AV>tjK$XncjcB9N_P}u{g60XxP=7;d5;=&x{(mbMud8rasIYN<>_yJ zzjvJA**;01u$hr2l_-Pd1bSYKVc>p#eDFO_$Z(I9%N_y|V9yno{*`u(Tdi4aC+$Mw z2^m1)F93#8xjDDyd^{<3MU4kip{NXlOPt2JOyu7h!UE@z7!LdIc@X3=IAXiVRs+8P zl>MNc$A`E0+-XoeDg)<<6X=0oh5@lvuTdJNx_#Y$%(NRUX#>Oox0ATT+&2JcvD^l0 z#1014&-40H#gJ84M>ixPLm}tI>gTJn5)|-)-Z-A-qZzOAXZIw90IFJuA0DKtJQfgm zQG#epe~qj%)4A>>=j%HK+&vI&Edg(0bA3n-nWP8jq+3K1T40{yG9K4_zWh@EAIQ~_ zbAzo2+$S90qh3d=u*I6<_1l#oa|H(*TPaPv@p<0QDzQh8YTWFz*2~b+ZNO^UPaP(J zUmu9Xk=T!jNnPNa#hC3|ZSne}gA%*^FzPcGZAECbQlOH%FQ-{Bw)aLtz<}7rhl8}M zz-_53NZr#^7+ii~?Tou=o*r3s)oDJ<&9FyeSZ2F7N=|VjUH@(byFwqmy}KwmJHw9X>Trq;3C8VH*9*oMsfE1M2XvAzfs-wJ^zr=%NU*Da= z|A;Q)Zz@nVJsMRGXZ(Jf;0s5jORS18mBM>jKK_yr+;n*Uw#K&F6Q>u8!MIWY!_ckk6}mXLt7oq}Q(yi7^LvL@ z^fIfHK+~l?prm0JUZDGf8?ySq$-QAQOysG=tHrv_X}8%F-+G91`SonQM|Jw{|CG3_ zK8yOnFDU4`VsJ&8z~EOr{8hyfcr?JnDPEs0b^}}lq;bu9Z8h3jQu}Sb0B*(nME+xyp` z?)z@tLERgJqb{eLFQyN~9Wg`Yt+^EBLKm8 zyY-(5My(*RB!X>fVudMTDnlw@;L&18jmjYS2|`y|9@`m%6S{XG)USMEV-_EUEnXwQ zzXaU=O>egII+&}{!WD0}ei20A!UVx!%s4U>`A&NN<%HfbH>9#X(^tk?@IEbMf+$;s zR~X^a+0g<0u1M0^*(ob4D{TsRDbU5LZO`Uf-kX@1fL>zQpQ67It;V?RHr|5MZM z&bLNVud-~vZ*VBQ7cC2p9pyx24q`r_8z~JnwT1$Fc8+q&DbU9UlZ8jU#GF@$z|A|~ zofL?W(t}KY)+`WKo-Q+8om<+xAQTDcaNCgZ{)aMsL|qsbf{?)#nQ6|5zyxwlxGQHB zmrHOG9xpjt4*CJRCxr}WcJz83|7)c*J~Q~$-ejfjvsy5sz83qkjI!iy6THqc$?ylW z=p$xSoq3uCnH(Y*vH`fyFxsY8znAVkAVyB|8{Z;me{khp@#L$LJ~T8I^Wqn2pkV{q z{RC582tf}Xad0F%i~VUgYnu0nJZlQ^xJeDEvj~_!?azdmIi2e9lH}FK>j5(y=5H*VK)cFg&KyLj&rY?y7~M|DZHsB3_&-mu4n5Ix!bBA3SCw@HfQ`#A{WsRRC-b0?kk=6gCz1_)CK9PID;k@T)S zA=?Aec}u_0`CC9ai1HFG_5h_qxH zC?$mK*Bp`m`ylIjU`OR@G|1go?Qr525#7f~GRSHTF{kD}XuViE+7Iy?sK4TL3-HII zLEGo!;W!NH0?p|jPm|G&XU7>%swY{L^xO06))$`7e5V_iwqHA){oGttT z_VdhK_P15K0nK0_2CvAd0dfeU??S6USk z_k>b`Wo0^FN&s5iN7)Rmvh~HnCFyO55SrlFK(mgdu1bp6(otMv70s0Yp1@#1#`&~9 z_w$rT7Hf*sn7=<+hiy1ULZ&PA8LhOJLKH40ci`(&gZG1KbQGB%pWB{Kh6+~LS1&C+ zMHxKreLyNLaxvV%RB)fTl`&B^nf+z5WzEk@TjiQPaHRZa5ABLaQegMwM~0U8qh3{I zg(Dd#GBrl*&K>DXD$iU|27Etny!!H)@pj=xgm(-x)E&AP$baj{uJ&+itTVK(e2^Z8 zR6pNVsLhIQEknH`AbwJvphaRY>|sB`=-c91Y+y%bjm9{~2U&seN25L);lvoXbX1E@ z#M;Mm8gI#GzGWgv&EXA+aVzl7Q?5Pivis>Tsq|+IYQ)6nqH-(_ue61#Z!!6fiVnyf zt#UyfN>#k!{)cw!IQIs<7{kY#x!%~i$myRX>;8Q0h$V5FSK;Y{8E!%2m}5KA0bjZZ z_HU0_uPHL)GHh^f^T!dz#&5sAZJ?{-@04c(h!Y&@Rnk4(-KAY^P2f#{c1o4DxJ|`I z2aP1=bv_@fRGoGD4Za5Eo`A(Gxz#nXvTE=~GGl*|C9(4y^rhz0wp|_EwHnj^K8-#? zt%ynPe38FZ`A9uEmME>du;GgZ7`CRZAI%TF2CM+tL2Yg;fvpd5g;MTxsDey z^lH*N{!Tc=GnSM%eEO`xbz^b^S$$h^|LDlbZQ8{N)o1B83Q3o{-ekN~$r0qsD#qRi zzMqRhc61=se;d%Bx_u)(;Ci(cnj~ain{R9!oUwHm9*W5-Tb=Q&aPc*18GLeT>J$mz z%P}pZ>5Or7$=iRnSIyCOqUv-pkf0a%&p?^Qx|Ih*Xc&sZkZ}tCR4G`clXc=AS)kuG3;X|N0-X z%nS>%P&JN6%72rATr2S)k3+Waq?=Rs5?NP*xY@PVfr^ubHkiELVt(+n-4mI>e_sz1 zvX9Zq=$Gnp|6fBrQ+NJIr614EAkMYrEG(wW3i!1Pzj9}J1)ST$CXqDmu9I)OYj%sD zmn*L}&uf)*^^hVF3J~g}Je6*}*~worOUpIogTUZLmvLFcxz(N5tjbX124(i^ta^Bk){-;_}^si1d<{^`0G#ANt97wdrDq-7}JK7o72R zm(Dz$*oSIGNQTVsjz3KM#YA;zlN|0*gSE++Yy6Mz->?IHqrr6!` z91II;+EH)U z*Q^G4yk&oQwV;fTf6}@}>vNfraj!aO%%=%8tN1|ud}7e&(9QSA4M+BDYDHWY7~fpc z+8xsCDWM=aJCCE?<&%c2Qp_g-Y93&KAjZE6aA**UHPhgTiBf)?*S~SY@7*KsV~5pC zGYRF%s_Q=B$^v&GyTk)T1_;>vN7D1(L$r1}sb5S}CzgVZK}4A#DBwe9ESc9% zK`V3WG;@V=r{THP4#Iv?X2xTWKxgcj0recq93E?S0)uDFJHp^T^K(LmTBE4~3yxE3`waT-GUd@1SJ`;31itS1RhF_!eEJ1Mn6iojeX0GN4DvYgRs$?Q zs?dx1+Wa|wxqT6_H+-|w6EmsC_uCjVX~lQ)t4IIPK6|R~?bU%oVhOWWxmIXMZ$XH zDfb+Qb$nOOWCoMNmJ`2-S1YPrBlTrd`H(4`r|CHJ>arD!hbVysqz|Q2H+LBc%TK;u zJ?G!2Nc<=h7f7pf?LHqvZAod1SnZizjJTfNM2KN$0Y9)z!)_A`U)AR0ubj&|< z0rJO6eXo43E-Z6XSooybWhv#dKh1_UG1>AvUnY2oU_Z@LRB}^nn<290mEuv1Ku8PX zXhEZ<-MMtSE+2>HJaNo&)|~t(c(|a|{9rwNtFPoqM0d8rUA?iG0^u{NHT8=7y=6HM z3)wU(Y*}!Fm8)Ng$xp_9E|*2}T7J<%W|7-Ik7TFlSc_1Ho4u+zl#DcJ{M4{pfs|?s zX7GGPXvMOt9lLChOIFxfW=wlyLy@>7sk<$6)K*(1vWodv*2rNZnU&yvAd{$d!e`u^ zIdchq{^aj*rg3PdNve|{r?wT|zbT5-+)!;oxgGk)(N=t5>1f<;#hOVPYP?Ts=>AHd z%d+`pq_=Q_3jK-MQx_{9Hl64(EGFgxlnHvOxX|7fLxNKUf!@85i_zJ6fWemI8 zT{zVn^|qqApJztja_5leAB79|u)kKhubCTHIjX?zoMPNI6m7(j)oAr#p6xQwa`b!H=l729%q6_IjBJpt zgO>E9rZBUgLD-uO9`e>Jy;BXYn{M-GFYfoAPVa!H+T$u~_1IP}qmR|RJoM)-9}Z;{ zR3FDXB2Ks0>-R2_#xviEHwnZ{LFgA)e0z8IpI%!y2<|$;4{!FmCu|t28kE{PnDDiv zp1cVQvz9L&z5J;EVW3^pw#`WUqK%}IO?29#=SyR!w1{2)k)!b$kyLIf;S4G-8ZL6{ ze#iPbwu$s07HhNN1JAdM_5Bz>?XLzB8826=h4KF0U;Wnf=0b_#px7 z{OhP9w4$Q&N7fvkI_CM*J!h--VX;TP%(96;Cvf^leXLUT3$%ktd1k)8dLQV$>6E5; zJhj5qKE%YW(x+I-adDAi2eq=nO-LX$*dAR;g}vT37IL)Gq-THits|6yfm8GR z*Z2<8AZ!M7VQwzIxczJY$Oy5%+)IeexlQ_}ssQ`y^%c+N)D;%M^E^`D%OAl`)&}P1 z-u=yKz_%$CZ$D}}YD@!YP7&tX%^bHh!4de0WGO>8#`i+YmfV$_$k%?SM|ub!+(rkAD&!%VFu}XhzXqY14Q> zFHh2zzoFqrScdxU=2`rtNqlAKi5Um7Mh`I~R4TqmTihjAqTEM4RTe=smPb=u5s;~h zhcPAzcDLd7*15bnA508fcl`o7@7BhW@F-8v3}ajB?-VwGq8gqRH;ESeJ@4^NG+GrR zQjxgWpG%Vp?`PJzIYiw>q(+0Rx}Fp83FZ;h81%g;;j+T3Q_iAHechkP93jAa+Kc=g zw2F_SE#c0pD0f)tS2P{t*|k=||HPgtYNL00)_cq^1pF^!WT&B&uhnf9&}{d+KBvlq z1<-P7ux9`H9v>wQ&A503Gf2?gq{kVi9}bXWA_vBBmEOQn#ZM0T4@-7mWP?#)0V6T3 zk;Gdjj0_=H;cvs)Dyn{|jVk(bC;ZAzCNhAGc{bzRyh5P1Jl84}DoE4DmJk6><8lsn z3HMU+^3Z{ z(}h!_tl6wd`|+V8$H;5r6-x6lE`#~<>_t(iwbX<(X^pE-<>1&u(TB<*>jIB6UQh<< zRKyGB4s%Sy?P|QAZ>TctejJlHKbMjknHos_>fso}8ozZP%02vicFMBJdSID1?^|#gW0>VX%bW6 z&W9r0NUYEpD{j6L@f%Kp28KcgdbTB-dHPNlMfR*!P2c2I#cERL@4$li zyv~rzRmdgq8Pf{?93pXHxma2gdL!YF$zgkIO~|E4C@qBmaVW$y)T@kNf`zQ|$a6mb z)=5J`+xfX~7R`b5vv&txObNFPjIcD3TgkbUJvv$I?Nfa}?~tjX&J*_6^0@A~&=oz+ z2`t`@t?nwS?g5`-gWbWa`__mab(Qv+ly4@wpT@R#nwK|Mf^$<`bsgNdXI8KqiEx_D z`lny~!?28?$bFdookqLY!v~~MW*RpqzY7U4v2EJe`$x6Q52&+7ukF_O#}H{orm(%3 z@wH!lWji)dY@0eyRZ-1Q*?i=W$FPm~9W!SQhvySkcsD0Iv9n0ki!ZGFt?%~#vXnwm3BCGw%jjY1 z_@UCQ$6n<4KxM7R#?)nPKDEJGAOG@bS}beoCo!+3q}gcB67bfAFmEUrgMx-;22|5D z!Oj3n1)1F2sy(Y>cM5Paro10NLI!g2jDF=M@8IxB{HdyMZtL$@NtB^$Ni*3oBgu<_!a<#^Hth)X-yk19tspDUj9Hb)E1M*E(S>Xhe<;yewy zbw-qB@7*FU?K>CZHcjSsS33l8Lf!$-q3A9l#jfPieP5;2=GixTAb}Gj5Ugn2htsP! zdCM-=6d9;2rY&w4B{##g_eNPeNT88zlEt&%`u|`{wx`S?c=NS`%)_@DgV=Ixw8(eC zZ~PjrR7h+lEAn2IN;K|w9o@7v?v2R|zq_gcbg-dsf03ApXV584FYG41hhlx`!GK^l zH5X*aIM?VT*-ae_L@FkyOL`?7>!>vTplBP2?$8-GD654Tez^zf)Tw>0Sw!$_KyqGM z`jiNW0qMXq0D_Yka0dQOcKR3X?H>|f!XLq`>;JL~EX582Ap&)9*4#35`mL30h=kza1<^R76kUjrzck%zTGX`VW zohlz>qMgstvu_4M)XF#w#CCaO7${zzK&-CYdbsf>@E)rudb=aghwXoU%~*V!-B4l~ zcNpPU<-W6Eo0O*6T?phZ4G)MkYGYV|-9C4-3}F+|Pw9w6<&OG`v@(7w81m_{Mjjzb6Mp=?9dvCDigwdiW$FE{4`+r)y%BZN`Z;c&vNR5be2`Du*NDna} zDJ`8tcZ~`RNQksBFh~t0Au)h}BOoZ!(%mH~J=ENTzZ?Ji;jX*xTKCJu$@e{HzxC{A zKb!o)E9jcv3$B9_pLh`>d$f566aCeu54Zo6NIm%!{^YWF3V(~2+bIa)Tu7~bWo8g| zJcN3G`@_b6Je5SQt4(FV8KO_fW#j+3*Mxw~?&J!POEsUK7v@h8t`~NkJm93p41gk> zZ<(*B?0!*26AW=MgQo%li`{>v+|sfJ9=3lYhE*FVk=)-BtpnhDx<#5XFgyPO*hFoR z=~daa1*6*gydF8X&Qy)(`FDfSbA93tD zLOXFCa)FtL1bqJC&E%mG!NeuR)H~@^Qu8BFW<3dcVI=8NcWlxzr>%?IWZo4o{mHE{ zH)Uwuh@CwVlacY)#{q>>VfGI>P0^z}K?=oECK8rzUY<4Mud+>RI|iO0KFM(i5XCb? zu2tKd?I`bGiF%m+_M75+Rtb-mmLhE>IWIRqFAurMo4?djx!OC{a%K@j^p;^vJ+{)t zB>JEel*)sR*WZT`1ToQkGn3Bis?4pwFaGOU6Xsgl@wY&`M&QVBPL=foP`Z)y1&xUZWOD z>VCoi0xJD_ahf~*H!mx5XyB2+n3cxQ1{Kbcu?Ctzt?*|oze`T@T*pL8P#JOeFf`xd z+WfM(mrJzDbuWD(!N`dtkkXw!GuO8vVXIxh{%|tl_lAHe0WkZY%6tQ_&umg*(MB&V z)Bn}I6bk}VJO~7ew)0=0dYt;FYobOsUbZkRTzmRY54uhn4|tEf{+imwy{M;`=y7Ls zRPYge$psd4{pACo*%GL64Xud~$UZwRngbXJ;u91EoL8gOd@qOQHeh7`PbZt%%wMww z)FlWwGycUX1>pIgCh^G)ZKqOg|3LAaIcoe()m{@ybQ3X$t2MCPm_6fm5tc~dQJc4C zD9atvuPf#$S~WIObV9j@JrF{*8V^f3hF&z5R#fdrRwN)b1o?{7wTtXTR!e z+*XO!ASck$4qlE6HFv0&?zRDp+{hSS(UM|7@@7m#;L&ePX;F%6*B#?dbmXF(u>%wo z<8Q7a@T^=NS-YZ32w188Jslt_HPFbnOYw>#Oq7GP2?51e0LS+q zx^|fE1z%5s{;uks_7}pB_5@M}5tD#ZX%>1I>7Nme_%b`(IqC;{9RoTlB#nc$ed=*p%zZ4Z7M3W&Pw6=^dipX%8C3SOudew>tW>zQTCVC{qaLx{;||W% zr~U6h0oyB5{?20A#S}{07+CFiIAv`TJ!<|%+_eNJx6B+7?Qh9{up07A>}5fT0*r(n zWMen8%QHwYtSYC%lf}z6g$1H&H*Z*|TfmG<}GV0tRsHQs~4&qGbE#(wd9lQ^ARO9AZl!}Bft&ncjb|NYk+r66;$VJEZR z1mr#id_(uh^9PTx_;VkTONTPUoT-Q7=cBP2lTU4>buMi+CY=-|rZ7OLQ+6dypl#%0 zr>0*}iGvh6-0nEwqk%j?8p50|J+k6GNnB7VAw9jM;6BXv4Xy}ubtwRK0F6}#?e}XI zGBA@dE%Qsp$Nr+SM*+yR*u4|z zG9H%N3bxq`P@U1z8xbo`%=YT;MmlBk$L2 zeXkB$9XD7YeNUs{bypTWYsZU^xs@6@5IXdh?`d1UeZRQ8gC%B7WCqBC^YY!zV1PEd z3C7}LnewAipI}TdQp<@&p#$9`ua)$0;F9m#Y=Ho1z@0=s_Sw5+L3G(j&fq%xU^8WI z^UYex?x90+NB-wTrrK!(aTl!E_X#?H_U1!Q5gj1;-mNAu9w&oe`TijAQQ7;so;P(9 z{6u0ptHDB7x>FLAoObxg)U_+q9MaZf%-m@kJ)T&EkLS~80x7d(Z{FFmUjsc3vaicj zWL}H*pJY7%v6BZ-ex75|eYjON7glA3(%)?eBH~pSm||rEVVWD?0;lmucT>sirS(Ss zaJok0BDOieSpR3cw+st}0iTYKjE_`H#!~=2v=9}N>jW|<20vfKpZzw~fVO9(c^lU1 zPuOM?rU1g7oRv4R2`tPF_&@S6dmzsQL6p)!K^>4(r0&;Bh9?vid+CjR6(-mQ$bo8R ziq`;?FC#Ax509g*Db{G54fwwrRSij`ox3_s_*>%0Qm^l3QO(CT8 z@-ps1Uvk?Figcl(b74UIjrsX+gKl*J?8+_>ZD2I5CI1GMZIXk=#Nr=sWjOM^fQ>ys z4q_Z?8gF{(zZw2uW60*n+vm=8LZ$QO)L|XtfWAV^=s5DHK2b<>dcmJ}s#LW1g)>Ag z2kA8VPNb{GN6!6POwDh?mMT8{Z!-=arijshRWGZYTkjJQ^ixqLX*4L zE7!&ry${8zw5X!hwvD_$IEXT98rO>%JO)1$Qg#m}C5~WqHVdR;QjT$a-wR1kPM8@a zw#m_nb5bw<8N6IC$R9TQuC7VA!*auqQTsm3GCmuzXtmVji?sSERQte_0*1=AK%D2# zHG=OO1XA7gN;|ZPN@KC|I*L|f%RR`;^m5N57GHibHKsM~=2txx3xZajee`n=M5`}|-`FLBhHIK$9W|0!cyGNs-n@|o=k;11) zUiokX;uiZGvaMUObyoY@+lvnJSlZK_aV)3qqDiuapP`)R({Wp~shf}!nemj3b}o-} z+GHnedc8akc8&enyD!yY$ZD^(k?VaAxI)-Cm|9=C7ON(V^o^NHZL4Gk)!VGL3O2f; zw0};}$_=#>^OM6mCo-(qwplu~JPY(S)J|0QCh`Ux{Q_8Vb>ngA^>=d`1Ie0>Gt#WU1&z?Zb$3HU|I^DtO8^8v+ zvUlXQ>~I5%OE7RLteDF}fcs@Y)GnigbvEy3j$Fps#t^nbCWA#ORkXeLY~Kg82y}c` z6)wX|U-~!Yh#Kas%R{*8JnbYZ`#(jlS$Z*tg4C69zb2vg_NI7>cYf=j1lmRh(gsqh0}0 zOMplJ<0`=PBFI!gM^0Dnmhvn}k7IV$L`3qg4}XL=4ge#b7i}7IKvy*s4D|ZD4|SZ= zGD2?EnUI1zKg_Wh8cUv9M@8DVCZA9 zvF=cLZKrmen`au6&G8xIjH{KpoNEF;GEDbL)r8p<{J?6KI}5eBeZCVoM#}<*n+4vC z7u>HUwsEe}dg6ACrdq-e^>BIz>7Xd;$SwZOY!tlx-b<7oTKx$hm68lh&mZ=Q zuP=d(rQMFg9xhT&*8AAr6;0c zz?v4mTKW6f*ZFSod*Ezu)wU@RD}E4PBKg@uTF9oBbRi{g>L z_dm@!%RY7*JoH!QNX?7!DG=$3u0Mx-V-Thbpj%*9)xP~9o3D#%;HI?vUC#Dx(pI`0 z1Z6CHbO&fs)8#jzZecrvlP_6p|PhZN0D`+&}*H{r@i97 zq=Te>&7>pAlzIo@q6aDIEHe>`+!8Iqlr4Vu<0ap$NTN1liLZe;*kNvW-_&w5Jr=@N zo9c{xNl8!3;jmCvyd_-4Iw3aYMe-frsk1tqqPx_fRJ?V#*mOMJ(yjL1&w*dT<+(ue zVxa!+x`4cujRW<|X)UyL+p3KcF%T4@XU6<=MoW5&1(qi=gSB+AdysCP;IN*W>&b95 zgsiy2d#u_i#u6itAwhydzU?Gb3tqCc&qt1Uc-`ZeVayHBjfIGQo?}+ThW8hDy<+Y_ zp{z9_l^jZxllD5fQ?>rS%~v_g0gJF~Br%m>)x*`friR5n8Kg827X0T@tU*|{#$iXYml-oRQLn0DoSaSh(f5}yKkI0CA8@13s~m%L5_ z0>y9ttf<$G8vU@SD93LQ*g6|t%#HT(A=-dmV8xWt$*%cG=dH(#R zDN`Ny6@q+p2NhvkIS;vi0IfUY~Gd;4A78Bzw!ZK9?*`k9nA2y3;GBSzm6qU>22^e-t1^LWo zCRHH5Y3a!^|$taTAwMV4V*n+@iY8&}9 zm^9^mLe@1XVX}h-smU#gJ)+>KZBe*c>y1&5WyNPZdb4^ICN9lK{^d4+X93VK8cS~P zmmFN8-grT1^Dg@+#DBBEolX8)w}wC#>TQW&tHXNORMhltjL#dzh{l6WngCZb-1**g z)-Kl2eQ5cjrx_-@Bq{*>CModaU77GlK?7wdO6kP;HCKz1 zgfB2>6j*8W4cKn_#GNb+kHkCJs}zRdSzP5Vvic#k#jzl^VwfL92a%0LaGU#5w#Jp;Y^CuQX#TPk}l`!b^GGLGsZaC>031gK>lMr2bN0Xb%Cx@sn} z&_qi8xS9#5<;IsH3M@hBJaweSClzZSxvCdtR7L2aKYC=f`$R}BryB-r1Rn-ZxZ?#C zprzFG+9mo0`$rK0Yk&}`xqzsu{cO@jNV%JuYCG{8jDm3im<7VEF44Ebt2v^@oc{t7 zp9nzkC;(0(g4v5&a!=dYju3MiLjNfs|%B zE->f`h4jB6>T=HPBJsQ7C+DkYYm@T~bEm6^WfA&=na##tnTxgM&iG^R#V9yS)=e5y_ zi#x~7)ZkCI)R7_cI+`%+Dxv)5+>3evsJmEK$CQ<4q#Q9Ely$`H?k7X=oS zkBvC_7@T`;qCctv3_eJ?j)I&CGMSF1)|>e6X;Wi%0&VPW?Yx3eL!W;(Ik}CLG-Daz z8>i7U=Ho@fN#g)0Q&zV-BXu!)R1SQ5f9B0!X&vaz;ANIMYtGGdQRCvR{|!Hyt{~{_F$W|uE2|LGv>RSPUMm7E1u^Nr zNpbR({yG<%zL=Ib4FV`90M$gUYF&m5n3)$`9vS5Vz&#REVSKfgZBYPi20c*P_wX{N zAePrSK(PS%lH~Fq5VyeF$a=g2D0t6|jMy2bXsdGR73p5AWnFMR{|X-rwEqTjscWu$ zwB4lr(|ZbkF@taLQFsXqfiHJ)`vm~g)vN_L%f|2^;2Z&RIX)S|y3nozzsTZsG^MWM2dvY}%Qd-d zRH!czf=ha{XSeW*SDf*JrA!UL^Pi##I?T-qo`W~-tmejvs0%%#wz7)&&cU9X zaKRNkfY!(ymub`T+Xk9G3e3(?av7=;+%v|JDI|Ezb?KwD*)@P47?iC?{TLk`t;L?h z;K0BXhj;%ySfpA6Ncy;rRk8^U6N4xFW@g}><}_y3Z8v+>tde&Vjf^>x=bwJ-~~Tbvl{-w%&aC#IBbL)+1jZoIis1Nqq0K9LKM;U_WEtg|<5(H3C3!n^j$cb!R z;&r9Ff4>@b`kD}6@kcT50vy(j(`z&MWzdXn&a}ir)3(god6@?|#@Wwhu|5^MGt{}# z5g~Incd$Of;f#Q9T21gd?xSga|11GM5akGar^t}J(y@}qy0GT**^G>j(nk|Cs9Ljt z&dR-ujV>7(L+CV5Abj^k)9iGuOeSPAXK&gAy5r9?t3z_0vZg=PG+;plb$z3pz-U~iAqq( zgCxq(@F7C}b6kY9(9%ZL(vHPgjaqD6Z^%(Ys^orO;=oOk4AH$o9q6Ul&82}XeGq~A zPW^N>!^4jl()~~NgGo&STe{X#)_>0S#b3pO0vwNbIyep(flMXc8PYl=$1L2!@QX9X z2glhwTY+|sBWjc!?CgL5%h3Q}@xA!7#Pi-wI{1a}t&sh1fzx}aObOp~B>B&j*TJs+ zG2DZ(sd?&N6b=r`U<2B8!g9!sUP5^#C8dZ6(&q-F#W_BO3=0C%==OG-Aocc}Xp*xT zLTtkL4DO)|DF5X&naty&$VPnLQJ~Dny{YYx zBY^yW4#qFfG;RlP2jZ^Dzz=XU3;}cDo-+*<<>fZ@PZL}kZ9j8VWnSrhhp)lw2Hw0y z8cPhFsXFRv;xD9Wy#A*`T$0^tLEs`Iz~yud%K*QqF!$T<8~uusvLhibqA}m6P!N{p zTUZbfL1SEH>`q58wCIjvI7XD;JmPO%A;=^kwnQSQCU!Ik)Xup$ovCeA{9R;(G| z_TbO88H<3@PAs~JH%nWXw0|F}OJyf1%HDKraB83wWPcs5Nh`JJGH#va_Btl6 zhxsqTzw1{v0)kJzg+)Fx4!H5RA2}GUvV#Y=HYiv-W;LwB0vDpV@&Qe3&*ldHyDU?WUkTDBuItCccHdFN zA>wC)czXES(P6a%N62a@_Tr%2JYbD&Pa!n*4`hCyM{mUvgHnN6z4jJywkz8EktT@7 zdd@P?Y)HVhZo*4Lnhasn**-*_6%=gDsl@y!;k`ktaLxD9J3YQcS$Mv&CSw34{SC%G zZe*3b|6s@6Zt3%4K%nA%#2X@jG#h^;Z}ZW64E5z!aNk!_ZK@^%I=mk@R)gqhg+@s5&U%Z_69+6hm6uC3Q@V#7o&L-% zskOEJcRU{HQ0*%nKsWn77x(5P8eX6hHn9zYW#Narx?&#Q1_Xuy zS#{stnwpyAaQ5`~k7!Mr z;XCrznI}`XcsG?MR}jg;xMOx*b9qWOyw4{Ml7hu9PGCax z;dz%dCE8FI?XxqhLX)Rpz7*l}^t?#2^vuj9Q9fECgd7uU1(_U`!%FeSPx1>;BxphW zG_r~^!BR$0Rb8P;EsEAEg;F=_r+2+&vFN)g?&oysM@QV7cFB+1KN>y^d!T2HHc^7E zysUZlNT;~v_vJeJ1uJ(x(J%^r*q|nX9Vby_$)kYTJ)%aUP|$qs4(neld-W!Kst(y& zqmz?KtX!#`-e(CpbF^&ihh+KHW;$eY)ZdIEiJA1qcrtZ^3WX?`}6%#bcea;@##yV0o(ZM~*ytud|wprJ8a#UC# Date: Mon, 14 Jan 2019 15:10:36 +0100 Subject: [PATCH 04/94] :memo: [packaging_apps] update URL to nexcloud instead of owncloud --- packaging_apps.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging_apps.md b/packaging_apps.md index a3bb6d21..c667d4a5 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -43,7 +43,7 @@ The scripts have to be placed in the `hooks` repository at the root of the YunoH **Note**: `priority` is optional, default is `50`. -Take a look at the [ownCloud package](https://github.com/Kloadut/owncloud_ynh) for a working example. +Take a look at the [Nextcloud package](https://github.com/YunoHost-Apps/nextcloud_ynh/) for a working example. ### Helpers Helpers From e3960079729d6fdd255fd449279a8542017ec631 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Tue, 22 Jan 2019 17:48:37 +0100 Subject: [PATCH 05/94] Improve chatroom references --- contribute.md | 4 +--- contribute_fr.md | 4 +--- contributordoc.md | 1 + contributordoc_fr.md | 1 + 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/contribute.md b/contribute.md index bfedea13..fd10e976 100644 --- a/contribute.md +++ b/contribute.md @@ -83,13 +83,11 @@ Improve this documentation by [writing new pages](/write_documentation) or trans
Extend YunoHost capabilities by [packaging new services and web applications](/packaging_apps). Have a look of [what has been done yet](/apps)! -
-A mailing-list is available.
---
-

In any case, please [come to dev chatroom](xmpp:dev@conference.yunohost.org?join) to contribute :-)

+

In any case, please come chat with us on [the dev chatroom](/chat_rooms) :-)

diff --git a/contribute_fr.md b/contribute_fr.md index 4bffa7b4..279b1efb 100644 --- a/contribute_fr.md +++ b/contribute_fr.md @@ -79,8 +79,6 @@ Améliorez cette documentation en [proposant de nouvelles pages](/write_document
Étendez les capacités de YunoHost en [packageant de nouveaux services et applications web](/packaging_apps_fr). Jetez un œil à [ce qui a déjà été fait](/apps_fr) ! -
-Un [salon de développement](xmpp:dev@conference.yunohost.org?join) et une mailing-list est également disponible.
@@ -88,5 +86,5 @@ Un [salon de développement](xmpp:dev@conference.yunohost.org?join) et une
-

Dans tous les cas, venez sur le [salon de développement](xmpp:dev@conference.yunohost.org?join) pour contribuer :-)

+

Dans tous les cas, venez discuter avec nous sur [le salon de développement](/chat_rooms_fr) :-)

diff --git a/contributordoc.md b/contributordoc.md index bfc350cf..9aeebe9e 100644 --- a/contributordoc.md +++ b/contributordoc.md @@ -2,6 +2,7 @@ * [General ways of contributing to YunoHost](/contribute) * [Writing documentation](/write_documentation) +* [Chat rooms](/chat_rooms) * Application packaging * [Apps wishlist](/apps_wishlist) * [General introduction to app packaging](/packaging_apps_start) diff --git a/contributordoc_fr.md b/contributordoc_fr.md index 710d93d1..7167b191 100644 --- a/contributordoc_fr.md +++ b/contributordoc_fr.md @@ -2,6 +2,7 @@ * [Liste des façons de contribuer à YunoHost](/contribute_fr) * [Écrire de la documentation](/write_documentation_fr) +* [Salons de discussion](/chat_rooms_fr) * Packaging d'application * [Liste d'apps souhaitées par la communauté](/apps_wishlist_fr) * [Introduction générale au packaging d'apps](/packaging_apps_start_fr) From ca13dfe0e760005049187ed2f3446dc21063a9e0 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Wed, 23 Jan 2019 09:04:55 +0100 Subject: [PATCH 06/94] Ajout chatroom doc --- chat_rooms.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/chat_rooms.md b/chat_rooms.md index d77f62e9..f4844f5c 100644 --- a/chat_rooms.md +++ b/chat_rooms.md @@ -32,3 +32,11 @@ It also allow to discuss packaging evolution, continuous integration tools : - IRC: **#yunohost-apps** on irc.freenode.net - Matrix: **#freenode_#yunohost-apps:matrix.org** - XMPP: **[apps@conference.yunohost.org](xmpp:apps@conference.yunohost.org?join)** + +#### Documentation chatroom +Yunohost project documentation chat room. It allow people to discuss, synchronize and maintain +an up-to-date documentation on the differents aspects of the project (backend, frontend, apps, project, community...). +You may also share here your public communications about Yunohost (videos, presentations, etc.), to allow proper referencing. +- IRC: **#yunohost-doc** on irc.freenode.net +- Matrix: **#freenode_#yunohost-doc:matrix.org** +- XMPP: **[doc@conference.yunohost.org](xmpp:doc@conference.yunohost.org?join)** From 36595a77713de9c46f34aec3c2c8b2dbe739426b Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Wed, 23 Jan 2019 09:07:28 +0100 Subject: [PATCH 07/94] Ajout salon doc --- chat_rooms_fr.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/chat_rooms_fr.md b/chat_rooms_fr.md index 23278e99..07426e23 100644 --- a/chat_rooms_fr.md +++ b/chat_rooms_fr.md @@ -29,3 +29,10 @@ Il sert également à discuter de l’évolution du packaging, des outils d’in - IRC : **#yunohost-apps** sur irc.freenode.net - Matrix : **#freenode_#yunohost-apps:matrix.org** - XMPP : **[apps@conference.yunohost.org](xmpp:apps@conference.yunohost.org?join)** + +#### Documentation +Le salon de documentation du projet Yunohost. Il permet aux contributeurs d'échanger, pour syncrhoniser et maintenit une documentation à jour sur les différents aspects du projet : backend, frontend, apps, projet, communauté... +Vous pouvez aussi y partager vos communications au public à propos de Yunohost (présentations, vidéos...) pour permettre leur référencement dans la documentation. +- IRC: **#yunohost-doc** sur irc.freenode.net +- Matrix: **#freenode_#yunohost-doc:matrix.org** +- XMPP: **[doc@conference.yunohost.org](xmpp:doc@conference.yunohost.org?join)** From a425e06d061be3b43f9cd61836fdf5f7e4cfe30e Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 24 Jan 2019 01:31:45 +0100 Subject: [PATCH 08/94] Add french translation for filezilla page --- filezilla_fr.md | 86 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 filezilla_fr.md diff --git a/filezilla_fr.md b/filezilla_fr.md new file mode 100644 index 00000000..078d318a --- /dev/null +++ b/filezilla_fr.md @@ -0,0 +1,86 @@ +# Échanger des fichiers avec son serveur à l'aide d'une interface graphique + +Cette page explique comment échanger des fichiers (sauvegardes, musiques, +photos, films, ...) avec son serveur à l'aide d'un outil graphique. C'est donc +une méthode alternative au fait d'utiliser la commande `scp` qui peut être jugée +technique et cryptique, ou de devoir installer Nextcloud. + +[FileZilla](https://filezilla-project.org/) permet d'accomplir cela. Il s'agit +d'un logiciel libre disponible pour Windows, Linux et MacOS. + +## Télécharger et installer FileZilla + +Vous pouvez télécharger FileZilla depuis [cette page](https://filezilla-project.org/download.php?type=client). +Le site devrait détecter automatiquement la version nécessaire pour votre ordinateur. +Sinon, suivez les instructions pour [installer le client](https://wiki.filezilla-project.org/Client_Installation) + +Installez le programme et lancez *Filezilla*. + +## Configuration + +1. Cliquez sur l'icône *Gestionnaire de Sites* en haut à gauche de sorte à crééer une configuration utilisable ultérieurement. + + ![écran principal de Filezilla](images/filezilla_1.png) + +2. Cliquez sur **Nouveau site** et donnez un nom au serveur que vous allez utiliser. Par exemple "Famille". Remplissez les paramètres comme sur la capture d'écran (en remplaçant l'adresse du serveur par la votre). Une fois terminé, cliquez sur **Connexion**. + + ![écran du gestionnaire de site](images/filezilla_2.png) + +3. Vous recevrez un avertissement. *Vous pouvez l'ignorer si il s'agit de la première connexion*. + + ![avertissement au sujet de l'empreinte inconnue du serveur](images/filezilla_3.png) + +4. Filezilla vous demande maintenant le mot de passe `admin` pour vous connecter à votre serveur + + ![écran d'identification demandant le mot de passe](images/filezilla_4.png) + +5. Une fois cette configuration créée, elle sera réutilisable les fois suivanteS. + + ![la vue du "gestionnaire de site" avec le nouveau serveur ajouté](images/filezilla_5.png) + +
+ Vous pouvez désormais utiliser cette configuration pour vous connecter. +
+ +## Utilisation + +1. Connectez-vous au Site créé précédemment. *Il se peut que le mot de passe soit redemandé.* + + La partie gauche correspond à votre ordinateur. La partie droite correspond au serveur YunoHost distant. Vous pouvez naviguer dans les dossiers et faire des glisser-déposer entre les deux panneaux. + + ![la vue pendant la connexion à un serveur distant](images/filezilla_6.png) + +2. Dans le panneau de droite, vous pouvez aller dans `/home/yunohost.backup/archives/` pour trouver les archives de [sauvegardes](/backup_fr). + + ![le chemin où les sauvegardes sont situées sur Yunohost](images/filezilla_7.png) + +
+ Assurez-vous de télécharger à la fois le fichier `.tar.gz` et le fichier `.json` +
+ +![Copier les sauvegardes de Yunohost sur l'ordinateur local](images/filezilla_8.png) + +---- + +Sources + +* [Documentation officielle](https://wiki.filezilla-project.org/FileZilla_Client_Tutorial_(fr)) +* [Tutoriel général à Filezilla](https://www.rc.fas.harvard.edu/resources/documentation/sftp-file-transfer/) + +## Alternatives à Filezilla + +### Sous Linux + +Depuis n'importe quel Linux récent, vous devriez pouvoir utiliser le gestionnaire de fichiers pour accéder à votre serveur. + +Nautilus de Gnome3 intègre de base des fonctionnalités similaires à FileZilla : +* +* + +### Sous Windows + +* [WinSCP](https://winscp.net/) est aussi un bon candidat pour Windows + +### Sous MacOS + +N'hésitez pas à compléter cette partie From a9de6516a77ca96cdfae078c1458bac989eb535b Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 24 Jan 2019 01:31:56 +0100 Subject: [PATCH 09/94] Misc improvements for english filezilla page --- filezilla.md | 87 ++++++++++++++++++++-------------------------------- 1 file changed, 34 insertions(+), 53 deletions(-) diff --git a/filezilla.md b/filezilla.md index a6f54fea..9328ffa9 100644 --- a/filezilla.md +++ b/filezilla.md @@ -1,78 +1,59 @@ -# Exchange files with your server graphically +# Exchange files with your server using a graphical interface -This page will explain how to exchange files with your server graphically so you don't necessary have to use [SCP cryptic commands](/backup) or Nextcloud. +This page explains how to exchange files (backup archives, music, pictures, +movies, ...) with your server using a graphic interface. This is an alternative +to using `scp` which can be deemed technical and cryptic, or using an app like +Nextcloud. -You could want to download your backups or send some music, pictures, movies, ... +[Filezila](https://filezilla-project.org/) can be used for this. It is a free +software and is available for Windows, Linux and macOS. -[`Filezila`](https://filezilla-project.org/) will be mainly used as it is a free software and is available for Windows, Linux and macOS. +## Download and install FileZilla -## Requirements +Get the client from the [download page](https://filezilla-project.org/download.php?type=client). It should automatically detect the version needed for your computer. Otherwise, follow the instructions to [install the client](https://wiki.filezilla-project.org/Client_Installation) -You will need to know the `IP` or `domain name` of your server for being able to connect to it. -See page [SSH](/ssh) if you don't know this information. +Install the program and run *Filezilla*. -## Filezilla +## Configuration -### Download and install +1. Click the *Site Manager* icon in the upper left to begin. -Get the client from the [download page](https://filezilla-project.org/download.php?type=client). It should autodetect the version needed for your computer. If it fails, follow the instructions to [install the client](https://wiki.filezilla-project.org/Client_Installation) + ![Main screen of Filezilla](images/filezilla_1.png) -Install the program and run `Filezila`. +2. Click **New Site** and give a name the server you will be using : *Familly* here. Fill the settings as on the screenshot (replace the server adress with your own), and click on **Connect**. -### Configuration + ![Site manager screen](images/filezilla_2.png) -1. Click the *Site Manager* icon in the upper left to begin setting up a connection bookmark for future use. +3. You will get a warning as you connect for the first time to the server. *You can ignore it safely the first time you get it.* - ![Main screen of Filezilla](images/filezilla_1.png) + ![warning about the unknown fingerprint of the server](images/filezilla_3.png) -2. Click **New Site** and give a name the server you will be using : *Familly* here. Fill the settings as on the screenshot except for your server which should be yours +4. Filezilla is now asking the `admin` password for connecting to your server. - Once finish, click on **Connect** + ![credential screen asking for the password](images/filezilla_4.png) - ![Site manager screen](images/filezilla_2.png) +5. Once bookmarked, your server will be backup up and you will get this screen. -3. You will get a warning as you connect for the first time to the server. *You can ignore it safely the first time you get it* - - ![warning about the unknown fingerprint of the server](images/filezilla_3.png) - -4. Filezilla is now asking the `admin` password for connecting to your server - - ![credential screen asking for the password](images/filezilla_4.png) - -5. Once bookmarked, your server will be backup up and you will get this screen - - ![View of the "site manager" with the newly server added](images/filezilla_5.png) + ![View of the "site manager" with the newly server added](images/filezilla_5.png)
You can now use your new bookmark to connect to the server
-### Usage +## Usage 1. Connect to the Site created previously. *Your passwork might be asked again* - On the left, you have your computer and on the right, the remote Yunohost server. You can navigate between folders as if you were on your computer and do drag and drops. + The left panel corresponds to your computer. The right panel corresponds to your remote Yunohost server. You can browse folders and drag-and-drop files between the two panels. - ![view while connected to a remote server](images/filezilla_6.png) + ![view while connected to a remote server](images/filezilla_6.png) -2. In the right panel, navigate to `/home/yunohost.backup/archives/` where the backups are stored. +2. In the right panel, you can browse to `/home/yunohost.backup/archives/` to find [backup archives](/backup). - ![path where backups are located on Yunohost](images/filezilla_7.png) - -#### Workaround to retrieve the backups - -
- Since Yunohost version 3.3 and the choice to connect as the `admin` user, there is a [limitation](https://github.com/YunoHost/issues/issues/1266) that prevents straight access to the backups folder `/home/yunohost.backup/archives/` -
- -Until the issue is solved, you will need to follow [a workaround](/backup_workaround) to manage the backup files. - -#### Back to Filezilla - -You can now see backups previously copied and download them to your computer. + ![path where backups are located on Yunohost](images/filezilla_7.png)
- Be sure to download both files + Be sure to download both the `.tar.gz` and `.json` files.
![Copy backups from Yunohost to local computer](images/filezilla_8.png) @@ -82,23 +63,23 @@ You can now see backups previously copied and download them to your computer. Sources * [Official documentation](https://wiki.filezilla-project.org/FileZilla_Client_Tutorial_(en)) -* +* [General tutorial about using FileZilla](https://www.rc.fas.harvard.edu/resources/documentation/sftp-file-transfer/) ## Alternatives to Filezilla -### Windows - -* [`WinSCP`](https://winscp.net/) is also a nice candidate for Windows - ### Linux From any recent Linux, you should be able to use the `file manager` to reach your server. -Nautilus from Gnome3 can access out of the box. +Nautilus from Gnome3 has features similar to FileZilla, out of the box. * * +### Windows + +* [WinSCP](https://winscp.net/) is also a nice candidate for Windows + ### MacOS -Feel free to complete this part \ No newline at end of file +Feel free to complete this part From 7c78c5c7357839bdba85a741f46dd980e7388ec7 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 24 Jan 2019 01:39:40 +0100 Subject: [PATCH 10/94] Advertise Filezilla as the most accessible solution to download backup archives --- backup.md | 9 ++++----- backup_fr.md | 8 ++++---- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/backup.md b/backup.md index 18719dda..7efb5c11 100644 --- a/backup.md +++ b/backup.md @@ -61,9 +61,11 @@ Downloading and uploading backups After creating backup archives, it is possible to list and inspect them via the corresponding views in the webadmin, or via `yunohost backup list` and `yunohost backup info ` from the command line. By default, backups are stored in `/home/yunohost.backup/archives/`. -There is currently no straightfoward way to download or upload a backup archive. +Currently, the most accessible way to download archives is to use the program FileZilla as explained in [this page](/filezilla). -One solution consists in using `scp` (a program based on [`ssh`](/ssh)) to copy files between two machines via the command line. Hence, from a machine running Linux, you should be able to run the following to download a specific backup: +Alternatively, a solution can be to install Nextcloud or a similar app and configure it to be able to access files in `/home/yunohost.backup/archives/` from a web browser. + +Finally, you can use `scp` (a program based on [`ssh`](/ssh)) to copy files between two machines via the command line. Hence, from a machine running Linux, you should be able to run the following to download a specific backup: ```bash scp admin@your.domain.tld:/home/yunohost.backup/archives/.tar.gz ./ @@ -75,9 +77,6 @@ Similarly, you can upload a backup from a machine to your server with: scp /path/to/your/.tar.gz admin@your.domain.tld:/home/yunohost.backup/archives/ ``` -Alternatively, a solution can be to install Nextcloud or a similar app and configure it to be able to access files in `/home/yunohost.backup/archives/` from a web browser. -You could also use the program [Filezilla](/filezilla) from your computer and which is available for Windows, Linux and macOS. - Restoring backups ----------------- diff --git a/backup_fr.md b/backup_fr.md index 60b76fd1..b95ffc1b 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -61,9 +61,11 @@ Télécharger et téléverser des sauvegardes Après avoir créé des sauvegardes, il est possible de les lister et de les inspecter grâce aux vues correspondantes dans la webadmin, ou via `yunohost backup list` et `yunohost backup info ` depuis la ligne de commande. Par défaut, les sauvegardes sont stockées dans `/home/yunohost.backup/archives/`. -Il n'existe actuellement pas de solution "rapide et facile" pour télécharger ou téléverser une archive depuis une autre machine. +À l'heure actuelle, la solution la plus accessible pour récupérer les sauvegardes est d'utiliser le programme FileZilla comme expliqué dans [cette page](/filezilla_fr). -Une solution consiste à utiliser `scp` (un programme basé sur [`ssh`](/ssh)) pour copier des fichiers entre deux machines grâce à la ligne de commande. Ainsi, depuis une machine sous Linux, vous pouvez utiliser la commande suivante pour télécharger une archive : +Une autre solution alternative consiste à installer une application comme Nextcloud et à la configurer pour être en mesure d'accéder aux fichiers dans `/home/yunohost.backup/archives/` depuis un navigateur web. + +Enfin, il est possible d'utiliser `scp` (un programme basé sur [`ssh`](/ssh)) pour copier des fichiers entre deux machines grâce à la ligne de commande. Ainsi, depuis une machine sous Linux, vous pouvez utiliser la commande suivante pour télécharger une archive : ```bash scp admin@your.domain.tld:/home/yunohost.backup/archives/.tar.gz ./ @@ -75,8 +77,6 @@ De façon similaire, vous pouvez téléverser une sauvegarde depuis une machine scp /path/to/your/.tar.gz admin@your.domain.tld:/home/yunohost.backup/archives/ ``` -Une solution alternative consiste à installer une application comme Nextcloud et à la configurer pour être en mesure d'accéder aux fichiers dans `/home/yunohost.backup/archives/` depuis un navigateur web. - Restaurer des sauvegardes ------------------------- From 879d522a89a0acc1b4cefb9ce53bce5f123095bb Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 24 Jan 2019 01:41:01 +0100 Subject: [PATCH 11/94] Advertise the Filezilla page on admindoc page --- admindoc.md | 1 + admindoc_fr.md | 1 + 2 files changed, 2 insertions(+) diff --git a/admindoc.md b/admindoc.md index b68eede1..5be40ee2 100644 --- a/admindoc.md +++ b/admindoc.md @@ -35,6 +35,7 @@ * [Security](/security) * Going further * [Noho.st / nohost.me / ynh.fr domain names](/dns_nohost_me) + * [Exchange files with your server using a graphical interface](/filezilla) * [Adding an external storage](/external_storage) * [Migrating emails to YunoHost](/email_migration) * [Hide services with Tor](/torhiddenservice) diff --git a/admindoc_fr.md b/admindoc_fr.md index 72f8ac30..9d533eb4 100644 --- a/admindoc_fr.md +++ b/admindoc_fr.md @@ -44,6 +44,7 @@ * [SFR](/isp_sfr_fr) * [Orange](/isp_orange_fr) * [Free](/isp_free_fr) + * [Échanger des fichiers avec son serveur à l'aide d'une interface graphique](/filezilla) * [Ajouter un stockage externe](/external_storage_fr) * [Migrer ses emails vers YunoHost](/email_migration_fr) * [YunoHost avec un service caché Tor](/torhiddenservice_fr) From 324d243a49dbc8fa25a21b3f719eb02438b5f213 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 24 Jan 2019 04:34:58 +0100 Subject: [PATCH 12/94] Empty page since 5 years --- app_openvpn.md | 3 --- app_openvpn_fr.md | 3 --- 2 files changed, 6 deletions(-) delete mode 100644 app_openvpn.md delete mode 100644 app_openvpn_fr.md diff --git a/app_openvpn.md b/app_openvpn.md deleted file mode 100644 index d7cb0f1d..00000000 --- a/app_openvpn.md +++ /dev/null @@ -1,3 +0,0 @@ -# OpenVPN - -To be written... \ No newline at end of file diff --git a/app_openvpn_fr.md b/app_openvpn_fr.md deleted file mode 100644 index 044e958c..00000000 --- a/app_openvpn_fr.md +++ /dev/null @@ -1,3 +0,0 @@ -# OpenVPN - -À documenter... \ No newline at end of file From 1ea2fe5a03ae8261727cb85effa0780d650901f1 Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Thu, 24 Jan 2019 11:57:03 +0100 Subject: [PATCH 13/94] fix typo + linter filezila.md: graphic => graphical linter * trailing space * blank lines --- filezilla.md | 6 +++--- filezilla_fr.md | 9 +++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/filezilla.md b/filezilla.md index 9328ffa9..8d702407 100644 --- a/filezilla.md +++ b/filezilla.md @@ -1,11 +1,11 @@ # Exchange files with your server using a graphical interface -This page explains how to exchange files (backup archives, music, pictures, -movies, ...) with your server using a graphic interface. This is an alternative +This page explains how to exchange files (backup archives, music, pictures, +movies, ...) with your server using a graphical interface. This is an alternative to using `scp` which can be deemed technical and cryptic, or using an app like Nextcloud. -[Filezila](https://filezilla-project.org/) can be used for this. It is a free +[Filezila](https://filezilla-project.org/) can be used for this. It is a free software and is available for Windows, Linux and macOS. ## Download and install FileZilla diff --git a/filezilla_fr.md b/filezilla_fr.md index 078d318a..47981696 100644 --- a/filezilla_fr.md +++ b/filezilla_fr.md @@ -1,8 +1,8 @@ # Échanger des fichiers avec son serveur à l'aide d'une interface graphique Cette page explique comment échanger des fichiers (sauvegardes, musiques, -photos, films, ...) avec son serveur à l'aide d'un outil graphique. C'est donc -une méthode alternative au fait d'utiliser la commande `scp` qui peut être jugée +photos, films, ...) avec son serveur à l'aide d'un outil graphique. C'est donc +une méthode alternative au fait d'utiliser la commande `scp` qui peut être jugée technique et cryptique, ou de devoir installer Nextcloud. [FileZilla](https://filezilla-project.org/) permet d'accomplir cela. Il s'agit @@ -10,8 +10,8 @@ d'un logiciel libre disponible pour Windows, Linux et MacOS. ## Télécharger et installer FileZilla -Vous pouvez télécharger FileZilla depuis [cette page](https://filezilla-project.org/download.php?type=client). -Le site devrait détecter automatiquement la version nécessaire pour votre ordinateur. +Vous pouvez télécharger FileZilla depuis [cette page](https://filezilla-project.org/download.php?type=client). +Le site devrait détecter automatiquement la version nécessaire pour votre ordinateur. Sinon, suivez les instructions pour [installer le client](https://wiki.filezilla-project.org/Client_Installation) Installez le programme et lancez *Filezilla*. @@ -74,6 +74,7 @@ Sources Depuis n'importe quel Linux récent, vous devriez pouvoir utiliser le gestionnaire de fichiers pour accéder à votre serveur. Nautilus de Gnome3 intègre de base des fonctionnalités similaires à FileZilla : + * * From 93d00cbef9277334271806f8d34449d8bc1a4876 Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Thu, 24 Jan 2019 11:58:40 +0100 Subject: [PATCH 14/94] Change pictures for a better example --- images/filezilla_1.png | Bin 11361 -> 11531 bytes images/filezilla_7.png | Bin 45134 -> 46197 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/images/filezilla_1.png b/images/filezilla_1.png index a5b3d75c6232d9a9330884ec003740530da3de3f..a133971b4814cc12252d6802d560f7cfa8d2a4fb 100644 GIT binary patch literal 11531 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 diff --git a/images/filezilla_7.png b/images/filezilla_7.png index 0a4d0ff8f5b92f9e170b83f97f6d5f07bb844edb..4b7aa28deb29deb26178c811fd6c84d93bd9e0c5 100644 GIT binary patch literal 46197 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 z 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≪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 Date: Thu, 24 Jan 2019 16:58:23 +0100 Subject: [PATCH 15/94] add ynh.fr domain --- postinstall.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/postinstall.md b/postinstall.md index 42b28bff..7702aa8d 100644 --- a/postinstall.md +++ b/postinstall.md @@ -32,11 +32,11 @@ You can also perform the postinstallation with the command `yunohost tools posti This is the first domain name linked to your YunoHost server, but also the one which will be used by your server's users to access the **authentication portal**. It will thus be **visible by everyone**, choose it wisely. -* If you do not have a domain name, or if you want to use the YunoHost's DynDNS service, choose a sub-domain of **.nohost.me** or **.noho.st** (e.g. `homersimpson.nohost.me`). The domain will be configured automatically and you won't need any further configuration step. +* If you do not have a domain name, or if you want to use the YunoHost's DynDNS service, choose a sub-domain of **.nohost.me**, **.noho.st** or **.ynh.fr** (e.g. `homersimpson.nohost.me`). Provided that it's not already taken, the domain will be configured automatically and you won't need any further configuration step. * If you do know what **DNS** is, you probably want to configure your own domain name here. In this case, please refer to the [DNS page](/dns) page for more informations. -* If you don't own a domain name and don't want a **.nohost.me** or **.noho.st**, you can use a local domain. The idea is to configure your router to redirect a local domain name to your server. For example you could create the yunohost.local domain redirecting to your server in your router, and now every device on the network will be redirected to your server when accessing yunohost.local. More information on how to setup a local domain can be found [here](dns_local_network). +* If you don't own a domain name and don't want a **.nohost.me**, **.noho.st** or **.ynh.fr**, you can use a local domain. The idea is to configure your router to redirect a local domain name to your server. For example you could create the yunohost.local domain redirecting to your server in your router, and now every device on the network will be redirected to your server when accessing yunohost.local. More information on how to setup a local domain can be found [here](dns_local_network). ### Administration password From 79d1f59458374d5fa153515256b2c922b25a8726 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Thu, 24 Jan 2019 17:04:01 +0100 Subject: [PATCH 16/94] ajout domaine ynh.fr --- postinstall_fr.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/postinstall_fr.md b/postinstall_fr.md index 55698054..c12dcc85 100644 --- a/postinstall_fr.md +++ b/postinstall_fr.md @@ -31,11 +31,11 @@ Vous pouvez aussi y accéder en entrant la commande `yunohost tools postinstall` C’est le nom de domaine qui permettra l’accès à votre serveur ainsi qu’au portail d’authentification des utilisateurs. Il sera donc **visible par tout le monde**, choisissez-le en conséquence. -* YunoHost propose un service de DNS dynamique fournissant des noms de domaine de type *mondomaine.nohost.me* ou *mondomaine.noho.st*. Si vous ne possédez pas de nom de domaine et/ou que vous souhaitez profiter de ce service, choisissez un domaine se terminant en `.nohost.me` ou `.noho.st`. Le domaine sera automatiquement rattaché à votre serveur YunoHost, et vous n’aurez pas d’étape de configuration supplémentaire. +* YunoHost propose un service de DNS dynamique fournissant des noms de domaine de type *mondomaine.nohost.me*, *mondomaine.noho.st* ou *mondomaine.ynh.fr*. Si vous ne possédez pas de nom de domaine et/ou que vous souhaitez profiter de ce service, choisissez un domaine se terminant en `.nohost.me`, `.noho.st` ou `.ynh.fr`. S'il n'est pas déjà utilisé, le domaine sera automatiquement rattaché à votre serveur YunoHost, et vous n’aurez pas d’étape de configuration supplémentaire. * Si en revanche vous maîtrisez la notion de **DNS**, vous pouvez utiliser votre propre nom de domaine. Dans ce cas, référez-vous à la page [yunohost.org/dns](/dns_fr) pour plus d’informations. -* Si vous n'avez pas de nom de domaine et que vous n'en voulez pas en *mondomaine.nohost.me* ou *mondomaine.noho.st*, vous pouvez utilisez un domaine local. Plus d'infos sur comment [accéder à son serveur depuis le réseau local](/dns_local_network_fr). +* Si vous n'avez pas de nom de domaine et que vous n'en voulez pas en *mondomaine.nohost.me*, *mondomaine.noho.st* ou *mondomaine.ynh.fr*, vous pouvez utilisez un domaine local. Plus d'infos sur comment [accéder à son serveur depuis le réseau local](/dns_local_network_fr). ### Mot de passe d’administration From f5ee3099d8acdac504c2ab917e8e0aedccba159a Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Thu, 24 Jan 2019 17:10:37 +0100 Subject: [PATCH 17/94] ajout _fr sur le lien dns_nohost_me MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit le site, navigué en français, ne transfère pas le lien dns_nohost_me vers dns_nohost_me_fr (bien que la page existe dans le repo). --- dns_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dns_fr.md b/dns_fr.md index cdd9d17c..ef806aad 100644 --- a/dns_fr.md +++ b/dns_fr.md @@ -27,7 +27,7 @@ Il existe également des **types** d’enregistrement DNS, ce qui veut dire qu Plusieurs choix s’offrent à vous. Notez que vous pouvez cumuler ces solutions si vous possédez plusieurs domaines : par exemple vous pouvez avoir `mon-serveur.nohost.me` en utilisant la solution **1.**, et `mon-serveur.org` en utilisant la solution **2.**, redirigeant vers le même serveur YunoHost. -1. Vous pouvez utiliser [le service de DNS de YunoHost](/dns_nohost_me), qui s’occupera de configurer tout seul les DNS de votre instance YunoHost. Vous devrez en revanche choisir un domaine se terminant par `.nohost.me`, `.noho.st` ou `.ynh.fr`, ce qui peut être inconvenant (vous aurez alors des adresses email telles que `jean@mon-serveur.noho.st`). +1. Vous pouvez utiliser [le service de DNS de YunoHost](/dns_nohost_me_fr), qui s’occupera de configurer tout seul les DNS de votre instance YunoHost. Vous devrez en revanche choisir un domaine se terminant par `.nohost.me`, `.noho.st` ou `.ynh.fr`, ce qui peut être inconvenant (vous aurez alors des adresses email telles que `jean@mon-serveur.noho.st`). **C’est la méthode recommandée si vous débutez.** 2. Vous pouvez utiliser le service de DNS de votre **registrar** (Gandi, OVH, BookMyName ou autre) pour configurer vos noms de domaine. Voici la [configuration DNS standard](/dns_config_fr). Il est aussi possible d'utiliser une redirection DNS locale, plus d'infos sur comment [Accéder à son serveur depuis le réseau local](/dns_local_network_fr). From 103e213f0ba5c3ee6d6fc3c4ac6dc0e01ceaadf5 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Thu, 24 Jan 2019 17:19:03 +0100 Subject: [PATCH 18/94] limites /etc/hosts --- user_interface_fr.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/user_interface_fr.md b/user_interface_fr.md index 89c98b12..e1f9ab84 100644 --- a/user_interface_fr.md +++ b/user_interface_fr.md @@ -1,22 +1,22 @@ # Interface utilisateur L'interface utilisateur est un portail permettant à un utilisateur connecté de voir toutes les applications qu'il peut -utiliser, et y accéder. Cette interface permet aussi à l'utilisateur de gérer ses paramètres (changer de mot de passe, +utiliser, et d'y accéder. Cette interface permet aussi à l'utilisateur de gérer ses paramètres (changer de mot de passe, définir ses alias et redirections courriel). ### Problème d’accès -L’accès à la partie utilisateur peut se faire uniquement avec un nom de domaine. Vous ne pouvez pas y accéder en utilisant l’adresse IP locale de votre serveur comme suit : https://adresse.ip.du.server/yunohost/sso +L’accès à la partie utilisateur peut se faire uniquement avec un nom de domaine. Vous ne pouvez **pas** y accéder en utilisant l’adresse IP locale de votre serveur comme suit : https://adresse.ip.du.server/yunohost/sso -Vous pouvez créer une redirection d’un nom de domaine vers l’adresse IP du serveur en modifiant `/etc/hosts` et en ajoutant cette ligne : +Cependant, sur votre ordinateur, vous pouvez créer une redirection d’un nom de domaine vers l’adresse IP du serveur en modifiant le fichier `/etc/hosts` et en ajoutant cette ligne : ```bash adresse.ip.du.server domaine.tld ``` -En remplaçant `adresse.ip.du.server` par exemple par `192.168.1.5` et `domaine.tld` par votre nom de domaine ou par un nom de domaine que vous pouvez choisir si vous n’en avez pas. +en remplaçant `adresse.ip.du.server` par exemple par `192.168.1.5` et `domaine.tld` par votre nom de domaine ou par un [nom de domaine que vous pouvez choisir](/dns) si vous n’en avez pas. /!\ Cela ne fonctionne que localement /!\ ### Logiciel From 44d1784723384bec9dfa780e8bab18fc1513f919 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Fri, 25 Jan 2019 10:05:28 +0000 Subject: [PATCH 19/94] IT translation for demo page --- try_it.md | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 try_it.md diff --git a/try_it.md b/try_it.md new file mode 100644 index 00000000..b69e00c9 --- /dev/null +++ b/try_it.md @@ -0,0 +1,27 @@ +#Prova YunoHost + +
+**Nota:** A volte questo server demo può essere irraggiungibile +
+ +
+ +
+ +
+
+ Interfaccia utente +

Nome utente: demo
Password: demo

+
+
+ Interfaccia amministrazione +

Password: demo

+
+
+ +
+ +

+***Il server demo è gentilmente fornito da +Gitoyen*** +

From abdd3d73b9bc79e6f949893241aef1219c9e984a Mon Sep 17 00:00:00 2001 From: Yunobot Date: Fri, 25 Jan 2019 10:10:35 +0000 Subject: [PATCH 20/94] IT translation for install page --- install_it.md | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 install_it.md diff --git a/install_it.md b/install_it.md new file mode 100644 index 00000000..1a1d18e4 --- /dev/null +++ b/install_it.md @@ -0,0 +1,89 @@ +# Guida all'installazione + +Ci sono diverse maniere per installare YunoHost. Il procedimento può essere leggermente diverso a seconda che si esegua a casa o su un server remoto, e dipende dall'hardware usato: +**[Vedi i requisiti](/hardware)** + +Questa pagina elenca alcune guide all'installazione. + +--- + +

Provalo

+ + + + + + + + +
+ +--- + +

Installalo a casa

+ + + +
+ + +--- + +

Installalo su un server remoto

+ +
+ ISP locali potrebbero essere in grado di fornire un *Server Privato Vrituale* (VPS), gesito da esseri umani che rispettano gli utenti e si preoccupano della [Net Neutrality](https://en.wikipedia.org/wiki/Net_neutrality) ! Guarda [questa pagina](https://db.ffdn.org/) per maggiori informazioni. +
+ + + +
+ +--- + +

Avanzate / altri

+ + + +
From 58a95751e5e94d8368cc84ba88326f78f2c1c2f7 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Mon, 28 Jan 2019 18:00:59 +0100 Subject: [PATCH 21/94] Typo + precision about custom webapp use case --- filezilla.md | 12 ++++++------ filezilla_fr.md | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/filezilla.md b/filezilla.md index 8d702407..5cf6afca 100644 --- a/filezilla.md +++ b/filezilla.md @@ -1,11 +1,11 @@ # Exchange files with your server using a graphical interface This page explains how to exchange files (backup archives, music, pictures, -movies, ...) with your server using a graphical interface. This is an alternative -to using `scp` which can be deemed technical and cryptic, or using an app like -Nextcloud. +movies, ...) with your server using a graphical interface for the (S)FTP protocol. +This is an alternative to using `scp` which can be deemed technical and cryptic, +or using an app like Nextcloud. -[Filezila](https://filezilla-project.org/) can be used for this. It is a free +[FileZilla](https://filezilla-project.org/) can be used for this. It is a free software and is available for Windows, Linux and macOS. ## Download and install FileZilla @@ -20,7 +20,7 @@ Install the program and run *Filezilla*. ![Main screen of Filezilla](images/filezilla_1.png) -2. Click **New Site** and give a name the server you will be using : *Familly* here. Fill the settings as on the screenshot (replace the server adress with your own), and click on **Connect**. +2. Click **New Site** and give a name the server you will be using : *Family* here. Fill the settings as on the screenshot (replace the server adress with your own), and click on **Connect**. (N.B. : if you want to interact with the [custom webapp](https://github.com/YunoHost-Apps/my_webapp_ynh) files, you should use a different user than `admin`. Refer to the custom webapp documentation.) ![Site manager screen](images/filezilla_2.png) @@ -28,7 +28,7 @@ Install the program and run *Filezilla*. ![warning about the unknown fingerprint of the server](images/filezilla_3.png) -4. Filezilla is now asking the `admin` password for connecting to your server. +4. Filezilla is now asking the `admin` password to connect to your server. ![credential screen asking for the password](images/filezilla_4.png) diff --git a/filezilla_fr.md b/filezilla_fr.md index 47981696..8d9c6136 100644 --- a/filezilla_fr.md +++ b/filezilla_fr.md @@ -22,7 +22,7 @@ Installez le programme et lancez *Filezilla*. ![écran principal de Filezilla](images/filezilla_1.png) -2. Cliquez sur **Nouveau site** et donnez un nom au serveur que vous allez utiliser. Par exemple "Famille". Remplissez les paramètres comme sur la capture d'écran (en remplaçant l'adresse du serveur par la votre). Une fois terminé, cliquez sur **Connexion**. +2. Cliquez sur **Nouveau site** et donnez un nom au serveur que vous allez utiliser. Par exemple "Famille". Remplissez les paramètres comme sur la capture d'écran (en remplaçant l'adresse du serveur par la votre). Une fois terminé, cliquez sur **Connexion**. (N.B. : si vous souhaitez éditer les fichiers de l'application [custom webapp](https://github.com/YunoHost-Apps/my_webapp_ynh), il vous faudra utiliser un autre utilisateur que admin. Se référer à la documentation de custom webapp.) ![écran du gestionnaire de site](images/filezilla_2.png) From 31143503fe9a3158266b834ef9880ef5ac0d050a Mon Sep 17 00:00:00 2001 From: Yalh Date: Mon, 28 Jan 2019 19:08:34 +0100 Subject: [PATCH 22/94] Adding additional licenses information --- packaging_apps_manifest.md | 2 +- packaging_apps_manifest_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging_apps_manifest.md b/packaging_apps_manifest.md index 8130b1e1..3d79d09b 100644 --- a/packaging_apps_manifest.md +++ b/packaging_apps_manifest.md @@ -65,7 +65,7 @@ The `manifest.json` file defines the app's constants, a bunch of values that Yun * **version**: version of the package builded from the upstream version number and an incremental number for each change in the package without upstream change. Example "1.0.1~ynh7". Must be a string. -* **license**: application license: `free` or `non-free`. Be careful to not confuse with package license which must be put in `LICENSE` file. +* **license**: application license: `free`, `non-free` or a value from the Identifier column from https://spdx.org/licenses/. Be careful to not confuse with package license which must be put in `LICENSE` file. * **maintainer**: informations about the app maintainer for contact. diff --git a/packaging_apps_manifest_fr.md b/packaging_apps_manifest_fr.md index dbb9acb3..5007ffb5 100644 --- a/packaging_apps_manifest_fr.md +++ b/packaging_apps_manifest_fr.md @@ -65,7 +65,7 @@ Le fichier `manifest.json` définit les constantes de l’application, un ensemb * **version** : version du package construit à partir du numéro de version de l’application qui est installée et d'un incrément pour chaque changement du paquet sans changement de version de l'application. "Exemple: 1.0.1~ynh7". Le champ doit être une chaîne de caractères. -* **license** : licence avec laquelle l’application est distribuée : `free`, `non-free`. Attention à ne pas confondre avec la licence du paquet qui doit être mise dans le fichier `LICENSE`. +* **license** : licence avec laquelle l’application est distribuée : `free`, `non-free` ou une des valeurs de la colonne Identifier du site https://spdx.org/licenses/. Attention à ne pas confondre avec la licence du paquet qui doit être mise dans le fichier `LICENSE`. * **maintainer** : informations à propos du mainteneur du paquet de l’application pour pouvoir le contacter. From bb5895daf96a6725cf0613ca6c3df95e8f1181a2 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 29 Jan 2019 01:49:57 +0000 Subject: [PATCH 23/94] Added the Audio center "Volumio" to the list of wished app. --- apps_wishlist.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps_wishlist.md b/apps_wishlist.md index a9f77360..5080c11f 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -44,7 +44,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [DirectoryLister](https://github.com/DirectoryLister/DirectoryLister) - [Discourse](https://discourse.org) - [DNSchain](https://github.com/okTurtles/dnschain) -- [Domoticz](https://github.com/domoticz/domoticz) - [Drupal](https://www.drupal.org/) - [Emby](https://emby.media) - [Emoncms](https://github.com/emoncms/emoncms) @@ -171,6 +170,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [TwitRSS.me](http://twitrss.me/) ([Github](https://github.com/ciderpunx/twitrssme)) Scrapes Twitter to create RSS feeds. - [Unvis](https://unv.is/) ([Github](https://github.com/lodjuret/unvis.it)) - [Vaultier](http://www.vaultier.org) +- [Volumio](https://volumio.org) - [Webmpc](https://github.com/ushis/webmpc) - [WebODF](http://webodf.org) - [webSync](http://furier.github.io/websync) From 015aab9fe4612aab9d0d05ed585935d638a7976a Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Tue, 29 Jan 2019 03:01:25 +0100 Subject: [PATCH 24/94] Fix diff bug --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index 5080c11f..17214d89 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -44,6 +44,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [DirectoryLister](https://github.com/DirectoryLister/DirectoryLister) - [Discourse](https://discourse.org) - [DNSchain](https://github.com/okTurtles/dnschain) +- [Domoticz](https://github.com/domoticz/domoticz) - [Drupal](https://www.drupal.org/) - [Emby](https://emby.media) - [Emoncms](https://github.com/emoncms/emoncms) From edee0827a5da1f3f61996ecb10b0481408a202a8 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 29 Jan 2019 02:05:22 +0000 Subject: [PATCH 25/94] Fixed minor typo. --- copy_image.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/copy_image.md b/copy_image.md index c2312fb6..50d3e68b 100644 --- a/copy_image.md +++ b/copy_image.md @@ -34,7 +34,7 @@ dd if=/path/to/yunohost.img of=/dev/mmcblk0 ## Expand the root partition (optional)
-This step is optionnal as it should be performed automatically during the first +This step is optional as it should be performed automatically during the first boot on recent images.
From 42ec1cbde33d9d75d9761a04b9fe82f3e22526f8 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 29 Jan 2019 02:06:56 +0000 Subject: [PATCH 26/94] executant Autrement, si* --- install_manually_fr.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install_manually_fr.md b/install_manually_fr.md index 0cdff39c..32a68df5 100644 --- a/install_manually_fr.md +++ b/install_manually_fr.md @@ -1,12 +1,12 @@ # Installer YunoHost manuellement -Une fois que vous avez accès à votre serveur (directement ou par SSH), vous pouvez installer YunoHost en executant cette commande en tant que root : +Une fois que vous avez accès à votre serveur (directement ou par SSH), vous pouvez installer YunoHost en exécutant cette commande en tant que root : ```bash curl https://install.yunohost.org | bash ``` -*(Si `bash` n'est pas installé sur votre système, il vous faudra peut-être l'installer avec `apt install bash`. Autrement, sinon la commande n'affiche rien du tout, vous pouvez tenter `apt install ca-certificates`)* +*(Si `bash` n'est pas installé sur votre système, il vous faudra peut-être l'installer avec `apt install bash`. Autrement, si la commande n'affiche rien du tout, vous pouvez tenter `apt install ca-certificates`)* Une fois l'installation terminée, il vous faudra [**procéder à la post-installation**](/postinstall) From 5fbfaae8bdf26aa5184ac49710f1a7203c59a325 Mon Sep 17 00:00:00 2001 From: isAAAc Date: Fri, 1 Feb 2019 13:16:15 +0100 Subject: [PATCH 27/94] Update apps_wishlist.md added entry for Invidious --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index 17214d89..7324489a 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -78,6 +78,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [ikiwiki](http://ikiwiki.info) - [img.bi](https://github.com/imgbi/img.bi) - [InfCloud](https://www.inf-it.com/open-source/clients/infcloud) +- [Invidious](https://github.com/omarroth/invidious) - [Invoice Ninja](https://www.invoiceninja.com) - [InvoicePlane](https://invoiceplane.com) - [IPFS](https://ipfs.io) From 576625c1afd908174344809f5bbeaa98bed7e299 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sat, 2 Feb 2019 21:47:35 +0000 Subject: [PATCH 28/94] Update home page for 3.4 --- index_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index_fr.md b/index_fr.md index 1de1d9a2..00a7dd47 100644 --- a/index_fr.md +++ b/index_fr.md @@ -39,7 +39,7 @@
From 3e3da60a1e183b02d7d3a29071450d84c2849577 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sat, 2 Feb 2019 23:29:58 +0100 Subject: [PATCH 29/94] Update indexes --- index.md | 2 +- index_ar.md | 2 +- index_de.md | 2 +- index_es.md | 2 +- index_it.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/index.md b/index.md index 03aa9c1e..7b7e0112 100644 --- a/index.md +++ b/index.md @@ -44,7 +44,7 @@
diff --git a/index_ar.md b/index_ar.md index e224a3ae..3ccb6024 100644 --- a/index_ar.md +++ b/index_ar.md @@ -40,7 +40,7 @@
diff --git a/index_de.md b/index_de.md index 1e638e6f..5ba6c6b7 100644 --- a/index_de.md +++ b/index_de.md @@ -44,7 +44,7 @@ Self-Hosting für jedermann zugänglich zu machen.
diff --git a/index_es.md b/index_es.md index ef45b494..a933f2a0 100644 --- a/index_es.md +++ b/index_es.md @@ -41,7 +41,7 @@
diff --git a/index_it.md b/index_it.md index 69535e6c..2a2ad931 100644 --- a/index_it.md +++ b/index_it.md @@ -44,7 +44,7 @@
From 664f05c04d3d861f228a0af3d34ef209e850026a Mon Sep 17 00:00:00 2001 From: Bram Date: Sun, 3 Feb 2019 00:41:31 +0100 Subject: [PATCH 30/94] meh --- index.md | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/index.md b/index.md index 7b7e0112..ee852b70 100644 --- a/index.md +++ b/index.md @@ -6,17 +6,16 @@

- Self-hosting for you, mom - Haters gonna host - I host myself, Yo! - Go host yourself! - Get off of my cloud - Host me I’m famous - Try Internet - How I met your server - john@doe.org - dude, Y U NO Host?! - Keep calm and host yourself + Haters gonna host + I host myself, Yo! + Go host yourself! + Get off of my cloud + Host me I’m famous + Try Internet + How I met your server + john@doe.org + dude, Y U NO Host?! + Keep calm and host yourself

From 6dc7038ef67601ec4b26e2a14af82dac44c433e2 Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Sun, 3 Feb 2019 13:58:45 +0100 Subject: [PATCH 31/94] typos --- ssh_fr.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ssh_fr.md b/ssh_fr.md index 669a2b02..34d619f5 100644 --- a/ssh_fr.md +++ b/ssh_fr.md @@ -2,7 +2,7 @@ ## Qu’est-ce que SSH ? -**SSH** est un accronyme pour Secure Shell, et désigne un protocole qui permet de contrôler à distance une machine via la ligne de commande (CLI). C'est aussi une commande disponible de base dans les terminaux de Linux et Mac OS / OSX. Sous Windows, il vous faudra utiliser le logiciel [MobaXterm](https://mobaxterm.mobatek.net/download-home-edition.html) (après l'avoir lancer, cliquer sur Session puis SSH). +**SSH** est un acronyme pour Secure Shell, et désigne un protocole qui permet de contrôler à distance une machine via la ligne de commande (CLI). C'est aussi une commande disponible de base dans les terminaux de Linux et Mac OS / OSX. Sous Windows, il vous faudra utiliser le logiciel [MobaXterm](https://mobaxterm.mobatek.net/download-home-edition.html) (après l'avoir lancer, cliquer sur Session puis SSH). ## Pendant l’installation de YunoHost @@ -10,7 +10,7 @@ Si vous installez YunoHost sur un VPS, votre fournisseur devrait vous avoir communiqué l'adresse IP de votre serveur. -Si vous installez un serveur à la maison (par ex. sur Raspberry Pi ou OLinuXino), il vous faut trouver l'IP qui a été attribuée à votre carte après que vous l'ayez connecté à votre box internet / routeur. Il y a plusieurs façon de faire ça : +Si vous installez un serveur à la maison (par ex. sur Raspberry Pi ou OLinuXino), il vous faut trouver l'IP qui a été attribuée à votre carte après que vous l'ayez connectée à votre box internet / routeur. Il y a plusieurs façons de faire cela : - ouvrez un terminal et tapez `sudo arp-scan --local` pour lister les IP des machines sur le réseau local ; - utilisez l'interface de votre box internet pour lister les machines connectées, ou regarder les logs ; @@ -32,7 +32,7 @@ Depuis YunoHost 3.4, après avoir effectué la postinstallation, il ne sera plus #### Changer le mot de passe root ! -Après vous être loggé pour la première fois, il vous faut changer le mot de passe root. Le serveur vous demandera peut-être automatiquement de le faire. Si ce n'est pas le cas, il faut utiliser la commande `passwd`. Il est important de choisir un mot de passe raisonnablement compliqué. Notez que ce mot de passe sera écrasé ensuite par le mot de passe admin choisi lors de la postinstallation. +Après vous être connecté pour la première fois, il vous faut changer le mot de passe `root`. Le serveur vous demandera peut-être automatiquement de le faire. Si ce n'est pas le cas, il faut utiliser la commande `passwd`. Il est important de choisir un mot de passe raisonnablement compliqué. Notez que ce mot de passe sera écrasé ensuite par le mot de passe admin choisi lors de la postinstallation. ## Sur une instance déjà installée @@ -66,7 +66,7 @@ Si vous êtes connecté en tant qu'`admin` et souhaité devenir `root` pour plus Par défaut, seulement l'utilisateur `admin` peut se logger en SSH sur une instance Yunohost. -Les utilisateurs YunoHost créés via l'interface d'administration sont géré par la base de donnée LDAP. Par défaut, ils ne peuvent pas se connecter en SSH pour des raisons de sécurité. Si vous avez absolument besoin qu'un utilisateur dispose d'un accès SSH, vous pouvez utiliser la commande : +Les utilisateurs YunoHost créés via l'interface d'administration sont gérés par la base de donnée LDAP. Par défaut, ils ne peuvent pas se connecter en SSH pour des raisons de sécurité. Si vous avez absolument besoin qu'un utilisateur dispose d'un accès SSH, vous pouvez utiliser la commande : ```bash yunohost user ssh allow ``` @@ -85,6 +85,6 @@ yunohost user ssh list-keys ## SSH et sécurité -N.B. : `fail2ban` banniera votre IP pour 10 minutes si vous échouez plus de 5 fois à vous identifier. Pour débannir une IP, vous pouvez regarder la page sur [fail2ban](/fail2ban_fr) +N.B. : `fail2ban` bannira votre IP pour 10 minutes si vous échouez plus de 5 fois à vous identifier. Pour débannir une IP, vous pouvez regarder la page sur [fail2ban](/fail2ban_fr) Une discussion plus complète de la sécurité et de SSH peut être trouvée sur [la page dédiée](security_fr). From 5936bded1987d6fe348d7aac5506ccc7995d17a6 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 5 Feb 2019 21:28:26 +0000 Subject: [PATCH 32/94] Fix typo --- chat_rooms_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chat_rooms_fr.md b/chat_rooms_fr.md index 07426e23..249d49f1 100644 --- a/chat_rooms_fr.md +++ b/chat_rooms_fr.md @@ -31,7 +31,7 @@ Il sert également à discuter de l’évolution du packaging, des outils d’in - XMPP : **[apps@conference.yunohost.org](xmpp:apps@conference.yunohost.org?join)** #### Documentation -Le salon de documentation du projet Yunohost. Il permet aux contributeurs d'échanger, pour syncrhoniser et maintenit une documentation à jour sur les différents aspects du projet : backend, frontend, apps, projet, communauté... +Le salon de documentation du projet Yunohost. Il permet aux contributeurs d'échanger, pour synchroniser et maintenir une documentation à jour sur les différents aspects du projet : backend, frontend, apps, projet, communauté... Vous pouvez aussi y partager vos communications au public à propos de Yunohost (présentations, vidéos...) pour permettre leur référencement dans la documentation. - IRC: **#yunohost-doc** sur irc.freenode.net - Matrix: **#freenode_#yunohost-doc:matrix.org** From 471aa55bf1550472499b33c14453b277bd3e5d9d Mon Sep 17 00:00:00 2001 From: Yunobot Date: Wed, 6 Feb 2019 16:30:44 +0000 Subject: [PATCH 33/94] Dossier de mdp.fai dans le main.cf --- isp_orange_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/isp_orange_fr.md b/isp_orange_fr.md index ef6a532a..96c22706 100644 --- a/isp_orange_fr.md +++ b/isp_orange_fr.md @@ -37,7 +37,7 @@ sudo nano /etc/postfix/main.cf puis, rajouter à la ligne : ```bash -smtp_sasl_password_maps = hash:/etc/postfix/mdp_fai.conf +smtp_sasl_password_maps = hash:/etc/postfix/sasl/mdp_fai.conf smtp_sasl_auth_enable = yes smtp_sasl_security_options = noanonymous relayhost = [smtp.orange.fr]:25 From 9e07e7f9330d5b25b9e9cadd6442a7e028ac8e2f Mon Sep 17 00:00:00 2001 From: nqb Date: Wed, 6 Feb 2019 22:22:46 +0100 Subject: [PATCH 34/94] add details on '+' feature (sieve filters) --- email.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/email.md b/email.md index 4a491a2b..9aab2850 100644 --- a/email.md +++ b/email.md @@ -30,7 +30,7 @@ Configuring email aliases and auto-forwards Mail aliases and forwards can be configured for each users. For instance, the first user created on the server automatically has an alias `root@the.domain.tld` configured - meaning that an email sent to this adress will end in the inbox of the first user. Automatic forwards may be configured, for instance if an user doesn't want to configure an additional email account and just wants to receive emails from the server on, say, his/her gmail address. -Another feature which few people know about is the use of suffixes beginning with "+". For example, emails sent to `johndoe+booking@votre.domaine.tld` will land in John Doe's mailbox. It is a practical technique for example to provide an e-mail address to a website, then easily sort (via automatic filters) the mail coming from this website. +Another feature which few people know about is the use of suffixes beginning with "+". For example, emails sent to `johndoe+booking@votre.domaine.tld` will automatically land in the `booking` dir (lowercase) of John Doe's mailbox or in John Doe's inbox if `booking` directory doesn't exist . It is a practical technique for example to provide an e-mail address to a website, then easily sort (via automatic filters) the mail coming from this website. What happens if my server becomes unavailable ? ----------------------------------------------- From 2159194793c2cfea45df775d79b3d81353b2133b Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 6 Feb 2019 22:27:38 +0100 Subject: [PATCH 35/94] Propagate change on french version --- email_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/email_fr.md b/email_fr.md index 37649e7b..4135ef95 100644 --- a/email_fr.md +++ b/email_fr.md @@ -30,7 +30,7 @@ Configuration des alias de messagerie et des redirections automatiques Des alias de messagerie et des redirections peuvent être configurés pour chaque utilisateur. Par exemple, le premier utilisateur créé sur le serveur dispose automatiquement d'un alias `root@votre.domaine.tld` - ce qui signifie qu'un email envoyé vers cette adresse se retrouvera dans la boîte de réception de cet utilisateur. Les redirections automatiques peuvent être configurées, par exemple si un utilisateur ne veut pas configurer un compte de messagerie supplémentaire et souhaite simplement recevoir des courriels du serveur sur, disons, son adresse gmail. -Une autre fonctionnalité méconnue est l'utilisation de suffixe commencant par "+". Par exemple, les emails envoyés à `johndoe+sncf@votre.domaine.tld` atteriront dans la boîte mail de John Doe. C'est une technique pratique pour par exemple fournir une adresse mail à un site puis facilement trier (via des filtres automatiques) les courriers venant de ce site. +Une autre fonctionnalité méconnue est l'utilisation de suffixe commencant par "+". Par exemple, les emails envoyés à `johndoe+sncf@votre.domaine.tld` atteriront dans le dossier 'sncf' de la la boîte mail de John Doe (ou bien directement dans la boîle mail si ce dossier n'existe pas). C'est une technique pratique pour par exemple fournir une adresse mail à un site puis facilement trier (via des filtres automatiques) les courriers venant de ce site. Que se passe-t-il si mon serveur devient indisponible ? ----------------------------------------------- From 3104b7f823fed879f1cb7e153663dff26f0e54a6 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 6 Feb 2019 22:28:01 +0100 Subject: [PATCH 36/94] typo --- email_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/email_fr.md b/email_fr.md index 4135ef95..d28238fd 100644 --- a/email_fr.md +++ b/email_fr.md @@ -30,7 +30,7 @@ Configuration des alias de messagerie et des redirections automatiques Des alias de messagerie et des redirections peuvent être configurés pour chaque utilisateur. Par exemple, le premier utilisateur créé sur le serveur dispose automatiquement d'un alias `root@votre.domaine.tld` - ce qui signifie qu'un email envoyé vers cette adresse se retrouvera dans la boîte de réception de cet utilisateur. Les redirections automatiques peuvent être configurées, par exemple si un utilisateur ne veut pas configurer un compte de messagerie supplémentaire et souhaite simplement recevoir des courriels du serveur sur, disons, son adresse gmail. -Une autre fonctionnalité méconnue est l'utilisation de suffixe commencant par "+". Par exemple, les emails envoyés à `johndoe+sncf@votre.domaine.tld` atteriront dans le dossier 'sncf' de la la boîte mail de John Doe (ou bien directement dans la boîle mail si ce dossier n'existe pas). C'est une technique pratique pour par exemple fournir une adresse mail à un site puis facilement trier (via des filtres automatiques) les courriers venant de ce site. +Une autre fonctionnalité méconnue est l'utilisation de suffixe commencant par "+". Par exemple, les emails envoyés à `johndoe+sncf@votre.domaine.tld` atteriront dans le dossier 'sncf' de la boîte mail de John Doe (ou bien directement dans la boîle mail si ce dossier n'existe pas). C'est une technique pratique pour par exemple fournir une adresse mail à un site puis facilement trier (via des filtres automatiques) les courriers venant de ce site. Que se passe-t-il si mon serveur devient indisponible ? ----------------------------------------------- From e50825bacbed2f3753ff419b162bf27f6c27fc73 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Wed, 6 Feb 2019 22:50:05 +0000 Subject: [PATCH 37/94] Intro translation --- install_on_raspberry_de.md | 60 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 install_on_raspberry_de.md diff --git a/install_on_raspberry_de.md b/install_on_raspberry_de.md new file mode 100644 index 00000000..5105d8b7 --- /dev/null +++ b/install_on_raspberry_de.md @@ -0,0 +1,60 @@ +# YunoHost auf einem Raspberry Pi installieren + +*Alle Arten YunoHost zu installieren findest du **[hier](/install)**.* + +
+ + +
+ +
+Vor der Einrichtung eines Servers zuhause ist es empfehlenswert [mögliche Einschränkungen deines Providers](/isp) zu kennen. Wenn er zu viele Einschränkungen vornimmt, kann es sinnvoll sein ein VPN zu nutzen um diese zum umgehen. +
+ +## Voraussetzungen + +- Einen Raspberry Pi 0, 1, 2 oder 3 ; +- Eine microSD Karte: **8GB** Speicherplatz (mindestens) und **Class 10** Geschwindigkeit werden empfohlen (wie zum Beispiel die [Transcend 300x](http://www.amazon.fr/Transcend-microSDHC-adaptateur-TS32GUSDU1E-Emballage/dp/B00CES44EO)) ; +- Ein Netzeil (entweder ein Steckernetzteil oder ein MicroUSB Kabel) ; +- An Netzwerkkabel (RJ-45) um den Raspberry mit dem router zu verbinden. (Raspberry Pi Zero Nutzer können ein OTG Kabel nutzen, [Wifi dongle](https://core-electronics.com.au/tutorials/raspberry-pi-zerow-headless-wifi-setup.html).) ; +- Einen [geeigneten Provider](/isp), am Besten einen mit einer guten upload Geschwindigkeit. + +--- + +## Install with the pre-installed image (recommended) + +0. Download the pre-installed image for Raspberry Pi + +1. Flash the SD card with the image + +2. Plug & boot + +3. Connect to your server with SSH + +4. Proceed to post-installation + +--- + +## Manual installation (advanced users) + +
+We do not recommend the manual installation because it is more technical and longer than using the pre-installed image. This documentation is only intended for advanced users. +
+ +
+The latest Rasbpian images requires a screen and a keyboard, as it is no longer possible to connect directly to the Raspberry through SSH. Nevertheless it is possible to re-enable SSH at boot : before starting your Raspberry, put in the boot partition of the SD card an empty file named `ssh` (without extension). +
+ +0. Install Raspbian Stretch Lite on the SD card ([instructions](https://www.raspberrypi.org/downloads/raspbian/)). + +1. Connect to your Raspberry Pi with the user `pi`. Set the root password with +```bash +sudo passwd root +``` + +2. Edit `/etc/ssh/sshd_config` to allow ssh login for root, by replacing `PermitRootLogin without-password` with `PermitRootLogin yes`. Reload the ssh daemon with `service ssh reload`. + +3. Disconnect and reconnect, this time as root. + +4. Then follow the generic manual install procedure. + From 4b30bbffe8aaf62586541e0a1e1e510ae8260349 Mon Sep 17 00:00:00 2001 From: Arthur Lutz Date: Thu, 7 Feb 2019 13:07:49 +0100 Subject: [PATCH 38/94] :memo: [app_whislist] add FitTrackee Self hosted workout/activity tracker :biking_man: --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index 7324489a..b68e36ad 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -54,6 +54,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Ferment](https://github.com/mmckegg/ferment) - [FEX](http://fex.rus.uni-stuttgart.de/) - [FileTea](https://filetea.me) +- [FitTrackee](https://github.com/SamR1/FitTrackee) - [FoOlSlide](http://foolcode.github.io/FoOlSlide/) Open source comicbook/manga management software - [Fossil](http://www.fossil-scm.org) - [Framaslides](https://framagit.org/framasoft/framaslides/) From 4fc01d8e71b221a827593a9c9fc13fbed9f2e3b9 Mon Sep 17 00:00:00 2001 From: ljf Date: Sat, 9 Feb 2019 17:13:42 +0100 Subject: [PATCH 39/94] [enh] Add progress bar --- backup.md | 2 +- backup_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backup.md b/backup.md index d55e02b9..3bfbe45e 100644 --- a/backup.md +++ b/backup.md @@ -146,7 +146,7 @@ Alternatively, the app Archivist allows to setup a similar system : https://foru If you are using an ARM board, another method for doing a full backup can be to create an image of the SD card. For this, poweroff your ARM board, get the SD card in your computer then create a full image with something like : ```bash -dd if=/dev/mmcblk0 of=./backup.img +dd if=/dev/mmcblk0 of=./backup.img status=progress ``` (replace `/dev/mmcblk0` with the actual device of your sd card) diff --git a/backup_fr.md b/backup_fr.md index 565f982e..efd613d9 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -146,7 +146,7 @@ Il existe aussi l'application Archivist qui permet un système similaire : https Si vous êtes sur une carte ARM, une autre méthode pour créer une sauvegarde complète consiste à créer une image (copie) de la carte SD. Pour cela, éteignez votre serveur, insérez la carte SD dans votre ordinateur et créez une image avec une commande comme : ```bash -dd if=/dev/mmcblk0 of=./backup.img +dd if=/dev/mmcblk0 of=./backup.img status=progress ``` (remplacez `/dev/mmcblk0` par le vrai nom de votre carte SD) From e4f15a130fcfe744fb287c63dcb363e8be6894fc Mon Sep 17 00:00:00 2001 From: Yunobot Date: Mon, 11 Feb 2019 02:02:29 +0000 Subject: [PATCH 40/94] 5 corrections orthographiques ;-) --- selfhosting_fr.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/selfhosting_fr.md b/selfhosting_fr.md index e2c12e7d..0a975691 100644 --- a/selfhosting_fr.md +++ b/selfhosting_fr.md @@ -1,11 +1,11 @@ L'auto-hébergement ================== -L'auto-hébergement est le fait d'avoir et d'administrer son propre serveur, typiquement chez soi, pour héberger soi-même ses données personelles et des services plutôt que de se reposer exclusivement sur des tiers. Par exemple, il est possible d'auto-héberger son blog de sorte qu'il "vive" dans une machine que vous contrôlez, au lieu qu'il soit sur l'ordinateur de quelqu'un d'autre (a.k.a. le Cloud) en échange d'argent, de publicités ou de données privées. +L'auto-hébergement est le fait d'avoir et d'administrer son propre serveur, typiquement chez soi, pour héberger soi-même ses données personnelles et des services plutôt que de se reposer exclusivement sur des tiers. Par exemple, il est possible d'auto-héberger son blog de sorte qu'il "vive" dans une machine que vous contrôlez, au lieu qu'il soit sur l'ordinateur de quelqu'un d'autre (a.k.a. le Cloud) en échange d'argent, de publicités ou de données privées. -L'auto-hébergement implique de disposer d'un serveur. Un serveur est un ordinateur qui est destiné à être accessible sur le réseau en permanence, et n'a généralement pas d'écran ni de clavier puisqu'il est administé à distance. Contrairement à une croyance répandue, les serveurs ne sont pas nécessairement des machines énormes et extrèmement puissante : aujourd'hui, une petite carte ARM à ~30€ est adéquate pour de l'auto-hébergement. +L'auto-hébergement implique de disposer d'un serveur. Un serveur est un ordinateur qui est destiné à être accessible sur le réseau en permanence, et n'a généralement pas d'écran ni de clavier puisqu'il est administré à distance. Contrairement à une croyance répandue, les serveurs ne sont pas nécessairement des machines énormes et extrêmement puissante : aujourd'hui, une petite carte ARM à ~30€ est adéquate pour de l'auto-hébergement. -Pratique l'auto-hébergement ne rends pas "votre internet" plus sécurisé et ne fourni pas d'anonymat en tant que tel. L'objectif est généralement de pouvoir être autonome et au contrôle de ses services et de ses données - ce qui implique aussi d'en être responsable. +Pratiquer l'auto-hébergement ne rend pas "votre internet" plus sécurisé et ne fournit pas d'anonymat en tant que tel. L'objectif est généralement de pouvoir être autonome et au contrôle de ses services et de ses données - ce qui implique aussi d'en être responsable. Pourquoi s'auto-héberger ? -------------------------- @@ -14,7 +14,7 @@ Pourquoi s'auto-héberger ? - **Vous voulez avoir le contrôle de vos données et services.** Vos images, votre messages de chat, votre historique de navigation, et votre dissertation pour l'école n'ont rien à faire sur l'ordinateur de quelqu'un d'autre (a.k.a. le Cloud). Ces données font parties de votre vie privée, mais également de celle de votre famille, de vos amis, etc. Ces données devraient être gérées par *vous*, et non par une quelconque entreprise américaine qui cherche à analyser vos données pour revendre les résultats. -- **Vous souhaitez apprendre comment fonctionnent les ordinateurs et Internet.** Opérer son propre serveur est un bon contexte pour apprendre les mécanismes de base au coeur des systèmes d'exploitations (OS) et d'Internet. Il vous faudra possiblement toucher à la ligne de commande et à des morceaux de configuration réseau et DNS. +- **Vous souhaitez apprendre comment fonctionnent les ordinateurs et Internet.** Opérer son propre serveur est un bon contexte pour apprendre les mécanismes de base au cœur des systèmes d'exploitations (OS) et d'Internet. Il vous faudra possiblement toucher à la ligne de commande et à des morceaux de configuration réseau et DNS. - **Vous voulez explorer de nouvelles possibilités et personnaliser votre espace.** Avez-vous déjà rêvé d'avoir votre propre serveur Minecraft pour vos ami.e.s, ou un client IRC ou XMPP persistent ? Avec votre propre serveur, vous pouvez manuellement installer et faire tourner n'importe quel programme et personnaliser chaque morceau. @@ -23,6 +23,6 @@ Pourquoi ne *pas* s'auto-héberger ? - **L'auto-hébergement requiert du travail et de la patience.** S'auto-héberger est un peu comme avoir son propre jardin ou potager : cela demande du travail et de la patience. Bien que YunoHost cherche à faire tout le travail compliqué pour vous, il vous faudra tout de même prendre le temps d'apprendre et configurer quelques détails pour que votre installation marche correctement. Il vous faudra aussi gérer quelques tâches de maintenance (telles que les mises à jour) de temps en temps, et demander de l'aide si des choses ne fonctionnent pas comme prévu. -- **Avec de grands serveurs viennent les grandes responsabilités.** Opérer un serveur implique d'être responsable des données que vous hébergez : personne ne pourra récupérer des données à votre place si vous les perdez. YunoHost fournit des fonctionnalités de sauvegarde qu'il est recommandé d'utiliser pour sauvegarder les configurations et données importantes. Il vous faut aussi garder un oeil sur les recommandations et les nouvelles à propos de la sécurité pour que votre serveur ou vos données ne soient pas compromises. +- **Avec de grands serveurs viennent les grandes responsabilités.** Opérer un serveur implique d'être responsable des données que vous hébergez : personne ne pourra récupérer des données à votre place si vous les perdez. YunoHost fournit des fonctionnalités de sauvegarde qu'il est recommandé d'utiliser pour sauvegarder les configurations et données importantes. Il vous faut aussi garder un œil sur les recommandations et les nouvelles à propos de la sécurité pour que votre serveur ou vos données ne soient pas compromises. -- **La qualité et les performances ne seront probablement pas aussi bonnes que des services premium.** YunoHost (et la plupart des applications qui sont packagées) sont des logiciels libres et open-source, développés par des communautés bénévoles. Il n'y a pas de garantie absolue que ces logiciels marcheront dans toutes les circonstances possibles. Les performances de votre serveur auto-hébergé sont aussi liés au processeur, à la mémoire vive et à la connectivité internet. +- **La qualité et les performances ne seront probablement pas aussi bonnes que des services premium.** YunoHost (et la plupart des applications qui sont packagées) sont des logiciels libres et open-source, développés par des communautés bénévoles. Il n'y a pas de garantie absolue que ces logiciels marcheront dans toutes les circonstances possibles. Les performances de votre serveur auto-hébergé sont aussi liées au processeur, à la mémoire vive et à la connectivité internet. From ea7fb8067cc2017102454b00b3c62b2030828529 Mon Sep 17 00:00:00 2001 From: Jaxom99 <30865395+Jaxom99@users.noreply.github.com> Date: Mon, 11 Feb 2019 09:48:44 +0100 Subject: [PATCH 41/94] Update English level --- dns_dynamicip.md | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/dns_dynamicip.md b/dns_dynamicip.md index 028b9d98..0ee754cc 100644 --- a/dns_dynamicip.md +++ b/dns_dynamicip.md @@ -1,40 +1,39 @@ # DNS with a dynamic IP -
Before going further, make sure your global IP address is dynamic with: [ip.yunohost.org](http://ip.yunohost.org/). The global IP address of your box change almost every days.
+
Before going further, make sure your global IP address is dynamic with: [ip.yunohost.org](http://ip.yunohost.org/). The global IP address of your box changes almost every day.
-This tutorial aim to get around dynamic IP issue who's nest: when the IP address public of the box change, the DNS zone is not update to point towards the new IP address. +This tutorial aim to get around dynamic IP issue which is: when the IP public address of your (Internet Service Provider-) box changes, the DNS zone is not updated to point towards the new IP address, and consequently your server is no more reachable via its domain name. After setting up the solution proposed in this tutorial, the redirection from your domain name to the actual IP address of your server will not be lost anymore. -After put in place the solution proposed in this tutorial, the redirection from your domain name to the real IP address will not be loose anymore. +The method proposed here consists of automatizing the fact the box annonces its global IP adress change to the dynamic DNS, so that the DNS zone will automatically be updated. -The method which will be put in place consist to make automatic the fact the box annonce to the dynamic DNS it has change global IP address, and then the DNS zone will automatically be changed. - -If you own a domain name at **OVH**, you could go to step 4 and follow this [tutorial](OVH_fr) because OVH propose a DynDNS service. +If you own a domain name at **OVH**, you may go to step 4 and follow this [tutorial](OVH_fr), given that OVH proposes a DynDNS service. #### 1. Create an account to a Dynamic DNS service -Here is sites which offer a DynDNS service free of charge: +Here are sites which offer a DynDNS service free of charge: * [DNSexit](https://www.dnsexit.com/Direct.sv?cmd=dynDns) * [No-IP](https://www.noip.com/remote-access) * [ChangeIP](https://changeip.com) * [DynDNS (in italian)](https://dyndns.it) * [DynDNS with your own domain](https://github.com/jodumont/DynDNS-with-HE.NET) -Register to one of them. +Register to one of them. It should provide you with one (or more) IP address to reach the service, and a login (that you may be able to self-define). #### 2. Move the DNS zones -Move the [DNS zones](dns_config), excepted the NS fields, from the [registrar](registrar_en) where you bought your domain name to the dynamic DNS service you registrer at step 1. +Copy the [DNS zones](dns_config), except for the NS fields, from the [registrar](registrar_en) where you bought your domain name from to the dynamic DNS service you registrer at in step 1. -#### 3. Toggle management of your domain name to the dynamic DNS server -This step consist to say to the [registrar](registrar_en) that DNS service will be manage by the DynDNS service. -Redirect NS field to the IP address gived by the DynDNS service. +#### 3. Switch the management of your domain name to the dynamic DNS server +This step consists in declaring to your [registrar](registrar_en) that the DNS service will now be managed by the DynDNS service provider. -Then, remove [DNS zones](dns_config), excepted NS fields, from the [registrar](registrar_en). +For this, fisrt declare in the NS field(s) the IP address provided by the DynDNS service. -#### 4. Create a Dynamic DNS login -On the dynamic DNS service create a login that you will enter on a dynamic DNS client. -This client could be your box or a package installed on your server as `ddclient`. -We gone use the client installed on the box which is more easy way. +Then, remove any other item in the [DNS zones](dns_config) (except the previous NS fields), from the [registrar](registrar_en). -#### 5. Configure the box -Put the login of the dynamic DNS and the [public IP address](http://ip.yunohost.org/) on your box. +#### 4. Configure the client +This client could be your ISP-box, or a package installed on your server, such as `ddclient`. +Here, we will use the client provided by the box, which is the more easy way. + +Enter the login of the dynamic DNS and its public IP address in your box (interface details may vary by ISP). + +You're good to go ! From 8ec1adc014e12eab2283b2115ef1dd31e0ffd132 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 12 Feb 2019 15:06:41 +0000 Subject: [PATCH 42/94] Excellent documentation! I only made a few minor grammatical and spelling changes (mostly use/miss use of "of") --- selfhosting.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/selfhosting.md b/selfhosting.md index 98f91744..d614c5ec 100644 --- a/selfhosting.md +++ b/selfhosting.md @@ -1,29 +1,29 @@ Self-hosting ============ -Self-hosting is the activity of having and administrating your own server, typically at home, to host your personal data and services yourself instead of relying exclusively on third-parties. For instance, you can self-host your blog, such that it 'lives' on a machine that you have control on, instead of having it on somebody else's computer (a.k.a. The Cloud) in exchange for money, advertisement or private data. +Self-hosting is the activity of having and administrating your own server, typically at home, to host your personal data and services yourself instead of relying exclusively on third-parties. For instance, you can self-host your blog, such that it 'lives' on a machine that you have control of, instead of having it on somebody else's computer (a.k.a. The Cloud) in exchange for money, advertisement or private data. -Self-hosting implies owning a server. A server is a computer which is typically accessible on the network 24/7, and usually does not have any screen or keyboard (it is instead controlled remotely). Contrarily to a popular belief, a server is not necessarily a huge and extra-powerful machine : nowadays, a small, ~$30 ARM board is adequate for self-hosting. +Self-hosting implies owning a server. A server is a computer which is typically accessible on the network 24/7, and usually does not have any screen or keyboard (it is instead controlled remotely). Contrarily to a popular belief, a server is not necessarily a huge and extra-powerful machine: nowadays, a small, ~$30 ARM board is adequate for self-hosting. -Self-hosting is not about making "your Internet" more secure or does not provide anonymity by itself. Instead, it is about being autonomous, and in control of your services and data - which also means being responsible for them. +Self-hosting is not about making "your Internet" more secure and does not provide anonymity by itself. Instead, it is about being autonomous, and in control of your services and data - which also means being responsible for them. Why should you host yourself ? ------------------------------ -- **You believe in a free, open and decentralized internet.** In a centralized internet, private companies and governement can spy, analyze and influence people by dictating how they connect with each other, and by filtering content. Yunohost is developed by a community who believe in an open and decentralized internet, and we hope that you do, too ! +- **You believe in a free, open and decentralized internet.** In a centralized internet, private companies and government can spy, analyze and influence people by dictating how they connect with each other, and by filtering content. Yunohost is developed by a community who believe in an open and decentralized internet, and we hope that you do, too! -- **You want to have control on your data and services.** Your pictures, chat messages, browsing history, and that text you are writing for school, have nothing to do on somebody else's server (a.k.a. The Cloud). They are part of your private life, but also part of your family's life, your friend's life, and so on. These data should be managed by *you*, not a random company in the US who wants your data to analyze them and sell the results. +- **You want to have control of your data and services.** Your pictures, chat messages, browsing history, and that text you are writing for school, have nothing to do on somebody else's server (a.k.a. The Cloud). They are part of your private life, but also part of your family's life, your friend's life, and so on. These data should be managed by *you*, not a random company in the US who wants your data to analyze them and sell the results. - **You want to learn about how computers and the Internet work.** Operating your own server is a pretty good context to understand the basic mechanisms at the heart of operating systems and the Internet. You might have to deal with command line interface, network architecture, DNS configuration, SSH, and so on. -- **You want to explore new possibilities and customize things.** Ever dreamed of running a Minecraft server for you friends, or a persistent IRC or XMPP client ? With you very own server, you can manually install and run virtually any program you want, and customize every bits. +- **You want to explore new possibilities and customize things.** Ever dreamed of running a Minecraft server for you friends, or a persistent IRC or XMPP client? With you very own server, you can manually install and run virtually any program you want, and customize every bit. Why should you *not* host yourself ? ------------------------------------ -- **Self-hosting requires some work and patience.** Hosting yourself is a bit like growing your own garden or vegetables : it requires work and patience. While YunoHost aims to do all the hard work for you, self-hosting still requires that you take time to learn and configure a few things to setup your server properly. You will also need to perform maintenance tasks (such as upgrades) from time to time, or to ask for support if some things break. +- **Self-hosting requires some work and patience.** Hosting yourself is a bit like growing your own garden or vegetables: it requires work and patience. While YunoHost aims to do all the hard work for you, self-hosting still requires that you take time to learn and configure a few things to setup your server properly. You will also need to perform maintenance tasks (such as upgrades) from time to time, or to ask for support if some things break. -- **With great servers comes great responsabilities.** Operating a server means that you are responsible of the data you are hosting. Nobody will be able to recover them for you if they get lost. YunoHost provides backup features, which you should use regularly to backup the configurations and data you care about. You should also keep and eye on security news and recommentations so that your server or critical data don't get compromised. +- **With great servers comes great responsibilities.** Operating a server means that you are responsible for the data you are hosting. Nobody will be able to recover them for you if they get lost. YunoHost provides backup features, which you should use regularly to backup the configurations and data you care about. You should also keep and eye on security news and recommendations so that your server or critical data don't get compromised. -- **Quality and performance probably won't be as good as premium services.** YunoHost (and most of the applications packaged for it) are free and open-source softwares, developped by communities of people in their free time and on the basis of best effort. There is no absolute guarantee that software will work in every possible circumstances. The performance of your self-hosted server is also related to its CPU and RAM, and to the available internet connectivity. +- **Quality and performance probably won't be as good as premium services.** YunoHost (and most of the applications packaged for it) are free and open-source software, developed by communities of people in their free time and on the basis of best effort. There is no absolute guarantee that software will work in every possible circumstance. The performance of your self-hosted server is also related to its CPU and RAM, and to the available internet connectivity. From 6da67ee72de538314218a494de84aaa4b6e1861f Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 12 Feb 2019 15:07:06 +0000 Subject: [PATCH 43/94] Check phrasing of VPN paragraph! I'm not sure if my edits correctly convey the intent. --- howtohostyourself.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/howtohostyourself.md b/howtohostyourself.md index 03a5a7c3..98dd3363 100644 --- a/howtohostyourself.md +++ b/howtohostyourself.md @@ -1,27 +1,27 @@ # How to host yourself ? -You can host yourself at home (on a small computer), or on a remote server. Each solution has their pros and cons : +You can host yourself at home (on a small computer), or on a remote server. Each solution has their pros and cons: ### At home, for instance on an ARM board or an old computer -You can host yourself at home with an ARM board or a re-purposed regular computer, connected to our home router/box. +You can host yourself at home with an ARM board or a re-purposed regular computer, connected to your home router/box. -- **Pros** : you will have physical control on the machine and only need to buy the hardware ; +- **Pros** : you will have physical control of the machine and only need to buy the hardware; - **Cons** : you will have to [manually configure your internet box](isp_box_config) and [might be limited by your ISP](isp). ### At home, behind a VPN -A VPN is an encrypted tunnel between two machines. In practice, it allows to make it "as is" you were connected to the Internet from somewhere else. This allows to still host yourself at home while bypassing possible limitations from your ISP. See also [the Internet Cube project](https://internetcu.be/) and [the FFDN](https://www.ffdn.org/). +A VPN is an encrypted tunnel between two machines. In practice, it makes it "as if" you were directly, locally, connected to your server machine, but actually from somewhere else on the Internet. This allows you to still host yourself at home, while bypassing possible limitations of your ISP. See also [the Internet Cube project](https://internetcu.be/) and [the FFDN](https://www.ffdn.org/). -- **Pros** : you will have physical control on the machine, and the VPN hides your traffic from your ISP and allows to bypass its limitations ; +- **Pros** : you will have physical control of the machine, and the VPN hides your traffic from your ISP and allows you to bypass its limitations; - **Cons** : you will have to pay a monthly subscription for the VPN. ### On a remote server (VPS or dedicated server) -You can rent a virtual private server or a dedicated machine to [associative](https://db.ffdn.org/) or commercial "Cloud" providers. +You can rent a virtual private server or a dedicated machine from [associative](https://db.ffdn.org/) or commercial "Cloud" providers. -- **Pros** : your server and its internet connectivity will be fast ; -- **Cons** : you will have to pay a monthly subscription and won't have physical control on your server. +- **Pros** : your server and its internet connectivity will be fast; +- **Cons** : you will have to pay a monthly subscription and won't have physical control of your server. ### Summary @@ -42,12 +42,12 @@ You can rent a virtual private server or a dedicated machine to [associative](ht Monthly cost - Neglictible
(electricity) + Negligible
(electricity) Around 5€
(VPN) Starting at ~3€
(VPS) - Physical control
on the machine + Physical control
of the machine Yes Yes No @@ -71,12 +71,12 @@ You can rent a virtual private server or a dedicated machine to [associative](ht RAM - Typically 500 Mo or 1 Go + Typically 500 Mb or 1 Gb Related to server cost Internet connectivity - Depends of home connectivity + Depends on home connectivity Typically pretty good From b30790ca1588aca1cdac77f9175caac7b7a07220 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 12 Feb 2019 15:07:26 +0000 Subject: [PATCH 44/94] Minor grammatical changes --- isp.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/isp.md b/isp.md index 8d8131e3..52a340f4 100644 --- a/isp.md +++ b/isp.md @@ -2,9 +2,9 @@ Main configuration box -Here is a non-comprehensive list of internet service providers by countries, wich contains criteria of tolerance to self-hosting. +Here is a non-comprehensive list of internet service providers by country, which contains criteria about tolerance to self-hosting. -A "no" may cause problems of the using of your server or may require you to make additional configurations. Status in brackets indicates the default behavior. +A "no" may cause problems for using your server or may require you to make additional configuration changes. Status in brackets indicates the default behavior. A list of French and Belgian ISPs is available on the [french page](/isp_fr). From 7a4e02a99284c098c5c1ebd0169ff49b06a6bc9a Mon Sep 17 00:00:00 2001 From: Yunobot Date: Tue, 12 Feb 2019 18:01:30 +0000 Subject: [PATCH 45/94] add `string` field type to the manifest. --- packaging_apps_manifest.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging_apps_manifest.md b/packaging_apps_manifest.md index 3d79d09b..f966fa15 100644 --- a/packaging_apps_manifest.md +++ b/packaging_apps_manifest.md @@ -78,7 +78,7 @@ The `manifest.json` file defines the app's constants, a bunch of values that Yun * **arguments**: * **install**: argument for the YunoHost's administrator to enter at installation. * **name**: argument identification. - * **type**: (optional) argument type among `domain`, `path`, `user`, `app`, `boolean` and `password`. The field will be hiden in the password case. + * **type**: (optional) argument type among `domain`, `path`, `user`, `app`, `boolean`, `string` and `password`. The field will be hiden in the password case. * **choices** : (optional) restrict value to several choices. * **optional** : (optional) field which indicate if this argument is optional. It can have `true` and `false` value. * **ask**: question (at least in `en`) that you can translate. From 4e272221c01071c9babe6d3860ac03471ca0fab4 Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Wed, 13 Feb 2019 12:31:47 +0100 Subject: [PATCH 46/94] add `string` field type to the manifest Propagate https://github.com/YunoHost/doc/pull/923 to french version of the document --- packaging_apps_manifest_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging_apps_manifest_fr.md b/packaging_apps_manifest_fr.md index 5007ffb5..72791575 100644 --- a/packaging_apps_manifest_fr.md +++ b/packaging_apps_manifest_fr.md @@ -78,7 +78,7 @@ Le fichier `manifest.json` définit les constantes de l’application, un ensemb * **arguments** : * **install** : paramètres à demander à l’administrateur lors de l’installation. * **name** : identifiant du paramètre - * **type** : (optionnel) type de paramètre parmis `domain`, `path`, `user`, `app`, `boolean` et `password`. Le champ sera caché dans le cas d’un mot de passe. + * **type** : (optionnel) type de paramètre parmis `domain`, `path`, `user`, `app`, `boolean`, `string` et `password`. Le champ sera caché dans le cas d’un mot de passe. * **choices** : (optionnel) restreint les réponses possibles à plusieurs choix. * **optional** : (optionnel) champs qui indique si ce paramètre est optionnel. Il peut avoir les valeurs `true` ou `false`. * **ask** : question posée (au minimum en anglais – `en`) que vous pouvez traduire dans plusieurs langues. From 27444833de5c39237ee1ffd754898badfa7deeab Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sat, 16 Feb 2019 16:13:11 +0000 Subject: [PATCH 47/94] I corrected a few typos --- howtohostyourself_fr.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/howtohostyourself_fr.md b/howtohostyourself_fr.md index 4a78ccc7..5bac3f6c 100644 --- a/howtohostyourself_fr.md +++ b/howtohostyourself_fr.md @@ -4,14 +4,14 @@ Vous pouvez vous auto-héberger à la maison (sur un petit ordinateur), ou sur u ### À la maison, par exemple sur une carte ARM ou un ancien ordinateur -Vous pouvez vous hébergez chez vous, sur une carte ARM ou un vieil ordinateur, connecté à votre box internet. +Vous pouvez vous héberger chez vous, sur une carte ARM ou un vieil ordinateur, connecté à votre box internet. - **Avantages** : vous aurez un contrôle physique sur la machine et avez seulement besoin d'acheter le matériel initial ; -- **Inconvénients** : il vous faudra [configuré manuellement votre box internet](isp_box_config) et serez possiblement [limité par certains aspects de votre fournisseur d'accès internet](isp). +- **Inconvénients** : il vous faudra [configurer manuellement votre box internet](isp_box_config) et serez possiblement [limité par certains aspects de votre fournisseur d'accès internet](isp). ### À la maison, derrière un VPN -Un VPN est un tunnel chiffré entre deux machines. En pratique, cela permet de faire "comme si" une machine était connecté depuis ailleurs. Ceci permet de s'auto-héberger à la maison tout en contournant les limitations du fournisseur d'accès internet. Voir aussi [le projet Brique Internet](https://labriqueinter.net/) et [la FFDN](https://www.ffdn.org/). +Un VPN est un tunnel chiffré entre deux machines. En pratique, cela permet de faire "comme si" une machine était connectée depuis ailleurs. Ceci permet de s'auto-héberger à la maison tout en contournant les limitations du fournisseur d'accès internet. Voir aussi [le projet Brique Internet](https://labriqueinter.net/) et [la FFDN](https://www.ffdn.org/). - **Avantages** : vous aurez un contrôle physique sur la machine, et le VPN permettra de cacher votre traffic vis-à-vis de votre FAI ainsi que de contourner ses limitations ; - **Inconvénients** : il vous faudra payer des frais mensuels pour le VPN. From f97c114346ab1a37f157d3716848af8b1701beef Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sat, 16 Feb 2019 16:13:26 +0000 Subject: [PATCH 48/94] I added Jellyfin to the wishlist --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index b68e36ad..7721cc6a 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -84,6 +84,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [InvoicePlane](https://invoiceplane.com) - [IPFS](https://ipfs.io) - [Joplin](http://joplin.cozic.net/) +- [Jellyfin](https://github.com/jellyfin) - [JS Bin](http://jsbin.com/help/2-second-setup) - [Kaiwa](http://getkaiwa.com) - [Keepass](http://keepass.info) From 093a935e268042fecda0ba0ecbc77c05b0b2a617 Mon Sep 17 00:00:00 2001 From: selea Date: Wed, 20 Feb 2019 13:06:29 +0000 Subject: [PATCH 49/94] Added description for Swedish ISP's Added description for Swedish ISP's (Telia and Bredbandsbolaget) --- isp.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/isp.md b/isp.md index 52a340f4..098c0b63 100644 --- a/isp.md +++ b/isp.md @@ -35,4 +35,13 @@ A list of French and Belgian ISPs is available on the [french page](/isp_fr). | --- | --- | --- | --- | --- | --- | --- | | Telus | Multiple | - | No. Extra charge | - | - | No. Extra charge | -If you want to add international ISPs information, please do consider [modifying this page](/write_documentation). \ No newline at end of file +### Sweden + +| Service provider | Box (modem/router) | uPnP available | Port 25 openable | [Hairpinning](http://en.wikipedia.org/wiki/Hairpinning) | Customizable reverse DNS | Fix IP | + +| --- | --- | --- | --- | --- | --- | --- | + +| Telia | Multiple | Yes | No. Business only. | Yes | No. Business only. | No. Business only. | +| Bredbandsbolaget | Multiple | Yes | No. Business only. | Yes | No. Business only. | No. Business only. | + +If you want to add international ISPs information, please do consider [modifying this page](/write_documentation). From 2964c3796d89100e1eaf114fcb397cf8b854ef83 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 20 Feb 2019 14:11:08 +0100 Subject: [PATCH 50/94] Fix rendering --- isp.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/isp.md b/isp.md index 098c0b63..8f6b800b 100644 --- a/isp.md +++ b/isp.md @@ -38,9 +38,7 @@ A list of French and Belgian ISPs is available on the [french page](/isp_fr). ### Sweden | Service provider | Box (modem/router) | uPnP available | Port 25 openable | [Hairpinning](http://en.wikipedia.org/wiki/Hairpinning) | Customizable reverse DNS | Fix IP | - | --- | --- | --- | --- | --- | --- | --- | - | Telia | Multiple | Yes | No. Business only. | Yes | No. Business only. | No. Business only. | | Bredbandsbolaget | Multiple | Yes | No. Business only. | Yes | No. Business only. | No. Business only. | From c4a108facca1e32ef07043713cb55d2efbeb4718 Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Wed, 20 Feb 2019 16:45:02 +0100 Subject: [PATCH 51/94] Update packaging_apps_levels.md --- packaging_apps_levels.md | 65 ++++++++++++---------------------------- 1 file changed, 19 insertions(+), 46 deletions(-) diff --git a/packaging_apps_levels.md b/packaging_apps_levels.md index ab0289cc..ebb9e3e9 100644 --- a/packaging_apps_levels.md +++ b/packaging_apps_levels.md @@ -23,22 +23,22 @@ The application installs and uninstalls correctly in all common configurations. The application can be updated. **Level 4** -The application uses YunoHost users directly and allows unique identification from the YunoHost portal. +The application can be saved and restored. **Level 5** The application package code follows some syntax rules. **Level 6** -The application can be saved and restored. +The application package is in the YunoHost-Apps organization. **Level 7** The application package passes all integrity tests successfully. **Level 8** -The application respects a set of advanced recommendations improving its general quality. +The application package respects all packaging recommendations. This is a high quality app. **Level 9** -The application complies with all recommendations. This is an excellent quality package. +The application complies with higher packaging recommendations. Not available yet. **Level 10** The application package is considered perfect! @@ -88,7 +88,6 @@ YEP to be respected to reach level 2: - *[YEP 2.18.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2184---supporter-linstallation-sur-un-sous-dossier----valid%C3%A9--auto--official-) : Support installation on a subfolder* - *[YEP 4.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-46---g%C3%A8re-le-multi-instance----valid%C3%A9--manuel--optional-) : Manage multi-instance* - ### Level 3 **The application supports upgrade from an older version of the package.** @@ -100,16 +99,11 @@ YEP to be respected to reach level 3: ### Level 4 -**The application supports LDAP and HTTP AUTH** - -The application manages its users directly from the [YunoHost ldap base](https://github.com/YunoHost/SSOwat/blob/366dd6c4438e6550f7438c36893690b628340185/config.lua#L50-L53) and allows unified connection using [HTTP authentication](https://fr.wikipedia.org/wiki/Authentification_HTTP) from the SSO. - -*If the application is not capable of supporting an ldap directory or HTTP authentication, this level can be ignored. * -*However, it is necessary to be able to justify this impossibility*. +**The application can be backed up and restored without error on the same machine or another.** YEP to be respected to reach level 4: -- *[YEP 4.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-41---lier-au-ldap----valid%C3%A9--manuel--official-) : Link to ldap* -- *[YEP 4.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-42---lier-lauthentification-au-sso----valid%C3%A9--manuel--official-) : Bind authentication to sso* +- *[YEP 4.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-43---fournir-un-script-de-sauvegarde-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Provide a functional YunoHost backup script* +- *[YEP 4.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-44---fournir-un-script-de-restauration-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Provide a functional YunoHost restore script* ### Level 5 @@ -119,11 +113,10 @@ YEP to be respected to reach level 4: YEP to be respected to reach level 5: - *[YEP 1.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-13---indiquer-la-licence-associ%C3%A9e-au-paquet---valid%C3%A9--auto--working-) : Specify the license associated with the package* -- [YEP 2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-21---respecter-le-format-du-manifeste---valid%C3%A9--auto--inprogress-) : Respect manifest format +- *[YEP 2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-21---respecter-le-format-du-manifeste---valid%C3%A9--auto--inprogress-) : Respect manifest format* - [YEP 2.12](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-212---utiliser-les-commandes-pratiques-helpers---valid%C3%A9--auto--official-) : Use practical commands (helpers) - [YEP 2.18.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2181---lancer-le-script-dinstallation-dune-webapp-correctement----valid%C3%A9--manuel--working-) : Run the webapp installation script correctly - ### Level 6 **The application can be backed up and restored without error on the same machine or another.** @@ -131,7 +124,7 @@ YEP to be respected to reach level 5: YEP to be respected to reach level 6: - [YEP 1.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-14---informer-sur-lintention-de-maintenir-un-paquet----brouillon--manuel--working-) : Inform about the intention to maintain a package - [YEP 1.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-16---se-tenir-inform%C3%A9-sur-l%C3%A9volution-du-packaging-dapps---valid%C3%A9--manuel--official-) : As a maintainer, keep checking and being aware of the evolution of apps packaging -- [YEP 1.7](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-17---ajouter-lapp-%C3%A0-lorganisation-yunohost-apps---valid%C3%A9--manuel--official-) : Add app to the [YunoHost-Apps organization](https://github.com/YunoHost-Apps) +- *[YEP 1.7](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-17---ajouter-lapp-%C3%A0-lorganisation-yunohost-apps---valid%C3%A9--manuel--official-) : Add app to the [YunoHost-Apps organization](https://github.com/YunoHost-Apps)* - [YEP 1.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-18---publier-des-demandes-de-test---valid%C3%A9--manuel--official-) : Publish test requests - [YEP 1.9](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-19---documenter-lapp---valid%C3%A9--auto--official-) : Document app - [YEP 1.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-110---garder-un-historique-de-version-propre----brouillon--manuel--official-) : Keep a clean version history @@ -139,10 +132,6 @@ YEP to be respected to reach level 6: - [YEP 3.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-33---faciliter-le-contr%C3%B4le-de-lint%C3%A9grit%C3%A9-des-sources----brouillon--manuel--official-) : Facilitating source integrity control - [YEP 3.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-35---suivre-les-recommendations-de-la-documentation-de-lapp----valid%C3%A9--manuel--official-) : Follow the recommendations of the app documentation - [YEP 3.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-36---mettre-%C3%A0-jour-les-versions-contenant-des-cve----draft--manuel--official-) : Update versions containing CVEs -- *[YEP 4.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-43---fournir-un-script-de-sauvegarde-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Provide a functional YunoHost backup script* -- *[YEP 4.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-44---fournir-un-script-de-restauration-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Provide a functional YunoHost restore script* - -If an app reaches level 6, it may qualify to join the official applications. ### Level 7 @@ -151,20 +140,23 @@ If an app reaches level 6, it may qualify to join the official applications. Considering the maximum number of tests possible for the application. YEP à respecter pour atteindre le niveau 7: +- [YEP 2.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-24---d%C3%A9tecter-et-g%C3%A9rer-les-erreurs---brouillon--manuel--working-) : Error detection and management - [YEP 2.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-26---annuler-laction-si-les-valeurs-dentr%C3%A9es-sont-incorrectes----valid%C3%A9--manuel--working-) : Cancel action if input values are incorrect +- [YEP 2.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-28---modifier-correctement-une-configuration-syst%C3%A8me----brouillon--manuel--working-) : Change a system configuration correctly +- [YEP 2.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-210---configurer-les-logs-de-lapplication----brouillon--manuel--working-) : Configure application logs +- [YEP 2.11](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-211---utiliser-une-variable-plut%C3%B4t-que-lapp-id-directement---valid%C3%A9--manuel--official-) : Use a variable rather than the app id directly +- [YEP 2.13](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-213---traduire-le-package-en-anglais----brouillon--manuel--official-) : Translate the package into English - [YEP 3.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-32---ouvrir-un-port-correctement----brouillon--manuel--working-) : Open port: Open port correctly - ### Level 8 -**The application complies with all recommended YEPs.** +**The application package respects all packaging recommendations. This is a high quality app.** YEP to be respected to reach level 8: -- [YEP 2.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-24---d%C3%A9tecter-et-g%C3%A9rer-les-erreurs---brouillon--manuel--working-) : Error detection and management -- [YEP 2.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-28---modifier-correctement-une-configuration-syst%C3%A8me----brouillon--manuel--working-) : Change a system configuration correctly -- [YEP 2.16](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-216---v%C3%A9rifier-la-disponibilit%C3%A9-des-d%C3%A9pendances-sur-arm-x86-et-x64----valid%C3%A9--manuel--official-) : Check dependency availability on ARM, x86 and x64 +- *[YEP 2.16](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-216---v%C3%A9rifier-la-disponibilit%C3%A9-des-d%C3%A9pendances-sur-arm-x86-et-x64----valid%C3%A9--manuel--official-) : Check dependency availability on ARM, x86 and x64* - [YEP 2.18.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2185---ajouter-la-tuile-yunohost-pour-naviguer-facilement-entre-les-applications----valid%C3%A9--manuel--official-) : Add the YunoHost tile to easily navigate between applications -- [YEP 3.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-34---isoler-lapp----brouillon--manuel--official-) : Isolate app +- [YEP 4.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-41---lier-au-ldap----valid%C3%A9--manuel--official-) : Link to ldap +- [YEP 4.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-42---lier-lauthentification-au-sso----valid%C3%A9--manuel--official-) : Bind authentication to sso - [YEP 4.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-45---utiliser-les-hooks----valid%C3%A9--manuel--optional-) : Use hooks If an application is not available on an architecture, and it is impossible to circumvent this limitation reasonably, this limitation must be indicated in the REDME and taken into account in the installation script. The installation of the application on an unsupported architecture must be stopped before modifying the filesystem. @@ -175,32 +167,13 @@ If an application is not available on an architecture, and it is impossible to c YEP to be respected to reach level 9: -- [YEP 2.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-210---configurer-les-logs-de-lapplication----brouillon--manuel--working-) : Configure application logs -- [YEP 2.11](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-211---utiliser-une-variable-plut%C3%B4t-que-lapp-id-directement---valid%C3%A9--manuel--official-) : Use a variable rather than the app id directly -- [YEP 2.13](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-213---traduire-le-package-en-anglais----brouillon--manuel--official-) : Translate the package into English - [YEP 2.14](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-214---remplir-correctement-un-fichier-de-conf----brouillon--manuel--official-) : Fill a conf file correctly - [YEP 2.17](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-217---prendre-en-compte-la-version-dorigine-lors-des-mises-%C3%A0-jour----valid%C3%A9--manuel--official-) : Take into account the original version during updates +- [YEP 3.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-34---isoler-lapp----brouillon--manuel--official-) : Isolate app - [YEP 4.2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-421---d%C3%A9connexion----valid%C3%A9--manuel--official-) : Logout - ### Level 10 **The application is considered perfect.** This ultimate level for an application can only be reached after an in-depth study of the package and by the validation of the Apps group. - - -## How to request the integration of an application in the official list? - -Before requesting an application for inclusion in the official list, you must commit to maintaining the application over time, or find someone who will commit to doing so. -An official application must be regularly updated and follow packaging recommendations as closely as possible. - -To be eligible to join the official list, the application must have reached at least level 6 and must be free software. - -If all these requirements are met, you can create a pull request on the official list or make a request on the forum. -From then on, the package will be checked by Apps group members and the decision to include it in the list of official applications will be discussed by the group. -Hopefully the application will join the official YunoHost applications. - - - - From af0259ac820fa41b97a58029fc59d0ca19fb5fab Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Wed, 20 Feb 2019 17:03:16 +0100 Subject: [PATCH 52/94] Modify level for fr --- packaging_apps_levels_fr.md | 60 +++++++++++++------------------------ 1 file changed, 20 insertions(+), 40 deletions(-) diff --git a/packaging_apps_levels_fr.md b/packaging_apps_levels_fr.md index 42643c6b..40fa4521 100644 --- a/packaging_apps_levels_fr.md +++ b/packaging_apps_levels_fr.md @@ -23,22 +23,22 @@ L'application s'installe et se désinstalle correctement dans toutes les configu L'application peut être mise à jour. **Niveau 4** -L'application utilise directement les utilisateurs YunoHost et permet l'identification unique à partir du portail YunoHost. +L'application peut-être sauvegardée et restaurée. **Niveau 5** Le code du package d'application respecte certaines règles de syntaxe. **Niveau 6** -L'application peut-être sauvegardée et restaurée. +Le package d'application est dans l'organisation YunoHost-Apps. **Niveau 7** Le package d'application passe avec succès l'ensemble des tests d'intégrité. **Niveau 8** -L'application respecte un ensemble de recommandations avancées améliorant sa qualité générale. +Le package d'application respecte toute les recommendations de packaging d'apps. C'est une app de très bonne qualité. **Niveau 9** -L'application respecte toutes les recommandations. C'est un package d'excellente qualité. +Le package d'application respecte des recommandations de packaging supérieures. Non disponible pour le moment. **Niveau 10** Le package d'application est jugé parfait ! @@ -91,15 +91,11 @@ YEP à respecter pour atteindre le niveau 3: - [YEP 2.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-23---sauvegarder-les-r%C3%A9ponses-lors-de-linstallation---valid%C3%A9--manuel--working-) : Sauvegarder les réponses lors de l'installation ### Niveau 4 -**L'application prend en charge ldap et HTTP AUTH** -L'application gère ses utilisateurs directement à partir de la [base ldap de YunoHost](https://github.com/YunoHost/SSOwat/blob/366dd6c4438e6550f7438c36893690b628340185/config.lua#L50-L53) et permet la connexion unifiée en utilisant l'[authentification HTTP](https://fr.wikipedia.org/wiki/Authentification_HTTP) depuis le SSO. - -*Si l'application n'est pas capable de prendre en charge un annuaire ldap ou l'authentification HTTP, ce niveau peut être ignoré.* -*Il faut toutefois être en mesure de justifier de cette impossibilité* +**L'application peut-être sauvegardée et restaurée sans erreur sur la même machine ou une autre.** YEP à respecter pour atteindre le niveau 4: -- *[YEP 4.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-41---lier-au-ldap----valid%C3%A9--manuel--official-) : Lier au ldap* -- *[YEP 4.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-42---lier-lauthentification-au-sso----valid%C3%A9--manuel--official-) : Lier l'authentification au sso* +- *[YEP 4.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-43---fournir-un-script-de-sauvegarde-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Fournir un script de sauvegarde YunoHost fonctionnel* +- *[YEP 4.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-44---fournir-un-script-de-restauration-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Fournir un script de restauration YunoHost fonctionnel* ### Niveau 5 **L'application ne présente aucune erreur dans [Package linter](https://github.com/YunoHost/package_linter).** @@ -107,17 +103,17 @@ YEP à respecter pour atteindre le niveau 4: YEP à respecter pour atteindre le niveau 5: - *[YEP 1.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-13---indiquer-la-licence-associ%C3%A9e-au-paquet---valid%C3%A9--auto--working-) : Indiquer la licence associée au paquet* -- [YEP 2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-21---respecter-le-format-du-manifeste---valid%C3%A9--auto--inprogress-) : Respecter le format du manifeste +- *[YEP 2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-21---respecter-le-format-du-manifeste---valid%C3%A9--auto--inprogress-) : Respecter le format du manifeste* - [YEP 2.12](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-212---utiliser-les-commandes-pratiques-helpers---valid%C3%A9--auto--official-) : Utiliser les commandes pratiques (helpers) - [YEP 2.18.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2181---lancer-le-script-dinstallation-dune-webapp-correctement----valid%C3%A9--manuel--working-) : Lancer le script d'installation d'une webapp correctement ### Niveau 6 -**L'application peut-être sauvegardée et restaurée sans erreur sur la même machine ou une autre.** +**Le package d'application est dans l'organisation YunoHost-Apps.** YEP à respecter pour atteindre le niveau 6: - [YEP 1.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-14---informer-sur-lintention-de-maintenir-un-paquet----brouillon--manuel--working-) : Informer sur l'intention de maintenir un paquet - [YEP 1.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-16---se-tenir-inform%C3%A9-sur-l%C3%A9volution-du-packaging-dapps---valid%C3%A9--manuel--official-) : Se tenir informé sur l'évolution du packaging d'apps -- [YEP 1.7](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-17---ajouter-lapp-%C3%A0-lorganisation-yunohost-apps---valid%C3%A9--manuel--official-) : Ajouter l'app à l'[organisation YunoHost-Apps](https://github.com/YunoHost-Apps) +- *[YEP 1.7](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-17---ajouter-lapp-%C3%A0-lorganisation-yunohost-apps---valid%C3%A9--manuel--official-) : Ajouter l'app à l'[organisation YunoHost-Apps](https://github.com/YunoHost-Apps)* - [YEP 1.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-18---publier-des-demandes-de-test---valid%C3%A9--manuel--official-) : Publier des demandes de test - [YEP 1.9](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-19---documenter-lapp---valid%C3%A9--auto--official-) : Documenter l'app - [YEP 1.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-110---garder-un-historique-de-version-propre----brouillon--manuel--official-) : Garder un historique de version propre @@ -125,28 +121,28 @@ YEP à respecter pour atteindre le niveau 6: - [YEP 3.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-33---faciliter-le-contr%C3%B4le-de-lint%C3%A9grit%C3%A9-des-sources----brouillon--manuel--official-) : Faciliter le contrôle de l'intégrité des sources - [YEP 3.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-35---suivre-les-recommendations-de-la-documentation-de-lapp----valid%C3%A9--manuel--official-) : Suivre les recommandations de la documentation de l'app - [YEP 3.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-36---mettre-%C3%A0-jour-les-versions-contenant-des-cve----draft--manuel--official-) : Mettre à jour les versions contenant des CVE -- *[YEP 4.3](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-43---fournir-un-script-de-sauvegarde-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Fournir un script de sauvegarde YunoHost fonctionnel* -- *[YEP 4.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-44---fournir-un-script-de-restauration-yunohost-fonctionnel----valid%C3%A9--auto--official-) : Fournir un script de restauration YunoHost fonctionnel* - -**Si une app atteint le niveau 6, elle peut prétendre à rejoindre les applications officielles.** ### Niveau 7 **L'application ne présente aucune erreur dans [Package check](https://github.com/YunoHost/package_check).** En considérant le maximum de tests possibles pour l'application. YEP à respecter pour atteindre le niveau 7: +- [YEP 2.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-24---d%C3%A9tecter-et-g%C3%A9rer-les-erreurs---brouillon--manuel--working-) : Détecter et gérer les erreurs - [YEP 2.6](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-26---annuler-laction-si-les-valeurs-dentr%C3%A9es-sont-incorrectes----valid%C3%A9--manuel--working-) : Annuler l'action si les valeurs d'entrées sont incorrectes +- [YEP 2.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-28---modifier-correctement-une-configuration-syst%C3%A8me----brouillon--manuel--working-) : Modifier correctement une configuration système +- [YEP 2.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-210---configurer-les-logs-de-lapplication----brouillon--manuel--working-) : Configurer les logs de l'application +- [YEP 2.11](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-211---utiliser-une-variable-plut%C3%B4t-que-lapp-id-directement---valid%C3%A9--manuel--official-) : Utiliser une variable plutôt que l'app id directement +- [YEP 2.13](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-213---traduire-le-package-en-anglais----brouillon--manuel--official-) : Traduire le package en anglais - [YEP 3.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-32---ouvrir-un-port-correctement----brouillon--manuel--working-) : Ouvrir un port correctement ### Niveau 8 -**L'application respecte toutes les YEP recommandées.** +**Le package d'application respecte toute les recommendations de packaging d'apps. C'est une app de très bonne qualité.** YEP à respecter pour atteindre le niveau 8: -- [YEP 2.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-24---d%C3%A9tecter-et-g%C3%A9rer-les-erreurs---brouillon--manuel--working-) : Détecter et gérer les erreurs -- [YEP 2.8](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-28---modifier-correctement-une-configuration-syst%C3%A8me----brouillon--manuel--working-) : Modifier correctement une configuration système -- [YEP 2.16](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-216---v%C3%A9rifier-la-disponibilit%C3%A9-des-d%C3%A9pendances-sur-arm-x86-et-x64----valid%C3%A9--manuel--official-) : Vérifier la disponibilité des dépendances sur ARM, x86 et x64 +- *[YEP 2.16](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-216---v%C3%A9rifier-la-disponibilit%C3%A9-des-d%C3%A9pendances-sur-arm-x86-et-x64----valid%C3%A9--manuel--official-) : Vérifier la disponibilité des dépendances sur ARM, x86 et x64* - [YEP 2.18.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2185---ajouter-la-tuile-yunohost-pour-naviguer-facilement-entre-les-applications----valid%C3%A9--manuel--official-) : Ajouter la tuile YunoHost pour naviguer facilement entre les applications -- [YEP 3.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-34---isoler-lapp----brouillon--manuel--official-) : Isoler l'app +- [YEP 4.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-41---lier-au-ldap----valid%C3%A9--manuel--official-) : Lier au ldap +- [YEP 4.2](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-42---lier-lauthentification-au-sso----valid%C3%A9--manuel--official-) : Lier l'authentification au sso - [YEP 4.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-45---utiliser-les-hooks----valid%C3%A9--manuel--optional-) : Utiliser les hooks *Si une application n'est pas disponible sur une architecture, et qu'il est impossible de contourner cette limitation raisonnablement, cette limitation doit être indiquée dans le readme et prise en compte dans le script d'installation. L'installation de l'application sur une architecture non supportée doit être stoppée avant de modifier les fichiers.* @@ -155,27 +151,11 @@ YEP à respecter pour atteindre le niveau 8: **L'application respecte toutes les YEP optionnelles.** YEP à respecter pour atteindre le niveau 9: -- [YEP 2.10](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-210---configurer-les-logs-de-lapplication----brouillon--manuel--working-) : Configurer les logs de l'application -- [YEP 2.11](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-211---utiliser-une-variable-plut%C3%B4t-que-lapp-id-directement---valid%C3%A9--manuel--official-) : Utiliser une variable plutôt que l'app id directement -- [YEP 2.13](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-213---traduire-le-package-en-anglais----brouillon--manuel--official-) : Traduire le package en anglais - [YEP 2.14](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-214---remplir-correctement-un-fichier-de-conf----brouillon--manuel--official-) : Remplir correctement un fichier de conf - [YEP 2.17](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-217---prendre-en-compte-la-version-dorigine-lors-des-mises-%C3%A0-jour----valid%C3%A9--manuel--official-) : Prendre en compte la version d'origine lors des mises à jour +- [YEP 3.4](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-34---isoler-lapp----brouillon--manuel--official-) : Isoler l'app - [YEP 4.2.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-421---d%C3%A9connexion----valid%C3%A9--manuel--official-) : Déconnexion ### Niveau 10 **L'application est jugée parfaite !** Ce niveau ultime pour une application ne peux être atteint que suite à étude approfondie du package et par la validation du groupe Apps. - - -## Comment demander l'intégration d'une application dans la liste officielle ? - -Avant de demander l'intégration d'une application dans la liste officielle, vous devez vous engager à maintenir l'application sur la durée, ou trouver quelqu'un qui s'engage à le faire. -Une application officielle doit être régulièrement mise à jour et suivre au mieux les recommandations de packaging. - -Pour prétendre à rejoindre la liste officielle, l'application doit avoir atteint au moins le niveau 6 et doit être un logiciel libre. - -Si tout ces prérequis sont satisfaits, vous pouvez créer une pull request sur la liste officielle ou faire une demande sur le forum. -Dés lors, le package sera vérifié par les membres du groupe Apps et la décision de l'inclure dans la liste des applications officielles sera débattue par le groupe. -Si tout va bien l'application rejoindra les applications officielles de YunoHost. - - From eed06b8b841a5884cd8d220222c2fcf91f10d8d7 Mon Sep 17 00:00:00 2001 From: Eauchat <34686393+eauchat@users.noreply.github.com> Date: Wed, 20 Feb 2019 23:38:45 +0100 Subject: [PATCH 53/94] Corrected link to certificate page of the doc I assume the link was supposed to point to the "certificate" ("certificates" doesn't exist) documentation page. No? --- domains.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains.md b/domains.md index 04a404c1..382b6833 100644 --- a/domains.md +++ b/domains.md @@ -19,7 +19,7 @@ YunoHost can generate a recommended DNS configuration for each domain, including SSL/HTTPS certificates ---------------------- -Another important aspect of domain configuration is the SSL/HTTPS certificate. YunoHost is integrated with Let's Encrypt, so once your server is correctly reachable from anybody on the internet through the domain name, the administrator can request a Let's Encrypt certificate. See the documentation about [certificates](certificates) for more information. +Another important aspect of domain configuration is the SSL/HTTPS certificate. YunoHost is integrated with Let's Encrypt, so once your server is correctly reachable from anybody on the internet through the domain name, the administrator can request a Let's Encrypt certificate. See the documentation about [certificates](certificate) for more information. Subpaths vs. individual domains per apps ---------------------------------------- From a90dc5c8a34f6b05345e76c6bd2ab751cc6aa63c Mon Sep 17 00:00:00 2001 From: Eauchat <34686393+eauchat@users.noreply.github.com> Date: Wed, 20 Feb 2019 23:41:10 +0100 Subject: [PATCH 54/94] Corrected link to certificates documentation page --- domains_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains_fr.md b/domains_fr.md index 102153ef..ba88d743 100644 --- a/domains_fr.md +++ b/domains_fr.md @@ -19,7 +19,7 @@ YunoHost peut générer une configuration DNS recommandée pour chaque domaine, Certificats SSL/HTTPS ---------------------- -Un autre aspect important de la configuration des domaines est le certificat SSL/HTTPS. YunoHost est intégré avec Let's Encrypt, de sorte qu'une fois que votre serveur est correctement accessible depuis n'importe qui sur Internet via le nom de domaine, l'administrateur peut demander l'installation d'un certificat Let's Encrypt. Voir la documentation sur les [certificats](certificats) pour plus d'informations. +Un autre aspect important de la configuration des domaines est le certificat SSL/HTTPS. YunoHost est intégré avec Let's Encrypt, de sorte qu'une fois que votre serveur est correctement accessible depuis n'importe qui sur Internet via le nom de domaine, l'administrateur peut demander l'installation d'un certificat Let's Encrypt. Voir la documentation sur les [certificats](certificat) pour plus d'informations. Sous-chemins vs. domaines individuels par application ----------------------------------------------------- From 8a287bf51a164f9ecb94f3c2452421d3f65856ef Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 20 Feb 2019 23:52:28 +0100 Subject: [PATCH 55/94] Update domains_fr.md --- domains_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains_fr.md b/domains_fr.md index ba88d743..bd9d1a91 100644 --- a/domains_fr.md +++ b/domains_fr.md @@ -19,7 +19,7 @@ YunoHost peut générer une configuration DNS recommandée pour chaque domaine, Certificats SSL/HTTPS ---------------------- -Un autre aspect important de la configuration des domaines est le certificat SSL/HTTPS. YunoHost est intégré avec Let's Encrypt, de sorte qu'une fois que votre serveur est correctement accessible depuis n'importe qui sur Internet via le nom de domaine, l'administrateur peut demander l'installation d'un certificat Let's Encrypt. Voir la documentation sur les [certificats](certificat) pour plus d'informations. +Un autre aspect important de la configuration des domaines est le certificat SSL/HTTPS. YunoHost est intégré avec Let's Encrypt, de sorte qu'une fois que votre serveur est correctement accessible depuis n'importe qui sur Internet via le nom de domaine, l'administrateur peut demander l'installation d'un certificat Let's Encrypt. Voir la documentation sur les [certificats](certificate_fr) pour plus d'informations. Sous-chemins vs. domaines individuels par application ----------------------------------------------------- From f49cbfa39802fad798e030e99a51512eba2294d4 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Thu, 21 Feb 2019 12:15:38 +0000 Subject: [PATCH 56/94] add if your archive isnt restoring during the postinstall --- backup.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/backup.md b/backup.md index 3bfbe45e..228d7f8e 100644 --- a/backup.md +++ b/backup.md @@ -105,6 +105,12 @@ yunohost backup restore Note: Don't start the postinstall step. Decline invite when doing installation via `bash`/`wget`. +Note: If your archive isn't in /home/yunohost.backup/archives, you cant specify where it is : + +```bash +yunohost backup restore /path/to/ +``` + To go futher ------------ From b06499952aa69a79934b471aa8f916bf93f3b930 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 21 Feb 2019 13:17:26 +0100 Subject: [PATCH 57/94] Update backup.md --- backup.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/backup.md b/backup.md index 228d7f8e..322c1cf2 100644 --- a/backup.md +++ b/backup.md @@ -102,10 +102,7 @@ One specific feature is the ability to restore a full archive *instead* of the p yunohost backup restore ``` -Note: Don't start the postinstall step. Decline invite when doing installation -via `bash`/`wget`. - -Note: If your archive isn't in /home/yunohost.backup/archives, you cant specify where it is : +Note: If your archive isn't in /home/yunohost.backup/archives, you can specify where it is like this : ```bash yunohost backup restore /path/to/ From 701baaf57705770670a8e2e88453a5f02efa17fa Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Thu, 21 Feb 2019 13:51:52 +0100 Subject: [PATCH 58/94] Propagate note about backup to french doc --- backup.md | 4 ++-- backup_fr.md | 10 ++++++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/backup.md b/backup.md index 322c1cf2..0ba09f01 100644 --- a/backup.md +++ b/backup.md @@ -96,13 +96,13 @@ To restore an app, the domain on which it was installed should already be config #### Restoring during the postinstall -One specific feature is the ability to restore a full archive *instead* of the postinstall step. This makes it useful when you want to reinstall a system entirely from an existing backup. To be able to do this, you will need to upload the archive on the server and place it in `/home/yunohost.backup/archives`. Then, instead of `yunohost tools postinstall` you can run: +One specific feature is the ability to restore a full archive *instead* of the postinstall step. This makes it useful when you want to reinstall a system entirely from an existing backup. To be able to do this, you will need to upload the archive on the server and place it in `/home/yunohost.backup/archives`. Then, **instead of** `yunohost tools postinstall` you can run: ```bash yunohost backup restore ``` -Note: If your archive isn't in /home/yunohost.backup/archives, you can specify where it is like this : +Note: If your archive isn't in `/home/yunohost.backup/archives`, you can specify where it is like this : ```bash yunohost backup restore /path/to/ diff --git a/backup_fr.md b/backup_fr.md index efd613d9..4c86ffcb 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -98,13 +98,19 @@ Pour restaurer une application, le domaine sur laquelle elle est installée doit Une fonctionnalité particulière est la possibilité de restaurer une archive entière *à la place* de faire la post-installation. Ceci est utile pour réinstaller un système entièrement à partir d'une sauvegarde existante. Pour faire cela, il vous faudra d'abord téléverser l'archive sur le serveur et la placer dans `/home/yunohost.backup/archives`. -Ensuite, à la place de `yunohost tools postinstall`; réalisez la restauration de l'archive téléversée par cette ligne de commande avec le nom de l'archive (sans le `.tar.gz`) : +Ensuite, **à la place de** `yunohost tools postinstall`, réalisez la restauration de l'archive téléversée par cette ligne de commande avec le nom de l'archive (sans le `.tar.gz`) : ```bash yunohost backup restore ``` -NB: Ne surtout pas engager la 'Post-Installation' , refuser l'invitation lors de l'installation via `bash`/`wget`. +Note: si votre archive n'est pas dans `/home/yunohost.backup/archives`, vous pouvez spécifier où elle se trouve comme ceci : + +```bash +yunohost backup restore /path/to/ +``` + + Pour aller plus loin -------------------- From 48e43dcb15cc8eb04b01563e8e79a42c747347e4 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Thu, 21 Feb 2019 20:07:20 +0000 Subject: [PATCH 59/94] Maj Apps-specific configuration --- backup.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backup.md b/backup.md index 0ba09f01..968fe465 100644 --- a/backup.md +++ b/backup.md @@ -54,7 +54,12 @@ For more informations and options about backup creation, consult `yunohost backu #### Apps-specific configuration -Some apps such as Nextcloud may be related to a large quantity of data which are not backuped by default. This practice is referred to "backing up only the core" (of the app). However it's possible to enable the backup of all data of this app with `yunohost app setting nextcloud backup_core_only -v ''`. Be careful though that your archive might get huge if there's too much data to be backuped... +Some apps such as Nextcloud may be related to a large quantity of data. If you want you can backup the app without the user data. This practice is referred to "backing up only the core" (of the app). + +To enable the backup of all data of this app, you can use `yunohost app setting nextcloud backup_core_only -v ''`. This command add `backup_core_only:` in `etc/yunohost/apps/nextcloud/settings.yml`. Be careful though that your archive might get huge if there's too much data to be backuped... + +To diseable the backup of all data, you can use `yunohost app setting nextcloud backup_core_only -v '1'`. This command add `backup_core_only: '1'` in `etc/yunohost/apps/nextcloud/settings.yml`. Be careful though that mean you will have to backup user data yourself. But doing so, you will be able to do incremental or differential backups of this large amount of data (which is not an option provided by yunohost yet). + Downloading and uploading backups --------------------------------- From 8760c9eb30c686fe2a32bdf92a6c7aec4c443fec Mon Sep 17 00:00:00 2001 From: Gofannon <17145502+Gofannon@users.noreply.github.com> Date: Fri, 22 Feb 2019 00:12:09 +0100 Subject: [PATCH 60/94] typo --- backup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup.md b/backup.md index 968fe465..4c30ce44 100644 --- a/backup.md +++ b/backup.md @@ -58,7 +58,7 @@ Some apps such as Nextcloud may be related to a large quantity of data. If you w To enable the backup of all data of this app, you can use `yunohost app setting nextcloud backup_core_only -v ''`. This command add `backup_core_only:` in `etc/yunohost/apps/nextcloud/settings.yml`. Be careful though that your archive might get huge if there's too much data to be backuped... -To diseable the backup of all data, you can use `yunohost app setting nextcloud backup_core_only -v '1'`. This command add `backup_core_only: '1'` in `etc/yunohost/apps/nextcloud/settings.yml`. Be careful though that mean you will have to backup user data yourself. But doing so, you will be able to do incremental or differential backups of this large amount of data (which is not an option provided by yunohost yet). +To disable the backup of all data, you can use `yunohost app setting nextcloud backup_core_only -v '1'`. This command add `backup_core_only: '1'` in `etc/yunohost/apps/nextcloud/settings.yml`. Be careful though that mean you will have to backup user data yourself. But doing so, you will be able to do incremental or differential backups of this large amount of data (which is not an option provided by yunohost yet). Downloading and uploading backups From 756be136cde75f717b466680c089adafeb1ed573 Mon Sep 17 00:00:00 2001 From: toitoinebzh Date: Fri, 22 Feb 2019 23:10:52 +0100 Subject: [PATCH 61/94] PluXml french and english documentation --- app_pluxml.md | 23 +++++++++++++++++++++++ app_pluxml_fr.md | 23 +++++++++++++++++++++++ images/PluXml_logo.png | Bin 0 -> 12497 bytes images/PluXml_screenshot.jpg | Bin 0 -> 45831 bytes 4 files changed, 46 insertions(+) create mode 100644 app_pluxml.md create mode 100644 app_pluxml_fr.md create mode 100644 images/PluXml_logo.png create mode 100644 images/PluXml_screenshot.jpg diff --git a/app_pluxml.md b/app_pluxml.md new file mode 100644 index 00000000..543fb523 --- /dev/null +++ b/app_pluxml.md @@ -0,0 +1,23 @@ +# PluXml + +![PluXml_logo](images/PluXml_logo.png) + +PluXml is a blog/CMS storing data in XML and not in a SQL database. + +## Aperçu + +![PluXml_screenshot](images/PluXml_screenshot.jpg) + +## Plugins et thèmes + +Plugins and themes should respectively be installed in the following folders : `/var/www/pluxml/plugins`, `/var/www/pluxml/themes`. + +## Backup + +To restore your blog, you should keep a copy of the folder `/var/www/pluxml/data`. It is recommended to do this backup before any upgrade. + +## Link + +PluXml : https://www.pluxml.org/ +Documentation : https://wiki.pluxml.org/ +Forum : https://forum.pluxml.org/ \ No newline at end of file diff --git a/app_pluxml_fr.md b/app_pluxml_fr.md new file mode 100644 index 00000000..4cd94e10 --- /dev/null +++ b/app_pluxml_fr.md @@ -0,0 +1,23 @@ +# PluXml + +![PluXml_logo](images/PluXml_logo.png) + +PluXml est un moteur de blog/CMS stockant ces données en XML et ne nécessitant pas de base de données SQL. + +## Aperçu + +![PluXml_screenshot](images/PluXml_screenshot.jpg) + +## Plugins et thèmes + +Les plugins et thèmes doivent être installés manuellement respectivement dans les dossiers `/var/www/pluxml/plugins` et `/var/www/pluxml/themes`. + +## Sauvegarde + +Pour sauvegarder votre blog, il est nécessaire de réaliser une copie du dossier `/var/www/pluxml/data`. Cette procédure de sauvegarde est également recommandée avant toute mise à jour de l'application. + +## Liens + +PluXml : https://www.pluxml.org/ +Documentation : https://wiki.pluxml.org/ +Forum : https://forum.pluxml.org/ \ No newline at end of file diff --git a/images/PluXml_logo.png b/images/PluXml_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ccb4d96af17ed4d22b4cea2be55c9107da37ef15 GIT binary patch literal 12497 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 WlZ95NdEoCTASlVJ%hkyM!v7yWC#9PJ literal 0 HcmV?d00001 diff --git a/images/PluXml_screenshot.jpg b/images/PluXml_screenshot.jpg new file mode 100644 index 0000000000000000000000000000000000000000..8fa52febb8c029cd7808090e90b9dd1ae42b74c2 GIT binary patch literal 45831 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 z Date: Tue, 26 Feb 2019 17:43:30 +0100 Subject: [PATCH 62/94] Add YEP 1.12 - Follow example_ynh --- packaging_apps_guidelines.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packaging_apps_guidelines.md b/packaging_apps_guidelines.md index 19ee3aa0..d0d3cab6 100644 --- a/packaging_apps_guidelines.md +++ b/packaging_apps_guidelines.md @@ -32,6 +32,7 @@ Each YEP is associated with: | YEP 1.9 | Document the app | validated | AUTO | OFFICIAL (6) | | YEP 1.10 | Keep a clean version history | draft | manual | OFFICIAL (6) | | YEP 1.11 | Add app to [YunoHost bugtracker](https://github.com/YunoHost/issues/issues) | draft | manual | OFFICIAL (NA) | +| YEP 1.12 | Follow the template from [example_ynh](https://github.com/YunoHost/example_ynh) | draft | manual | OFFICIAL (8) | | | | | | | | ** YEP 2 ** | ** Stabilize an app ** | ** Status ** | ** Test ** | ** Level ** | | YEP 2.1 | Respect the manifest format | validated | Home | INPROGRESS (5) | @@ -209,6 +210,13 @@ There is also README.md, which must and can contain: #### YEP 1.11 ##### Add app to [YunoHost bugtracker](https://github.com/YunoHost/issues/issues) | draft | manual | OFFICIAL | +#### YEP 1.12 +##### Follow the template from [example_ynh](https://github.com/YunoHost/example_ynh) | draft | manual | OFFICIAL | +In order to facilitate the work of the community regarding a package, it has to follow the template shown by the example app. +This will help other packagers to read, modified and debug the package. Also, it will help to prolong the life of the package by giving it a standard template that other packagers will be able to quickly understand in case a package become orphan. +As well, a package should not use exotic or uselessly complicated code if it's not really needed. If so, this part of the code should be clearly documented. +Keep your code as easy as possible, keep everything a script needs directly into it. Do not move functions in another file. Keep it simple and efficient. + ### YEP 2 #### Stabilize an app #### YEP 2.1 From 7037b54fc67afbded7774e463d2a0d7fa9a8c13d Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Tue, 26 Feb 2019 17:46:13 +0100 Subject: [PATCH 63/94] Update packaging_apps_guidelines_fr.md --- packaging_apps_guidelines_fr.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packaging_apps_guidelines_fr.md b/packaging_apps_guidelines_fr.md index 4874d410..2298b5ce 100644 --- a/packaging_apps_guidelines_fr.md +++ b/packaging_apps_guidelines_fr.md @@ -32,6 +32,7 @@ Chaque YEP est associée à : | YEP 1.9 | Documenter l'app | validé | AUTO | OFFICIAL (6) | | YEP 1.10 | Garder un historique de version propre | brouillon | manuel | OFFICIAL (6) | | YEP 1.11 | Ajouter l'app au [bugtracker YunoHost](https://github.com/yunohost/issues/issues) | brouillon | manuel | OFFICIAL (NA) | +| YEP 1.12 | Suivre le modèle de [example_ynh](https://github.com/YunoHost/example_ynh) | brouillon | manuel | OFFICIAL (8) | | | | | | | | **YEP 2** | **Stabiliser une app** | **Statut** | **Test** | **Niveau** | | YEP 2.1 | Respecter le format du manifeste | validé | auto | INPROGRESS (5) | @@ -210,6 +211,13 @@ Il y a également le README.md, ce dernier doit et peut contenir : #### YEP 1.11 ##### Ajouter l'app au [bugtracker YunoHost](https://github.com/yunohost/issues/issues) | brouillon | manuel | OFFICIAL | +#### YEP 1.12 +##### Suivre le modèle de [example_ynh](https://github.com/YunoHost/example_ynh) | brouillon | manuel | OFFICIAL | +Afin de faciliter le travail de la communauté concernant un package, il doit suivre le modèle montré par l'application d'exemple. +Cela aidera les autres packagers à lire, modifier et débugger le paquet. De plus, cela aidera à prolonger la durée de vie du package en lui donnant un modèle standard que les autres packagers seront en mesure de comprendre rapidement au cas où un package deviendrait orphelin. +De plus, un package ne devrait pas utiliser de code exotique ou inutilement compliqué si ce n'est pas vraiment nécessaire. Le cas échéant, cette partie du code devrait être clairement documentée. +Gardez votre code aussi simple que possible, gardez tout ce dont un script a besoin directement dedans. Ne déplacez pas les fonctions dans un autre fichier. Restez simple et efficace. + ### YEP 2 #### Stabiliser une app #### YEP 2.1 From 65e314f5e4e885be51aa9e1762da5d17bdf583e4 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Wed, 27 Feb 2019 14:00:26 +0000 Subject: [PATCH 64/94] Cloud torrent added --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index 7721cc6a..ef010731 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -31,6 +31,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [cgit](http://git.zx2c4.com/cgit/about) - [CheckUp](https://sourcegraph.github.io/checkup) - [CiviCRM](https://civicrm.org) +- [Cloud torrent](https://github.com/jpillora/cloud-torrent) - [Cockpit](http://cockpit-project.org/) - [Commafeed](https://github.com/Athou/commafeed) - [Converse.js](https://conversejs.org) From f1af528ed901d57a588976004065d391e0d07beb Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Wed, 27 Feb 2019 16:40:55 +0100 Subject: [PATCH 65/94] Add YEP 1.12 for level 8 --- packaging_apps_levels.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packaging_apps_levels.md b/packaging_apps_levels.md index ebb9e3e9..d6351047 100644 --- a/packaging_apps_levels.md +++ b/packaging_apps_levels.md @@ -153,6 +153,7 @@ YEP à respecter pour atteindre le niveau 7: **The application package respects all packaging recommendations. This is a high quality app.** YEP to be respected to reach level 8: +- [YEP 1.12](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-112) : Follow the template from example_ynh - *[YEP 2.16](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-216---v%C3%A9rifier-la-disponibilit%C3%A9-des-d%C3%A9pendances-sur-arm-x86-et-x64----valid%C3%A9--manuel--official-) : Check dependency availability on ARM, x86 and x64* - [YEP 2.18.5](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-2185---ajouter-la-tuile-yunohost-pour-naviguer-facilement-entre-les-applications----valid%C3%A9--manuel--official-) : Add the YunoHost tile to easily navigate between applications - [YEP 4.1](https://github.com/YunoHost/doc/blob/master/packaging_apps_guidelines_fr.md#yep-41---lier-au-ldap----valid%C3%A9--manuel--official-) : Link to ldap From 6422688da0e04b815ebb906e5c3bcb25f441f3ba Mon Sep 17 00:00:00 2001 From: Yunobot Date: Thu, 28 Feb 2019 20:25:21 +0000 Subject: [PATCH 66/94] Added the page in German --- docs_de.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 docs_de.md diff --git a/docs_de.md b/docs_de.md new file mode 100644 index 00000000..98d46124 --- /dev/null +++ b/docs_de.md @@ -0,0 +1,33 @@ +#Documentation + +

+Die YunoHost Dokumentation ist in 3 Bereiche aufgeteilt: +

+ +
+ +
+ Benutzerhandbuch +

Über die tägliche Nutzung des Servers und Anleitungen zur Konfiguration des Clients.

+
+ +
+ Handbuch für Administratoren +

Befasst sich mit den die Installationsschritten und der Verwaltung von Server und Apps.

+
+ +
+ Handbuch für Mitwirkende +

Alles, was du über uns und unsere Art zu arbeiten wissen musst.

+
+ +
+ +* Das Projektleben: + * [Häufig gestellte Fragen](/faq_en) + * [Projektorganisation](/project_organization) + * [Blog](https://forum.yunohost.org/c/announcement) + * [Forum](https://forum.yunohost.org) + * [Chaträume](/chat_rooms_en) + * [Kommunikation](/communication_en) + * [Support / Hilfe](/help) From 326d7be30bd9449456a9869723bb49df6898d8df Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 1 Mar 2019 01:18:51 +0100 Subject: [PATCH 67/94] Gajim also supposedly works on Windows --- XMPP.md | 2 +- XMPP_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/XMPP.md b/XMPP.md index 8fda18f7..a3d818a6 100644 --- a/XMPP.md +++ b/XMPP.md @@ -20,7 +20,7 @@ There are several web client built with social network features : You can also use a desktop client such as : - [Pidgin](http://pidgin.im/) (multiplatform), -- [Gajim](http://gajim.org/) (Linux), +- [Gajim](http://gajim.org/) (Linux, Windows), - [Dino](https://dino.im) (Linux), - [Thunderbird](https://www.thundebird.net/) (multiplatform), - [Jitsi](http://jitsi.org/) (multiplatform) diff --git a/XMPP_fr.md b/XMPP_fr.md index 9578f9b1..f1e663b0 100644 --- a/XMPP_fr.md +++ b/XMPP_fr.md @@ -20,7 +20,7 @@ Il existe des clients web orientés réseau social, comme : Vous pouvez également utiliser un client desktop comme - [Pidgin](http://pidgin.im/) (multiplateforme), -- [Gajim](http://gajim.org/index.fr.html) (Linux), +- [Gajim](http://gajim.org/index.fr.html) (Linux, Windows), - [Dino](https://dino.im) (Linux), - [Thunderbird](https://www.mozilla.org/fr/thunderbird/) (multiplateforme), - [Jitsi](http://jitsi.org/) (multiplateforme) From 70adb20dddc70f2ebadeeb5064651c7211d12276 Mon Sep 17 00:00:00 2001 From: Creanimo Date: Fri, 1 Mar 2019 14:52:25 +0100 Subject: [PATCH 68/94] Create faq_de.md --- faq_de.md | 110 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 faq_de.md diff --git a/faq_de.md b/faq_de.md new file mode 100644 index 00000000..ae618ec7 --- /dev/null +++ b/faq_de.md @@ -0,0 +1,110 @@ +# Häufig gestellte Fragen + +#### Unter welcher Lizenz wird YunoHost angeboten ? + +YunoHost stehen unter der freien GNU AGPL v.3 Lizenz. + +YunoHost basiert auf Debian, also auch auf Lizenzen von Debian Bestandteilen. + +Die Anwendungen und Applikations-Pakete stehen unter ihren jeweiligen, eigenen Lizenzen. + + +#### Was ist das Ziel von YunoHost ? + +Wir glauben, dass Dezentralisierung sowie Kontrolle und Verantwortung über die eigenen Daten und Dienste ein wichtiger Bestandteil einer freien und demokratischen Gesellschaft ist. + +Das YunoHost Projekt zielt darauf ab, eigenverantwortliches Hosting zu demokratisieren. + +Wir bieten eine Software an, die es für jeden möglichst einfach machen soll, einen eigenen Server zu betreiben und zu verwalten - mit einem minimalen Aufwand an Wissen und Zeit. + + +#### Aber was *macht* YunoHost überhaupt ? + +YunoHost könnte einen Distribution oder ein Betriebssystem genannt werden, aber es ist eigentlich "nur" eine Ebene, die über Debian betrieben wird und die meiste, schwierige Arbeit für Sie übernimmt. + +Zum Beispiel, wenn Sie Wordpress installieren möchten, müssten Sie einige Befehle eintippen, um Benutzer zu generieren, einen Webserver einrichten, einen SQL Server einrichten, das Wordpress Archiv herunterladen, entpacken, den Webserver kofigurieren, die SQL Datenbank konfigurieren und schließlich Wordpress einrichten. YunoHost übernimmt all das für Sie, zähmt das technische Chaos und "tippt alle Befehle für Sie", sodass Sie sich auf das konzentrieren können, was wirklich wichtig ist. + +Mehr Informationen finden Sie [hier](whatsyunohost) ! + + +#### Kann ich meine eigene, persönliche Internetseite mit YunoHost betreiben ? + +Ja ! Werfen Sie einen Blick auf die [Custom Web app](https://github.com/YunoHost-Apps/my_webapp_ynh). +Dort erhalten Sie ein "leeres Gefäß" : nach der Installation, laden Sie einfach Ihre Dateien and den jeweiligen Ort hoch (via SSH/SCP or SFTP). PHP und eine SQL Datenbank steht Ihnen bei Bedarf zur Verfügung. + + +#### Kann ich viele voneinander unabhängige Internetseiten mit unterschiedlichen Domain-Namen betreiben ? + +Ja ! YunoHost ermöglicht das Anlegen mehrere Benutzer und Domain-Namen. Manche Apllikationen wie *WordPress* oder *Web App Multi Custom* sind mehrinstanzenfähig und können mehrmals installiert werden. + + +#### Wieso kann ich Anwendungen nicht über die IP-Adresse erreichen ? + +Die [SSO](https://github.com/Kloadut/SSOwat/) (single sign-on) kann Benutzer nicht richtig authentifizieren, wenn sie auf den Server nur über die IP zugreifen. Wenn Sie keine Möglichkeit haben, die DNS korrekt zu konfigurieren, können Sie als temporäre Notlösung [die `Hosts` Datei (letztes §)](dns_local_network_en) auf Ihrem Computer modifizieren. + + +#### Was ist das Geschäftsmodell von YunoHost ? + +Momentan wird YunoHost nur von Freiwiligen betrieben, die in ihrer Freizeit an dem Projekt arbeiten. Im Grunde ist bisher kein Geld im Spiel (abgesehen von Serverkosten oder Stickern :P). + +Considering that a few contributors are investing a large amount of time in the +project, we are thinking about ways to make the project sustainable. + +This could be achieved via donations, public fundings, and a few contributors +have professional activities related to YunoHost. + + +#### Kann ich für das Projekt spenden ? + +Ja, das können Sie ! YunoHost braucht Geld, um die Server und Domain-Namen zu bezahlen. Wir möchten außerdem erreichen, dass die Mitwirken weiterhin zum Projekt beitragen können und sich nicht nach anderen Jobs umschauen müssen. + +Sie können [auf Liberapay spenden](https://liberapay.com/yunohost). + +Wenn Ihnen das möglich ist, können Sie auch gerne Sachspenden leisten (ein Teil unserer Infrastruktur ist auf Server von Dritten angewiesen). + + +#### Wie kann ich zum Projekt beitragen ? + +Es gibt viele Wege [zum Projekt beizutragen](contribute) :). + +Zörern Sie nicht, mit uns über Ihre Ideen zu sprechen! + +Es ist ein weit verbreitetes Missverständnis, dass Neulinge bei offenen Softwareprojekten nicht "ausreichend qualifiziert" sind. Wer ist das schon :) ? Was wirklich zählt, ist, [dass du magst, was du tust](https://www.youtube.com/watch?v=zIbR5TAz2xQ&t=113s), nett zu anderen Menschen bist, geduldig und starrköpfig gegenüber Maschinen und etwas freie Zeit hast. Abgesehen davon, ist einfach alles was du tun kannst schon mehr als genug! + + +#### Was sind YunoHost organisatorische Grundsätze ? + +Das beschreiben wir in [diesem Dokument](https://github.com/YunoHost/project-organization/blob/master/yunohost_project_organization.md) :). + + +#### Werdet ihr YunoHosts für [Lieblingsdistribution hier einfügen] portieren ? + +Die kurze Antwort: Nein. Wir haben nicht die Energie dafür und es ist eh irrelevant. + +Die lange Antwort +
+

Wenn Sie sich auf Distrowars einlassen oder denken, dass Dabian "schmutzig" ist, sind Sie nicht die Zielgruppe von YunoHost.

+ +

YunoHost soll nicht-technikversierte Leute ansprechen, die einfach nur wollen, dass ihr Server funktioniert. Debian hat seine Macken, aber es ist eines der bekanntesten und verbreitetesten Distributionen für Server. Es ist stabil. Die meiste self-hosted Software ist auf die eine oder andere Weise kompatibel mit Debian. Wer ein bisschen CLI auf seinem eigenen Ubuntu/Mint computer betreibt, kann sich selbst etwas zusammenhacken. Es gibt kein Killer-Feature in anderen Distributionen, dass es notwendig macht, dass YunoHost wechselt oder portiert wird.

+ +

Sollte Sie das nicht überzeugen, gibt es ausreichend andere Projekte für andere Distributionen mit einer anderen Philosophie dahinter.

+
+ + +#### Ich hab gesehen, wie das Packen von Apps funktioniert? Warum erfindet ihr das Rad neu und benutzt nicht [hier bevorzugtes Paketformat einfügen] ? + +Kurze Antwort: Machen wir nicht. + +Mittellange Antwort: Früher wurden die Apps in .deb gepackt. Was für ein Albtraum. Wir sind jetzt glücklicher ;). + +Die lange Antwort +
+ +

Das Ziel von YunoHost ist es das Packen einfacher zu machen. Von Anfang an wollten wir es so simple wie möglich halten, nach dem Motto: « wer die App manuell installieren kann, sollte die Schritte für die Installation und Deinstallation der Pakete ohne besonderes Training kopieren und einfügen können ». Bei Debian Paketen ist das nicht der Fall.

+ +

Es hat sich herausgestellt, dass das Packen für YunoHost einen leicht anderen Zweck erfüllt als das Erstellen klassischer Pakete wie .deb. Debian Pakete haben nur den Anspruch Dateien, Befehle, Programme und Dienste auf dem System zu installieren. Es bleibt oft an Ihnen diese richtig zu konfigurieren, weil es einfach keinen standardisierte Server-Konfiguration gibt. Typischerweise erfordern Web-Apps einen sehr hohen Konfigurationsaufwand, weil sie auf dem Webserver und einer Datenbank (und dem single sign-on) aufbauen.

+ +

YunoHost richtet Konzepte auf höchster Ebene ein (Apps, Domain-Namen, Benutzer, ...) und definiert eine standardmäßige Einrichtung (Nginx, Postfix, Metronome, SSOwat, ...) und kann deshalb die Konfiguration für den Anwender übernehmen.

+ +

Wenn Sie immernoch denken, man kann deb Pakete dahingehend hacken, berücksichtigen Sie bitte die vorherige Antwort.

+
From 7011f289633aebf0c50d4b5dfdcebb91ea88801c Mon Sep 17 00:00:00 2001 From: Creanimo Date: Fri, 1 Mar 2019 16:12:27 +0100 Subject: [PATCH 69/94] Added FAQ in German: faq_de.md --- faq_de.md | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) diff --git a/faq_de.md b/faq_de.md index ae618ec7..e5e10754 100644 --- a/faq_de.md +++ b/faq_de.md @@ -2,7 +2,7 @@ #### Unter welcher Lizenz wird YunoHost angeboten ? -YunoHost stehen unter der freien GNU AGPL v.3 Lizenz. +YunoHost steht unter der freien GNU AGPL v.3 Lizenz. YunoHost basiert auf Debian, also auch auf Lizenzen von Debian Bestandteilen. @@ -20,7 +20,7 @@ Wir bieten eine Software an, die es für jeden möglichst einfach machen soll, e #### Aber was *macht* YunoHost überhaupt ? -YunoHost könnte einen Distribution oder ein Betriebssystem genannt werden, aber es ist eigentlich "nur" eine Ebene, die über Debian betrieben wird und die meiste, schwierige Arbeit für Sie übernimmt. +YunoHost könnte einen Distribution oder ein Betriebssystem genannt werden, aber es ist eigentlich "nur" eine Ebene, die über Debian betrieben wird und welche die meiste, schwierige Arbeit für Sie übernimmt. Zum Beispiel, wenn Sie Wordpress installieren möchten, müssten Sie einige Befehle eintippen, um Benutzer zu generieren, einen Webserver einrichten, einen SQL Server einrichten, das Wordpress Archiv herunterladen, entpacken, den Webserver kofigurieren, die SQL Datenbank konfigurieren und schließlich Wordpress einrichten. YunoHost übernimmt all das für Sie, zähmt das technische Chaos und "tippt alle Befehle für Sie", sodass Sie sich auf das konzentrieren können, was wirklich wichtig ist. @@ -35,28 +35,26 @@ Dort erhalten Sie ein "leeres Gefäß" : nach der Installation, laden Sie einfac #### Kann ich viele voneinander unabhängige Internetseiten mit unterschiedlichen Domain-Namen betreiben ? -Ja ! YunoHost ermöglicht das Anlegen mehrere Benutzer und Domain-Namen. Manche Apllikationen wie *WordPress* oder *Web App Multi Custom* sind mehrinstanzenfähig und können mehrmals installiert werden. +Ja ! YunoHost ermöglicht das Anlegen mehrerer Benutzer und Domain-Namen. Manche Apllikationen wie *WordPress* oder *Web App Multi Custom* sind mehrinstanzenfähig und können mehrmals installiert werden. #### Wieso kann ich Anwendungen nicht über die IP-Adresse erreichen ? -Die [SSO](https://github.com/Kloadut/SSOwat/) (single sign-on) kann Benutzer nicht richtig authentifizieren, wenn sie auf den Server nur über die IP zugreifen. Wenn Sie keine Möglichkeit haben, die DNS korrekt zu konfigurieren, können Sie als temporäre Notlösung [die `Hosts` Datei (letztes §)](dns_local_network_en) auf Ihrem Computer modifizieren. +Die [SSO](https://github.com/Kloadut/SSOwat/) (Single Sign-on) Technik kann Benutzer nicht richtig authentifizieren, wenn sie auf den Server nur über die IP zugreifen. Wenn Sie keine Möglichkeit haben, die DNS korrekt zu konfigurieren, können Sie als temporäre Notlösung [die `Hosts` Datei (letztes §)](dns_local_network_en) auf Ihrem Computer modifizieren. #### Was ist das Geschäftsmodell von YunoHost ? Momentan wird YunoHost nur von Freiwiligen betrieben, die in ihrer Freizeit an dem Projekt arbeiten. Im Grunde ist bisher kein Geld im Spiel (abgesehen von Serverkosten oder Stickern :P). -Considering that a few contributors are investing a large amount of time in the -project, we are thinking about ways to make the project sustainable. +Vor dem Hintergrund, dass einige Mitwirkende sehr viel zeit in das Projekt investieren, überlegen wir derzeit, wie wir das Projekt langfristig tragfähig machen können. -This could be achieved via donations, public fundings, and a few contributors -have professional activities related to YunoHost. +Dies könnte durch Spenden oder öffentliche Gelder erricht werden. Einige Mitwirkenden arbeiten an professionellen Angeboten in Zusammenhang mit YunoHost. #### Kann ich für das Projekt spenden ? -Ja, das können Sie ! YunoHost braucht Geld, um die Server und Domain-Namen zu bezahlen. Wir möchten außerdem erreichen, dass die Mitwirken weiterhin zum Projekt beitragen können und sich nicht nach anderen Jobs umschauen müssen. +Ja, das können Sie ! YunoHost braucht Geld, um die Server und Domain-Namen zu bezahlen. Wir möchten außerdem erreichen, dass die Mitwirkenden weiterhin zum Projekt beitragen können und sich nicht nach anderen Jobs umschauen müssen. Sie können [auf Liberapay spenden](https://liberapay.com/yunohost). @@ -67,9 +65,9 @@ Wenn Ihnen das möglich ist, können Sie auch gerne Sachspenden leisten (ein Tei Es gibt viele Wege [zum Projekt beizutragen](contribute) :). -Zörern Sie nicht, mit uns über Ihre Ideen zu sprechen! +Zögern Sie nicht, mit uns über Ihre Ideen zu sprechen! -Es ist ein weit verbreitetes Missverständnis, dass Neulinge bei offenen Softwareprojekten nicht "ausreichend qualifiziert" sind. Wer ist das schon :) ? Was wirklich zählt, ist, [dass du magst, was du tust](https://www.youtube.com/watch?v=zIbR5TAz2xQ&t=113s), nett zu anderen Menschen bist, geduldig und starrköpfig gegenüber Maschinen und etwas freie Zeit hast. Abgesehen davon, ist einfach alles was du tun kannst schon mehr als genug! +Es ist ein weit verbreitetes Missverständnis, dass Neulinge bei offenen Softwareprojekten nicht "ausreichend qualifiziert" sind. Wer ist das schon :) ? Was wirklich zählt, ist, [dass Sie mögen, was Sie tun](https://www.youtube.com/watch?v=zIbR5TAz2xQ&t=113s), nett zu anderen Menschen, geduldig und starrköpfig gegenüber Maschinen sind und etwas freie Zeit haben. Abgesehen davon ist einfach alles was Sie tun können, schon mehr als genug! #### Was sind YunoHost organisatorische Grundsätze ? @@ -83,9 +81,9 @@ Die kurze Antwort: Nein. Wir haben nicht die Energie dafür und es ist eh irrele Die lange Antwort
-

Wenn Sie sich auf Distrowars einlassen oder denken, dass Dabian "schmutzig" ist, sind Sie nicht die Zielgruppe von YunoHost.

+

Wer sich auf Distrowars einlässt oder denkt, dass Dabian "schmutzig" sei, ist nicht die Zielgruppe von YunoHost.

-

YunoHost soll nicht-technikversierte Leute ansprechen, die einfach nur wollen, dass ihr Server funktioniert. Debian hat seine Macken, aber es ist eines der bekanntesten und verbreitetesten Distributionen für Server. Es ist stabil. Die meiste self-hosted Software ist auf die eine oder andere Weise kompatibel mit Debian. Wer ein bisschen CLI auf seinem eigenen Ubuntu/Mint computer betreibt, kann sich selbst etwas zusammenhacken. Es gibt kein Killer-Feature in anderen Distributionen, dass es notwendig macht, dass YunoHost wechselt oder portiert wird.

+

YunoHost soll nicht-technikversierte Leute ansprechen, die einfach nur wollen, dass ihr Server funktioniert. Debian hat seine Macken, aber es ist eine bekannte und verbreitete Distributionen für Server. Es ist stabil. Die meiste self-hosted Software ist auf die eine oder andere Weise kompatibel mit Debian. Wer ein bisschen CLI auf seinem eigenen Ubuntu/Mint Computer betreibt, kann sich selbst etwas zusammenhacken. Es gibt kein Killer-Feature in anderen Distributionen, das es notwendig macht, dass YunoHost wechselt oder portiert wird.

Sollte Sie das nicht überzeugen, gibt es ausreichend andere Projekte für andere Distributionen mit einer anderen Philosophie dahinter.

@@ -100,11 +98,11 @@ Mittellange Antwort: Früher wurden die Apps in .deb gepackt. Was für ein Albtr Die lange Antwort
-

Das Ziel von YunoHost ist es das Packen einfacher zu machen. Von Anfang an wollten wir es so simple wie möglich halten, nach dem Motto: « wer die App manuell installieren kann, sollte die Schritte für die Installation und Deinstallation der Pakete ohne besonderes Training kopieren und einfügen können ». Bei Debian Paketen ist das nicht der Fall.

+

Das Ziel von YunoHost ist es das Packen einfacher zu machen. Von Anfang an wollten wir es so simple wie möglich gestalten, nach dem Motto: « wer die App manuell installieren kann, sollte die Schritte für die Installation und Deinstallation der Pakete ohne besonderes Training kopieren und einfügen können ». Bei Debian Paketen ist das nicht der Fall.

Es hat sich herausgestellt, dass das Packen für YunoHost einen leicht anderen Zweck erfüllt als das Erstellen klassischer Pakete wie .deb. Debian Pakete haben nur den Anspruch Dateien, Befehle, Programme und Dienste auf dem System zu installieren. Es bleibt oft an Ihnen diese richtig zu konfigurieren, weil es einfach keinen standardisierte Server-Konfiguration gibt. Typischerweise erfordern Web-Apps einen sehr hohen Konfigurationsaufwand, weil sie auf dem Webserver und einer Datenbank (und dem single sign-on) aufbauen.

YunoHost richtet Konzepte auf höchster Ebene ein (Apps, Domain-Namen, Benutzer, ...) und definiert eine standardmäßige Einrichtung (Nginx, Postfix, Metronome, SSOwat, ...) und kann deshalb die Konfiguration für den Anwender übernehmen.

-

Wenn Sie immernoch denken, man kann deb Pakete dahingehend hacken, berücksichtigen Sie bitte die vorherige Antwort.

+

Wer trotzdem glaubt, man könne deb Pakete dazu bringen, all dies zu leisten, möge sich die vorherige Antwort anschauen.

From 14c2484066313537b5006f14c347b2da600b13ad Mon Sep 17 00:00:00 2001 From: toitoinebzh Date: Fri, 1 Mar 2019 19:33:06 +0100 Subject: [PATCH 70/94] Mediawiki documentation and some typos in Pluxml doc --- app_mediawiki.md | 15 +++++++++++++++ app_mediawiki_fr.md | 15 +++++++++++++++ app_pluxml.md | 4 ++-- images/Mediawiki_logo.png | Bin 0 -> 9993 bytes images/Mediawiki_screenshot.png | Bin 0 -> 188357 bytes 5 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 app_mediawiki.md create mode 100644 app_mediawiki_fr.md create mode 100644 images/Mediawiki_logo.png create mode 100644 images/Mediawiki_screenshot.png diff --git a/app_mediawiki.md b/app_mediawiki.md new file mode 100644 index 00000000..ae080898 --- /dev/null +++ b/app_mediawiki.md @@ -0,0 +1,15 @@ +# Mediawiki + +![Mediawiki](images/Mediawiki_logo.png) + +MediaWiki is a free and open source software wiki package written in PHP, originally for use on Wikipedia. + +## Overview + +![Mediawiki_screenshot](images/Mediawiki_screenshot.png) + +## Link + +Mediawiki : https://www.mediawiki.org/ +FAQ : https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ +Support Desk : https://www.mediawiki.org/wiki/Project:Support_desk \ No newline at end of file diff --git a/app_mediawiki_fr.md b/app_mediawiki_fr.md new file mode 100644 index 00000000..93e9c0e0 --- /dev/null +++ b/app_mediawiki_fr.md @@ -0,0 +1,15 @@ +# Mediawiki + +![Mediawiki](images/Mediawiki_logo.png) + +MediaWiki est un ensemble wiki à base de logiciels libres Open source, développé à l’origine pour Wikipédia. + +## Aperçu + +![Mediawiki_screenshot](images/Mediawiki_screenshot.png) + +## Liens + +Mediawiki : https://www.mediawiki.org/ +FAQ : https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ +Support Desk : https://www.mediawiki.org/wiki/Project:Support_desk \ No newline at end of file diff --git a/app_pluxml.md b/app_pluxml.md index 543fb523..66bc1056 100644 --- a/app_pluxml.md +++ b/app_pluxml.md @@ -4,11 +4,11 @@ PluXml is a blog/CMS storing data in XML and not in a SQL database. -## Aperçu +## Overview ![PluXml_screenshot](images/PluXml_screenshot.jpg) -## Plugins et thèmes +## Plugins and themes Plugins and themes should respectively be installed in the following folders : `/var/www/pluxml/plugins`, `/var/www/pluxml/themes`. diff --git a/images/Mediawiki_logo.png b/images/Mediawiki_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..f001f01e0431559a014c42b2cea5f51729bb850f GIT binary patch literal 9993 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�X%~7;)}KzhQB$rFgMqAw|%g;w|8XZiwkEi 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 T#S7V_00000NkvXXu0mjfv}I#( literal 0 HcmV?d00001 diff --git a/images/Mediawiki_screenshot.png b/images/Mediawiki_screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..489a5a4db2ea65b7a032aed929cab0c67189fbaf GIT binary patch literal 188357 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 Date: Fri, 1 Mar 2019 20:24:07 +0000 Subject: [PATCH 71/94] Added the page in German --- docs_de.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs_de.md b/docs_de.md index 98d46124..81462e37 100644 --- a/docs_de.md +++ b/docs_de.md @@ -13,7 +13,7 @@ Die YunoHost Dokumentation ist in 3 Bereiche aufgeteilt:
Handbuch für Administratoren -

Befasst sich mit den die Installationsschritten und der Verwaltung von Server und Apps.

+

Befasst sich mit den Installationsschritten und der Verwaltung von Server und Apps.

From e445a98802b26e62a70d4ffa7b0f9e3c8419892f Mon Sep 17 00:00:00 2001 From: Yunobot Date: Mon, 4 Mar 2019 14:42:46 +0000 Subject: [PATCH 72/94] =?UTF-8?q?La=20page=20de=20doc=20=C3=A9tait=20vide?= =?UTF-8?q?=20(=20de=20doc=20).=20J'y=20ai=20mis=20les=20bases.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app_spip_fr.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 app_spip_fr.md diff --git a/app_spip_fr.md b/app_spip_fr.md new file mode 100644 index 00000000..27e73733 --- /dev/null +++ b/app_spip_fr.md @@ -0,0 +1,24 @@ +#SPIP for YunoHost + +###SPIP c'est quoi ? +SPIP est un système de publication pour l’Internet qui s’attache particulièrement au fonctionnement collectif, au multilinguisme et à la facilité d’emploi. C’est un logiciel libre, distribué sous la licence GNU/GPL. Il peut ainsi être utilisé pour tout site Internet, qu’il soit associatif ou institutionnel, personnel ou marchand. + +Source : [spip.net](https://www.spip.net/fr_rubrique91.html) + +###Fonctionnalité de l'application pour Yunohost +* Installation de la base sans passer par le système d'installation +* Support multilingue +* Support LDAP + +####Installation +`$ sudo yunohost app install https://github.com/YunoHost-Apps/spip_ynh.git` + +####Mise à jour +`$ sudo yunohost app upgrade --verbose spip -u https://github.com/YunoHost-Apps/spip_ynh.git` + +####Utilisation +Accéder à l'administration du site en écrivant l'adresse suivante dans votre navigateur. + +https://www.domain.tld/spip/ecrire + +Faire une demande de "mot de passe oublié" pour changer votre mot de passe, vous recevez un email vous indiquant comment procéder au changement de mot de passe. From a496cdd1640aa214b0d8e20bc4d5792e0ebc3f22 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Mon, 4 Mar 2019 16:32:49 +0100 Subject: [PATCH 73/94] Misc formatting --- app_spip_fr.md | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/app_spip_fr.md b/app_spip_fr.md index 27e73733..b765947e 100644 --- a/app_spip_fr.md +++ b/app_spip_fr.md @@ -1,22 +1,31 @@ -#SPIP for YunoHost +# SPIP for YunoHost + +### SPIP c'est quoi ? -###SPIP c'est quoi ? SPIP est un système de publication pour l’Internet qui s’attache particulièrement au fonctionnement collectif, au multilinguisme et à la facilité d’emploi. C’est un logiciel libre, distribué sous la licence GNU/GPL. Il peut ainsi être utilisé pour tout site Internet, qu’il soit associatif ou institutionnel, personnel ou marchand. Source : [spip.net](https://www.spip.net/fr_rubrique91.html) -###Fonctionnalité de l'application pour Yunohost +### Fonctionnalité de l'application pour Yunohost + * Installation de la base sans passer par le système d'installation * Support multilingue * Support LDAP -####Installation -`$ sudo yunohost app install https://github.com/YunoHost-Apps/spip_ynh.git` +#### Installation -####Mise à jour -`$ sudo yunohost app upgrade --verbose spip -u https://github.com/YunoHost-Apps/spip_ynh.git` +```bash +$ sudo yunohost app install https://github.com/YunoHost-Apps/spip_ynh.git +``` + +#### Mise à jour + +``` +$ sudo yunohost app upgrade --verbose spip -u https://github.com/YunoHost-Apps/spip_ynh.git +``` + +#### Utilisation -####Utilisation Accéder à l'administration du site en écrivant l'adresse suivante dans votre navigateur. https://www.domain.tld/spip/ecrire From f496c026f247e13075939d2c0e7aaed180b92705 Mon Sep 17 00:00:00 2001 From: toitoinebzh Date: Mon, 4 Mar 2019 18:05:21 +0100 Subject: [PATCH 74/94] update wishlist --- apps_wishlist.md | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/apps_wishlist.md b/apps_wishlist.md index ef010731..d83c6c1c 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -11,7 +11,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [List of awesome Node.js projects](https://github.com/sqreen/awesome-nodejs-projects) - [List of SIP softwares/applications](https://en.wikipedia.org/wiki/List_of_SIP_software#Free_and_open-source_license) - [10er10](https://github.com/dready92/10er10) -- [Airsonic](https://github.com/airsonic/airsonic) - [Airtime](https://www.sourcefabric.org/en/airtime/) - [Ajenti](http://ajenti.org) - [aMule](https://github.com/amule-project/amule) @@ -21,10 +20,8 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Bitwarden](https://bitwarden.com/) - [Beehive](https://github.com/muesli/beehive) - [Blynk](https://github.com/blynkkk/blynk-library) -- [Bolt](http://bolt.cm) - [Bookstack](https://www.bookstackapp.com/) - [Browsepass](http://techualization.blogspot.de/2013/09/introducing-browsepass-keepass-on-web.html) -- [Calibre](https://manual.calibre-ebook.com/server.html) - [Caliopen](https://www.caliopen.org) - [Candy](https://candy-chat.github.io/candy) - [CardDavMate](https://www.inf-it.com/open-source/clients/carddavmate) @@ -43,11 +40,8 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Darkwire.io](https://github.com/seripap/darkwire.io) - [Deluge](http://deluge-torrent.org) (with WebUI) - [DirectoryLister](https://github.com/DirectoryLister/DirectoryLister) -- [Discourse](https://discourse.org) - [DNSchain](https://github.com/okTurtles/dnschain) -- [Domoticz](https://github.com/domoticz/domoticz) - [Drupal](https://www.drupal.org/) -- [Emby](https://emby.media) - [Emoncms](https://github.com/emoncms/emoncms) - [ERPnext](https://erpnext.com/download) - [Ethersheet](https://github.com/ethersheet-collective/EtherSheet) @@ -68,10 +62,8 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Goploader](https://github.com/Depado/goploader) - [Granary](https://github.com/snarfed/granary) - [Guacamole](http://guac-dev.org) -- [h5ai](http://larsjung.de/h5ai) - [HackMD CE](https://github.com/hackmdio/hackmd) - [Hackpad](https://github.com/dropbox/hackpad) -- [Headphones](https://github.com/rembo10/headphones) - [Hexo](https://hexo.io/) - [Hi Buddy](https://github.com/tOkeshu/hibuddy) (/!\ last update: 17 Feb 2015) - [Huginn](https://github.com/cantino/huginn) @@ -88,7 +80,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Jellyfin](https://github.com/jellyfin) - [JS Bin](http://jsbin.com/help/2-second-setup) - [Kaiwa](http://getkaiwa.com) -- [Keepass](http://keepass.info) - [Kin calendar](https://github.com/KinToday) - [Kinto](https://github.com/Kinto/formbuilder) - [Kiwix](http://www.kiwix.org/) Offline wikipedia @@ -96,7 +87,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Koel](http://koel.phanan.net) - [Kontalk](https://kontalk.org) - [Koozip](http://koozic.net) -- [Kresus](https://framagit.org/bnjbvr/kresus) - [KrISS feed](https://github.com/tontof/kriss_feed) - [Koken](http://koken.me) - [Kune](https://en.wikipedia.org/wiki/Kune_%28software%29) @@ -108,8 +98,8 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Loomio](https://www.loomio.org) - [MaidSafe](http://maidsafe.net) - [Mailpile](https://www.mailpile.is) -- [Matomo](https://matomo.org/) (formerly Piwik) - [MediaCrush](https://github.com/MediaCrush/MediaCrush) (/!\ last update: Jan 23, 2015) +- [microblog.pub](https://microblog.pub) - [MinigalNano](https://github.com/sebsauvage/MinigalNano) (/!\ last update: Jun 24, 2016) - [Mirakel](http://mirakel.azapps.de/taskwarrior.html) (/!\ SSL-Warning) - [Modoboa](http://modoboa.org) @@ -119,7 +109,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Nibbleblog](http://www.nibbleblog.com) - [Nuage](https://nuage.kerjean.me/login) - [ONLYOFFICE Document Server](http://helpcenter.onlyoffice.com/server/linux/document/linux-installation.aspx) (to be able to use ONLYOFFICE inside Nextcloud) -- [ONLYOFFICE](http://onlyoffice.org) - [OpenBazaar](https://openbazaar.org) - [openHAB](https://www.openhab.org/) - Smart home platform. - [OpenJabNab](https://github.com/OpenJabNab/OpenJabNab) (/!\ last update: Apr 30, 2016) @@ -135,7 +124,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Pico](http://picocms.org) - [Pix](http://pix.toile-libre.org) - [Playmaker](https://github.com/NoMore201/playmaker) -- [Pleroma](https://git.pleroma.social/pleroma/pleroma) - [Privoxy](http://www.privoxy.org) - [ProcessMaker](http://www.processmaker.com) - [PyLoad](https://github.com/pyload/pyload) @@ -144,7 +132,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [qBittorrent](https://github.com/qbittorrent/qBittorrent) - [racktables](http://racktables.org) - [Redmine](https://www.redmine.org) -- [remotestorage-server](https://remotestorage.io/) - [Request Tracker](https://bestpractical.com) - [Respawn 2.0](https://github.com/broncowdd/respawn) ( /!\ last update: 2015) - [Restya](http://restya.com) @@ -163,7 +150,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [StandardNotes](https://standardnotes.org) (a clean, simple, E2E-encrypted notes app) -- specifically, the server-side [StandardFile](https://standardfile.org) portion. - [Streama](https://github.com/dularion/streama) - [Streisand](https://github.com/jlund/streisand) -- [SVG-Edit](https://github.com/SVG-Edit/svgedit) - [Taiga](https://taiga.io) - [Tania](http://gettania.org/) - [Taskwarrior](https://taskwarrior.org) @@ -182,11 +168,9 @@ The following list is a compiled wishlist of applications that would be nice-to- - [WebTorrent](https://github.com/feross/webtorrent) - [Wisemapping](http://www.wisemapping.com) - [Xonotic](http://xonotic.org) -- [YellowCMS](https://datenstrom.se/yellow) - [YesWiki](https://yeswiki.net) - [ZeroTier](https://github.com/zerotier/ZeroTierOne) - [ZNC](http://wiki.znc.in/ZNC) - [Zone-project](https://github.com/descl/ZONE) - [Zoneminder](https://github.com/ZoneMinder/zoneminder) - [Zulip](https://zulipchat.com/) -- [microblog.pub](https://microblog.pub) From 59409e329edd4ccc84be1bcdad65a3b85b5116fa Mon Sep 17 00:00:00 2001 From: Yunobot Date: Wed, 6 Mar 2019 19:32:27 +0000 Subject: [PATCH 75/94] =?UTF-8?q?Correction=20de=20la=20commande=20pour=20?= =?UTF-8?q?modifier=20les=20propri=C3=A9t=C3=A9s=20d'un=20fichier.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backup_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup_fr.md b/backup_fr.md index 4c86ffcb..0bd60ce3 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -136,7 +136,7 @@ yunohost backup create --apps wordpress puis rendez-le exécutable : ```bash -chown +x /etc/cron.weekly/backup-wordpress +chmod +x /etc/cron.weekly/backup-wordpress ``` Soyez prudent à propos de ce que vous sauvegardez et de la fréquence : il vaut mieux éviter de se retrouver avec un disque saturé car vous avez voulu sauvegarder 30 Go de données tous les jours... From bf93017e7d9c9d9702d0ca047fe5a797fdb2510c Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Wed, 6 Mar 2019 20:38:32 +0100 Subject: [PATCH 76/94] Propagate previous fix to english page --- backup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backup.md b/backup.md index 0ba09f01..90815438 100644 --- a/backup.md +++ b/backup.md @@ -133,7 +133,7 @@ yunohost backup create --apps wordpress then make it executable : ```bash -chown +x /etc/cron.weekly/backup-wordpress +chmod +x /etc/cron.weekly/backup-wordpress ``` Be careful what you backup exactly and when : you don't want to end up with your whole disk space saturated because you backuped 30 Go of data every day. From 2b700e48a50b7ce9084fb128ba9adeb37997ea88 Mon Sep 17 00:00:00 2001 From: Jaxom99 Date: Fri, 8 Mar 2019 15:51:42 +0100 Subject: [PATCH 77/94] ajout liste non-free --- packaging_apps.md | 4 +++- packaging_apps_fr.md | 4 +++- packaging_apps_guidelines.md | 4 +++- packaging_apps_guidelines_fr.md | 6 ++++-- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/packaging_apps.md b/packaging_apps.md index c667d4a5..47733df3 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -118,9 +118,11 @@ This Python script checks: ### Publish and ask for testing your application * Publishing a [post on the Forum](https://forum.yunohost.org/) with the [`App integration` category](https://forum.yunohost.org/c/app-integration), to ask for testing and feedback on your application. -* Ask your application to be added to the [app repository](https://github.com/YunoHost/apps) to be displayed in the [non-official apps list](apps_en). Specify its progress state: `notworking`, `inprogress`, or `working`. +* If your application is released under free softare licence, ask your application to be added to the [app repository](https://github.com/YunoHost/apps) to be displayed in the [non-official apps list](apps_en). Otherwise you may find a non-official list to add you app to, easing the installation on Yunohost (non-existent yet). Specify its progress state: `notworking`, `inprogress`, or `working`. - Subscribe to the [Apps mailing list](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) to be informed about packaging evolution. ### Officalization of an application +**!! This section is obsolete as of 08/03/19** - The project's organization regarging this point is to be changed. + To become an official application, it must be tested well enough, be stable and should work on Debian Stretch 64 bits, 32 bits and ARM architectures. If you think those conditions are met, ask for [official integration](https://github.com/YunoHost/apps) of your application. diff --git a/packaging_apps_fr.md b/packaging_apps_fr.md index 30a4be72..b88e8f43 100644 --- a/packaging_apps_fr.md +++ b/packaging_apps_fr.md @@ -100,9 +100,11 @@ Il s’agit d’un script Python qui vérifie : ### Publiez et demandez des tests de votre application * Demandez des tests et des retours sur votre application en publiant un [post sur le Forum](https://forum.yunohost.org/) dans la [catégorie `App integration`](https://forum.yunohost.org/c/app-integration). -* Faire une demande d’ajout de votre application dans le [dépôt des applications](https://github.com/YunoHost/apps) afin qu’elle soit affichée dans [la liste des apps non officielles](apps_fr). Préciser également son état d’avancement : `notworking`, `inprogress` ou `working`. +* Si votre paquet et l'application qu'il contient sont sous licence libre, faites une demande d’ajout de votre application dans le [dépôt des applications](https://github.com/YunoHost/apps) afin qu’elle soit affichée dans [la liste des apps non officielles](apps_fr). Autrement, cherchez une liste non-officielle à laquelle vous rajouter (non-existante à ce jour), pour permettre son installation intégrée dans Yunohost. Préciser également son état d’avancement : `notworking`, `inprogress` ou `working`. - Inscrivez-vous à la [mailing list Apps](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) pour être tenu au courant des évolutions du packaging. ### Officialisation d’une application +**!! Section obsolète au 08/03/19** - Le fonctionnement du projet est en cours d'évolution sur ce point. + Pour qu’une application devienne officielle, elle doit être suffisamment testée, stable et fonctionner sous Debian Stretch 64 bits, 32 bits et ARM. Si ces conditions vous paraissent réunies, demandez l’[intégration officielle](https://github.com/YunoHost/apps) de votre application. diff --git a/packaging_apps_guidelines.md b/packaging_apps_guidelines.md index 19ee3aa0..7b962d87 100644 --- a/packaging_apps_guidelines.md +++ b/packaging_apps_guidelines.md @@ -112,7 +112,7 @@ These deposits have several functions: * indicate the state of operation of the packet; * indicate information about the support of a package. -For the `official.json` and` community.json` lists, registration is on [the git apps repository](https://github.com/YunoHost/apps). +For the `official.json` and` community.json` lists maintained by the project team, registration is on [the git apps repository](https://github.com/YunoHost/apps). Other non-official lists may exists (including those for non-free apps for example), see more about that in the [community forum](https//forum.yunohost.org). #### YEP 1.3 ##### Indicate the license associated with the package | draft | AUTO | WORKING | @@ -120,6 +120,8 @@ The license of the packet must be specified in a `LICENSE` file at the root of t The application lists official.json and community.json only accept packages with a free license, as well as the license for the contained application. Some free applications require non-free dependencies (example: mp3, drivers, etc.). In this case, you should add `&dep-non-free` to the acronym and if possible give details in the README.md of the package, in this case the integration will be accepted on a case-by-case basis. +**NB:** Packets not included in offical lists may still be installed: either manually with the URL to the packet, or in a more practical way using other lists (which remain to be created by the community). + In the future, YunoHost will probably display details about the license of the application. To achieve this, the acronym must be the one from this [list of licenses listed in the SPDX](https://spdx.org/licenses/) (if there are 2 acronyms, the one containing the version number). For consistency, the case must be respected. If the license is not present in the list, in this case it is necessary to indicate `free` or `non-free` depending on whether it is free or not and give the user the opportunity to inquire in the README .md (link, explanations, ...). diff --git a/packaging_apps_guidelines_fr.md b/packaging_apps_guidelines_fr.md index 4874d410..8ace2924 100644 --- a/packaging_apps_guidelines_fr.md +++ b/packaging_apps_guidelines_fr.md @@ -13,7 +13,7 @@ Ce document a pour but de lister les différentes bonnes pratiques concernant la Chaque bonne pratique est numérotée avec un numéro suffixé par les lettres YEP (YunoHost Enhancement Proposals), ceci afin de pouvoir y faire référence facilement dans les outils d'analyse automatique de paquet ([package checker](https://github.com/YunoHost/package_check), [package linter](https://github.com/YunoHost/package_linter)), mais également lors des revues de code. Chaque YEP est associée à : -* un statut indiquant si la règle a été validé ou si elle fait encore l'objet de discussion (brouillon, validé, refusé, obsolète) ; +* un statut indiquant si la règle a été validée ou si elle fait encore l'objet de discussion (brouillon, validé, refusé, obsolète) ; * une indication sur le type de test à mener (manuel ou auto si un outil automatique peut vérifier) ; * une indication du niveau d'app à partir duquel la règle est nécessaire (NOTWORKING, INPROGRESS, WORKING, OFFICIAL), certaines règles sont optionnelles ; @@ -113,7 +113,7 @@ Ces dépôts ont plusieurs fonctions : * indiquer l'état de fonctionnement du paquet ; * indiquer des informations sur le support d'un paquet. -Pour les listes `official.json` et `community.json`, l'inscription se fait sur [le dépôt git "apps"](https://github.com/YunoHost/apps). +Pour les listes `official.json` et `community.json` maintenues par l'équipe du projet Yunohost, l'inscription se fait sur [le dépôt git "apps"](https://github.com/YunoHost/apps). D'autres listes non-officielles (notamment celles incluant des applications non-libres) peuvent exister, se réferer au [Forum](https://forum.yunohost.org) de la communauté. #### YEP 1.3 ##### Indiquer la licence associée au paquet | brouillon | AUTO | WORKING | @@ -121,6 +121,8 @@ La licence du paquet est à indiquer dans un fichier `LICENSE` à la racine du p Les listes d'applications official.json et community.json n'acceptent que les paquets dont la licence est libre, de même pour la licence de l'application contenue. Certaines applications libres nécessitent des dépendances non-libres (exemple: mp3, drivers, etc.). Dans ce cas, il faut ajouter `&dep-non-free` à l'acronyme et si possible donner des précisions dans le README.md du paquet, l'intégration sera dans ce cas acceptée au cas par cas. +**NB :** Les paquets non-inclus dans les listes maintenues par le projet peuvent tout de même être installés : soit manuellement via le lien du paquet, soit de manière plus intégrée via des listes non-officielles (qui restent encore à créer par la communauté). + Dans le futur, YunoHost affichera sans doute des détails sur la licence de l'application. Pour y parvenir, l'acronyme doit être celui issu de cette [liste de licences répertoriées du SPDX](https://spdx.org/licenses/) (si il y a 2 acronymes, il faut prendre celui contenant le numéro de version). Pour plus de cohérence, la casse doit être respectée. Si la licence n'est pas présente dans la liste, dans ce cas il faut indiquer `free` ou `non-free` selon qu'elle est libre ou non et donner l'occasion à l'utilisateur de se renseigner dans le README.md (lien, explications, ...). From f2933b00887f395e5d569bf2ba9207b65e996448 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 8 Mar 2019 17:07:57 +0100 Subject: [PATCH 78/94] Rework wording / separate the note about nonfree app ? --- packaging_apps.md | 6 +++++- packaging_apps_fr.md | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/packaging_apps.md b/packaging_apps.md index 47733df3..03481fb4 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -116,13 +116,17 @@ This Python script checks: * that scripts exit well before modifing the system during verification. ### Publish and ask for testing your application + * Publishing a [post on the Forum](https://forum.yunohost.org/) with the [`App integration` category](https://forum.yunohost.org/c/app-integration), to ask for testing and feedback on your application. -* If your application is released under free softare licence, ask your application to be added to the [app repository](https://github.com/YunoHost/apps) to be displayed in the [non-official apps list](apps_en). Otherwise you may find a non-official list to add you app to, easing the installation on Yunohost (non-existent yet). Specify its progress state: `notworking`, `inprogress`, or `working`. +* If your application is released under a free software license, you may ask the YunoHost app team to integrate your application to the [app repository](https://github.com/YunoHost/apps) (c.f. also the [app list](apps_en)). You can add your application even if it is not stable or working yet : the current state can be specified to `notworking`, `inprogress`, or `working`. + +* If your application is *not* free software, then in the future, a non-official list might be created to handle them but is non-existent yet. - Subscribe to the [Apps mailing list](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) to be informed about packaging evolution. ### Officalization of an application + **!! This section is obsolete as of 08/03/19** - The project's organization regarging this point is to be changed. To become an official application, it must be tested well enough, be stable and should work on Debian Stretch 64 bits, 32 bits and ARM architectures. If you think those conditions are met, ask for [official integration](https://github.com/YunoHost/apps) of your application. diff --git a/packaging_apps_fr.md b/packaging_apps_fr.md index b88e8f43..78f6b8b8 100644 --- a/packaging_apps_fr.md +++ b/packaging_apps_fr.md @@ -98,13 +98,17 @@ Il s’agit d’un script Python qui vérifie : * que les scripts quittent bien avant de modifier le système lors de vérifications. ### Publiez et demandez des tests de votre application + * Demandez des tests et des retours sur votre application en publiant un [post sur le Forum](https://forum.yunohost.org/) dans la [catégorie `App integration`](https://forum.yunohost.org/c/app-integration). -* Si votre paquet et l'application qu'il contient sont sous licence libre, faites une demande d’ajout de votre application dans le [dépôt des applications](https://github.com/YunoHost/apps) afin qu’elle soit affichée dans [la liste des apps non officielles](apps_fr). Autrement, cherchez une liste non-officielle à laquelle vous rajouter (non-existante à ce jour), pour permettre son installation intégrée dans Yunohost. Préciser également son état d’avancement : `notworking`, `inprogress` ou `working`. +* Si votre paquet et l'application qu'il contient sont sous licence libre, faites une demande d’ajout de votre application dans le [dépôt des applications](https://github.com/YunoHost/apps) (voir aussi [la liste des apps](apps_fr)). Vous pouvez ajouter une application même si celle-ci n'est pour le moment pas fonctionelle : l'état d'avancement peut être `notworking`, `inprogress` ou `working`. + +* Si votre application n'est *pas* sous licence libre, il se peut qu'une liste non-officielle soit créée pour gérer ces applications. Ce n'est pour l'instant pas le cas. - Inscrivez-vous à la [mailing list Apps](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) pour être tenu au courant des évolutions du packaging. ### Officialisation d’une application + **!! Section obsolète au 08/03/19** - Le fonctionnement du projet est en cours d'évolution sur ce point. Pour qu’une application devienne officielle, elle doit être suffisamment testée, stable et fonctionner sous Debian Stretch 64 bits, 32 bits et ARM. Si ces conditions vous paraissent réunies, demandez l’[intégration officielle](https://github.com/YunoHost/apps) de votre application. From 1cc0b5f6688a802e81ebdc70d17df844b2283bd8 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 8 Mar 2019 17:08:20 +0100 Subject: [PATCH 79/94] This mailing list aint maintained anymore, probably want to remove it --- packaging_apps.md | 2 -- packaging_apps_fr.md | 2 -- 2 files changed, 4 deletions(-) diff --git a/packaging_apps.md b/packaging_apps.md index 03481fb4..7206849f 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -123,8 +123,6 @@ This Python script checks: * If your application is *not* free software, then in the future, a non-official list might be created to handle them but is non-existent yet. -- Subscribe to the [Apps mailing list](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) to be informed about packaging evolution. - ### Officalization of an application **!! This section is obsolete as of 08/03/19** - The project's organization regarging this point is to be changed. diff --git a/packaging_apps_fr.md b/packaging_apps_fr.md index 78f6b8b8..6105b88d 100644 --- a/packaging_apps_fr.md +++ b/packaging_apps_fr.md @@ -105,8 +105,6 @@ Il s’agit d’un script Python qui vérifie : * Si votre application n'est *pas* sous licence libre, il se peut qu'une liste non-officielle soit créée pour gérer ces applications. Ce n'est pour l'instant pas le cas. -- Inscrivez-vous à la [mailing list Apps](https://list.yunohost.org/cgi-bin/mailman/listinfo/apps) pour être tenu au courant des évolutions du packaging. - ### Officialisation d’une application **!! Section obsolète au 08/03/19** - Le fonctionnement du projet est en cours d'évolution sur ce point. From 5be8ec4a39932642f7e8638f7013d9335e7a8fa3 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 8 Mar 2019 17:12:59 +0100 Subject: [PATCH 80/94] Moar wording? --- packaging_apps_guidelines.md | 2 +- packaging_apps_guidelines_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packaging_apps_guidelines.md b/packaging_apps_guidelines.md index 7b962d87..7a8650f4 100644 --- a/packaging_apps_guidelines.md +++ b/packaging_apps_guidelines.md @@ -120,7 +120,7 @@ The license of the packet must be specified in a `LICENSE` file at the root of t The application lists official.json and community.json only accept packages with a free license, as well as the license for the contained application. Some free applications require non-free dependencies (example: mp3, drivers, etc.). In this case, you should add `&dep-non-free` to the acronym and if possible give details in the README.md of the package, in this case the integration will be accepted on a case-by-case basis. -**NB:** Packets not included in offical lists may still be installed: either manually with the URL to the packet, or in a more practical way using other lists (which remain to be created by the community). +**NB:** Apps not included in offical lists may still be installed: either manually with the URL to the app, or in a more practical way using non-official lists (which can be created and maintained by the community). In the future, YunoHost will probably display details about the license of the application. To achieve this, the acronym must be the one from this [list of licenses listed in the SPDX](https://spdx.org/licenses/) (if there are 2 acronyms, the one containing the version number). For consistency, the case must be respected. diff --git a/packaging_apps_guidelines_fr.md b/packaging_apps_guidelines_fr.md index 8ace2924..4a451e75 100644 --- a/packaging_apps_guidelines_fr.md +++ b/packaging_apps_guidelines_fr.md @@ -121,7 +121,7 @@ La licence du paquet est à indiquer dans un fichier `LICENSE` à la racine du p Les listes d'applications official.json et community.json n'acceptent que les paquets dont la licence est libre, de même pour la licence de l'application contenue. Certaines applications libres nécessitent des dépendances non-libres (exemple: mp3, drivers, etc.). Dans ce cas, il faut ajouter `&dep-non-free` à l'acronyme et si possible donner des précisions dans le README.md du paquet, l'intégration sera dans ce cas acceptée au cas par cas. -**NB :** Les paquets non-inclus dans les listes maintenues par le projet peuvent tout de même être installés : soit manuellement via le lien du paquet, soit de manière plus intégrée via des listes non-officielles (qui restent encore à créer par la communauté). +**NB :** Les applications non-présentes dans les listes maintenues par le projet peuvent tout de même être installées : soit manuellement via le lien de l'application, soit de manière plus intégrée via des listes non-officielles (qui peuvent être créées et maintenues par la communauté). Dans le futur, YunoHost affichera sans doute des détails sur la licence de l'application. Pour y parvenir, l'acronyme doit être celui issu de cette [liste de licences répertoriées du SPDX](https://spdx.org/licenses/) (si il y a 2 acronymes, il faut prendre celui contenant le numéro de version). Pour plus de cohérence, la casse doit être respectée. From 3c88e8bab375f137f59a69c1a4c2f1f70c22f994 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 8 Mar 2019 22:23:44 +0100 Subject: [PATCH 81/94] Propagate note to backup_fr (stolen from https://raw.githubusercontent.com/meganaze/doc/8e30c118f8bd95b0579c39bed28641ff50feeb5f/backup_fr.md ) --- backup_fr.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backup_fr.md b/backup_fr.md index 4c86ffcb..8159dfd8 100644 --- a/backup_fr.md +++ b/backup_fr.md @@ -54,7 +54,11 @@ Pour plus d'informations et d'options sur la création d'archives, consultez `yu #### Configuration spécifique à certaines apps -Certaines apps comme Nextcloud sont potentiellement rattachées à des quantités importantes de données, qui ne sont pas sauvegardées par défaut. Dans ce cas, on dit que l'app "sauvegarde uniquement le core" (de l'app). Néanmoins, il est possible d'activer la sauvegarde de toutes les données de cette application avec (dans le cas de Nextcloud) `yunohost app setting nextcloud backup_core_only -v ''`. Soyez prudent : en fonction des données stockées dans Nextcloud, il se peut que l'archive que vous obtenez ensuite devienne énorme... +Certaines apps comme Nextcloud sont potentiellement rattachées à des quantités importantes de données. Il est possible de ne pas les sauvegarder par défaut. Dans ce cas, on dit que l'app "sauvegarde uniquement le core" (de l'app). + +Pour activer la sauvegarde de toutes les données de cette application vous pouvez utiliser (dans le cas de Nextcloud) `yunohost app setting nextcloud backup_core_only -v ''`. Cette commande ajoute `backup_core_only` dans `/etc/yunohost/apps/nextcloud/settings.yml`. Soyez prudent : en fonction des données stockées dans Nextcloud, il se peut que l'archive que vous obtenez ensuite devienne énorme... + +Pour désactiver la sauvegarde de toutes les données de cette application vous pouvez utiliser (dans le cas de Nextcloud) `yunohost app setting nextcloud backup_core_only -v '1'`. Cette commande ajoute `backup_core_only: '1'` dans `/etc/yunohost/apps/nextcloud/settings.yml`. Soyez prudent : il vous faudra alors sauvegarder vous même les données des utilisateurs de nextcloud. Choisir ce type de sauvegarde vous permettra de mettre en place manuellement des sauvegardes incrémentielles ou différentielles (que yunohost ne permet pas encore de faire automatiquement). Télécharger et téléverser des sauvegardes ----------------------------------------- From 044d4f7d611297d2e1f8cdb5a74ab8b260374c8e Mon Sep 17 00:00:00 2001 From: JimboJoe Date: Sat, 9 Mar 2019 15:23:30 +0100 Subject: [PATCH 82/94] Update packaging_apps_guidelines.md Co-Authored-By: maniackcrudelis --- packaging_apps_guidelines.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packaging_apps_guidelines.md b/packaging_apps_guidelines.md index d0d3cab6..c017a1f3 100644 --- a/packaging_apps_guidelines.md +++ b/packaging_apps_guidelines.md @@ -213,7 +213,7 @@ There is also README.md, which must and can contain: #### YEP 1.12 ##### Follow the template from [example_ynh](https://github.com/YunoHost/example_ynh) | draft | manual | OFFICIAL | In order to facilitate the work of the community regarding a package, it has to follow the template shown by the example app. -This will help other packagers to read, modified and debug the package. Also, it will help to prolong the life of the package by giving it a standard template that other packagers will be able to quickly understand in case a package become orphan. +This will help other packagers to read, modify and debug the package. Also, it will help extend the life of the package by giving it a standard template that other packagers can quickly understand in the event that a package becomes orphaned. As well, a package should not use exotic or uselessly complicated code if it's not really needed. If so, this part of the code should be clearly documented. Keep your code as easy as possible, keep everything a script needs directly into it. Do not move functions in another file. Keep it simple and efficient. From 8542ec0a3554f7103c1e3ff90799fd44dc29898d Mon Sep 17 00:00:00 2001 From: Maniack Crudelis Date: Sun, 10 Mar 2019 00:37:25 +0100 Subject: [PATCH 83/94] Add doc about ci-apps-dev --- contributordoc.md | 3 ++- contributordoc_fr.md | 3 ++- packaging_apps.md | 5 +++++ packaging_apps_ci.md | 41 +++++++++++++++++++++++++++++++++++++++++ packaging_apps_ci_fr.md | 41 +++++++++++++++++++++++++++++++++++++++++ packaging_apps_fr.md | 5 +++++ 6 files changed, 96 insertions(+), 2 deletions(-) create mode 100644 packaging_apps_ci.md create mode 100644 packaging_apps_ci_fr.md diff --git a/contributordoc.md b/contributordoc.md index 9aeebe9e..55a9ca68 100644 --- a/contributordoc.md +++ b/contributordoc.md @@ -20,8 +20,9 @@ * [Package linter](https://github.com/YunoHost/package_linter) * [Package check](https://github.com/YunoHost/package_check) * [Applications levels](packaging_apps_levels_fr) - * [App Continuous Integration](https://ci-apps.yunohost.org/jenkins/) + * [App Continuous Integration](https://ci-apps.yunohost.org) * [App CI dashboard](https://dash.yunohost.org/appci/branch/stable) + * [App Continuous Integration for packagers](/packaging_apps_ci) * [YEP - YunoHost Enhancement Proposals](packaging_apps_guidelines_fr) * [Contributing to the YunoHost core](/dev) * [Setting up a dev environment with ynh-dev](https://github.com/YunoHost/ynh-dev/blob/master/README.md) diff --git a/contributordoc_fr.md b/contributordoc_fr.md index 7167b191..9e928bb1 100644 --- a/contributordoc_fr.md +++ b/contributordoc_fr.md @@ -20,8 +20,9 @@ * [Package linter](https://github.com/YunoHost/package_linter) * [Package check](https://github.com/YunoHost/package_check) * [Niveaux des applications](packaging_apps_levels_fr) - * [Intégration continue des apps](https://ci-apps.yunohost.org/jenkins/) + * [Intégration continue des apps](https://ci-apps.yunohost.org) * [Tableau de bord du CI des apps](https://dash.yunohost.org/appci/branch/stable) + * [Intégration continue pour packagers](/packaging_apps_ci) * [YEP - YunoHost Enhancement Proposals](packaging_apps_guidelines_fr) * [Contribuer à la partie "core" de YunoHost](/dev_fr) * [Déployer un environnement de dev avec ynh-dev](https://github.com/YunoHost/ynh-dev/blob/master/README.md) diff --git a/packaging_apps.md b/packaging_apps.md index c667d4a5..7b587671 100644 --- a/packaging_apps.md +++ b/packaging_apps.md @@ -115,6 +115,11 @@ This Python script checks: * that the manifest doesn't have syntax errors * that scripts exit well before modifing the system during verification. +### Continuous integration + +A continuous integration server is available for packagers who want to test their apps. +Continuous integration + ### Publish and ask for testing your application * Publishing a [post on the Forum](https://forum.yunohost.org/) with the [`App integration` category](https://forum.yunohost.org/c/app-integration), to ask for testing and feedback on your application. diff --git a/packaging_apps_ci.md b/packaging_apps_ci.md new file mode 100644 index 00000000..0167b354 --- /dev/null +++ b/packaging_apps_ci.md @@ -0,0 +1,41 @@ +# Continuous integration + +A continuous integration server is available for any packager willing to test an app with [Package_check](https://github.com/YunoHost/package_check). + +ci-apps-dev + +This server is free to use for any of you, you just need an account. +To do so, ask to a member of the Apps group on our [Applications chatroom](/chat_rooms) + +To create an account on this CI, you'll need two things: +- A name (To create an user and to give it a directory). +- A public ssh key (For your access to the server). + +When that's done, you'll be able to access the server and put your apps on it. +To connect to the server use: +```bash +ssh USER@ci-apps-dev.yunohost.org -i YOUR_PRIVATE_KEY +``` + +You will find an empty directory, ready to receive your apps. +As soon as you push an app into your directory, in a 5 minutes maximum delay, a new job will be created for this app and executed by the CI. +Each time you will update this app, a new test will be executed. + +However, to prevent any security issues, your ssh connection will be very limited. +You can only use `sftp` or `rsync` to copy your apps into that directory. `Git` isn't available, neither most of the usual bash commands. +To ease your usage of this CI, a small script can be used to copy your apps to your directory. + +Copy this [script](https://raw.githubusercontent.com/YunoHost/CI_package_check/master/dev_CI/Send%20CI%20dev.sh) into your usual working directory and fill it with your info. + +--- + +# Other continuous integration servers + +For your information, here the list of all our continuous integration servers. +Those CI are automatic, you can't use them directly. They're working on their own. + +- [Official CI](https://ci-apps.yunohost.org): Our official CI, working on a x86-64 system. It is in charge of determining levels for all working apps. +- [ARM CI](https://ci-apps-arm.yunohost.org): This CI is working with multiple Raspberry-Pi, own by members of the YunoHost community. Tests are running on Raspberry-Pi to determine if apps are working on this architecture. +- [Unstable/Testing CI](https://ci-apps-unstable.yunohost.org): CI designed to run tests on the branches Unstable and Testing of YunoHost. Its purpose is to test those branches before an official release. +- [Jessie CI](https://ci-stretch.nohost.me): CI running on a Debian Jessie system. This CI determine is apps are still working with the previous version of Debian and YunoHost before the version 3. +- [HQ CI](https://ci-apps-hq.yunohost.org): **Incoming...** This CI runs automatic tests on branches of High Quality apps. Except the master branch, which is exclude from this CI, all branches added to a High Quality app will be added to this CI to be tested. diff --git a/packaging_apps_ci_fr.md b/packaging_apps_ci_fr.md new file mode 100644 index 00000000..67aeaabb --- /dev/null +++ b/packaging_apps_ci_fr.md @@ -0,0 +1,41 @@ +# Intégration continue + +Un serveur d'intégration continue est disponible pour tout packager souhaitant tester une application avec [Package_check](https://github.com/YunoHost/package_check). + +ci-apps-dev + +Ce serveur est libre d'accès pour chacun d'entre vous, vous avez juste besoin d'un compte. +Pour ce faire, demandez à un membre du groupe Apps sur notre [chatroom Applications](/chat_rooms) + +Pour créer un compte sur ce CI, vous aurez besoin de deux choses: +- Un nom (Pour créer un utilisateur et lui donner un répertoire). +- Une clé ssh publique (Pour votre accès au serveur). + +Une fois cela fait, vous pourrez accéder au serveur et y déposer vos applications. +Pour vous connecter au serveur, utilisez : +```bash +ssh USER@ci-apps-dev.yunohost.org -i YOUR_PRIVATE_KEY +``` + +Vous trouverez un répertoire vide, prêt à recevoir vos applications. +Dès que vous déposer une application dans votre répertoire, dans un délai maximum de 5 minutes, un nouveau job sera créé pour cette application et exécuté par le CI. +Chaque fois que vous mettrez à jour cette application, un nouveau test sera exécuté. + +Cependant, pour éviter tout problème de sécurité, votre connexion ssh sera très limitée. +Vous ne pouvez utiliser que `sftp` ou `rsync` pour copier vos applications dans ce répertoire. `Git` n'est pas disponible, ni la plupart des commandes bash habituelles. +Pour faciliter votre utilisation de ce CI, un petit script peut être utilisé pour copier vos applications dans votre répertoire. + +Copiez ce [script](https://raw.githubusercontent.com/YunoHost/CI_package_check/master/dev_CI/Send%20CI%20dev.sh) dans votre répertoire de travail habituel et indiquez vos informations. + +--- + +# Autres serveurs d'intégration continue + +Pour votre information, voici la liste de tous nos serveurs d'intégration continue. +Ces CI sont automatiques, vous ne pouvez pas les utiliser directement. Ils travaillent seuls. + +- [Official CI](https://ci-apps.yunohost.org): Notre CI officiel, travaillant sur un système x86-64. Il est chargé de déterminer les niveaux pour toutes les applications notées 'working'. +- [ARM CI](https://ci-apps-arm.yunohost.org): Ce CI travaille avec plusieurs Raspberry-Pi, appartenant à des membres de la communauté YunoHost. Les tests sont exécutés sur Raspberry-Pi pour déterminer si les applications fonctionnent sur cette architecture. +- [Unstable/Testing CI](https://ci-apps-unstable.yunohost.org): CI conçu pour effectuer des tests sur les branches Unstable et Testing de YunoHost. Son rôle est de tester ces branches avant une sortie officielle. +- [Jessie CI](https://ci-stretch.nohost.me): CI fonctionnant sur un système Debian Jessie. Ce CI détermine si les applications fonctionnent toujours avec la version précédente de Debian et YunoHost avant la version 3. +- [HQ CI](https://ci-apps-hq.yunohost.org): **A venir...** Ce CI exécute des tests automatiques sur les branches des applications High Quality. A l'exception de la branche master, qui est exclue de ce CI, toutes les branches ajoutées à une application High Quality seront ajoutées à ce CI pour être testées. diff --git a/packaging_apps_fr.md b/packaging_apps_fr.md index 30a4be72..7bf5196a 100644 --- a/packaging_apps_fr.md +++ b/packaging_apps_fr.md @@ -97,6 +97,11 @@ Il s’agit d’un script Python qui vérifie : * que le manifeste ne comporte pas d’erreur de syntaxe * que les scripts quittent bien avant de modifier le système lors de vérifications. +### Intégration continue + +Un serveur d'intégration continue est a disposition des packagers désirant tester leurs applications. +Intégration continue + ### Publiez et demandez des tests de votre application * Demandez des tests et des retours sur votre application en publiant un [post sur le Forum](https://forum.yunohost.org/) dans la [catégorie `App integration`](https://forum.yunohost.org/c/app-integration). From 52484892830e2ad0a609f59488c7a0a4c12261a1 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sun, 10 Mar 2019 10:18:40 +0000 Subject: [PATCH 84/94] Added Gotify an independent notification solution --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index d83c6c1c..d352198c 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -61,6 +61,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Gollum](https://github.com/gollum/gollum) - [Goploader](https://github.com/Depado/goploader) - [Granary](https://github.com/snarfed/granary) +- [Gotify](https://gotify.net) - [Guacamole](http://guac-dev.org) - [HackMD CE](https://github.com/hackmdio/hackmd) - [Hackpad](https://github.com/dropbox/hackpad) From e5988052fb5974c65848a7afe33f5a4c7e022e58 Mon Sep 17 00:00:00 2001 From: Moul Date: Sun, 10 Mar 2019 17:53:28 +0100 Subject: [PATCH 85/94] App wishlist: add EteSync --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index d83c6c1c..b65d9365 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -44,6 +44,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Drupal](https://www.drupal.org/) - [Emoncms](https://github.com/emoncms/emoncms) - [ERPnext](https://erpnext.com/download) +- [EteSync](https://www.etesync.com/) - [Ethersheet](https://github.com/ethersheet-collective/EtherSheet) - [Fail2web](https://github.com/Sean-Der/fail2web) - [Ferment](https://github.com/mmckegg/ferment) From b22fccd73aa5407842c5832216d9a0ca9c4753a9 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sun, 10 Mar 2019 22:24:26 +0100 Subject: [PATCH 86/94] Revert "[Anonymous contrib] Added Gotify an independent notification solution " --- apps_wishlist.md | 1 - 1 file changed, 1 deletion(-) diff --git a/apps_wishlist.md b/apps_wishlist.md index cf4708b8..b65d9365 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -62,7 +62,6 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Gollum](https://github.com/gollum/gollum) - [Goploader](https://github.com/Depado/goploader) - [Granary](https://github.com/snarfed/granary) -- [Gotify](https://gotify.net) - [Guacamole](http://guac-dev.org) - [HackMD CE](https://github.com/hackmdio/hackmd) - [Hackpad](https://github.com/dropbox/hackpad) From 7d0b1db6249911610a7b7cb8c0f388a73f732870 Mon Sep 17 00:00:00 2001 From: mingus52 <48453811+mingus52@users.noreply.github.com> Date: Mon, 11 Mar 2019 20:16:17 +0100 Subject: [PATCH 87/94] Update apps_wishlist.md add passbolt proposition for yunohost --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index b65d9365..da541fa0 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -116,6 +116,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [OX Open-Xchange](https://www.open-xchange.com) Linux groupware solution - [Paperless](https://github.com/danielquinn/paperless) - [Paperwork](http://paperwork.rocks) +- [Passbolt] (https://www.passbolt.com) - [pdfy](https://github.com/joepie91/pdfy) (/!\ last update: Aug 5, 2014) - [Pelias](https://github.com/pelias/pelias) - [Peps](https://github.com/MLstate/PEPS) From 146337bd8aae9372769ac4c7b1405b1e7fdf0162 Mon Sep 17 00:00:00 2001 From: Yunobot Date: Mon, 11 Mar 2019 22:27:15 +0000 Subject: [PATCH 88/94] Added Habitica to the list --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index da541fa0..2f2969c2 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -63,6 +63,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Goploader](https://github.com/Depado/goploader) - [Granary](https://github.com/snarfed/granary) - [Guacamole](http://guac-dev.org) +- [Habitica](https://habitica.com/) - [HackMD CE](https://github.com/hackmdio/hackmd) - [Hackpad](https://github.com/dropbox/hackpad) - [Hexo](https://hexo.io/) From 4e31bedb2a8839d794fb2ae324e50d5858135b58 Mon Sep 17 00:00:00 2001 From: Moul Date: Tue, 12 Mar 2019 21:15:15 +0100 Subject: [PATCH 89/94] =?UTF-8?q?App=20wishlist:=20add=20ProtonMail?= =?UTF-8?q?=E2=80=99s=20WebClient?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps_wishlist.md | 1 + 1 file changed, 1 insertion(+) diff --git a/apps_wishlist.md b/apps_wishlist.md index 2f2969c2..6f61f05a 100644 --- a/apps_wishlist.md +++ b/apps_wishlist.md @@ -129,6 +129,7 @@ The following list is a compiled wishlist of applications that would be nice-to- - [Playmaker](https://github.com/NoMore201/playmaker) - [Privoxy](http://www.privoxy.org) - [ProcessMaker](http://www.processmaker.com) +- [ProtonMail’s WebClient](https://github.com/ProtonMail/WebClient) - [PyLoad](https://github.com/pyload/pyload) - [Pulse](https://source.ind.ie/project/pulse-swift/tree/master) - [Pump.io](http://pump.io) From 1f1b873ba0b6b27ffdf43055367012b0acbe0afc Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sun, 17 Mar 2019 14:13:04 +0000 Subject: [PATCH 90/94] typo's --- external_storage.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external_storage.md b/external_storage.md index 280600f7..d9c436c7 100644 --- a/external_storage.md +++ b/external_storage.md @@ -87,7 +87,7 @@ mount /dev/YOUR_DISK1 /media/storage (Here, `/dev/YOUR_DISK1` corresponds to the first partition on the disk) -Next, you should be able to create files in `/media/stockage`, and, for instance, add `/media/stockage` as an external drive in Nextcloud. +Next, you should be able to create files in `/media/storage`, and, for instance, add `/media/storage` as an external drive in Nextcloud. ## 4. Mount the disk automatically at boot From c83521788276468f42c899bfc3ac9bddc0aac2f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micka=C3=ABl=20Martin?= Date: Tue, 19 Mar 2019 11:11:37 +0100 Subject: [PATCH 91/94] add post_cert_update hook --- packaging_apps_hooks_fr.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/packaging_apps_hooks_fr.md b/packaging_apps_hooks_fr.md index accb4178..76578e28 100644 --- a/packaging_apps_hooks_fr.md +++ b/packaging_apps_hooks_fr.md @@ -34,6 +34,8 @@ Après l'upgrade d'une applications Après la supression d'une applications - `post_app_change_url` Après avoir modifié le chemin et ou le nom de domaine d'une application +- `post_cert_update` +Après la mise à jour d'un certificat - `conf_regen` Avant et après la régénération de la configuration d'un service. Services pris en charge par regen-conf: @@ -131,6 +133,11 @@ users=$2 # Tous les utilisateurs autorisés sur l'app. Séparés par des virgul app_id=$1 ``` +##### `post_cert_update` +```bash +domain=$1 +``` + La suite du script dépend de ce que vous voulez effectuer dans celui-ci. ### Cas particulier de `conf_regen` From 93eb4472e8576f03b6b19158bf42741b2b94684c Mon Sep 17 00:00:00 2001 From: JR Date: Thu, 21 Mar 2019 09:39:25 +0100 Subject: [PATCH 92/94] Update app_nextcloud_fr.md Changement du groupe www-data -> nextcloud --- app_nextcloud_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app_nextcloud_fr.md b/app_nextcloud_fr.md index 9aba1150..152252ea 100644 --- a/app_nextcloud_fr.md +++ b/app_nextcloud_fr.md @@ -31,7 +31,7 @@ systemctl stop nginx Pour l'instant seul root peut y écrire dans `/media/stockage`; ce qui signifie que nginx et nextcloud ne pourront donc pas l'utiliser. ```bash -chown -R nextcloud:www-data /media/stockage +chown -R nextcloud:nextcloud /media/stockage chmod 775 -R /media/stockage ``` From 161b6ed774b08c7a5441557af7bba423f1b8ae6e Mon Sep 17 00:00:00 2001 From: Yunobot Date: Sat, 23 Mar 2019 17:10:06 +0000 Subject: [PATCH 93/94] =?UTF-8?q?"upload"=20->=20"t=C3=A9l?= =?UTF-8?q?=C3=A9versement"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install_iso_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_iso_fr.md b/install_iso_fr.md index a118e589..e57a7b0c 100644 --- a/install_iso_fr.md +++ b/install_iso_fr.md @@ -10,7 +10,7 @@ * Un matériel compatible x86 dédié à YunoHost : portable, netbook, ordinateur. Vous pouvez réutiliser n’importe quelle machine avec **256 Mo de RAM minimum** * Un autre ordinateur pour parcourir ce guide et accéder à votre serveur -* Un [fournisseur d’accès correct](/isp_fr), de préférence avec une bonne vitesse d’upload +* Un [fournisseur d’accès correct](/isp_fr), de préférence avec une bonne vitesse de téléversement * Une **clé USB** d’une capacité minimum d’1Go **OU** un **CD vierge** standard * ***Cas particulier*** : Si votre serveur n'a pas de carte graphique, il faut [préparer un iso qui démarre sur le port série](https://github.com/luffah/debian-mkserialiso). From ac736147cb33fd986068e58d2cd5bf1046155a4b Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sat, 23 Mar 2019 18:16:52 +0100 Subject: [PATCH 94/94] =?UTF-8?q?ajout=20de=20"d=C3=A9bit=20montant"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- install_iso_fr.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install_iso_fr.md b/install_iso_fr.md index e57a7b0c..63840dd3 100644 --- a/install_iso_fr.md +++ b/install_iso_fr.md @@ -10,7 +10,7 @@ * Un matériel compatible x86 dédié à YunoHost : portable, netbook, ordinateur. Vous pouvez réutiliser n’importe quelle machine avec **256 Mo de RAM minimum** * Un autre ordinateur pour parcourir ce guide et accéder à votre serveur -* Un [fournisseur d’accès correct](/isp_fr), de préférence avec une bonne vitesse de téléversement +* Un [fournisseur d’accès correct](/isp_fr), de préférence avec une bonne vitesse de téléversement (débit montant) * Une **clé USB** d’une capacité minimum d’1Go **OU** un **CD vierge** standard * ***Cas particulier*** : Si votre serveur n'a pas de carte graphique, il faut [préparer un iso qui démarre sur le port série](https://github.com/luffah/debian-mkserialiso).