===== Setup ===== cow:~ $ lxc launch ubuntu:focal focal Creating focal Starting focal cow:~ $ lxc config device add focal artifacts disk source=/home/james/cloud-artifacts path=/root/a # debs for older versions Device artifacts added to focal cow:~ $ lxc shell focal root@focal:~# cd a/debs root@focal:~/a/debs# ===== Failure case ===== root@focal:~/a/debs# dpkg -i cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb dpkg: warning: downgrading cloud-init from 23.2.2-0ubuntu0~20.04.1 to 23.1.2-0ubuntu0~20.04.2 (Reading database ... 32155 files and directories currently installed.) Preparing to unpack cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb ... Unpacking cloud-init (23.1.2-0ubuntu0~20.04.2) over (23.2.2-0ubuntu0~20.04.1) ... Setting up cloud-init (23.1.2-0ubuntu0~20.04.2) ... Installing new version of config file /etc/cloud/cloud.cfg ... Installing new version of config file /etc/cloud/templates/chrony.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.centos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.cos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-leap.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-microos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-tumbleweed.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle-micro.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle_hpc.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntpd.conf.openbsd.tmpl ... Processing triggers for rsyslog (8.2001.0-1ubuntu1.3) ... Processing triggers for man-db (2.9.1-1) ... root@focal:~/a/debs# dpkg -i cloud-init_23.2.1-0ubuntu0~20.04.2_all.deb (Reading database ... 32160 files and directories currently installed.) Preparing to unpack cloud-init_23.2.1-0ubuntu0~20.04.2_all.deb ... Unpacking cloud-init (23.2.1-0ubuntu0~20.04.2) over (23.1.2-0ubuntu0~20.04.2) ... dpkg: warning: unable to delete old directory '/etc/NetworkManager/dispatcher.d': Directory not empty dpkg: warning: unable to delete old directory '/etc/NetworkManager': Directory not empty Setting up cloud-init (23.2.1-0ubuntu0~20.04.2) ... Installing new version of config file /etc/cloud/cloud.cfg ... Installing new version of config file /etc/cloud/templates/chrony.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.centos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.cos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-leap.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-microos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-tumbleweed.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle-micro.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle_hpc.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntpd.conf.openbsd.tmpl ... Processing triggers for rsyslog (8.2001.0-1ubuntu1.3) ... Processing triggers for man-db (2.9.1-1) ... root@focal:~/a/debs# ls /etc/NetworkManager/dispatcher.d/ hook-network-manager root@focal:~/a/debs# ===== Success case ===== root@focal:~/a/debs# dpkg -i cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb dpkg: warning: downgrading cloud-init from 23.2.2-0ubuntu0~20.04.1 to 23.1.2-0ubuntu0~20.04.2 (Reading database ... 32155 files and directories currently installed.) Preparing to unpack cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb ... Unpacking cloud-init (23.1.2-0ubuntu0~20.04.2) over (23.2.2-0ubuntu0~20.04.1) ... Setting up cloud-init (23.1.2-0ubuntu0~20.04.2) ... Installing new version of config file /etc/cloud/cloud.cfg ... Installing new version of config file /etc/cloud/templates/chrony.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.centos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.cos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-leap.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-microos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-tumbleweed.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle-micro.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle_hpc.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.rhel.tmpl ... root@focal:~/a/debs# dpkg -i cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb dpkg: warning: downgrading cloud-init from 23.2.1-0ubuntu0~20.04.2 to 23.1.2-0ubuntu0~20.04.2 (Reading database ... 32158 files and directories currently installed.) Preparing to unpack cloud-init_23.1.2-0ubuntu0~20.04.2_all.deb ... Unpacking cloud-init (23.1.2-0ubuntu0~20.04.2) over (23.2.1-0ubuntu0~20.04.2) ... Setting up cloud-init (23.1.2-0ubuntu0~20.04.2) ... Installing new version of config file /etc/cloud/cloud.cfg ... Installing new version of config file /etc/cloud/templates/chrony.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.centos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.cos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-leap.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-microos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-tumbleweed.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle-micro.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle_hpc.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntpd.conf.openbsd.tmpl ... Processing triggers for rsyslog (8.2001.0-1ubuntu1.3) ... Processing triggers for man-db (2.9.1-1) ... root@focal:~/a/debs# echo deb "http://archive.ubuntu.com/ubuntu $(lsb_release -sc)-proposed main" | tee /etc/apt/sources.list.d/proposed.list deb http://archive.ubuntu.com/ubuntu focal-proposed main root@focal:~/a/debs# apt update; apt install cloud-init Get:1 http://security.ubuntu.com/ubuntu focal-security InRelease [114 kB] Hit:2 http://archive.ubuntu.com/ubuntu focal InRelease Get:3 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB] Get:4 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages [2470 kB] Get:5 http://security.ubuntu.com/ubuntu focal-security/main Translation-en [386 kB] Get:6 http://security.ubuntu.com/ubuntu focal-security/main amd64 c-n-f Metadata [13.2 kB] Get:7 http://security.ubuntu.com/ubuntu focal-security/restricted amd64 Packages [2221 kB] Get:8 http://security.ubuntu.com/ubuntu focal-security/restricted Translation-en [311 kB] Get:9 http://security.ubuntu.com/ubuntu focal-security/restricted amd64 c-n-f Metadata [572 B] Get:10 http://security.ubuntu.com/ubuntu focal-security/universe amd64 Packages [886 kB] Get:11 http://security.ubuntu.com/ubuntu focal-security/universe Translation-en [186 kB] Get:12 http://security.ubuntu.com/ubuntu focal-security/universe amd64 c-n-f Metadata [19.1 kB] Get:13 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 Packages [23.6 kB] Get:14 http://security.ubuntu.com/ubuntu focal-security/multiverse Translation-en [5504 B] Get:15 http://security.ubuntu.com/ubuntu focal-security/multiverse amd64 c-n-f Metadata [548 B] Get:16 http://archive.ubuntu.com/ubuntu focal-backports InRelease [108 kB] Get:17 http://archive.ubuntu.com/ubuntu focal-proposed InRelease [267 kB] Get:18 http://archive.ubuntu.com/ubuntu focal/universe amd64 Packages [8628 kB] Get:19 http://archive.ubuntu.com/ubuntu focal/universe Translation-en [5124 kB] Get:20 http://archive.ubuntu.com/ubuntu focal/universe amd64 c-n-f Metadata [265 kB] Get:21 http://archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages [144 kB] Get:22 http://archive.ubuntu.com/ubuntu focal/multiverse Translation-en [104 kB] Get:23 http://archive.ubuntu.com/ubuntu focal/multiverse amd64 c-n-f Metadata [9136 B] Get:24 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages [2857 kB] Get:25 http://archive.ubuntu.com/ubuntu focal-updates/main Translation-en [470 kB] Get:26 http://archive.ubuntu.com/ubuntu focal-updates/main amd64 c-n-f Metadata [17.1 kB] Get:27 http://archive.ubuntu.com/ubuntu focal-updates/restricted amd64 Packages [2338 kB] Get:28 http://archive.ubuntu.com/ubuntu focal-updates/restricted Translation-en [327 kB] Get:29 http://archive.ubuntu.com/ubuntu focal-updates/restricted amd64 c-n-f Metadata [572 B] Get:30 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 Packages [1117 kB] Get:31 http://archive.ubuntu.com/ubuntu focal-updates/universe Translation-en [267 kB] Get:32 http://archive.ubuntu.com/ubuntu focal-updates/universe amd64 c-n-f Metadata [25.6 kB] Get:33 http://archive.ubuntu.com/ubuntu focal-updates/multiverse amd64 Packages [25.8 kB] Get:34 http://archive.ubuntu.com/ubuntu focal-updates/multiverse Translation-en [7484 B] Get:35 http://archive.ubuntu.com/ubuntu focal-updates/multiverse amd64 c-n-f Metadata [620 B] Get:36 http://archive.ubuntu.com/ubuntu focal-backports/main amd64 Packages [45.7 kB] Get:37 http://archive.ubuntu.com/ubuntu focal-backports/main Translation-en [16.3 kB] Get:38 http://archive.ubuntu.com/ubuntu focal-backports/main amd64 c-n-f Metadata [1420 B] Get:39 http://archive.ubuntu.com/ubuntu focal-backports/restricted amd64 c-n-f Metadata [116 B] Get:40 http://archive.ubuntu.com/ubuntu focal-backports/universe amd64 Packages [25.0 kB] Get:41 http://archive.ubuntu.com/ubuntu focal-backports/universe Translation-en [16.3 kB] Get:42 http://archive.ubuntu.com/ubuntu focal-backports/universe amd64 c-n-f Metadata [880 B] Get:43 http://archive.ubuntu.com/ubuntu focal-backports/multiverse amd64 c-n-f Metadata [116 B] Get:44 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 Packages [258 kB] Get:45 http://archive.ubuntu.com/ubuntu focal-proposed/main Translation-en [52.6 kB] Get:46 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 c-n-f Metadata [1400 B] Fetched 29.3 MB in 4s (6970 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 23 packages can be upgraded. Run 'apt list --upgradable' to see them. Reading package lists... Done Building dependency tree Reading state information... Done The following package was automatically installed and is no longer required: libfreetype6 Use 'apt autoremove' to remove it. The following packages will be upgraded: cloud-init 1 upgraded, 0 newly installed, 0 to remove and 22 not upgraded. Need to get 546 kB of archives. After this operation, 177 kB of additional disk space will be used. Get:1 http://archive.ubuntu.com/ubuntu focal-proposed/main amd64 cloud-init all 23.3.1-0ubuntu1~20.04.1 [546 kB] Fetched 546 kB in 1s (682 kB/s) Preconfiguring packages ... (Reading database ... 32160 files and directories currently installed.) Preparing to unpack .../cloud-init_23.3.1-0ubuntu1~20.04.1_all.deb ... Unpacking cloud-init (23.3.1-0ubuntu1~20.04.1) over (23.1.2-0ubuntu0~20.04.2) ... dpkg: warning: unable to delete old directory '/etc/NetworkManager/dispatcher.d': Directory not empty dpkg: warning: unable to delete old directory '/etc/NetworkManager': Directory not empty Setting up cloud-init (23.3.1-0ubuntu1~20.04.1) ... Installing new version of config file /etc/cloud/cloud.cfg ... Installing new version of config file /etc/cloud/templates/chrony.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.centos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.cos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-leap.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-microos.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse-tumbleweed.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle-micro.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sle_hpc.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/chrony.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.alpine.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.debian.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.fedora.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.freebsd.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.opensuse.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.photon.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.rhel.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.sles.tmpl ... Installing new version of config file /etc/cloud/templates/ntp.conf.ubuntu.tmpl ... Installing new version of config file /etc/cloud/templates/ntpd.conf.openbsd.tmpl ... Removing obsolete conffile /etc/NetworkManager/dispatcher.d/hook-network-manager ... Processing triggers for man-db (2.9.1-1) ... Processing triggers for rsyslog (8.2001.0-1ubuntu1.3) ... root@focal:~/a/debs# ls /etc/NetworkManager/dispatcher.d/ root@focal:~/a/debs#