Kenji
I don't like the original registry.
So I think something like gnome's implementation is OK for Linux.(Central configuration manager is good for management. I think we can use the text file to save.)
Chungy
dconf is decent, mainly because the system doesn't depend on it for anything critical.
Chungy
Corrupted or missing dconf means things revert to defaults.
Chungy
Chungy
https://github.com/toml-lang/toml
Chungy
INI except with a spec
Kenji
I have used TOML.
I think JSON is better.
Kenji
But the parser of JSON has a big binary size. (About 100 KiB growth.)
Chungy
Depends on use case. Human readable/writable config: TOML is massively better than JSON
Kenji
I choose the jsmn. But it's trivial to use.
Chungy
Data interchange: JSON
Kenji
Chungy
I don't know what one you're using. Shouldn't be large though
Kenji
Chungy
Python is slow and harder to use
Kenji
Chungy
It isn't. Shell scripts are almost always faster than python.
Kenji
Because something like sed, can use it directly in the current process.
Kenji
I think we should reduce the creation of sub process
Chungy
In general all this talk of "object scripting" and registries is the antithesis of Unix. Good thing you're in a channel about NT though.
Kenji
I don't think always follow the thesis of Unix is good.
Kenji
Sometimes we should reduce the complexity.
Kenji
,in the global view.
Kenji
For example, sys v init is simple in the microcosmic. But complex in the global view.
Kenji
I am sorry about the bad English.
I should say the macroscopic.
Chungy
Perhaps. And a big reason systemd was made. (A huge win for any admin, it drastically simplified everything)
Kenji
I think the KISS thesis is good.
But I don't think make it complex in macroscopic because we need to make the microcosmic simple is good.
Kenji
I think things should be simple in both microcosmic and macroscopic.
Kenji
And I want to say my motto is "Writing the most compact implementations by using the least syntaxes and third-party libraries.".
Kenji
It's important for us to make a good trade-off. So I don't think all things from Unix are good.
Kenji
I don't think RMS is good at making trade-off because of the GNU Hurd.(When will the GNU Hurd stable release to public?)
BieHDC
rosbridge
<hbelusca> https://stackoverflow.com/questions/1616289/why-does-the-windows-registry-exist
rosbridge
<hbelusca> "Why does the Windows registry exist?"
rosbridge
<hbelusca> https://devblogs.microsoft.com/oldnewthing/20071126-00/?p=24383https://devblogs.microsoft.com/oldnewthing/20071126-00/?p=24383
rosbridge
<hbelusca> http://www.virtualdub.org/blog/pivot/entry.php?id=312
Stas'M
Indeed
Tobiyo
the unix thesis enables rapid development while the microsoft way enabled good legacy support
Tobiyo
the entire reason linux doesn't have "stable" kernel ABI and followed the unix way is because it enabled rapid development which facilitated its spread in the open source world nothing more and nothing less
Chungy
Linux's module ABI isn't related to "the unix way", it's just dev convenience :P
Chungy
Solaris was/is opposite, with strict driver backwards compatibility that would even make Windows jealous
Tobiyo
that's why i separated the two :p
Chungy
MS seems to upset and break all compatibility in the Windows kernel every 10 years. Solaris never did.
rosbridge
<hbelusca> > [...] because it enabled rapid development which facilitated its spread in the open source world nothing more and nothing less (edited)
@Telegram bridge <-- like a virus
Tobiyo
solaris has better backwards compatibility that windows? welp why aren't we all using solaris badum tss
Tobiyo
yeah like a virus, a virus that shouldn't taken windows down long ago :p
Chungy
Windows mostly hasn't broken userland compatibility (neither has Linux, nor Solaris in any of these examples), with the exception of WoW32 going away in 64-bit versions. Talking purely about drivers
Chungy
You can't use the same Linux kernel module on a new release and they're only ~3 months apart. You can use Solaris drivers from the 1990s (you can even load 32-bit ones on 64-bit installs) and it still works fine
Tobiyo
ohw yeah the whole "we don't break userland" thing
Chungy
Windows incremented the major version number every time driver compatibility was broken. 4.0, 5.0 (2000), 6.0 (Vista). Windows 10 is the exception, but it lies to apps and tells them it's NT 6.3 if they don't explicitly have W10 compatibility declared in their manifest.
rosbridge
<hbelusca> > every time driver compatibility was broken
Tobiyo
oh my
rosbridge
<hbelusca> when the kernel gets changes, basically yeah.
Tobiyo
so ms did break drivers twas just once every 10 years hmhm
Chungy
It became annoying once when I had a crash report for an app, without the manifest updated... supposedly a crash when running on Windows 8.1 (NT 6.3), couldn't reproduce. Took a couple days to find out it was actually Windows 10 and lying about its own version, was able to reproduce
Tobiyo
dang :/
Chungy
honestly I don't even think Windows's userland backwards compatibility is as good as it's sometimes cracked up to be. I've experienced breaks in both 8.x and 10, but oh well :P
rosbridge
<hbelusca> just make your crash reporter program report the actual windows version 🐸
Tobiyo
lol
Tobiyo
down with windows!
rosbridge
<hbelusca> does it fake version strings even if you read the registry for the actual product name?
Chungy
MS's rationale is basically "It's still compatible with all drivers from Vista through 8.1, despite being versioned 10.0, let driver installers see 6.x to know it's ok"
Chungy
rosbridge
<hbelusca> so the data read from HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion
rosbridge
<hbelusca> is also faked? wow
Chungy
probably through the same mechanism that Compatibility Mode does it to make it look like 95/98/XP/whatever xD
mov
rosbridge
<hbelusca> change of subject: example of what data telemetry does in MS product & why: https://github.com/microsoft/terminal/commit/deef9f3cdc915cbc13724b708e1e94b9a4074198
Mark
Mark
Mark
BieHDC
just import a random regkey and you see
Stas'M
Anonymous
😂