adcomp
deploy-rs
adcomp | deploy-rs | |
---|---|---|
2 | 15 | |
164 | 1,172 | |
- | 4.8% | |
7.9 | 6.2 | |
25 days ago | 5 days ago | |
C++ | Rust | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 or later |
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.
adcomp
-
Nix: Taming Unix with Functional Programming
Are any of your R users TMB users? Because I ran into that in multiple setups (Guix SD and Guix on foreign distros) where only a specific ordering worked even when using guix shell --pure. This was back in the R 4.1.2 days. In theory it should be impossible and yet I ran into it. No I was not mixing packages installed via. install.packages.
Right now with the latest version of Guix and R 4.2.1 TMB is not usable. Try running:
"guix shell --container r r-tmb make gcc-toolchain gfortran-toolchain"
then try running the linreg.R (with the corresponding cpp file, or any of the examples) example from https://github.com/kaskr/adcomp/tree/master/tmb_examples
-
Useful Algorithms That Are Not Optimized by Jax, PyTorch, or TensorFlow
There is no free lunch:).
I remember spending a summer using Template Model Builder (TMB), which is a useful R/C++ automatic differentiation (AD) framework, for working with accelerated failure time models. For these models, the survival to time T given covariates X is defined by S(t|X) = P(T>t|X) = S_0(t exp(-beta^T X)) for baseline survival S_0(t). I wanted to use splines for the baseline survival and then use AD for gradients and random effects. Unfortunately, after implementing the splines in template C++, I found a web page entitled "Things you should NOT do in TMB" (https://github.com/kaskr/adcomp/wiki/Things-you-should-NOT-d...) - which included using if statements that are based on coefficients. In this case, the splines for S_0 depend on beta, which is this specific excluded case:(. An older framework (ADMB) did not have this constraint, but dissemination of code was more difficult. Finally, PyTorch did not have an implementation of B-splines or an implementation for Laplace's approximation. Returning to my opening comment, there is no free lunch.
deploy-rs
- 20 Years of Nix
-
Building a highly optimized home environment with Nix
deploy-rs
-
Nix: Taming Unix with Functional Programming
Deploy-rs is a great alternative. It works as wrapper on top of flakes, local (optionally, cross-) building and copying closures to target machine with activation:
https://github.com/serokell/deploy-rs
-
How do you manage your updates?
The SSH key I made for this uses yubikey authentication, and every time this opens a SSH connection it will ask for the key. There's some options you can add so multiple SSH sessions can use a single connection, but the current version isn't really working well with them (see e.g. https://github.com/serokell/deploy-rs/issues/106)
-
What's a good service for hosting a personal NixOS server?
I haven't really been in the market for something like this in a long while, but NixOS solved a lot of my headaches when it comes to maintaining a VPS and I'd like to try giving this a shot again. I'm not really interested in cloud/microservice/docker/cluser/whatever, I just want to use something like deploy-rs with a single host and maybe a VPN service like tailscale. What sorts of providers would y'all recommend?
-
Best practices for organizing code repository for multiple machines? What about deployment?
I've messed around with deploy.rs. Simple enough to know what's going on.
-
deploy-rs and colmena should combine efforts
https://github.com/serokell/deploy-rs -- see: https://serokell.io/blog/deploy-rs
- A simple multi-profile Nix-flake deploy tool
-
The best solution for deploying flakes
There are 4 tools I'm taking into consideration right now, but every suggestion is welcome: 1. deploy-rs - I don't know anything about it, heard about it like a day or two ago 2. NixOps - the official one, I don't know what to think, but I have concerns about Flakes compatibility 3. morph - I understand this as "NixOps, but better", no more toughs. 4. colmena - seems to be pretty straightforward with quite nice docs
-
GitOps for NixOS
deploy-rs is great for this as well
What are some alternatives?
std - A DevOps framework for the SDLC with the power of Nix and Flakes. Good for keeping deadlines!
colmena - A simple, stateless NixOS deployment tool
mach-nix - Create highly reproducible python environments
nixops - NixOps is a tool for deploying to NixOS machines in a network or cloud.
boostrap - my personal ricing setup (WIP)
morph - NixOS deployment tool
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
flake-utils-plus - Use Nix flakes without any fluff.
deploy-rs - A simple multi-profile Nix-flake deploy tool.
digga - A flake utility library to craft shell-, home-, and hosts- environments.
DevOps-Course - Repository of the DevOps course at KTH Royal Institute of Technology DD2482
nix-doc - An interactive Nix documentation tool providing a CLI for function search, a Nix plugin for docs in the REPL, and a ctags implementation for Nix script