Intel Recently Shelved Numerous Open-Source Projects
After discovering this morning that Intel archived/discontinued its On Demand âSDSiâ GitHub project around that controversial feature, it was a slippery slope in noticing Intel recently archived around two dozen other open-source projects they previously maintained⊠â Read more
Claude Code is the Inflection Point
About 4% of all public commits on GitHub are now being authored by Anthropicâs Claude Code, a terminal-native AI coding agent that has quickly become the centerpiece of a broader argument that software engineering is being fundamentally reshaped by AI.
SemiAnalysis, a semiconductor and AI research firm, published a report on Friday projecting that figure will climb past 20% by the end of 2026. Cl ⊠â Read more
Trying an experiment. Created a Github repo for mu over at https://github.com/prologic/mu as a social experiment to see if we can maintain a tailored Github docs-only repo of a project, see if it gets any interest đ€
Developer Rescues Stadia Bluetooth Tool That Google Killed
This week, Google finally shut down the official Stadia Bluetooth conversion tool⊠but thereâs no need to panic! Developer Christopher Klay preserved a copy on his personal GitHub and is hosting a fully working version of the tool on a dedicated website to make it even easier to find. The Vergeâs Sean Hollister reports: I havenât tried Klayâs mirror, as bo ⊠â Read more
@bender@twtxt.net gemini-cli, something something https://github.com/google-gemini/gemini-cli/issues/16723
https://github.com/unix-v4-commentary/unix-v4-source-commentary
A comprehensive, line-by-line commentary on the UNIX Fourth Edition source code (released November 1973; tape recovered from June 1974 distribution).
./bin/mu -B -o ... -p muos/amd64 ... target.
@prologic@twtxt.net Iâd love to take a look at the code. đ
Iâm kind of curious to know how much Assembly I need vs. How much of a microkernel can I build purely in Mu (”)? đ€
Canât really answer that, because I only made a working kernel for 16-bit real mode yet. That is 99% C, though, only syscall entry points are Assembly. (The OpenWatcom compiler provides C wrappers for triggering software interrupts, which makes things easier.)
But in long mode? No idea yet. đ At least changing the page tables will require a tiny little bit of Assembly.
Took me nearly all week (in my spare time), but Mu (”) finally officially support linux/amd64 đ„ł I completely refactored the native code backend and borrowed a lot of the structure from another project called wazero (the zero dependency Go WASM runtime/compiler). This is amazing stuff because now Mu (”) runs in more places natively, as well as running everywhere Go runs via the bytecode VM interpreter đ€
tcell.Key constants and typing different key combinations in the terminal to see the generated tcell.EventKeys in the debug log. Until I pressed Ctrl+Alt+Backspace⊠:-D Yep, suddenly there went my XâŠ
And tcell seems to support my urxvt in general: https://github.com/gdamore/tcell/blob/v2/terminfo/r/rxvt/term.go#L144
Iâm trying to implement configurable key bindings in tt. Boy, is parsing the key names into tcell.EventKeys a horrible thing. This type consists of three information:
- maybe a predefined compound key sequence, like Ctrl+A
- maybe some modifiers, such as Shift, Ctrl, etc.
- maybe a rune if neither modifiers are present nor a predefined compound key exists
Itâs hardcoded usage results in code like this:
func (t *TreeView[T]) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
return t.WrapInputHandler(func(event *tcell.EventKey, setFocus func(p tview.Primitive)) {
switch event.Key() {
case tcell.KeyUp:
t.moveUp()
case tcell.KeyDown:
t.moveDown()
case tcell.KeyHome:
t.moveTop()
case tcell.KeyEnd:
t.moveBottom()
case tcell.KeyCtrlE:
t.moveScrollOffsetDown()
case tcell.KeyCtrlY:
t.moveScrollOffsetUp()
case tcell.KeyTab, tcell.KeyBacktab:
if t.finished != nil {
t.finished(event.Key())
}
case tcell.KeyRune:
if event.Modifiers() == tcell.ModNone {
switch event.Rune() {
case 'k':
t.moveUp()
case 'j':
t.moveDown()
case 'g':
t.moveTop()
case 'G':
t.moveBottom()
}
}
}
})
}
This data structure is just awful to handle and especially initialize in my opinion. Some compound tcell.Keys are mapped to human-readable names in tcell.KeyNames. However, these names always use - to join modifiers, e.g. resulting in Ctrl-A, whereas tcell.EventKey.Name() produces +-delimited strings, e.g. Ctrl+A. Gnaarf, why this asymmetry!? O_o
I just checked k9s and theyâre extending tcell.KeyNames with their own tcell.Key definitions like crazy: https://github.com/derailed/k9s/blob/master/internal/ui/key.go Then, they convert an original tcell.EventKey to tcell.Key: https://github.com/derailed/k9s/blob/b53f3091ca2d9ab963913b0d5e59376aea3f3e51/internal/ui/app.go#L287 This must be used when actually handling keyboard input: https://github.com/derailed/k9s/blob/e55083ba271eed6fc4014674890f70c5ed6c70e0/internal/ui/tree.go#L101
This seems to be much nicer to use. However, I fear this will break eventually. And itâs more fragile in general, because itâs rather easy to forget the conversion or one can get confused whether a certain key at hand is now an original tcell.Key coming from the library or an âextendedâ one.
I will see if I can find some other programs that provide configurable tcell key bindings.
@movq@www.uninformativ.de Sorry, I meant the builtin module:
$ python3 -m pep8 file.py
/usr/lib/python3/dist-packages/pep8.py:2123: UserWarning:
pep8 has been renamed to pycodestyle (GitHub issue #466)
Use of the pep8 tool will be removed in a future release.
Please install and use `pycodestyle` instead.
$ pip install pycodestyle
$ pycodestyle ...
I canât seem to remember the name pycodestyle for the life of me. Maybe thatâs why I almost never use it.
Gentoo Linux Plans Migration from GitHub Over âAttempts to Force Copilot Usage for Our Repositoriesâ
Gentoo Linux posted its 2025 project retrospective this week. Some interesting details:
Mostly because of the continuous attempts to force Copilot usage for our repositories, Gentoo currently considers and plans the migration of our repository mirrors and pull request contrib ⊠â Read more
@lyse@lyse.isobeef.org Itâs not super comfortable, thatâs right.
But these mouse events come with a caveat anyway:
ncurses uses the XM terminfo entry to enable mouse events, but it looks like this entry does not enable motion events for most terminal emulators. Reporting motion events is supported by, say, XTerm, xiate, st, or urxvt, it just isnât activated by XM. This makes all this dragging stuff useless.
For the moment, I edited the terminfo entry for my terminal to include motion events. That canât be a proper solution. Iâm not sure yet if Iâm supposed to send the appropriate sequence manually âŠ
And the terminfo entries for tmux or screen donât include XM at all. tmux itself supports the mouse, but Iâm not sure yet how to make it pass on the events to the programs running inside of it (maybe thatâs just not supported).
To make things worse, on the Linux VT (outside of X11 or Wayland), the whole thing works differently: You have to use good old gpm to get mouse events (gpm has been around forever, I already used this on SuSE Linux). ncurses does support this, but this is a build flag and Arch Linux doesnât set this flag. So, at the moment, Iâm running a custom build of ncurses as a quick hack. đ And this doesnât report motion events either! Just clicks. (I donât know if gpm itself can report motion events, I never used the library directly.)
tl;dr: The whole thing will probably be âkeyboard firstâ and then the mouse stuff is a gimmick on top. As much as Iâd like to, this isnât going to be like TUI applications on DOS. Iâll use âWindowsâ for popups or a multi-window view (with the âWindowManagerâ being a tiny little tiling WM).
Acer Laptop Battery Control Driver Looks Toward The Upstream Linux Kernel
For those with Acer laptops running Linux on GitHub there has been an out-of-tree driver providing an experimental âacer-wmi-batteryâ kernel module to allow controlling battery-related features. Now a cleaned-up version of that driver is working on getting into the mainline Linux kernel⊠â Read more
# $YakumoLabs$
# yarnd service file for https://github.com/davmac314/dinit
type = process
command = /usr/pkg/bin/yarnd -b 127.0.0.1:6446
env-file = /usr/pkg/etc/yarnd.conf
working-dir = /var/db/yarnd
restart = on-failure
httpd now sends the Last-Modified with UTC instead of GMT. Current example:
@lyse@lyse.isobeef.org Itâs already fixed:
https://github.com/openbsd/src/commit/668f1f05e71c5e979d278f1ad4568956226715ea
Question is when that fix will land. đ
On my way to having windows and mouse support:
https://movq.de/v/95bbbbd3e8/basic-windows.mp4
It would be cool to have something like Turbo Vision eventually.
(I considered just using Turbo Vision, but itâs a C++ library and thatâs not quite what Iâm looking for. But itâs not yet completely off the table.)
Well, you girls and guys are making cool things, and I have some progress to show as well. đ
https://movq.de/v/c0408a80b1/movwin.mp4
Scrolling widgets appears to work now. This is (mostly) Unicode-aware: Note how emojis like âđ â are double-width âcharactersâ and the widget system knows this. It doesnât try to place a âđ â in a location where thereâs only one cell available.
Same goes for that weird âĂ€â thingie, which is actually âaâ followed by U+0308 (a combining diacritic). Python itself thinks of this as two âcharactersâ, but they only occupy one cell on the screen. (Assuming your terminal supports this âŠ)
This library does the heavy Unicode lifting: https://github.com/jquast/wcwidth (Take a look at its implementation to learn how horrible Unicode and human languages are.)
The program itself looks like this, itâs a proper widget hierarchy:
https://movq.de/v/1d155106e2/s.png
(There is no input handling yet, hence some things are hardwired for the moment.)
$HOME is not specified it tries to resolve the user's home directory by user.Current().HomeDir. Maybe that's overkill, I have to check the XDG spec.
Ok, the standard library implementation is wonky at best, at least in regards to XDG, because it really doesnât implement it properly. https://github.com/golang/go/issues/62382 I stick to my own code then. It doesnât properly support anything else than Linux or Unixes that use XDG, but personally, I donât care about them anyway. And the cross-platform situation is a giant mess. Unsurprisingly.
FFmpeg Developer Files DMCA Against Rockchip After Two-Year Wait for License Fix
GitHub has disabled Rockchipâs Media Process Platform repository after an FFmpeg developer filed a DMCA takedown notice, nearly two years after the open-source project first publicly accused the Chinese chipmaker of license violations. The notice, filed December 18, claims Rockchip copied thousands of lines of code fr ⊠â Read more
Gemini AI Yielding Sloppy Code For Ubuntu Development With New Helper Script
A few weeks ago it was mentioned by a Canonical engineer how trying to use AI to modernize the Ubuntu Error Tracker yielded some code that was âplain wrongâ and other issues raised by that Microsoft GitHub Copilot code. The same Ubuntu developer shifted to trying Gemini AI to generate a helper script to assist in Ubuntuâs monthly ISO snapshot releases. Googleâs Gemini AI also generated some sloppy code for a Python script to assist in tho ⊠â Read more
GitHub Is Going To Start Charging You For Using Your Own Hardware
GitHub will begin charging $0.002 per minute for self-hosted Actions runners used on private repositories starting in March. âAt the same time, GitHub noted in a Tuesday blog post that itâs lowering the prices of GitHub-hosted runners beginning January 1, under a scheme it calls âsimpler pricing and a better experience for GitHub Actions,ââ ⊠â Read more
If your very popular project with lots of stars on GitHub is over 10 years old, and youâre still at a pre-1.0 version because youâre using SemVer and a 1.0 would mean making some kind of commitment and thatâs somehow not desirable for you, then I think youâre doing something wrong. đ€
Intel Quietly Discontinues Its Open-Source User-Space Gaudi Driver Code
Intel has quietly stopped maintaining its open-source user-space driver stack for Gaudi accelerators. Phoronix reports: It turns out earlier this year Intel archived the SynapseAI Core open-source code and is no longer maintained by Intel. The open-source Synapse AI Core GitHub repository was archived in February and README updated ⊠â Read more
Got a nice conspiracy theory for you:
https://mastodon.social/@mcc/115670290552252848
Actually wait I just thought about this and realized that the precise timing of the ACTUAL GitHub seed bank, by which I mean the Arctic Code Vault, on 2020-02-02, makes it more or less a perfect snapshot of pre-Copilot GitHub. Also precisely timed before we all got brain damage from COVID. This is the only remaining archive of source code by people with a fully working sense of smell
(Bonus points because the Arctic World Archive is located in Svaldbard and thatâs the name of the AI in Stacey Kadeâs âCold Eternityâ.)
H⊠Ho⊠How have I not heard about vim-tagbar before? đł
Oracles Releases Updated âbpftuneâ For BPF-Based Auto-Tuning Of Linux Systems
The past few years Oracle has been working on bpftune as a solution for BPF-based, automatic tuning of Linux systems. Bpftune has been available via Oracle Linux and GitHub while finally their open-source GitHub code has seen the first new tagged release in a while⊠â Read more
@shinyoukai@neko.laidback.moe is that https://github.com/owncloud/ocis (Go based, instead of PHP đ€ź)?
How Home Assistant Leads a âLocal-First Rebellionâ
It runs locally, a free/open source home automation platform connecting all your devices together, regardless of brand. And GitHubâs senior developer calls it âone of the most active, culturally important, and technically demanding open source ecosystems on the planet,â with tens of thousands of contributors and millions of installations.
Thatâs confirmed by this yearâs âOct ⊠â Read more
Using AI To Modernize The Ubuntu Error Tracker Produced Some Code That Was âPlain Wrongâ
A week ago I wrote about AI being used to help modernize Ubuntuâs Error Tracker. Microsoft GitHub Copilot was tasked to help adapt its Cassandra database usage to modern standards. Itâs worked in some areas but even for a rather straight forward task, some of the generated functions ended up being âplain wrongâ according to the developer involved⊠â Read more
Zig Quits GitHub, Says Microsoftâs AI Obsession Has Ruined the Service
The Zig Software Foundation has quit GitHub after years of unresolved GitHub Actions bugs â including a âsafe_sleepâ script that could spin forever and cripple CI runners. Zig leadership puts the blame on Microsoftâs growing AI-first priorities and declining engineering quality. Other open-source developers are voicing similar frustrations. ⊠â Read more
@aelaraji@aelaraji.com I think Iâll just end up using the Official CrowdSec Go library đ€
@prologic@twtxt.net if done right, zs derivatives can even generate twtxt feeds alongside RSS for blogs as well
Microsoft and GitHub Preview New Tool That Identifies, Prioritizes, and Fixes Vulnerabilities With AI
âSecurity, development, and AI now move as one,â says Microsoftâs director of cloud/AI security
product marketing.
Microsoft and GitHub âhave launched a native integration between Microsoft Defender for Cloud and GitHub Advanced Security that aims to address what one e ⊠â Read more
When I rewrite my entire GitHub profile README â Read more
The afternoon didnât start better: we got a talk about the EUDI, with the implied idea that an âEuropean IDâ is automatically an example of digital sovereignty, when in fact what is being implemented isnât.
I could go further into it, but instead Iâll leave here a link to the comment I was impelled to write on the EUDI project after the presentation:
The #EUDI panel was followed by Caroline Stage Olsen, Minister for Digital Affairs of Denmark. The tldr; of her keynote - which had two points of note: 1) âI support AI gigafactoriesâ (because all that is shiny and new is something we should invest in), and âinnovation is sovereigntyâ which is her way of saying that she wants to use the sovereignty topic not to talk about sovereignty but as an excuse to promote âinnovationâ - in that ideology brand that supports the idea that in order to innovate more we need to simplify and de-regulateâŠ
github-actions.vim â Read more
AirPods libreated from Appleâs ecosystem
Article URL: https://github.com/kavishdevar/librepods
Comments URL: https://news.ycombinator.com/item?id=45941596
Points: 507
# Comments: 120 â Read more
@movq@www.uninformativ.de unison seems pretty fast for me, and quite nice looking on my macOS desktop. Itâs bsed on GLFW, but it seems to work quite well đ€
Show HN: Ory Kratos - Cloud native Auth0 open-source alternative (self-hosted)
Comments â Read more
Homebrew no longer allows bypassing Gatekeeper for unsigned/unnotarized software
Comments â Read more
Just found that if you append .atom to a github releases project page, you got the feed \o/
Show HN: Linnix â eBPF observability that predicts failures before they happen
Comments â Read more