Add DBX as a flake input and include the package in environment.systemPackages.
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
dbx = {
url = "github:t8y2/dbx";
inputs.nixpkgs.follows = "nixpkgs"; # optional
};
};
outputs = { self, nixpkgs, dbx, ... }: {
nixosConfigurations.my-machine = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
{
environment.systemPackages = [
dbx.packages.x86_64-linux.dbx-desktop
];
}
];
};
};
}sudo nixos-rebuild switch --flake .#my-machineThis method installs DBX for a specific user through Home Manager.
Note
The inputs.nixpkgs.follows = "nixpkgs" line is optional.
It prevents Nix from downloading a second copy of nixpkgs, but it also makes
DBX ineligible for the upstream binary cache (it will be built locally).
Remove that line if you prefer to download a pre-built binary.
{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
dbx = {
url = "github:t8y2/dbx";
inputs.nixpkgs.follows = "nixpkgs"; # optional
};
};
outputs = { self, nixpkgs, home-manager, dbx, ... }: {
homeConfigurations."youruser" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages.x86_64-linux;
system = "x86_64-linux";
modules = [
{
home.packages = [
dbx.packages.x86_64-linux.dbx-desktop
];
}
];
};
};
}{
inputs = {
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
dbx = {
url = "github:t8y2/dbx";
inputs.nixpkgs.follows = "nixpkgs"; # optional
};
};
outputs = { self, nixpkgs, home-manager, dbx, ... }: {
nixosConfigurations.my-machine = nixpkgs.lib.nixosSystem {
system = "x86_64-linux";
modules = [
./configuration.nix
home-manager.nixosModules.home-manager
{
home-manager.users.youruser = {
home.packages = [
dbx.packages.x86_64-linux.dbx-desktop
];
};
}
];
};
};
}Replace
youruserwith your actual Linux username andmy-machinewith your hostname.
home-manager switch --flake .#yourusersudo nixos-rebuild switch --flake .#my-machineIf you are contributing to DBX or building it from a local clone, the flake provides a fully configured development shell with Rust, Node.js, pnpm, and all GTK/WebKit system libraries:
git clone https://github.com/t8y2/dbx
cd dbx
nix developInside the shell:
| Task | Command |
|---|---|
| Desktop app (Tauri) | pnpm install && pnpm dev:tauri |
| Web frontend only | pnpm dev:web |
| Web backend only | pnpm dev:backend |
| Release build | pnpm tauri build |
Build the dbx-desktop package directly from the flake:
nix build github:t8y2/dbx#dbx-desktop
# or, from a local clone:
nix build .#dbx-desktopThe resulting binary is available at ./result/bin/dbx.