# apt -y install exim4
...
The following NEW packages will be installed:
exim4 exim4-base exim4-config exim4-daemon-light guile-2.2-libs libgc1c2 libgnutls-dane0 libgsasl7 libkyotocabinet16v5 libltdl7
libmailutils5 libmysqlclient20 libntlm0 libpython2.7 libpython2.7-minimal libpython2.7-stdlib libunbound8 mailutils mailutils-common
mysql-common
0 upgraded, 20 newly installed, 0 to remove and 3 not upgraded.
Need to get 12.9 MB of archives.
...
~# service exim4 status
● exim4.service - LSB: exim Mail Transport Agent
Loaded: loaded (/etc/init.d/exim4; generated)
Active: active (running) since Mon 2019-05-13 22:14:21 UTC; 42s ago
Docs: man:systemd-sysv-generator(8)
Tasks: 1 (limit: 4915)
Memory: 4.1M
CGroup: /system.slice/exim4.service
└─3044 /usr/sbin/exim4 -bd -q30m
May 13 22:14:21 exim4-merge-test-a systemd[1]: Starting LSB: exim Mail Transport Agent...
May 13 22:14:21 exim4-merge-test-a exim4[2796]: * Starting MTA
May 13 22:14:21 exim4-merge-test-a exim4[2796]: ...done.
May 13 22:14:21 exim4-merge-test-a systemd[1]: Started LSB: exim Mail Transport Agent.
root@exim4-merge-test-a:~# echo $?
0
root@exim4-merge-test-a:~# apt -y remove exim4 exim4-base exim4-config
The following packages will be REMOVED:
exim4 exim4-base exim4-daemon-light exim4-config
...
root@exim4-merge-test-a:~# apt-get install exim4-base=4.92-4ubuntu1
...
The following NEW packages will be installed:
exim4-base exim4-config
0 upgraded, 2 newly installed, 0 to remove and 3 not upgraded.
Need to get 1241 kB of archives.
After this operation, 2681 kB of additional disk space will be used.
...
root@exim4-merge-test-a:~# apt upgrade -y
...
The following NEW packages will be installed:
bolt dbus-user-session dconf-gsettings-backend dconf-service fwupd fwupd-signed glib-networking glib-networking-common
glib-networking-services gsettings-desktop-schemas libarchive13 libdconf1 libefiboot1 libefivar1 libfwupd2 libgcab-1.0-0 libgpgme11
libgudev-1.0-0 libgusb2 libjson-glib-1.0-0 libjson-glib-1.0-common libproxy1v5 libsmbios-c2 libsoup2.4-1 libxmlb1 sbsigntool
secureboot-db
The following packages will be upgraded:
exim4-base ubuntu-minimal ubuntu-server ubuntu-standard
4 upgraded, 27 newly installed, 0 to remove and 0 not upgraded.
Need to get 5047 kB of archives.
After this operation, 14.7 MB of additional disk space will be used.
...
Setting up secureboot-db (1.4) ...
chattr: Permission denied while reading flags on /sys/firmware/efi/efivars/dbx-d719b2cb-3d3a-4596-a3bc-dad00e67656f
Filesystem keystore:
/usr/share/secureboot/updates/dbx/MS-2016-08-08.bin [7085 bytes]
firmware keys:
PK:
KEK:
db:
dbx:
filesystem keys:
PK:
KEK:
db:
dbx:
45c7c8ae750acfbb48fc37527d6412dd644daed8913ccd8a24c94d856967df8e
from /usr/share/secureboot/updates/dbx/MS-2016-08-08.bin
...
New keys in filesystem:
/usr/share/secureboot/updates/dbx/MS-2016-08-08.bin
Inserting key update /usr/share/secureboot/updates/dbx/MS-2016-08-08.bin into dbx
Can't create key file /sys/firmware/efi/efivars/dbx-d719b2cb-3d3a-4596-a3bc-dad00e67656f: Operation not permitted
Error syncing keystore file /usr/share/secureboot/updates/dbx/MS-2016-08-08.bin
...
Tests passed for me, here's what I did:
== 0. setup ==
$ lxc launch ubuntu-daily:19.10 exim4-merge-test-a
Creating exim4-merge-test-a
Starting exim4-merge-test-a
$ lxc exec exim4-merge-test-a bash
root@exim4- merge-test- a:~# add-apt-repository -sy ppa:bryce/ exim4-merge- 4.92-7
apt update
...
...
# apt policy exim4
exim4:
Installed: (none)
Candidate: 4.92-7ubuntu1~ppa1
== 1. basic install and removal ==
# apt -y install exim4 7-minimal libpython2.7-stdlib libunbound8 mailutils mailutils-common
...
The following NEW packages will be installed:
exim4 exim4-base exim4-config exim4-daemon-light guile-2.2-libs libgc1c2 libgnutls-dane0 libgsasl7 libkyotocabinet16v5 libltdl7
libmailutils5 libmysqlclient20 libntlm0 libpython2.7 libpython2.
mysql-common
0 upgraded, 20 newly installed, 0 to remove and 3 not upgraded.
Need to get 12.9 MB of archives.
...
~# service exim4 status sysv-generator( 8) slice/exim4. service
● exim4.service - LSB: exim Mail Transport Agent
Loaded: loaded (/etc/init.d/exim4; generated)
Active: active (running) since Mon 2019-05-13 22:14:21 UTC; 42s ago
Docs: man:systemd-
Tasks: 1 (limit: 4915)
Memory: 4.1M
CGroup: /system.
└─3044 /usr/sbin/exim4 -bd -q30m
May 13 22:14:21 exim4-merge-test-a systemd[1]: Starting LSB: exim Mail Transport Agent... merge-test- a:~# echo $?
May 13 22:14:21 exim4-merge-test-a exim4[2796]: * Starting MTA
May 13 22:14:21 exim4-merge-test-a exim4[2796]: ...done.
May 13 22:14:21 exim4-merge-test-a systemd[1]: Started LSB: exim Mail Transport Agent.
root@exim4-
0
root@exim4- merge-test- a:~# apt -y remove exim4 exim4-base exim4-config
The following packages will be REMOVED:
exim4 exim4-base exim4-daemon-light exim4-config
...
# apt-cache policy exim4
exim4:
Installed: (none)
Candidate: 4.92-7ubuntu1~ppa1
== 2. simple upgrade ==
root@exim4- merge-test- a:~# apt-get install exim4-base= 4.92-4ubuntu1
...
The following NEW packages will be installed:
exim4-base exim4-config
0 upgraded, 2 newly installed, 0 to remove and 3 not upgraded.
Need to get 1241 kB of archives.
After this operation, 2681 kB of additional disk space will be used.
...
root@exim4- merge-test- a:~# apt upgrade -y -backend dconf-service fwupd fwupd-signed glib-networking glib-networking -common networking- services gsettings- desktop- schemas libarchive13 libdconf1 libefiboot1 libefivar1 libfwupd2 libgcab-1.0-0 libgpgme11 glib-1. 0-common libproxy1v5 libsmbios-c2 libsoup2.4-1 libxmlb1 sbsigntool
...
The following NEW packages will be installed:
bolt dbus-user-session dconf-gsettings
glib-
libgudev-1.0-0 libgusb2 libjson-glib-1.0-0 libjson-
secureboot-db
The following packages will be upgraded:
exim4-base ubuntu-minimal ubuntu-server ubuntu-standard
4 upgraded, 27 newly installed, 0 to remove and 0 not upgraded.
Need to get 5047 kB of archives.
After this operation, 14.7 MB of additional disk space will be used.
...
Setting up secureboot-db (1.4) ... efi/efivars/ dbx-d719b2cb- 3d3a-4596- a3bc-dad00e6765 6f share/secureboo t/updates/ dbx/MS- 2016-08- 08.bin [7085 bytes] acfbb48fc37527d 6412dd644daed89 13ccd8a24c94d85 6967df8e secureboot/ updates/ dbx/MS- 2016-08- 08.bin
chattr: Permission denied while reading flags on /sys/firmware/
Filesystem keystore:
/usr/
firmware keys:
PK:
KEK:
db:
dbx:
filesystem keys:
PK:
KEK:
db:
dbx:
45c7c8ae750
from /usr/share/
...
New keys in filesystem: secureboot/ updates/ dbx/MS- 2016-08- 08.bin secureboot/ updates/ dbx/MS- 2016-08- 08.bin into dbx efi/efivars/ dbx-d719b2cb- 3d3a-4596- a3bc-dad00e6765 6f: Operation not permitted secureboot/ updates/ dbx/MS- 2016-08- 08.bin
/usr/share/
Inserting key update /usr/share/
Can't create key file /sys/firmware/
Error syncing keystore file /usr/share/
...
# apt policy exim4-base ppa.launchpad. net/bryce/ exim4-merge- 4.92-7/ ubuntu eoan/main amd64 Packages dpkg/status archive. ubuntu. com/ubuntu eoan/main amd64 Packages ppa.launchpad. net/bryce/ exim4-merge- 4.92-7/ ubuntu eoan/main amd64 Packages dpkg/status archive. ubuntu. com/ubuntu eoan/main amd64 Packages
exim4-base:
Installed: 4.92-7ubuntu1~ppa1
Candidate: 4.92-7ubuntu1~ppa1
Version table:
*** 4.92-7ubuntu1~ppa1 500
500 http://
100 /var/lib/
4.92-4ubuntu1 500
500 http://
# apt policy exim4-base
exim4-base:
Installed: 4.92-7ubuntu1~ppa1
Candidate: 4.92-7ubuntu1~ppa1
Version table:
*** 4.92-7ubuntu1~ppa1 500
500 http://
100 /var/lib/
4.92-4ubuntu1 500
500 http://
== 3. Autopkgtest ==
root@exim4- merge-test- a:~# apt install -y autopkgtest merge-test- a:~# autopkgtest exim4 -- null ------- ------- --] @@@@@@@ @@@@@@ summary
...
root@exim4-
...
autopkgtest [22:21:20]: testing package exim4 version 4.92-7ubuntu1~ppa1
autopkgtest [22:21:20]: build not needed
autopkgtest [22:21:20]: test daemon: preparing testbed
...
System appears safe
autopkgtest [22:21:36]: test security: -------
autopkgtest [22:21:37]: test security: - - - - - - - - - - results - - - - - - - - - -
security PASS
autopkgtest [22:21:37]: @@@@@@@
daemon PASS
security PASS