Makefile 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. LIBDIR ?= /usr/lib
  2. STATEDIR ?= /var/lib
  3. SYSCONFDIR ?= /etc
  4. PYTHON2_SITELIB = $(shell python2 -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()')
  5. PYTHON3_SITELIB = $(shell $(PYTHON) -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_lib())')
  6. ifeq ($(shell rpm --eval %{centos_ver} 2>/dev/null),8)
  7. PLATEFORM_PYTHON3_SITELIB = $(shell /usr/libexec/platform-python -c 'import distutils.sysconfig; print(distutils.sysconfig.get_python_lib())')
  8. endif
  9. APTCONFDIR = $(SYSCONFDIR)/apt
  10. YUMCONFDIR = $(SYSCONFDIR)/yum.conf.d
  11. QUBESLIBDIR = $(LIBDIR)/qubes
  12. QUBESSTATEDIR = $(STATEDIR)/qubes
  13. ifneq (,$(wildcard /etc/fedora-release))
  14. DIST = fc$(shell rpm --eval %{fedora})
  15. else ifneq (,$(wildcard /etc/centos-release))
  16. ifeq (CentOSStream, $(shell lsb_release -is))
  17. DIST = centos-stream
  18. else
  19. DIST = centos
  20. endif
  21. else ifneq (,$(wildcard /etc/os-release))
  22. DIST = $(shell grep VERSION_CODENAME= /etc/os-release | cut -d'=' -f2)
  23. endif
  24. ifeq (,$(DIST))
  25. # On debian if previous attempt failed
  26. # it means we are on sid
  27. ifneq (,$(wildcard /etc/debian_version))
  28. DIST = $(shell cut -d'/' -f1 /etc/debian_version)
  29. endif
  30. endif
  31. DIST ?= fc33
  32. .PHONY: install install-apt install-dnf install-rpm install-yum
  33. install:
  34. install -d $(DESTDIR)$(QUBESLIBDIR)
  35. install -t $(DESTDIR)$(QUBESLIBDIR) \
  36. qubes-download-dom0-updates.sh \
  37. upgrades-installed-check \
  38. upgrades-status-notify
  39. install -d -m 2775 $(DESTDIR)$(QUBESSTATEDIR)/dom0-updates
  40. install-apt:
  41. install -d $(DESTDIR)$(APTCONFDIR)/sources.list.d
  42. sed "s/@DIST@/$(DIST)/" apt-qubes-r4.list.in \
  43. > $(DESTDIR)$(APTCONFDIR)/sources.list.d/qubes-r4.list
  44. install -D -m 0644 apt-qubes-archive-keyring.gpg \
  45. $(DESTDIR)$(APTCONFDIR)/trusted.gpg.d/qubes-archive-keyring.gpg
  46. install -D -m 0644 apt-conf-00notify-hook \
  47. $(DESTDIR)$(APTCONFDIR)/apt.conf.d/00notify-hook
  48. install -D -m 0644 apt-conf-70no-unattended \
  49. $(DESTDIR)$(APTCONFDIR)/apt.conf.d/70no-unattended
  50. install -D -m 0644 apt-conf-10no-cache \
  51. $(DESTDIR)$(APTCONFDIR)/apt.conf.d/10no-cache
  52. install-dnf: install-rpm
  53. install -D -m 0644 dnf-qubes-hooks.py \
  54. $(DESTDIR)$(PYTHON2_SITELIB)/dnf-plugins/qubes-hooks.py
  55. ifeq ($(shell rpm --eval %{centos_ver} 2>/dev/null),8)
  56. # we need to stick to related DNF python version
  57. # which is given by platform-python
  58. install -D -m 0644 dnf-qubes-hooks.py \
  59. $(DESTDIR)$(PLATEFORM_PYTHON3_SITELIB)/dnf-plugins/qubes-hooks.py
  60. else
  61. install -D -m 0644 dnf-qubes-hooks.py \
  62. $(DESTDIR)$(PYTHON3_SITELIB)/dnf-plugins/qubes-hooks.py
  63. endif
  64. install -D -m 0644 dnf-qubes-hooks.conf $(DESTDIR)$(SYSCONFDIR)/dnf/plugins/qubes-hooks.conf
  65. install-yum: install-rpm
  66. install -d $(DESTDIR)$(LIBDIR)/yum-plugins
  67. install -D -m 0644 yum-qubes-hooks.py \
  68. $(DESTDIR)$(LIBDIR)/yum-plugins/yum-qubes-hooks.py
  69. install -D -m 0644 yum-qubes-hooks.conf \
  70. $(DESTDIR)$(SYSCONFDIR)/yum/pluginconf.d/yum-qubes-hooks.conf
  71. install-rpm:
  72. install -d $(DESTDIR)$(SYSCONFDIR)/yum.repos.d
  73. DIST='$(DIST)'; sed -e "s/@DIST@/$${DIST%%[0-9]*}/g" yum-qubes-r4.repo.in \
  74. > $(DESTDIR)$(SYSCONFDIR)/yum.repos.d/qubes-r4.repo
  75. install -d $(DESTDIR)$(SYSCONFDIR)/pki/rpm-gpg
  76. install -t $(DESTDIR)$(SYSCONFDIR)/pki/rpm-gpg -m 0644 RPM-GPG-KEY-qubes*
  77. install -d $(DESTDIR)$(YUMCONFDIR)
  78. > $(DESTDIR)$(YUMCONFDIR)/qubes-proxy.conf