summaryrefslogtreecommitdiff
path: root/pkgs/by-name/fe/ferron/package.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/by-name/fe/ferron/package.nix')
-rw-r--r--pkgs/by-name/fe/ferron/package.nix54
1 files changed, 54 insertions, 0 deletions
diff --git a/pkgs/by-name/fe/ferron/package.nix b/pkgs/by-name/fe/ferron/package.nix
new file mode 100644
index 000000000000..31e23a2d044f
--- /dev/null
+++ b/pkgs/by-name/fe/ferron/package.nix
@@ -0,0 +1,54 @@
+{
+ lib,
+ rustPlatform,
+ fetchFromGitHub,
+ pkg-config,
+ zstd,
+ versionCheckHook,
+ nix-update-script,
+}:
+
+rustPlatform.buildRustPackage (finalAttrs: {
+ pname = "ferron";
+ version = "1.0.0";
+
+ src = fetchFromGitHub {
+ owner = "ferronweb";
+ repo = "ferron";
+ tag = finalAttrs.version;
+ hash = "sha256-kw2Ffl5KB3urg5h/ejbW+WxYLpNrxIjPy0levZPgRoo=";
+ };
+
+ useFetchCargoVendor = true;
+ cargoHash = "sha256-uPzEz72/3huigY8moYX5ztRZ0Uaye+GN7V8vKKklPkY=";
+
+ nativeBuildInputs = [
+ pkg-config
+ ];
+
+ buildInputs = [
+ zstd
+ ];
+
+ env = {
+ ZSTD_SYS_USE_PKG_CONFIG = true;
+ };
+
+ nativeInstallCheckInputs = [
+ versionCheckHook
+ ];
+ versionCheckProgramArg = "--version";
+ doInstallCheck = true;
+
+ passthru = {
+ updateScript = nix-update-script { };
+ };
+
+ meta = {
+ description = "Fast, memory-safe web server written in Rust";
+ homepage = "https://github.com/ferronweb/ferron";
+ license = lib.licenses.mit;
+ maintainers = with lib.maintainers; [ GaetanLepage ];
+ mainProgram = "ferron";
+ };
+})