I added a small improvement to the fetchpullstats: It now has plots that show the lifetime. They show that large files (bulk = CHK splitfile) live somewhat reliably up to 16 days, small files live reliably up to 32 days (small = SSK splitfile) and tiny files can survive up to 128 days (realtime = raw SSK).
You can see that in the plots: When they get spotty, three separate files have fallen out. Currently the plots do not show when the first files start to fall out.
They decided 317-312 not to discuss article 13 individually.
I find no words to describe that.
The filtering does not apply to noncommercial platforms yet. Get your friends on Freenet so we can continue to organize in a space they cannot censor at the touch of a button.
If you speak german, please share these cards with all people you know, so we can keep organizing:
Up to 1483 this vulnerability could result in Firefox asking the user to open an unfiltered file in an external program while skipping the warning typically shown by fproxy that the file might be unsafe.
Big thanks to thesnark/phage for finding it and to operhiem1/Steve for creating an elegant fix!
I inserted Freenet build 1484 to the following testing update key.
you want to test it, you can use the key as auto-update key (please
remember to switch back tot he official key after testing!):
The build included here is a followup build from several tests already
released as pure jar+sources over the past weeks and has been on github
since yesterday evening:
The planned data was last weekend, and I'm sorry that it got delayed
one more week. The release VM only works well enough to release, when
virtualization is enabled in the BIOS so qemu can use KVM. That took
quite a few hours to find out ...
If we don't find new blockers, I'll release to the official
keys (Java 7 + Java 8) this weekend. After release, please run the
verify-build to ensure that what is released as jar corresponds to the
It would be great to have Freenet working well on phones or tablets. However for that it has to be adjusted for the very different requirements of the platform:
If you want to do it, go for it. I'd love to see it.
There's also a longer writeup in the bugtracker. I don't agree with all the requirements (I think not all are a necessary precondition), but it's a good reference anyway: https://freenet.mantishub.io/view.php?id=6765
Please join them, and pass on the info!
Updates in the clearnet: https://savetheinternet.info/demos
Even if you are fighting to save the world, keep in mind that it will still need saving tomorrow. Please stay around. --- ArneBab
In life, as in kernels, the most important thing is that the system stays up. --- operhiem1 in IRC
If you want to help out on one of my other projects: I just started a short 3-day crowdfunding to print a free roleplaying game for the German free RPG day on march 23rd 2019.
RPGGeek says about it:
All the rules needed to play the Zettel-RPG, a small universal game system designed to be played with minimal preparation. The rules take a few minutes to read, character generation even less. Simple and portable.
Jens Stengel's photographs of everything from dice to walnut shells provide a refreshingly unorthodox backdrop.
If you want to support that, please join the crowdfunding at https://www.startnext.com/zettel-rpg-grt2019
And remember to also take to the street on march 23rd against Article 13 of the new copyright directive of the EU! Let's combine the German free RPG day with the demonstration and give double meaning to our gathering!
It should be able to play FLAC songs directly in the browser: infinite-hands-free-software.flac
... and in an audio-tag:
As noted on FMS, the old fetchpullstats used quite a powerful database backend to track inserted keys:
The downside to running this kind of thing is having to keep track of eventually many thousands of keys for months at a time while waiting for the trigger to try and fetch them for the first time after 2^n days.
The new fetchpullstats avoids that, since Freenet already provides this information.
The keys are simple KSKs with a long prefix followed by the target retrieval date and the days they were inserted before. Example:
Therefore if the current date is 2018-11-23 to check the lifetime of a key inserted 8 days before using realtime mode, I simply request the key above.
The prefix is generated at random (and saved) when the script is run at a place where there is no configured prefix.
That's how I can do this without a database backend. Freenet is a decentralized database and we can avoid a lot of complexity by using that. The state the fetchpullstats keeps is a single KSK prefix along with the measured results (on the order of 100 lines of text per day).
If you want to run your own fetchpull stats, too, you can get a snapshot of the code from SSK@P2fn~pFtoAPOeMQ4YZYZMelB2Q6IUHEskj8gGtZN3Vs,lql1C3-YiVgK3KVYf~ClATgNhgMTBb~MkS7NJwbb6KI,AQACAAE/fetchpullstats-d110ae753eaf.tgz
You need to install Guile on a GNU/Linux system, then you can simply run./fetchpull.w
to collect data (run it daily, for example with a cron-job), and create the site with (needs gnuplot):./fetchpull.w --site SITENAME ; cp fetchpull*.png SITENAME/
The latter command is only needed because there's still a bug which causes some of the files to have zero length when copied directly from the fetchpull.w script.
I've been direly missing the fetchpullstats by bertm, therefore I decided last weekend to recreate them. They aren't as fancy as the old ones, but all state except for a KSK prefix is stored in Freenet.
Also there's now a multithreaded message-multiplexing Scheme-library for FCP, though with only few message types implemented.
(this is a smaller version of the tool I built which avoids any external dependencies except for Guile)
If the cron-job works out, this should update daily, and in a few weeks time the info should be actually interesting.
with 1481 Windows users had some sever performance problems. The initial workaround for that will be to reduce the peer-count. We got 3 reports that this fixes the problems.
Regarding anonymity, this should have little effect. You have fewer peers that mask HTL18 requests, but it will also be much less likely that an attacker connects to you, and statistical analysis which can theoretically break the HTL18 check will have to cope with much more noise because the fewer peers will reduce the smoothing of data from other peers, so it gets harder to ignore.
(and I have not yet seen any calculation which actually took into account that actual peer-counts are far from homogenous in Freenet)
I plan to insert 1482 tomorrow. You can watch what happens on the following status page. It should keep updating, but the script which creates the site isn't very robust, so no panic if it stops.
Now that we're on gradle, verifying that what I release is actually what's tagged in the source is much easier than before. These instructions are for GNU/Linux, and maybe other *nixes.
Firstoff: to verify 1482 you NEED Java 7 - in general you need the Java version I release with.
Start by downloading the jar: SSK@dLxKiIFKlfhgdgkYNlHoGoSO~KWRYPTkdbWfznZyatg,OwghtrmoY5Mj~1pfUHbo308FHZyTVwXfEXNX5C2EKT8,AQACAAE/jar-1482
Copy it to /tmp/freenet-1482.jar
Then run the following:failureWarning="FAILED TO VERIFY. If you determine that this failure is not due to build environent differences, then the source files used to build the published version of Freenet are different from the published source files. The build has been compromised. Take care to only run version of Freenet with published, reviewable source code, as compromised versions of Freenet could easily contain back doors." cd /tmp/ git clone email@example.com:freenet/fred.git cd fred git checkout build01482 ./gradlew jar mv build/libs/freenet.jar ../freenet-built.jar cd .. mkdir unpacked-built unzip freenet-built.jar -d unpacked-built (cd unpacked-built; find -type f) | sort > unpacked-built.list mkdir unpacked-official unzip freenet-1482.jar -d unpacked-official (cd unpacked-official; find -type f) | sort > unpacked-official.list if ! cmp unpacked-official.list unpacked-built.list; then echo FAILED TO VERIFY: Different files in official vs built echo Files in official but not in built are marked as + echo Files in built but not in official are marked with - diff -u unpacked-built.list unpacked-official.list echo "" echo "$failureWarning" fi while read x; do if ! cmp "unpacked-official/$x" "unpacked-built/$x"; then if [[ "$x" = "./META-INF/MANIFEST.MF" ]]; then echo "Manifest file is different; this is expected." echo "Please review the differences:" diff "unpacked-official/$x" "unpacked-built/$x" else echo "File is different: $x" echo "$x" >> "differences" fi fi done < unpacked-official.list if [[ -s "differences" ]]; then echo VERIFY FAILED: FILES ARE DIFFERENT: cat differences echo "" echo "$failureWarning" fi
PS: This is a shorter version of the verify-build script: https://github.com/freenet/scripts/blob/master/verify-build#L169
This release addresses increased CPU load in 1481 by reducing
the peer-count. The lower number of peers should reduce
the necessary work for routing. Since all nodes reduce their peercount,
the bandwidth per peer rises, so the speeds should stay the same.
If you give Freenet 100kiB/s upload speed, it will now
request only 13 opennet-peers.
Also 1482 applies the winterfacey theme adaptions by poet.
You can test the winterfacey theme by activating it in
Configuration -> Web interface.
To help with testing 1482, please set the following as your auto-update key:
This is also available on github as pre-release: https://github.com/freenet/fred/releases/tag/build01482
We especially need testers using Windows, ideally in a setup where Freenet 1481 caused extremely high CPU load.
Freenet 0.7.5 build 1481 is now available
The Freenet Team is proud to release Freenet build 1481, the first
build to be compiled from gradle! This concludes work during the past
two years to make it easier for new developers to start hacking on
Your Freenet node should update itself from Freenet via the auto-update.
This release rekeys the update URIs to ensure they are compliant with
RFC6979. It also splits off java 7 into its own update key for 1482,
so we can use java 8 starting with 1483. The updated keys have been
split into shares using ssss-split and distributed among core
developers to maximize our release management bus factor:
We also added the Winterfacey theme and set sky-static as default
theme until Winterfacey got more testing. You can test switch between
themes on Configuration -> Web Interface
Thank you for using Freenet!
And a special thank you to DC* (desyncr) who tracked down an OOM so we
could finally fix it and release after 6 weeks of fruitless search!
I think it is useful to understand that other people value other things than I do. My current best reference of that are the 18 values of the "Lebe Balance" program:Act Self Want Freedom in thinking Pleasure Prosperity Self-determination Power Social prestige Variation Influence Security Tradition Modesty Tolerance Willingness to adapt Caring Justice Follow rules Reliability Environmental Protection
These values exist around the world, but the values which give you strength is only a subselection of them: your personal core values. When you act in accord with your values, you are happier and can more easily go forward. Note that you cannot easily change what you value.
When someone does something alien to you, he or she might just put different weights on these values.
Only one of them is prosperity (getting richer).
This is a high-level roadmap.
We had several roadmaps in the past. They focussed on releases and on "when are we done". This one is different. It focusses on visions to find a stronger audience. It does not shun controversial topics and it is not a request for input.
These are the powerful visions I see, ordered alphabetically:
addition from FMS
The European Copyright directive threatens online communication in Europe.
But thanks to massive shared action earlier this year, the European parliament can still prevent the problems. For each of the articles there are proposals which fix them. The parliamentarians (MEPs) just have to vote for them. And since they are under massive pressure from large media companies, that went as far as defaming those who took action as fake people, the MEPs need to hear your voice to know that your are real.
If you care about the future of the Internet in the EU, please Call your MEPs.