jcrben has quit [Quit: Ping timeout (120 seconds)]
jcrben has joined #nixos-chat
Taneb has quit [Quit: I seem to have stopped.]
Taneb has joined #nixos-chat
<elvishjerricco>
If I have Windows in a virtualbox machine, is it better to store the hard disk in a vdi file or a ZFS zvol?
<drakonis>
why not kvm?
<elvishjerricco>
Drakonis: I thought kvm was just something for the actual virtualization task, not anything to do with storage
<drakonis>
it is for virtualization, sure
<drakonis>
i find it to have better support for most solutions
<elvishjerricco>
Apparently I don't know what kvm is :P
<samueldr>
probably thinking about qemu with kvm support, kvm being the virutalization infra from the kernel
<drakonis>
yeah
<drakonis>
it is qemu with kvm support
<samueldr>
which isn't a helpful anwer for a question about virtualbox :)
<drakonis>
but it has better support for these situations than virtualbox
<drakonis>
i don't know if you can actually point virtualbox to a volume
<samueldr>
virtualbox will happily write to a device or a file, (and storage devices mostly acts like files in that case)
<drakonis>
its not a good answer
<samueldr>
though I have no experience with the question asked :/
<drakonis>
the one i gave that is
<drakonis>
i dream of doing that to my windows install and just run linux on its own
lassulus_ has joined #nixos-chat
pie_ has quit [Ping timeout: 268 seconds]
<jasongrossman>
I switched from MacOS to Linux for my main machine a year or so ago, and I keep meaning to make myself a MacOS VM, because there are some things that MacOS does much better ... but then I force myself to be good and keep it simple.
<jasongrossman>
Also, last time I tried it, the MacOS VM ran surprisingly slowly.
<ivan>
I've got a macOS VM with a passthrough NVIDIA GPU and it runs alright
lassulus has quit [Ping timeout: 268 seconds]
lassulus_ is now known as lassulus
<jasongrossman>
ivan: Good point. When I think about doing this properly, I think about investigating pass-through.
<jasongrossman>
ivan: I'd want it for disks as well, if that's possible.
<jasongrossman>
(Although actually I'm not going to do it.)
<ivan>
you can attach a whole disk to a qemu VM but you can't pass through something that isn't a PCI device in some hopefully-otherwise-empty IOMMU group
<ivan>
qemu's normal storage thing does a lot more IOPS than HDDs but the transfer speed is unfortunately HDD-like
<ivan>
you can patch your kernel with the ACS override patch to get more IOMMU groups than you really have, heh
<colemickens>
I just dont' get [major cloud provider] and why they act so damn surprised when I tell them their tooling doesn't work in automated scenarios.
<colemickens>
And the reaction is "gee, why would that be automated" and I just don't even know how to react.
Synthetica has quit [Quit: Connection closed for inactivity]
<elvishjerricco>
I made a dumb. I did `nix copy --all --from $A --to $B`. Then I backed up the `/nix/var` from $A elsewhere. I would now like to restore $A to its exact original form back on some other drive. How can I get back only the paths that were originally in $A (and none of the ones that were only in $B), and restore that /nix/var exactly?
<elvishjerricco>
Or, I guess more accurately, I wiped the drive $A was on and would like to restore the /nix to exactly how it was before the wipe
<infinisil>
elvishjerricco: Why back up /nix though?
<elvishjerricco>
infinisil: There's more than just the system configuration I'd like to keep
<infinisil>
Hmm I guess if you have things that take a while to build that would be annoying to lose
<elvishjerricco>
Yep
<elvishjerricco>
Like multiple cross compiling GHCs
<elvishjerricco>
I'm wondering if I can just `nix copy --all --from $B --to $NEW_A`, then just overwrite /nix/var with the backup, and find some way to delete the excess store paths?
<elvishjerricco>
Maybe I could restore the /nix/var alone and then `nix-store --repair --substituters $B`?
<elvishjerricco>
Nope. `nix-store --store $NEW_A --substituters $B --verify --repair` just removes everything from the DB instead of restoring anything like the manual says it will
<elvishjerricco>
"If any valid path is missing from the store, or (if --check-contents is given) the contents of a valid path has been modified, then try to repair the path by redownloading it."
<colemickens>
I'm so torn. Cachix is so polished, but I feel like it should be able to work with multiple remotes. The same way docker defaults to Docker Hub but can also pull from third party or self-hosted repos.
<colemickens>
I guess the upload/store-blobs part seems easy and the really excellent bit is the UX around the cachix tool... I want to be able to use it with my own remotes. I'm just greedy, I respect it being a closed source server too.
<drakonis>
colemickens, assemble the store from multiple sources
<drakonis>
ah wait that's not relevant
<colemickens>
I mean like "cachix use foo" or "cachix use foo.myprivatehost.com" and then it goes to foo.myprivatehost.com/.well-known/cachix-{pubkey,url} to retrieve the url/pubkey for the cache instance.
<colemickens>
It might work like that already, I haven't tried to see if the cachix client is OSS yet.
<colemickens>
I guess I can imagine some of it being in upstream tooling. `nix use-cache foo.myprivatehost.com` where it does the discovery I mentioned, seems universally useful outside of cachix even.
<colemickens>
And then if I weren't so scared of writing Haskell or whatever, I could move my Azure storage stuff into `nix copy` so I could just `nix copy azure://container/` too...
<drakonis>
you've been following some of the development tools right?
<drakonis>
rather
<drakonis>
the future features for remote management
<colemickens>
Drakonis: possibly not, since I don't know what you're referencing. Links?
<colemickens>
no, I definitely haven't seen that, I'm intrigued now :)
<drakonis>
nixcon
<colemickens>
Hm, I watched most of em. I'll find it. Thanks
<elvishjerricco>
colemickens: Let me know if you find it. I'm also interested
<colemickens>
Hm I saw them, those were two of my favorite talks. I was watching them after being awake for 20 hours though, I might've spaced on remote management discussions.
<colemickens>
The changes to Nix to support modules as first-class and Shea's talk about requires and splitting up the monorepo were probably my two favorite talks <3.
<colemickens>
Shea's talk was awesome though, so much energy and excitement, very palpable and hard to resist.
<drakonis>
then there's flakes
<drakonis>
which came up as recently as earlier this week
<drakonis>
if you look at the logs you'll see it
<drakonis>
it has remote management
MichaelRaskin has quit [Quit: MichaelRaskin]
drakonis has quit [Read error: Connection reset by peer]
<colemickens>
from the logs, shea says "flakes" are the name of packages with the package module system. I'm not sure how it relates to remotes :S
<colemickens>
or at least, not if "remote management" means what I thought it meant in the context of cachix/nix-copy/etc.
<elvishjerricco>
Successful upgrade from ext4 to ZFS!
<elvishjerricco>
rsync'ing my system back and forth felt precarious but it worked flawlessly :)
jD91mZM2 has joined #nixos-chat
hyperfekt has joined #nixos-chat
drakonis_ has quit [Ping timeout: 268 seconds]
drakonis_ has joined #nixos-chat
srhb has quit [Remote host closed the connection]
srhb has joined #nixos-chat
srhb has quit [Remote host closed the connection]
Peetz0r has quit [Ping timeout: 252 seconds]
Peetz0r has joined #nixos-chat
Peetz0r has quit [Ping timeout: 260 seconds]
drakonis_ has quit [Ping timeout: 246 seconds]
Peetz0r has joined #nixos-chat
jasongrossman has quit [Ping timeout: 240 seconds]
<{^_^}>
Use `,` to list all commands, `,foo = Foo!` to define foo as "Foo!", `,foo =` to undefine it, `,foo` to output "Foo!", `,foo somebody` to send "Foo!" to the nick somebody
<jD91mZM2>
,
<{^_^}>
Special commands: find locate tell - Commands sorted by use count, page 0 (use ,<n> to view page <n>): library tofu dnw pr -A help imperative pills profiling unfree escape'' paste ping pinning unstable ask callPackage declarative error escape" overlay stateVersion upgrade IFD NUR allah cloudfront dentalplan escape-special exec info loot nixlang++ runtimeDeps tias timer whomademe wololo wrapper arm bootfull channels context fancy-uninstall github
<jD91mZM2>
>({ a } @ null: null) ({ a = 3; })
<jD91mZM2>
> ({ a } @ null: null) ({ a = 3; })
<{^_^}>
{ a = 3; }
<jD91mZM2>
> ({ a } @ or: or) ({ a = 3; })
<{^_^}>
error: syntax error, unexpected OR_KW, expecting ID, at (string):205:10
<jD91mZM2>
> ({ a } @ import: import) ({ a = 3; })
<{^_^}>
{ a = 3; }
<jD91mZM2>
{ import = 1; }
<jD91mZM2>
{ or = 1; }
<jD91mZM2>
{ with = 1; }
<jD91mZM2>
> { with = 1; }
<{^_^}>
error: syntax error, unexpected WITH, at (string):205:3
<jD91mZM2>
> { import = 1; }
<{^_^}>
{ import = 1; }
<jD91mZM2>
> { or = 1; }
<{^_^}>
{ or = 1; }
<jD91mZM2>
Is there any kind of logic to which keywords can be used as identifiers, and in which situations????
<infinisil>
jD91mZM2: identifiers that are expressions
<jD91mZM2>
infinisil: How come you can use "or" in a set, but not as a function argument?
<infinisil>
Oh
<jD91mZM2>
Thanks, though, it seems correct in most cases, which means I can fix rnix