<pre style='margin:0'>
Renee Otten (reneeotten) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/881231e85b73161551421f620bd6cb0a2c4b2e33">https://github.com/macports/macports-ports/commit/881231e85b73161551421f620bd6cb0a2c4b2e33</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 881231e85b73161551421f620bd6cb0a2c4b2e33
</span>Author: aeiouaeiouaeiouaeiouaeiouaeiou <aeioudev@outlook.com>
AuthorDate: Mon May 5 04:43:27 2025 +0300
<span style='display:block; white-space:pre;color:#404040;'> fish3: submission
</span>---
shells/fish3/Portfile | 95 +++++++++++++++++++++++++
shells/fish3/files/patch-share_config_fish.diff | 24 +++++++
2 files changed, 119 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/shells/fish3/Portfile b/shells/fish3/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..1ce068e57b8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/shells/fish3/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,95 @@
</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;'>+PortGroup cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup legacysupport 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# fstatat
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+legacysupport.newest_darwin_requires_legacy 13
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup fish-shell fish-shell 3.7.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 ca1d6747e878fbd724f3e800bcaceb224ad33319 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 614c9f5643cd0799df391395fa6bbc3649427bb839722ce3b114d3bbc1a3b250 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 2965756
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name fish3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts fish
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license GPL-2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories shells
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@aeiouaeiouaeiouaeiouaeiouaeiou outlook.com:aeioudev} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description The user-friendly command line shell - legacy version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description fish is a smart and user-friendly command line shell \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for macOS, Linux, and the rest of the family. This \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port is the last version of fish that written in C++. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ It is suitable for bootstrapping or use on systems \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ without Rust installed.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://fishshell.com/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from releases
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname fish-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_xz yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append port:gettext \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path:bin/pkg-config:pkgconfig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib-append port:gettext-runtime \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:ncurses \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:pcre2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles patch-share_config_fish.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|@@PREFIX@@|${prefix}/bin|g" "${worksrcpath}/share/config.fish"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # skip failing tests for now, future updates should try enabling them
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file rename "${worksrcpath}/tests/checks/sigint.fish" "${worksrcpath}/tests/checks/sigint.fish.skip"
</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;'>+compiler.cxx_standard 2011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.thread_local_storage \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# doxygen appears to only regenerate html files and is not needed to install man pages
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append -DBUILD_DOCS=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append -DFISH_USE_SYSTEM_PCRE2=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DMAC_CODESIGN_ID=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin 8 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #/opt/local/var/macports/build/_opt_myports_shells_fish/fish/work/fish-3.0.2/src/env.cpp:436:31: error: invalid conversion from 'char*' to 'int'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.cxxflags-append -D__DARWIN_UNIX03
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_test-append port:bash
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ test.env-append SHELL=${prefix}/bin/bash
</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;'>+depends_test-append port:py313-pexpect
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# other possible options are ansi, dtterm, rxvt, vt52, vt100, vt102, xterm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.env-append TERM=nsterm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-test {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ append portsandbox_profile " (allow process-exec (literal \"/bin/ps\") (with no-profile))"
</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 set MacPorts' ${name} as default login shell, run:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sudo chpass -s ${prefix}/bin/fish \${USER}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+To be able to switch default shells to or from ${name} without superuser\
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+privileges, add it to /etc/shells:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sudo sh -c 'echo ${prefix}/bin/fish >> /etc/shells'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+For X clipboard integration, install the xsel port:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sudo port install xsel
</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;'>+livecheck.type none
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/shells/fish3/files/patch-share_config_fish.diff b/shells/fish3/files/patch-share_config_fish.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..f6c1e75cd47
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/shells/fish3/files/patch-share_config_fish.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,24 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- share/config.fish.orig
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ share/config.fish
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -86,6 +86,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set -a fish_complete_path $__fish_data_dir/completions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# MacPorts specific PATH setting, move ${prefix}/bin at PATH's head
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set MP_PREFIX @@PREFIX@@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if contains $MP_PREFIX $PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set -e MP_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ for path_component in $PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if test $path_component != @@PREFIX@@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set MP_PATH $MP_PATH $path_component
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set MP_PATH $MP_PREFIX $MP_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set PATH $MP_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ set -e MP_PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++end
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set -e MP_PREFIX
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Add a handler for when fish_user_path changes, so we can apply the same changes to PATH
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ function __fish_reconstruct_path -d "Update PATH when fish_user_paths changes" --on-variable fish_user_paths
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Deduplicate $fish_user_paths
</span></pre><pre style='margin:0'>
</pre>