HackerLangs
TopNewTrendsCommentsPastAskShowJobs

ValdikSS

1,023 karmajoined hace 12 años

Submissions

What happened to BitTorrent's Project Maelstrom web browser?

ctrl.blog
11 points·by ValdikSS·hace 9 días·1 comments

Spoiling Linux Kernel with "sanctioned" code

printserver.ink
111 points·by ValdikSS·el mes pasado·66 comments

Xerox deleted Linux drivers for EOL printers, but not Windows or macOS

forum.support.xerox.com
4 points·by ValdikSS·hace 4 meses·1 comments

Windows 11 is finally killing off legacy printer drivers in 2026

windowscentral.com
4 points·by ValdikSS·hace 5 meses·0 comments

Box64 vs. FEX Emulation Performance on ARM Cortex-A53

printserver.ink
2 points·by ValdikSS·hace 6 meses·0 comments

Blame Wi-Fi drivers for printer (mDNS) discovery issues

printserver.ink
30 points·by ValdikSS·hace 8 meses·6 comments

comments

ValdikSS
·hace 5 días·discuss
>Nothing discernible happens. No errors or network activity in the dev tools.

I guess it expects any 'WEB3' browser extension to be installed. Anything that supports Ethereum should work: Metamask, Enkrypt, Rainbow, …
ValdikSS
·hace 5 días·discuss
I did not get it how it could be used for a _static blog_.

>…the paywall fetches the content behind the scenes, and since our response is JSON rather than HTML it has nothing to render in place, so it navigates to an in-memory object URL created from the response. The protocol itself is pay per use, so every time you hit an API - you will be charged.

So it can't be used to 'unlock' a paid article forever? You can only read it once, and if you closed the tab, you need to pay again?
ValdikSS
·hace 5 días·discuss
Just buy used from this list

https://notes.valdikss.org.ru/printers/#Cheap%20used%20laser...
ValdikSS
·hace 5 días·discuss
Several Chinese companies have their own domestic laser printers, claiming of in-house components and development (Cumtenn, ZoneWin), and one company does inkjet printers in addition to lasers (Deli Printer).

https://www.delioa.com/products/a4-inkjet-printer/

ZoneWin, a laser printer company, made a clone of both HP LaserJet 1020 and LaserJet M1005, which reuse most of the original/compatible parts (Q2612A cartridge). They claim it's 100% domestic parts only.

https://www.rtmworld.com/news/new-chinese-made-printer-uses-...
ValdikSS
·hace 8 días·discuss
My guess would be: it's because memory management before MGLRU was really not good and required different userspace solutions and tinkering. You either get killed with OOM (no swap) or got into thrashing (swap).

And now, with PSI + MGLRU, situation is much better, but there are still missing features/subsystems which would be nice to have. For example there's no simple way to lock memory mlockall-style to ensure that rarely used daemon would not face long no-cache-latency upon accessing the first time after long idle time.
ValdikSS
·hace 8 días·discuss


    - /** Determine if the current device is from mainland China using Emojis
    - * If the *Taiwan flag* characters cannot be displayed in color (rendered as black and white letters or not rendered at all), it indicates a device more likely to be from mainland China.
    - * To avoid false positives, *smiley face* will be used as a comparison:
    - * If the device cannot even render regular Emojis in color (such as Linux without colored Emoji fonts,
    - * a browser with fingerprint protection enabled), it returns null to indicate that it cannot determine the source, rather than falsely reporting true. */
ValdikSS
·hace 8 días·discuss
You know the author has a fast internet connection when the photos are 6 MB PNG each.
ValdikSS
·hace 8 días·discuss
Many have different definition of 'help' where they expect the job to be done for them, and not just a help in a form of advice.

That's flaweed though.
ValdikSS
·hace 9 días·discuss
Oh, for a several sessions? Yes, this sounds useful.

I usually just switch to systemd-nspawn --ephemeral containers derived from my host rootfs for such cases, not to pollute the rootfs at all.
ValdikSS
·hace 9 días·discuss
>A few hours later:

>You don't remember what you installed.

There's no such issue with dnf, it has `dnf history` which, well, does what your utility do.

See what you've installed with `dnf history info ...`, undo with `dnf history undo ...`.
ValdikSS
·hace 9 días·discuss
1. IPFS has addressable content

The main drawback of BitTorrent v1 file hashing scheme inside the .torrent file is that it makes a virtual stream of the directory you want to share, splits that stream into blocks, and hash it altogether. That means that each file inside the torrent is unique, even if your directory have very common files, each is which exist in BitTorrent network per se.

IPFS solves this issue by just hashing the contents of the file. The "directory" of the files is a list of each individual file. If somebody has created a directory of 100 mp3 files and you happen to have one of it and added it into your IPFS daemon, you will be serving this file even if you've downloaded it from elsewhere (not from this "directory").

