2613 Commits

Author SHA1 Message Date
Michael Marineau
98d75649dc coreos-kernel: disable audit logging
We don't currently ship auditd so loads of junk gets dumped to dmesg.
2015-07-22 15:58:18 -07:00
Michael Marineau
544aa7edf7 coreos-kernel: upgrade to 4.0.9 2015-07-22 15:57:50 -07:00
Vito Caputo
d8c77ef260 ignition: remove unnecessary Conflicts directives 2015-07-20 19:04:28 -04:00
Vito Caputo
937956ceb7 ignition: add dependency on systemd-networkd.service 2015-07-20 19:04:28 -04:00
Alex Crawford
f869f15fbf Merge pull request #1388 from crawford/ignition
sys-apps/ignition: update EnvironmentFile
2015-07-20 14:11:31 -07:00
Alex Crawford
3b9bae8d72 Merge pull request #1387 from crawford/oem
coreos-base/oem-*: add oem-release
2015-07-20 14:06:08 -07:00
Alex Crawford
b1a5e0853b coreos-base/oem-*: add oem-release 2015-07-20 14:03:54 -07:00
Alex Crawford
d99ae281bc coreos-base/oem-*: wrap variables in quotes 2015-07-20 13:55:07 -07:00
Geoff Levand
f811418816 Merge pull request #1385 from glevand/for-merge-vim-2
coreos/config: Remove outdated vim fix
2015-07-20 09:21:32 -07:00
Alex Crawford
e1a26d28ba sys-apps/ignition: update EnvironmentFile 2015-07-17 19:33:51 -07:00
Michael Marineau
008c59818b cros-devutils: fix appid in devserver 2015-07-17 14:54:56 -07:00
Geoff Levand
e376438f53 coreos/config: Remove outdated vim fix
Commit 5c4e74c68c3262ee35bd039d94b0237df7381888 (profiles: Use latest vim for
cross compile fix) updated vim to vim-7.4.712, which outdates this local fix.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-17 14:42:00 -07:00
Alex Crawford
c682dc1d5b Merge pull request #1382 from crawford/rust
profiles: enable rust
2015-07-17 14:25:17 -07:00
Geoff Levand
f5a1ebdf07 Merge pull request #1381 from glevand/for-merge-libchrome_crypto
coreos-overlay: Remove unused package coreos-base/libchrome_crypto
2015-07-17 14:20:57 -07:00
Geoff Levand
fc720e8c10 Merge pull request #1384 from glevand/for-merge-ktop
coreos-overlay: Update ktop for arm64
2015-07-17 13:52:30 -07:00
Alex Crawford
a120b2440a profiles: enable rust 2015-07-17 12:43:23 -07:00
Vito Caputo
c512c32572 Merge pull request #1380 from vcaputo/ignition-networkd
ignition: add dependency on systemd-networkd.service
2015-07-17 12:13:48 -07:00
Geoff Levand
bcebd8b695 sys-process/ktop: Fix arm64 build error
Add ktop-arm64-syscall-fixes.diff to fix arm64 build error.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-17 11:07:40 -07:00
Geoff Levand
0dc361f624 sys-process/ktop: Update to latest
Update to latest upstream and bump revision from ktop-0.0.1-r17
to ktop-0.0.1-r18.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-17 11:07:40 -07:00
Vito Caputo
5e05eebb5f ignition: add dependency on systemd-networkd.service 2015-07-17 00:37:17 -04:00
Michael Marineau
fa6567e851 rkt: fix grace period variable format
systemd requires the ${var} syntax when embedded in words.
2015-07-16 19:34:01 -07:00
Michael Marineau
c025700be9 rkt: fix grace period time format 2015-07-16 19:14:21 -07:00
Geoff Levand
97135465ec coreos-base/libchrome_crypto: Remove unused package
Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-16 13:38:44 -07:00
Michael Marineau
d165d80cb5 Revert "app-admin/fleet: bump to v0.11.1" 2015-07-16 05:05:04 -07:00
Michael Marineau
33074475f9 profiles: fix path to coreos-overlay
Missed this reference to /usr/local/portage in a recent scripts change:

174a847e36

