Difference between revisions of "Free Software Directory:Participate"

From Free Software Directory
Jump to: navigation, search
(Add sample script to complement the pywikibot cli example)
(47 intermediate revisions by 13 users not shown)
Line 1: Line 1:
 +
__NOEDITSECTION__
 
__NOTOC__
 
__NOTOC__
__NOEDITSECTION__
 
  
== Submit new entires ==
+
 +
<div style="content: '.';visibility: hidden;display: block;height: 0;clear: both;"></div>
 +
 
 +
== Approval System ==
 +
 
 +
Anybody can create an account and update or submit new entries to the
 +
Directory. Please review the
 +
[[Free_Software_Directory:Requirements|Requirements]].  However, updates
 +
and new submissions need approval by an administrator before they will
 +
appear publicly. Logged-in users can tell if they are seeing the latest
 +
version of the page, or if there are newer versions of the page waiting
 +
for approval by a message at the top of the page.
 +
 
 +
* Not the latest version message: ''This is the approved revision of this page; it is not the most recent. View the most recent revision.''
 +
 
 +
* Latest version message: ''This is the approved revision of this page, as well as being the most recent.''
 +
 
 +
You can see a [[Special:ApprovedRevs|list of approved pages or pages waiting for approval]].
 +
 
 +
== How to fill the fields in an entry ==
 +
 
 +
Each entry for a package in the Directory has information structured in
 +
quite a number of fields, some of which are obvious, some less so.
 +
Please check out the
 +
[[Free_Software_Directory:Workflow/Entry|documentation for an entry]],
 +
to assist you with relevant information on the requirements, meaning, or
 +
expectations for the content.
 +
 
 +
== Tools ==
 +
 
 +
These tools are auxiliary, they do not replace this guide or the requirements.
 +
 
 +
* Check out the [[Free Software Directory:Participate/Script aid | script aid]] made by [[User:Adfeno|Adfeno]].
 +
