crane
toolbox
crane | toolbox | |
---|---|---|
12 | 109 | |
756 | 2,300 | |
- | 2.4% | |
9.2 | 9.0 | |
3 days ago | 5 days ago | |
Nix | Shell | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
crane
- Can rustc generate identical binaries, with the same hash, from the same souce code?
- Transitioning to Rust as a company
-
Help with building a 32bit library with cargo
i would also recommend using crane or naersk since iirc rustPlaform.buildRustPackage can mangle some of these options (or maybe i just did something wrong lol)
-
Better support of Docker layer caching in Cargo
Notably crane is doing what cargo-chef is doing for Nix.
-
20 Years of Nix
I don't think it's very valid to compare the two. It is a little bit just to compare the experiences using them bit they aren't meant to solve the same set of issues. In fact, they are better together in my experience. I use nix to manage my terraform configurations with a lot of success. It reduces my boilerplate and helps me build abstractions on top of HCL.
If you ever decide to take a stab at nix again, consider looking at https://github.com/ipetkov/crane and using flakes. I've got it down to the point that I can get a new rust project set up with nix in about 30 seconds with linting, package building, and test running all in the checks
-
Has anyone packaged Rust programs as nix packages?
Take a look at Crane, though it is squarely aimed at non-beginners. If you want to submit whatever you're packaging to nixpkgs and not just for personal use, you can't use crane, though.
-
Crafting container images without Dockerfiles
To get Rust incremental builds, did you consider using something such as crane https://github.com/ipetkov/crane ?
And regarding OCI images, i built nix2container (https://github.com/nlewo/nix2container) to speed up image build and push times.
-
How to setup devShell for rust development with bevy?
This is the relevant part of my flake (which uses the quick-start template of crane):
-
yarnpnp2nix: More efficient way of packaging NodeJS applications
I imagine/hope you've seen this, but over in Rust-land I do something similar using https://github.com/ipetkov/crane. I've been on the lookout for something precisely like this for a while. I don't know much about the newer versions of yarn but imagined such a thing was possible. I am looking forward to trying this out, especially if the above is eventually addressed.
-
Perfect Docker Images for Rust with Nix
If you haven't already, I recommend checking out crane for building extensible workflows using cargo and Nix (e.g. running clippy, cargo-audit, cargo-nextest, cargo-tarpaulin, etc.)
toolbox
- Toolbx: Tool for interactive command line environments on Linux
- Toolbx
-
ChromeOS is Linux with Google’s desktop environment
The team has both made a ton of effort switching off their proprietary Skia based rendering tech and adopting standard Wayland, and has put forward huge effort to making running incredibly well integrated real Linux containers just work.
The headline is true. ChromeOS is Linux with Google’s desktop environment. But it obfuscates the details. It's a damned by omission statement. It has some really good sauce to help you not notice often, but it's not at all a Linux desktop environment one can regularly use. You can do a lot of Linux desktop-y things but only through well crafted special unique wrapped processes that mostly but not fully help mock & emulate a regular Linux desktop. Even though it now runs Wayland, the apps you want to run will have atypical intermediates up the wazoo.
And no one else uses any of this tech. ChromiumOs has so much interesting container tech, does such an interesting job making containers think they have a regular Linux / FreeDesktop environment. It's far far far far deeper virtualization than for example https://github.com/containers/toolbox . But you know what? Google has made zero effort to get these pieces adopted elsewhere. It's open source but not intended for use outside Chromium/ChromeOS. I respect & think ChromeOS is a quite viable Linux, and it's so much closer to the metal & more interesting, amazing tech, but my gods Microsoft has gone 300x further to establish wsl2 as a sustainable community effort folks could use & target, in a way that ChromiumOS has done nothing about.
It's sad how Google has transformed from a company that appreciated & worked with ecosystems, that drove things collectively forward, into an individual player that does their own things & delivers from on high. ChromiumOS is such an incredible effort, but it's so internernally drive & focused, and it's hard to believe in such a wildcat effort, even though it's so so good. It keeps coming into better alignment with Linux Desktop actual, but via shims and emulations that no one else cares about or which seems marketed elsewhere. And that inward focus makes the whole effort both so exceptional & promising, but suspect. Such a different nearby but alternative & separately governed universe. ChromiumOS/ChromeOS do excellent at faking being a Linux desktop, and wonderfully have increasingly drawn more strength from that universe, but are still wholly their own very distinct very separate very controller other space. In many ways that's great, secure, good, and miraculously transparently done. But it's still hard to really trust, being such a weird alien impostor, faking so much for end user apps, and there's tension in believing ChromeOS will keep straddling the rift in pro-user manifestations forever.
-
Introduction to Immutable Linux Systems
I'm really, really happy with my current setup of Fedora immutable + toolbox [0]. This tool lets you create containers that are fully integrated with the system, so you have acces to the entire Fedora repos, can run graphical apps, etc. while still having everything inside a container in your home directory. That means no Flatpak required. Highly recommended.
[0] https://containertoolbx.org
- Toolbox
-
Codespaces but open-source, client-only, and unopinionated
Seems like toolbox is also in this space; https://github.com/containers/toolbox
- What’s the safest way to compile apps from source in a binary-based distribution like Fedora?
-
Ubuntu Core as an immutable Linux Desktop base
With Silverblue the core repos are very similar to what you'd have on regular Fedora. With more of a philosophical shift about where you're supposed to install things from. The idea being that the base OS is immutable and you keep it fairly minimal - even though you are technically free to install any of Fedora packages to it. And then you install user applications through Flatpak and toolbx. Where these more user space focussed applications are installed to your home directory and are sandboxed away from actual access to your OS. With iOS/Android style application permissions like "Give app permission to access camera" and "Give app permission to modify files in home directory". Allowing you even further customise the sandboxing of applications. Do you really want that app to have access to your microphone?
-
Silverblue: Nvidia drivers in toolbox?
I'd probably try running it on the host system first. If you want to use your nvidia gpu inside toolbox, you would indeed need to install the drivers in the container: https://github.com/containers/toolbox/issues/116
-
Force to leave Fedora, CentOS vs Ubuntu, which one to choose?
Use toolbox on CentOS or Ubuntu if you want a Fedora environment with more up to date tools: https://containertoolbx.org/
What are some alternatives?
naersk - Build Rust projects in Nix - no configuration, no code generation, no IFD, sandbox friendly.
distrobox - Use any linux distribution inside your terminal. Enable both backward and forward compatibility with software and freedom to use whatever distribution you’re more comfortable with. Mirror available at: https://gitlab.com/89luca89/distrobox
api - 🎭 API
podman - Podman: A tool for managing OCI containers and pods.
yarnpnp2nix - A performance focused and space efficient way of packaging NodeJS applications with Nix
batect - (NOT MAINTAINED) Build And Testing Environments as Code Tool
cargo-auditable - Make production Rust binaries auditable
zsh-in-docker - Install Zsh, Oh-My-Zsh and plugins inside a Docker container with one line!
dream2nix - Simplified nix packaging for various programming language ecosystems [maintainer=@DavHau]
cockpit-podman - Cockpit UI for podman containers
rustshop - Rust Shop is a fake cloud-based software company that you can fork.
box86 - Box86 - Linux Userspace x86 Emulator with a twist, targeted at ARM Linux devices