1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
| | From 31bd4fe777cbff3ebca74115e5735a8b8f584fa7 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Thu, 6 Feb 2020 23:17:58 -0800
Subject: [PATCH] Add support for GNU Guix.
---
reprotest/lib/adt_testbed.py | 2 ++
reprotest/lib/system_interface/guix.py | 39 ++++++++++++++++++++++++++
2 files changed, 41 insertions(+)
create mode 100644 reprotest/lib/system_interface/guix.py
diff --git a/reprotest/lib/adt_testbed.py b/reprotest/lib/adt_testbed.py
index ef704d6..60bf763 100644
--- a/reprotest/lib/adt_testbed.py
+++ b/reprotest/lib/adt_testbed.py
@@ -40,6 +40,7 @@ import urllib.parse
from reprotest.lib.system_interface.debian import DebianInterface
from reprotest.lib.system_interface.arch import ArchInterface
from reprotest.lib.system_interface.fedora import FedoraInterface
+from reprotest.lib.system_interface.guix import GuixInterface
from reprotest.lib import adtlog
from reprotest.lib import VirtSubproc
@@ -47,6 +48,7 @@ SYSTEM_INTERFACES = {
'debian': DebianInterface,
'arch': ArchInterface,
'fedora': FedoraInterface,
+ 'guix': GuixInterface,
}
timeouts = {
diff --git a/reprotest/lib/system_interface/guix.py b/reprotest/lib/system_interface/guix.py
new file mode 100644
index 0000000..2b06104
--- /dev/null
+++ b/reprotest/lib/system_interface/guix.py
@@ -0,0 +1,39 @@
+# adt_testbed.py is part of autopkgtest
+# autopkgtest is a tool for testing Debian binary packages. The
+# system_interface module is an addition for reprotest to make
+# this module distro-agnostic
+#
+# autopkgtest is Copyright (C) 2006-2015 Canonical Ltd.
+# the system_interface module is Copyright (C) 2017 Santiago Torres-Arias
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+#
+# See the file CREDITS for a full list of credits information (often
+# installed as /usr/share/doc/autopkgtest/CREDITS).
+import subprocess
+
+from . import SystemInterface
+
+class GuixInterface(SystemInterface):
+ """
+ SystemInterface implementation for GNU Guix hosts. Contains commands that
+ are specific to the GNU Guix toolchain.
+ """
+
+ def get_arch(self):
+ return ['uname', '-m']
+
+ def can_query_packages(self):
+ return False
--
2.20.1
|