bramble
nixpkgs
Our great sponsors
bramble | nixpkgs | |
---|---|---|
2 | 969 | |
180 | 15,581 | |
- | 4.9% | |
0.0 | 10.0 | |
about 1 year ago | 1 day ago | |
Go | Nix | |
MIT License | MIT License |
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.
bramble
-
How to Learn Nix
I've been looking into Nix a lot lately (but have yet to take the leap - I'll probably start with devshell)
But a couple of projects have come up lately that piqued my interest wrt syntax and alteratives (Since I am not sure about Scheme anymore than Nix (as a langauge) :-)
* https://github.com/maxmcd/bramble
-
Ask HN: What Are You Working On?
An alternative to Nix that uses Starlark (python syntax) instead of a purely functional programming language: https://github.com/maxmcd/bramble
I struggled to climb the steep learning curve of Nix/NixOS and wondered what it would be like with a more familiar (to me) syntax.
It's been very rewarding to write. I was able to implement some ideas from the initial Nix paper that aren't present in Nix. Nix is also quite dependent on the use of the /nix/store path, but I was able to allow a user to use almost any path for their build store without sacrificing on the potential for a shared build cache. I also want to have better native support for things like building docker images, among other features.
I'm currently implementing sandboxing and finalizing some of the build structure, but hoping it'll be usable sometime soon.
nixpkgs
- NixOS/nixpkgs: There isn't a clear canonical way to refer to a specific package
-
NixOS Is Not Reproducible
Yes, Nix doesn't actually ensure that the builds are deterministic. In fact it works just fine if they aren't. There are packages in nixpkgs that aren't reproducible: https://github.com/NixOS/nixpkgs/issues?q=is%3Aopen+is%3Aiss...
-
The xz attack shell script
I'm not familiar with Bazel, but Nix in it's current form wouldn't have solved this attack. First of all, the standard mkDerivation function calls the same configure; make; make install process that made this attack possible. Nixpkgs regularly pulls in external resources (fetchUrl and friends) that are equally vulnerable to a poisoned release tarball. Checkout the comment on the current xz entry in nixpkgs https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/comp...
-
Debian Git Monorepo
NixOS uses a monorepo and I think everyone's love it.
I love being able to easily grep through all the packages source code and there's regularly PRs that harmonizes conventions across many packages.
Nixpkgs doesn't include the packaged software source code, so it's a lot more practical than what Debian is doing.
-
From xz to ibus: more questionable tarballs
In this specific case, nix uses fetchFromGitHub to download the source archive, which are generated by GitHub for the specified revision[1]. Arch seems to just download the tarball from the releases page[2].
[1]: https://github.com/NixOS/nixpkgs/blob/3c2fdd0a4e6396fc310a6e...
[2]: https://gitlab.archlinux.org/archlinux/packaging/packages/ib...
-
GitHub Disabled the Xz Repo
True, but irrelevant -- _some packages_, _somewhere_, do depend on xz, which, if built, requires pulling the source from GitHub (see the default.nix: https://github.com/NixOS/nixpkgs/blob/nixos-23.11/pkgs/tools...)
It's not the vulnerability that's a problem right now (NixOS was protected by a couple of factors) but rather GitHub's hamfisted response.
That is the problem.
-
Combining Nix with Terraform for better DevOps
We’ve noticed that some users have been asking about how to use older versions of Terraform in their Nix setups [1, 2]. This is an example of the diverse needs of people and the importance of maintaining backward compatibility. We hope that nixpkgs-terraform will be a useful tool for these users.
-
Nix is a better Docker image builder than Docker's image builder
I think whateveracct was referring to is this link:
https://github.com/NixOS/nixpkgs/blob/master/pkgs/developmen...
What that file is doing, is building a package, and it essentially is a combination of what Makefile and what RPM spec file does.
I don't know if you're familiar with those tools, but if you aren't it takes some time to know them enough to understand what is happening. So why would be different here?
-
Use Ansible to create and start LXD virtual machines
#!/usr/bin/env nix-shell #! nix-shell -i bash #! nix-shell -p sops #! nix-shell -I https://github.com/NixOS/nixpkgs/archive/refs/tags/23.05.tar.gz source config.sh "$@"
-
What AI assistants are already bundled for Linux?
NixOS just got tabbyml[1] which is built on llama-cpp. Working on systemsd services the weekend and updating latest tabbyml release which supports rocm in addition to cuda
What are some alternatives?
goget - 📦 A simple, good looking, go modules TUI! No more looking for the right "go get" command!
asdf - Extendable version manager with support for Ruby, Node.js, Elixir, Erlang & more
nix-gui - Use NixOS Without Coding
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
nonguix - Nonguix mirror – pull requests ignored, please use upstream for that
git-lfs - Git extension for versioning large files
bread - :bread: Install, update and remove AppImage from your CLI.
easyeffects - Limiter, compressor, convolver, equalizer and auto volume and many other plugins for PipeWire applications
dotfiles - A collection of my dotfiles
spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers.
lorri - Your project’s nix-env [maintainer=@Profpatsch,@nyarly]
waydroid - Waydroid uses a container-based approach to boot a full Android system on a regular GNU/Linux system like Ubuntu.