gchristensen changed the topic of #nixos-chat to: NixOS but much less topical || https://logs.nix.samueldr.com/nixos-chat
__monty__ has quit [Quit: leaving]
abathur has quit [Quit: abathur]
abathur has joined #nixos-chat
supersandro2000 has quit [Disconnected by services]
supersandro2000 has joined #nixos-chat
rajivr has joined #nixos-chat
gchristensen has quit [Quit: WeeChat 2.7.1]
{^_^} has quit [Remote host closed the connection]
gchristensen has joined #nixos-chat
{^_^} has joined #nixos-chat
gchristensen has quit [Quit: WeeChat 2.9]
{^_^} has quit [Remote host closed the connection]
gchristensen has joined #nixos-chat
{^_^} has joined #nixos-chat
<samueldr> oooooh
<gchristensen> !
<samueldr> "and it is extensible through lua script"
<samueldr> extensibility at its core makes it a probably winner
<samueldr> hopefully extensibility means composability here
<nicolas[m]> colemickens: packaged in nixpkgs-wayland when? :p
<samueldr> ah, I misunderstood the news
<samueldr> taiwins is not a wlroots replacement
<samueldr> it's its own WM/compositor
<samueldr> which now uses its own backend
<samueldr> (which is built to be separate)
<samueldr> so that lua thing applies to the WM, not the backend AFAIUI
<samueldr> wouldn't it be nice to have a backend that is entirely meant to be composed with calls from external tools?
<samueldr> well, external could be just ffi bindings and such
<colemickens> nicolas: maybe after I sort out firefox again -_-
<mjlbach> I see EGLstreams on the roadmap
<mjlbach> (not that that means anything until implemented, but it's better than --my-next-gpu-wont-be-nvidia)
<mjlbach> Ok, I spoke too soon
<{^_^}> taiwins/taiwins#93 (by xeechou, 10 weeks ago, open): WIP:Eglstream
<samueldr> not that it really matters much, but it took some searching to find screenshots
<samueldr> time for your imagination to shine, peeps
<samueldr> imagine you have a laptop with a type-c connector, and you connect it to your main computer
<samueldr> what cool things would you like to be able to do?
<samueldr> (here let's assume the hardware allows communication as a usb device, which not all existing laptops will allow)
<samueldr> things already possible include: exporting a block device (but not if it's mounted)
<samueldr> networking, but that's boring
<lovesegfault> samueldr: it uses the other machine as a nix remote builder :P
<samueldr> lovesegfault: hmm... I would chalk that up to "networking, but that's boring" ;)
<lovesegfault> Well, the autoconfig part is the interesting one IMO
<samueldr> yeah, indeed
<samueldr> the same exact method might be usable though with an ethernet cable
<samueldr> (still interesting!)
<lovesegfault> another interesting use would be using the other system's GPU as an eGPU
<lovesegfault> using avahi to auto-discover local machines and set all of them up as remote builders would be _SICK_
<samueldr> I had someone else think of using the laptop as an external display
<samueldr> (different enough of gpu use, but close too)
<samueldr> I think the main issue here would be that it's not PCIe or anything, and would involve the kernel on the device (the laptop) to do work
<samueldr> but since displaylink display adapters are a thing, that's definitely a possible use case
<samueldr> with the proper software, synergy-like use could be done on the wire, without requiring networking
<samueldr> could even be done without the host (not the laptop) needing any involvement
<samueldr> make the laptop show as an absolute pointing device, when you move off the display of your laptop, start pointing on the host, since it's absolute, you control the coordinates, so you know when it's back on the laptop's side
<samueldr> those are all things the kernel already knows how to do as a guest usb device
<samueldr> there's also functionfs allowing userspace apps to do even more gadgets
<samueldr> oh... wireshark interceptor thing maybe?
<samueldr> >> intercepts USB traffic with a standalone Beaglebone Black, which is reconfigured to act as a USB gadget emulating the device connected to the 2nd USB port
<samueldr> so basically yes
<abathur> nixos-tapeworm
<samueldr> abathur: like nix-infect?
<abathur> but just for builders
<samueldr> ah
<abathur> but yes maybe nix-tapeworm
<samueldr> btw, I'm not really talking in theoretical terms, I have two laptops here (and several phones, and at least one tablet) where this can be done trivially
<samueldr> uh, maybe three laptops
<samueldr> but it's not via type-c, it would be via a dangerous-looking A-to-A USB cable (often referred to as illegal)
<samueldr> (only for that additional third)
<abathur> "Many UNIX systems do not allow the #! line to exceed about 30 characters in length, so be sure..."
<samueldr> ~ ⬤ readlink -f $(which bash) | wc -c
<samueldr> 78
<samueldr> yeha
<samueldr> using your laptop's audio/video !
<samueldr> what if plugging your laptop in your computer allowed its webcam to be usable
slack1256 has joined #nixos-chat
<samueldr> and same for its microphone, speakers or headphone socket
<samueldr> maybe even bluetooth audio associated to the laptop, audio coming from the other computer!
<samueldr> that would actually be a pretty killer feature from a phone
kalbasit__ has joined #nixos-chat
kalbasit___ has joined #nixos-chat
kalbasit__ has quit [Ping timeout: 240 seconds]
kalbasit___ has quit [Ping timeout: 240 seconds]
<lovesegfault> sometimes I wish `nix copy` would do stream compression with zstd
endformationage has quit [Quit: WeeChat 2.9]
<ashkitten> samueldr: is usb a-to-a not allowed?
<ashkitten> iirc vex robotics stuff used that
<samueldr> it's not not allowed
<samueldr> but it's "common knowledge" that it's illegal
<samueldr> (it is not)
<samueldr> at least as far as I'm aware
<ashkitten> ah
<ashkitten> i don't see why it would not be allowed
<samueldr> common knowledge dictates doing so will blow up your usb ports
<samueldr> I actually don't know
<ashkitten> as long as one side declares itself to be host and the other a guest i cant imagine it'd be a problem
<samueldr> AFAIUI that's part of the problem
<samueldr> the A receptacle has no way to signal that
<ashkitten> "common knowledge" sounds like the it crowd bit about typing google into google
<samueldr> I think it may be that USB 1 had no provision for that
<samueldr> or something like that
<ashkitten> maybe, but one device still knows it's a guest
<ashkitten> even if there's no negotiation of that
<samueldr> exactly
<samueldr> Pine A64-LTS as an example
<samueldr> (and I expect the pinebook A64 too)
<ashkitten> maybe you can't connect two computers that want to both be host, but a pc and a vex controller sure
<ashkitten> it's the same as usb a-to-b, but without the b
<samueldr> depends actually :)
<samueldr> "big" B yeah
<samueldr> micro and mini adds an additional pin
<samueldr> which serves to identify uses for OTG uses
<samueldr> but that's basically it, "common knowledge" is that's illegal per the spec
<samueldr> but no one can actually quote the spec :)
<samueldr> (I could be wrong, I can't quote the spec either)
<ashkitten> anyway, if i can plug a flash drive into a phone charger then i can plug two usb-a ports together :p
<samueldr> your flash drive (hopefully) doesn't have power it feeds to the other end!
<ashkitten> you don't know my flash drive >:(
<samueldr> good note in there
<samueldr> >> This type of A to A cable is not intended to connect two computers together or to connect a USB hub between two computers, especially because both computers would provide 5V to the power lines on the cables and this could result in both power supplies being connected together
<samueldr> the last bit about the two power supplies being connected together
<lovesegfault> gchristensen: remember our talk about a better writeShellScriptBin?
<lovesegfault> I started something like it today
<samueldr> I don't really know that kind of things, so I can't say
<lovesegfault> already caught some bugs in my scripts
<lovesegfault> I might try integrating it with resholve
slack1256 has quit [Remote host closed the connection]
<ashkitten> samueldr: ah, i see
<samueldr> for the A64, the usb port used is connected to the SoC's OTG port
<samueldr> and it's designed to be used that way
<ashkitten> generally i feel like if you're designing it to be a guest you might as well use usb-b anyway
<samueldr> oh, finally found info (need to source it more)
<samueldr> USB 3.0 also added A-to-A in the spec differently
<samueldr> where vbus is not connected
<samueldr> yeah
<samueldr> for the A64, it's not designed to be used as a guest, but rather it's to flash it in FEL mode (special programming mode)
<samueldr> so it's not at all what I had in mind
<ashkitten> huh
<samueldr> and only serves to blur the lines even more :)
<samueldr> yay usb!
<ashkitten> i wonder if linux supports this usb crossover cable
<samueldr> two unsourced "educational" resources say A-to-A does not exist to prevent illegal loopback
<ashkitten> like, could you use it to provide a network connection :p
<samueldr> ashkitten: IIRC one response above links to the driver
<samueldr> so, illegal loopback, it's about plugging a hub into itself
<samueldr> which actually makes way more sense than most common knowledge I had read beforehand
<samueldr> so AFAICT they "don't exist" to prevent bad usage
<samueldr> but are not "illegal" (per the spec)
<ashkitten> a usb-c hub could tell if it was plugged into itself though and not provide power right?
<lovesegfault> abathur: are you around?
<samueldr> ¯\_(ツ)_/¯
<samueldr> it can't even deal with a computer reliably charging a cellphone
<samueldr> it could be negotiating it the other way around
<samueldr> and that's by the spec
<ashkitten> love too charge my power brick because i plugged my phone in first or the cable is backwards
<samueldr> I guess it knows how to not fry itself
<samueldr> I think the spec kind of assume (but does not state) that a user interface allows controlling the charge direction
<samueldr> I don't remember the quoted part I've seen
<samueldr> but it's something along the line of "whichever makes the more sense to charge"
<samueldr> queue [manufacturer]: the [computer] is more important, therefore it must be charged
<samueldr> uh, cue*
<ashkitten> the [house] is more important, therefore
<samueldr> oh no
<samueldr> I redacted an unwarranted jab against a fruity computer company
<ashkitten> i'm just poking fun
<samueldr> yeah
<ashkitten> another aspect is that some (a surprising large amount of) cables can detect which way they were plugged in first
<ashkitten> because they contain microcontrollers in each end
<ashkitten> an optional part of the spec
<samueldr> e-mark
<ashkitten> i feel like i remember some attack based on hacking the e-mark chip in a cable
<ashkitten> iirc the interesting part was that it only affected one end of the cable, so whether the attack worked depended on how it was plugged in?
lunc has quit [Ping timeout: 272 seconds]
waleee-cl has quit [Quit: Connection closed for inactivity]
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 246 seconds]
tilpner_ is now known as tilpner
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 256 seconds]
tilpner_ is now known as tilpner
tilpner has quit [Remote host closed the connection]
tilpner has joined #nixos-chat
supersandro2000 has quit [Quit: The Lounge - https://thelounge.chat]
supersandro2000 has joined #nixos-chat
cole-h has quit [Ping timeout: 256 seconds]
<eyJhb> samueldr:! Whe wants Android apps stuff?
<eyJhb> Also, I did upstream all the small things I could to the gradle2nix project, however there is still some issues with dependencies not being found correctly.. :(
<Taneb> gchristensen: r13y.com is looking a bit divide-by-zero-y :(
<LinuxHackerman> He's already on it :)
<Taneb> Ah :)
<eyJhb> `0 out of 0 (NaN%) paths in the minimal installation image are reproducible!` :D Damn NixOS went downhill :p
pinage404[m] has quit [Quit: authenticating]
pinage404[m]1 has joined #nixos-chat
__monty__ has joined #nixos-chat
<pie_> eyJhb: no no thats an improvement, cant have nonreproducibility if you have no packages <D
<pie_> * >D
<pie_> * :D
<Taneb> >:D
cosimone has joined #nixos-chat
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 264 seconds]
tilpner_ is now known as tilpner
tilpner has quit [Ping timeout: 258 seconds]
tilpner has joined #nixos-chat
<elvishjerricco> Is there a decent way to convert an iso image to qcow2 other than just mount -o loop + rsync?
<LinuxHackerman> elvishjerricco: what kind of qcow2?
<elvishjerricco> LinuxHackerman: There are multiple kinds?
tilpner has quit [Remote host closed the connection]
tilpner has joined #nixos-chat
flokli has quit [Ping timeout: 240 seconds]
<LinuxHackerman> well, a qcow2 file is just a disk image. Doesn't imply anything about its contents, like the partitioning scheme (if any) or filesystem
<LinuxHackerman> you can make a qcow2 image of the iso using qemu-img convert, but I don't think that's what you want?
flokli has joined #nixos-chat
pinpox has quit [Quit: The Lounge - https://thelounge.chat]
<elvishjerricco> LinuxHackerman: Oh, I think I see. Is ISO just a file system type that is usually placed on raw image files with the .iso file extension? I had assumed iso was an image format and it just used FAT32 or something.
<elvishjerricco> or rather, FAT32 is what most things using ISO would use on said disk image
<LinuxHackerman> No, it's a raw image of an ISO9660 filesystem (which is also used for CDs)
<elvishjerricco> Yea, got it
<elvishjerricco> Cool
<LinuxHackerman> and somehow (though I don't know the details) that's compatible with containing partition tables as well
<elvishjerricco> Huh, alright
<elvishjerricco> I'm messing with booting a macos VM in linux, like https://github.com/NixOS/nixos-org-configurations/blob/master/macs/
<LinuxHackerman> but what do you want to achieve with the qcow2? ISO9660 filesystems are read-only, so that might not be very helpful.
<elvishjerricco> Can't seem to get the clover image to work right. I'm using the same code for copying it as gchristensen, but the resulting image has an empty file system in the second partition
lunc has joined #nixos-chat
AMG has quit [Changing host]
AMG has joined #nixos-chat
AMG has joined #nixos-chat
<LinuxHackerman> Where does the ISO image come in?
__monty__ has quit [Ping timeout: 260 seconds]
__monty__ has joined #nixos-chat
cosimone has quit [Quit: cosimone]
<lukegb> More modern disks will use UDF instead of ISO9660 I think
<LinuxHackerman> ISO9660 is what make-iso9660-image.nix generates though :D
bqv has quit [Quit: WeeChat 3.0]
lunc has quit [Ping timeout: 240 seconds]
bqv has joined #nixos-chat
BaughnLogBot has quit [Ping timeout: 260 seconds]
BaughnLogBot has joined #nixos-chat
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 265 seconds]
tilpner has joined #nixos-chat
AMG has quit [Quit: Quit]
tilpner_ has quit [Ping timeout: 260 seconds]
kalbasit___ has joined #nixos-chat
kalbasit___ has quit [Ping timeout: 265 seconds]
AMG has joined #nixos-chat
kalbasit___ has joined #nixos-chat
kalbasit___ has quit [Ping timeout: 272 seconds]
cosimone has joined #nixos-chat
<abathur> lovesegfault: what's up?
waleee-cl has joined #nixos-chat
endformationage has joined #nixos-chat
pinage404[m]1 has quit [Quit: authenticating]
pinage404[m]1 has joined #nixos-chat
pinage404[m]1 has quit [Client Quit]
pinage404[m]1 has joined #nixos-chat
kalbasit___ has joined #nixos-chat
kalbasit___ has quit [Quit: WeeChat 2.9]
<pie_> can someone _please_ sanity check me
<pie_> nixos-unstable is not advanced until hydra builds it successfully right
<pie_> so why is my checkout of it 1) not being filled from cache 2) failing to build
<pie_> ok hm i guess i can try a more direct thing
rajivr has quit [Quit: Connection closed for inactivity]
<LinuxHackerman> pie_: overlays?
mirage[m] has quit [Ping timeout: 244 seconds]
veleiro has quit [Ping timeout: 244 seconds]
etu has quit [Ping timeout: 244 seconds]
thefloweringash has quit [Ping timeout: 244 seconds]
etu has joined #nixos-chat
veleiro has joined #nixos-chat
NinjaTrappeur has joined #nixos-chat
mirage[m] has joined #nixos-chat
thefloweringash has joined #nixos-chat
<jtojnar> only subset of packages is blocking the channel
cole-h has joined #nixos-chat
pinpox has joined #nixos-chat
<pie_> LinuxHackerman: no overlays
<pie_> Ok, so this works: NIX_PATH=nixpkgs=channel:nixos-unstable NIXOS_CONFIG=/nix/store/qaysniabyfr439yhdwjrvx4jj759b7l5-nixpkgs-src/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix nix-build "<nixpkgs/nixos/default.nix>" -A config.system.build.isoImage -v
<pie_> so im not totally crazy
<pie_> (that path should also be nixpkgs)
<pie_> *unstable
<lovesegfault> abathur: so, I'm trying to make a better writeShellScriptBin: https://github.com/lovesegfault/nix-config/blob/master/nix/overlays/write-sane-shell-script-bin.nix
<lovesegfault> Wondering if you think resholve would be useful
<lovesegfault> s/useful/fitting/
cosimone has quit [Quit: cosimone]
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 246 seconds]
tilpner_ is now known as tilpner
<abathur> I was thinking about this a little the other day when graham pinged me; I think so (though it may be one of those walk-don't-run things for a bit as things it can't handle shake loose), but I'm not immediately sure if/how it can slot directly into writeTextFile
<abathur> I think you'd have to pass the text into resholve on stdin before handing it off to writeTextFile
<ashkitten> how do i get the size on disk of a closure again?
<lovesegfault> ashkitten: nix-du?
<lovesegfault> abathur: right
<abathur> lovesegfault: graham's resholve function (https://github.com/grahamc/nixos-config/blob/master/packages/overlay.nix#L31-L51) basically does that (resholve in nixpkgs has API changes from what graham uses though)
tilpner has quit [Remote host closed the connection]
tilpner_ has joined #nixos-chat
<lovesegfault> this reminds me, I wanted to add a flake.nix to resholve's repo
<abathur> I suspect there are a few ~missing resholve utility functions, but I'm trying to just let that be guided by real use-cases
<lovesegfault> huh, why is he using the oil shell here?
<abathur> so I just started with resholvePackage, since that's the one I've got immediate use-cases for
<abathur> he's been playing with using osh as sh
<ashkitten> rebuilding 700 packages wasn't enough, so now i have to rebuild 3500 packages due to a glibc change
tilpner_ is now known as tilpner
<abathur> lovesegfault: I've still got my head in the sand on flakes; open to a PR with a caveat: I test the nixpgks expressions in resholve's repo and then port updates--I'm OK with that process changing as long as it is getting less manual/involved
<abathur> but if it gets more manual I may be a stick in the mud
higebu_ has joined #nixos-chat
<lukegb> wow, these servers are so unsupported that in order to get windows drivers for the onboard nic I have to disable driver signature enforcement and patch the .inf
<lukegb> linux works fine though :)))
ornxka_ has joined #nixos-chat
ornxka has quit [*.net *.split]
higebu has quit [*.net *.split]
rmcgibbo[m] has quit [*.net *.split]
nicolas[m] has quit [*.net *.split]
dtz has quit [*.net *.split]
noneucat has quit [*.net *.split]
jtojnar has quit [*.net *.split]
worldofpeace has quit [*.net *.split]
JJJollyjim has quit [*.net *.split]
joepie91 has quit [*.net *.split]
higebu_ is now known as higebu
joepie91 has joined #nixos-chat
joepie91 is now known as Guest4239
nicolas[m] has joined #nixos-chat
jtojnar has joined #nixos-chat
evanjs has joined #nixos-chat
worldofpeace has joined #nixos-chat
rmcgibbo[m] has joined #nixos-chat
noneucat has joined #nixos-chat
dtz has joined #nixos-chat
<andi-> has anyone thought about a pass <> age dual-encryption system yet? I want to slowly migrate to age but don't want to throw away the ability to just go back in case I have to.
<andi-> Also multiple devices doesn't make this easier
<cole-h> Are you thinking of a single file that can hold both GPG and age encryption, or something like two separate directories (e.g. ~/.password-store and ~/.age-password-store), where modifications to either are synced to its counterpart?
<cole-h> Or maybe even ~/.password-store, but all *.gpg have a *.age counterpart that is synced
<andi-> The latter
<andi-> and have a pass / age wrapper that takes care of that for me
<cole-h> Definitely sounds like a nice idea.
<gchristensen> the other day my vault server was down and I was glad I hadn't migrated all my secrets to vault
<cole-h> hehe
<andi-> I also don't want the yubikey thing anymore. I have USB-A and USB-C devices I regulary use and adding yet another yubikey to those three on my keychain is not an option
<andi-> so I want TPM based things for now
<andi-> in addition to the GPG fallback that I have backed up on hardware tokens and recovery media
<cole-h> Could you say more? How do you mean "TPM based things"?
<andi-> I never want to see my secrets
<__monty__> Is age a pass replacement or just a replacement for the gpg "backend?"
<andi-> If I get a new device I add another key to the list of keys they should be encrypted for
<andi-> __monty__: neither
<andi-> __monty__: it just encrypts a file with keys (a few variants)
<__monty__> So you'd manually encrypt each secret?
<andi-> With a script
<__monty__> So reimplement pass but atop age, not gpg?
<andi-> yeah
<andi-> more like add age to pass
<andi-> while keeping gpg in there and a switch that tells it what to use for decryption
<__monty__> That's what I meant by backend : )
<__monty__> Cool idea.
<andi-> pass is too much bash for my taste to start hacking on that now
<andi-> and integrating with gpg is painfull.
<andi-> I'll wait another week.
<gchristensen> have less bash
<gchristensen> you can reimplement probably almost all the features of pass that you need in ~100lines
<samueldr> of bash?
<gchristensen> yea
<andi-> dash!
<andi-> osh
<samueldr> heirloom sh!
<andi-> brainfuck!
<cole-h> Sally sells cshell by the cshore
<gchristensen> really, though, pass has a LOT of features
<andi-> yeah
<gchristensen> you probably only use a very few of them
<andi-> and interacting with gpg is okay when I do it occasionally as a one-off but writing a "bulletproof" script around it...
<andi-> show, generate, edit, remove, rename, git *,
<cole-h> RiiR!
<andi-> cole-h: you got the job!
<gchristensen> I still need to review https://github.com/grahamc/pass-vault/pull/1 ...
<{^_^}> grahamc/pass-vault#1 (by bbigras, 2 weeks ago, open): WIP: port to Rust
<cole-h> andi-: 👀
<bbigras> yeah. review my horrible code
<andi-> given that this is security sensitive I should try a new language and write it in swift.
<bbigras> would it help if I switched to the web/rest api?
<andi-> all the nice things I can learn
<cole-h> andi-: Only acceptable if all your variables are emojis.
<samueldr> andi-: blink twice if apple is holding you hostage
<andi-> hrhr
<andi-> They are not holding me hostage, samueldr :D
<andi-> cole-h: can do that! There is a swift program for that I am sure
<samueldr> sounds suspiciously like someone being coerced
<bbigras> do you need to buy a mac to use swift? /s
<andi-> samueldr: I am more thinking about per-device ecnryption again
<andi-> It is open source!
<andi-> > swift
<{^_^}> "<derivation /nix/store/npm1nzpgkb94bdx7yl4is2qriv3r0njn-swift-5.1.1.drv>"
<andi-> see!
<samueldr> AFAIUI nothing GUI is available outside the fruity ecosystem
<bbigras> I know. I'm just still pissed that you need a mac for IOS development. it's ridiculous.
<andi-> Yeah it is
<bbigras> oh like dotnet? crappy open core
<andi-> and the whole licensing of their OS only for Mac hardware while many people have to develop/maintain shit for it
<samueldr> I had a friend of mine do some swift... after he showed me some of the things and how it worked I'm not sure I'd like it... but still, I haven't personally given it a chance
<andi-> on a more serious note I think I'd want to write it in a way that supports all the OSs out there (as a library/cli)
<samueldr> andi-: ah, so ruby?
<andi-> Did someone see samuel? Haven't heard from him in a while.
<bbigras> Didn't he left the other day?
<andi-> I think so.
<bbigras> He turned his back on us!
<andi-> Who knows if that is still around when I am done.
<samueldr> andi-: though really, if it's going to be a library, I guess that leaves C-like ABIs?
<andi-> I guess so
<samueldr> maybe you'd be interested in looking at https://github.com/zetzit/zz
<andi-> I mean it is unlikely to be started or even become something like pass...
<samueldr> though it does lose a lot of its advantages if you want malloc/free
<andi-> sorry when I said all the plaforms: Anything that runs POSIX-style systems and has an MMU
<samueldr> haha, but it should still be usable and produce C-compatible code in the end
<samueldr> AFAIUI
<andi-> Given that my goal is to use age I might consider writing it in Go.. That kills the whole C-ABI tho..
<andi-> Why is software so hard? Why is it still call *soft*ware?
<samueldr> yeah, it is relatively annoying how really if you don't want to tie your thing to an ecosystem, you have to dumb it down to C
<andi-> and I don't mind writing C or C++ and exposing a C API
<andi-> I guess that is it.
<samueldr> I wonder if there are other languages that, like ZZ, compiles down to C, but give more useful constructs
<andi-> Just gotta make sure to streamline the fork()'ing so I can do that between all the function calls..
<samueldr> well, it's sure there are
<samueldr> but are there good ones?
<andi-> there was zig recently
<andi-> does that qualify?
<samueldr> if it produces C ABI yeah
<samueldr> ideally it'd allow replacing only one file of your codebase from C to Zig
<samueldr> (and continue from there)
* samueldr looks at zig more
<samueldr> I think the latter is harder to come by
<samueldr> >> Export functions, variables, and types for C code to depend on
<samueldr> and since it can compile C code too
<samueldr> maybe?
<andi-> I'll give that a shot
<andi-> It is actually sad that I prefer C over bash
<andi-> Is there a proper alternative OpenPGP implementation to GnuPG?
<gchristensen> sq I guess
<andi-> sq?
<genevino> 23:08:31 [andi-] It is actually sad that I prefer C over bash
<genevino> andi-: yes it is.
<genevino> i love bash, even though i'm fully aware it's an insanely broken language.
* colemickens has a hard time adopting new anything written in C
<andi-> Wow, I've been there. I've gone back to very simple <200 lines C programs to solve problems vs 1k lines of rust type massage and evenings lost of energy.
<andi-> Maybe my problems are too trivial..
<andi-> but hard problems shouldn't be solved in *soft*ware
<samueldr> andi-: mail server in discrete silicon logic when?
<andi-> samueldr: probably already exists
<andi-> also mail is simple, just don't think about spam
<samueldr> also [problem] is simple, just don't think about [actual issue] ;)
<andi-> also: new Glibc release 2.33 with support to load hardware/microarchitecture specific code
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 256 seconds]
tilpner_ is now known as tilpner
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 256 seconds]
tilpner_ is now known as tilpner
<lovesegfault> PSA: I'm working on bumping glibc
<ashkitten> lovesegfault: hopefully that work gets combined with the potential glibc changes for #100655
<{^_^}> https://github.com/NixOS/nixpkgs/issues/100655 (by nyanloutre, 15 weeks ago, open): steam: Proton 5.13 does not launch because of steam runtime
tilpner_ has joined #nixos-chat
tilpner has quit [Ping timeout: 256 seconds]
tilpner_ is now known as tilpner
<__monty__> andi-: Maybe a gpg wrapper which dispatches to gpg and translates for age? Then you can use pass without alteration. Just have to cover all of the gpg CLI/API pass uses.
<andi-> ashkitten: oh stream is broken? Time to postpone all updates until that is fixed :D
<ashkitten> andi-: no need to be rude. it's a mass rebuild and i was hoping the timing would line up so they're both in the same staging batch
<ashkitten> i figured that lovesegfault should know that there is concurrent work that involves glibc if they are updating it
<lovesegfault> ashkitten: what's the proposed glibc change in that thread? There's a bunch of comments and I'm trying to bump binutils now so my mind is scattered
<ashkitten> the steamrt-v2 branch linked has it
<andi-> ashkitten: not trying to be rude. Just saying that I wont update my system if that would break steam ;-)
<ashkitten> it's not been feedbacked if that change will actually be what gets accepted
<ashkitten> andi-: oh, i thought you were being sarcastic about something else
<andi-> nah
<andi-> Sometimes I am serious in here
<andi-> I also like to play games ;-)
<ashkitten> steam is not broken, btw. only proton 5.13 does not work, because it uses a new type of steam runtime
<lovesegfault> ashkitten: I see that users' patches. I will cherry-pick their commits onto a branch once I have the base update going
<lovesegfault> right now I am in gcc hell
<andi-> ok, as long as Dota2 works I am good.
<ashkitten> andi-: if something worked before, it should still work. if there is a regression then i don't know about it.
<andi-> It worked yesterday
<andi-> So I am confident it still work
<andi-> s
<__monty__> I steam finally switching to 64bit?
<ashkitten> lovesegfault: good luck. i'm building the glibc changes locally to test, hopefully the other testers will have feedback soon
<lovesegfault> ashkitten: there's an issue right now, your build won't get past gcc10
<ashkitten> __monty__: no, the steam runtime is switching to a bwrap method instead of LD_LIBRARY_PATH
<lovesegfault> if you'd like to pair on this, we can do it in #nixos?
<ashkitten> yes, we should move there
<gchristensen> thanks
<ashkitten> gchristensen: :)
__monty__ has quit [Quit: leaving]