This directory holds the Nix packaging for ZenNotes.
You can use nix run to run the application without installing it:
For the desktop app:
nix run github:ZenNotes/zennotesThe self-hosted server is packaged in its own repository,
ZenNotes/znserver, which ships a
default.nix (nix-build in a checkout).
For now as the package is not in the official nixpkgs repo you will need to add an input in your flake.nix, like this:
inputs = {
# ...
zennotes.url = "github:ZenNotes/zennotes";
};
outputs = { nixpkgs, ... } @ inputs:
{
# ...
};And then you can add it to your system packages:
{ pkgs, inputs, ... }:
{
environment.systemPackages = [
inputs.zennotes.packages.${pkgs.system}.zennotes-desktop
];
}If you don't use flakes you'll need to copy the package-desktop.nix file into your NixOS configuration and add it to your system packages:
environment.systemPackages = [
(pkgs.callPackage ./package-desktop.nix { })
];- Open
release-data.json - Bump
version:
{
"version": "2.3.0", // => 2.4.0
// ...
}- Update the source hash To obtain a new hash (replace X.X.X with the desired version):
nix-prefetch-github ZenNotes zennotes --rev "vX.X.X"{
// ...
"hash": "sha256-+tLPVnnMbtMa5blSwHav9ZMlnkUsrdG62mMGxhbmy6g=", // update to new hash
// ...
}
- Update the npmDepsHash (if needed) To obtain a new npmDepsHash use this command in an updated project root:
prefetch-npm-deps package-lock.json{
// ...
"npmDepsHash": "sha256-7IpGnxVjaJvfSZyKjOylGMhFqa1bx8Ry5O1yqYfNnCE="
}- Build and test
nix build
./result/bin/zennotes-desktop- Automatic updates inside ZenNotes are disabled because Nix packages are immutable.
- Updates should be performed through Nix by updating the package definition.