bramble
dotfiles
bramble | dotfiles | |
---|---|---|
2 | 6 | |
180 | 22 | |
- | - | |
0.0 | 7.8 | |
about 1 year ago | 7 days ago | |
Go | Emacs Lisp | |
MIT License | GNU General Public License v3.0 only |
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.
dotfiles
-
Installing Python/PIP tools with home-manager
(taken from https://github.com/siraben/dotfiles/blob/master/home-manager/.config/nixpkgs/python-packages.nix) but that did not even download the packages in question.
-
Make Linux Fast Again
I had the exact same kernel parameters in my NixOS configuration[0] and after some benchmarks (mostly Emacs-related) I observed a 10-15% speedup, pretty neat.
[0] https://github.com/siraben/dotfiles/commit/c0eb0b43083738cab...
-
Using LSP in Emacs and Debian
Note that when you use LSP with Emacs, installing language servers can quickly lead to dependency hell. I use home-manager[0] to specify which language servers I want installed[1] (among other things such as compilers for different languages) so integration with Emacs is reproducible.
[0] https://github.com/nix-community/home-manager
[1] https://github.com/siraben/dotfiles/blob/bad2e8a29b6622e10bc...
-
How to write a linter using tree-sitter in an hour
Using Nix and home-manager I'm able to have this setup with Emacs work across Linux and macOS (x86 and arm64) because it compiles the grammars from Nixpkgs itself (the grammar list can also be augmented declaratively with other grammars).
[0] https://github.com/siraben/dotfiles/blob/a0f49781ecb05693908...
-
How to Learn Nix
I recently got into running my own NixOS server—setting up Nextcloud[0], a website[1], DNS server and most recently a mail server[2] were all incredibly easy, in fact, setting up DNS records is more involved than configuring a mail server on NixOS! This was all done on a server with less than 10 GB of disk space as well.
With additional software such as NixOps, personal servers can also be easily spun up and provisioned.
While inevitably there are rough edges if you look deeply enough, I think the default OOTB experience has been incredible for use on a server and as a day-to-day distro. Highly predictable and declarative configurations is the way to go.
[0] https://github.com/siraben/dotfiles/blob/ffaaacf8888a5c4167b...
[1] https://siraben.dev
[2] https://gitlab.com/simple-nixos-mailserver/nixos-mailserver
- Using libgccjit to make Emacs 2.3x to 42x faster [pdf]
What are some alternatives?
goget - 📦 A simple, good looking, go modules TUI! No more looking for the right "go get" command!
dhall - Maintainable configuration files
nix-gui - Use NixOS Without Coding
spacemacs - A community-driven Emacs distribution - The best editor is neither Emacs nor Vim, it's Emacs *and* Vim!
nonguix - Nonguix mirror – pull requests ignored, please use upstream for that
doom-emacs - An Emacs framework for the stubborn martian hacker [Moved to: https://github.com/doomemacs/doomemacs]
bread - :bread: Install, update and remove AppImage from your CLI.
agenix.el - Transparent editing for agenix secrets inside Emacs
nixpkgs - Nix Packages collection & NixOS
dhall-lang - Maintainable configuration files
starfig - Starfig is a programmatic config generator. It helps create static configs using Starlark, a deterministic Python-like language.
lorri - Your project’s nix-env [maintainer=@Profpatsch,@nyarly]