3
0
Fork 0
forked from mirrors/nixpkgs

Merge pull request #120754 from netcrns/netcrns/movine

This commit is contained in:
Sandro 2021-04-30 15:01:44 +02:00 committed by GitHub
commit 9a80c030b6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 64 additions and 0 deletions

View file

@ -7041,6 +7041,12 @@
githubId = 628342;
name = "Tim Steinbach";
};
netcrns = {
email = "jason.wing@gmx.de";
github = "netcrns";
githubId = 34162313;
name = "Jason Wing";
};
netixx = {
email = "dev.espinetfrancois@gmail.com";
github = "netixx";

View file

@ -0,0 +1,54 @@
{ rustPlatform
, fetchFromGitHub
, lib
, stdenv
, pkg-config
, postgresql
, sqlite
, openssl
, Security
, libiconv
}:
rustPlatform.buildRustPackage rec {
pname = "movine";
version = "0.11.0";
src = fetchFromGitHub {
owner = "byronwasti";
repo = pname;
rev = "v${version}";
sha256 = "0rms8np8zd23xzrd5avhp2q1ndhdc8f49lfwpff9h0slw4rnzfnj";
};
cargoSha256 = "sha256-4ghfenwmauR4Ft9n7dvBflwIMXPdFq1vh6FpIegHnZk=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ postgresql sqlite ] ++ (
if !stdenv.isDarwin then [ openssl ] else [ Security libiconv ]
);
meta = with lib; {
description = "A migration manager written in Rust, that attempts to be smart yet minimal";
homepage = "https://github.com/byronwasti/movine";
license = licenses.mit;
longDescription = ''
Movine is a simple database migration manager that aims to be compatible
with real-world migration work. Many migration managers get confused
with complicated development strategies for migrations. Oftentimes
migration managers do not warn you if the SQL saved in git differs from
what was actually run on the database. Movine solves this issue by
keeping track of the unique hashes for the <literal>up.sql</literal> and
<literal>down.sql</literal> for each migration, and provides tools for
fixing issues. This allows users to easily keep track of whether their
local migration history matches the one on the database.
This project is currently in early stages.
Movine does not aim to be an ORM.
Consider <link xling:href="https://diesel.rs/">diesel</link> instead if
you want an ORM.
'';
maintainers = with maintainers; [ netcrns ];
};
}

View file

@ -16641,6 +16641,10 @@ in
mono-addins = callPackage ../development/libraries/mono-addins { };
movine = callPackage ../development/tools/database/movine {
inherit (darwin.apple_sdk.frameworks) Security;
};
movit = callPackage ../development/libraries/movit { };
mosquitto = callPackage ../servers/mqtt/mosquitto { };