**Installing MacPorts on Ubuntu Linux** ---- MacPorts has been designed to be multi-platform, and it does install on Ubuntu Linux with modest modifications. Please note that at this point in time, this is a highly experimental process, and issues are expected to arise. First, some quick notes for those familiar with Darwin; on Ubuntu: apt is the built-in package manager, similar to "port". "sudo apt install" is similar to "sudo port install". "apt info" is similar to "port info" "apt-file show" does something similar to "port contents", but the software does not have to be installed. "dpkg -S /path/to/file" does something similar to "port provides" ** Note: there has been a conflict noted with {{{libmd-dev}}} when installing base; just disable that temporarily to install MacPorts. There could be other conflicts not yet discovered. ** To install MacPorts on Ubuntu Linux, you must first install the necessary prerequisites that are typically found on Darwin systems. At the time of writing, this was: {{{ sudo apt install clang-14 sudo apt install clang sudo apt install mtree-netbsd sudo apt install tcl8.6 sudo apt install curl sudo apt install sqlite3 sudo apt install gnustep sudo apt install libcurl4-gnutls-dev sudo apt install libsqlite3-dev sudo apt install libssl-dev }}} or, all at once: {{{ sudo apt install clang-14 clang mtree-netbsd tcl8.6 curl sqlite3 gnustep libcurl4-gnutls-dev libsqlite3-dev libssl-dev }}} Then download the macports tarball from macports.org, perhaps using the included FireFox browser, and decompress it, as per the usual Darwin instructions . I suggest that you don't install startup items at this point in time, as this functionality is different on Ubuntu, so configure your build like this: {{{ ./configure --without-startupitems }}} and then {{{ make && sudo make install }}} Then add the "macports" user, in the Ubuntu way: {{{ sudo adduser --system --group --home /opt/local/var/macports/home --disabled-password macports sudo chown -R macports:macports /opt/local/var/macports/home }}} Add the macports directory to your PATH as usual, but on Ubuntu, by editing ".bashrc", for example with {{{nano}}}, adding a line like this: {{{ export PATH=/opt/local/bin:/opt/local/sbin:$PATH }}} Also add that PATH to the sudo command's path, like this: {{{ sudo visudo }}} and add it to the secure_path {{{ Defaults secure_path="/opt/local/bin:/opt/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" }}} There are some differences between Darwin and Ubuntu, and to work around some of these that are not already compensated for by MacPorts base, set some defaults in {{{macports.conf}}} like this: {{{ sudo gedit /opt/local/etc/macports/macports.conf }}} and add: {{{ default_compilers clang # compiler selection is not yet working on Ubuntu, this chooses /usr/bin/clang which works best with macport's portfiles cxx_stdlib libstdc++ # configure.cxx_stdlib is not yet working on Ubuntu, this fills in appropriate default }}} Darwin and Ubuntu supply 'sed' and 'grep' in different locations, so rather than edit many Portfiles that expect it in the Darwin location, you can do this: {{{ sudo ln -s /bin/sed /usr/bin/sed sudo ln -s /bin/grep /usr/bin/grep }}} And at that point, you should be able to run normal MacPorts commands. {{{ sudo port -v selfupdate }}} will update your ports tree to the current status. And then try to install a typical port, like this: {{{ sudo port -v install libffi }}} And presto: {{{ $ port -v installed The following ports are currently installed: libffi @3.2.1_0 (active) platform='linux 5' archs='x86_64' date='2020-05-02T23:25:44-0700 }}} You can certainly expect to come across issues; MacPorts' PortFiles have largely been written to assume they are installing on Darwin, but with minor modifications to some ports, seem happy with Linux as well.