svn commit: r516443 - in head/sysutils/google-compute-engine-oslogin: . files

Raphael Kubo da Costa rakuco at FreeBSD.org
Sun Nov 3 16:59:42 UTC 2019


Author: rakuco
Date: Sun Nov  3 16:59:39 2019
New Revision: 516443
URL: https://svnweb.freebsd.org/changeset/ports/516443

Log:
  Update to 20191018.00.
  
  Follow-up to bug 238561, which did not fully fix the port.
  
  Major changes in the package:
  - Upstream moved to another github repo
  - Upstream versioning numbering changed to dates
  
  The patches that area included were already sent upstream.
  
  The only missing feature is the usage of oslogin in the group database that is
  not working (it causes "sudo su" with an oslogin user to stall). But this
  wans't present in the last version, so it is left disabled for now until we
  have a better solution.
  
  PR:		238561
  PR:		238560
  Submitted by:	Helen Koike <helen.koike at collabora.com>
  Tested by:	Helen Koike <helen.koike at collabora.com>
  MFH:		2019Q4

Added:
  head/sysutils/google-compute-engine-oslogin/files/patch-google__oslogin__control   (contents, props changed)
  head/sysutils/google-compute-engine-oslogin/files/patch-src_Makefile   (contents, props changed)
  head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__cache__oslogin.c   (contents, props changed)
  head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__oslogin.cc   (contents, props changed)
Deleted:
  head/sysutils/google-compute-engine-oslogin/files/patch-bin_google__oslogin__control
Modified:
  head/sysutils/google-compute-engine-oslogin/Makefile
  head/sysutils/google-compute-engine-oslogin/distinfo
  head/sysutils/google-compute-engine-oslogin/pkg-descr
  head/sysutils/google-compute-engine-oslogin/pkg-plist

Modified: head/sysutils/google-compute-engine-oslogin/Makefile
==============================================================================
--- head/sysutils/google-compute-engine-oslogin/Makefile	Sun Nov  3 16:47:10 2019	(r516442)
+++ head/sysutils/google-compute-engine-oslogin/Makefile	Sun Nov  3 16:59:39 2019	(r516443)
@@ -1,15 +1,14 @@
 # $FreeBSD$
 
 PORTNAME=	google-compute-engine-oslogin
-DISTVERSION=	1.5.3
-PORTREVISION=	2
+DISTVERSION=	20191018.00
 CATEGORIES=	sysutils
 
 MAINTAINER=	ports at FreeBSD.org
 COMMENT=	OS Login Guest Environment for Google Compute Engine
 
 LICENSE=	APACHE20
-LICENSE_FILE=	${WRKSRC}/../../LICENSE
+LICENSE_FILE=	${WRKSRC}/packaging/debian/copyright
 
 LIB_DEPENDS=	libcurl.so:ftp/curl \
 		libjson-c.so:devel/json-c
@@ -20,31 +19,25 @@ USES=		compiler:c++11-lang gmake localbase:ldflags
 USE_LDCONFIG=	yes
 USE_GITHUB=	yes
 GH_ACCOUNT=	GoogleCloudPlatform
-GH_PROJECT=	compute-image-packages
-GH_TAGNAME=	20190522
+GH_PROJECT=	guest-oslogin
+GH_TAGNAME=	5a710bb
 
-MAKE_ARGS=	JSON_INCLUDE_PATH=${LOCALBASE}/include/json-c \
-		BIN_INSTALL_PATH=/bin \
-		PAM_INSTALL_PATH=/lib \
-		AUTHKEYS_INSTALL_PATH=/bin \
-		NSS_LIBRARY_SONAME=nss_oslogin.so.1
+PLIST_SUB+=	DISTVERSION=${DISTVERSION}
 
