There are android phones that are even thicker, with amazing battery life and fall protection. Check out DOOGEE for example.
There are android phones that are even thicker, with amazing battery life and fall protection. Check out DOOGEE for example.
Not sure if you’re the author, but I think a self.shortRev
attribute is also provided, so that you don’t have to builtins.substring
yourself.
Hoe do you self host a nix package repo & install nix packages from 3rd party repos? Is this even possible.
So, one aspect of this has already been answered by @Klaymore@sh.itjust.works . If you just want to package some stuff yourself, then do it (look at various NUR repositories for inspiration), put it in some git repo (or even a .tar.gz
somewhere), and then fetch it from your NixOS config, either with flakes or þe olde way with let myPkgs = import (builtins.fetchGit { url = "https://..."; rev = ""; }) {}; in ...
.
Another aspect would be providing a substituter/“binary cache” for your repository, so that its users wouldn’t need to build everything from source. This is a tad more complicated, as you have to set up some form of CI+CD, a place to host the cache, and your users would have to configure their systems to trust your build infrastructure.
It’s all quite doable, and if you have some CI system&s3 bucket ready, boils down to nix copy $(nix build --print-out-paths) --to s3://your.hosting/your-cache
with some authorization and error handling. There are also some readily available services that do it for you, like https://nixbuild.net, https://garnix.io, and https://cachix.io; however, be prepared to pay for the convenience.
Then, on the user end, you’d have to add extra-substituters = https://your.hosting/your-cache; extra-trusted-public-keys = <...>
to ~/.config/nix/nix.conf
, and it should all mostly work.
Examples of complex 3rd party repositories with a binary cache would be both aforementioned Chaotic and Nixified AI, and a more unusual haskell.nix.
To add to this, there’s also Nix User Repository
Yep! I’ve been running NixOS on Librem 5, which is aarch64, and everything I needed was available straight from the cache, which was nice.
“Number of packages” is kinda hard to define. A good approximation can be done by searching for the relevant arch name on the latest nixpkgs eval on Hydra and looking at “Still succeeding jobs” + “Newly succeeding jobs”. Here’s the links for aarch64-linux
(61481 total) and x86_64-linux
(72227 total) for example. I don’t think there’s a way to easily get historical data, you probably have to write a script that queries hydra or something.
I mean, yeah, it’s
nix profile install nixpkgs#vscode
and it should kinda work. Although to run it, you might have to also donix profile install github:nix-community/nixgl --impure
and then run vscode asnixGL code
because of video driver awfulness.