Hello,
I'd like to invite you to take a look at and possibly contribute to our project aiming to deliver user-controlled Internet. We're developing a platform to allow, among others, _replacing_ web pages' scripts with user-provided ones. Besides making websites once again usable with libre software, we also plan to facilitate making, running and sharing site enhancements (features, styling, alternative interfaces, translations, accessibility fixes).
Documentation* (also contains non-technical concept explanation): https://koszko.org/browser-extension-doc.html Issue tracker: https://hachettebugs.koszko.org/projects/hachette Git repo: https://git.koszko.org/browser-extension/
If you have questions, comments, advice or constructive critique, you can also write directly to me: koszko@koszko.org
Side-note: project will use the name "Hachette", inherited from Jahoti's extension. Documentation and source code are not yet updated to use that name, though.
This is our response to the WWW ecosystem getting more and more bloated with proprietary javascript code and user-abusive mechanics. We are starting with a browser extension for both Mozilla- and Chromium-based browsers (although very different in concept from LibreJS, Greasemonkey or NoScript), with the ultimate goal of creating a platform usable with any browser, with its own repository for sharing fixes and enhancements.
We're going to apply to one of NLnet funds[1] that happens to _exactly_ match our project's goals. We're looking for a mentor to help us with this. If you have any experience with such applications, please share it with us. We're also looking for possible contributors. If you want to liberate your web browsing and have some time to spare, there is surely some way you can help, even if you don't know javascript (and if you know it, that's even better).
RMS wrote about the need for such facility 12 years ago[2]. How come nobody came up with anything since then? It's about time someone did something.
Wojtek
[1] https://nlnet.nl/useroperated/ [2] https://www.gnu.org/philosophy/javascript-trap.html
* In the future, documentation is going to be moved to our issue tracker's wiki: https://hachettebugs.koszko.org/projects/hachette/wiki
Great project.
As you alluded with your closing remark, another problem with LibreJS is that it is not "well-owned". This appears to already be a non-issue for Hachette.
Currently, the README's build instructions assume that the user is not working on an adversarial system. One thing I'd like to see with Hachette, in order to maximize user freedom, is to not make this assumption. Instead, revamp the build system. Consider someone trying to work in a public library or from a lab where they do not have control over the operating system of the machine that they're running. They're unlikely to be able to use `./build.sh`. (And even if the person trying to make modifications is using, say, a POSIX system, subtle differences across ostensibly POSIX-compatible implementations can cause problems.)
This can be ameliorated by redoing the build system so that a description of the build process is detailed in a document (say build.html) that lives in the repo root. This document would be responsible for both telling the user what steps are necessary, and to function as the build script itself. Under these circumstances, the requirements to be able to modify/build Hachette would be exactly the same as the requirements to use it--i.e., that they have access to a Web browser. This is a fairly safe assumption in general, but given the nature of the project, it is known that this requirement will be satisfied.
For the record, I can do this work, but I bring it up here as a way of attempting to address the patch paradox:
https://www.colbyrussell.com/2017/08/06/contributors-dilemma.html
If you're able to get funding for this, I would be available to work on this and other development part-time, perhaps full-time.
On 7/1/21 11:08 AM, W. Kosior via wrote:
If you have questions, comments, advice or constructive critique, you can also write directly to me: koszko@koszko.org
Please sign me up for updates on this project (incl. any mailing list/newsletter that you might set up).
Currently, the README's build instructions assume that the user is not working on an adversarial system. One thing I'd like to see with Hachette, in order to maximize user freedom, is to not make this assumption. Instead, revamp the build system. [...]
This is possible to do. However, is it really likely someone running Losedows will be interested in building the extension?
I shall later provide prebuilt versions. I am not doing this right now simply because what I prepared so far is directed at hackers (except, perhaps, the non-technical part of the documentation). There are still some things that need to be done before the extension will be suitable for use by the general public.
As to POSIX-compatibility - sure, there is some risk of problems occuring. I do really hope there won't be any, though (I am not even using bash for the extension...)
This can be ameliorated by redoing the build system so that a description of the build process is detailed in a document (say build.html) that lives in the repo root. This document would be responsible for both telling the user what steps are necessary, and to function as the build script itself.
That might be difficult. The build process is somewhat too complicated for a user to perform by hand, even given instructions. How about we instead tell Losedows users to install Cygwin? The only other approach that comes to my mind is writing a .bat script that would be an equivalent of build.sh. This is doable. Whether worth the effort - that will depend on how many people want to build the extension under Micro$oft's system.
In general - I don't mind supporting nonfree OS'es if there's demand. I can easily use Wine for that without having to run the OS :)
For the record, I can do this work, but I bring it up here as a way of attempting to address the patch paradox:
You mean documenting the build process? If you do so, I shall be grateful and accept the contribution. If you want my opinion - I think it is more urgent to work on the 43 issues we have open: https://hachettebugs.koszko.org/projects/hachette/issues?set_filter=1&tr...
If you're able to get funding for this, I would be available to work on this and other development part-time, perhaps full-time.
I'll keep that in mind :) Btw, thank you for your feedback!
Please sign me up for updates on this project (incl. any mailing list/newsletter that you might set up).
Here goes another feedback request - do you all think we should set up a mailing list for the project? It might be a good place for community. And at the same time, it could be doubling of issue tracker's purpose (it also offers a forum). Btw2, I activated your account on hachettebugs
Wojtek
On Thu, Jul 01, 2021 at 06:08:59PM +0200, W. Kosior wrote:
Hello,
I'd like to invite you to take a look at and possibly contribute to our project aiming to deliver user-controlled Internet. We're developing a platform to allow, among others, _replacing_ web pages' scripts with user-provided ones. Besides making websites once again usable with libre software, we also plan to facilitate making, running and sharing site enhancements (features, styling, alternative interfaces, translations, accessibility fixes).
Awesome, we definitely need such a platform. There have been some efforts in the past. Someone in the thread already mentioned Greasemonkey. There is also https://greasyfork.org/en, https://userscripts-mirror.org/, and others. They have varying levels of commitment to free software and proper licensing practices, but maybe they can provide useful ideas or opportunities for collaboration.
(Probably this conversation could be narrowed to just one list? Sorry for not doing the trimming myself. It's not exactly on-topic for fsf-community-team.)
-john
On Thu, Jul 01, 2021 at 06:08:59PM +0200, W. Kosior wrote:
Hello,
I'd like to invite you to take a look at and possibly contribute to our project aiming to deliver user-controlled Internet. We're developing a platform to allow, among others, _replacing_ web pages' scripts with user-provided ones. Besides making websites once again usable with libre software, we also plan to facilitate making, running and sharing site enhancements (features, styling, alternative interfaces, translations, accessibility fixes).
(Probably this conversation could be narrowed to just one list? Sorry for not doing the trimming myself. It's not exactly on-topic for fsf-community-team.)
-john
You're right. js-extensions-discussion@gnu.org seems most appropriate, I shall continue there.
Wojtek