I’m going to use this entry to describe a few things that I’ve done to configure my MacBook Pro (Snow Leopard 10.6.8) for scientific computing. I hope that somebody finds this information useful and is able to use it to set-up his/her computer in less time than it took me to configure mine.
- Port Authority 6 1 – Gui For Macports Package Management Systems
- Port Authority 6 1 – Gui For Macports Package Management System Layout
- Port Authority 6 1 – Gui For Macports Package Management System Windows 10
But first, a little personal history …
PortAuthority 7.9.0. Graphical user interface for the MacPorts package management system for Mac OS X that offers you t. May 18th 2018, 10:27 GMT. PortAuthority provides a graphical user interface for the MacPorts package management system for Mac OS X. MacPorts is a powerful command-line tool for installing and updating a variety of Unix-based applications for the Mac. The aim of the MacPorts project is to develop a second-generation system for the building, installation and management of third party software. MacPorts is probably best described by comparison.
My family didn’t have a computer in our home when I was growing up. I did have a couple of class sessions in high school that centered on computers but I can’t remember if I actually got to touch a computer in those classes. My first real exposure to a warm, glowing computer didn’t come until the mid-80s when I left for college and finally got my hands on the campus UNIX workstations. Shortly thereafter I used my first Mac. Since then I’ve also played a little with some Linux boxes and I’ve even run some FORTRAN code on the old Cray Y-MP . But I’ve never really done much with Windows. I’m actually pretty embarrassed to admit that because it pretty much renders me technologically irrelevant in today’s “fast-paced business and office environment”. Oh well …
Anyway … Why do I say all this? It is just my long-winded way of saying that I’m a Mac person and, to a much lesser extent, a Linux person. It isn’t because I think that Microsoft products aren’t good. It is because my first computer experiences were with UNIX and I just feel more comfortable with UNIX or UNIX-like systems … like Mac OSX and Linux. And I think that there are a lot of great scientific and numerical tools out there for science-y types who choose to use Apple products.
Soooo … when I talk about computers or software on this blog it will most likely be about Macs. And if it isn’t about Macs, then it will be about the the Linux software that I run on my Mac using my Parallels Desktop virtual machine.
Now back to the topic at hand. Here is what I did to trick out my Mac.
I. I installed Xcode (available here).
Xcode is Apple’s proprietary Integrated Development Environment (IDE) for developing software for Apple’s products. It includes an editor and debugger for generating and perfecting code. Most importantly, it includes an Apple-modified (optimized? patched?) version of the GNU Compiler Collection, which supports compilation of programs written in C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, FORTRAN and Ruby. Xcode is essential!
II. I installed MacPorts (homepage here, installation here) and explored their site to see their selection of open source (and free!) software. Lots of great scientific software here!
MacPorts is a package management system for Mac OS X open source software. MacPorts not only automates the installation (and configuring anduninstallation) of Mac software, it also makes sure that all prerequisite software is installed on a system before it installs any given piece of software. Furthermore, it makes sure that you don’t accidentally uninstall a software package if you have remaining programs that depend on it.
MacPorts says it best: “The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the Mac OS X operating system. To that end we provide the command-line driven MacPorts software package under a BSD License, and through it easy access to thousands of ports that greatly simplify the task of compiling and installing open-source software on your Mac. … There are currently 15844 ports in our tree, distributed among 98 different categories, and more are being added on a regular basis.”
III. I joined SourceForge.net, which is an excellent supplement to MacPorts.
From the SourceForge.net site: “SourceForge is dedicated to making open source projects successful. We thrive on community collaboration to help us create the leading resource for open source software development and distribution. With the tools we provide, 3.4 million developers create powerful software in over 324,000 projects. Our popular directory connects more than 46 million consumers with these open source projects and serves more than 4,000,000 downloads a day. SourceForge is where open source happens.”
I then installed the following ports from MacPorts:
1. Python 2.7
Port Authority 6 1 – Gui For Macports Package Management Systems
Version 3.0 is actually out right now, but I’ve seen comments online from people who have stayed with older versions of Python because they aren’t sure if 3.0 will play well with other software packages that they are already using. So I have decided to stay with 2.7 for peace of mind. If you have Macports installed, then you can get Python 2.7 by typing in a terminal window
# sudo port install python27
2. Various Python extensions and libraries, including
a. iPython (py27-ipython): an enhanced Interactive Python shell:
# sudo port install py27-ipython +notebook +parallel +scientific
b. Scientific Python (py27-scipy): a library of scientific tools for Python
# sudo port install py27-scipy +gcc45
c. matplotlib (py27-matplotlib): matlab-like syntax for creating plots in python
# sudo port install py27-matplotlib +tkinter
d. Numerical Python (py27-numpy): a powerful set of numerical routines
# sudo port install py27-numpy
3. The GNU compiler collection, which is often a later version than the one provided by Apple in Xcodes.
# sudo port install gcc47
4. GIMP and ImageMagick
These are GUI-based (GIMP) and command line based (ImageMagick) image editing tools. They are far better than a poor person’s PhotoShop. If your projects require image analysis, then you will find these tools to be very useful.
# sudo port install gimp2 +help_browse +python27
# sudo port install ImageMagick +q16
5. Git and the GitX gui.
Git is one of the most widely used version control software packages. Version control packages allow a user to keep track of the changes and updates that he or she has applied to a project. That project can be just about anything — a software project that is updated and developed, or a novel, or a dissertation that is being written and/or revised — anything. Git tracks the changes as they are being made, and it allows the user to view the project as it existed at any intermediate stage of its development. GitX is a Git graphical interface.
# sudo port install git-core +bash_completion +credential_osxkeychain +doc +gitweb +pcre +python27 +svn
# sudo port install GitX +finder_integration
Copyclip 2 9 1 – clipboard manager. I also installed the following scientific and programming software from various sources:
![Macports Macports](https://img.magimg.com/uploads/portauthority.jpg)
1. GnuOctave: From the GNU site — “GNU Octave is a high-level language, primarily intended for numerical computations.” I haven’t been able to get the MacPorts build for Snow Leopard 10.6.8 to compile correctly, so I downloaded the SourceForge binary from here.
2. R: R is a language and environment for statistical computing and graphics. You can find R at The R-Project.
Port Authority 6 1 – Gui For Macports Package Management System Layout
3. Sage: From the Sage site — “Sage is a free open-source mathematics software system licensed under the GPL. It combines the power of many existing open-source packages into a common Python-based interface.” I’ll confess that I haven’t had the chance to do much with Sage just yet, but it does seem to bundle together a lot of the software that I already use.
4. Defense zone 2 1 6 2. Eclipse: Eclipse is an open source Integrated Development Environment (IDE) available from the Eclipse Foundation. You can download the Eclipse binary here.
5. EAGLE: If you believe that you’re going to end up designing your own printed circuit boards, then you should consider installing the free (though limited) version of Cadsoft EAGLE, which appears to be the most widely used PCB layout/design tool among electronics hobbyists. I’m still pretty new to EAGLE and I’ve found that its learning curve isn’t nearly as steep as I thought it was going to be. You can download the EAGLE binary here.
6. Arduino IDE: From the Arduino site — “The open-source Arduino environment makes it easy to write code and upload it to the i/o board. It runs on Windows, Mac OS X, and Linux.” Since I plan to tinker with the Arduino microcontroller, I decided to install the Arduino IDE. You can find it here.
7. Fritzing: From the Fritzing site — “Fritzing is an open-source hardware initiative to support designers, artists, researchers and hobbyists to work creatively with interactive electronics. We are creating a software tool, a community website and services in the spirit of Processing and Arduino, fostering an ecosystem that allows users to document their prototypes, share them with others, teach electronics in a classroom, and layout and manufacture professional pcbs.” I think that I’ll stick with EAGLE for circuit board design. However, Fritzing does produce very nice and intuitive breadboard schematics that even beginners should find very easy to understand. Read about Fritzing here and download it here.
8. Skim: Skim is a PDF reader that makes it easy to annotate PDF files. It is great for annotating scientific papers, and it integrates seamlessly with TeX/LaTeX/BibDesk. Download it from SourceForge here.
Finally, I installed the TeX/LaTeX typsetting package MacTeX, which includes just about every resource that you need to typeset scientific documents.
That’s it, for now. I’m sure that eventually I’ll have more software to add to this list.
Total 126 Port(s) in Category: archivers
Page 1 of 2 | Showing ports 1 to 100Port Authority 6 1 – Gui For Macports Package Management System Windows 10
Name | Version | Description |
---|---|---|
9e | 1.0 | Plan 9 unarchiver |
advancecomp | 2.1 | recompression utilities for .PNG, .MNG, .ZIP and .GZ files |
advancescan | 1.18 | command line rom manager for many emulators |
afio | 2.5.1 | Archiver & backup program with builtin compression |
arc | 5.21p | create and extract files from dos .arc archives |
arj | 3.10.22 | create and extract files from dos .arj archives |
atool | 0.39.0 | An archival front-end |
blosc | 1.20.1 | A blocking, shuffling and loss-less compression library. |
brotli | 1.0.9 | Brotli compression format |
brunsli | 0.1 | Brunsli is a lossless JPEG repacking library. |
bzip2 | 1.0.8 | compression library and tools |
cabextract | 1.9.1 | Extract files from Microsoft cabinet files |
cpio | 2.13 | copies files into or out of a cpio or tar archives |
dact | 0.8.42 | dynamic adaptive compression tool |
dar | 2.6.12 | Disk Archiver |
deb2targz | 20021217 | converts .deb packages to .tar.gz archives |
deco | 1.6.4 | file extraction framework |
deco-archive | 1.7 | provides support for popular archive formats to deco |
dpkg | 1.20.5 | Debian package maintenance system |
dtrx | 7.1 | extracts archives in a number of different formats |
dynamite | 0.1.1 | decompress data compressed with the PKWARE library |
dzip | 2.9 | file compression tool |
ecm | 1.0 | CD image file error code modeler |
edelta | 0.10b | EDelta is a fast XDelta-style binary differ |
fastjar | 0.94 | fast implementation of Sun's jar utility in C |
gnutar | 1.32 | GNU version of the tar archiving utility |
gzip | 1.10 | gnu replacement utility for unix compress |
gzrecover | 0.8 | attempts to extract bad gzip archives |
ha | 0.999 | The 'HA' archiver, based on arithmetic/Markov coder. |
hffzip | 1.01 | HFFzip is a file compressor based upon Huffman coding. |
hfstar | 1.13.19 | gnutar with HFS+ support |
innoextract | 1.8 | A tool to unpack installers created by Inno Setup |
javatar | 2.5 | java package that allows you to create and extract tar archives |
keka | 0.1.4.3 | 7-Zip GUI for Mac |
lbzip2 | 2.5 | lbzip2 - parallel bzip2 compression utility |
lcab | 1.0b12 | Linux CABinet file creator |
lha | 1.14i-ac20081023 | Utility for creating and opening lzh archives |
libaec | 1.0.4 | Adaptive Entropy Coding library |
libarchive | 3.4.3 | functions for reading and writing streaming archives |
libarxx | 0.7.9 | C++ library for using ARX archives |
libpar2 | 0.2 | libpar2 is a library for par2. |
libunrar | 5.9.4 | unrar library |
libzip | 1.7.3 | libzip is a C library for reading, creating, and modifying zip archives. |
libzzip | 0.13.69 | library providing read access on ZIP-archives |
lrzip | 0.631 | Long Range ZIP or Lzma RZIP |
lunzip | 1.11 | Decompressor for lzip files |
lz4 | 1.9.2 | Extremely Fast Compression algorithm |
lzfse | 1.0 | compression library and command line tool |
lzip | 1.21 | Compression program based on LZMA similar to gzip or bzip2 |
lzma | 4.65 | high compression ratio archiver |
lzo2 | 2.10 | Real-time data compression library |
makepak | 0.0.2 | Quake I/II .PAK Archiving Utility |
makeself | 2.2.0 | A small shell script that generates a self-extractable archives |
mgzip | 1.2c | a multi-processor capable .gz file creator. |
minizip | 1.2.11 | Minizip zip file manipulation library |
minizip2 | 2.9.1 | Minizip2 zip file manipulation library |
ncompress | 4.2.4.6 | fast, simple LZW file compressor |
ota | 20190807 | iOS OTA/PBZX expander/unpacker/lister/searcher |
p7zip | 16.02 | 7-Zip implementation |
packddir | 0.0.6-1 | creates and unpacks PackdDir archives |
paq8 | 8p | PAQ8, a tight but slow compressor |
par2 | 0.4 | Parchive: Parity Archive Volume Set for data recovery |
pbzip2 | 1.1.13 | parallel bzip2 |
pbzx | 20180319 | utility to decode pbzx streams in xip files |
php52-zip | 1.16.1 | PHP zip functions |
php53-zip | 1.16.1 | PHP zip functions |
php54-zip | 1.19.1 | PHP zip functions |
php55-zip | 1.19.1 | PHP zip functions |
php56-zip | 1.19.1 | PHP zip functions |
php70-zip | 1.19.1 | PHP zip functions |
php71-zip | 1.19.1 | PHP zip functions |
php72-zip | 1.19.1 | PHP zip functions |
php73-zip | 1.19.1 | PHP zip functions |
php74-zip | 1.19.1 | PHP zip functions |
php-zip | 1.19.1 | PHP zip functions |
pigz | 2.4 | parallel gzip |
pixz | 1.0.7 | Pixz (pronounced 'pixie') is a parallel, indexing version of XZ |
ppmd | 20050811 | A fast archiver with a good compression ratio |
py27-brotli | 1.0.9 | Python module for brotli compression format |
py27-liblzma | 0.5.3 | Python bindings for the XZ Utils compression library. |
py27-pylzma | 0.5.0 | Python bindings for the LZMA compression library. |
py35-pylzma | 0.5.0 | Python bindings for the LZMA compression library. |
py36-brotli | 1.0.9 | Python module for brotli compression format |
py36-pylzma | 0.5.0 | Python bindings for the LZMA compression library. |
py37-brotli | 1.0.9 | Python module for brotli compression format |
py37-pylzma | 0.5.0 | Python bindings for the LZMA compression library. |
py38-brotli | 1.0.9 | Python module for brotli compression format |
py-brotli | 1.0.9 | Python module for brotli compression format |
py-liblzma | 0.5.3 | Python bindings for the XZ Utils compression library. |
py-pylzma | 0.5.0 | Python bindings for the LZMA compression library. |
quazip | 0.9.1 | Qt/C++ wrapper over minizip |
rb-archive-tar-minitar | 0.5.2 | Ruby library and command line utility to deal with POSIX tar archive files. |
rb-zip | 0.5.7 | rubyzip is a ruby module for reading and writing zip files |
rpm | 4.4.9 | The RPM package management system. |
rpm54 | 5.4.15 | The RPM package management system. |
rzip | 2.1 | Compression program similar to gzip or bzip2 |
sharutils | 4.10 | Shell archiver utilities |
shorten | 3.6.1 | Fast compression for waveform files |
slimdata | 2.7.1 | Fast data compression for scientific data. |
smart | 1.4.1 | Automatic updater and package installer/remover |
- «
- 1 (current)