5 ms·
This seems like a problem: > Snap packages are effectively black-boxes; they cannot be reproduced independently as the packaging data is controlled by the pack
by aphexairlines 6y ago
This seems like a problem:
> Snap packages are effectively black-boxes; they cannot be reproduced independently as the packaging data is controlled by the package maker alone.
One of the nice properties of debian packages is the ability to `apt-get source` and build it locally. Would be a shame to lose that.
Maybe Nix and Guix can provide the best of both worlds here: self-contained software but reproducible builds too.
- superkuh 6y agoAny distro where you have to write a little haskell-ish 30 line script to set up an environment just to be able to start compiling (or even running!) things is not going to be widely popular for desktop use.
- Shared404 6y agoIndeed. I am however curious to see if there will be a Nix made easy type distro, similar to Ubuntu's relation to Debian.
- 6AA4FD 6y ago`nix-shell -p ghc` does it for me.
- ghostwriter 6y agoFor desktop use, any shortcut icon on a desktop would just be a wrapper script for `nix-shell -p <package> --run <package-binary>`
- superkuh 6y agoI was thinking more things you find on the internet and then do a bit of ./autogen or mkdir build;cd build;cmake ../;make; and the like. Without a file system you really do have to write that script and manually pull in the relevant libraries, and you have to figure out what those are. No autotools will be capable of doing it automatically because no global filesystem exists.
- andrewla 6y agoIt's definitely going to take some work. I have set up my first NixOS install, and the functionality is very impressive, but usability-wise it is a mess. I think Nix/Guix is going to be the bridge to the post-POSIX world where we can move away from the trend of a globally visible filesystem and into much stronger container-based approach. But it can't be in its current form; the Nix language and Guix's Guile/Scheme are too difficult and not declarative enough.
- nicoty 6y agoTheres https://github.com/andrewchambers/hermes https://github.com/andrewchambers/hermes which uses Janet instead. Not sure if that's closure to what you're looking for.
- abathur 6y agoNix throws sparks, but I'm still cautious about who I recommend it to and how. I understand why there's consternation about usability (and a steady stream of requests focused on helping novices get it up and running), but I'm not sure the project(s)/ecosystem are ready for the stress of getting strapped to a growth rocket that brings in many new non-developer general-computing users who can't reasonably contribute back. I don't mean this in an elitist RTFM way. More users of any stripe just inevitably exert support pressure in all sorts of directions. The community is perpetually iterating on tools/automation/process issues to try and stay on the right side of the wave. I sympathize with everyone who has a tough time finding their legs, but for the near term I think it is probably a net good if ergonomics issues filter out people for whom most distros are effectively fungible.
- soraminazuki 6y agoThat "little haskell-ish 30 line script" gives you a stable and reproducible system that other distros can never provide. If I can spare myself from doing a clean re-install of my system every few releases just by writing a few lines of configuration, it's absolutely worth it. It also helps that I can reuse that configuration for any of my computers too, because I don't have to spend time installing and configuring software for each new computer I use. BTW most people don't need to write a full-fledged "script" to get their system up and running. All they need to specify are some configuration variables that specifies the sort of things you'd need to specify anyways if you're going to setup a new system, like which packages should be installed. With NixOS, you write those things on a file instead of typing it on the command line.
- rlpb 6y agoThis doesn't have to be true. It's perfectly possible to produce a reproducible-build snap, and many Free Software snaps are reproducible from source. It's established convention to do it this way. The capability is necessary because snaps can also ship proprietary software (eg. Spotify, Skype, etc). So one wouldn't expect this to be a property of (binary) snaps, just as it isn't for binary debs. apt/deb comes with "source package building tooling" (dpkg-source, dpkg-buildpackage, policy around debian/rules, etc) and so do snaps (snapcraft).
- einpoklum 6y ago> Would be a shame to lose that. So don't lose that. Use Debian (or Devuan), or one of its properly-FOSS derivative distributions.
- Dormeno 6y ago> One of the nice properties of debian packages is the ability to `apt-get source` and build it locally. You don't get that for a lot of third party apt repos actually, no deb-src repo.