2. IPFS has both immutable and mutable files and directories

In BitTorrent, if you want to update your torrent file (in Russian we use «раздача» (bittorrent "upload"/"seeding"), a very precise word for bittorrent which doesn't have direct equivalent in English, so I'll stick to "torrent file), all the swarm needs to be switched to the updated version due to #1.

This means you have split swarm: the majority of people still seed the old version of torrent, and the minority seed the new version. Because of non-content addressation, all the old, already exising files in new .torrent file are treated as "new", and the old swarm can't seed them.

In IPFS, you can either create new immutable directory with all the old files and 1 new file, and all the old files would be seeded by the existing peers, or you can create mutable directory, and you can just modify it to your like without the need to update the link.

---

Both of these issues are solved in BitTorrent v2 more or less, but it's still not very popular, even if the specification is from 2017.

IPFS however is much more featureful than that. It allows to build decentralized distributed (serverless) websites and services, with user data and such.

There used to be a ZeroNet project which directly aimed at decentralized distributed web services, and is was very cool, there were many blogs, forums, boards. It all could be implemented in IPFS, but I saw only very simple text editors over IPFS and such, much simpler applications than it was in ZeroNet.

BitTorrent had their own version of distributed websites, Maelstrom: https://www.ctrl.blog/entry/bittorrent-maelstrom.html
ValdikSS
·hace 9 días·discuss
IPFS (at least initially) was designed to be a BitTorrent replacement, a new version of it, which you can use not only with a special software, but also via HTTP and also directly inside the browser.

It basically works as BitTorrent, but also provides HTTP access to the files.

In fact, many pirate websites use IPFS in one way or another (either directly, by serving the downloads over one of the public gateway, or indirectly, for internal needs).
ValdikSS
·hace 9 días·discuss
Also used it several times for almost-live video broadcasts, served over cloudflare ipfs gateway while it was working.

It used HLS with .ts files, in a special way which circumvented cloudflare protection against .mp4 and .ts files, or something along the lines. Don't remember the details, but it was a cheap way to deliver your stream to any video player using standard protocols only.
ValdikSS
·hace 9 días·discuss
I use it for about 5 years, to publish javascript file (proxy auto-configuration) and serve the contents over different gateways.

It is a huge server traffic saver.

Used to use it to host different static websites on custom domains while Cloudflare's gateway was working, stopped using it for this purpose since its sunset in 2024.

Neocities used to publish their websites over IPFS, this feature got broken (for years) and finally got removed: https://github.com/neocities/neocities/issues/352
ValdikSS
·hace 9 días·discuss
The interface design reminded me of yunohost a bit.
ValdikSS
·hace 9 días·discuss
If anyone interested in experimenting with dithering/halftoning algorithms in postscript, take a look at https://printserver.ink/blog/ghostscript-halftone/

You can implement it in PostScript, and there are many examples (with the PostScript code) in PDF specification (pages 303-307): https://opensource.adobe.com/dc-acrobat-sdk-docs/standards/p...
ValdikSS
·hace 11 días·discuss
OLPC (one laptop per child) had Open Firmware, a Forth bootloader/firmware

https://lwn.net/Articles/209301/
ValdikSS
·hace 14 días·discuss
See my comment above.
ValdikSS
·hace 14 días·discuss
For HDD, it also needs to be tuned. In its default configuration, MGLRU 'just' manages multiple generations of working sets, but there's a min_ttl_ms tunable which tries hard to prevent file cache from being reclaimed, which is not enabled by default.

https://docs.kernel.org/admin-guide/mm/multigen_lru.html#thr...

You'd want to set it to 300 or 500, or even 1000 for the HDDs. Around 100-200 for SSDs/EMMCs helps as well.

And for anonymous pages swapping, you'd want to do that on zram (compressed swap in RAM). It also make wonders. You don't want to touch the (old) disk for that.

Here's my old article (before MGLRU): https://notes.valdikss.org.ru/linux-for-old-pc-from-2007/en/
ValdikSS
·hace 14 días·discuss
And not a word about MGLRU and its settings. It has the biggest impact on performance on lower-end PCs, especially with low amount of RAM and slow HDD.

Here's a post from "le9" patch user which was created by ChromeOS developers much before MGLRU, but exploits the similar idea: keeping the essential file cache in RAM for as long as possible. It's usually night and day on low-end machines.

    - https://www.phoronix.com/forums/forum/software/general-linux-open-source/1267300-le9-strives-to-make-linux-very-usable-on-systems-with-small-amounts-of-ram?p=1267789#post1267789
    - https://www.phoronix.com/forums/forum/software/general-linux-open-source/1267300-le9-strives-to-make-linux-very-usable-on-systems-with-small-amounts-of-ram?p=1268100#post1268100