Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 fetchFromGitHub,
4 rustPlatform,
5}:
6
7rustPlatform.buildRustPackage rec {
8 pname = "versatiles";
9 version = "0.15.6"; # When updating: Replace with current version
10
11 src = fetchFromGitHub {
12 owner = "versatiles-org";
13 repo = "versatiles-rs";
14 tag = "v${version}"; # When updating: Replace with long commit hash of new version
15 hash = "sha256-JWMoXsMRdllYrTpUdKYEi7i5AI5957qwrr8agvyKeT8="; # When updating: Use `lib.fakeHash` for recomputing the hash once. Run: 'nix-build -A versatiles'. Swap with new hash and proceed.
16 };
17
18 cargoHash = "sha256-8DtkeWo+lxv/9JzknpWnGYCA9v2HA4jFN4ZvseFpOGU="; # When updating: Same as above
19
20 __darwinAllowLocalNetworking = true;
21
22 # Testing only necessary for the `bins` and `lib` features
23 cargoTestFlags = [
24 "--bins"
25 "--lib"
26 ];
27
28 # Skip tests that require network access
29 checkFlags = [
30 "--skip=tools::convert::tests::test_remote1"
31 "--skip=tools::convert::tests::test_remote2"
32 "--skip=tools::probe::tests::test_remote"
33 "--skip=tools::serve::tests::test_remote"
34 "--skip=utils::io::data_reader_http"
35 "--skip=utils::io::data_reader_http::tests::read_range_git"
36 "--skip=utils::io::data_reader_http::tests::read_range_googleapis"
37 "--skip=io::data_reader_http::tests::read_range_git"
38 "--skip=io::data_reader_http::tests::read_range_googleapis"
39 ];
40
41 meta = {
42 description = "Toolbox for converting, checking and serving map tiles in various formats";
43 longDescription = ''
44 VersaTiles is a Rust-based project designed for processing and serving tile data efficiently.
45 It supports multiple tile formats and offers various functionalities for handling tile data.
46 '';
47 homepage = "https://versatiles.org/";
48 downloadPage = "https://github.com/versatiles-org/versatiles-rs";
49 changelog = "https://github.com/versatiles-org/versatiles-rs/releases/tag/v${version}";
50 license = lib.licenses.mit;
51 maintainers = with lib.maintainers; [ wilhelmines ];
52 mainProgram = "versatiles";
53 platforms = with lib.platforms; linux ++ darwin ++ windows;
54 };
55}