So existing SDKs kept working but newly created SDKs would mysteriously
fail to build some things like cmake and vim. :(
2015-07-15 21:01:33 -07:00
Alex Crawford
a6b1d350d2 Merge pull request #1371 from crawford/boot
sys-kernel/bootengine: include disk-uuid fixes
2015-07-15 12:46:29 -07:00
Alex Crawford
a9a9eee5ff sys-kernel/bootengine: include disk-uuid fixes 2015-07-15 12:36:59 -07:00
Geoff Levand
c747e6af49 profiles: Use latest vim for cross compile fix
Specify vim-7.4.712 and vim-core-7.4.712 in package.accept_keywords
to pickup needed upstream cross-compile fix.

  https://bugs.gentoo.org/show_bug.cgi?id=473372

Fix build errors like these:

  checking for tgetent()... configure: error: NOT FOUND!
  You need to install a terminal library; for example ncurses.

Signed-off-by: Geoff Levand <geoff@infradead.org>
2015-07-15 11:52:27 -07:00
Alex Crawford
a1aa12ebb2 sys-kernel/bootengine: include disk uuid changes 2015-07-15 00:07:48 -07:00
Eugene Yakubovich
87581aa3ae Merge pull request #1367 from eyakubovich/flannel-0.5.1
flannel: bump to 0.5.1
2015-07-14 18:42:54 -07:00
Alex Crawford
6d055cbfa7 app-emulation/docker: bump to v1.7.1 2015-07-14 18:14:22 -07:00
Eugene Yakubovich
069211b11d flannel: bump to 0.5.1 2015-07-14 18:09:46 -07:00
Alex Crawford
1ded9198a5 Merge pull request #1361 from crawford/cloudinit
coreos-base/coreos-cloudinit: bump to v1.5.0
2015-07-14 18:07:04 -07:00
Alex Crawford
62c76140ca Merge pull request #1366 from crawford/ignition
sys-apps/ignition: update to the latest
2015-07-14 18:04:49 -07:00
Nick Owens
152fcf80d9 Merge pull request #1355 from mischief/fleet-0.11.1
app-admin/fleet: bump to v0.11.1
2015-07-14 18:03:55 -07:00
Alex Crawford
40b5c97aaa sys-apps/ignition: bump to v0.1.0 2015-07-14 17:57:45 -07:00
Alex Crawford
0f278e5633 sys-apps/ignition: update to match new stages
This now includes ignition-disks.service and ignition-files.service
which run their respective stages. Both of these services are required
by ignition.target which is wanted when the udev rule matches an
unbooted disk.
2015-07-14 17:57:45 -07:00
Alex Crawford
4f00bca819 sys-apps/ignition: fix dobin to reflect the layout
The Ignition source was moved under /src so the name needs to be
explicit.
2015-07-14 17:44:23 -07:00
Alex Crawford
71058a0d6a coreos-devel/sdk-depends: add Capture-Tiny 2015-07-14 15:50:13 -07:00
Michael Marineau
18ef5053fa Merge pull request #1357 from marineam/portage
Portage 2.2.20
2015-07-14 13:07:55 -07:00
Nick Owens
8953d3be9b Merge pull request #1362 from mischief/systemd
sys-apps/systemd: sync with coreos/systemd v222
2015-07-14 12:51:39 -07:00
Nick Owens
a71579ae01 sys-apps/systemd: sync with coreos/systemd v222 2015-07-14 12:43:26 -07:00
Alex Crawford
928940c101 coreos-base/coreos-cloudinit: bump to v1.5.0 2015-07-14 12:18:17 -07:00
Michael Marineau
154f980ad1 Merge pull request #1356 from marineam/systemd
systemd: sync with upstream, dropping python use flag
2015-07-14 11:44:28 -07:00
Michael Marineau
fe3b111c6a coreos-kernel: add -fstack-check=no to kernel build
In addition to enabling PIE and stack protector, hardened compilers also
enable the -fstack-check option which I had previously overlooked,
conflating it with -fstack-protector which the kernel build already
handles properly. This is the second time I hit this trying to use
ccache, I forgot that -nopie was insufficent for kernel builds. Last
time around reverted in cd043688f09b22ccf245ffd11f8a22a5ff31e577.

At least this time I finally dug deep enough to find the cause instead
of setting myself up for repeating history in another 6 months. For
reference the issue is that the Go 1.3.x runtime can call clock_gettime
with a very small stack. If the vDSO library was built with
-fstack-check it will attempt to write 0 to a location beyond the end of
the very small stack, triggering SEGV:

    Dump of assembler code for function __vdso_clock_gettime:
       0x00007ffff7ffaa50 <+0>:     push   %rbp
       0x00007ffff7ffaa51 <+1>:     mov    %rsp,%rbp
       0x00007ffff7ffaa54 <+4>:     push   %r14
       0x00007ffff7ffaa56 <+6>:     push   %r13
       0x00007ffff7ffaa58 <+8>:     push   %r12
       0x00007ffff7ffaa5a <+10>:    push   %rbx
       0x00007ffff7ffaa5b <+11>:    sub    $0x1038,%rsp
    => 0x00007ffff7ffaa62 <+18>:    orq    $0x0,(%rsp)
       0x00007ffff7ffaa67 <+23>:    add    $0x1020,%rsp
2015-07-13 23:22:46 -07:00
Michael Marineau
4aef6d7d80 portage: apply CoreOS patches to 2.2.20 ebuild
The 2.2.18 patches apply as-is except for the unicode fix which was
resolved upstream.
2015-07-11 19:03:11 -07:00
Michael Marineau
56de858200 portage: import latest stable from upstream 2015-07-11 18:54:46 -07:00
Michael Marineau
c9e61269d2 systemd: sync with upstream, dropping python use flag
Upstream moved the python stuff to its own package which we don't need
anyway. Cleans up dependencies a bit but all the changes are in use
flags we don't enable so nothing impacts us. Our delta is now:

```patch
--- gentoo-x86/sys-apps/systemd/systemd-9999.ebuild	2015-07-11 12:19:02.628603502 -0700
+++ coreos-overlay/sys-apps/systemd/systemd-9999.ebuild	2015-07-11 12:33:19.136880252 -0700
@@ -7,16 +7,23 @@
 AUTOTOOLS_AUTORECONF=yes
 AUTOTOOLS_PRUNE_LIBTOOL_FILES=all
 PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+CROS_WORKON_PROJECT="coreos/systemd"
+CROS_WORKON_REPO="git://github.com"

 if [[ ${PV} == 9999 ]]; then
-	EGIT_REPO_URI="https://github.com/systemd/systemd.git"
-	inherit git-r3
+	# Use ~arch instead of empty keywords for compatibility with cros-workon
+	KEYWORDS="~amd64 ~arm64 ~arm ~x86"
 else
-	SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="~amd64 ~arm ~ia64 ~x86"
+	CROS_WORKON_COMMIT="015325350548732458e61c193f5fab6f139f47fc"
+	KEYWORDS="amd64 arm64 ~arm ~x86"
 fi
 UNIFONT=unifont-8.0.01
-SRC_URI+=" terminal? ( http://unifoundry.com/pub/${UNIFONT}/font-builds/${UNIFONT}.hex.gz )"
+SRC_URI="terminal? ( http://unifoundry.com/pub/${UNIFONT}/font-builds/${UNIFONT}.hex.gz )"
+
+# cros-workon must be imported first, in cases where cros-workon and
+# another eclass exports the same function (say src_compile) we want
+# the later eclass's version to win. Only need src_unpack from workon.
+inherit cros-workon

 inherit autotools-utils bash-completion-r1 linux-info multilib \
 	multilib-minimal pam python-any-r1 systemd toolchain-funcs udev \
@@ -31,6 +38,9 @@
 	idn importd +kdbus +kmod +lz4 lzma nat pam policykit
 	qrcode +seccomp selinux ssl sysv-utils terminal test vanilla xkb"

+# CoreOS specific use flags
+IUSE+=" man symlink-usr"
+
 REQUIRED_USE="importd? ( curl gcrypt lzma )"

 MINKV="3.8"
@@ -82,7 +92,6 @@
 # sys-apps/dbus: the daemon only (+ build-time lib dep for tests)
 PDEPEND=">=sys-apps/dbus-1.6.8-r1:0[systemd]
 	>=sys-apps/hwids-20130717-r1[udev]
-	>=sys-fs/udev-init-scripts-25
 	policykit? ( sys-auth/polkit )
 	!vanilla? ( sys-apps/gentoo-systemd-integration )"

@@ -101,14 +110,13 @@
 	terminal? ( ${PYTHON_DEPS} )
 	test? ( >=sys-apps/dbus-1.6.8-r1:0 )"

-if [[ -n ${AUTOTOOLS_AUTORECONF} ]]; then
-	DEPEND+="
-		app-text/docbook-xml-dtd:4.2
+# Not required when building from unpatched tarballs, but we build from git.
+DEPEND+="
+	man? ( app-text/docbook-xml-dtd:4.2
 		app-text/docbook-xml-dtd:4.5
 		app-text/docbook-xsl-stylesheets
-		dev-libs/libxslt:0
-		>=dev-libs/libgcrypt-1.4.5:0"
-fi
+		dev-libs/libxslt:0 )
+	>=dev-libs/libgcrypt-1.4.5:0"

 pkg_pretend() {
 	local CONFIG_CHECK="~AUTOFS4_FS ~BLK_DEV_BSG ~CGROUPS
@@ -154,7 +162,7 @@

 src_unpack() {
 	default
-	[[ ${PV} != 9999 ]] || git-r3_src_unpack
+	cros-workon_src_unpack
 }

 src_prepare() {
@@ -179,9 +187,7 @@

 multilib_src_configure() {
 	local myeconfargs=(
-		# disable -flto since it is an optimization flag
-		# and makes distcc less effective
-		cc_cv_CFLAGS__flto=no
+		--with-pamconfdir=/usr/share/pam.d

 		# Workaround for gcc-4.7, bug 554454.
 		cc_cv_CFLAGS__Werror_shadow=no
@@ -228,6 +234,7 @@
 		$(multilib_native_use_enable kmod)
 		$(use_enable lz4)
 		$(use_enable lzma xz)
+		$(multilib_native_use_enable man manpages)
 		$(multilib_native_use_enable nat libiptc)
 		$(multilib_native_use_enable pam)
 		$(multilib_native_use_enable policykit polkit)
@@ -248,11 +255,19 @@
 		EFI_CC="$(tc-getCC)"

 		# dbus paths
-		--with-dbuspolicydir="${EPREFIX}/etc/dbus-1/system.d"
+		--with-dbuspolicydir="${EPREFIX}/usr/share/dbus-1/system.d"
 		--with-dbussessionservicedir="${EPREFIX}/usr/share/dbus-1/services"
 		--with-dbussystemservicedir="${EPREFIX}/usr/share/dbus-1/system-services"

-		--with-ntp-servers="0.gentoo.pool.ntp.org 1.gentoo.pool.ntp.org 2.gentoo.pool.ntp.org 3.gentoo.pool.ntp.org"
+		--with-ntp-servers="0.coreos.pool.ntp.org 1.coreos.pool.ntp.org 2.coreos.pool.ntp.org 3.coreos.pool.ntp.org"
+
+		# The CoreOS epoch, Mon Jul  1 00:00:00 UTC 2013. Used by timesyncd
+		# as a sanity check for the minimum acceptable time. Explicitly set
+		# to avoid using the current build time.
+		--with-time-epoch=1372636800
+
+		# no default name servers
+		--with-dns-servers=
 	)

 	if ! multilib_is_native_abi; then
@@ -324,38 +339,81 @@
 }

 multilib_src_install_all() {
+	local unitdir=$(systemd_get_unitdir)
+
 	prune_libtool_files --modules
 	einstalldocs

 	if use sysv-utils; then
+		local prefix
+		use symlink-usr && prefix=/usr
 		for app in halt poweroff reboot runlevel shutdown telinit; do
-			dosym "..${ROOTPREFIX-/usr}/bin/systemctl" /sbin/${app}
+			dosym "${ROOTPREFIX-/usr}/bin/systemctl" ${prefix}/sbin/${app}
 		done
-		dosym "..${ROOTPREFIX-/usr}/lib/systemd/systemd" /sbin/init
-	else
+		dosym "${ROOTPREFIX-/usr}/lib/systemd/systemd" ${prefix}/sbin/init
+	elif use man; then
 		# we just keep sysvinit tools, so no need for the mans
 		rm "${D}"/usr/share/man/man8/{halt,poweroff,reboot,runlevel,shutdown,telinit}.8 \
 			|| die
 		rm "${D}"/usr/share/man/man1/init.1 || die
 	fi

-	# Disable storing coredumps in journald, bug #433457
-	mv "${D}"/usr/lib/sysctl.d/50-coredump.conf{,.disabled} || die
-
-	# Preserve empty dirs in /etc & /var, bug #437008
-	keepdir /etc/binfmt.d /etc/modules-load.d /etc/tmpfiles.d \
-		/etc/systemd/ntp-units.d /etc/systemd/user /var/lib/systemd \
-		/var/log/journal/remote
-
-	# Symlink /etc/sysctl.conf for easy migration.
-	dosym ../sysctl.conf /etc/sysctl.d/99-sysctl.conf
-
-	# If we install these symlinks, there is no way for the sysadmin to remove them
-	# permanently.
-	rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-networkd.service || die
-	rm "${D}"/etc/systemd/system/multi-user.target.wants/systemd-resolved.service || die
-	rm -r "${D}"/etc/systemd/system/network-online.target.wants || die
-	rm -r "${D}"/etc/systemd/system/sysinit.target.wants || die
+	# Ensure journal directory has correct ownership/mode in inital image.
+	# This is fixed by systemd-tmpfiles *but* journald starts before that
+	# and will create the journal if the filesystem is already read-write.
+	# Conveniently the systemd Makefile sets this up completely wrong.
+	dodir /var/log/journal
+	fowners root:systemd-journal /var/log/journal
+	fperms 2755 /var/log/journal
+
+	systemd_dotmpfilesd "${FILESDIR}"/systemd-coreos.conf
+	systemd_dotmpfilesd "${FILESDIR}"/systemd-resolv.conf
+
+	# Don't default to graphical.target
+	rm "${D}${unitdir}"/default.target || die
+	dosym multi-user.target "${unitdir}"/default.target
+
+	# Move a few services enabled in /etc to /usr, delete files individually
+	# so builds fail if systemd adds any new unexpected stuff to /etc
+	local f
+	for f in \
+		getty.target.wants/getty@tty1.service \
+		multi-user.target.wants/remote-fs.target \
+		multi-user.target.wants/systemd-networkd.service \
+		multi-user.target.wants/systemd-resolved.service \
+		network-online.target.wants/systemd-networkd-wait-online.service \
+		sockets.target.wants/systemd-networkd.socket \
+		sysinit.target.wants/systemd-timesyncd.service
+	do
+		local s="${f#*/}" t="${f%/*}"
+		local u="${s/@*.service/@.service}"
+
+		# systemd_enable_service doesn't understand template units
+		einfo "Enabling ${s} via ${t}"
+		dodir "${unitdir}/${t}"
+		dosym "../${u}" "${unitdir}/${t}/${s}"
+
+		rm "${D}/etc/systemd/system/${f}" || die
+	done
+	rmdir "${D}"/etc/systemd/system/*.wants || die
+
+	# Grant networkd access to set the transient host name
+	insinto /usr/share/polkit-1/rules.d
+	doins "${FILESDIR}"/99-org.freedesktop.hostname1.rules
+
+	# Do not enable random services if /etc was detected as empty!!!
+	rm "${D}"/usr/lib/systemd/system-preset/90-systemd.preset
+	insinto /usr/lib/systemd/system-preset
+	doins "${FILESDIR}"/99-default.preset
+
+	# Disable the "First Boot Wizard" by default, it isn't very applicable to CoreOS
+	rm "${D}${unitdir}"/sysinit.target.wants/systemd-firstboot.service
+
+	# Do not ship distro-specific files (nsswitch.conf pam.d)
+	rm -rf "${D}"/usr/share/factory
+	sed -i "${D}"/usr/lib/tmpfiles.d/etc.conf \
+		-e '/^C \/etc\/nsswitch\.conf/d' \
+		-e '/^C \/etc\/pam\.d/d'
 }

 migrate_locale() {
```
2015-07-11 12:42:39 -07:00
mischief
6b2134a2fd app-admin/fleet: bump to v0.11.1 2015-07-10 13:25:39 -07:00
Sam Tresler
037dba3664 Packet OEM 2015-07-10 11:31:16 -04:00