earbuds: disable updateScript (#374592)
[NixPkgs.git] / pkgs / by-name / ro / rockcraft / package.nix
blob15857bf9741498ddfac83b0ce83c5a419eff1762
2   lib,
3   python3Packages,
4   fetchFromGitHub,
5   dpkg,
6   nix-update-script,
7   testers,
8   rockcraft,
9   cacert,
12 python3Packages.buildPythonApplication rec {
13   pname = "rockcraft";
14   version = "1.7.0";
16   src = fetchFromGitHub {
17     owner = "canonical";
18     repo = "rockcraft";
19     rev = version;
20     hash = "sha256-2Bo3qtpSSfNvqszlt9cCc9/rurDNDMySAaqLbvRmjjw=";
21   };
23   pyproject = true;
24   build-system = with python3Packages; [ setuptools-scm ];
26   dependencies = with python3Packages; [
27     craft-application
28     craft-archives
29     craft-platforms
30     spdx-lookup
31     tabulate
32   ];
34   nativeCheckInputs =
35     with python3Packages;
36     [
37       craft-platforms
38       pytest-check
39       pytest-mock
40       pytest-subprocess
41       pytestCheckHook
42     ]
43     ++ [ dpkg ];
45   preCheck = ''
46     mkdir -p check-phase
47     export HOME="$(pwd)/check-phase"
48   '';
50   disabledTests = [
51     "test_project_all_platforms_invalid"
52     "test_run_init_flask"
53     "test_run_init_django"
54   ];
56   passthru = {
57     updateScript = nix-update-script { };
58     tests.version = testers.testVersion {
59       package = rockcraft;
60       command = "env SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt HOME=$(mktemp -d) rockcraft --version";
61       version = "rockcraft ${version}";
62     };
63   };
65   meta = {
66     mainProgram = "rockcraft";
67     description = "Create OCI images using the language from Snapcraft and Charmcraft";
68     homepage = "https://github.com/canonical/rockcraft";
69     changelog = "https://github.com/canonical/rockcraft/releases/tag/${version}";
70     license = lib.licenses.gpl3Only;
71     maintainers = with lib.maintainers; [ jnsgruk ];
72     platforms = lib.platforms.linux;
73   };