Compare commits

...

52 Commits

Author SHA1 Message Date
Łukasz 'sil2100' Zemczak
2620aacd6a releasing package livecd-rootfs version 2.664.10 2020-12-03 12:22:54 +01:00
Łukasz 'sil2100' Zemczak
2029f49fe6 Still hardcode UC20 amd64 image size, but to the same value as for UC16 and UC18. 2020-12-03 12:22:31 +01:00
Łukasz 'sil2100' Zemczak
a4838e3245 Merge branch 'uc20-no-fixed-size' of git+ssh://git.launchpad.net/livecd-rootfs into ubuntu/focal 2020-11-27 17:59:08 +01:00
Robert C Jennings
5d11633c6c
releasing package livecd-rootfs version 2.664.9 2020-11-20 14:41:10 -06:00
Robert C Jennings
172b217128
Merge focal-open-vm-tools-update into ubuntu/focal [a=jchittum] [r=rcj]
Backport vmtools version in vmdk (LP: #1893898)

Backport
LP: #1893898 describes missing vmtools version from the vmdk headers.
The version should be added as ddb.toolsVersion = "2147483647" however
the sed was no longer replacing a ddb.comment field with the tools
version. Rather than subbing ddb.comment with toolsVersion, this commit
deletes ddb.comment (which the comment mentions could cause errors),
and adds the correct value. There was no visibility into the descriptor
during hook creation, so debug statements were added. This allows us to
quickly verify in the logs that bad statements are removed (the possibly
offending comments), as well as ensuring that the toolsVersion is added

MP: https://code.launchpad.net/~jchittum/livecd-rootfs/+git/livecd-rootfs/+merge/394142
2020-11-20 14:35:25 -06:00
Robert C Jennings
c5e80d80b7
Merge focal-sru-grub into ubuntu/focal [a=powersj] [r=patviafore,rcj]
SRU always install grub-pc with shim-signed (LP: #1901906), and ensure to autoremove packages

MP: https://code.launchpad.net/~powersj/livecd-rootfs/+git/livecd-rootfs-1/+merge/393735
2020-11-20 14:30:23 -06:00
John Chittum
c5cea219f4
re-add sed command
Older version of vmdk-stream-converter has an incorrect header. The
original sed command replaced the incorrect "Description File" comment
with the correct "Disk DescriptorFile".
2020-11-17 15:40:45 -06:00
John Chittum
c56c2475e4
Update changelog
Open release and add information
2020-11-16 09:18:14 -06:00
Joshua Powers
6ee6e4c599
releasing package livecd-rootfs version 2.664.9 2020-11-13 09:10:27 -08:00
Joshua Powers
ef950f5214
amd64: always install grub-pc with shim-signed
shim-signed depends on grub-efi-amd64-signed, which in turn has
alternative depends on either `grub-efi-amd64 | grub-pc`. However to
support booting with either via shim&signed-grub and BIOS, the choice
must be made to install grub-pc, not grub-efi-amd64.

This makes images consistent with Ubuntu Deskop, Live Server, buildd
bootable images; all of which already do install grub-pc and
shim-signed.

Additionally, this will ensure that autoremove is run after installing
anything in the CPC build hooks. This is done to avoid shipping images
that include packages that are autoremovable. This will clean-up as
packages are installed and detect any breakage at build time.

LP: #1901906
2020-11-13 09:07:12 -08:00
John Chittum
56862cd9b8
Backport vmtools version in vmdk (LP: #1893898)
Backport
LP: #1893898 describes missing vmtools version from the vmdk headers.
The version should be added as ddb.toolsVersion = "2147483647" however
the sed was no longer replacing a ddb.comment field with the tools
version. Rather than subbing ddb.comment with toolsVersion, this commit
deletes ddb.comment (which the comment mentions could cause errors),
and adds the correct value. There was no visibility into the descriptor
during hook creation, so debug statements were added. This allows us to
quickly verify in the logs that bad statements are removed (the possibly
offending comments), as well as ensuring that the toolsVersion is added
2020-11-10 12:50:32 -06:00
Łukasz 'sil2100' Zemczak
433c2363d8 Do not hard-code the UC20 amd64 image size anymore 2020-11-03 11:30:23 +01:00
Dimitri John Ledkov
430a6f2ae8
releasing package livecd-rootfs version 2.664.8 2020-10-22 16:01:34 +01:00
Dimitri John Ledkov
558bcbc47e
functions: provide nss_systemd-less nsswitch.conf in chroots.
(cherry picked from commit 4d4f113f42d6c3a58a484582af4d2c02f96a42bf)
2020-10-05 10:32:16 +01:00
Dimitri John Ledkov
2be2852ee0
auto/build: use setup|teardown_mountpoint to reduce duplication
(cherry picked from commit 109e6c6613aae4cbd4e8793709ab52c3cbce214c)
2020-10-05 10:32:15 +01:00
Robert C Jennings
e2ae9c245d
Avoid rbind /sys for chroot snap pre-seeding (cgroups fail to unmount)
Builds in LP with the Xenial kernel were happy with the recursive mount of
/sys inside the chroot while performing snap-preseeding but autopkgtests
with the groovy kernel failed.  With the groovy kernel the build was
unable to unmount sys/kernel/slab/*/cgroup/* (Operation not permitted).

This patch mounts /sys and /sys/kernel/security in the chroot in the
same way we've added for binary hooks.  This provides the paths under
/sys needed for snap-preseed while avoiding issues unmounting other
paths.

(cherry picked from commit 84397b50989670c2cfff01de23a5a73e67cd4088)
2020-10-05 10:32:14 +01:00
Dimitri John Ledkov
260c051032
apparmor: compile all profiles
(cherry picked from commit b14f79ce2e9a18b5832c5488146dbdd7edcd65dd)
2020-10-05 10:32:13 +01:00
Dimitri John Ledkov
ce5a138c79
seccomp: mount more up-to-date seccomp features
(cherry picked from commit 31861fd40dabd62e789aeb6d9e64b1ada7b908d8)
2020-10-05 10:32:12 +01:00
Dimitri John Ledkov
c95652e47d
seccomp: add more up-to-date seccomp actions
(cherry picked from commit bc4d32a422c4558656576cb0d3a1e4f3d0c42f76)
2020-10-05 10:32:11 +01:00
Dimitri John Ledkov
acc7e97f38
apparmor: mount more up-to-date apparmor features in the chroot.
(cherry picked from commit a14a31b7514e3f602f29f9af61e6b7bc97662dc2)
2020-10-05 10:32:10 +01:00
Dimitri John Ledkov
d724069fab
apparmor: Add generic v5.4 kernel apparmor features
(cherry picked from commit 37be000f39a1713c095d6758b41d9dc087079ddb)
2020-10-05 10:32:09 +01:00
Dimitri John Ledkov
56a7169ebe
live-server: remove duplicate snaps, due to overlayfs vs snap-preseed.
(cherry picked from commit 6e6ab16bf268c038392e9f4aa7b8398a53af65d5)
2020-10-05 10:32:08 +01:00
Robert C Jennings
39ebdf6902
Apply snap-preseed optimizations after seeding snaps
The snap-preseed command can do a number of things during the build
that are currently performed at first boot (apparmor profiles, systemd
unit generation, etc).  This patch adds a call to reset the seeding and
apply these optimizations when adding a seeded snap.  As a prerequisite
to calling snap-preseed we need to make /dev/mem available as well as
mounts from the host to perform this work, so those are also added here.

(cherry picked from commit 1ca11c979505ae1b8c4621f034d28070a2715293)
2020-10-05 10:32:07 +01:00
Robert C Jennings
bac2570518
releasing package livecd-rootfs version 2.664.7 2020-09-23 13:33:37 -05:00
John Chittum
3241df930b
Update changelog for SRU 2020-09-22 15:58:17 -05:00
John Chittum
05bba4cbbd
ubuntu-cpc:Vagrant Serial to Null (LP: #1874453)
Original fix proposed by Stanislav German-Evtushenko (giner)

CPC Ubuntu cloud images default to enabling a serial console connection
via the kernel commandline option `console=ttyS0`. Many clouds support
the serial connection, and utilize it for debugging purposes. Virtualbox
supports the serial connection as well. In Bionic and earlier images,
Vagrant boxes created a serial log file in the directory of the
Vagrantfile by default. However this is not standard behaviour for
Vagrant images, and so it was removed in Eoan onwards.

Starting in Eoan, there were reports of image booting slowdown (1874453
is a single example). After testing, it was determined that the serial
connection starting, without a device attached, was the cause of the
slow down. However, we did not want to revert to the old functionality
of creating a file. Much thanks to <giner> for providing the Ruby syntax
for sending to File::NULL.

This option will not create a local file, however, the default
Vagrantfile configuration is overwritable via a users Vagrantfile. The
original syntax for creating a file local to the users Vagrantfile has
been included as an example.
2020-09-22 15:57:52 -05:00
Steve Langasek
f400d7f718 Changelog update for revert of azure change 2020-09-01 15:04:15 -07:00
Jinming Wu, Patrick
a58b91da5f
Revert azure kernel change 2020-09-02 05:48:42 +08:00
Jinming Wu, Patrick
750d52b504 Merge remote-tracking branch 'upstream/ubuntu/focal' into ubuntu/focal 2020-09-02 05:39:18 +08:00
Jinming Wu, Patrick
3b0439208e xRDP fixes for Hyper-V build
- xRDP configuration changes due to the config changes in this version
compared to 18.04.
- 46-allow-update-repo.pkla inclusion to aviod "Authentication required
to refresh system repositories" bug in xRDP
2020-09-02 05:36:26 +08:00
Steve Langasek
ab20f18c2e releasing package livecd-rootfs version 2.664.6 2020-08-26 14:06:35 -07:00
Steve Langasek
9b804b02e9 * Fix xrdp support in hyper-v images.
* Use the linux-azure kernel in hyper-v images instead of linux-virtual.
* LP: #1890980.
2020-08-26 14:06:01 -07:00
Jinming Wu, Patrick
419a21205c Fix a mistake on the location of policy file 2020-08-26 14:06:01 -07:00
Jinming Wu, Patrick
5a0e23fefe Update linux-tools/linux-cloud-tools to use Azure 2020-08-26 14:06:01 -07:00
Jinming Wu, Patrick
92dd127d83 xRDP fixes for Hyper-V build
- use of linux-azure, which is the optimized kernel for Hyper-V by
Microsoft
- xRDP configuration changes due to the config changes in this version
compared to 18.04.
- 46-allow-update-repo.pkla inclusion to aviod "Authentication required
to refresh system repositories" bug in xRDP
2020-08-26 14:06:01 -07:00
Steve Langasek
4e3289d0b8 Add SRU bug link 2020-08-10 12:58:37 -07:00
Steve Langasek
2404d27f5b Merge remote-tracking branch 'codyshepherd/bootable-buildd/dist-upgrade/focal' into ubuntu/focal 2020-08-04 12:40:29 -07:00
Robert C Jennings
136562b837
Handle seeded lxd snap with channel name for ubuntu-cpc:minimized (LP: #1889470)
The seed now specifies the lxd snap in focal as
'lxd=4.0/stable/ubuntu-20.04' which doesn't match the expectations of
the code with looks for lxd as the only snap in the seed for minimized
images.  This patch updates the pattern to accept 'lxd' or 'lxd=*'.
2020-07-29 14:55:19 -05:00
Dimitri John Ledkov
e9f4e97155
releasing package livecd-rootfs version 2.664.4 2020-07-23 19:12:30 +01:00
Dimitri John Ledkov
896b5962db
snap_preseed: support channel specification with snap name
snap_name[/classic]=track/risk/branch is now the supported snap name
specification, which allows to specify the full default track and
optional classic confinemnt.

Supporting such specification in the seedtext allows one to specify a
better default channel. For example, this will allow lxd to switch
from latest/stable/ubuntu-20.04 to 4.0/stable/ubuntu-20.04 as 4.0 is
the LTS track matching 20.04 support timeframe.

LP: #1882374

(cherry picked from commit 7bae9201d20822d6875bcf5949e1fff839b8774c)
(cherry picked from commit 2976a99f292c500f39aace25ad08de21b37d7b31)
(cherry picked from commit d542e8e4a08467ef9b6237b9fcbd9166c8c99e8b)
2020-07-23 19:06:57 +01:00
Łukasz 'sil2100' Zemczak
e39a40e2a5 releasing package livecd-rootfs version 2.664.3 2020-07-23 14:02:40 +02:00
Łukasz 'sil2100' Zemczak
8284a1c680 Sync changelog 2020-07-23 14:02:07 +02:00
Iain Lane
54508e6583
Hack seeding of linux kernel in ubuntustudio/focal
ubuntustudio-default-settings in focal release has a Recommends to this
kernel, which makes it impossible to update the kernel later on, since
we would install the -updates and release kernel, which isn't allowed
and causes FTBFS. Hack out the focal-release kernel and let the rest of
the build process pull in the right one.

LP: #1884915
2020-07-21 16:23:39 +01:00
Cody Shepherd
690522e89b
Remove explicit install of grub-efi-* package as it is not necessary,
and potentially overexplicit
2020-07-13 09:10:05 -07:00
Cody Shepherd
315a453ba6
Perform a dist-upgrade prior to installing packages for bootable-buildd
image in order to pull in package updates
2020-07-08 14:03:56 -07:00
Łukasz 'sil2100' Zemczak
e611dfc1c4 Enable overrides of UC20 grade dangerous channels 2020-05-25 18:44:08 +02:00
Philip Roche
cd098e7c41 Revert of initramfs package removal in KVM image (LP: #1880170)
It was reported and confirmed in LP bug #1875400
(https://bugs.launchpad.net/cloud-images/+bug/1875400) that on the public
KVM cloud image there exists a large list of packages marked for auto-removal.

This should never be the case on a released cloud image.

These packages are marked for auto-removal because in the KVM image binary hook
we removed both initramfs-tools and busybox-initramfs packages. Due to package
dependencies this also removed:

busybox-initramfs* cloud-initramfs-copymods* cloud-initramfs-dyn-netconf*
cryptsetup-initramfs* initramfs-tools* initramfs-tools-core* multipath-tools*
overlayroot* sg3-utils-udev* ubuntu-server*

But it did not remove all the packages that the above list depended on.
This resulted in all those packages being marked for auto-removal because they
were not manually installed nor did they have any manually installed packages
that depended on them.

The removal of initramfs-tools and busybox-initramfs was to avoid the
generation of initramfs in images that should boot initramfsless.

This requirement is obsolete now because the initramfsless boot handling
is now handled via setting GRUB_FORCE_PARTUUID in /etc/default/grub.d/40-force-partuuid.cfg.

In test images I have verified that GRUB_FORCE_PARTUUID is set and that
boot speeds have not regressed.

LP: #1880170
2020-05-22 13:38:22 +01:00
Łukasz 'sil2100' Zemczak
225f2fe504 Fix indentation. 2020-05-07 10:48:51 +02:00
Dimitri John Ledkov
0a2fbb8b99 releasing package livecd-rootfs version 2.664.1 2020-05-01 20:09:06 +01:00
Dimitri John Ledkov
54b8e73a15 ubuntu-image: drop ubuntu-image dep on riscv64, as not installable yet.
LP: #1876359
(cherry picked from commit 282c5a5bd50f9844cc077823b39550c663a013c3)
2020-05-01 20:08:14 +01:00
Dimitri John Ledkov
2d5f9581db ubuntu-image: fix focal+ pi images for armhf to use pi-armhf model name.
LP: #1876358
(cherry picked from commit 6e8b5b94c4a9f8db4afbaf566ebdb36110f08592)
2020-05-01 20:07:58 +01:00
Dimitri John Ledkov
dc456c240d Bump only the UC20 pc image to 8GB, and keep Pi images as small as possible.
LP: #1875430
(cherry picked from commit 668898d92c1a48ac4901661d0e5d7e4b117b09c0)
2020-05-01 20:07:46 +01:00
48 changed files with 377 additions and 39 deletions

113
debian/changelog vendored
View File

@ -1,3 +1,116 @@
livecd-rootfs (2.664.10) focal; urgency=medium
* Do not hard-code the UC20 amd64 image size to 8GB as now ubuntu-image
should be able to properly calculate the needed size itself.
* But per discussion, we might want to keep the UC20 images a bit bigger than
what's defined via the gadget/rootfs contents, to make sure writable is
comfortably big enough. Use the same hard-coded value as for UC16 and UC18.
(LP: #1905990)
-- Łukasz 'sil2100' Zemczak <lukasz.zemczak@ubuntu.com> Fri, 27 Nov 2020 17:58:38 +0100
livecd-rootfs (2.664.9) focal; urgency=medium
[ John Chittum]
* Backport Ensure toolsVersion set in vmdk header (LP: #1893898)
[ Dimitri John Ledkov & Joshua Powers ]
* amd64: always install grub-pc with shim-signed (LP: #1901906), and
ensure to autoremove packages
-- Robert C Jennings <robert.jennings@canonical.com> Fri, 20 Nov 2020 14:35:51 -0600
livecd-rootfs (2.664.8) focal; urgency=medium
Backport snap-preseed work from groovy to focal LP: #1896755
[ Robert C Jennings ]
* Apply snap-preseed optimizations after seeding snaps
[ Dimitri John Ledkov ]
* live-server: remove duplicate snaps, due to overlayfs vs snap-preseed.
* apparmor: Add generic v5.4 kernel apparmor features
* apparmor: mount more up-to-date apparmor features in the chroot.
* seccomp: add more up-to-date seccomp actions
* seccomp: mount more up-to-date seccomp features
* apparmor: compile all profiles
[ Robert C Jennings ]
* Avoid rbind /sys for chroot snap pre-seeding (cgroups fail to unmount)
[ Dimitri John Ledkov ]
* auto/build: use setup|teardown_mountpoint to reduce duplication
* functions: provide nss_systemd-less nsswitch.conf in chroots.
-- Dimitri John Ledkov <xnox@ubuntu.com> Mon, 05 Oct 2020 10:33:02 +0100
livecd-rootfs (2.664.7) focal; urgency=medium
[ Stanislav German-Evtushenko <giner> / John Chittum ]
* Send Vagrant serial connection to NULL. (LP: #1874453)
-- Robert C Jennings <robert.jennings@canonical.com> Wed, 23 Sep 2020 13:32:32 -0500
livecd-rootfs (2.664.6) focal; urgency=medium
[ Patrick Wu ]
* Fix xrdp support in hyper-v images. LP: #1890980.
-- Steve Langasek <steve.langasek@ubuntu.com> Wed, 26 Aug 2020 14:06:31 -0700
livecd-rootfs (2.664.5) focal; urgency=medium
[ Robert C Jennings ]
* Handle seeded lxd snap with channel name for ubuntu-cpc:minimized
(LP: #1889470)
[ Cody Shepherd ]
* Add dist-upgrade to bootable-buildd hook to ensure the built image
doesn't contain vulnerable kernels or other packages. LP: #1891061.
* Don't explicitly install grub-efi-amd64-signed, it's a dependency of
shim-signed.
-- Steve Langasek <steve.langasek@ubuntu.com> Tue, 04 Aug 2020 12:39:27 -0700
livecd-rootfs (2.664.4) focal; urgency=medium
* snap_preseed: support channel specification with snap name (LP: #1882374)
-- Dimitri John Ledkov <xnox@ubuntu.com> Thu, 23 Jul 2020 19:12:10 +0100
livecd-rootfs (2.664.3) focal; urgency=medium
[ Łukasz 'sil2100' Zemczak ]
* Enable overrides of UC20 grade dangerous channels - as this is possible.
(LP: #1879350)
[ Iain Lane ]
* Hack seeding of linux kernel in ubuntustudio/focal
ubuntustudio-default-settings in focal release has a Recommends to this
kernel, which makes it impossible to update the kernel later on, since we
would install the -updates and release kernel, which isn't allowed and
causes FTBFS. Hack out the focal-release kernel and let the rest of the
build process pull in the right one. (LP: #1884915)
-- Iain Lane <iain.lane@canonical.com> Tue, 21 Jul 2020 16:25:18 +0100
livecd-rootfs (2.664.2) focal; urgency=medium
* Revert of initramfs package removal in KVM image (LP: #1880170)
-- Phil Roche <phil.roche@canonical.com> Fri, 22 May 2020 13:03:20 +0100
livecd-rootfs (2.664.1) focal; urgency=medium
* Bump only the UC20 pc image to 8GB, and keep Pi images as small as possible.
(LP: #1875430)
* ubuntu-image: fix focal+ pi images for armhf to use pi-armhf model name.
(LP: #1876358)
* ubuntu-image: drop ubuntu-image dep on riscv64, as not installable yet.
(LP: #1876359)
-- Dimitri John Ledkov <xnox@ubuntu.com> Fri, 01 May 2020 20:08:23 +0100
livecd-rootfs (2.664) focal; urgency=medium livecd-rootfs (2.664) focal; urgency=medium
[ Patrick Viafore ] [ Patrick Viafore ]

2
debian/control vendored
View File

@ -38,7 +38,7 @@ Depends: ${misc:Depends},
squashfs-tools (>= 1:3.3-1), squashfs-tools (>= 1:3.3-1),
sudo, sudo,
u-boot-tools [armhf arm64], u-boot-tools [armhf arm64],
ubuntu-image [!i386], ubuntu-image [!i386 !riscv64],
python3-vmdkstream [amd64 i386], python3-vmdkstream [amd64 i386],
xz-utils, xz-utils,
zerofree zerofree

View File

@ -0,0 +1,78 @@
query {label {multi_transaction {yes
}
data {yes
}
perms {allow deny audit quiet
}
}
}
dbus {mask {acquire send receive
}
}
signal {mask {hup int quit ill trap abrt bus fpe kill usr1 segv usr2 pipe alrm term stkflt chld cont stop stp ttin ttou urg xcpu xfsz vtalrm prof winch io pwr sys emt lost
}
}
ptrace {mask {read trace
}
}
caps {mask {chown dac_override dac_read_search fowner fsetid kill setgid setuid setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap mac_override mac_admin syslog wake_alarm block_suspend audit_read
}
}
rlimit {mask {cpu fsize data stack core rss nproc nofile memlock as locks sigpending msgqueue nice rtprio rttime
}
}
capability {0xffffff
}
namespaces {pivot_root {no
}
profile {yes
}
}
mount {mask {mount umount pivot_root
}
}
network {af_unix {yes
}
af_mask {unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp
}
}
network_v8 {af_mask {unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp
}
}
file {mask {create read write exec append mmap_exec link lock
}
}
domain {version {1.2
}
attach_conditions {xattr {yes
}
}
computed_longest_left {yes
}
post_nnp_subset {yes
}
fix_binfmt_elf_mmap {yes
}
stack {yes
}
change_profile {yes
}
change_onexec {yes
}
change_hatv {yes
}
change_hat {yes
}
}
policy {set_load {yes
}
versions {v8 {yes
}
v7 {yes
}
v6 {yes
}
v5 {yes
}
}
}

View File

@ -0,0 +1 @@
0xffffff

View File

@ -0,0 +1 @@
chown dac_override dac_read_search fowner fsetid kill setgid setuid setpcap linux_immutable net_bind_service net_broadcast net_admin net_raw ipc_lock ipc_owner sys_module sys_rawio sys_chroot sys_ptrace sys_pacct sys_admin sys_boot sys_nice sys_resource sys_time sys_tty_config mknod lease audit_write audit_control setfcap mac_override mac_admin syslog wake_alarm block_suspend audit_read

View File

@ -0,0 +1 @@
acquire send receive

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
1.2

View File

@ -0,0 +1 @@
create read write exec append mmap_exec link lock

View File

@ -0,0 +1 @@
mount umount pivot_root

View File

@ -0,0 +1 @@
no

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
unspec unix inet ax25 ipx appletalk netrom bridge atmpvc x25 inet6 rose netbeui security key netlink packet ash econet atmsvc rds sna irda pppox wanpipe llc ib mpls can tipc bluetooth iucv rxrpc isdn phonet ieee802154 caif alg nfc vsock kcm qipcrtr smc xdp

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
read trace

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
yes

View File

@ -0,0 +1 @@
allow deny audit quiet

View File

@ -0,0 +1 @@
cpu fsize data stack core rss nproc nofile memlock as locks sigpending msgqueue nice rtprio rttime

View File

@ -0,0 +1 @@
hup int quit ill trap abrt bus fpe kill usr1 segv usr2 pipe alrm term stkflt chld cont stop stp ttin ttou urg xcpu xfsz vtalrm prof winch io pwr sys emt lost

View File

@ -106,14 +106,17 @@ fi
Setup_cleanup Setup_cleanup
preinstall_snaps() { preinstall_snaps() {
lb chroot_resolv install setup_mountpoint chroot
snap_prepare chroot snap_prepare chroot
for snap in "$@"; do for snap in "$@"; do
SNAP_NO_VALIDATE_SEED=1 snap_preseed chroot "${snap}" SNAP_NO_VALIDATE_SEED=1 snap_preseed chroot "${snap}"
done done
snap_validate_seed chroot snap_validate_seed chroot
lb chroot_resolv remove
teardown_mountpoint chroot
} }
rm -f binary.success rm -f binary.success

View File

@ -359,8 +359,12 @@ case $IMAGEFORMAT in
CHANNEL="${CHANNEL:-edge}" CHANNEL="${CHANNEL:-edge}"
case $MODEL in case $MODEL in
pc-amd64|pc-i386) pc-amd64|pc-i386)
[ -z "${SUBARCH:-}" ] \ if [ -z "${SUBARCH:-}" ]; then
&& UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS --image-size 3700M" case $SUITE in
# This is to make sure there's enough writable space
UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS --image-size 3700M"
esac
fi
;; ;;
*) ;; *) ;;
esac esac
@ -375,7 +379,9 @@ case $IMAGEFORMAT in
UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS -c $CHANNEL" UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS -c $CHANNEL"
;; ;;
*) *)
UBUNTU_IMAGE_ARGS="--image-size 10G" if [ "${MODEL}" = "pi" ]; then
MODEL=pi-armhf
fi
# Ubuntu Core 20 # Ubuntu Core 20
# Currently uc20 assertions do not support global # Currently uc20 assertions do not support global
# channel overrides, instead we have per-channel models # channel overrides, instead we have per-channel models
@ -386,6 +392,15 @@ case $IMAGEFORMAT in
candidate|beta|edge|dangerous) candidate|beta|edge|dangerous)
MODEL="ubuntu-core-20-${MODEL#pc-}-${CHANNEL}" MODEL="ubuntu-core-20-${MODEL#pc-}-${CHANNEL}"
;; ;;
dangerous-*)
# That being said, the dangerous grade *does*
# support channel overrides, so we can use the
# dangerous model assertion and override the channel
# freely.
MODEL="ubuntu-core-20-${MODEL#pc-}-dangerous"
CHANNEL=${CHANNEL#dangerous-}
UBUNTU_IMAGE_ARGS="$UBUNTU_IMAGE_ARGS -c $CHANNEL"
;;
*) *)
echo "Unknown CHANNEL ${CHANNEL} specification for ${SUITE}" echo "Unknown CHANNEL ${CHANNEL} specification for ${SUITE}"
exit 1 exit 1
@ -669,6 +684,23 @@ case $PROJECT in
ubuntustudio-dvd) ubuntustudio-dvd)
add_task install minimal standard ubuntustudio-desktop ubuntustudio-audio ubuntustudio-fonts ubuntustudio-graphics ubuntustudio-video ubuntustudio-publishing ubuntustudio-photography add_task install minimal standard ubuntustudio-desktop ubuntustudio-audio ubuntustudio-fonts ubuntustudio-graphics ubuntustudio-video ubuntustudio-publishing ubuntustudio-photography
case $SUITE in
focal)
# ubuntustudio-default-settings in focal
# release has a Recommends to this kernel,
# which makes it impossible to update the
# kernel later on, since we would install the
# -updates and release kernel, which isn't
# allowed and causes the squashfs to fail to
# build. Hack out the focal-release kernel and
# let the rest of the build process pull in the
# right one. (See right below.)
for package in linux-lowlatency linux-image-lowlatency linux-headers-lowlatency linux-image-5.4.0-26-lowlatency linux-headers-5.4.0-26-lowlatency; do
sed -i "s/$/ -a --not -XFPackage ${package}/" \
"config/package-lists/livecd-rootfs.list.chroot_install"
done
;;
esac
COMPONENTS='main restricted universe multiverse' COMPONENTS='main restricted universe multiverse'
case $ARCH in case $ARCH in
amd64|i386) KERNEL_FLAVOURS=lowlatency ;; amd64|i386) KERNEL_FLAVOURS=lowlatency ;;
@ -739,8 +771,7 @@ case $PROJECT in
add_package install grub-pc add_package install grub-pc
;; ;;
amd64) amd64)
add_package install grub-pc-bin add_package install grub-pc
add_package install grub-efi-amd64-signed
add_package install shim-signed add_package install shim-signed
;; ;;
esac esac
@ -858,7 +889,7 @@ if [ "$PROJECT:${SUBPROJECT:-}" = ubuntu-cpc:minimized ]; then
# build if we see such a snap. # build if we see such a snap.
for snap in `cat config/seeded-snaps`; do for snap in `cat config/seeded-snaps`; do
case $snap in case $snap in
lxd) lxd | lxd=*)
;; ;;
*) *)
echo "Unexpected seeded snap for ubuntu-cpc:minimized build: $snap" echo "Unexpected seeded snap for ubuntu-cpc:minimized build: $snap"

View File

@ -84,8 +84,7 @@ install_grub() {
efi_target=arm-efi efi_target=arm-efi
;; ;;
amd64) amd64)
chroot mountpoint apt-get install -qqy grub-pc chroot mountpoint apt-get install -qqy grub-pc shim-signed
chroot mountpoint apt-get install -qqy grub-efi-amd64-signed shim-signed
efi_target=x86_64-efi efi_target=x86_64-efi
;; ;;
esac esac

View File

@ -39,6 +39,9 @@ trap cleanup_linux_virtual EXIT
# Install dependencies # Install dependencies
env DEBIAN_FRONTEND=noninteractive chroot "$mount_d" apt-get \ env DEBIAN_FRONTEND=noninteractive chroot "$mount_d" apt-get \
update --assume-yes update --assume-yes
# Perform a dist-upgrade to pull in package updates
env DEBIAN_FRONTEND=noninteractive chroot "$mount_d" apt-get \
dist-upgrade --assume-yes
env DEBIAN_FRONTEND=noninteractive chroot "$mount_d" apt-get \ env DEBIAN_FRONTEND=noninteractive chroot "$mount_d" apt-get \
install -y lsb-release locales initramfs-tools busybox-initramfs \ install -y lsb-release locales initramfs-tools busybox-initramfs \
udev dbus netplan.io cloud-init openssh-server sudo snapd udev dbus netplan.io cloud-init openssh-server sudo snapd

View File

@ -96,14 +96,25 @@ mount_image() {
setup_mountpoint() { setup_mountpoint() {
local mountpoint="$1" local mountpoint="$1"
if [ ! -c /dev/mem ]; then
mknod -m 660 /dev/mem c 1 1
chown root:kmem /dev/mem
fi
mount --rbind /dev "$mountpoint/dev" mount --rbind /dev "$mountpoint/dev"
mount proc-live -t proc "$mountpoint/proc" mount proc-live -t proc "$mountpoint/proc"
mount sysfs-live -t sysfs "$mountpoint/sys" mount sysfs-live -t sysfs "$mountpoint/sys"
mount securityfs -t securityfs "$mountpoint/sys/kernel/security"
# Provide more up to date apparmor features, matching target kernel
mount -o bind /usr/share/livecd-rootfs/live-build/apparmor/generic "$mountpoint/sys/kernel/security/apparmor/features/"
mount -o bind /usr/share/livecd-rootfs/live-build/seccomp/generic.actions_avail "$mountpoint/proc/sys/kernel/seccomp/actions_avail"
mount -t tmpfs none "$mountpoint/tmp" mount -t tmpfs none "$mountpoint/tmp"
mount -t tmpfs none "$mountpoint/var/lib/apt" mount -t tmpfs none "$mountpoint/var/lib/apt"
mount -t tmpfs none "$mountpoint/var/cache/apt" mount -t tmpfs none "$mountpoint/var/cache/apt"
mv "$mountpoint/etc/resolv.conf" resolv.conf.tmp mv "$mountpoint/etc/resolv.conf" resolv.conf.tmp
cp /etc/resolv.conf "$mountpoint/etc/resolv.conf" cp /etc/resolv.conf "$mountpoint/etc/resolv.conf"
mv "$mountpoint/etc/nsswitch.conf" nsswitch.conf.tmp
sed 's/systemd//g' nsswitch.conf.tmp > "$mountpoint/etc/nsswitch.conf"
chroot "$mountpoint" apt-get update chroot "$mountpoint" apt-get update
} }
@ -121,6 +132,7 @@ teardown_mountpoint() {
umount $submount umount $submount
done done
mv resolv.conf.tmp "$mountpoint/etc/resolv.conf" mv resolv.conf.tmp "$mountpoint/etc/resolv.conf"
mv nsswitch.conf.tmp "$mountpoint/etc/nsswitch.conf"
} }
mount_partition() { mount_partition() {
@ -230,28 +242,46 @@ modify_vmdk_header() {
# Extract the vmdk header for manipulation # Extract the vmdk header for manipulation
dd if="${vmdk_name}" of="${descriptor}" bs=1 skip=512 count=1024 dd if="${vmdk_name}" of="${descriptor}" bs=1 skip=512 count=1024
echo "Cat'ing original vmdk disk descriptor to console for debugging."
# cat header so we are aware of the original descriptor for debugging
cat $descriptor
# trim null bytes to treat as standard text file
tr -d '\000' < $descriptor > $newdescriptor
# The sed lines below is where the magic is. Specifically:
# ddb.toolsVersion: sets the open-vm-tools so that VMware shows
# the tooling as current
# ddb.virtualHWVersion: set the version to 7, which covers most
# current versions of VMware
# createType: make sure its set to stream Optimized
# remove the vmdk-stream-converter comment and replace with # remove the vmdk-stream-converter comment and replace with
# # Disk DescriptorFile. This is needed for Virtualbox # # Disk DescriptorFile. This is needed for Virtualbox
# remove the comments from vmdk-stream-converter which causes # remove the comments from vmdk-stream-converter which causes
# VirtualBox and others to fail VMDK validation # VirtualBox and others to fail VMDK validation
sed -i -e 's|# Description file.*|# Disk DescriptorFile|' \
sed -e 's|# Description file.*|# Disk DescriptorFile|' \
-e '/# Believe this is random*/d' \ -e '/# Believe this is random*/d' \
-e '/# Indicates no parent/d' \ -e '/# Indicates no parent/d' \
-e '/# The Disk Data Base/d' \ -e '/# The Disk Data Base/d' \
-e 's|ddb.comment.*|ddb.toolsVersion = "2147483647"|' \ ${newdescriptor}
"${descriptor}" > "${newdescriptor}"
# The header is cannot be bigger than 1024 # add newline to newdescriptor
expr $(stat --format=%s ${newdescriptor}) \< 1024 > /dev/null 2>&1 || { echo "" >> $newdescriptor
echo "descriptor is too large, VMDK will be invalid!"; exit 1; }
# add required tools version
echo -n 'ddb.toolsVersion = "2147483647"' >> $newdescriptor
echo "Cat'ing modified descriptor for debugging."
cat $newdescriptor
# diff original descriptor and new descriptor for debugging
# diff exits 1 if difference. pipefail not set so piping diff
# to cat prints diff and swallows exit 1
echo "Printing diff of original and new descriptors."
diff --text $descriptor $newdescriptor | cat
# The header must be 1024 or less before padding
if ! expr $(stat --format=%s ${newdescriptor}) \< 1025 > /dev/null 2>&1; then
echo "descriptor is too large, VMDK will be invalid!";
exit 1
fi
# reset newdescriptor to be 1024
truncate --no-create --size=1K $newdescriptor
# Overwrite the vmdk header with our new, modified one # Overwrite the vmdk header with our new, modified one
dd conv=notrunc,nocreat \ dd conv=notrunc,nocreat \
@ -626,11 +656,31 @@ snap_prepare() {
snap_preseed() { snap_preseed() {
# Preseed a snap in the image (snap_prepare must be called once prior) # Preseed a snap in the image (snap_prepare must be called once prior)
local CHROOT_ROOT=$1 local CHROOT_ROOT=$1
# $2 can be in the form of snap_name/classic=track/risk/branch
local SNAP=$2 local SNAP=$2
# strip CHANNEL specification
SNAP=${SNAP%=*}
# strip /classic confinement
local SNAP_NAME=${SNAP%/*} local SNAP_NAME=${SNAP%/*}
# Per Ubuntu policy, all seeded snaps (with the exception of the core # Seed from the specified channel (e.g. core18 latest/stable)
# snap) must pull from stable/ubuntu-$(release_ver) as their channel. # Or Channel endcoded in the snap name (e.g. lxd=4.0/stable/ubuntu-20.04)
local CHANNEL=${3:-"stable/ubuntu-$(release_ver)"} # Or Ubuntu policy default channel latest/stable/ubuntu-$(release_ver)
local CHANNEL=${3:-}
if [ -z "$CHANNEL" ]; then
case $2 in
*=*)
CHANNEL=${2#*=}
;;
*)
CHANNEL="stable/ubuntu-$(release_ver)"
;;
esac
fi
# At this point:
# SNAP_NAME is just the snap name
# SNAP is either $SNAP_NAME or $SNAP_NAME/classic for classic confined
# CHANNEL is the channel
if [ ! -e "$CHROOT_ROOT/var/lib/snapd/seed/assertions/model" ]; then if [ ! -e "$CHROOT_ROOT/var/lib/snapd/seed/assertions/model" ]; then
echo "ERROR: Snap model assertion not present, snap_prepare must be called" echo "ERROR: Snap model assertion not present, snap_prepare must be called"
@ -662,6 +712,9 @@ snap_validate_seed() {
if [ -e "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml" ]; then if [ -e "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml" ]; then
snap debug validate-seed "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml" snap debug validate-seed "${CHROOT_ROOT}/var/lib/snapd/seed/seed.yaml"
/usr/lib/snapd/snap-preseed --reset $(realpath "${CHROOT_ROOT}")
/usr/lib/snapd/snap-preseed $(realpath "${CHROOT_ROOT}")
chroot "${CHROOT_ROOT}" apparmor_parser --skip-read-cache --write-cache --skip-kernel-load --verbose -j `nproc` /etc/apparmor.d
fi fi
} }

View File

@ -0,0 +1 @@
kill_process kill_thread trap errno user_notif trace log allow

View File

@ -33,6 +33,7 @@ install_grub() {
chroot mountpoint apt-get -qqy update chroot mountpoint apt-get -qqy update
chroot mountpoint apt-get -qqy install grub-ieee1275 chroot mountpoint apt-get -qqy install grub-ieee1275
chroot mountpoint apt-get -qqy remove --purge grub-legacy-ec2 chroot mountpoint apt-get -qqy remove --purge grub-legacy-ec2
chroot mountpoint apt-get autoremove --purge --assume-yes
# set the kernel commandline to use hvc0 # set the kernel commandline to use hvc0
mkdir -p mountpoint/etc/default/grub.d mkdir -p mountpoint/etc/default/grub.d

View File

@ -97,11 +97,13 @@ install_grub() {
efi_target=arm-efi efi_target=arm-efi
;; ;;
amd64) amd64)
chroot mountpoint apt-get install -qqy grub-efi-amd64-signed shim-signed chroot mountpoint apt-get install -qqy grub-pc shim-signed
efi_target=x86_64-efi efi_target=x86_64-efi
;; ;;
esac esac
chroot mountpoint apt-get autoremove --purge --assume-yes
# This call to rewrite the debian package manifest is added here to capture # This call to rewrite the debian package manifest is added here to capture
# grub-efi packages that otherwise would not make it into the base # grub-efi packages that otherwise would not make it into the base
# manifest. filesystem.packages is moved into place via symlinking to # manifest. filesystem.packages is moved into place via symlinking to

View File

@ -136,6 +136,7 @@ fi
if [ "$ARCH" = "s390x" ]; then if [ "$ARCH" = "s390x" ]; then
# Do ZIPL install bits # Do ZIPL install bits
chroot mountpoint apt-get -qqy install s390-tools sysconfig-hardware chroot mountpoint apt-get -qqy install s390-tools sysconfig-hardware
chroot mountpoint apt-get autoremove --purge --assume-yes
# Write out cloudy zipl.conf for future kernel updates # Write out cloudy zipl.conf for future kernel updates
cat << EOF > mountpoint/etc/zipl.conf cat << EOF > mountpoint/etc/zipl.conf

View File

@ -49,10 +49,6 @@ replace_kernel ${mount_d} "linux-kvm"
chroot "${mount_d}" update-grub chroot "${mount_d}" update-grub
undivert_grub "${mount_d}" undivert_grub "${mount_d}"
# Remove initramfs for kvm image
env DEBIAN_FRONTEND=noninteractive chroot "${mount_d}" apt-get \
purge -y initramfs-tools busybox-initramfs
env DEBIAN_FRONTEND=noninteractive chroot "${mount_d}" rm \ env DEBIAN_FRONTEND=noninteractive chroot "${mount_d}" rm \
-rf /boot/initrd.img-* /boot/initrd.img -rf /boot/initrd.img-* /boot/initrd.img

View File

@ -153,9 +153,17 @@ Vagrant.configure("2") do |config|
config.vm.base_mac = "${macaddr}" config.vm.base_mac = "${macaddr}"
config.vm.provider "virtualbox" do |vb| config.vm.provider "virtualbox" do |vb|
vb.customize [ "modifyvm", :id, "--uart1", "0x3F8", "4" ] vb.customize [ "modifyvm", :id, "--uart1", "0x3F8", "4" ]
# Creating a console log file is not an expected behavior for vagrant boxes. LP #1777827 # Create a NULL serial port to skip console logging by default
# vb.customize [ "modifyvm", :id, "--uartmode1", "file", File.join(Dir.pwd, "${prefix}-console.log") ] vb.customize [ "modifyvm", :id, "--uartmode1", "file", File::NULL ]
# If console logging is desired, uncomment this line and remove prior
# vb.customize [ "modifyvm", :id, "--uartmode1", "file", File.join(Dir.pwd, "${prefix}-console.log") ]
# Ubuntu cloud images, by default, enable console=ttyS0. This enables serial consoles to
# connect to the images. With the change related to LP #1777827, removing a serial
# file logger, Vagrant image boot times increased and now run greater than 5 minutes
# Creating a console log file is not an expected default behavior for vagrant boxes.
# As a workaround, we create a console connection to File:NULL. LP #1874453
# This is overrideable in user files to write to a local file
end end
end end
EOF EOF

View File

@ -35,6 +35,7 @@ cp -a rootfs.dir $rootfs_dir
setup_mountpoint $rootfs_dir setup_mountpoint $rootfs_dir
env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get -y -qq install ubuntu-wsl env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get -y -qq install ubuntu-wsl
env DEBIAN_FRONTEND=noninteractive chroot $rootfs_dir apt-get autoremove --purge --assume-yes
create_manifest $rootfs_dir livecd.ubuntu-cpc.wsl.rootfs.manifest create_manifest $rootfs_dir livecd.ubuntu-cpc.wsl.rootfs.manifest
teardown_mountpoint $rootfs_dir teardown_mountpoint $rootfs_dir

View File

@ -21,10 +21,9 @@ if [ -n "$SUBARCH" ]; then
exit 0 exit 0
fi fi
. config/binary
. config/functions . config/functions
. config/common . config/common
# somehow i don't have LB_DISTRIBUTION set ?!
. config/bootstrap
FILESYSTEM_ROOT=binary/boot/squashfs.dir FILESYSTEM_ROOT=binary/boot/squashfs.dir
INSTALLER_ROOT=binary/boot/installer.squashfs.dir INSTALLER_ROOT=binary/boot/installer.squashfs.dir
@ -84,6 +83,12 @@ sed -i -e'N;/name: lxd/,+2d' $INSTALLER_ROOT/var/lib/snapd/seed/seed.yaml
teardown_mountpoint "$INSTALLER_ROOT" teardown_mountpoint "$INSTALLER_ROOT"
# Drop core/lxd/snapd that got copied up from base layer, due to
# snap-preseed tool doing --reset & speedup
find $OVERLAY_ROOT/var/lib/snapd/ -name 'core*.snap' -delete
find $OVERLAY_ROOT/var/lib/snapd/ -name 'snapd_*.snap' -delete
find $OVERLAY_ROOT/var/lib/snapd/ -name 'lxd_*.snap' -delete
squashfs_f="${PWD}/livecd.${PROJECT}.installer.squashfs" squashfs_f="${PWD}/livecd.${PROJECT}.installer.squashfs"
(cd "$OVERLAY_ROOT/" && (cd "$OVERLAY_ROOT/" &&

View File

@ -55,8 +55,8 @@ EOF
CHANGED_FILE_SUFFIX=.replaced-by-desktop-img-build CHANGED_FILE_SUFFIX=.replaced-by-desktop-img-build
# use vsock transport. # use vsock transport
sed -i${CHANGED_FILE_SUFFIX} -e 's/use_vsock=false/use_vsock=true/g' "${scratch_d}/etc/xrdp/xrdp.ini" sed -i${CHANGED_FILE_SUFFIX} -e 's/port=3389/port=vsock:\/\/-1:3389/g' "${scratch_d}/etc/xrdp/xrdp.ini"
# use rdp security. # use rdp security.
sed -i${CHANGED_FILE_SUFFIX} -e 's/security_layer=negotiate/security_layer=rdp/g' "${scratch_d}/etc/xrdp/xrdp.ini" sed -i${CHANGED_FILE_SUFFIX} -e 's/security_layer=negotiate/security_layer=rdp/g' "${scratch_d}/etc/xrdp/xrdp.ini"
# remove encryption validation. # remove encryption validation.
@ -74,6 +74,9 @@ exec /etc/xrdp/startwm.sh
EOF EOF
chmod a+x "${scratch_d}/etc/xrdp/startubuntu.sh" chmod a+x "${scratch_d}/etc/xrdp/startubuntu.sh"
# set to use the system Window manager
sed -i${CHANGED_FILE_SUFFIX} -e 's/EnableUserWindowManager=true/EnableUserWindowManager=0/g' "${scratch_d}/etc/xrdp/sesman.ini"
# use the script to setup the ubuntu session # use the script to setup the ubuntu session
sed -i${CHANGED_FILE_SUFFIX} -e 's/startwm/startubuntu/g' "${scratch_d}/etc/xrdp/sesman.ini" sed -i${CHANGED_FILE_SUFFIX} -e 's/startwm/startubuntu/g' "${scratch_d}/etc/xrdp/sesman.ini"
@ -100,6 +103,15 @@ ResultInactive=no
ResultActive=yes ResultActive=yes
EOF EOF
cat >${scratch_d}/etc/polkit-1/localauthority/50-local.d/46-allow-update-repo.pkla <<EOF
[Allow Package Management all Users]
Identity=unix-user:*
Action=org.freedesktop.packagekit.system-sources-refresh
ResultAny=yes
ResultInactive=yes
ResultActive=yes
EOF
sed -i${CHANGED_FILE_SUFFIX} -e 's|After=|ConditionPathExists=!/var/lib/oem-config/run\nAfter=|g' "${scratch_d}/lib/systemd/system/xrdp.service" sed -i${CHANGED_FILE_SUFFIX} -e 's|After=|ConditionPathExists=!/var/lib/oem-config/run\nAfter=|g' "${scratch_d}/lib/systemd/system/xrdp.service"
# End xrdp customisation # End xrdp customisation