{ inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils, }: { # TODO: 1. add options (ie one to set whether the server should be enabled), # 2. create a systemd service # 3. create a main program # 4. celibrate packages = flake-utils.lib.eachDefaultSystem ( system: let version = "0.15.1"; pkgs = nixpkgs.legacyPackages.${system}; lib = pkgs.lib; in { wishlist = pkgs.buildGoModule { pname = "wishlist"; inherit version; meta = with lib; { homepage = "https://github.com/charmbracelet/wishlist"; description = "Your SSH directory."; license = licenses.mit; maintainers = with maintainers; [caarlos0]; }; src = pkgs.fetchFromGithub { owner = "charmbracelet"; repo = "wishlist"; rev = "v${version}"; # TODO: is this ok? should this be a hash instead? hash = "0c9g1s8j9znzd1mw61d0klc6sqri0wx6hljibxdwzi3cabfy3ld6"; }; vendorSha256 = lib.fakeSha256; }; } ); }; }