├── .markdownlint.json ├── README.md ├── adminsys_charter.md ├── app_group_welcome_kit.md ├── apps_group_PR_model.md ├── organization_schema.png ├── support-self-hosting ├── README.md ├── logo_ssh.png ├── make_pdf.sh ├── ri-fr.md ├── statuts-fr.md └── template_latex.tex ├── ynh-keys.md ├── yunohost_project_organization.md ├── yunohost_project_organization_fr.md ├── yunohost_project_tos.md └── yunohost_project_tos_fr.md /.markdownlint.json: -------------------------------------------------------------------------------- 1 | { 2 | "default": true, 3 | "code-block-style": { 4 | "style": "fenced" 5 | }, 6 | "code-fence-style": { 7 | "style": "backtick" 8 | }, 9 | "emphasis-style": { 10 | "style": "asterisk" 11 | }, 12 | "strong-style": { 13 | "style": "asterisk" 14 | }, 15 | "ul-style": { 16 | "style": "dash" 17 | }, 18 | "ul-indent": { 19 | "indent": 2 20 | }, 21 | "heading-style": { 22 | "style": "atx" 23 | }, 24 | "no-duplicate-heading": { 25 | "siblings_only": true 26 | }, 27 | "hr-style": { 28 | "style": "---" 29 | }, 30 | "ol-prefix": { 31 | "style": "ordered" 32 | }, 33 | "no-trailing-punctuation": { 34 | "punctuation": ".,;:" 35 | }, 36 | "no-inline-html": false, 37 | "fenced-code-language": { 38 | "allowed_languages": [ 39 | "bash", 40 | "html", 41 | "css", 42 | "javascript", 43 | "php", 44 | "json", 45 | "yaml", 46 | "toml", 47 | "markdown", 48 | "text" 49 | ], 50 | "language_only": true 51 | }, 52 | "proper-names": { 53 | "code_blocks": false, 54 | "html_elements": false, 55 | "names": [ 56 | "YunoHost", 57 | "GitHub" 58 | ] 59 | }, 60 | "line-length": false, 61 | "no-reversed-links": false, 62 | "no-missing-space-atx": false 63 | } -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | yunohost_project_organization_fr.md -------------------------------------------------------------------------------- /adminsys_charter.md: -------------------------------------------------------------------------------- 1 | # YunoHost System Administrator Charter 2 | 3 | Because great powers imply great responsibilities, I commit myself as YunoHost adminsys to respect these points: 4 | 5 | ## Security 6 | 7 | The reliability and security of the project's services is the responsibility of everybody. Below are some rules meant to prevent security breaches / leaks on the infrastructure: 8 | 9 | - never save project passwords in a non-free browser or without a master password; 10 | - always protect personal private SSH keys with strong passwords; 11 | - always lock machines where keys are located before leaving them unattended; 12 | - always encrypt personal machines where personal SSH keys are stored; 13 | - never let any random people plant third party devices in your machine(s); 14 | 15 | ## Ethics / practice 16 | 17 | - do not give yourself access by escalation of privileges and ensure that the YunoHost infrastructure administration team remains in possession of its accesses; 18 | - verify the effectiveness of backups and rescue means before performing risky maintenance; 19 | - respects project users' privacy and limit to the maximum the display of private information during debugging ; 20 | - in case of legal requests, do not act without consulting other contributors ; 21 | 22 | ## Resilience, sharing and transparency 23 | 24 | In order to ensure the resilience of the deployed infrastructure, everyone agrees to do their best to: 25 | 26 | - report to other adminsys the operations performed on the infrastructure 27 | - produce documentation on their infrastructure and services; 28 | - create an announcement on the forum to announce any important maintenance or outage. 29 | -------------------------------------------------------------------------------- /app_group_welcome_kit.md: -------------------------------------------------------------------------------- 1 | # Welcome kit for Apps group usage 2 | 3 | The purpose of this document is to list all is needed when you're about to welcome a new member into the App group. 4 | 5 | ## Step to perform 6 | 7 | - Add to Apps group in GitHub. [->](https://github.com/orgs/YunoHost/teams/apps/members) 8 | - As well for YunoHost-Apps (Must be owner of the [organization](https://github.com/orgs/YunoHost-Apps/people)). [->](https://github.com/orgs/YunoHost-Apps/teams/apps-group/members) 9 | - Add to Apps group on the forum [->](https://forum.yunohost.org/groups/Apps) 10 | - Update group members into project organization documents [->](https://github.com/YunoHost/project-organization/blob/master/yunohost_project_organization.md#composition-of-groups) and [->](https://github.com/YunoHost/project-organization/blob/master/yunohost_project_organization_fr.md#composition-des-groupes) 11 | - Add a public ssh key. [->](https://github.com/YunoHost/project-organization/blob/master/ynh-ssh-keys.md) 12 | - Add ssh key to all CI servers. 13 | - Create an account on ci-apps with a ramdom password (to be modified) for . [->](https://ci-apps.yunohost.org/yunohost/admin/) 14 | - Create an account on ci-apps-dev for jenkins. [->](https://ci-apps-dev.yunohost.org/yunohost/admin) 15 | 16 | ## Tools for Apps group 17 | 18 | - [Official CI](https://ci-apps.yunohost.org) `ssh admin@ci-apps.yunohost.org -p 2211` 19 | - [CI ARM](https://ci-apps-arm.yunohost.org) `ssh admin@ci-apps-arm.yunohost.org -p 2211` 20 | - [CI unstable/testing](https://ci-apps-unstable.yunohost.org) `ssh root@ci-apps-unstable.yunohost.org` 21 | - [CI dev](https://ci-apps-dev.yunohost.org) `ssh root@ci-apps-dev.yunohost.org` 22 | *All CI are accessible in ssh by key only.* 23 | - [Dashboard](https://dash.yunohost.org/) 24 | - [Kanboard](https://ci-apps.yunohost.org/kanboard) 25 | - [Experimental helpers](https://github.com/YunoHost-Apps/Experimental_helpers) 26 | - [Official helpers](https://yunohost.org/#/packaging_apps_helpers_en) 27 | - [Logs of Apps XMPP chat room](https://im.yunohost.org/logs/apps) 28 | - [Apps list](https://yunohost.org/#/apps) 29 | - [Example app](https://github.com/YunoHost/example_ynh) 30 | 31 | ## Topics and repositories to follow 32 | 33 | - 34 | - All Official apps 35 | - 36 | - 37 | - 38 | - 39 | - 40 | - 41 | - 42 | - 43 | -------------------------------------------------------------------------------- /apps_group_PR_model.md: -------------------------------------------------------------------------------- 1 | ## Problem 2 | 3 | - *Description of why you made this PR* 4 | 5 | ## Solution 6 | 7 | - *And how you fix that* 8 | 9 | ## PR Status 10 | 11 | *Obviously, you should really check these affirmations* 12 | Work finished. Package_check, basic tests and upgrade from last version OK. 13 | Could be reviewed and tested. 14 | 15 | ## Validation 16 | 17 | --- 18 | 19 | *Minor decision* 20 | 21 | - [ ] **Upgrade previous version** : 22 | - [ ] **Code review** : 23 | - [ ] **Approval (LGTM)** : 24 | - [ ] **Approval (LGTM)** : 25 | - [ ] **CI succeeded** : [![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/) *Please replace APP and BRANCH in this link* 26 | When the PR is mark as ready to merge, you have to wait for 3 days before really merge it. 27 | 28 | *Medium decision* 29 | 30 | - [ ] **Complete test** : 31 | - [ ] **Upgrade previous version** : 32 | - [ ] **Code review** : 33 | - [ ] **Code review** : 34 | - [ ] **Approval (LGTM)** : 35 | - [ ] **Approval (LGTM)** : 36 | - [ ] **Approval (LGTM)** : 37 | - [ ] **CI succeeded** : [![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/) *Please replace APP and BRANCH in this link* 38 | When the PR is mark as ready to merge, you have to wait for 7 days before really merge it. 39 | 40 | *Major decision* 41 | 42 | - [ ] **Complete test** : 43 | - [ ] **Complete test** : 44 | - [ ] **Upgrade previous version** : 45 | - [ ] **Upgrade previous version** : 46 | - [ ] **Code review** : 47 | - [ ] **Code review** : 48 | - [ ] **Code review** : 49 | - [ ] **Approval (LGTM)** : 50 | - [ ] **Approval (LGTM)** : 51 | - [ ] **Approval (LGTM)** : 52 | - [ ] **Approval (LGTM)** : 53 | - [ ] **CI succeeded** : [![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/APP_ynh%20BRANCH%20(Official)/) *Please replace APP and BRANCH in this link* 54 | When the PR is mark as ready to merge, you have to wait for 7 days before really merge it. 55 | -------------------------------------------------------------------------------- /organization_schema.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YunoHost/project-organization/4c5d0dcd52d9cc1d5d19820dd421df5bfdf633e8/organization_schema.png -------------------------------------------------------------------------------- /support-self-hosting/README.md: -------------------------------------------------------------------------------- 1 | statuts-fr.md -------------------------------------------------------------------------------- /support-self-hosting/logo_ssh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/YunoHost/project-organization/4c5d0dcd52d9cc1d5d19820dd421df5bfdf633e8/support-self-hosting/logo_ssh.png -------------------------------------------------------------------------------- /support-self-hosting/make_pdf.sh: -------------------------------------------------------------------------------- 1 | 2 | 3 | mkdir -p .work 4 | cp *.png .work/ 5 | CONTENT=$(pandoc --from=markdown --to=latex statuts-fr.md | sed 's@\\@\\\\@g' | sed ':a;N;$!ba;s@\n@\\n@g' | sed 's/·/$\\\\cdot$/g' ) 6 | sed "s@{{CONTENT}}@${CONTENT}@g" template_latex.tex > .work/statuts-fr.tex 7 | cd .work/ 8 | pdflatex statuts-fr.tex 9 | cp statuts-fr.pdf ../ 10 | 11 | -------------------------------------------------------------------------------- /support-self-hosting/ri-fr.md: -------------------------------------------------------------------------------- 1 | Règlement intérieur 2 | ===================== 3 | 4 | *Ce document spécifie les obligations morales et légales qui doivent être acceptées par tout$\cdot$e membre de l'association. Il complète les Statuts de l'association.* 5 | 6 | Composition de l'association 7 | ===================== 8 | 9 | L'association Support Self Hosting, ci-après désignée par le sigle SSH ou le terme "l'association", est organisé sur un modèle auto-gestionnaire. À ce titre, tous les membres de l'association disposent du même pouvoir décisionnaire. 10 | 11 | Sont **membres** toutes les personnes physiques ou morales à jour de leur cotisation annuelle à l'association. Sont **membres solidaires** tous les membres faisant partie du Collège Solidaire de l'association, tel que décrit dans les statuts. 12 | 13 | Montant des cotisations 14 | ================= 15 | 16 | La cotisation à l'association est annuelle. Son montant **minimum** est fixé à **0 €** - libre à chacun de cotiser plus pour soutenir financièrement l'association. 17 | 18 | Le montant de la cotisation d'un⋅e membre n'a aucune influence sur son statut au sein de l'association. 19 | 20 | Admission et radiation des membres 21 | ========================== 22 | 23 | Pour le moment l'association n'accepte que les personnes physiques. La personne désirant obtenir le statut de membre devra : 24 | 25 | - avoir plus de 16 ans ou être représentée par un tuteur légal ; 26 | 27 | - être coopté par l'association ; 28 | 29 | - de préférence être impliqué de manière significative dans l'un des groupes de travail du projet YunoHost (c.f. le document définissant l'organisation du projet) ; 30 | 31 | - lire et accepter les Statuts à jour ainsi que le présent Règlement Intérieur de l'association ; 32 | 33 | - communiquer par écrit une demande d'admission au siège social de l'association, en utilisant l'un des moyens de communication de l'association ; 34 | 35 | - payer sa cotisation, en utilisant l'un des moyens proposés sur le site web de l'association. 36 | 37 | 38 | Le statut de membre se perd : 39 | 40 | - par la démission ; 41 | 42 | - par le décès de la personne physique ou la dissolution de la personne morale ; 43 | 44 | - par la radiation prononcée par l'Assemblée Générale Extraordinaire sur justification motivée, l'intéressé⋅e ayant été invité⋅e à se présenter devant cette assemblée pour se défendre ; 45 | 46 | - ou au début d'une Assemblée Générale Ordinaire, si le ou la membre n'a pas payé de cotisation depuis l'Assemblée Générale Ordinaire précédente. 47 | 48 | - dans le cas, où la cotisation est de 0€, si le ou la membre n'est plus présent et n'a pas confirmé sa ré-adhésion suite à une demande écrite. 49 | 50 | Réunions mensuelles 51 | ================ 52 | 53 | Lorsque les membres organisent une réunion associative, elles et ils s'engagent à annoncer à l'avance l'heure et le lieu de la réunion. 54 | Ces réunions sont ouvertes à tou⋅te⋅s les membres, et éventuellement les invité⋅e⋅s souhaitant découvrir l'association. 55 | 56 | Comme toutes les réunions associatives, les réunions mensuelles font l'objet d'un compte rendu diffusé publiquement. 57 | 58 | Prise de décisions 59 | ============= 60 | 61 | En l'absence de consensus entre les membres, les décisions au sein de l'association se font à l'aide d'un **vote alternatif**, dont la procédure est détaillée ci-dessous. 62 | 63 | **1) Organisation du vote** 64 | 65 | Les membres établissent ensemble la question soumise au vote et listent les propositions faites dans le cadre du débat. Le vote est organisé dans le cadre d'une *Réunion mensuelle*, ou d'une *Assemblée Générale Ordinaire ou Extraordinaire* 66 | 67 | **2) Procurations** 68 | 69 | Un$\cdot$e membre ne pouvant être présent physiquement ou virtuellement par le biais des outils de téléconférences de l'association pourra demander à voter par procuration par le biais d'un autre membre. Le nombre de procurations est limité à deux par membre. 70 | 71 | La demande de procuration devra se faire publiquement, à l'aide des moyens de communication fournis par l'association. 72 | 73 | **3) Procédure de vote** 74 | 75 | 1. Chaque membre vote pour une proposition ou s'abstient ; 76 | 77 | 2. la proposition recevant le moins de voix est écartée ; 78 | 79 | 3. les membres ayant voté pour la proposition écartée votent pour une des propositions restantes ou s'abstiennent ; 80 | 81 | 4. on répète la procédure jusqu'à ce qu'une proposition obtienne la majorité absolue, ou qu'il ne reste plus qu'une proposition. 82 | 83 | Toute abstention est définitive : après s'être abstenu une fois, il n'est plus possible de voter durant les tours restants. 84 | 85 | Moyens de communication de l'Assemblée Générale permanente 86 | =============================================== 87 | 88 | L'Assemblée Générale est réunie de manière permanente par le biais de la categorie privée 'Association' et de la catégorie 'Community' du forum de discussion de YunoHost. 89 | Tout membre souhaitant s'impliquer dans la vie de l'association est invité à s'y inscrire. Les compte-rendus des réunions associatives doivent être publiés sur cette catégorie du forum. 90 | 91 | Rappel sur la distinction entre l'association et le projet logiciel YunoHost 92 | ==================================================== 93 | 94 | L'association n'est pas titulaire de droit de propriété intellectuelle sur les logiciels du projet YunoHost, seuls les contributeur⋅ice⋅s aux logiciels du projet YunoHost le sont. L'association n'est pas non plus l'organe décisionnaire concernant les logiciels du projet YunoHost. Pour connaitre le mode de gouvernance de ce projet se référer au manifeste dédié: https://github.com/YunoHost/project-organization/blob/master/yunohost_project_organization_fr.md . 95 | -------------------------------------------------------------------------------- /support-self-hosting/statuts-fr.md: -------------------------------------------------------------------------------- 1 | Titre de l'association 2 | ======= 3 | 4 | Il est fondé entre les adhérentes et les adhérents aux présents statuts une association régie par la loi du premier juillet 1901 et le décret du 16 août 1901, ayant pour titre : **Support Self-Hosting**. 5 | 6 | Buts de l’association 7 | =============== 8 | 9 | L’association a pour but de soutenir, notamment financièrement, le projet YunoHost qui vise à faciliter l'auto-hébergement afin de le rendre pérenne, ainsi que tout autre projet que l'association juge ayant des objectifs connexes et/ou en accord avec ceux du projet YunoHost. 10 | 11 | L'association poursuit un but non lucratif. 12 | 13 | Moyens de l’association 14 | ================= 15 | 16 | Pour ce faire, l'association : 17 | 18 | 1. entreprend des actions pour recueillir des fonds, via des dons, subventions ou autres moyens ; 19 | 20 | 2. décide de comment redistribuer ces fonds, par exemple pour assurer des coûts de fonctionnement (infrastructure informatique), acheter des outils de communication, pour défrayer des personnes lors d'événements ou interventions, ou pour rémunérer des personnes qui contribuent au projet YunoHost sur les aspects administratif, de communication, de recherche de financements, de développement informatique, de support utilisateur·ice·s, ou toute autre action permettant de soutenir le projet YunoHost. 21 | 22 | 23 | Mode d’administration 24 | ================ 25 | 26 | L’association fonctionne selon un mode d’administration dit 'autogéré'. Les membres sont par conséquent collectivement responsables du bon fonctionnement de l’association et ont pour charge de s’impliquer dans la mesure de leurs disponibilités et compétences. 27 | 28 | **L’Assemblée Générale (AG)** regroupe l’ensemble des membres de l’association. L’AG est souveraine et détient l’exclusivité du pouvoir décisionnaire. L’AG est réunie de manière permanente par le biais des moyens de communication définis dans le règlement intérieur. L’AG délègue son pouvoir décisionnaire aux membres présents dans le cadre des **réunions associatives**, selon les termes décrits dans la section dédiée. 29 | 30 | **Le Collège Solidaire (CS)** a pour responsabilité d’administrer l’association et de la représenter dans les actes de la vie civile. Il n’exerce aucun pouvoir décisionnaire au sein de l’association. Il représente légalement l’association devant la justice. En cas de poursuites judiciaires, les membres du Collège Solidaire en place au moment des faits prendront collectivement et solidairement leurs responsabilités devant les tribunaux compétents. Tout changement de composition du CS doit donc faire l’objet d’une déclaration en préfecture. L’intégration d’un membre au CS se fait par cooptation des membres en place. Un membre peut quitter à tout moment le CS sur simple demande. Les membres du CS s’engagent a respecter le code de déontologie présent dans le Règlement Intérieur de l’association. 31 | 32 | Prise de décisions 33 | ============= 34 | 35 | L’association privilégie avant tout le débat constructif et la recherche de consensus pour ses prises de décision. Si aucun consensus ne se dégage de la discussion, l’association peut trancher en suivant la procédure de vote définie dans le règlement intérieur. 36 | 37 | Réunions associatives 38 | ================ 39 | 40 | Les réunions associatives sont la base de la vie de l’association. C’est dans ce cadre que les membres peuvent discuter des actions à entreprendre et décider de comment allouer les fonds recueillis. 41 | 42 | Les membres de l’association sont libres d’organiser spontanément des réunions associatives. Les membres présents lors d’une réunion associatives sont détenteurs des pouvoirs décisionnaires de l’AG, à deux conditions : 43 | 44 | 1. la réunion associative doit faire l’objet d’un compte-rendu qui sera transmis à l’Assemblée Générale permanente. Ce compte-rendu doit contenir les décisions prises, et les noms des membres présents lors de la réunion; 45 | 46 | 2. les décisions irrévocables prises durant une réunion associative (par exemple, allouer des fonds) ne seront mises en application que deux semaines après communication du compte-rendu à l'association, afin de laisser à l’AG la possibilité de revenir sur celles-ci. 47 | Une décision est révoquée si la demande en est faite par un nombre de membres supérieur ou égal au nombre de membres présents lorsque la décision a été prise. 48 | 49 | En cas d'urgence, le délai de 2 semaines peut être levé, si la décision fait consensus et que plus de la moitié des membres de l'association ont confirmé leur accord. 50 | 51 | 52 | Les Assemblées Générales 53 | ==================== 54 | 55 | **Assemblée Générale Ordinaire (AGO)** 56 | 57 | Elle a lieu obligatoirement une fois par an. Lors de cette réunion, le Collège Solidaire présente un rapport sur l’activité de l’association, ainsi qu’un rapport financier comportant les comptes de l’exercice. Il est ensuite procédé à l’examen des autres questions figurant à l’ordre du jour. 58 | 59 | **Assemblée Générale Extraordinaire (AGE)** 60 | 61 | Elle se prononce sur les modifications de Statuts, la dissolution de l’association ou la radiation d’un membre. Une AGE doit être convoquée pour traiter de ces questions. 62 | 63 | **Déroulement** 64 | 65 | Tou·te·s les membres de l’association sont convoqué·e·s aux Assemblées Générales Ordinaires ou Extraordinaires, sous réserve qu’ils et elles aient acquitté leur cotisation de l’année en cours. 66 | 67 | Les membres de l’association sont convoqué·e·s 15 jours au moins avant la date fixée. Les convocations peuvent être envoyées par courriel en utilisant les adresses fournies par les membres lors de leur adhésion ou via les discussions de groupe du forum de YunoHost. L’ordre du jour est indiqué sur les convocations. 68 | 69 | Les membres du Collège Solidaire ont pour charge d’assurer l’organisation et le bon déroulement de l’Assemblée Générale en faisant respecter l’ordre du jour, en répartissant équitablement le temps de parole et en rédigeant le compte-rendu de la réunion. 70 | 71 | Des questions diverses pourront être abordées dans la dernières partie de l'AG. Elles devront être communiquées au moins une semaine avant le début de l'Assemblée Générale aux membres du Collège Solidaire pour une consultation préalable en vue de la préparation des réponses de celles-ci. 72 | 73 | Trésorerie 74 | ======= 75 | 76 | Les membres du Collège Solidaire portent collectivement la charge de tenir la comptabilité de l’association. Elles ou ils perçoivent les recettes et effectuent tout paiement, sous réserve de l’autorisation de l’Assemblée Générale, dans les cas éventuellement prévus par le Règlement Intérieur. 77 | 78 | La responsabilité légale de l’ensemble des membres du Collège Solidaire étant engagée en cas de problème, n’importe quel membre du Collège Solidaire doit pouvoir avoir accès aux comptes pour les vérifier. 79 | 80 | Tout membre de l’Assemblée Générale peut également demander à consulter les comptes de l’association, mais la version présentée sera anonymisée, afin de respecter la vie privée des donateur·ices. 81 | 82 | Siège social 83 | ========= 84 | 85 | Le siège social est fixé au : 86 | 87 | 119 rue Bonnat 88 | Appartement B16 89 | 31400 TOULOUSE 90 | 91 | Il pourra être transféré par simple décision du Collège Solidaire. 92 | 93 | Les ressources de l’association 94 | ======================= 95 | 96 | Elles comprennent : 97 | 98 | - le montant des cotisations ; 99 | - les subventions de l’État, des régions, des départements et des communes, ou de tout autre organisme public ; 100 | - les dons et autres sommes perçues via les financements participatifs ; 101 | - toutes les autres ressources autorisées par les textes législatifs ou réglementaires. 102 | 103 | Règlement Intérieur 104 | ============== 105 | 106 | Un Règlement Intérieur peut être établi par les membres, qui sera soumis à la validation de l’Assemblée Générale permanente. Ce règlement est destiné à fixer les divers points non prévus par les Statuts, notamment ceux qui ont trait à l’administration interne de l’association. 107 | 108 | Dissolution 109 | ======== 110 | 111 | En cas de dissolution prononcée par l’Assemblée Générale Extraordinaire, un·e ou plusieurs liquidateurs ou liquidatrices sont nommé·e·s par celle-ci. L’actif, s’il y a lieu, est dévolu par cette Assemblée à une ou plusieurs associations ayant un objet similaire ou à tout établissement à but social ou culturel de son choix. 112 | 113 | 114 | 115 | 116 | *Statuts adoptés par l'Assemblée Générale Constitutive du 25/08/2018 au 28/08/2018.* 117 | -------------------------------------------------------------------------------- /support-self-hosting/template_latex.tex: -------------------------------------------------------------------------------- 1 | \documentclass[9pt]{article} 2 | \usepackage[utf8]{inputenc} 3 | \usepackage[francais]{babel} 4 | \usepackage[T1]{fontenc} 5 | \usepackage{lmodern, alltt, color, geometry, multicol, eurosym, graphicx, fancyhdr} 6 | \usepackage[hyperindex=true, colorlinks=true, urlcolor=black, linkcolor=black, breaklinks=true]{hyperref} 7 | \renewcommand{\thesection}{Article \arabic{section}} 8 | \pagestyle{empty} 9 | \geometry{hmargin=.6cm, vmargin=1.1cm} 10 | \headsep 10pt 11 | \addtolength{\parskip}{6pt} 12 | \renewcommand{\ttdefault}{pcr} 13 | \setlength{\parindent}{0cm} 14 | \renewcommand*{\familydefault}{\sfdefault} 15 | \pagestyle{fancy} 16 | \renewcommand{\headrulewidth}{0pt} 17 | \fancyhead{} 18 | \makeatletter 19 | \renewcommand\section{\@startsection {section}{1}{\z@}{-2ex \@plus -1ex \@minus -.2ex}{.4ex \@plus.2ex}{\normalfont\bfseries\scshape}} 20 | \makeatother 21 | \author{Support Self-Hosting} 22 | 23 | \begin{document} 24 | \begin{tabular}{ l r } 25 | \begin{minipage}{5.3cm} 26 | \includegraphics[width=130pt]{logo_ssh.png} 27 | \end{minipage} & 28 | \begin{minipage}{14cm} 29 | \begin{center} 30 | {\huge \textbf{Statuts} de l'association \emph{Support Self-Hosting}} 31 | \end{center} 32 | \end{minipage} 33 | \end{tabular} 34 | \vspace{0.1cm} 35 | \begin{multicols}{2} 36 | 37 | {{CONTENT}} 38 | 39 | \end{document} 40 | -------------------------------------------------------------------------------- /ynh-keys.md: -------------------------------------------------------------------------------- 1 | # YNH SSH / GPG keys 2 | 3 | ## Security Team 4 | 5 | ### GPG Fingerprint 6 | 7 | ```text 8 | 6CBC 45EB A625 FBF3 513D 1227 749D 8972 1735 1899 9 | ``` 10 | 11 | ### GPG Public key 12 | 13 | ```text 14 | -----BEGIN PGP PUBLIC KEY BLOCK----- 15 | 16 | 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 62 | duwVhcozAw== 63 | =T1UK 64 | -----END PGP PUBLIC KEY BLOCK----- 65 | ``` 66 | 67 | ## Aleks 68 | 69 | ### SSH key 70 | 71 | ```text 72 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC2AlKi1Hz8n1VdiQcRmV5cVyWKzoiORjxezV8LX67/rJC9t5zW71vl18LWh/jZx09RPsitxXSUQfEUCbWkKk/Mrn6y5f1JBmltB7uCHdtdAXrtv+J98WS6N977yhAyTpU8yJplgu0JJxNnnGeCwmRXATj9O282lgwT1eT2/OF3MEpWucnz3Angwurzx4s9UMDwLcK5YdDfQPFdL/7XUyTs8uy8xGvJ/6v78EPOPSrf4R1Yqrl21zdt1ErDjkO47o/mMsT3sYfrOlNvmMslSBmG3PZ1dtYo7HJy6POAsWVGbnpNNMwCD9Kp53hc435TbZl66kWAh6VA7QIkiAyxLWYZr+T3Xy+MIKYlrOt2vnJoNMTV6rbE0OCi7oeQ6U2jTcfgEVanAoWXbZTdL7V8fCI8U+Vcp+hkgyiK5FTLOypvbkvcMuk7SRqbkjiNXbNKeOwOFN6g5EsoXggNFfgVj6kWXMrUB98+O/bsQ7eu/Vq3o1zVy1bsU4geZNIgEqgwot47TggEI05Wi1x2ee/3Gs2N5NM4ARzVa4vnR4CVjzfEbHuHnbyr5/0vyBUs7sNJjGl3H0+VC8HXT4F3TH/tLHXfK/bQz4flwIScBXljY7NSX4kzJpRE8CIxUIZabBCqxJoD35m+LmEdn7HdQsWh1qPBekwYW6CVuE3qCWj673+CQw== alex.aubin@mailoo.org 73 | ``` 74 | 75 | ### GPG Fingerprint 76 | 77 | ```text 78 | 8243 E157 D708 788E 9A7A C4E9 4606 155D 10E6 5DDD 79 | ``` 80 | 81 | ### GPG Public key 82 | 83 | ```text 84 | -----BEGIN PGP PUBLIC KEY BLOCK----- 85 | 86 | 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 122 | ++lbXniYr5g+WaMP2nAth7CCWQ== 123 | =VfWh 124 | -----END PGP PUBLIC KEY BLOCK----- 125 | ``` 126 | 127 | ## Bram 128 | 129 | ### SSH key 130 | 131 | ```text 132 | ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAgEA3ddF0hiVizCoN60RBbegWzb7XYmvD+3vGp/tg8qQJk5BWbtAaAB4U8PlllzmxKOvCUy++dCVz8Wj3k4oe3Eo2utMZQFULNIkbvwHFQN362v4LQuAg+P2sOHz04zlIcAcD/GCiiWRI8bvfx0BhKoA+Eo6ocIicQUqCN8TPsvOkO0U8LQcwc7rXLEISakNO7zxu7OTpASXTNwGOuxI+j7OgCpTwFGpzn7RqDpDh4ZEidPuRnzsHddPtJpUj5GzZd6h2tS5lOjK2L2AIFXVvXsZ2OdmJGT/bCRrwqvDWGrJyX6fOV2SDo9hKQTUv6iDYAeDWei19elxJYYOIRvZrYbhFqo4LaoXfdQOg6RgwuLjZDiMK4NZlAP4ToDsgsz3uE/uLtuffff6r2jHwONAIpBuNPWGWo4pOV7cnJ0D2FxldiDcZwKSvGKaSEvhWQ5PU/Ux2VErXgxnGQTPsqtK1mOgNKnsaMhGNx62KhfQUc++VLQJS6GoB8CO38Cybjd8RQABAjSln1zjlQIFgDn5FiTVyehngm1YOkko+2npZvVBM0fMGJp+MgRp0vp2zYe9jKR0CJ+2p32elwYiKOfG315gDqKjLrUY+XK03eH50NnhoZW5SjaZtCzjpm6FaLgKBH4UVICq/qLAzXx7KryHC1qA0D6R572wETSiKIQS7Wdu/PM= psycojoker@Raspoutine 133 | ``` 134 | 135 | ### GPG Fingerprint 136 | 137 | ```text 138 | ``` 139 | 140 | ### GPG Public key 141 | 142 | ```text 143 | ``` 144 | 145 | ## Ericg 146 | 147 | ### SSH key 148 | 149 | ```text 150 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDpcN7Mced/oeb2H/oY2FpsYMU2TDjgF1haVpSA6q9w5ocdsX5vEyTJKE4j1qLHqdq1d6je8Oj4XorbEGgFv4YxPLVZnzTHQfaMfrSPIGPP5Jnuq1PZ70QTkhbeMovGN2VDy9561ndSfRwfg7iC5wmwk/XmzRM4gqWsJlXUecYsuF5iML20pW1+q8693BNiqEfH1OjzYG8Z9bgeIdG5DBIfxhwXfj5syfoWwP+VbYORKu19U9VWXEACoKoIM4TQciooLeI/mHvqgVl6KX6m03EXZ7J+99tGGuIhKw5rtMP0vgNoYki20KRhRBT4molGtUOAhMu5nFg1k7yWhmfGx1kAmGz1jqVEe8195/qGPsl8jWKD0g/vtYoBhef3aIT/LbCWSXtJo3bqQ1kdBFhiydNBHs+UPhzlAKIUK0+s3Q3KBVppKSgWCSsDRhXe7IhoE564SzMlWETYjoG7SlZerMrDfLK/sS8uVMyEQXOYKV5ugr/FdPTpnstgbQXQFgH5khJqtK64Q6sr4KZHo6WfgDz2hO/jP9XWKutRPmNJoyk/e93QcijmkH7t2FxEjQUs6mv7QplDkMdpXRWQS5Bf9XIQKtVd6rpV9o2/VW0tlEJakfQ++j6Kv3r+KCH15ynicgGyvjP6lpXVt3iRoaE+PLuZTxGeKNAlYCg9FMh8+S3Vtw== 151 | ``` 152 | 153 | ### GPG Fingerprint 154 | 155 | ```text 156 | 6788 EA32 AA6C E2DD 3CA3 96F3 574F 2814 8305 4D44 157 | ``` 158 | 159 | ### GPG Public key 160 | 161 | ```text 162 | -----BEGIN PGP PUBLIC KEY BLOCK----- 163 | 164 | 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 211 | 9TD+O8Jt 212 | =hoDv 213 | -----END PGP PUBLIC KEY BLOCK----- 214 | ``` 215 | 216 | ## frju365 217 | 218 | ### SSH key 219 | 220 | ```text 221 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDhXPdKezUT9N94PMCqeNPb799+G2TzYEJVsx4hT8lCOQMdvapMyxN73mAEka3slRhOckXcponk/By44n1mkSXSZ+mAZNiXCoaKjOeybkKwVrOe5aG659HX/AOKOmKaIJHZyn67MPzBIKCfl4LXHhrGAiMy5hv/LZVuF9swsrQptXCwdzr07wCePmOwGGdHQ8+amSGMalao6M/34Am6SH2XUI9hNpq/9rbXO+RK2TMvWzR09hXBWtREv1n1RC/GdnXxDruJ0HSrtyiVxhbbATKDwOPrQ94yvro+6mzNE0+sd8MbIaz0jJZC8QUECNyGMBSeQhsk00S1EvaP5DN6UlR julien@julien-GAMING 222 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDDBOkMSSldMHTwlTCaiYsjM7JVFaLMTrytjskdZ8R8H6vKZvM5eP7CAtz8bY7J0tTFnNskr7hUX5YIhRloFH5xnHjih4dGflIqrUf5OYiM8wZcRudZ4+7yvGE7tA6T5NuElMv8jNKPDkOmdfrGQen6sI/N6xL7pQXy3fOwlrPQW9s0C6OalhfQYFLSid5b1G/HHezCvjQBFTwI5Cz0afA/yoAWjJ5UIzE7a2XUKMfgN0Cq67VlSihLA6giE0MznfBOAgW8yTQ0iQ1MNjSMnu4oVev3Qkbxt3I0OzCE+IwhXnWaR4zxFrPVUKMfLa/XiYdT42ech1JgNJolHvmfXBpV49A3rrgR8ErDVXzNsnEhAsZzeUrUgQxn0ueYrzJUAYW0o+Zv7B6oshCEfdovDGhtD7uqlrRMt90kZ1hMv1lz6UZDA0sVKLZ52iRKAqaidjKbRn4SkZwE93i8+MFQAjfxVSieAcyjXunbZyWvkd4gj45yawOpWAtMFG9/TJ9jntPwxaNCR2OIJ5Ge/o5qTfey7R364rIdZ7/3tkTW5ws7cHmLgon9wowOfG9wLqcQIYgDifpgIZFjC2ye6Qb+kNXyCN6L4oa9ykiDd+8XQVBitONoO3Y5JQ0Ub7NiUPl5Gvv8DKfTjIQ++z+c60+RVg51GTjMq8dRqshaczEMp8JVlw== abld@abld.info 223 | ``` 224 | 225 | ### GPG Fingerprint 226 | 227 | ```text 228 | ACCB 5A3F F1CE 04C5 B741 9756 4277 4961 5D21 5F2B 229 | ``` 230 | 231 | ### GPG Public key 232 | 233 | ```text 234 | -----BEGIN PGP PUBLIC KEY BLOCK----- 235 | 236 | mQINBGENcHwBEACsYHs9fPk8g+nm91K7kAlenHfYGs33rl9KFYSgOUQNftjKPKRl 237 | QsqmwdzUq/kPuwxtYo6D0c79dodTlr5cnCFXFL5JMd9GL/9BsE74sN27aLzp7rv3 238 | G/4h1RUYM3leEo2m/qhyxMdB+tPQ18cJPmTrCuMW9OxDhvD0soiaiJ1fqC4VF3Of 239 | Fv9HYfKlBBIn+Ldx9MHt0I8CFlfurTfeP5nRUPDapJ6fQEylFPAtSkTJG2nOZigB 240 | zXY9rEG32U0zw6ZBp3J4/JnXDABbbsRm7hju8oAm+ekjmwm9F976P9DCvyB1UyB6 241 | 3NjJ8vRIoKmtZepmijoXSkM2ZvBvMTg60rzF9EjbPfsW8upKNdzTj+9VKMeIcUu3 242 | DyBtZMQ97wxjY1iuLQrEDI1SfAqvV/hemyPm+Go0GXC5kkvUhn15FpV0yQkspfCL 243 | ZvaO8iumbr299O1ZgyTjX63O0s+H63lnqvTjn67WXL2O6rDGVw4UH/coZ8+tmo3a 244 | rogUQZfXeigCCW421hTZAvAGz7u0HG5YXMJAw9VxoJcGUD3NKcenk6G8T0D2i/WJ 245 | mml2vYQQMrx/3zW0PMm1eL1wvgRGtBUvQWoqntT0x2cFjkUn8c3lLZGAOdigNfPP 246 | lWrzEP9enULsU6zLEiLAuel4jiRSEmawzDs/bf7i5ICmzkILhvvxUBLRzwARAQAB 247 | tCJKdWxpZW4gR29tZXMgRGlhcyA8YWJsZEBhYmxkLmluZm8+iQJUBBMBCgA+FiEE 248 | rMtaP/HOBMW3QZdWQndJYV0hXysFAmENcHwCGwMFCQPCZwAFCwkIBwIGFQoJCAsC 249 | BBYCAwECHgECF4AACgkQQndJYV0hXytlpQ//eAtFEPqrgTUL7sklDhvLyzDqvtf7 250 | urgnQJ0vP8HaIM8w5MbXhoQLRA5u+tP85VsPYwalXQF32lgQdccK7SlOK2upmoru 251 | oEXhiiA4W/WgDKBeMs93y6VO/u8gXkbQzb14RqA4tekxnpfvWKAguJGEuSULK0Oo 252 | QYkqbsJy2bGuCtO1U+m+sqNEp7jLDocoUCf35/TMOrf3BPCUDZWtr9Z1eu1N8uCF 253 | NJX3qYjdOG/n6vEy5gYDf7Q4xJTmMnL1N+jSURrG6H+J6woqAa/XIUHMkK1GSewS 254 | STycKHUJpOu4NlLxtvRfNuGw7YbclsF0vqOs2PvoUKLQFV3Nn1GWhoJfFUAu7a1l 255 | 0Ac1W8v7cjVWSy0+ckmQasi4EcrNz+b0e5pv6ZOzw+/Du0+jVcrtYo0LByr/Wof/ 256 | pK/vxm0bI1pGTLkXeOwybX4OCahyBxrx8rjOSldclBCOC9Kq3u4CGpHEbqORsE/T 257 | SUOznDMZwrJ++Gx14iJ84Q3g7SqhSunSxjk4Jzg53IJ+P8LGaMZuDGePRtdc7P4L 258 | 6sWq4BO5kGRy/Myzns3YpZ78WWaUugKcqd8lbc5SZ49utKbbBTohFvKEf8rsvU+K 259 | zEdLzf3L1weo8EagBfsKgjsB9l3NJZiiFZsdGu0biVg1a4o3pn40bnDWrcFlxqqq 260 | t237JqA7Y18YTCk= 261 | =/zjW 262 | -----END PGP PUBLIC KEY BLOCK----- 263 | ``` 264 | 265 | ## JimboJoe 266 | 267 | ### SSH key 268 | 269 | ```text 270 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDxUReeafNKvISKVNQxxLujkN4RaGyKgC/C58BuKnli33T/SLagSb4UncygXg0S/bluXmSI0Qts+Hy9zi5Xnza8c5RoaGMw+S39J4xvqah6QCIP9aVtnqWSUBtDlVGUWyzZtnLVodbTRJ9BJfK9vAj+J625XwrF5XLhlJe/Xi/xw9IL/FRp7wZrRuNiFtHahDuC3GMawZxCSRdDlW0gKzldyIng7REkM1tkXWwCe5alIhx6kVGgVRjO+eqxJe3OAg4q9OMSEJMbiasa8aHv7yhrwWZInjMECPGd76qL0QhSAIv8BOdeCj7nBUgzdSED9m6u0rqG2vFQNtGt4EJMwHeX jimonin@LFR019516 271 | ``` 272 | 273 | ### GPG Fingerprint 274 | 275 | ```text 276 | ``` 277 | 278 | ### GPG Public key 279 | 280 | ```text 281 | ``` 282 | 283 | ## Josue-T 284 | 285 | ### SSH key 286 | 287 | ```text 288 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIG9ldz5F0QrdX24sdOqTuSwS9BetmffKssUDIHXL3/Cb josue@Latitude-E6510 289 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICsSgNEDy3XSd5243hG0z6TFF1lCmrd0UNA6oSTPH7iR josue@Latitude-E6420 290 | ``` 291 | 292 | ### GPG Fingerprint 293 | 294 | ```text 295 | ``` 296 | 297 | ### GPG Public key 298 | 299 | ```text 300 | ``` 301 | 302 | ## Kayou 303 | 304 | ### SSH key 305 | 306 | ```text 307 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICEmMpUKk04G7300BLhaaPMf8Dfa+LA7XV0Nq+diaV5B pierre@kayou.io 308 | ``` 309 | 310 | ### GPG Fingerprint 311 | 312 | ```text 313 | C090 F381 CA99 FE71 2ED6 98D8 0D31 345E D495 2B91 314 | ``` 315 | 316 | ### GPG Public key 317 | 318 | ```text 319 | -----BEGIN PGP PUBLIC KEY BLOCK----- 320 | 321 | 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 368 | =RxzQ 369 | -----END PGP PUBLIC KEY BLOCK----- 370 | ``` 371 | 372 | ## ljf 373 | 374 | ### SSH key 375 | 376 | ```text 377 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDGgSwBBo90Eda5lr33dYDT81DSOTkUNnLbIHqwv7Taj ljf@pirouette 378 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAOrQwIv/s/a3+Z42H6j8O4uunfQBQIOdUXOb9kyuYNO ljf@torche 379 | ``` 380 | 381 | ### GPG Fingerprint 382 | 383 | ```text 384 | D96B 4FEA 0C22 04A2 B17C 4F18 00A3 5C27 0CC6 A81D 385 | ``` 386 | 387 | ### GPG Public key 388 | 389 | ```text 390 | -----BEGIN PGP PUBLIC KEY BLOCK----- 391 | 392 | mDMEXtvjwhYJKwYBBAHaRw8BAQdATbYSldUjtcuzfiCwi0jP5IWkJP0NJ3FNW2Wz 393 | OajLODa0JlZhbGVudGluIEdSSU1BVUQgPHZhbGVudGluQGdyaW1hdWQubWU+iJYE 394 | ExYIAD4WIQTZa0/qDCIEorF8TxgAo1wnDMaoHQUCXtvjwgIbAwUJBaOagAULCQgH 395 | AgYVCgkICwIEFgIDAQIeAQIXgAAKCRAAo1wnDMaoHTA/AP9k+F2y1yAvrujKKEeP 396 | 0LZjqKIYbsVr/J+1ARWJlTqNtAEA7omLj3cAJ2lPY/qJBxLqDCXkLdrv+drnMTTH 397 | q8KLrgK4OARe2+PCEgorBgEEAZdVAQUBAQdAa+m/kQ/nMsWLfCbGMw0rXMhQpq8o 398 | yVsUSN9ZadbYDgEDAQgHiH4EGBYIACYWIQTZa0/qDCIEorF8TxgAo1wnDMaoHQUC 399 | XtvjwgIbDAUJBaOagAAKCRAAo1wnDMaoHciSAQCGFZU/p4GxDplzpioa15RsyvO3 400 | Ro3YVfbRE1uk9i3kUwD7BAOhlstNf+Dj6gwHwow5KKP0Mfi6r7yjiCpRdS2tKgA= 401 | =jgxT 402 | -----END PGP PUBLIC KEY BLOCK----- 403 | ``` 404 | 405 | ## mathieuw 406 | 407 | Contact email: mathieuw[at]globenet.org 408 | 409 | ### SSH key public key (laptop) 410 | 411 | ```text 412 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIP6Jxt9V2rBGzfnE6jvUyCJFCwFljalrckpc49zif/7V mathieu@DellMathieu 413 | ``` 414 | 415 | ## Salamandar 416 | 417 | Contact email: felix[at]piedallu.me 418 | 419 | ### SSH key public key (laptop) 420 | 421 | ```text 422 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKHBF0bRGNenuMU05qwrFVHy9YBVXkt22NFi+0GFT6z9 felix@framed 423 | ``` 424 | 425 | ### SSH key public key (NAS) 426 | 427 | ```text 428 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK8NriZ/QWFZ7oaAQ9MjO3ArfcQ8qqTMB6XJmMWsGOV1 salamandar@salamandar.fr 429 | ``` 430 | 431 | ### GPG Fingerprint 432 | 433 | ```text 434 | 4972 B73E B031 FB2F 91A9 4A92 C275 36D3 714F 339F 435 | ``` 436 | 437 | ### GPG Public key 438 | 439 | ```text 440 | -----BEGIN PGP PUBLIC KEY BLOCK----- 441 | 442 | xsFNBFHdNp0BEADSGXAd4c6qoUEmDFf1qXBLFluyxrkdprEl07T6niyE4lPXhHIx 443 | eJkLyjS5CeiGDez6cVgskUG+bWRYbno7q8+/RSeON5oBPILbmi1xYRU4AbsQyyl6 444 | 8TKeAHeH2dxbpnC1ZIKh0WiydVBx8i5sKijiT65lIDY+k/ahhpAYKHROplIEQJOJ 445 | GDV/+EqQxh4Cm2D8iM9+bjIqRLPXBicCRgP02x4Oeof4zXHRHvqUlHVbzkXD13ht 446 | 46JRFanQQdJoTAwHk0PzmDpTnTHtWW5Tlh8FiesEFs/McKCvaOpUIy2zkxqHlybD 447 | DA4wph2JTal0T70OXeJKApH9mjEioHX11QLRsQkkq55mrpxmFspEcmcO5+cBz0DA 448 | bWf+6zMDJuHJZ2WxyRO+hAvMmkgtco96qnN8bhf3Fn/k6MHPOssq1DxWUTkyrATm 449 | +Utg4/8VMQ747HHv/T4VpX0f2s7+JBYGhwLfQRjCmOc2+tpYTt24LpN9mj/zw9Xy 450 | k3xRDX16rJCcchFr4uUi2cowP8XrhsOqDdvq/KcZ12cMxfkncRJpKsW+Wp6zFaNS 451 | f1YbZbUp/FUz1oVSg4vgF5AZWG6c2QeXvji0J7/zTcuEvCdMOlnteztoxchHEH/2 452 | r9mTUjYAww44j1x9v2IGOwBXVR1B1b8m5hH+8PSThsKeFiVvkYAJWcKcwQARAQAB 453 | zSRGw6lsaXggUGnDqWRhbGx1IDxmZWxpeEBwaWVkYWxsdS5tZT7CwZEEEwEIADsC 454 | GyMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQRJcrc+sDH7L5GpSpLCdTbTcU8z 455 | nwUCX4SHCAIZAQAKCRDCdTbTcU8znwUlEACjJykBdwoAxMYNhB4z3DsU+4VxLo1n 456 | AWQ7y0JyDM2DEoVUX7ihYAQs5B4sdR055GwCpkt3x8l2DGO3CbsXbNMsWrW0qAie 457 | WE5qiThR2FMxID7fjNgP4GmymRTicSB25t5M9L/5liZPruH7WlPEpmyA4ympR9Qk 458 | AJwuAK0IgjsVvDZ6Eu/9upixc83/eUjan2cJyhOpkGg00hUHafpEvzvvd9Jy9L/s 459 | uzW5BkV8pQX20kjzi2ml8K2R6bHOUEEeNptgWdWHz6HEJUB9aaO/FeLTzf2txYXZ 460 | uf11sFWx0aRp4Ci1AlH/KrG3em1w3ZLpl42arqKoEsw9eL86Iy9asUdZ5HeKv0it 461 | ghkf3BSGaS5Y/ME2nQRQ+nx4N0m5BlMUSwSypF4GdqVkbTALASFoKpXLnlqnHf/l 462 | z+/wS6CwMmSFaQNiaVBzqR+Xm+2joZnjLF5JXIOA1slfViQiTP65Abje3H8iwqBQ 463 | k9xgoRUNl6ZTuGxrxlik6TGB6xOs+JQNHErGEGKxuESHewaPs4jngPFgtLVfbMBV 464 | aErfonVT/04Z4OrN3l6+5Ohgm7vHc2vnjcYNbWuXWit+Ymrm2brDRLsZ1s4hBsng 465 | AEqGS3mrUCKonBQMKaTl4Zh69lq2WMdv9P/SjIiMfkBqBJ1Yq8L1KIPenyl5sq75 466 | HIcqQgh0k1tgrsLBfAQTAQIAJgIbIwcLCQgHAwIBBhUIAgkKCwQWAgMBAh4BAheA 467 | BQJVNlHXAhkBAAoJEMJ1NtNxTzOfQSkP/2Jfy1B9X3uw03hc9g0wOb+OaB2vNivP 468 | pzWJNQ1ADGR64nk5EOicgm/+sf0pIaQyjLHQzyeSN6okVZeAfIevGhAP0StuHJ1M 469 | nJxx0o+BI21zHfdKqvJy548aS01pYmC45iiaA+/HCVPFJeAPq60OQOz2fGNF/hc4 470 | I4WCHpKfSmZMvnE+qzvxOwNMj8hvjkVoxak4ghI3kxXsOMQy/3yGp046fxc3eEoU 471 | 2aHr2LM6FS6Ur2Yfzur8kq1ehzIZFXU456DkGt8E8EQZNwgXxQtX6G4dZ2+bmN0K 472 | 2y+MaiseryIrU/zJqqopYMcnxNB8FJFmXVJcO2vvKb8nEdmYPDCqsix1dUuBieJV 473 | tTD5HGKI52npRFYILgtjoZRgIxBNKAuTKQ8hLHil2RHPT+S9rl4u5LLL2duAtTD3 474 | Q92PeIOWSZkoizNC4Nv8T39irRs7xnFGQqQESf7Jpx7QQM0R3X/knkPnyTAevdw+ 475 | C/819tWrDZQw2vj9OXrc8OcusZl7ljUPWIzbCwJte+dr4JsIAJzhLUv91oJUHUEy 476 | 8Uy3kFOa5o4lWF5FzFiWLfsz3cvEMvf9rCMpXT03EGXjA92YqSEmXGCnVXHSAEYu 477 | 50W3RcPENelIBokPsXtTsW9Lt7nkK7sfY+Hi+ccwAktuRJ5MFNdj2zCR3KCe8Bq7 478 | bAtSCzIX8TrBzSVTYWxhbWFuZGFyIDxzYWxhbWFuZGFyQHNhbGFtYW5kYXIuZnI+ 479 | wsGOBBMBCAA4FiEESXK3PrAx+y+RqUqSwnU203FPM58FAl+EhAwCGyMFCwkIBwIG 480 | FQoJCAsCBBYCAwECHgECF4AACgkQwnU203FPM58OLRAAzM9KjcGoqbsxOnB/20H3 481 | 9VmfZ752S4Ly4QkTcA5jTgOT6pcFaxOoVIWOZRvK7MkQpsF1Wc+ydQC41vdzx8B+ 482 | hxZpSAdLBku/Q2Stif0yuOZ6j9nl4OZycQFSpl9RmNDpKCK4et8UXb43L6ztfkWk 483 | jUMmu4slSG1MqJwzzwrs6U/MgASNBA8RPoyrJTLUJG3+bQ86xf5Lg5s/T8u5QUKj 484 | Ys9KUINVGDFDL3QLfVyUlqusZcgtdy1rMPOlpl2Z+uaD0aZ4RV/sHXVcbgEXHidF 485 | t4OSNafwrzNMHE13n2VGgFym/GN2c1dlfqbEmOjo9TJkq0NXorg66h9pUGLKhNOo 486 | RajGXgsfWybIX0gWQnOcqmwnGjfH5s4qfhOgw0ayYmrbEh31amY1jRPkSre+LpQm 487 | DWgpjWklJHxeMVlZPx7vmOtWofhN2mDRC/HtgFwuVndbSMDihQqS1u6PA/3NIJdi 488 | z2aFcLCbJTTBSbq42qtx7/FwF5Guq9A0kc90psCICmL4ibAwjN9ycq9LBpxSqO98 489 | brdRGTfq8e/OybbN+3yOYET3ci+wGtIawarV7oBsgdJdn2QRVpMBfsd8afV4U0VW 490 | HhFv/+RCCc6huxMIJMTAYnFmjDkEG2cS0EYf5z/k1uPURpWRjBv/AX//DfTY8Ee6 491 | j0Rr7SfmKc7IKo877rMR0/TNKkbDqWxpeCBQacOpZGFsbHUgPGZlbGl4LnBpZWRh 492 | bGx1QHlhaG9vLmZyPsLBjgQTAQgAOBYhBElytz6wMfsvkalKksJ1NtNxTzOfBQJf 493 | hIP+AhsjBQsJCAcCBhUKCQgLAgQWAgMBAh4BAheAAAoJEMJ1NtNxTzOfWCMQAMj1 494 | MlwGoRc01PX6Y3ysAkfOr0dJAGNs213hh7yZdle2xIKobdZX91GaS6np3Rkq9Yfk 495 | l3bV/GeQw2lUaYVFWbeoTcTDalkxda4JqjrGQ1E5n1VMMCKuSLgKGkzt1mVl5mO2 496 | KIUZtGFGoMBKa/wLudUqctdFAiPAl6JKPNwNz2Yj3zDs+YfR+lf47FqCldTUcmr1 497 | lAJ6QCmE1JX0DFcfEFEq+EvCAnYM7VQCeoAI6zPftDrRbRoS/GYDrPIJ+i6G8Biv 498 | J0yBUqYRoEZUAPr6bOhcY+HF74jN7+keI7sQNmQs5lac/1xWOEM9KPEnmniMCP3m 499 | pob3egeq50riZgJUO/YT4wURKoJ6m/k623LxGfuxktBpJCLW8ZNT50I+ZB2OkWHV 500 | 9IYgsH6mFUYL9QZ/FKWEmxHl1b5Bv+cXBN69LJDi1JAyA1v0l44Qh8WiBgfO9y+7 501 | uW3l6mATbhmnCfUdd2ngspCDDCvP6an9vY4t/WNXUxdfSTMgCbIa93tt4Oir6WVU 502 | DxgmybNl+k5sGiyzCxrlZhfur+UynkFTjrSFGE9Ee4/NGY230NunVPRlJnK4oHgc 503 | LtPpYzSUHPxJ0BacbxN/uEpvvjecycxU4HqBP8kKlnCAYkqW1/lmulPkuI34TAFA 504 | rgEfNSaRd/+XW1gOrqNLfsSoLQmHfuDLlHl8wFD60cyazJgBEAABAQAAAAAAAAAA 505 | AAAAAP/Y/+AAEEpGSUYAAQEAAAEAAQAA/9sAQwAIBgYHBgUIBwcHCQkICgwUDQwL 506 | CwwZEhMPFB0aHx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sA 507 | QwEJCQkMCwwYDQ0YMiEcITIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy 508 | MjIyMjIyMjIyMjIyMjIyMjIy/8AAEQgAhwCHAwEiAAIRAQMRAf/EAB8AAAEFAQEB 509 | AQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAE 510 | EQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2 511 | Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SV 512 | lpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn 513 | 6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//E 514 | ALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXETIjKBCBRCkaGxwQkj 515 | M1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2Rl 516 | ZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5 517 | usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQACEQMR 518 | AD8A9/ooooAKKKKACiisTxdr6+GPCmoauU8ySCP91H13yMQqL+LECgCrrPxB8K+H 519 | 9Yi0rVNZgt72TH7shjsz03EAhf8AgRFdKCCAQcg96+UfFHwv1e28HX/jLV9XSbVR 520 | Msl7abdxjMjAYZ843jcuVxwDXqtv8UrHwv8ADzwxHLFNqeuXdhCILGA5dztCgsec 521 | AkehJPQdaAPWajuLiC0gee5mjhhQZaSRgqqPcmvEH8YfFLVvG9n4Z26bodxdW5ui 522 | EhE5t4vm5kJJ5+XGOOorxjxTr/iDxHrs1pqGs3GrmOdooNn3JCGwCkY4GfYd6APq 523 | 2b4n+CIJ/JfxNp5fOMpJuX8xkfrXRadqlhq9ot1pt7b3du3SWCQOv5ivlnwpo+ke 524 | C9SB+JHhHUfJuCoguZATDFn1UfeP4kj+7XtEvhLw94asR4t8JTzadGIxNIbRmntp 525 | 4epMkeTlcc5TkdQDQB6TRXkdh8YZ7bxqmgavaW1zaXKrLa6jYPuUxMNwZlyc45BI 526 | I+6TivXKACiiigAooooAKKKKACiiigCG6uVtLdpmjlkC/wAEUZdj9AK8k8X/ABQ0 527 | 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 611 | =5TN4 612 | -----END PGP PUBLIC KEY BLOCK----- 613 | ``` 614 | 615 | ## tituspijean 616 | 617 | Contact email: tituspijean{at}outlook.com 618 | 619 | ### SSH key 620 | 621 | ```text 622 | ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAgEAg97ZVfNvMV+qYtJSJWbVhBeXIM9OcifEuFAXicYEu4geERFghHwFAJe8dncFam2IMfiVW5rQ3vz3jOyLqEwMg8+E9RmYW+Jrs3HlLTA1QdjRZvNdIIWvmIgLjgG4ok+k8zap9XgSEBC3rHLSrQJ0/srtYfPEsldiy3Fw2FK6N/ic9nyYv/ZetuIPY7+myfppvZZe4gMO/lBYKxPe/DhDMq462yL60ugX9B7UcOAEgFJoPKkacLstV/eCUf4X6SkQQ2p7tsz8NOQ1FcGkdS5BsYYFNbOnllrFAk/A93JyjeeuINR6XXSekAK513atyxCDvKSIcW6uny0ta8NLU1lPc4QLupY5Ua+b7cmRW/hCyFlIcJb74MekmTSvxbs1TI/AewRpyzxjXr34zUnhdan4DsEwAEJ5p+kZPu0/vBjgsTkRDTte4qHMLZXEL7kXCg5m2Hi8IisIZKVWAnb888iqerJvbJQ9Din0y+QbSjk2UN3D6zd4C7swxOUNQHze+aAEUW6kiGK+P2+RmwPJ6ZBs5e+hkI4R6Imj38xdwv9YQOyXn095KMPCmWuo3MHAVpf2CRdznm0h/12pAkx/UIT9U73x5KKkWuM+8CGQMZTEn1U4+0ZwzROnWVLQ08VRqXzlskNfD2KDl/wLWuURbuDxaacx+y8t4j1gSzKB/n5gXmc= tituspijean 623 | ``` 624 | 625 | ### GPG Fingerprint 626 | 627 | ```text 628 | 4D96 9C81 8690 DF22 4ABE 7103 EF3B 0D7C C0A9 4720 629 | ``` 630 | 631 | ### GPG Public key 632 | 633 | ```text 634 | -----BEGIN PGP PUBLIC KEY BLOCK----- 635 | 636 | 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 683 | iQ== 684 | =WbPz 685 | -----END PGP PUBLIC KEY BLOCK----- 686 | ``` 687 | 688 | ## Yalh76 689 | 690 | ### SSH key 691 | 692 | ```text 693 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC90WdsVq7gRI/OCrowDYMKCo+u9I7E9VCSr6aXPzs2V yalh 694 | ``` 695 | 696 | ### GPG Fingerprint 697 | 698 | ```text 699 | ``` 700 | 701 | ### GPG Public key 702 | 703 | ```text 704 | ``` 705 | 706 | ## Tag 707 | 708 | ### SSH key 709 | 710 | ```text 711 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN4zQHEpRO1gZM20sEz6Z6FpX5FoHAWvtUL4Vs1tg9WE tag 712 | ``` 713 | 714 | ### GPG Fingerprint 715 | 716 | ```text 717 | ``` 718 | 719 | ### GPG Public key 720 | 721 | ```text 722 | ``` 723 | 724 | ## OniriCorpe 725 | 726 | ### SSH key 727 | 728 | ```text 729 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAb+PnME7+BFnFq+7Xx4Y3QA9sdoP4xBwkj33gh1Ksn+ krau 730 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKFOJbpru1JJZoVSHeCz7VENQxAF17icAx28S3Imhfiy apple 731 | ``` 732 | 733 | ### GPG Fingerprint 734 | 735 | ```text 736 | ``` 737 | 738 | ### GPG Public key 739 | 740 | ```text 741 | ``` 742 | 743 | ## Rodinux 744 | 745 | ### SSH key 746 | 747 | ```text 748 | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII27lAbaK9pWwDVmwe8bzBIFPXGu1pmTByLKjPuPJTWD contribute-yunohost 749 | ``` 750 | 751 | ### GPG Fingerprint 752 | 753 | ```text 754 | ``` 755 | 756 | ### GPG Public key 757 | 758 | ```text 759 | ``` 760 | -------------------------------------------------------------------------------- /yunohost_project_organization.md: -------------------------------------------------------------------------------- 1 | # Goal of this document 2 | 3 | This document aims at describing the structure and the way the collective works to make development and maintenance of YunoHost possible. 4 | More specifically, in line with the values of the project, it is important to: 5 | 6 | - maintain transparency on the functioning of the collective and the values of the project 7 | - explain the open nature of the project, so that outsiders feel entitled to contribute to the project, by joining or not joining the collective 8 | - enable the members of the collective to feel legitimate to discuss, contribute and act on decisions 9 | - make the project sustainable, by sharing knowledge and responsibilities, by limiting the “bus factor” 10 | - limit power asymmetries 11 | - have a formal decision-making mechanism, e.g. to resolve a conflict, or to develop the collective or the project 12 | 13 | ## Goal of the YunoHost project 14 | 15 | In a context where the evolution of technological tools lead to major societal challenges, YunoHost advocates an Internet that is decentralised and that allows people to remain in control of their data and their digital tools. One of the tenets of such an Internet is to drastically simplify, make accessible and to democratise server administration, when this is traditionnaly reserved to a technical elite. 16 | 17 | As such, the goal of the YunoHost project is to build an operating system and all the necessary tools to install and administer, autonomously and without too many technical skills, a server and digital services in a private context (family, group of friends…) or collective (non profit, company, school…). 18 | 19 | The YunoHost collective is close to other like-minded collectives, such as FFDN, Framasoft, CHATONS, or La Quadrature du Net. The collective is also sensitive to ecological issues and inclusivity. 20 | 21 | ### Spirit and values of the project 22 | 23 | 1. **Digital commons**: all software produced by the YunoHost project is published as Free Software and will remain Free. YunoHost is developed and maintained mostly by volunteers in an open, horizontal community, that does their best with the time, means and energy they have. 24 | 2. **Accessibility**: the design of YunoHost is centered on people with little technical knowledge. Its processes, interfaces and documentation should be simple and educational. 25 | 3. **Security**: YunoHost must provide a fairly up to date system, with reasonable security by default, and guide the users on ways to harden their system. 26 | 4. **Hackability**: YunoHost must allow its users to take ownership of and modify their installation, to adjust it to their needs, or specific use cases, or uses that are not yet covered, or to tweak the look and feel. 27 | 28 | ## YunoHost organization's 29 | 30 | YunoHost is developed and maintained by community of volunteers. The community has an open and horizontal structure. 31 | 32 | Members of YunoHost are part of : 33 | 34 | - regular users 35 | - occasional contributors 36 | - regular contributors 37 | 38 | The community organizes regulary meetings who are open to everyone. You can find the date on the forum of project. (Actually these meetings are planned the 1st and 3rd tuesday every month on Mumble.) The notes of these meetings are public as well. 39 | 40 | ### Users 41 | 42 | This refers to the people who use YunoHost in their daily life, who ask for help, speak about bugs and make contributions. 43 | 44 | The community is aware about the importance to listen to users and take advice about their contributions for the future of the project. 45 | 46 | ### Occasional contributors 47 | 48 | These are the people who contribute to the project on an ad hoc basis. Any person wishing to do so is, without prior agreement, welcome and entitled to contribute to the project (provided that they do not go against the values of the project). 49 | 50 | The community provides as much documentation and tools as possible to guide new contributors in their first contributions in a spirit of caring. 51 | 52 | Contributions often take the form of *Pull Request* (PR) (for example, on the *core*, on the apps, on the doc, ...) but can also be translations, graphic elements, security audits, etc... 53 | 54 | With some exceptions, occasional contributors can help with reviews, but they do not act to integrate their work into the project. They also do not have a vote in formal decision-making. They are, however, welcome to express their opinions if they wish. 55 | 56 | ### Regular contributors (RC) 57 | 58 | These are the people who regularly contribute to the project in the form of work, ensure the review and integration of the work of other contributors, as well as the short and long term maintenance of the project as a whole. 59 | 60 | Regular contributors are organised into working groups: 61 | 62 | - **Core Group**: work on the central system part of the project (mainly YunoHost, YunoHost-Admin, Moulinette, SSOwat repositories) and on the distribution tools (.deb packages, preinstall images) and development (ynh-dev) 63 | - **Apps Group**: focus on new applications packaging and collectively maintain current apps, work also on catalog index, define good packaging practices and metrics tools for quality control. 64 | - **Infra Group**: deploys, administers, maintains and saves the various services needed by the project (documentation, forum, chatrooms, demo, paste, stack mail, CI, diagnostic, dynette, dashboard, …) 65 | - **Support / doc / comm group**: animates the mutual aid on the forum and the support rooms, ensures the maintenance and update of the doc, communicates on the evolutions of the project on the forum, the social networks, or in conference. 66 | 67 | Since there are multiple connections between these different themes, it is not uncommon for a person to be a member of several of these groups. Nevertheless it is necessary and sufficient to be a member of one of these groups to obtain the status of regular contributor. 68 | 69 | Anyone who has already contributed at least once to the project can apply for regular contributor status. This request is then subject to a vote of acceptance by all the other regular contributors. 70 | 71 | Being a member of a group entitles you to certain administrative rights detailed in appendix A, typically the right to validate and integrate your own work or the work of other contributors. Good use should be made of these rights as described in the next section. Being regular contributors also makes it possible to propose a vote when it is necessary to formally record a decision for the project.> [] 72 | 73 | Regular contributors are expected to coordinate regularly with the rest of the team, for example by participating in meetings or via chat and forum. 74 | 75 | The loss of membership of a group takes place by voluntary departure of the person, or following a vote of radiation for inactivity, non-respect of the charters or the values of the project, or abuse of the rights of administration. 76 | 77 | ## Validation and integration of PR 78 | 79 | Due to the nature of the project, contributions are mainly made in the form of "pull requests" (PR) or "merge requests" (MR). The realization, the review, and the collective validation of PRs are important issues, since they are precisely what makes the project alive from a purely technical point of view. 80 | 81 | Behind each integration request can be hidden various human and technical issues among which stability (not breaking everything because of an unforeseen branching), security (not introducing flaws or malicious code), durability (limiting the *bus factor* and the technical debt), pragmatism ("good enough"), agreement with the spirit of the project (UX, ..), evolution on the short and long term. The review and validation process of a PR is also a complicated exercise insofar as it is time consuming, and can be a source of tension or frustration. One of the obstacles to the validation of a PR is also often linked to a feeling of lack of legitimacy in accepting the integration of a PR, or to the psychological impact of being the person who has accepted the integration of a PR. 82 | 83 | A crucial issue in the organization of the project is therefore to find a set of rules and good practices that allow for a fluid, balanced operation, with validation as much as possible by consensus, and that distributes the responsibility to the collective rather than to individuals. 84 | 85 | ### Best practices and recommendations 86 | 87 | - When a job has significant implications (or, for occasional contributors), it is strongly encouraged to discuss it in advance with the rest of the team to ensure that the imagined implementation fits with the spirit of the project and with the other work of the team. 88 | - Correctly describe its RP and the problem it addresses (and if applicable, the technical details needed to test) 89 | - Ensure the correction of problems reported by the automatic testing tools (CI) 90 | 91 | ### Validation process 92 | 93 | This section details the process of validating the RPs in the different repositories of the project. The objective of this process is to achieve a "soft consensus". 94 | 95 | Contributors are individually and collectively responsible for gauging the importance of an RP to define the extent to which it should be lightly or thoroughly validated by other group members. 96 | 97 | - The "micro" PR: it is a typographical correction, a correction for an obvious bug... These PR can be integrated by its author without explicit validation by another member of the group. 98 | - Medium" PRs: these are maintenance operations (e.g. updating an application, minor cleaning/refactoring, adding a small feature, ...). It is usually better to get a validation from another member of the group. 99 | - The "big project" PRs: these are new features or important refactorings, with major consequences for the future of the project or the app. It is then strongly advised to obtain a thorough validation by at least one other member of the group, and an agreement in principle from the other members. 100 | 101 | Other contributors may freely take part in the review of an RP. The author of an RP may also request or remind other contributors that their RP is awaiting review. After a certain period of time, if it appears that no contributor has time or energy available to participate in the review of an RP, then it can still be merged by its author. 102 | 103 | If a disagreement emerges during or after the validation of a PR, a cordial discussion should be held with the rest of the team in order to reach a consensus on the way forward. If no consensus is reached, a vote is held to make a decision, in which all regular contributors to the project can participate. 104 | 105 | ## Collective decision making 106 | 107 | When Regular Contributors need to make a formal decision about the project ("resolution"), or to resolve a conflict after a consensus search has failed, any Regular Contributor can initiate a formal voting process. All regular contributors can take part in this vote. 108 | 109 | ## Appendix A. Group Administration Fees 110 | 111 | This part lists the administration rights for the different groups of the YunoHost project. 112 | 113 | N.B. these are not decision making rights, but access and modification rights on the different platforms used by the project. 114 | 115 | Members of these groups agree to abide by [the project's system administration policy](adminsyscharter.md). 116 | 117 | ### Core 118 | 119 | - GitHub: member of the [Devs team of the YunoHost organization](https://github.com/orgs/YunoHost/teams/devs) 120 | - permission to create branches, merge PRs (respecting the rules stated above) 121 | - Continuous integration: access rights to Gitlab to interact with the CI core? 122 | - Forum: member of the [Dev group.](https://forum.yunohost.org/groups/Dev) 123 | -Chatrooms: admin on the Dev chatroom 124 | 125 | ### Apps 126 | 127 | - GitHub: (Owner) [of the YunoHost-Apps organization](https://github.com/orgs/YunoHost-Apps/people?utf8=%E2%9C%93&query=%20role%3Aowner) 128 | - permission to create branches and merge PRs on all app repositories (respecting the rules stated above) 129 | - GitHub: member of the [`Apps` team of the `YunoHost` organization](https://github.com/orgs/YunoHost/teams/apps) 130 | - permission to create branches and merge PR on the catalog repository (apps), exampleynh, packagelinter, packagecheck, ... (respecting the rules stated above) 131 | - Forum: Member of [`Apps` group](https://forum.yunohost.org/groups/Apps). 132 | - Chatrooms: admin on the Apps chatroom 133 | 134 | ### Infra 135 | 136 | - Servers: SSH access by key on some (as needed) or on all servers, 137 | - GitHub: member of the [`Infra` team of the `YunoHost` organization](https://github.com/orgs/YunoHost/teams/infra), 138 | - Forum, Weblate, XMPP, CI: administrator, 139 | - Forum: member of the [`Infra` group](https://forum.yunohost.org/groups/Infra). 140 | - Chatrooms: admin on the Dev and Infra chatroom 141 | 142 | ### Support, Doc, Communication, Translation 143 | 144 | - GitHub: member of the [`Doc` team of the `YunoHost` organization](https://github.com/orgs/YunoHost/teams/doc). 145 | - permission to create branches and merge PRs on the "doc" repository (respecting the rules stated above) 146 | - Forum: moderator status, member of the [`Support & Doc` group](https://forum.yunohost.org/groups/SupportDoc), possibility to have the group badge visible next to the avatar. 147 | - Diaspora*: access to the account [YunoHost](https://framasphere.org/people/01868d20330c013459cf2a0000053625), 148 | - Twitter: access to the [YunoHost](https://twitter.com/yunohost) account, 149 | - Weblate: administrator on the [translation tool](https://translate.yunohost.org/projects/yunohost/). 150 | - Chatrooms: admin on the Doc chatroom 151 | 152 | ## Appendix B. Composition of the different groups 154 153 | 154 | Last updated on 2022-03-15 155 | 156 | - **Core** : Aleks, Bram, Kayou, ljf, Tagadda, axolotle, tituspijean, OniriCorpe 157 | - **Apps** : Ericg, Josue, Kayou, tituspijean, yalh76, frju365, Tagadda, OniriCorpe, Rodinux 158 | - **Infra** : Aleks, Bram, Kayou, ljf, yalh76, tituspijean, Tagadda, OniriCorpe 159 | - **Support/doc/comm/trad/bureaucracy** : Aleks, Ericg, ljf, tituspijean, Tagadda, JimboJoe, wbk, OniriCorpe, Rodinux 160 | 161 | ## Appendix C. Resolutions 162 | 163 | - On the fact that the commercial sale of services related to YunoHost, such as distribution, support, or outsourcing, is allowed. 164 | - On good app packaging practices, in particular to respect the common practice defined in exampleynh rather than factoring 165 | - Meeting dates 166 | - On the criteria for integrating apps into the catalog 167 | -------------------------------------------------------------------------------- /yunohost_project_organization_fr.md: -------------------------------------------------------------------------------- 1 | # Objectif du document 2 | 3 | Ce document a pour objectif de décrire la structure et le fonctionnement du collectif qui assure le développement et la maintenance du projet YunoHost. 4 | 5 | En particulier, en accord avec les valeurs portées par le projet, il est important de : 6 | 7 | - maintenir une transparence sur le fonctionnement du collectif et les valeurs du projet 8 | - d'expliciter le caractère ouvert du projet, pour que les personnes extérieures se sentent légitimes à contribuer au projet, en rejoignant ou non le collectif 9 | - permettre aux membres du collectif de se sentir légitimes à discuter, contribuer et acter des décisions 10 | - assurer la pérennité du projet en partageant les connaissances et responsabilités, et en limitant le "*bus factor*" 11 | - limiter les asymétries de pouvoir 12 | - avoir un mécanisme de prise de décision formel, par exemple pour résoudre un conflit, ou pour faire évoluer le collectif ou le projet. 13 | 14 | ## Intention du projet YunoHost 15 | 16 | Dans un contexte où l'évolution des outils technologiques posent des enjeux sociétaux majeurs, YunoHost défend un Internet décentralisé et où les personnes restent au contrôle de leurs données et de leurs outils numériques. L'une des pierres angulaires de la construction d'un tel Internet est de drastiquement simplifier, rendre accessible et démocratiser la gestion des serveurs, là où cette pratique est traditionellement réservée à une élite technicienne. 17 | 18 | Ainsi, l'objectif du projet YunoHost est de construire un système d'exploitation et l'ensemble des outils nécessaires pour installer et gérer, en autonomie et sans trop de compétences techniques, un serveur et des services numériques dans un contexte privé (famille, groupe d'ami, ...) ou collectif (association, entreprise, école, ...). 19 | 20 | Le collectif YunoHost est proche d'autres collectifs aux objectifs connexes tels que la FFDN, Framasoft, CHATONS, ou La Quadrature du Net. Le collectif est également sensible aux enjeux d'écologie et d'inclusivité. 21 | 22 | ### Esprit et valeurs du projet 23 | 24 | 1. **Commun numérique** : Tous les éléments logiciels conçus par le projet YunoHost sont sous licence libre et le resteront. YunoHost est développé et maintenu essentiellement par le bénévolat d'une communauté ouverte, horizontale, et qui fait de son mieux en fonction du temps, des moyens et de l'énergie dont elle dispose. 25 | 2. **Accessible** : La conception de YunoHost s'articule en priorité autour des personnes ayant peu de connaissances techniques, avec des procédures, des interfaces et des documentations simples et pédagogiques. 26 | 3. **Sécurité** : YunoHost doit fournir un système raisonnablement maintenu à jour et raisonnablement sécurisé par défaut, et à guider les utilisateurices sur comment renforcer la sécurité de leur système. 27 | 4. **Bidouillabilité** : YunoHost doit permettre aux utilisateurices de s'approprier et modifier leur installation pour l'adapter à des besoins ou cas d'usages spécifiques ou qui ne sont pas encore bien gérés, ou pour personnaliser l'apparence. 28 | 29 | ## Organisation de YunoHost 30 | 31 | YunoHost est développé et maintenu par une communauté bénévole, ouverte, horizontale. 32 | 33 | Cette communauté est composée de : 34 | 35 | - les utilisateurices du projet 36 | - les contributeurices occasionels 37 | - les contributeurices réguliers 38 | 39 | La communauté organise à intervalle régulier des réunions de coordination en ligne, qui sont publiquement annoncées et à laquelle n'importe quelle personne peut se joindre. (Plus précisément, à l'heure de l'écriture de ce document, ces réunions ont lieu les 1er et 3ème mardi de chaque mois sur Mumble, et sont annoncées sur le forum.) Le compte rendu de ces réunions est également rendu public. 40 | 41 | ### Les utilisateurices 42 | 43 | Il s'agit des personnes qui utilisent YunoHost dans leur vie quotidienne, demandent de l'aide, rapportent des bugs et font des retours d'expérience. 44 | 45 | La communauté est consciente de l'importance de demander et de prendre en compte les retours d'expérience et les cas d'utilisation des utilisateurices dans l'évolution du projet. 46 | 47 | ### Les contributeurices occasionels (OC) 48 | 49 | Il s'agit des personnes qui contribuent ponctuellement au projet. Toute personne le souhaitant est, sans accord prélable, bienvenue et légitime à contribuer au projet (sous couvert de ne pas aller à l'encontre des valeurs portées par le projet). 50 | 51 | La communauté met à disposition autant que possible de la documentation et des outils pour guider les nouvelles contributeurices dans leurs premières contributions dans un esprit de bienveillance. 52 | 53 | Les contributions se concrétisent souvent la forme de *Pull Request* (PR) (par exemple, sur le *core*, sur les apps, sur la doc, ...) mais peuvent aussi constituer des traductions, des éléments graphiques, des audits de sécurité, etc... 54 | 55 | Sauf exception, les contributeurices occasionels peuvent aider aux revues, mais n'actent pas elleux-même l'intégration de leurs travaux dans le projet. Iels n'ont également pas non plus de droit de vote lors des prises de décisions formelles. Iels sont cependant les bienvenues pour exprimer leur avis si iels le souhaitent. 56 | 57 | ### Les contributeurices réguliers (RC) 58 | 59 | Il s'agit des personnes qui contribuent régulièrement au projet sous la forme de travaux, assurent la revue et actent l'intégration des travaux d'autres contributeurices, ainsi que la maintenance à court et long terme du projet dans son ensemble. 60 | 61 | Les contributeurices réguliers sont organisés en groupes de travail : 62 | 63 | - **Groupe Core**: travaille sur la partie "système central" du projet (principalement les dépôts YunoHost, YunoHost-Admin, Moulinette, SSOwat), ainsi que des outils de distribution (paquets .deb, images préinstallées), de développement (ynh-dev). 64 | - **Groupe Apps**: se concentre sur le packaging de nouvelles applications et assurent collectivement la maintenance de l'écosystème d'applications existants, ainsi que l'indexation dans le catalogue, la définition des bonnes pratiques de packaging, et des outils et métriques de contrôle qualité. 65 | - **Groupe Infra**: déploie, administre, maintient et sauvegarde les différents services dont a besoin le projet (documentation, forum, chatrooms, demo, paste, stack mail, CI, diagnostique, dynette, dashboard, ...) 66 | - **Groupe support / doc / comm**: anime l'entraide sur le forum et les salons de support, assure la maintenance et mise à jour de la doc, communique sur les évolutions du projet sur le forum, les réseaux sociaux, ou en conférence. 67 | 68 | Les connexions étant multiples entre ces différentes thématiques, il n'est pas rare qu'une personne soit membre de plusieurs de ces groupes. Néanmoins il est nécessaire et suffisant d'être membre d'un de ces groupe pour obtenir la qualité de contributeurice régulier. 69 | 70 | N'importe quelle personne ayant déjà contribué au moins une fois au projet peut demander le statut de contributeurices régulier. Cette demande est ensuite sujette à un vote d'acceptation par l'ensemble des autres contributeurices réguliers. 71 | 72 | Le fait d'être membre d'un groupe ouvre le droit à certains droits d'administration détaillés dans l'annexe A, typiquement le droit de valider et d'intégrer ses propres travaux ou les travaux d'autres contributeurices. Il convient de faire un bon usage de ces droits tels que décrit dans la section suivante. Être contributeurices réguliers permet également de proposer un vote lorsqu'il est nécessaire d'acter formellement une décision pour le projet. 73 | 74 | Il est attendu des contributeurices réguliers de se coordonner régulièrement avec le reste de l'équipe, par exemple en participant aux réunions ou bien via le chat et le forum. 75 | 76 | La perte de la qualité de membre d'un groupe s'opère par départ volontaire de la personne, ou suite à un vote de radiation pour inactivité, non-respect des chartes ou des valeurs du projet, ou abus des droits d'administration. 77 | 78 | ## Validation et d'intégration des PR 79 | 80 | De par la nature du projet, les contributions se concrétisent principalement sous la forme de "demandes d'intégration" (en anglais *Pull Request* (PR) ou *Merge Request* (MR)). La réalisation, la revue, et la validation collective des PR sont des enjeux importants, puisqu'ils s'agit précisément de ce qui rend le projet vivant d'un point de vue purement technique. 81 | 82 | Derrière chaque demande d'intégration peut se cacher des problématiques humaines et techniques variées parmis lesquelles la stabilité (ne pas tout casser à cause d'une ramification imprévue), la sécurité (ne pas introduire de faille ou de code malveillant), la pérennité (limiter le *bus factor* et la dette technique), le pragmatisme ("good enough"), l'accord avec l'esprit du projet (UX, ..), l'évolution sur le court et long terme. Le processus de revue et de validation d'une PR est lui en aussi un exercice compliqué dans la mesure où il est couteux en temps, et peut être source de tension ou de frustration. L'un des freins à la validation d'une PR est aussi souvent lié à un sentiment de manque de légitimité à acter l'intégration d'une PR, ou à l'impact psychologique d'être la personne qui a acté l'intégration d'une PR. 83 | 84 | Un enjeu crucial de l'organisation du projet est donc de trouver un ensemble de règles et de bonne pratiques qui permettent un fonctionnement fluide, équilibré, avec une validation autant que possible par consensus, et qui répartisse la responsabilité sur le collectif plutôt que les individus. 85 | 86 | ### Bonnes pratiques et recommendations 87 | 88 | - Lorsque un travail a des implications importantes (ou, pour les contributeurs occasionels), il est fortement encouragé de discuter en amont avec le reste de l'équipe pour s'assurer que l'implémentation imaginée convienne avec l'esprit du projet et avec les autres travaux de l'équipe. 89 | - Décrire correctement sa PR et le problème auquel elle répond (et le cas échéant, les détails techniques nécessaires pour tester) 90 | - Veiller à corriger les problèmes remontés par les outils de tests automatique (CI) 91 | 92 | ### Processus de validation 93 | 94 | Cette section détaille le processus de validation des PR dans les différents dépôts du projet. L'objectif de ce processus est d'obtenir un « consensus mou ». 95 | 96 | Les contributeurices ont la responsabilité individuelle et collective de jauger de l'importance d'une PR pour définir à quel point elle doit faire l'objet d'une validation légère ou approfondie par d'autres membres du groupe. 97 | 98 | - Les PR "micro": il s'agit d'une correction typographique, d'un correctif pour un bug évident... Ces PR peuvent être intégrées par son auteur sans validation explicite par un autre membre du groupe. 99 | - Les PR "moyennes": il s'agit d'opération de maintenance (par ex. mise à jour d'une application, nettoyage/refactoring mineur, ajout d'une petite fonctionnalité, ...). Il est généralement mieux d'obtenir une validation d'un autre membre du groupe. 100 | - Les PR "gros chantier" : il s'agit de nouvelles fonctionnalités ou de refactorings importants, ayant des conséquences majeures pour le futur du projet ou de l'app. Il est alors fortement conseillé d'obtenir une validation approfondie par au moins un autre membre du groupe, et un accord de principe des autres membres. 101 | 102 | Les autres contributeurices peuvent librement prendre part à la revue d'une PR. L'auteur d'une PR peut également solliciter ou rappeler aux autres contributeurices que sa PR est en attente d'une revue. Au bout d'un certain délai, s'il s'avère qu'aucune contributeurice n'a de temps ou d'énergie disponible pour participer à la revue d'une PR, alors elle peut tout de même être mergée par son auteur. 103 | 104 | Si un désaccord émerge pendant ou après la validation d'une PR, une discussion cordiale doit être privilégiée avec le reste de l'équipe dans le but de dégager un consensus sur la marche à suivre. Si aucun consensus n'est trouvé, un vote est organisé pour prendre une décision, auquel peuvent prendre part toutes les contributeurices régulier du projet. 105 | 106 | ## Prises de décision collective 107 | 108 | Lorsque les contributeurices régulier ont besoin de prendre une décision formelle relative au projet ("résolution"), ou pour résoudre un conflit après qu'une recherche de consensus ait échoué, n'importe quel contributeurices régulier peut déclencher un processus de vote formel. Toutes les contributeurices régulier peuvent prendre part à ce vote. 109 | 110 | ## Annexe A. Droits d’administration afférents aux groupes 111 | 112 | Cette partie liste les droits d’administration pour les différents groupes du projet YunoHost. 113 | 114 | N.B. il ne s’agit pas des droits de prises de décisions, mais des droits d'accès et de modification sur les différentes plateformes utilisées par le projet. 115 | 116 | Les membres de ces groupes s'engagent à respecter [la charte d'administration système du projet](adminsys_charter.md). 117 | 118 | ### Core 119 | 120 | - GitHub : membre de l’[équipe `Devs` de l’organisation `YunoHost`](https://github.com/orgs/YunoHost/teams/devs) 121 | - permission de créer des branches, merger des PR (en respectant les règles énoncées plus haut) 122 | - Intégration continue : droits d'accès au Gitlab pour interagir avec la CI core ? 123 | - Forum : membre du [groupe `Dev`](https://forum.yunohost.org/groups/Dev). 124 | - Chatrooms: admin sur la chatroom Dev 125 | 126 | ### Apps 127 | 128 | - GitHub : propriétaire (Owner) [de l’organisation YunoHost-Apps](https://github.com/orgs/YunoHost-Apps/people?utf8=%E2%9C%93&query=%20role%3Aowner) 129 | - permission de créer des branches et de merger des PR sur tous les dépôts d'app (en respectant les règles énoncées plus haut) 130 | - GitHub : membre de l’[équipe `Apps` de l’organisation `YunoHost`](https://github.com/orgs/YunoHost/teams/apps) 131 | - permission de créer des branches et de merger des PR sur le dépôt du catalog (apps), example_ynh, package_linter, package_check, ... (en respectant les règles énoncées plus haut) 132 | - Forum : membre du [groupe `Apps`](https://forum.yunohost.org/groups/Apps). 133 | - Chatrooms: admin sur la chatroom Apps 134 | 135 | ### Infra 136 | 137 | - Serveurs : accès SSH par clé sur certains (selon les besoins) ou sur la totalité des serveurs, 138 | - GitHub : membre de l’[équipe `Infra` de l’organisation `YunoHost`](https://github.com/orgs/YunoHost/teams/infra), 139 | - Forum, Weblate, XMPP, CI: administrateur, 140 | - Forum : membre du [groupe `Infra`](https://forum.yunohost.org/groups/Infra). 141 | - Chatrooms: admin sur la chatroom Dev et Infra 142 | 143 | ### Support, Doc, Communication, Traduction 144 | 145 | - GitHub : membre de l’[équipe `Doc` de l’organisation `YunoHost`](https://github.com/orgs/YunoHost/teams/doc). 146 | - permission de créer des branches et de merger des PR sur le dépôt "doc" (en respectant les règles énoncées plus haut) 147 | - Forum : statut de modérateur, membre du [groupe `Support & Doc`](https://forum.yunohost.org/groups/Support_Doc), possibilité d'avoir le badge du groupe visible à côté de l'avatar. 148 | - Diaspora* : accès au compte [YunoHost](https://framasphere.org/people/01868d20330c013459cf2a0000053625), 149 | - Twitter : accès au compte [YunoHost](https://twitter.com/yunohost), 150 | - Weblate : administrateur sur l’[outil de traduction](https://translate.yunohost.org/projects/yunohost/). 151 | - Chatrooms: admin sur la chatroom Doc 152 | 153 | ## Annexe B. Composition des différents groupes 154 | 155 | Dernière mise à jour le 2022-03-15 156 | 157 | - **Core** : Aleks, Bram, Kayou, ljf, Tagadda, axolotle, tituspijean, OniriCorpe 158 | - **Apps** : Ericg, Josue, Kayou, tituspijean, yalh76, frju365, Tagadda, OniriCorpe, Rodinux 159 | - **Infra** : Aleks, Bram, Kayou, ljf, yalh76, tituspijean, Tagadda, OniriCorpe 160 | - **Support/doc/comm/trad/bureaucracy** : Aleks, Ericg, ljf, tituspijean, Tagadda, JimboJoe, wbk, OniriCorpe, Rodinux 161 | 162 | ## Annexe C. Résolutions 163 | 164 | - Sur le fait que la vente commerciale de services liés à YunoHost, tels que la distribution, le support, ou l'infogérance, est autorisée. 165 | - Sur les bonnes pratiques de packaging d'app, en particulier de respecter la pratique commune définie dans example_ynh plutôt que de factoriser 166 | - Dates des réunions 167 | - Sur les critères d'intégration des apps dans le catalogue 168 | -------------------------------------------------------------------------------- /yunohost_project_tos.md: -------------------------------------------------------------------------------- 1 | # General and Specific Conditions of Services operated by the YunoHost project 2 | 3 | 01/02/2024 4 | 5 | ## Preamble 6 | 7 | The YunoHost project is a team of volunteers who have made common cause to create a free operating system for servers, called YunoHost. YunoHost is published [under the GNU Affero General Public License v3](https://www.gnu.org/licenses/agpl-3.0.txt). In connection with this software, the project administers and makes available several technical and community services for various purposes. 8 | 9 | By using these services, you agree to be bound by the following terms. 10 | 11 | ## Short version (TL;DR) 12 | 13 | - **"This is a community project" clause**: you accept and respect the fact that the project is maintained by team of volunteers, and that volunteer time and energy are the driving force behind the project. You are welcome to contribute to the project, punctually or over time, in any way you choose (whether it's talking about it around you, giving us constructive feedback, helping others, saying hi, translating, testing, coding, donating, ...). 14 | - **"We do what we can" clause**: You accept that the volunteer team does the best it can, and is not subject to any obligation of means or result. The project cannot be held responsible for any consequential damage if a service ceases to operate. The team may decide to stop a service at any time. 15 | - **"We are not FAANGs" clause**: We try to minimize as much as possible the personal data that may transit, be stored on our infrastructure or be transferred to third parties. We publish the code that runs our services. We do not resell personal data. We only use data for internal, anonymized statistical purposes. 16 | - **"We do not like toxic people" clause**: you must respect other members of the community by showing civic-mindedness, politeness and kindness. 17 | - **"Free software is not about volunteers doing your bidding" clause**: messages that simply ask when a feature, fix or update will be available, that are intentionally or unintentionally insistent, without any form of politeness, benevolence or intention to contribute, are not welcome. If you would like a particular point to be addressed, ask yourself how you can contribute, or at the very least, speak kindly of it. 18 | - **"We do not read crystal balls" clause**: the forum and support chat clearly state that in order to obtain help, it is necessary to provide basic information (hardware type, YunoHost version, ..), contextual elements and complete logs. Not doing so is extremely annoying for the volunteers trying to help you. 19 | - **"We do not want to go to jail" clause**: you must respect the law (whether it's well-made or silly). 20 | - **"Any abuse will be punished" clause**: technical or human abuse of the services may result in the closure of your accounts and the banning of access to some or all of the services, possibly without warning or negotiation. 21 | 22 | ## Distinction between YunoHost as a project, as a service, as software, and as distribution 23 | 24 | This document details the TOS that apply **to the services provided by the YunoHost project**, but **not** to YunoHost as software **nor** to the applications offered in the YunoHost catalog. 25 | 26 | YunoHost as software is released [under the AGPLv3 license](https://www.gnu.org/licenses/agpl-3.0.txt) and is therefore provided without warranty of any kind and is not liable for any damages resulting from its use, nor from the use of the applications it allows to install. 27 | 28 | *If you use YunoHost to provide services to others, it is your responsibility to define and publish your own terms and conditions of use for your own services, and to inform yourself of any legal implications of the applications you install.* 29 | 30 | ## General and specific conditions of service 31 | 32 | The YunoHost project reserves the right to update and modify these conditions. In this case, the YunoHost project will inform those concerned by posting a notice on the forum or, failing that, on the site. 33 | 34 | A dated version history of these conditions can be found at 35 | 36 | ## Services overview 37 | 38 | The services administered and maintained by the project to date are: 39 | 40 | - a public website, designed to present the project and provide documentation; 41 | - hosting of installation scripts, images, packages and cryptographic keys for installing and updating YunoHost; 42 | - a public community forum, to support each other and discuss problems or any other topic related to the project; 43 | - a public application catalog, to present and vote for available applications, and an API for programs to retrieve this list; 44 | - a pastebin service, for easy sharing of logs and other technical information; 45 | - a free domain name service, designed to reduce friction for people who don't yet own a domain name, or who want a quick and easy solution in the context of YunoHost; 46 | - self-diagnostic services used by YunoHost software to help users diagnose technical problems on their own; 47 | - a freely, publicly available YunoHost demo server; 48 | - other development and maintenance services. 49 | 50 | In addition, the project depends on, uses, or encourages the use of services managed by third parties, such as: 51 | 52 | - software blocks and automatic installation recipes (apps) hosted by third parties such as (non-exhaustive list) `github.com`, `npmjs.org`, `pypi.org`, `debian.org`, `sury.org`, ... 53 | - several public community chat rooms using Matrix, XMPP and IRC protocols, hosted by third parties such as (non-exhaustive list) `matrix.org` and `libera.chat`; 54 | - the Let's Encrypt certification authority; 55 | - a donation interface, where payments are managed by Stripe and sent to Support Self-Hosting, the association that collects and manages donations; 56 | 57 | It is your responsibility to consult the conditions of use of these third-party services. 58 | 59 | ## Access to services 60 | 61 | ### Geographic scope 62 | 63 | The YunoHost project services are intended for all YunoHost users and contributors worldwide, as long as the regulations of their country do not contravene their use or provision. 64 | 65 | ### Permission to use services 66 | 67 | Unless otherwise specified, use of the YunoHost project services is limited to use within the expected framework: 68 | 69 | - discovering or using the YunoHost operating system 70 | - contribution to the YunoHost project 71 | 72 | Any other use (e.g. use in another distribution, creation of artificial intelligence, etc.) must be approved in advance by the YunoHost project, unless explicitly permitted in the service-specific conditions below. 73 | 74 | ### Account-based services and termination 75 | 76 | The following functionalities are accessible via an account: 77 | 78 | - forum posting ; 79 | - voting for applications in the catalog (on `apps.yunohost.org`) ; 80 | - reservation and management of dynamic domain names provided by the YunoHost project (`nohost.me`, `noho.st` and `ynh.fr`). 81 | 82 | The forum account and the account managing your domain name can be terminated using the associated credentials. 83 | 84 | ## How it works 85 | 86 | ### Financial conditions 87 | 88 | **All services are provided free of charge. Don't hesitate to support the YunoHost project by making a donation**. 89 | 90 | ### Troubleshooting 91 | 92 | **In the event of an outage, and if there is no message on the forum confirming that the YunoHost project is in the process of correcting the outage, you are encouraged to report it via chat or the forum.** 93 | 94 | The YunoHost project offers all these services thanks to volunteers who will do their best to resolve any technical problems that may arise. Volunteers are under no obligation to repair a broken service. 95 | 96 | In the event of failure to fix a technical issue, the YunoHost project may decide to close the service. 97 | 98 | ### Fate of services 99 | 100 | The YunoHost project does not guarantee that services will continue to operate forever, and may choose to discontinue services if the project feels it is no longer able to provide said services. 101 | 102 | If the YunoHost project is able to do so, it will do its best to allow sufficient time for everyone to migrate or adapt serenely. 103 | 104 | ### YunoHost project responsibility 105 | 106 | **Under no circumstances may a user claim damages or compensation resulting from technical problems of any kind whatsoever.** 107 | 108 | The YunoHost project is not subject to any obligation (neither of means nor of result). In the event of failure or interruption of services, the YunoHost project cannot be held responsible for indirect damages such as loss of data, operating losses, commercial prejudice, loss of clientele, sales, profits or anticipated savings, or any other indirect prejudice. 109 | 110 | In particular, the YunoHost project cannot be held liable if you have made vital interests dependent on its services. 111 | 112 | ## Misuse of services 113 | 114 | **Any abuse may result in the closure of your accounts and the prohibition of access to all or part of the services**. 115 | 116 | The YunoHost project reserves the right to take any measures it deems necessary to put an end to any abuse of its services. The YunoHost project is the sole judge of this notion of "abuse", with the aim of providing the best possible service to all users. The YunoHost project may decide to act without warning or negotiation. 117 | 118 | ### Illegal use of services 119 | 120 | **The YunoHost project is not here to cover you and take legal risks on your behalf. Even if your action is legitimate, you are entirely responsible for what you do.** 121 | 122 | You must abide by the laws and regulations in force when using the services offered by the YunoHost project (in particular the forum, chat, paste and domain name services), whether in terms of privacy, sending large quantities of e-mail, intellectual property, discriminatory comments, hate speech, harassment, infringement of people's fundamental freedoms, and so on. 123 | 124 | In the event of prohibited use, the YunoHost project may be obliged to suspend all or part of the service, remove content, or take any other action required by law or regulation. 125 | 126 | ### Respect for the community and volunteers 127 | 128 | You accept and respect the fact that the YunoHost project is a community project maintained by a volunteer team, and that volunteer time and energy are the driving force behind the project. You understand that project volunteers do their best, and that to abuse their time or energy is to sabotage the project. 129 | 130 | You must respect other users and the project team by demonstrating civility, politeness and kindness. Any form of pressure, insistence, harassment or toxicity is prohibited. The YunoHost project reserves the right to ban you and delete any content that appears irrelevant or contravenes these principles, at its sole discretion and without prior warning. 131 | 132 | In particular, the YunoHost project will be uncompromising whenever your behavior consumes too much of the energy of the project's regular contributors. 133 | 134 | ### Reasonable use 135 | 136 | **Since services and resources are shared with the rest of the users, their use must be reasonable and take into account the shared aspect**. 137 | 138 | If you abuse the service, for example by monopolizing shared machine resources, its content or access may be removed. 139 | 140 | ## Our commitments 141 | 142 | ### CHATONS Charter 143 | 144 | **The YunoHost project's long-term aim is to respect the charter of the Collectif des Hébergeurs, Alternatifs, Transparents, Ouverts, Neutres et Solidaires (Collective of alternative, transparent, open, neutral and supportive hosting providers) as part of its service provision activities**. 145 | 146 | Given its international scope, the YunoHost project is not currently a candidate for membership of this collective. However, members of the C.H.A.T.O.N.S collective are currently using YunoHost. 147 | 148 | For more information on the C.H.A.T.O.N.S. charter: 149 | 150 | ### Respect for your personal data and privacy 151 | 152 | We try to minimize as much as possible the personal data that may transit, be stored on our infrastructure or be transferred to third parties. 153 | 154 | The YunoHost project prohibits any resale or transfer of personal data to third parties. 155 | 156 | Below are details of the personal data that may be transferred or stored on YunoHost services: 157 | 158 | - technical information (IP, User agent) used to interact with the services. This information is used to provide the service, to ensure its maintenance and security, and to create very basic aggregated statistics. 159 | - e-mail address and pseudonym used on the forum 160 | - personal information contained in messages exchanged via the forum or chat room 161 | - personal information included in domain names provided by the project 162 | - information contained in logs that you have shared via the dedicated tool 163 | - banking and personal information relating to donations made via Stripe or Liberapay. 164 | 165 | Unless otherwise specified in the specific conditions, these data are located in Paris, Strasbourg and Toulouse. 166 | 167 | For further information, please refer to the specific conditions of service. 168 | 169 | ### Exercising your rights 170 | 171 | In accordance with Article 34 of the French Data Protection Act, you may exercise the following rights by sending an e-mail to `data AT yunohost.org` : 172 | 173 | - rights of access, rectification, deletion and opposition 174 | - right to data processing limitation 175 | - right to data portability 176 | - right not to be the subject of an automated individual decision 177 | 178 | ### GDPR 179 | 180 | The YunoHost project undertakes, with respect to the services it makes available, to comply with the regulations in force applicable to the processing of personal data and, in particular, Regulation (EU) 2016/679 of the European Parliament and of the Council of April 27, 2016 applicable as of May 25, 2018, known as the GDPR. 181 | 182 | Nevertheless this does not mean in any way that *YunoHost software*, nor the applications offered for installation, would be certified with any GDPR compliance (whatever that may mean for you). 183 | 184 | ## Disputes and jurisdiction 185 | 186 | The law applicable to the present contract is French law. In the event of a dispute, the parties shall seek an amicable solution. If this fails, the dispute will be settled by the Tribunal de Grande Instance de Toulouse (FRANCE). 187 | 188 | The fact that the user or the YunoHost project does not take advantage at a given time of one of the present general conditions and/or tolerates a breach by the other party may not be interpreted as a renunciation by the user or the YunoHost project to take advantage of these conditions at a later date. 189 | 190 | The nullity of one of the clauses of these conditions in application of a law, regulation or court decision does not imply the nullity of all the other clauses. Furthermore, the general spirit of the clause must be maintained in accordance with the applicable law. 191 | 192 | --- 193 | 194 | ## Specific Conditions of Services 195 | 196 | ### Website and documentation 197 | 198 | #### Service address 199 | 200 | `yunohost.org` 201 | 202 | #### Contribution 203 | 204 | If you find an error, don't hesitate to suggest a correction, via the "Edit" button (requires a GitHub account) or via a message on the forum. 205 | 206 | #### Personal data 207 | 208 | To the best of our knowledge, none of the pages on this website contain trackers. 209 | 210 | As with any web service, a technical log exists recording the IP and User Agent of requests. 211 | 212 | ### Donations 213 | 214 | #### Service address 215 | 216 | `donate.yunohost.org` 217 | 218 | #### Stop recurring donation 219 | 220 | To stop your recurring donation, please send an email to `donate-5542 AT yunohost.org` and indicate the information that will identify your donation (email used, name, amount). 221 | 222 | #### Personal data 223 | 224 | To provide this service, the Support Self-Hosting association uses Stripe as its payment infrastructure. 225 | 226 | It is necessary to use a credit card and your identity, but these data are not stored, or even transit, through the YunoHost project infrastructure, except in emails exchanged as part of a recurring donation cancellation. 227 | 228 | As with any web service, a technical log exists recording the IP and User Agent of requests. 229 | 230 | ### Installation media (ISO image, ARM, installation script, etc.) 231 | 232 | You use this service in 2 situations: 233 | 234 | - installing or restoring YunoHost 235 | - (rarer) to install, update or restore an app whose binary is not supplied by its publisher and whose compilation on your own machine is deemed too long or too resource-intensive. 236 | 237 | #### Service address 238 | 239 | `build.yunohost.org` 240 | 241 | #### Personal data 242 | 243 | As with any web service, a technical log exists recording the IP and User Agent of requests. 244 | 245 | ### IP 246 | 247 | This service is used automatically by your YunoHost instances to determine their public IPs, enabling you to automate and diagnose certain operations. 248 | 249 | #### Service addresses 250 | 251 | `ip.yunohost.org` and `ip6.yunohost.org` addresses 252 | 253 | #### Free access service 254 | 255 | Exceptionally, the public IP retrieval service can be used in other contexts, as long as the load induced is minimal relative to that of YunoHost. 256 | 257 | #### Personal data 258 | 259 | As with any web service, a technical log exists recording the IP and User Agent of requests. 260 | 261 | ### Free and dynamic domain names 262 | 263 | This is the service used if you request a domain name ending in `nohost.me`, `noho.st` or `ynh.fr` in the YunoHost interface. 264 | 265 | #### Service addresses 266 | 267 | `dyndns.yunohost.org`, `dynette.yunohost.org`, `ns0.yunohost.org`, `ns1.yunohost.org`. 268 | 269 | #### Usage limits 270 | 271 | This service is offered within the limit of one domain per YunoHost server (although it is possible to configure sub-domains of this domain). If abuse is detected (e.g. creation of too many domains from the same machine or IP, or large-scale automated creation), the project reserves the right to delete the domains concerned without warning. 272 | 273 | #### Automatic deletion 274 | 275 | The YunoHost project reserves the right to delete a domain if no server appears to be associated with it and the IP address has not been updated for 1 year. 276 | 277 | #### Termination 278 | 279 | You can delete your domain using the password you chose when you created it. 280 | 281 | #### Personal data 282 | 283 | If your name contains personal data, these will inevitably end up on the servers running the service. 284 | 285 | Note that, in order to function, this service necessarily stores and transmits your server's public IP addresses. 286 | 287 | As with any web service, a technical log exists recording the IP and User Agent of requests. 288 | 289 | ### Diagnostics 290 | 291 | This service automatically tests whether your services seem to be correctly exposed on the Internet, and thus independently resolves network configuration problems. 292 | 293 | This service is used automatically twice a day, as soon as you activate the diagnostics feature. 294 | 295 | #### Service address 296 | 297 | `diagnosis.yunohost.org` 298 | 299 | #### Usage limits 300 | 301 | Due to the resource consumption involved, the diagnosis service is limited to 60 domains to be diagnosed per request. 302 | 303 | If you exceed this limit, the project recommends that you diagnose your domains yourself. 304 | 305 | #### Personal data 306 | 307 | To operate, this service transmits the domain names and ports to be diagnosed. Any personal data contained in the domain names is therefore also transferred, but not stored. 308 | 309 | As with any web service, a technical log exists recording the IP and User Agent of requests. 310 | 311 | ### Application catalog 312 | 313 | This service lets you browse (via a browser or program) the list of applications available for installation in YunoHost. It also allows you to vote for apps to direct contribution efforts. 314 | 315 | In addition, servers running YunoHost automatically retrieve the application catalog once a day. 316 | 317 | #### Service addresses 318 | 319 | `apps.yunohost.org` and `app.yunohost.org`. 320 | 321 | #### Service misuse 322 | 323 | Any attempt to falsify votes on catalog or wishlist apps will be considered abuse and may be subject to cancellation, banning and account deletion. 324 | 325 | #### Personal data 326 | 327 | To participate in the popularity of apps, you need to use your forum account. See Forum service. 328 | 329 | The storage of your votes is linked to your forum identity. 330 | 331 | As with any web service, a technical log exists recording the IP and User Agent of requests. 332 | 333 | #### Statistics 334 | 335 | In order to size our services and plan new releases, we use the technical download logs from the list of apps to estimate the number of YunoHost instances running in the wild, and the ratio of major releases. 336 | 337 | ### Debian package repository 338 | 339 | This is the channel through which updates to YunoHost as software are made available. The YunoHost project also maintains builds of some software components on which YunoHost depends or on the periphery of the project. 340 | 341 | #### Service address 342 | 343 | `forge.yunohost.org` 344 | 345 | #### Permission to create mirror repositories 346 | 347 | It is allowed (and even encouraged) to create mirror repositories of YunoHost's Debian package repository. 348 | 349 | #### Personal data 350 | 351 | As with any web service, a technical log exists recording the IP and User Agent of requests. 352 | 353 | ### Tickets and contributions to the code 354 | 355 | As it stands, development, bug reports and feature requests take place on the repositories of the "YunoHost" and "YunoHost-Apps" organizations on the GitHub platform. 356 | 357 | #### Respect for volunteers 358 | 359 | We can only re-emphasize what has already been mentioned in the 'Respect for the community and volunteers' section above: the project is maintained by a volunteer team, volunteer time and energy is the driving force behind the project, and volunteers do their best. You're welcome to contribute to the project (and if necessary to ask questions about how to contribute) to the team. 360 | 361 | On the other hand, abusing their time or energy is tantamount to sabotaging the project. In particular, YunoHost is *not* a community of volunteers at your command regarding priorities for patches, features or updates, either for YunoHost as software, or for the catalog of applications maintained by the project. Volunteers do not promise support, fixes, features or updates, nor do they provide estimates of "when" a feature, fix or update will be available. Messages that simply ask when a feature, fix or update will be available, without any form of politeness, benevolence or intention to contribute, are not welcome and undermine volunteer morale. Any abuse may be punished by a ban from the project's GitHub organizations, or even from all project services. 362 | 363 | ### Paste 364 | 365 | This service is used to share logs of operations carried out with YunoHost to enable the study and resolution of problems. 366 | 367 | #### Service address 368 | 369 | `paste.yunohost.org` 370 | 371 | #### Personal data 372 | 373 | The logs you share may contain personal information or, in the worst case, secrets that could compromise the security of part or all of your server. Upon publication, YunoHost software automatically tries to remove this information as best it can. Nevertheless, the system is far from being perfect, and it is your responsibility to re-read the information before sharing the generated link with others. 374 | 375 | As with any web service, a technical log exists recording the IP and User Agent of requests. 376 | 377 | ### Self-help forum (and chat) 378 | 379 | #### Service address 380 | 381 | `forum.yunohost.org` and chats listed on 382 | 383 | #### Asking for help 384 | 385 | The self-help forum and chat clearly state (e.g. [here](https://yunohost.org/en/help-me), [here](https://forum.yunohost.org/t/asking-for-support-demander-de-laide/7795) and [here](https://forum.yunohost.org/t/how-to-get-help-efficiently-comment-obtenir-de-laide-efficacement/27)) that in order to get help, it is **necessary** to provide basic information (hardware type, YunoHost version), background information and full logs. Not doing so is extremely annoying for the people trying to help you, especially as we strive to make sharing this information as simple as possible. In addition, it is counter-productive because it wastes everyone's time: nobody can solve a problem that is not diagnosable. 386 | 387 | If these rules are not respected, the team reserves the right to close your topic without notice. 388 | 389 | #### Personal data 390 | 391 | The forum allows you to enter personal information (email, GitHub account, nickname). From the forum interface, you can modify or delete this information. 392 | 393 | As with any web service, a technical log records the IP and User Agent of requests. In addition, the forum may send or receive e-mails, which are also logged. 394 | 395 | #### Location 396 | 397 | Paris 398 | 399 | ### Demo service 400 | 401 | #### Service address 402 | 403 | `demo.yunohost.org` 404 | 405 | #### Purpose and operation 406 | 407 | This service allows you to test YunoHost's interfaces (webadmin and user portal) to get a feel for YunoHost without installing it. The data on this server is destroyed and reset approximately every 30 minutes. 408 | 409 | #### Personal data 410 | 411 | As with any web service, a technical log exists recording the IP and User Agent of requests. 412 | -------------------------------------------------------------------------------- /yunohost_project_tos_fr.md: -------------------------------------------------------------------------------- 1 | # Conditions Générales et spécifiques des Services opérés par le projet YunoHost 2 | 3 | 01/02/2024 4 | 5 | ## Préambule 6 | 7 | Le projet YunoHost est animé par une équipe de personnes bénévoles qui ont fait cause commune pour créer un système d'exploitation libre pour les serveurs, appelé YunoHost. YunoHost est publié [sous licence GNU Affero General Public License v3](https://www.gnu.org/licenses/agpl-3.0.txt). En lien avec ce logiciel, le projet administre et met à disposition plusieurs services techniques et communautaires à des fins diverses. 8 | 9 | En utilisant ces services, vous acceptez d’être lié·e par les conditions suivantes. 10 | 11 | ## Version courte (TL;DR) 12 | 13 | - **Clause « Ceci est un projet communautaire »** : vous acceptez et respectez le fait que le projet est maintenu par une équipe bénévole, et que le temps et l'énergie bénévole sont la force motrice du projet. Les contributions au projet sont les bienvenues, ponctuelles ou dans la durée, par le moyen de votre choix (que ce soit en parler autour de vous, nous faire des retours constructifs, aider les autres, faire coucou, traduire, tester, coder, donner, ...). 14 | - **Clause « On fait ce qu'on peut »** : vous acceptez que l'équipe bénévole fait du mieux qu'elle peut et n'est assujettie à aucune obligation, ni de moyen, ni de résultat. Le projet ne peut être tenu pour responsable des dommages ou préjudices indirects si un service cesse de fonctionner. L'équipe peut décider d'arrêter un service à tout moment. 15 | - **Clause « On n'est pas un GAFAM »** : nous essayons de minimiser le plus possible les données personnelles qui peuvent transiter, être stockées sur notre infrastructure ou être transférée vers des tiers. Nous publions le code qui fait tourner nos services. Nous nous interdisons toute revente de données personnelles. Nous n'exploitons les données qu'à des fin de statistiques internes et anonymisées. 16 | - **Clause « On n'aime pas les personnes toxiques »** : vous devez respecter les autres membres de la communauté en faisant preuve de civisme, de politesse et bienveillance. 17 | - **Clause « Le logiciel libre, ce n'est pas des bénévoles à vos ordres »** : les messages se contentant de demander quand une fonctionnalité, correctif ou mise à jour sera disponible, volontairement ou involontairement insistants, sans aucune forme de politesse, de bienveillance ou d'intention de contribution, ne sont pas les bienvenus. Si vous souhaitez qu'un point en particulier soit traité, demandez-vous comment contribuer, ou a minima parlez-en avec bienveillance. 18 | - **Clause « On ne lit pas dans les boules de cristal »** : le forum et chat d'entraide stipulent clairement que pour espérer obtenir de l'aide, il est nécessaire de fournir les informations de base (type de matériel, version de YunoHost), des éléments de contexte et les journaux complets. Ne pas le faire est extrêmement agaçant pour les bénévoles qui tentent de vous aider. 19 | - **Clause « On ne veut pas finir en taule »** : vous devez respecter la loi (que celle-ci soit bien faite ou idiote). 20 | - **Clause « Tout abus sera puni »** : abuser techniquement ou humainement des services peut entraîner la fermeture de vos comptes et l'interdiction de l'accès à une partie ou à l'ensemble des services, possiblement sans avertissement ni négociation. 21 | 22 | ## Distinction entre YunoHost en tant que projet, en tant que services, en tant que logiciel, et en tant que distribution 23 | 24 | Ce document détaille les CGS qui s'appliquent **aux services fournis par le projet YunoHost**, mais **pas** à YunoHost en tant que logiciel **ni** aux applications proposées dans le catalogue de YunoHost. 25 | 26 | YunoHost en tant que logiciel est publié [sous licence AGPLv3](https://www.gnu.org/licenses/agpl-3.0.txt) et est donc fourni sans garantie d'aucune sorte et n'est pas responsable des dommages résultant de son utilisation, ni de l'utilisation des applications qu'il permet d'installer. 27 | 28 | *Si vous utilisez YunoHost pour fournir des services à d'autres personnes, il est de votre responsabilité de définir et publier les conditions générales d'utilisation de votre souhait pour vos propres services à l'attention de ces personnes, et de vous renseigner sur toutes les implications légales des applications que vous installez.* 29 | 30 | ## Évolution des conditions générales et spécifiques de service 31 | 32 | Le projet YunoHost se réserve le droit de mettre à jour et modifier ces conditions. Dans ce cas, le projet YunoHost informe les personnes concernées par un affichage sur le forum ou à défaut sur le site. 33 | 34 | Un historique daté des versions de ces conditions peut être récupéré sur 35 | 36 | ## Vue d'ensemble des services 37 | 38 | Les services administrés et maintenus par le projet sont, à ce jour : 39 | 40 | - un site web public, destiné à présenter le projet et à fournir de la documentation ; 41 | - l'hébergement de scripts d'installation, d'images, de paquets et de clés cryptographiques liés à l'installation et à la mise à jour de YunoHost ; 42 | - un forum communautaire public, destiné à s'entraider et discuter des problèmes ou de tout autre sujet lié au projet ; 43 | - un catalogue d'application public pour permettre de présenter et voter pour les applications disponibles, et une API permettant à des programmes de récupérer cette liste ; 44 | - un service pastebin, destiné à partager facilement les logs et autres informations techniques ; 45 | - un service de nom de domaine gratuit, destiné à réduire les frictions pour les personnes qui ne possèdent pas encore de nom de domaine ou qui souhaitent une solution simple et rapide dans le contexte de YunoHost ; 46 | - des services d'auto-diagnostic utilisés par le logiciel YunoHost et destinés à aider les utilisateurices à diagnostiquer de manière autonome les problèmes techniques ; 47 | - un service de démonstration d'un serveur YunoHost en libre service ; 48 | - d'autres services liés au développement et à la maintenance. 49 | 50 | En outre, le projet dépend, utilise, ou encourage l'utilisation de services gérés par des tiers, tels que : 51 | 52 | - des briques logicielles et recettes d'installations automatiques (apps) hébergées chez des tiers tels que (liste non-exhaustive) `github.com`, `npmjs.org`, `pypi.org`, `debian.org`, `sury.org`, … 53 | - plusieurs salons de discussion communautaires publics utilisant les protocoles Matrix, XMPP et IRC, hébergés par des tiers tels que (liste non-exhaustive) `matrix.org` et `libera.chat` ; 54 | - l'autorité de certification Let's Encrypt ; 55 | - une interface de dons, dont les paiements sont gérés par Stripe et à destination de Support Self-Hosting, l'association qui récolte et gère les dons. 56 | Le cas échéant, il est de votre responsabilité de consulter les conditions d'utilisations de ces services gérés par des tiers. 57 | 58 | ## Accès aux services 59 | 60 | ### Périmètre géographique 61 | 62 | Les services du projet YunoHost s’adressent à l'ensemble des utilisateurices et contributeurices de YunoHost dans le monde tant que la réglementation de leur pays ne contrevient pas à leur usage ou fourniture. 63 | 64 | ### Permission d'utilisation des services 65 | 66 | Sauf mentions contraires, l'usage des services du projet YunoHost est limité à une utilisation dans le cadre attendu : 67 | 68 | - découverte ou utilisation du système d'exploitation YunoHost 69 | - contribution au projet YunoHost 70 | 71 | Tout autre usage (par exemple: utilisation dans une autre distribution, création d'intelligence artificielle, etc.) doit être préalablement validé par le projet YunoHost, à moins qu'il ne soit explicitement permis dans les conditions spécifiques du service ci-dessous. 72 | 73 | ### Services accessibles via un compte et résiliation 74 | 75 | Les fonctionnalités suivantes sont accessibles via un compte : 76 | 77 | - l'écriture sur le forum ; 78 | - le vote pour les applications du catalogue (sur `apps.yunohost.org`) ; 79 | - la réservation et la gestion de noms de domaines dynamiques fournit par le projet YunoHost (`nohost.me`, `noho.st` et `ynh.fr`). 80 | 81 | Le compte sur le forum et le compte gérant votre nom de domaine peuvent être résiliés grâce aux identifiants associés. 82 | 83 | ## Fonctionnement 84 | 85 | ### Conditions financières 86 | 87 | **L’ensemble des services est fournie gratuitement. N’hésitez pas à soutenir le projet YunoHost en faisant un don.** 88 | 89 | ### Intervention en cas de panne 90 | 91 | **En cas de panne constatée, et si aucun message n’atteste sur le forum que le projet YunoHost est en train de corriger le dysfonctionnement, nous vous encourageons à faire un signalement via le chat ou le forum.** 92 | 93 | Le projet YunoHost propose l’ensemble de ces services grâce à des bénévoles qui feront de leur mieux pour résoudre les problèmes techniques qui pourraient subvenir. Les bénévoles n'ont aucune obligation à réparer un service cassé. 94 | 95 | En cas d’incapacité à résoudre un problème technique, le projet YunoHost pourra prendre la décision de fermer le service. 96 | 97 | ### Devenir des services 98 | 99 | Le projet YunoHost ne garanti pas que les services continueront à fonctionner éternellement, et peut choisir d’arrêter des services si le projet estime ne plus être en mesure de fournir lesdits services. 100 | 101 | Si le collectif qui anime le projet YunoHost en a la possibilité, il fera de son mieux pour laisser un délai suffisant pour permettre à tout le monde de migrer ou de s'adapter sereinement. 102 | 103 | ### Responsabilité du projet YunoHost 104 | 105 | **En aucun cas, un ou une utilisatrice ne pourra se prévaloir de dommages ou indemnités résultant de problèmes techniques de quelque nature que ce soit.** 106 | 107 | Le projet YunoHost n'est assujetti à aucune obligation (ni de moyen, ni de résultat). En cas de défaillance ou d'arrêt des services, le projet YunoHost ne peut être tenu pour responsable des dommages indirects tels que pertes de données, pertes d’exploitation, préjudices commerciaux, perte de clientèle, de chiffre d’affaires, de bénéfices ou d’économies prévus, ou de tout autre préjudice indirect. 108 | 109 | En particulier, le projet YunoHost ne pourra être tenu responsable si vous avez fait dépendre de ses services des intérêts vitaux. 110 | 111 | ## Mésusage des services 112 | 113 | **Tout abus peut entraîner la fermeture de vos comptes et l'interdiction de l'accès à une partie ou à l'ensemble des services.** 114 | 115 | Le projet se réserve le droit de mettre en place les mesures jugées nécessaires pour mettre fin aux abus constatés. Le projet YunoHost reste seul juge de cette notion « d’abus » dans le but de fournir le meilleur service possible à l’ensemble des usagers et usagères. Le projet YunoHost pourra décider d'agir sans avertissement ni négociation. 116 | 117 | ### Usage illégal des services 118 | 119 | **Le projet YunoHost n’est pas là pour vous couvrir et prendre des risques légaux à votre place. Même si votre action est légitime, vous êtes entièrement responsable de ce que vous faites.** 120 | 121 | Vous devez respecter les lois et réglementations en vigueur lors de l’usage des services proposés par le projet YunoHost (notamment sur le forum, les chats, le paste et le service de noms de domaines) que ce soit en matière de respect de la vie privée, d’envoi de mails en grande quantité, de propriété intellectuelle, de propos discriminatoires, d’appel à la haine, de harcèlement, d’atteinte aux libertés fondamentales de personnes, etc. 122 | 123 | En cas d’usage prohibé, le projet YunoHost peut se trouver dans l’obligation de déclencher la suspension totale ou partielle du service, le retrait de contenu, ou toute autre mesure que les lois et réglementations lui imposent. 124 | 125 | ### Respect de la communauté et des bénévoles 126 | 127 | Vous acceptez et respectez le fait que le projet YunoHost est un projet communautaire maintenu par une équipe bénévole, et que le temps et l'énergie bénévole sont la force motrice du projet. Vous comprenez que les bénévoles du projet font de leur mieux, et qu'abuser de leur temps ou de leur énergie équivaut à saboter le projet. 128 | 129 | Vous devez respecter les autres utilisateurices et l'équipe du projet en faisant preuve de civisme, de politesse et bienveillance. Toute forme de pression, insistance, harcèlement ou toxicité est prohibée. Le projet YunoHost se réserve le droit de vous bannir et de supprimer tout contenu paraissant non pertinent ou contrevenant à ces principes, selon son seul jugement et sans qu'un avertissement préalable ne soit nécessaire. 130 | 131 | En particulier, le projet YunoHost sera intransigeant dès lors que votre comportement consommera trop d'énergie des contributeur⋅ices régulier⋅es du projet. 132 | 133 | ### Utilisation raisonnable 134 | 135 | **Les services et ressources étant partagées avec le reste des utilisateurices, leur utilisation doit être raisonnable et prendre en compte l'aspect mutualisé.** 136 | 137 | Si vous abusez du service, par exemple en monopolisant des ressources machines partagées, son contenu ou son accès pourra être supprimé. 138 | 139 | ## Nos engagements 140 | 141 | ### Charte CHATONS 142 | 143 | **Le projet YunoHost vise à long-terme à respecter la charte du Collectif des Hébergeurs, Alternatifs, Transparents, Ouverts, Neutres et Solidaires dans le cadre de son activité de fourniture de services.** 144 | 145 | Compte tenu de sa portée internationale, le projet YunoHost n'est pas, à ce jour, candidat à l’intégration au sein de ce collectif. Toutefois à ce jour des membres du collectif C.H.A.T.O.N.S utilisent YunoHost. 146 | 147 | Plus d’information sur la charte C.H.A.T.O.N.S. : 148 | 149 | ### Respect de vos données personnelles et de votre vie privée 150 | 151 | Nous essayons de minimiser le plus possible les données personnelles qui peuvent transiter, être stockées sur notre infrastructure ou être transférée vers des tiers. 152 | 153 | Le projet YunoHost s'interdit toute revente ou transfert de données personnelles à des tiers. 154 | 155 | Ci-dessous, le détail des informations personnelles susceptibles de transiter ou d'être stockées sur les services du projet YunoHost: 156 | 157 | - informations techniques (IP, User agent) utilisées pour interagir avec les services. Elles sont utilisées dans le but de fournir le service, d'en assurer la maintenance et la sécurité et de créer des statistiques agrégées très basiques ; 158 | - email et pseudonyme utilisés sur le forum ; 159 | - informations personnelles figurant dans les messages échangées via le forum ou le chat ; 160 | - informations personnelles incluses dans les noms de domaines fournit par le projet ; 161 | - informations figurant dans des logs que vous avez partagés via l'outil dédié ; 162 | - informations bancaires et personnelles dans le cadre d'un don via Stripe ou Liberapay. 163 | 164 | Sauf mentions contraires dans les conditions spécifiques, ces données se trouvent à Paris, Strasbourg et Toulouse. 165 | 166 | Pour plus d'informations, se référer aux conditions spécifiques de services. 167 | 168 | ### Exercice de vos droits 169 | 170 | Conformément à l’article 34 de la loi « Informatique et Libertés », vous pouvez exercer les droits suivant en envoyant un mail à `data CHEZ yunohost.org` : 171 | 172 | - droits d’accès, de rectification, d’effacement et d’opposition ; 173 | - droit à la limitation du traitement ; 174 | - droit à la portabilité des données ; 175 | - droit de ne pas faire l’objet d’une décision individuelle automatisée. 176 | 177 | ### Règlement général sur la protection des donnée (RGPD) 178 | 179 | Le projet YunoHost s’engage, vis à vis des services qu'il met à disposition, à respecter la réglementation en vigueur applicable au traitement de données à caractère personnel et, en particulier, le règlement (UE) 2016/679 du Parlement européen et du Conseil du 27 avril 2016 applicable à compter du 25 mai 2018, dite RGPD. 180 | 181 | Néanmoins ceci ne signifie en aucun cas que *le logiciel YunoHost*, ni les applications proposées à l'installation, seraient certifiés avec une quelconque conformité au RGPD (quoi que cela puisse signifier pour vous). 182 | 183 | ## Litige et juridiction compétente 184 | 185 | Le droit applicable aux présentes est le droit français. En cas de différend, les parties recherchent une solution amiable. Si la démarche échoue, le litige sera tranché par le Tribunal de Grande Instance de Toulouse (FRANCE). 186 | 187 | Le fait que l’usager ou le projet YunoHost ne se prévale pas à un moment donné de l’une des présentes conditions générales et/ou tolère un manquement par l’autre partie ne peut être interprété comme valant renonciation par l’usager ou le projet YunoHost à se prévaloir ultérieurement de ces conditions. 188 | 189 | La nullité d’une des clauses de ces conditions en application d’une loi, d’une réglementation ou d’une décision de justice n’implique pas la nullité de l’ensemble des autres clauses. Par ailleurs l’esprit général de la clause sera à conserver en accord avec le droit applicable. 190 | 191 | --- 192 | 193 | ## Conditions Spécifiques de Services 194 | 195 | ### Site web et documentation 196 | 197 | #### Adresse du service 198 | 199 | `yunohost.org` 200 | 201 | #### Contribution 202 | 203 | Si vous repérez une erreur, n'hésitez pas à proposer une correction, via le bouton "Éditer" (nécessite un compte GitHub) ou via un message sur le forum. 204 | 205 | #### Données personnelles 206 | 207 | A notre connaissance, aucune page de ce site web ne comporte de traqueurs. 208 | 209 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 210 | 211 | ### Dons 212 | 213 | #### Adresse du service 214 | 215 | `donate.yunohost.org` 216 | 217 | #### Arrêt d'un don récurent 218 | 219 | Pour demander l'arrêt de votre don récurrent, merci d'envoyer un mail à `donate-5542 CHEZ yunohost.org` et d'indiquer les informations qui permettront d'identifier votre don (email utilisé, nom, montant). 220 | 221 | #### Données personnelles 222 | 223 | Pour fournir ce service, l'association Support Self-Hosting utilise Stripe comme infrastructure de paiement. 224 | 225 | Il est nécessaire d'utiliser une carte bancaire ainsi que de son identité, mais ces données ne sont pas stockées, ni même ne transite, par l'infrastructure du projet YunoHost, sauf dans les mails échangés dans le cadre d'une résiliation de don récurent. 226 | 227 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 228 | 229 | ### Supports d'installations (image ISO, ARM, script d'installation, ...) 230 | 231 | Vous utilisez ce service dans 2 situations: 232 | 233 | - installation ou restauration de YunoHost ; 234 | - (plus rare) installation, mise à jour, ou restauration d'une app dont le binaire n'est pas fournis par son éditeur et dont sa compilation sur votre propre machine est jugée trop longue ou trop coûteuse en ressources. 235 | 236 | #### Adresse du service 237 | 238 | `build.yunohost.org` 239 | 240 | #### Données personnelles 241 | 242 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 243 | 244 | ### IP 245 | 246 | Ce service est utilisé automatiquement par vos instances YunoHost pour déterminer leurs IP publiques et permettre ainsi l'automatisation et le diagnostique de certaines opérations. 247 | 248 | #### Adresses des services 249 | 250 | `ip.yunohost.org` et `ip6.yunohost.org` 251 | 252 | #### Service en libre accès 253 | 254 | Exceptionnellement, le service de récupération d'IP publiques peut être utilisé dans d'autres cadres tant que la charge induite est minime relativement à celle de YunoHost. 255 | 256 | #### Données personnelles 257 | 258 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 259 | 260 | ### Noms de domaines gratuits et dynamiques 261 | 262 | Il s'agit du service utilisé si vous demandez un nom de domaine terminant par `nohost.me`, `noho.st` ou `ynh.fr` dans l'interface de YunoHost. 263 | 264 | #### Adresses des services 265 | 266 | `dyndns.yunohost.org`, `dynette.yunohost.org`, `ns0.yunohost.org`, `ns1.yunohost.org` 267 | 268 | #### Limite d'usage 269 | 270 | Ce service est proposé dans la limite d'un seul domaine par serveur YunoHost (bien qu'il soit possible de configurer des sous-domaine de ce domaine). Si des abus sont constatés (par exemple création de trop nombreux domaines depuis la même machine ou IP, ou création automatisée à large échelle), le projet se réserve le droit de supprimer les domaines concernés sans prévenir. 271 | 272 | #### Suppression automatique 273 | 274 | Le projet YunoHost se réserve le droit de supprimer le domaine si aucun serveur ne semble y être associé et que l'adresse IP n'a pas été mise à jour depuis 1 an. 275 | 276 | #### Résiliation 277 | 278 | Vous pouvez supprimer votre domaine à l'aide du mot de passe choisi lors de sa création. 279 | 280 | #### Données personnelles 281 | 282 | Si votre nom contient des données personnelles, celles-ci se retrouveront forcément sur les serveurs faisant fonctionner le service. 283 | 284 | Notez que, pour fonctionner, ce service stocke et transmet nécessairement les adresses IP publiques de votre serveur. 285 | 286 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 287 | 288 | ### Diagnostique 289 | 290 | Il s'agit d'un service permettant de tester automatiquement si vos services semblent correctement exposés sur internet et ainsi résoudre en autonomie les problèmes liés à la configuration réseau. 291 | 292 | Ce service est utilisé automatiquement deux fois par jour, dès lors que vous activez la fonctionnalité de diagnostique. 293 | 294 | #### Adresse du service 295 | 296 | `diagnosis.yunohost.org` 297 | 298 | #### Limite d'usage 299 | 300 | En raison de la consommation de ressources induites, le service de diagnostique est limités à 60 domaines à diagnostiquer par requêtes. 301 | 302 | Si vous dépassez cette limite, le projet recommande de diagnostiquer le bon fonctionnement de vos domaines par vos propres moyens. 303 | 304 | #### Données personnelles 305 | 306 | Pour fonctionner ce service transmet les noms de domaines et les ports à diagnostiquer. Toute donnée personnelle figurant dans les noms de domaines est donc transférée également, mais n'est pas conservée. 307 | 308 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 309 | 310 | ### Catalogue d'applications 311 | 312 | Ce service permet de consulter (via un navigateur ou un programme) la liste des applications disponibles à l'installation dans YunoHost. Il permet également de voter pour les apps afin d'orienter les efforts de contribution. 313 | 314 | De plus, les serveurs fonctionnant sous YunoHost récupèrent automatiquement le catalogue d'application une fois par jour. 315 | 316 | #### Adresses du service 317 | 318 | `apps.yunohost.org` et `app.yunohost.org` 319 | 320 | #### Mésusage des services 321 | 322 | Toute tentative de falsifier les votes sur les apps du catalogue ou de la liste de souhaits sera considéré comme un abus et peut faire l'objet d'annulation, de bannissement et de suppression de compte. 323 | 324 | #### Données personnelles 325 | 326 | Pour participer à la popularité des apps, il est nécessaire d'utiliser son compte sur le forum. Voir le service Forum. 327 | 328 | Le stockage de vos votes est lié à votre identité sur le forum. 329 | 330 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 331 | 332 | #### Statistiques 333 | 334 | Afin de dimensionner nos services et planifier les nouvelles versions, nous utilisons le logs techniques de téléchargement de la liste des apps pour estimer le nombre d'instances YunoHost en fonctionnement dans la nature, et le ratio des versions majeures. 335 | 336 | ### Dépôt de paquet Debian 337 | 338 | Il s'agit du canal par lequel les mises à jour de YunoHost en tant que logiciel sont mises à disposition. Le projet YunoHost maintient également des "builds" de certaines briques logicielles dont YunoHost dépends ou à la périphérie du projet. 339 | 340 | #### Adresse du service 341 | 342 | `forge.yunohost.org` 343 | 344 | #### Autorisation de créer des dépôts miroirs 345 | 346 | Il est autorisé (et même encouragé) de créer des dépôts miroirs du dépôt de paquet Debian de YunoHost. 347 | 348 | #### Données personnelles 349 | 350 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 351 | 352 | ### Tickets et contributions au code 353 | 354 | En l'état, le développement, les rapports de bug et les demandes de fonctionnalités s'effectuent sur les dépôts des organisations "YunoHost" et "YunoHost-Apps" sur la plateforme GitHub. 355 | 356 | #### Respect des bénévoles 357 | 358 | Nous ne pouvons que ré-insister sur ce qui est déjà mentionné dans la section 'Respect de la communauté et des bénévoles' plus haut : le projet est maintenu par une équipe bénévole, le temps et l'énergie bénévole est la force motrice du projet, et les bénévoles font de leur mieux. Vous êtes les bienvenues pour contribuer au projet (et le cas échéant à poser des questions sur comment contribuer) à l'équipe. 359 | 360 | En revanche, abuser de leur temps ou de leur énergie équivaut à saboter le projet. En particulier, YunoHost n'est *pas* une communauté de bénévoles à vos ordres sur les priorités de correctifs, fonctionnalités ou mises à jour, ni pour YunoHost en tant que logiciel, ni pour le catalogue d'applications maintenues par le projet. Les bénévoles ne promettent ni support, ni correctifs, ni fonctionnalités, ni mise à jour, et ne fournissent pas non plus d'estimation sur "quand" une fonctionnalité, correctif ou mise à jour sera disponible. Les messages se contentant de demander quand une fonctionnalité, correctif ou mise à jour sera disponible, sans aucune forme de politesse, de bienveillance ou d'intention de contribution, ne sont pas les bienvenus et sapent le moral des bénévoles. Tout abus pourra être sanctionné par un bannissement des organisations GitHub du projet, voir de l'entièreté des services du projet. 361 | 362 | ### Paste 363 | 364 | Ce service sert à partager les journaux des opérations réalisées avec YunoHost pour permettre l'étude et la résolution des problèmes. 365 | 366 | #### Adresse du service 367 | 368 | `paste.yunohost.org` 369 | 370 | #### Données personnelles 371 | 372 | Les logs que vous partagez sont susceptible de contenir des informations personnelles ou, dans le pire des cas, des secrets qui peuvent compromettre la sécurité d'une partie ou de l'entièreté de votre serveur. Lors de la publication, le logiciel YunoHost essaie de retirer automatiquement et du mieux qu'il peut ces informations. Néanmoins, le système est loin d'être parfait, et il est de votre responsabilité de relire les informations avant de partager le lien généré avec d'autres personnes. 373 | 374 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 375 | 376 | ### Forum (et chat) d'entraide 377 | 378 | #### Adresse du service 379 | 380 | `forum.yunohost.org` et chats listés sur 381 | 382 | #### Demander de l'aide 383 | 384 | Le forum et chat d'entraide stipulent clairement (par exemple [ici](https://yunohost.org/fr/help-me), [ici](https://forum.yunohost.org/t/asking-for-support-demander-de-laide/7795) et [ici](https://forum.yunohost.org/t/how-to-get-help-efficiently-comment-obtenir-de-laide-efficacement/27)) que pour espérer obtenir de l'aide, il est **nécessaire** de fournir les informations de base (type de matériel, version de YunoHost), des éléments de contexte et les journaux complets. Ne pas le faire est extrêmement agaçant pour les personnes qui tentent de vous aider, d'autant plus que nous nous efforçons de simplifier au maximum le partage de ces informations. De plus c'est contre-productif car cela fait perdre du temps à tout le monde : on ne peux pas résoudre un problème qu'on ne peut diagnostiquer. 385 | 386 | Si ces règles ne sont pas respectées, l'équipe se réserve le droit de fermer votre sujet sans préavis. 387 | 388 | #### Données personnelles 389 | 390 | Le forum permet d'indiquer des informations personnelles (email, compte GitHub, pseudo). À partir de l'interface du forum, vous avez la main pour modifier et supprimer ces données. 391 | 392 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. De plus, le forum est susceptible d'envoyer ou recevoir des emails, qui sont également journalisés. 393 | 394 | #### Localisation des données 395 | 396 | Paris 397 | 398 | ### Service de démonstration 399 | 400 | #### Adresse du service 401 | 402 | `demo.yunohost.org` 403 | 404 | #### Objectif et fonctionnement 405 | 406 | Ce service permet de tester les interfaces de YunoHost (webadmin et portail utilisateur) pour découvrir et se faire une idée de YunoHost sans l'installer. Les données de ce serveur sont détruites et réinitialisées toutes les 30 minutes environ. 407 | 408 | #### Données personnelles 409 | 410 | Comme n'importe quel service web, un journal technique existe enregistrant l'IP et le User Agent des requêtes. 411 | --------------------------------------------------------------------------------