<pre style='margin:0'>
Dan Villiom Podlaski Christiansen (danchr) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/3ba9b35157c620daeb2d9db7d0151d5e128055ec">https://github.com/macports/macports-ports/commit/3ba9b35157c620daeb2d9db7d0151d5e128055ec</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 3ba9b35157c doas: add port
</span>3ba9b35157c is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 3ba9b35157c620daeb2d9db7d0151d5e128055ec
</span>Author: Dan Villiom Podlaski Christiansen <danchr@macports.org>
AuthorDate: Thu Jan 28 02:55:11 2021 +0100

<span style='display:block; white-space:pre;color:#404040;'>    doas: add port
</span>---
 sysutils/doas/Portfile                      | 78 +++++++++++++++++++++++++++++
 sysutils/doas/files/doas.conf.dist          |  6 +++
 sysutils/doas/files/patch-use-sudo-pam.diff | 11 ++++
 3 files changed, 95 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/doas/Portfile b/sysutils/doas/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..050d8b2e130
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/doas/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,78 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        slicer69 doas 6.3p4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          sysutils security
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             BSD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {danchr @danchr}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         Run a command as another user
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    The doas utility is a program originally written for OpenBSD \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    which allows a user to run a command as though they were another \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    user. Typically doas is used to allow non-privileged users to \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    run commands as though they were the root user. The doas program \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    acts as an alternative to sudo, which is a popular method for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    granting admin access to specific users.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms           darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  005f6ec49387f21d050162c3bd5c0de3b8bddd8d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  56faaf38977c43eea4b254ce01447211e60fcce292b69e981dade939318b357b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    29884
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_configure       no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the "sudo" pam specification is available by default, so reuse it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles         patch-use-sudo-pam.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    PREFIX=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    CC="${configure.cc} ${configure.universal_cflags}" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    YACC=${prefix}/bin/byacc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build      port:byacc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace s,/usr/local,${prefix},g \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/Makefile \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/vidoas \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/doas.h \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/doas.conf.5
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if { [getuid] != 0 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "------------------------------------------------------------"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "Installing doas as non-root doesn't really do anything"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "useful, so be sure to install doas as root"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ui_msg "------------------------------------------------------------"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -d -m 0755 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/share/doc/doas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${filespath}/doas.conf.dist \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/doas.conf.sample \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/share/doc/doas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![file exists ${prefix}/etc/doas.conf]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        copy \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${prefix}/share/doc/doas/doas.conf.dist \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            ${prefix}/etc/doas.conf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+notes "
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+To complete the installation, run:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+\t${prefix}/bin/doas ${prefix}/sbin/vidoas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Edit as necessary. (See the doas.conf manpage for additional information.)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+"
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/doas/files/doas.conf.dist b/sysutils/doas/files/doas.conf.dist
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..761fea63141
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/doas/files/doas.conf.dist
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Sample file for doas
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Please see doas.conf manual page for information on setting
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# up a doas.conf file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Permit members of the admin group to perform actions as root.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+permit :admin
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/sysutils/doas/files/patch-use-sudo-pam.diff b/sysutils/doas/files/patch-use-sudo-pam.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..7d0445e424d
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/sysutils/doas/files/patch-use-sudo-pam.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,11 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- doas.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ doas.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -443,7 +443,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   err(1, "dup2");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /* #endif */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          pam_err = pam_start("doas", myname, &pamc, &pamh);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          pam_err = pam_start("sudo", myname, &pamc, &pamh);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           if (pam_err != PAM_SUCCESS) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   if (pamh != NULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                           PAM_END("pam_start");
</span></pre><pre style='margin:0'>

</pre>