* Use [https://www.mediawiki.org/wiki/Manual:Pywikibot pywikibot] to script or work from the command line:
 +
** virtualenv --python=python3 v ; source v/bin/activate
 +
** git clone https://gerrit.wikimedia.org/r/pywikibot/core.git ; cd core
 +
** pip install -r requirements.txt
 +
** python generate_family_file.py
 +
*:: Please insert URL to wiki: http://directory.fsf.org/wiki/Main_Page
 +
*:: Please insert a short name: fsd
 +
** python3 pwb.py listpages -family:fsd -lang:en -debug -page:loomio -get # shows http://directory.fsf.org/wiki/Loomio content
 +
** Sample script to display the information from a given page:
 +
<blockquote>
 +
<pre>
 +
import os
 +
 
 +
import pywikibot
 +
from pywikibot import config2
 +
 
 +
log = logging.getLogger(__name__)
 +
 
  
To submit a new entry to the directory, please [http://directory-dev.fsf.org/wiki?title=Special:UserLogin&returnto=Main_Page log-in] and then go to our [[Form:Submit|submission page]], where after entering the name of the package or software program, you will be brought to a multi-part form. Don't worry, only the first few fields are required. So if you don't feel-up to going through the full process of filling the entire thing out, that's ok! The final step is to go to the last tab and press the save button at the bottom.
+
class FSD(object):
  
After our team has reviewed your submission thoroughly, completed adding as much data as possible, and ensured it meets all of our guidelines, your submission will be published on the Directory.
+
    def __init__(self):
 +
        config2.register_family_file(
 +
            'fsd', os.path.join(os.path.dirname(__file__),
 +
                                'families/fsd_family.py'))
 +
        self.site = pywikibot.Site(code="en", fam="fsd")
  
== Have you discovered a piece of proprietary software listed in the directory? ==
+
    def get(self, title):
 +
        p = pywikibot.Page(pywikibot.Link(title, self.site))
 +
        for (template, params) in p.templatesWithParams():
 +
            if template.title() == 'Template:Entry':
 +
                return params
  
If so, please send an email with the subject "URGENT!" to {{Email|bug-directory@gnu.org|bug-directory@fsf.org}}. 
+
print(str(FSD().get('loomio')))
 +
</pre>
 +
</blockquote>
  
== Want to suggest an update to an entry? ==
+
== Submit new entries ==
  
If you've found some information that is out of date or just wrong on an entry, simply click the "submit a bug" button in the bottom left corner of the page, and please fill out any parts of the form that you can. We understand if this process may be cumbersome while we still work out all the kinks in our system, so you can feel free to email us {{Email|bug-directory@gnu.org|bug-directory@fsf.org}} with as much explanation as you can, including a link to the page you are referring to.
+
To submit a new entry to the directory:
 
   
 
   
== Want to join the team? ==
+
# [http://directory.fsf.org/wiki?title=Special:UserLogin&returnto=Main_Page Login to the directory].
 +
# Head to our [[Form:Entry|entry page]].
 +
# Enter the name of the package or software program.
 +
# You will be brought to a multi-part form -- don't panic! Only the first few fields are required.
 +
# The final step is to go to the last tab and press the '''save button''' at the bottom.
 +
 
 +
Please note that when you save, your submission won't appear. '''Don't Panic!'''
 +
The reason it is not appearing is because it has been marked
 +
as "unapproved". After our team has reviewed your submission thoroughly,
 +
completed adding as much data as possible, and ensured it meets all of
 +
our guidelines, your submission will be published on the Directory.
 +
Until approved you can review or improve your submission by editing it
 +
as outlined below.
 +
 
 +
== Update an entry ==
 +
 
 +
To update an entry:
 +
 
 +
# [http://directory.fsf.org/wiki?title=Special:UserLogin&returnto=Main_Page Login to the directory].
 +
# Click "Edit With Form" at the top of the page you'd like to update.
 +
 
 +
When you update an entry, you edit the latest version of the page,
 +
approved or not.
 +
 
 +
To find entries that haven't been updated in a while, check the [http://directory.fsf.org/wiki?title=Free_Software_Directory:Participate/oldies] page
 +
 
 +
== Deleting an entry ==
 +
 
 +
If a submission doesn't meet criteria for inclusion in the directory,
 +
the entry can be deleted by an administrator from the drop-down menu.
 +
When an entry is deleted, also search for references to it by other
 +
entries. For example, it may be listed as a "related project" for some
 +
other entries. These references need to be edited out manually; deleting
 +
an entry does not automatically remove them. The
 +
[[Special:WhatLinksHere|What links here]] tool comes handy when hunting
 +
down the links.
 +
 
 +
If the package is a particularly popular or well-known proprietary
 +
package, it might make more sense to have the page redirect to free
 +
alternatives already listed on the directory. That way, if a person
 +
searches the directory for the proprietary program, they can be directed
 +
to free equivalents.
 +
 
 +
When a page is deleted, it will show up in [[Special:Log/delete|the deletion log]] with a stated reason
 +
for its rejection, so users trying to submit a project can know how to
 +
correct any errors (if possible)
 +
 
 +
== Help us maintain and improve the Directory ==
 +
 
 +
Want to join others in the community and help curate and build the Free
 +
Software Directory? Join the
 +
[http://lists.gnu.org/mailman/listinfo/directory-discuss directory-discuss list] and send an email asking us how you can help!
  
Want to join others in the community and help curate and build the new Free Software Directory?  The easiest way to get involved right away is to join the  [http://lists.gnu.org/mailman/listinfo/directory-discuss Directory Discussion list]. Over the next weeks the community will begin flushing out the infrastructure and support documentation to provide more details on other ways you can get involved.
+
If you are an administrator looking for directions, check out the  
 +
[[FSD:Workflow|workflow page]].

Revision as of 04:34, 24 September 2016



Approval System

Anybody can create an account and update or submit new entries to the Directory. Please review the Requirements. However, updates and new submissions need approval by an administrator before they will appear publicly. Logged-in users can tell if they are seeing the latest version of the page, or if there are newer versions of the page waiting for approval by a message at the top of the page.

  • Not the latest version message: This is the approved revision of this page; it is not the most recent. View the most recent revision.
  • Latest version message: This is the approved revision of this page, as well as being the most recent.

You can see a list of approved pages or pages waiting for approval.

How to fill the fields in an entry

Each entry for a package in the Directory has information structured in quite a number of fields, some of which are obvious, some less so. Please check out the documentation for an entry, to assist you with relevant information on the requirements, meaning, or expectations for the content.

Tools

These tools are auxiliary, they do not replace this guide or the requirements.

import os

import pywikibot
from pywikibot import config2

log = logging.getLogger(__name__)


class FSD(object):

    def __init__(self):
        config2.register_family_file(
            'fsd', os.path.join(os.path.dirname(__file__),
                                'families/fsd_family.py'))
        self.site = pywikibot.Site(code="en", fam="fsd")

    def get(self, title):
        p = pywikibot.Page(pywikibot.Link(title, self.site))
        for (template, params) in p.templatesWithParams():
            if template.title() == 'Template:Entry':
                return params

print(str(FSD().get('loomio')))

Submit new entries

To submit a new entry to the directory:

  1. Login to the directory.
  2. Head to our entry page.
  3. Enter the name of the package or software program.
  4. You will be brought to a multi-part form -- don't panic! Only the first few fields are required.
  5. The final step is to go to the last tab and press the save button at the bottom.

Please note that when you save, your submission won't appear. Don't Panic! The reason it is not appearing is because it has been marked as "unapproved". After our team has reviewed your submission thoroughly, completed adding as much data as possible, and ensured it meets all of our guidelines, your submission will be published on the Directory. Until approved you can review or improve your submission by editing it as outlined below.

Update an entry

To update an entry:

  1. Login to the directory.
  2. Click "Edit With Form" at the top of the page you'd like to update.

When you update an entry, you edit the latest version of the page, approved or not.

To find entries that haven't been updated in a while, check the [1] page

Deleting an entry

If a submission doesn't meet criteria for inclusion in the directory, the entry can be deleted by an administrator from the drop-down menu. When an entry is deleted, also search for references to it by other entries. For example, it may be listed as a "related project" for some other entries. These references need to be edited out manually; deleting an entry does not automatically remove them. The What links here tool comes handy when hunting down the links.

If the package is a particularly popular or well-known proprietary package, it might make more sense to have the page redirect to free alternatives already listed on the directory. That way, if a person searches the directory for the proprietary program, they can be directed to free equivalents.

When a page is deleted, it will show up in the deletion log with a stated reason for its rejection, so users trying to submit a project can know how to correct any errors (if possible)

Help us maintain and improve the Directory

Want to join others in the community and help curate and build the Free Software Directory? Join the directory-discuss list and send an email asking us how you can help!

If you are an administrator looking for directions, check out the workflow page.



Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.