<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/6934b0ab3b0be5792589343829bc44e76df9941e">https://github.com/macports/macports-ports/commit/6934b0ab3b0be5792589343829bc44e76df9941e</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 6934b0ab3b0 ipsw: new port (3.1.456)
</span>6934b0ab3b0 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 6934b0ab3b0be5792589343829bc44e76df9941e
</span>Author: Keto <therealketo@gmail.com>
AuthorDate: Mon Mar 18 19:35:00 2024 -0400
<span style='display:block; white-space:pre;color:#404040;'> ipsw: new port (3.1.456)
</span>---
security/ipsw/Portfile | 65 +++++++++++++++++++++++++++++
security/ipsw/files/reproducible-build.diff | 47 +++++++++++++++++++++
2 files changed, 112 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/ipsw/Portfile b/security/ipsw/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..f19130be31d
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/ipsw/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,65 @@
</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 golang 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+go.setup github.com/blacktop/ipsw 3.1.456 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories security devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license MIT
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms {darwin >= 11}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+installs_libs no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@TheRealKeto gmail.com:therealketo} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description iOS/macOS Research Swiss Army Knife
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description {*}${description}. Everything you need to start \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ researching Apple security and internals.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 4080714c4c112f4a959f0bd470e230eae8cf0fda \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 0e5a54d8e526186d8b904d1cdaec5930c6f92d89497754bb1aaefac43014bc58 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 4028544
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patch.pre_args -p1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles reproducible-build.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Vendored libraries cause failure, fetch them at build time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+go.offline_build no
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args-append -ldflags \"-s -w\" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -ldflags \"-X ${go.package}/cmd/ipsw/cmd.AppVersion=${version}\"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.post_args-append ./cmd/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-build {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Generate shell completions for supported shells
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach shell {zsh bash fish} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system -W ${worksrcpath} "./${name} completion ${shell} > ipsw.${shell}"
</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;'>+ # Generate individual command manpages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${worksrcpath}/man
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "${worksrcpath}/${name} man ${worksrcpath}/man"
</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;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 755 ${worksrcpath}/${name} ${destroot}${prefix}/bin/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file copy {*}[glob ${worksrcpath}/man/*.1] \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/man/man1/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/zsh/site-functions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 ${worksrcpath}/${name}.zsh \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/zsh/site-functions/_${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/bash-completion/completions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 ${worksrcpath}/${name}.bash \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/bash-completion/completions/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/fish/vendor_completion.d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 ${worksrcpath}/${name}.fish \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/fish/vendor_completion.d
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 644 -W ${worksrcpath} LICENSE README.md \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ${destroot}${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/ipsw/files/reproducible-build.diff b/security/ipsw/files/reproducible-build.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..23fa21041dc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/ipsw/files/reproducible-build.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,47 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff -urN a/cmd/ipsw/cmd/class_dump.go b/cmd/ipsw/cmd/class_dump.go
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/cmd/ipsw/cmd/class_dump.go 2024-03-05 21:03:07.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/cmd/ipsw/cmd/class_dump.go 2024-03-18 23:19:42.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -132,7 +132,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Headers: viper.GetBool("class-dump.headers"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ObjcRefs: viper.GetBool("class-dump.refs"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Deps: viper.GetBool("class-dump.deps"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- IpswVersion: fmt.Sprintf("Version: %s, BuildTime: %s", strings.TrimSpace(AppVersion), strings.TrimSpace(AppBuildTime)),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ IpswVersion: fmt.Sprintf("Version: %s", strings.TrimSpace(AppVersion)),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Color: viper.GetBool("color") && !viper.GetBool("no-color"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Theme: viper.GetString("class-dump.theme"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Output: viper.GetString("class-dump.output"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff -urN a/cmd/ipsw/cmd/root.go b/cmd/ipsw/cmd/root.go
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/cmd/ipsw/cmd/root.go 2024-03-05 21:03:07.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/cmd/ipsw/cmd/root.go 2024-03-18 23:07:10.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -50,8 +50,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Verbose bool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // AppVersion stores the plugin's version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AppVersion string
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- // AppBuildTime stores the plugin's build time
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- AppBuildTime string
</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;'>+ // rootCmd represents the base command when called without any subcommands
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff -urN a/cmd/ipsw/cmd/swift_dump.go b/cmd/ipsw/cmd/swift_dump.go
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/cmd/ipsw/cmd/swift_dump.go 2024-03-05 21:03:07.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/cmd/ipsw/cmd/swift_dump.go 2024-03-18 23:14:01.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -121,7 +121,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Interface: viper.GetBool("swift-dump.interface"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Deps: viper.GetBool("swift-dump.deps"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Demangle: doDemangle,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- IpswVersion: fmt.Sprintf("Version: %s, BuildTime: %s", strings.TrimSpace(AppVersion), strings.TrimSpace(AppBuildTime)),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ IpswVersion: fmt.Sprintf("Version: %s", strings.TrimSpace(AppVersion)),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Color: viper.GetBool("color") && !viper.GetBool("no-color"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Theme: viper.GetString("swift-dump.theme"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Output: viper.GetString("swift-dump.output"),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff -urN a/cmd/ipsw/cmd/version.go b/cmd/ipsw/cmd/version.go
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- a/cmd/ipsw/cmd/version.go 2024-03-05 21:03:07.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ b/cmd/ipsw/cmd/version.go 2024-03-18 23:19:53.000000000 +0000
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -38,6 +38,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Aliases: []string{"v"},
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Short: "Print the version number of ipsw",
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Run: func(cmd *cobra.Command, args []string) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- fmt.Printf("Version: %s, BuildTime: %s\n", strings.TrimSpace(AppVersion), strings.TrimSpace(AppBuildTime))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ fmt.Printf("Version: %s\n", strings.TrimSpace(AppVersion))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ },
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span></pre><pre style='margin:0'>
</pre>