taskSavannah Administration - Tasks: task #13995, Submission of Teach Freedom


task #13995: Submission of Teach Freedom

Submitted by:  Adonay Felipe Nogueira <adfeno>
Submitted on:  Tue 10 May 2016 04:47:21 PM UTC  
Should Start On:  Tue 10 May 2016 03:00:00 AM UTC Should be Finished on:  Fri 20 May 2016 03:00:00 AM UTC
Category:  Project Approval Priority:  5 - Normal
Status:  Cancelled Privacy:  Public
Percent Complete:  0% Assigned to:  Assaf Gordon <agn>
Open/Closed:  Closed Effort:  0.00

Add a New Comment (Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Sat 02 Jul 2016 09:08:15 PM UTC, comment #3: 


I am closing this submission due to inactivity

You will still be able to register the project again once
you have the time to deal with the registration issues.

 - assaf

Assaf Gordon <agn>
Site AdministratorIn charge of this item.
Mon 06 Jun 2016 02:01:36 AM UTC, comment #2: 


Are you still interested in the submission of project 'Teach Freedom'?

If within two weeks there is no reply, this submission request will be closed. You will still be able to register the project again once you have the time to deal with the registration issues.

  - assaf

Assaf Gordon <agn>
Site AdministratorIn charge of this item.
Sun 22 May 2016 12:52:58 AM UTC, comment #1: 


Thank you for submitting a new project to host on GNU Savannah.

Savannah is primarily a source-code hosting platform, with limited resources. We can not host projects without code.

If you intend to add code in the near future, we can leave this request open for a while.
Otherwise, we can close the request and you will still be able to register the project again when the code is available.

 - assaf

Assaf Gordon <agn>
Site AdministratorIn charge of this item.
Tue 10 May 2016 04:47:21 PM UTC, original submission:  

A new project has been registered at Savannah
This project account will remain inactive until a site admin approves or discards the registration.

Registration Administration

While this item will be useful to track the registration process, approving or discarding the registration must be done using the specific Group Administration page, accessible only to site administrators, effectively logged as site administrators (superuser):

Registration Details

  • Name: Teach Freedom
  • System Name:  teach-freedom
  • Type: non-GNU software and documentation
  • License: GNU Lesser General Public License (Note about the license: This is only the project idea. There's no code yet. The LGPL was initially chosen because we think Teach Freedom could be best served as a library or a middle application. However, we're welcoming suggestions.

The idea for the project came from a person who's not a programmer, so we need all the help we can get.

# Initial ideas

  • It shouldn't be a dependency for the projects which decide to implement it.
  • Should check if the caller software is free, which could be done by getting a list of known free software
    • Perhaps from directory.fsf.org?
      • Threat: Server downtime
        • Save lists for off-line use?
        • Mirror the location of the file?
          • How to know available mirrors?
    • This idea could be discarded, but would open room for abuse if the software being used is not known to exist in the directory
    • Weakness: How to recognize if the software being used is the same in the list?
  • Weakness: Could be seem as spyware by the public
  • Weakness: Could annoy the public with many repetitive appearances
    • Something to check if the called program was called at least once since the system started?
    • A special trigger that checks how it was called?
      • If it was called by a script, don't show message
    • A special long option that the user types so that he can be sure of what he is about to do
      • Suggestion: "--open-source-misses-freedom"
      • Suggestion: "--free-as-in-freedom"
      • Suggestion: "--free-not-gratis"
  • If intended to be used to evaluate JavaScript, must be client-side, to avoid abuse by possible JavaScript developers
    • Alternative, Opportunity: Suggest GNU LibreJS projecto to always show the "complain" tab even if no contact could be found and if at least one JavaScript code is blocked. This way, even if the developer of the JavaScript abuses the project's functionalities, GNU LibreJS would warn the user
  • Should check if the current system distribution is free or not, perhaps by getting a list of known free and non-free ones
  • Should display an explanation of the four freedoms, and why free software mustn't depend on non-free software, and provide useful links, like: the free software definition, why our movement is important to the State, why digital inclusion with non-free software is bad
    • If the system distribution is non-free, display a paragraph pointing to the list of free system distributions
    • The messages should be timed pop-ups, that is, they must initially be programmed to disappear after some time. Only if the user clicks a button the message should stay.
      • Accessibility, Weakness: Since the message is timed, perhaps it's a good idea to tell the screen reader to give the user a short description of the pop-up and then give the description on how to click/activate the button to stop the timer)


A project that aims to develop a functional data that, when correctly interfaced, displays a timed pop-up on the caller program window on how free software is important to secure the essential freedoms of society.

Programming language: Teach Freedom aims to interface with many languages so that it can be called by all the projects which really have a goal of securing the essential freedoms.

According to our short research, Teach Freedom is the first project to attempt this goal. Besides, according to some users on irc://chat.freenode.net/fsf this project can be used to comply with the criteria that free system distributions must teach users about their essential freedoms regarding functional data:


Other Software Required:

Ncurses (X11 License?): https://www.gnu.org/software/ncurses/ncurses.html
# Should be able to be used along with

GTK+ (GNU LGPL 2): http://www.gtk.org/
Qt (GNU LGPL 2.1?): https://www.qt.io/download/
IUP (Expat License): http://webserver2.tecgraf.puc-rio.br/iup/
EFL (GNU LGPL 2.1): https://download.enlightenment.org/rel/libs/efl/
GNUstep (GNU LGPL 2.1): http://wwwmain.gnustep.org/index.html

# Additional notes

There's a possibility that it will also need to be ready to be used with other libraries or functional data which is used to build programs which interact with the end user.

Other Comments:

There is no code yet because we're planning and waiting for contributors to develop the basis of the project.

# IRC conversation which started this project

(09:12:09) ADFENO: Keziolio: So far as I and Mike Gerwitz think, Microsoft is not violating licenses, and also, most of the software seems to come from Ubuntu directly. https://mikegerwitz.com/2016/04/GNU-kWindows
(09:12:10) Keziolio: are you for real?
(09:12:34) Keziolio: yes they are not violating gpl
(09:12:35) MY123: Keziolio: yes
(09:12:45) MY123: no they are violating nothing
(09:13:08) Keziolio: but, they are doing something that is not liked by a lot of people
(09:13:44) ADFENO: .... So, Windows users will have the chance to use more free software. However yo are right about one important thing: Microsoft and Canonical don't teach users about the essential freedoms that the digital society ought to have.


(09:19:22) Keziolio: yes i agree with that
(09:19:46) ADFENO: Keziolio: And that is where we have to attack on.
(09:20:15) random_nick [~random_ni@] entrou na sala.
(09:20:28) Keziolio: I'ts a was lost in advance
(09:20:31) Keziolio: war*
(09:20:40) Keziolio: it's * dammit
(09:21:51) ADFENO: Here in Brazil, whenever I see someone saying that "Windows is free" or or even the old "Windows is better", I usually talk about the four freedoms in a easy way to understand (by making real-life examples, such as disabled users hiring a developer, and both sharing or selling the result work, and so on).
(09:23:01) Keziolio: That's not sustainable and you can't convince anyone, without doing crusades
(09:23:01) ADFENO: ... And of course, I tell people how non-free system dostributions (like Windows, Ubuntu, Fedora, Android, CyanogenMod, and so on) harm the essential freedoms of society in general.
(09:23:41) Keziolio: if microsoft has gone in the effort to port linux to windows, it means that free software has a great value
(09:24:10) ADFENO: Keziolio: So... What is your strategy proposition?
(09:24:12) Keziolio: so we (free software community/developers) are in a position to apply force
(09:24:13) bruce_lee: is fedora considered non-free?
(09:24:34) ADFENO: bruce_lee: Yes. It's non-free.
(09:24:42) Keziolio: maybe I said that badly, you can't convince everyone
(09:25:02) Keziolio: we're still the <1% of the population
(09:25:16) ADFENO: bruce_lee: And yes,Fedora is making a false propaganda with "Freedom", Friends, First.
(09:25:27) bruce_lee: ok, I'm not going to tell you which distribution I am using!
(09:25:53) Keziolio: it's rather useless to talk about free software to un-technical people, they wont give a sh*t now or ever
(09:26:04) ADFENO: bruce_lee: What you use is yours for the taking of emprisonment.
bren2010 brendyn bruce_lee
(09:26:23) bruce_lee: what about redhat?
(09:26:29) ADFENO: bruce_lee: But please, do not recommend it to society in general.
(09:27:37) bruce_lee: to which distribution should I switch?
(09:27:56) bruce_lee: centos?
(09:27:58) ADFENO: bruce_lee: RedHat is, as far as I know, a for-profit organization. They can do things against our movement, and they can sometimes be in favor. But we shouldn't relly on them.
(09:28:03) ***jxself uses Trisquel
(09:28:34) ADFENO: bruce_lee: Trisquel is my first guess.
(09:28:54) bruce_lee: thx, I'll check triquel
(09:29:44) ADFENO: Keziolio: It's difficult, but we must try.
(09:29:59) ADFENO: Here in Brazil things are even wrose.
(09:30:40) ADFENO: But the few 15 free software activists are still trying.
(09:30:49) Keziolio: Yeah but it there was a license that denies usage on non-free systems, that would be easier
(09:30:55) Keziolio: if*
(09:31:08) ADFENO: Keziolio: But that would be non-free software license.
(09:31:26) Keziolio: but the alternative is super-non-free
(09:31:41) Keziolio: but yeah it was just an idea
(09:32:10) qft [~qft@ip72-221-64-208.ri.ri.cox.net] entrou na sala.
(09:32:16) Keziolio: because things have changed a lot, it's possible that the old paradigm is not the best possible now
(09:33:09) ADFENO: Still... It doesn't change the fact that Windows is still a non-free system distribution... Nothing changed.
(09:33:41) Keziolio: yes but now windows (non-free) has the power of bot non-free and free software
(09:33:50) Keziolio: both*
(09:34:15) Keziolio: if I make an application for linux now, I'm giving power to windows and non-free software
(09:34:50) Keziolio: and that's bad because now there's no way as a developer to promote free software
(09:35:14) ADFENO: Keziolio: There is a way...
(09:35:29) Keziolio: what? systemd as a dependency?
(09:35:40) ADFENO: ... You can educate users about free software philosophy in your own applications.
(09:35:59) Keziolio: yeah that's going to work in utopia
(09:36:22) ADFENO: Do you know those so called "user-friendly" software? So, they have friendly interfaces, pop-up windows and other things.
(09:36:35) Keziolio: Yes that's friendly
(09:36:40) ADFENO: Colored windows.
(09:36:45) CapsAdmin saiu da sala (quit: Read error: Connection reset by peer).
(09:36:46) ADFENO: and so on...
(09:37:17) OpenPony [~OpenPony@unaffiliated/openpony] entrou na sala.
(09:37:19) CapsAdmin [~CapsAdmin@ti0115a400-2093.bb.online.no] entrou na sala.
(09:38:12) Keziolio: do you think that a popup can "convert" a major part of the population and developers to free software, by 2100?
(09:38:25) ADFENO: ... Point is: Make your software education the user about those freedoms. (I was actually going to suggest putting examples, but things change, and there might be a time where some non-free software or non-free system distribution becomes free, and your software becomes outdated with the examples).
(09:38:42) pitelpan saiu da sala (quit: Ping timeout: 276 seconds).
(09:39:48) ADFENO: Keziolio: You're right: I don't think so. But if we do it the right way... The user won't even notice that it's a popup.
(09:39:53) Keziolio: but given the power of free software, it would be best do dissociate and block microsoft's usage asap, instead of acting like nothing happened and then pray for support when all the developers switched to windows
(09:40:14) Keziolio: best to* sorry
(09:41:36) ADFENO: Perhaps there is even some kind of software that can be used to simply tell your program that the user is using non-free system distribution like Windows.
(09:44:03) ADFENO: This way you could program it to receive this response and say "Hey! It appears that you're using non-free software (Windows). If you wish to help humanity, and to regain your essential freedoms, please click here. <- Points to the list of free system distributions.
(09:44:28) Keziolio: yeah that's not going to make any tangible difference
(09:44:44) ADFENO: Really?
(09:45:11) jxself: That's a nice idea. Seems to fit with the "Please Teach Users about Free Software" part of http://www.gnu.org/distros/free-system-distribution-guidelines.html
(09:45:31) ADFENO: jxself: Exactly!


(09:46:01) ADFENO: I think that is what we as movoement were missing for quite some time.


(09:46:30) Infiltrator: ADFENO: Perhaps something a little less jarring might win over more people.


(09:48:30) ADFENO: I mean, we develop free software to help humanity, and then we do our best to fight to preserve that without denying the essential freedoms, and then when we talk about our own feats, even though people use some kind of free software, then what, they give us no part of their attention.


(09:50:58) ADFENO: I think that we should also put those "advertisements" in GNU LibreJS-compliant code.
(09:51:07) specing: Keziolio: bullshit, Linux is way better on the desktop than other OSs
(09:51:09) ADFENO: (or in free JavaScript in general)
(09:51:23) jxself: adfeno: Maybe write to the LibreJS people about that idea?


(09:51:40) ADFENO: jxself: Sure I will .:D


(10:04:09) Infiltrator: ADFENO: The "you are running free software on a non-free platform" idea won't work, ironically, because it's free software, so the distributors of the likes of microsoft and canonical would be able to hack out those messages.


(10:26:37) ADFENO: Infiltrator: Question is: Will they?


(10:27:52) ADFENO: I think the license should be copyleft, but I also think that it should be a package recommendation/suggestion, not a dependency.
(10:29:15) Infiltrator: I think that they would.  If they've gone to all the effort of porting.
(10:29:48) Infiltrator: What should be a suggestion and not a dep?


(10:30:29) ADFENO: Infiltrator: If they would, then the already educated people will notice something wrong.
(10:31:41) ADFENO: And, if these people know the importance of their essential freedoms, then they'll say "Hey! This software doesn't pop-up the 'free software' message, so it's probably non-free".


(10:39:47) ADFENO: I'm thinking about this idea I just gave... And it seems that the best thing to do is to implement it at the (client|user)-side, both because this would allow integration with existing free software in the system distribution, and also because it would try to avoid "non-official" messages that could be written by, for example, a website administrator (if the software would be at the server-side).


(10:42:17) ADFENO: I also think that it shouldn't be writen to be used as client-side JavaScript. Of course, nothing stops web developers to port it to be such a thing. But the original intent of the project is to be "light-ly-tied" to the system distribution.


(10:43:59) ADFENO: And also,,, Since it would interface with GNU LibreJS, people would probably know if the message is really legit, because LibreJS pops-up that "Complain!" button (although it only appears when it has found contact information).


(11:01:11) ADFENO: Infiltrator: The package that arises from this idea, this package should be suggested by other packages.
(11:01:32) ADFENO: However, as I said, it shouldn't be a dependency.

Tarball URL:


Adonay Felipe Nogueira <adfeno>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by agn (Posted a comment)
  • -email is unavailable- added by adfeno (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    Follow 4 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-07-02 agn StatusWait reply => Cancelled
        Open/ClosedOpen => Closed
    2016-05-22 agn StatusNone => Wait reply
        Assigned toNone => agn

    Back to the top

    Powered by Savane 3.5