-WRKSRC_SUBDIR=	packages/google-compute-engine-oslogin
+MAKE_ARGS=	CPPFLAGS="-Iinclude -I${LOCALBASE}/include/json-c -I${LOCALBASE}/include" \
+		LDLIBS="-lcurl -ljson-c -L${LOCALBASE}/lib" \
+		DESTDIR=${STAGEDIR}${PREFIX} \
+		PREFIX=${PREFIX} \
+		LIBDIR=${PREFIX}/lib \
+		PAMDIR=${PREFIX}/lib \
+		MANDIR=${PREFIX}/man
 
-PLIST_SUB=	DISTVERSION=${DISTVERSION}
-
-post-patch:
-	@${REINPLACE_CMD} -e 's!%%PREFIX%%!${PREFIX}!' \
-		${WRKSRC}/bin/google_oslogin_control \
-		${WRKSRC}/libnss_cache_oslogin/nss_cache_oslogin.c \
-		${WRKSRC}/nss_cache/nss_cache.cc
-
 post-install:
-	${LN} -sf libnss_${PORTNAME}-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_oslogin.so.1
-	${LN} -sf libnss_cache_${PORTNAME}-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_cache_oslogin.so.1
+	${LN} -sf libnss_oslogin-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_oslogin.so.1
+	${LN} -sf libnss_cache_oslogin-${DISTVERSION}.so ${STAGEDIR}${PREFIX}/lib/nss_cache_oslogin.so.1
 	${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/google_authorized_keys \
-		${STAGEDIR}${PREFIX}/lib/libnss_google-compute-engine-oslogin-${DISTVERSION}.so \
-		${STAGEDIR}${PREFIX}/lib/libnss_cache_google-compute-engine-oslogin-${DISTVERSION}.so \
+		${STAGEDIR}${PREFIX}/lib/libnss_oslogin-${DISTVERSION}.so \
+		${STAGEDIR}${PREFIX}/lib/libnss_cache_oslogin-${DISTVERSION}.so \
 		${STAGEDIR}${PREFIX}/lib/pam_oslogin_admin.so \
 		${STAGEDIR}${PREFIX}/lib/pam_oslogin_login.so
 

Modified: head/sysutils/google-compute-engine-oslogin/distinfo
==============================================================================
--- head/sysutils/google-compute-engine-oslogin/distinfo	Sun Nov  3 16:47:10 2019	(r516442)
+++ head/sysutils/google-compute-engine-oslogin/distinfo	Sun Nov  3 16:59:39 2019	(r516443)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1559044433
-SHA256 (GoogleCloudPlatform-compute-image-packages-1.5.3-20190522_GH0.tar.gz) = 8cfb338c3c768ea7e76e479728a1438b2f10b0df13bddd70c9fbcbfc1273efd6
-SIZE (GoogleCloudPlatform-compute-image-packages-1.5.3-20190522_GH0.tar.gz) = 132314
+TIMESTAMP = 1571819820
+SHA256 (GoogleCloudPlatform-guest-oslogin-20191018.00-5a710bb_GH0.tar.gz) = e2416461d61b1f4a81cf13a883ea2922271d09882c951eec61c1d3ca398c927e
+SIZE (GoogleCloudPlatform-guest-oslogin-20191018.00-5a710bb_GH0.tar.gz) = 36556

Added: head/sysutils/google-compute-engine-oslogin/files/patch-google__oslogin__control
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/google-compute-engine-oslogin/files/patch-google__oslogin__control	Sun Nov  3 16:59:39 2019	(r516443)
@@ -0,0 +1,21 @@
+--- google_oslogin_control.orig	2019-10-18 20:10:43 UTC
++++ google_oslogin_control
+@@ -39,7 +39,8 @@ modify_nsswitch_conf() {
+ 
+   if ! grep -q '^passwd:.*oslogin' "$nss_config"; then
+     $sed -i"" '/^passwd:/ s/$/ cache_oslogin oslogin/' "$nss_config"
+-    $sed -i"" '/^group:/ s/$/ cache_oslogin oslogin/' "$nss_config"
++    # OsLogin for group database is still not supported for FreeBSD
++    # $sed -i"" '/^group:/ s/$/ cache_oslogin oslogin/' "$nss_config"
+   fi
+ 
+   if is_freebsd && grep -q '^passwd:.*compat' "$nss_config"; then
+@@ -51,7 +52,7 @@ restore_nsswitch_conf() {
+   local nss_config="${1:-${nss_config}}"
+ 
+   $sed -i"" '/^passwd:/ s/ cache_oslogin oslogin//' "$nss_config"
+-  $sed -i"" '/^group:/ s/ cache_oslogin oslogin//' "$nss_config"
++  # $sed -i"" '/^group:/ s/ cache_oslogin oslogin//' "$nss_config"
+   if is_freebsd; then
+     $sed -i"" '/^passwd:/ s/files/compat/' "$nss_config"
+   fi

Added: head/sysutils/google-compute-engine-oslogin/files/patch-src_Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/google-compute-engine-oslogin/files/patch-src_Makefile	Sun Nov  3 16:59:39 2019	(r516443)
@@ -0,0 +1,29 @@
+--- src/Makefile.orig	2019-10-23 08:18:46 UTC
++++ src/Makefile
+@@ -70,17 +70,21 @@ install: all
+ 	install -d $(DESTDIR)$(PAMDIR)
+ 	install -d $(DESTDIR)$(BINDIR)
+ 	install -d $(DESTDIR)$(MANDIR)/man8
+-	install -m 0644 -t $(DESTDIR)$(LIBDIR) $(NSS_OSLOGIN) $(NSS_CACHE_OSLOGIN)
++	install -m 0644 $(NSS_CACHE_OSLOGIN) $(DESTDIR)$(LIBDIR)
++	install -m 0644 $(NSS_OSLOGIN) $(DESTDIR)$(LIBDIR)
+ 	ln -sf $(NSS_OSLOGIN)         $(DESTDIR)$(LIBDIR)/$(NSS_OSLOGIN_SONAME)
+ 	ln -sf $(NSS_CACHE_OSLOGIN)   $(DESTDIR)$(LIBDIR)/$(NSS_CACHE_OSLOGIN_SONAME)
+-	install -m 0644 -t $(DESTDIR)$(PAMDIR) $(PAM_ADMIN) $(PAM_LOGIN)
+-	install -m 0755 -t $(DESTDIR)$(BINDIR) $(BINARIES) $(TOPDIR)/google_oslogin_control
+-	install -m 0644 -t $(DESTDIR)$(MANDIR)/man8 $(TOPDIR)/man/nss-oslogin.8 $(TOPDIR)/man/nss-cache-oslogin.8
++	install -m 0644 $(PAM_LOGIN) $(DESTDIR)$(PAMDIR)
++	install -m 0644 $(PAM_ADMIN) $(DESTDIR)$(PAMDIR)
++	install -m 0755 $(TOPDIR)/google_oslogin_control $(DESTDIR)$(BINDIR)
++	install -m 0755 $(BINARIES) $(DESTDIR)$(BINDIR)
++	install -m 0644 $(TOPDIR)/man/nss-cache-oslogin.8 $(DESTDIR)$(MANDIR)/man8
++	install -m 0644 $(TOPDIR)/man/nss-oslogin.8 $(DESTDIR)$(MANDIR)/man8
+ 	gzip -9 $(DESTDIR)$(MANDIR)/man8/nss-oslogin.8
+ 	gzip -9 $(DESTDIR)$(MANDIR)/man8/nss-cache-oslogin.8
+ 	ln -sf nss-oslogin.8.gz       $(DESTDIR)$(MANDIR)/man8/$(NSS_OSLOGIN_SONAME).8.gz
+ 	ln -sf nss-cache-oslogin.8.gz $(DESTDIR)$(MANDIR)/man8/$(NSS_CACHE_OSLOGIN_SONAME).8.gz
+ ifdef INSTALL_SELINUX
+ 	install -d $(DESTDIR)/usr/share/selinux/packages
+-	install -m 0644 -t $(DESTDIR)/usr/share/selinux/packages $(TOPDIR)/selinux/oslogin.pp
++	install -m 0644 $(TOPDIR)/selinux/oslogin.pp $(DESTDIR)/usr/share/selinux/packages
+ endif

Added: head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__cache__oslogin.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__cache__oslogin.c	Sun Nov  3 16:59:39 2019	(r516443)
@@ -0,0 +1,11 @@
+--- src/nss/nss_cache_oslogin.c.orig	2019-10-23 07:01:45 UTC
++++ src/nss/nss_cache_oslogin.c
+@@ -439,7 +439,7 @@ DECLARE_NSS_METHOD_TABLE(methods,
+     { NSDB_PASSWD, "getgrent_r", __nss_compat_getgrent_r,
+       (void*)_nss_cache_oslogin_getgrent_r },
+     { NSDB_PASSWD, "endgrent",   __nss_compat_endgrent,
+-      (void*)_nss_cache_oslogin_endgrent },
++      (void*)_nss_cache_endgrent },
+     { NSDB_PASSWD, "setgrent",   __nss_compat_setgrent,
+       (void*)_nss_cache_oslogin_setgrent },
+ )

Added: head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__oslogin.cc
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/google-compute-engine-oslogin/files/patch-src_nss_nss__oslogin.cc	Sun Nov  3 16:59:39 2019	(r516443)
@@ -0,0 +1,11 @@
+--- src/nss/nss_oslogin.cc.orig	2019-10-23 06:43:42 UTC
++++ src/nss/nss_oslogin.cc
+@@ -225,7 +225,7 @@ enum nss_status _nss_oslogin_initgroups_dyn(const char
+   if (p_file == NULL)
+     return NSS_STATUS_NOTFOUND;
+   struct passwd *userp;
+-  while ((userp = fgetpwent(p_file)) != NULL)
++  while ((userp = getpwent()) != NULL)
+     if (strcmp(userp->pw_name, user) == 0)
+       return NSS_STATUS_NOTFOUND;
+   fclose(p_file);

Modified: head/sysutils/google-compute-engine-oslogin/pkg-descr
==============================================================================
--- head/sysutils/google-compute-engine-oslogin/pkg-descr	Sun Nov  3 16:47:10 2019	(r516442)
+++ head/sysutils/google-compute-engine-oslogin/pkg-descr	Sun Nov  3 16:59:39 2019	(r516443)
@@ -16,4 +16,4 @@ installing these components:
 
 - bin contains a shell script for (de)activating the package components.
 
-WWW: https://github.com/GoogleCloudPlatform/compute-image-packages/tree/master/packages/google-compute-engine-oslogin
+WWW: https://github.com/GoogleCloudPlatform/guest-oslogin

Modified: head/sysutils/google-compute-engine-oslogin/pkg-plist
==============================================================================
--- head/sysutils/google-compute-engine-oslogin/pkg-plist	Sun Nov  3 16:47:10 2019	(r516442)
+++ head/sysutils/google-compute-engine-oslogin/pkg-plist	Sun Nov  3 16:59:39 2019	(r516443)
@@ -1,9 +1,15 @@
 bin/google_authorized_keys
 bin/google_oslogin_control
 bin/google_oslogin_nss_cache
-lib/libnss_cache_google-compute-engine-oslogin-%%DISTVERSION%%.so
-lib/libnss_google-compute-engine-oslogin-%%DISTVERSION%%.so
-lib/nss_oslogin.so.1
+lib/libnss_cache_oslogin-%%DISTVERSION%%.so
+lib/libnss_cache_oslogin.so.2
+lib/libnss_oslogin-%%DISTVERSION%%.so
+lib/libnss_oslogin.so.2
 lib/nss_cache_oslogin.so.1
+lib/nss_oslogin.so.1
 lib/pam_oslogin_admin.so
 lib/pam_oslogin_login.so
+man/man8/libnss_cache_oslogin.so.2.8.gz
+man/man8/libnss_oslogin.so.2.8.gz
+man/man8/nss-cache-oslogin.8.gz
+man/man8/nss-oslogin.8.gz


More information about the svn-ports-all mailing list