<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: DvdGiessen</title><link>https://news.ycombinator.com/user?id=DvdGiessen</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 29 Aug 2026 09:54:50 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=DvdGiessen" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by DvdGiessen in "SmartOS"]]></title><description><![CDATA[
<p>Running a number of production services on-premise on a big machine using native zones, a few using LX zones (the built-in Linux compatibilty layer), and a single bhyve zone. Actually, years ago this machine was the very first server we set up when our company was just getting started and for the first few years it ran pretty much everything. Zones were ideal for that, also to allow us to pack more services on less hardware, while having decent separation and everything snapshotting/backupping using ZFS. Nowadays we have a bunch more servers, with varying *nix operating systems (SmartOS, Debian, FreeBSD), as well as macOS and even Windows for some specific CI functions. (:<p>The global zone works great as a hypervisor if you prefer working over SSH in a real shell, and being able to run a lot of services natively just makes things like memory allocation to VM's and having a birds eye view of performance easier. Being able to CoW cp/mv files between zones because it's actually the same filesystem makes certain operations much easier than with actual VM's. Bhyve works well for the things that need an actual Linux kernel or other OS, at the cost of losing some of the zone benefits mentioned earlier.<p>Highlighting a few things we today run on SmartOS, grouped by their technology stacks: C (haproxy, nginx, PostgreSQL, MariaDB), PHP (various web apps), Java (Keycloak), Elixir/Phoenix (Plausible, fork of Firezone), Rust (rathole, some internal glue services), Go (Grafana, Consul, Prometheus). Most of those are readily available in the package manager, and a few offer native Solaris binaries which run fine on illumos. Others we do local builds in a utility zone before copying the binary package to the where it actually runs.<p>On LX zones we also run a number of services without problems, usually because they have Debian packaging available but are not in pkgsrc (for example Consul/Nomad, Fabio, some internal things that was already Linux-specific and we haven't bothered to port yet).<p>And at home a LX zone also runs Jellyfin just fine. (:</p>
]]></description><pubDate>Wed, 21 Jan 2026 19:27:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=46710279</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=46710279</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46710279</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Show HN: Anonymous Age Verification"]]></title><description><![CDATA[
<p>You might also be interested in the IRMA protocol and the app implementing it, Yivi. They support a similar scheme, but using some additional cryptographic systems that provide extra security properties such as unlinkability that are very useful for privacy.<p><a href="https://docs.yivi.app/technical-overview/" rel="nofollow">https://docs.yivi.app/technical-overview/</a><p>Since I learned about it I've been hoping a system providing such unlinkability would be further developed and preferably adopted as the standard for online identity by for example the EU. Unfortunately I don't think the current proposals for the eIDAS include this (although it's been a while since I read up on this and I'd love to hear from someone more familiar if I'm wrong!)</p>
]]></description><pubDate>Mon, 01 Sep 2025 01:08:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=45088518</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=45088518</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45088518</guid></item><item><title><![CDATA[The GPU, not the TPM, is the root of hardware DRM]]></title><description><![CDATA[
<p>Article URL: <a href="https://mjg59.dreamwidth.org/70954.html">https://mjg59.dreamwidth.org/70954.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=42570988">https://news.ycombinator.com/item?id=42570988</a></p>
<p>Points: 445</p>
<p># Comments: 472</p>
]]></description><pubDate>Thu, 02 Jan 2025 02:09:45 +0000</pubDate><link>https://mjg59.dreamwidth.org/70954.html</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=42570988</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42570988</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Useful built-in macOS command-line utilities"]]></title><description><![CDATA[
<p>Copying using OSC52 is great! I have a cross-platform shell function for that in my bashrc [1], as well as an implementation that works in vim [2].<p>[1]: <a href="https://github.com/DvdGiessen/dotfiles/blob/2c02332b4a6576909a8d1d233f3cc991845e873a/.bashrc#L483-L502">https://github.com/DvdGiessen/dotfiles/blob/2c02332b4a657690...</a>
[2]: <a href="https://github.com/DvdGiessen/dotfiles/blob/2c02332b4a6576909a8d1d233f3cc991845e873a/.vimrc#L101-L161">https://github.com/DvdGiessen/dotfiles/blob/2c02332b4a657690...</a></p>
]]></description><pubDate>Thu, 07 Nov 2024 02:03:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=42072500</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=42072500</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42072500</guid></item><item><title><![CDATA[Challenges deploying PostgreSQL (9.2) for high availability]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.davepacheco.net/blog/2024/challenges-deploying-postgresql-9.2-for-high-availability/">https://www.davepacheco.net/blog/2024/challenges-deploying-postgresql-9.2-for-high-availability/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=41965453">https://news.ycombinator.com/item?id=41965453</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Sun, 27 Oct 2024 20:35:11 +0000</pubDate><link>https://www.davepacheco.net/blog/2024/challenges-deploying-postgresql-9.2-for-high-availability/</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=41965453</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41965453</guid></item><item><title><![CDATA[New comment by DvdGiessen in "setBigTimeout"]]></title><description><![CDATA[
<p>When implementing a tiny timing library in JS a few years back I found that most engines indeed seem to cast the value to an integer (effectively flooring it), so in order to get consistent behaviour in all environments I resorted to always calling Math.ceil on the timeout value first [1], thus making it so that the callbacks always fire after <i>at least</i> the given timeout has passed (same as with regular setTimeout, which also cannot guarantee that the engine can run the callback at exactly the given timeout due to scheduling). Also used a very similar timeout chaining technique as described here, it works well!<p>[1]: <a href="https://github.com/DvdGiessen/virtual-clock/blob/master/src/virtual-clock.js#L222">https://github.com/DvdGiessen/virtual-clock/blob/master/src/...</a></p>
]]></description><pubDate>Fri, 18 Oct 2024 22:45:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=41884172</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=41884172</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41884172</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Ask HN: Those who run mainly Linux and game on Windows, what's your setup like?"]]></title><description><![CDATA[
<p>I haven't so far. CS:GO and now CS2 run natively on Linux, so never played those online in the VM. I hear Valorant's anticheat is trouble, but I haven't played it (and probably won't for that reason; personally I have so many other games left to play I'd probably just do that instead of having to install Windows on a separate boot drive).</p>
]]></description><pubDate>Mon, 15 Jul 2024 09:29:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=40966380</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=40966380</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40966380</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Ask HN: Those who run mainly Linux and game on Windows, what's your setup like?"]]></title><description><![CDATA[
<p>When I switched to daily driving Linux I created a VFIO Windows VM that gets passed through my GPU and USB controller (and thus audio, inputs) which gives me pretty near native performance. It takes maybe 10 seconds to boot into it, and I can easily access my files from the Linux host running underneath. I recently added a VirtioFS mount so I can store my games on the Linux filesystem instead of inside the VM disk image. I've started a few games and benchmarks on it to confirm it runs great.<p>VM running using libvirt and virt-manager, using QEMU underneath, with custom hook script that makes passing through the hardware a bit more seamless.<p>Although with how awesome Wine/Proton and ecosystem are these days I have so far played almost all my games on Linux. I created the VM setup because I thought I'd need it, but turns out I didn't really. Think I've played through 20-30 games or something like that now with minimal issues on Linux, including big budget AAA games within a few days of their release, smaller indie games, all kinds of different ones. Most tinkering required was for older games that'd need similar tweaks on modern Windows as well.</p>
]]></description><pubDate>Sat, 13 Jul 2024 15:27:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=40954629</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=40954629</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40954629</guid></item><item><title><![CDATA[New comment by DvdGiessen in "How Games Used to Look: Why Retro Gaming on a CRT Looks Different [video]"]]></title><description><![CDATA[
<p>One I remember is [0], mostly because of the excellent accompanying blogpost about how it works [1].<p>[0]: <a href="https://piratehearts.itch.io/supercrt" rel="nofollow noreferrer">https://piratehearts.itch.io/supercrt</a>
[1]: <a href="https://www.gamedeveloper.com/programming/crt-simulation-in-super-win-the-game" rel="nofollow noreferrer">https://www.gamedeveloper.com/programming/crt-simulation-in-...</a></p>
]]></description><pubDate>Mon, 09 Oct 2023 08:01:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=37818099</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=37818099</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=37818099</guid></item><item><title><![CDATA[New comment by DvdGiessen in "ZFS 2.2.0 (RC): Block Cloning merged"]]></title><description><![CDATA[
<p>In production on SmartOS (illumos) servers running applications and VM's, on TrueNAS and plain FreeBSD for various storage and backups, and on a few Linux-based workstations. Using mirrors and raidz2 depending on the needs of the machines.<p>We've successfully survived numerous disk failures (a broken batch of HDD's giving all kinds of small read errors, an SSD that completely failed and disappeared, etc), and were in most cases able to replace them without a second of downtime (would have been all cases if not for disks placed in hard-to-reach places, now only a few minutes downtime to physically swap the disk).<p>Snapshots work perfectly as well. Systems are set up to automatically make snapshots using [1], on boot, on a timer, and right before potentially dangerous operations such as package manager commands as well. I've rolled back after botched OS updates without problems; after a reboot the machine was back in it's old state. Also rolled back a live system a few times after a broken package update, restoring the filesystem state without any issues. Easily accessing old versions of a file is an added bonus which has been helpful a few times.<p>Send/receive is ideal for backups. We are able to send snapshots between machines, even across different OSes, without issues. We've also moved entire pools from one OS to another without problems.<p>Knowing we have automatic snapshots and external backups configured also allows me to be very liberal with giving root access to inexperienced people to various (non-critical) machines, knowing that if anything breaks it will always be easy to roll back, and encouraging them to learn by experimenting a bit, to the point where we can even diff between snapshots to inspect what changed and learn from that.<p>Biggest gotchas so far have been on my personal Arch Linux setup, where the out-of-tree nature of ZFS has caused some issues like a incompatible kernel being installed, the ZFS module failing to compile, and my workstation subsequently being unable to boot. But even that was solved by my entire system running on ZFS: a single rollback from my bootloader [2] and all was back the way it was before.<p>Having good tooling set up definitely helped a lot. My monkey brain has the tendency to think "surely I got it right this time, so no need to make a snapshot before trying out X!", especially when experimenting on my own workstation. Automating snapshots using a systemd timer and hooks added to my package manager saved me a number of times.<p>[1]: <a href="https://github.com/psy0rz/zfs_autobackup">https://github.com/psy0rz/zfs_autobackup</a>
[2]: <a href="https://zfsbootmenu.org/" rel="nofollow noreferrer">https://zfsbootmenu.org/</a></p>
]]></description><pubDate>Tue, 04 Jul 2023 19:52:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=36591770</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=36591770</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36591770</guid></item><item><title><![CDATA[New comment by DvdGiessen in "When root on ZFS breaks on Arch Linux"]]></title><description><![CDATA[
<p>A workaround that works locally (and only locally) is to build zfs-dkms (AUR) yourself and modify it so it doesn't break on these GPL-only symbols. While the licenses would forbid distributing it as such, you can do so on your own machine just fine.<p>And if your root is on ZFS, make a snapshot before updating! I set up a pacman hook[0] which runs zfs_autobackup[1] which automatically manages snapshots, so I can always easily roll back to a non-broken state. The ZFSBootMenu[2] bootloader makes that extremely fast without even needing a bootable USB-drive. :)<p>[0]: <a href="https://wiki.archlinux.org/title/Pacman#Hooks" rel="nofollow">https://wiki.archlinux.org/title/Pacman#Hooks</a>
[1]: <a href="https://github.com/psy0rz/zfs_autobackup">https://github.com/psy0rz/zfs_autobackup</a>
[2]: <a href="https://zfsbootmenu.org/" rel="nofollow">https://zfsbootmenu.org/</a></p>
]]></description><pubDate>Sun, 26 Mar 2023 13:38:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=35314322</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=35314322</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35314322</guid></item><item><title><![CDATA[New comment by DvdGiessen in "GNU poke: The extensible editor for structured binary data"]]></title><description><![CDATA[
<p>See also the recent talk the author gave at FOSDEM last month[1] for an introduction to the tool and its use cases.<p>[1]: <a href="https://fosdem.org/2023/schedule/event/bintools_poke/" rel="nofollow">https://fosdem.org/2023/schedule/event/bintools_poke/</a></p>
]]></description><pubDate>Wed, 01 Mar 2023 22:55:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=34989484</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=34989484</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=34989484</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Please Stop Using Grey Text"]]></title><description><![CDATA[
<p>Actually, you can use it on Android, but it does require using Firefox Nightly[1].<p>That does come with downsides such as Nightly being less stable and installing extensions requiring some extra setup, so it isn't the best choice for everyone. But I myself am using Stylus (which works perfectly fine) and some other not officially supported WebExtensions on mobile this way and can recommend it if you don't mind the downsides.<p>[1]: <a href="https://blog.mozilla.org/addons/2020/09/29/expanded-extension-support-in-firefox-for-android-nightly/" rel="nofollow">https://blog.mozilla.org/addons/2020/09/29/expanded-extensio...</a></p>
]]></description><pubDate>Wed, 18 May 2022 17:20:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=31425278</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=31425278</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=31425278</guid></item><item><title><![CDATA[The Challenges of Integrating the Unix and Mac OS Environments (2000)]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.usenix.org/legacy/publications/library/proceedings/usenix2000/invitedtalks/sanchez_html/sanchez.html">https://www.usenix.org/legacy/publications/library/proceedings/usenix2000/invitedtalks/sanchez_html/sanchez.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=26409156">https://news.ycombinator.com/item?id=26409156</a></p>
<p>Points: 82</p>
<p># Comments: 33</p>
]]></description><pubDate>Wed, 10 Mar 2021 08:37:28 +0000</pubDate><link>https://www.usenix.org/legacy/publications/library/proceedings/usenix2000/invitedtalks/sanchez_html/sanchez.html</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=26409156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26409156</guid></item><item><title><![CDATA[Compiling Word for Windows from OS/2 1.2 [video]]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.youtube.com/watch?v=UVpa5f21HXA">https://www.youtube.com/watch?v=UVpa5f21HXA</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=24972795">https://news.ycombinator.com/item?id=24972795</a></p>
<p>Points: 1</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 02 Nov 2020 20:25:38 +0000</pubDate><link>https://www.youtube.com/watch?v=UVpa5f21HXA</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=24972795</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=24972795</guid></item><item><title><![CDATA[Mozilla’s plan to fix internet privacy]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.protocol.com/mozilla-plan-fix-internet-privacy">https://www.protocol.com/mozilla-plan-fix-internet-privacy</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=22297728">https://news.ycombinator.com/item?id=22297728</a></p>
<p>Points: 377</p>
<p># Comments: 273</p>
]]></description><pubDate>Tue, 11 Feb 2020 11:45:39 +0000</pubDate><link>https://www.protocol.com/mozilla-plan-fix-internet-privacy</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=22297728</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=22297728</guid></item><item><title><![CDATA[New comment by DvdGiessen in "We are making Sandboxie a free tool, with plans to transition it to open source"]]></title><description><![CDATA[
<p>As a long time user of Sandboxie, I'm excited to see this announcement and am looking forward to the open source release and what the community might be able to do with it.<p>Sandboxie's technology works extremely well for securely isolating all kinds of interactive Windows GUI apps, and might thus be be an interesting alternative to Microsoft's own Windows Container technology which is more focussed on servers and can't really do GUI's.<p>I'd love to see some experiments using Sandboxie sandboxes as Docker-style images/containers. Packaging a complete GUI app including dependencies and making it easy to run on another Windows machine without polluting it, without noticeable overhead, neatly integrating like you'd expect of a Windows app with things like window management or the clipboard, and all that while being securely isolated from the rest of the machine.</p>
]]></description><pubDate>Sun, 10 Nov 2019 12:48:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=21497770</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=21497770</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=21497770</guid></item><item><title><![CDATA[npm-adblock]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.npmjs.com/package/npm-adblock">https://www.npmjs.com/package/npm-adblock</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=20808617">https://news.ycombinator.com/item?id=20808617</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 27 Aug 2019 11:57:51 +0000</pubDate><link>https://www.npmjs.com/package/npm-adblock</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=20808617</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20808617</guid></item><item><title><![CDATA[New comment by DvdGiessen in "Are We Living in a Computer Simulation? Let’s Not Find Out"]]></title><description><![CDATA[
<p>As it turns out, your post triggered this crappy AI's reply_with_obligatory_xkcd() subroutine.<p><a href="https://xkcd.com/876/" rel="nofollow">https://xkcd.com/876/</a></p>
]]></description><pubDate>Sun, 11 Aug 2019 21:00:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=20670471</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=20670471</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=20670471</guid></item><item><title><![CDATA[Microsoft Edge Uses a Secret Trick and Breaks Internet Explorer's Security]]></title><description><![CDATA[
<p>Article URL: <a href="https://blog.0patch.com/2019/04/microsoft-edge-uses-secret-trick-and.html">https://blog.0patch.com/2019/04/microsoft-edge-uses-secret-trick-and.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=19693210">https://news.ycombinator.com/item?id=19693210</a></p>
<p>Points: 2</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 18 Apr 2019 17:59:51 +0000</pubDate><link>https://blog.0patch.com/2019/04/microsoft-edge-uses-secret-trick-and.html</link><dc:creator>DvdGiessen</dc:creator><comments>https://news.ycombinator.com/item?id=19693210</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=19693210</guid></item></channel></rss>