MacOS dev box setup - which tools to install? [closed] - macos

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm about to rebuild my Macbook - new SSD, upgrade to Lion, etc. I have a bunch of great tools installed now that make me very productive ... vim w/ config settings, ack, Homebrew, Node.js, underscore-cli, etc.
I'm starting this question partly so that I can record the setup steps and tools that I myself add back. But I also want to open it up to the community... What tools do you use on your dev box? What utilities and customizations do you find indispensable?

Obviously the first thing I'd put on is Xcode. Now that Xcode is a self contained app the "Command Line Tools for Xcode" are a must have. These can be downloaded from within Xcode using the following menu item, Xcode -> Open Developer Tools -> More Developer Tools.
CodeRunner is very handy for quickly trying stuff out in a number of different languages.
Dash is fantastic for quickly accessing API documentation for a number of different languages. It is also a snippet manager.
otx and class-dump are useful tools for debugging.
F-script for getting inside other OS X applications.
Perlbrew makes running multiple versions of perl simple.
Slender makes managing images in iOS apps easier by telling you which resolutions you are missing etc.
I'm sure there are many more things that I use that I've not thought of.

The Basics
Chrome - needs no introduction
Iterm2 - far better terminal program than the built-in version. Supports panes and tabs and a bunch of other nice features.
Ack - a superior version of grep - highlights matches, recursive by default, etc. This is my goto tool for finding stuff in sourcecode.
Homebrew:
The installation one-liner:
/usr/bin/ruby -e "$(/usr/bin/curl -fksSL https://raw.github.com/mxcl/homebrew/master/Library/Contributions/install_homebrew.rb)"
Then you need build tools (gcc, etc). You can install these through XCode (the "normal" way), or by using osx-gcc-installer.
XCode is a massive 4.7G download, but it's a requirement for iOS development so I need it anyways.
With XCode: App Store Link, then open XCode and go to Preferences -> Download -> Install Command-line-tools
Without XCode:
If you don't need the full XCode GUI, the osx-gcc-installer is a DMG installer for just the command-line tools. It's much smaller and quicker to get going. Also doesn't require an Apple Developer account.
My Brews:
ack curl git-subtree gnu-tar jpeg node xmlto
asciidoc docbook gnu-getopt imagemagick libtiff pkg-config xz
coreutils gettext gnu-sed jasper little-cms wget
Vim
PCKeyboard hack (CapsLock --> ESC): http://pqrs.org/macosx/keyremap4macbook/extra.html
https://github.com/ddopson/home
Node.js
http://nodejs.org/#download
See my other post
underscore-cli - great tool for parsing and processing JSON data
jshint - more configurable version of JSLint

Related

How to install Haskell on Mac

I am trying to install Haskell on Mac, and doing it as instructed on Haskell site Haskell site.
When I run the script from above website on terminal, it says to install "ghcup", "ghc" and "cabal". However, it seems that it installs "ghcup" successfully, but an error occurs when it comes to install "ghc".
Error: ghc: unknown version :lion
how can I fix this? or, is there another way to install Haskell on Mac?
(I saw similar posts but they are too old)
You seem to be running macOS Lion, which is ancient, insecure, and no longer supported by Apple. As such, most modern software isn't tested for compatibility with it anymore, and a lot of it won't work. Upgrading to a modern version of macOS such as Catalina will make it work.
There are different options to get a working Haskell development environment on your Mac. The most popular seem to be
Haskell Platform
Install via homebrew
The Haskell Tool Stack
Of course, you can also install most tools individually by hand or compile everything from source.
Together with the type of installation, you need to choose how to build your projects: Using Cabal or Stack.
My personal preferences as a beginner is Stack, because (a) the entire Haskell tool stack is installed locally for each project, so you don't get into problems with conflicting versions of certain tools; (b) dependencies are curated, such that you do not need to deal with incompatible versions of libraries. From a beginner's perspective, it is very helpful that I can focus on actual development work and less on infrastructure and tooling.

Good IDE for Corona SDK on OSX? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Just started with Corona SDK and could not find any IDE with proper Corona SDK integration. Can someone list down some good IDEs for working with Corona SDK on OSX.
Here's what I've tried:
BBEdit: and its really cool (has autocomplete and fairly nice
syntax highlighting) but its a text editor and not exactly an IDE. I
can't see all the non lua files (like .png files), lack of
integrated terminal and debugger etc.
Textmate : The visually "most complete" solution I could find for Mac, as of solutions available right now. Its snippets and pseudo-autocomplete are right now the best I could find. Am using this one as my IDE. But would really appreciate something more where basic things like split-views are supported.
IntelliJ IDEA (community edition) : Superb IDE if only I could figure out how to
configure for corona simulator on OSX. It works perfect for Windows
Corona SDK but sadly, for OSX, no such luck.
Eclipse ... yikes!!. Never really liked that IDE (a personal
dislike from some Perl projects where it just wont locate some
specific Perl libraries properly.. that's really a discussion for
another day) but again its latest version does not seem to have
Corona SDK support.
Does anyone have any idea/suggestions. Also, any tips to make Corona SDK work with IntelliJ IDEA (on OSX) will be most welcome.
Shameless plug, but you may try ZeroBrane Studio. Starting from the version 0.34 it includes Corona debugging and auto-complete support. Some people have used it on OSX and have been happy with it. Keep in mind that debugging support for Corona is limited on OSX due to constraints in the Corona Simulator (no loadstring support which prevents remote console and watches from working). ZeroBrane Studio v0.361 and later includes full support for OSX debugging.

Recommendations for a Windows based make tool [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Does anyone have any recommendations for a good, fast, make tool? SCons? KJam? Something else?
Cross platform tools would also be acceptable.
GNU make is fast, but the native Windows-port is not very polished; there are a lot of pitfal regarding things like which shell is used to execute your commands. (Search for "MS-DOS" in the GNU make manual.)
SCons works very well on Windows. SCons had (last time I looked) some serious performance issues on large projects (thousands of files and upwards), but that was a couple of years ago.
CMake is an excellent tool if you want to work in Visual Studio but still stay crossplatform and allow other development tools on other platform. Can also generate makefiles for windows, so you're not bound to Visual Studio.
Whatever you may think of Ant, it is not a replacement for Make. That's like saying that a SUV is a replacement for a Formula 1 car. They are entirely different beasts. Ant is good for some things, and make for others.
There is a relatively new tool called premake which you may want to investigate. It looked promisiing when I looked, but I haven't checked it out in any detail.
On a PC is said in your title, so I assume you mean Windows? If so, I would recommend installing the Cygwin environment and if you install all the packages along with it, GNU's make is part of the deal. If you are on a Linux platform or one of the Unix variants, then you can just go with the GNU make directly.
You may be interested in cross-platform tools like Ant, Rake, Gant. These should give you most, if not all the functionality of GNU make, though compiling C code may be harder in some than other.
I've recently started using BJam. It is cross-platform and has a saner syntax than make.
If you're on Windows and you have the .Net Framework, you can use MSBuild. It's very similar to nAnt, and also has a lot of support from the community (some very detailed community toolkits are out there). It has a somewhat steep learning curve, but it's quite powerful once you get the hang of it.
Also another option could be writing PowerShell scripts. It depends what you want to do I guess. In my limited experience with makefiles, they've usually be to compile something, or set environment conditions, which you would use batch files for on a Windows platform.
If you need to build C-language based projects, take a look at rtEasyMake at www.routinetools.com. It is windows based and very easy to setup.

Setting up a Mac for programmers [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I recently switched over to a MacBook Pro so I'm still really new at Mac software ecosystem. What is the best guide or what tips do you have to quickly get adept at using Mac for developing on both Mac/Unix and MS platforms (*.NET, SharePoint, SQL Server, etc) using VMWare Fusion? For example, I've setup NetBeans, FlexBuilder, Eclipse, TextMate, VMWare Fusion, OpenOffice, FireFox, dragged Terminal.app to my dock, upgraded the Ruby installation and related gems and so on... Things I've not done but looking at (based on other's experiences) include QuickSilver (is it all that different than SpotLight?), MacPorts (or Fink?), getting started with iPhone, Android, and so on. You can tell from my inexperience that I don't know what the best ways of doing things are yet, and don't want to get in the habit of just installing things and then leave files and stuff laying around slowing the system down. If you have any really cool tips about setting up a developer's Mac please share them!
Update: The nature of my job is I'm always working with new/different technologies, some Windows/MS based, some not, and with the Mac (and Fusion) even the MS based stuff is more enjoyable to me.
I'd highly recommend MacPorts - you can quickly and easily install new packages with a simple
sudo port install package-name
Instead of having to deal with browsing a website to find the distribution, download a disk image, and run an installer, or downloading a tarball and untarring it, running a configure script, and running make, etc.
Find some cash and invest in extra memory for your mac. I know it's probably not the tip you want to hear, but honestly, it'll save you frustration in the long run. Apple ships these babies with way less memory than they deserve, and charges an arm and a leg for an expansion. I had a Mac Pro (quad-core Xeon) crawl to a halt until I got some real memory in there.
Another tip is to get a decent keyboard and mouse. Don't trust Steve Jobs with that "single mouse key for everything" crap. It works for ichat, not for real programming. Get yourself a real keyboard and a real mouse with multiple buttons. Configure your middle scrollwheel button to open expose or whatever it is that shows you all windows. Configure your fourth button for magnification.
Also, from your description it sounds like you don't really know what it is that you want to develop. If you're doing mac-specific things, get used to XCode ASAP and lose the rest. If you want to be doing windows programming, not sure why you would use a mac. If you want Java, you have Eclipse, you're ready to go.
Install all the Mac dev stuff, XCode etc., so you get the compilers.
For sure, Macports. Look through their catalog and install all the usual packages you're used to from Linux or other systems -- including development-related stuff like flex/bison, emacs, doxygen, m4, perl, python, etc.
I prefer "iTerm" over the built-in terminal. Don't forget to "export COMMAND_MODE=unix2003" that makes a number of things work the way you're used to.
I haven't given URLs for any of the things I've mentioned. That's what Google is for.
First, install XCode. This gives you the Mac OS X development environment, but most importantly it also installs GCC so you can build both your own projects and applications that are distributed as source code. After that I'd suggest checking out TextMate, a popular text editor for Mac OS X (as seen in the Rails screencasts). If you're an Emacs/Vim user, there's Aquamacs and MacVim.
Invest in a good text editor. See the following questions:
https://stackoverflow.com/questions/100084/what-is-a-good-gui-text-editor-for-the-mac
Mac text/code editor
And by 'invest' I mean both money and/or learning time.
XCode is a good enough editor for Objective-C, but I wouldn't use it as my primary editor for everything.
(MacVim is my choice)
Install the latest version of Xcode (you will need this even if your not developing macintosh/iphone applications)
Install macports for most of your OSS tools (you'll need Xcode first)
To run tools that aren't OSS or are windows only install virtualbox I know there are alernatives (VM fusion is highly rated) but virtual box is free
Install an IDE if you do not want to use Xcode as your IDE (for example eclipse and netbeans)
Finally if you have some cash
Upgrade the ram if required (sw developers love ram especially if you are running a vm :) )
A second display, I can't imagine developing with less than two displays
I did the same in August this year, I bought a Macbook Pro (the small of them but with 200Gb 7200rpm and 4Gb of RAM), and I can tell you about my experience.
I'm a .NET developer and been ASP programmer for more than 10 years, so all I did was Microsoft related, never ever, aparat of installing and playing with Ubuntu, I had experience in the Linux world.
But my mind was on the iPhone SDK development and I even paid my inscription on the iPhone developer Program, all was lovely, I just loved my new Mac! But... Mac programming is a hobby for me, and believe me, Fusion, and even with my 4Gb and placed 2Gb for each OS, does not move as better as in a "normal" laptop, so after 4 month of struggling I formatted my laptop and created a Bootcamp partition (WOW, now I can use it for Windows!) and Fusion can run that Boot camp partition like a Virtual Machine image, and that is good for little times that I need to do something quick.
What you refer and as Uri mention, I don't thing that you know what you are going to do, having a "bunch" of apps in the laptop does say that, because, all you needed is Eclipse for everything else and XCode 3.1 with the SDK for Mac related apps, nothing more!
I was like you, but I realized that I didn't open any other programs that those 2, and except for compiling Objective-C code, was the Mac your better choice?
Instead of vmware fusion, virtualbox.org is free and worth a look.
My choice for a great all-around text editor would be TextWrangler.
Make sure you install Developer Tools (XCode) from your OS disc (and don't try and install GNU version over the top of it :P).
You've already done everything I have, except I'm using Virtual Box instead of VMWare.
I've found OpenOffice to be very slow compared to the actual Microsoft Office for Mac. If you have some budget, I'd recommend that over OpenOffice.
I can second the recommendation for QuickSilver - it's one of the best launchers I've used.
For IM clients, if you have contacts outside of the AIM network then you may want to try Adium - a free multi-IM-network chat client that has handy things like searchable transcripts.
Another general utility that I highly recommend is iStat menus - it gives you a realtime monitor of CPU, memory, disk, etc. right in your menu bar.
QuickSilver is a very good option and yes, it is a bit different from Spotlight due to the large number of plugins you can have. If you have NetBeans, maybe you don't need Eclipse. I'd even say that with TextMate (my editor of choice too), you don't need NetBeans either :)
I second MacPorts, it is more up to date than fink and closer to the FreeBSD ports system (where I come from).
Install Windows using Boot Camp. You can then dual boot between OSX and Windows, use windows as normal for MS development, and OSX for your other non MS stuff.

What are the preferred versions of Vim and Emacs on Mac OS X? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
For those of us that like to use the graphical version of Vim or Emacs, instead of the console version, which version do you recommend?
For Vim, there's Mac OS X Vim, MacVim, Vim-Cocoa.
For Emacs, CarbonEmacs, XEmacs, and Aquamacs.
Are there more? Which of these are ready for prime-time? If it's a tough call, what are the trade-offs? Are all of these still being maintained?
No discussion of Vim versus Emacs, if you don't mind, or comparisons with other editors.
MacVim works well and certainly looks more mature than Vim-Cocoa, moreover there is a Cocoa plugin architecture in the pipeline for MacVim (and someone is already working on a TextMate style file browser tray plugin which is a huge ++ IMHO).
There was also a Carbon version of Vim, but this didn't offer a great deal over the Terminal version. i.e. only allowed one window open, not very OSX in appearance...
Aquamacs is very usable and looks pretty good. Supports both traditional Mac OS style keyboard shortcuts (command-O, command-S) and the Control/Meta shortcuts for those raised on traditional Emacs. It is definitely more Mac-like than Carbon Emacs. It seems stable and fast, but I am not an Emacs guru so I don't stress it all that much when I use it. I can't speak to the extensiveness of the included elisp packages, either.
Someone syncs Carbon Emacs with the upstream tree quarterly I think. Aquamacs has a more irregular schedule, but it's seen some pretty major updates over the last year.
GNU Emacs for OSX can be found at emacsformacosx.com. In addition to the latest stable release, there are also pre-release test builds and nightly builds, and Atom feeds are provided for tracking all three release types.
I've tried Aquamacs and it's very usable and looks pretty good. Supports both traditional Mac OS style keyboard shortcuts (command-O, command-S) and the Control/Meta shortcuts for those raised on traditional Emacs. It is definitely more Mac-like than Carbon Emacs. It seems stable and fast, but I am not an Emacs guru so I don't stress it all that much when I use it. I can't speak to the extensiveness of the included ellipse packages, either.
Someone syncs Carbon Emacs with the upstream tree quarterly I think. Aquamacs has a more irregular schedule, but it's seen some pretty major updates over the last year.
I just download the Emacs source from the GNU site and build it myself. I don't like too many Mac-specific features, because I want Emacs behavior to be consistent on all the platforms I use.
I like the Nextstep-derived Emacs.app formerly at http://emacs-app.sourceforge.net/ now integrated in Emacs-23 CVS (as of August 2008).
Emacs.app feels more zippy than Aquamacs to me but its just bare CVS-Emacs and doesn't come with the same amount of stuff (you have to install your own AucTeX etc.).
Personally, I've been using fink to install xemacs. It requires X but I've been
using xemacs for so long that I need what it has.
Additionally, I have installed gnu emacs. It's nice because it is a completely
integrated mac os x application with a dock icon and everything. I find it useful
when dragging a file on top of the gnu emacs icon to open it.
Last, I should mention that mac os x uses the emacs keystrokes all over the place.
stuff like ^A for beginning of text, ^E for end of text, ^N next line, ^P previous
line, etc... These work in most text boxes throughout the OS.
I'm using MacVim on Mac OS X. It's very, very nice.
I get all my unixish/GNU support using Fink (which provides Debian-like package control) with the emacs22-carbon package which means I also get a clickable application. It does everything I expect it to do, and automagically starts using emacs extensions loaded with fink.
Good times.
Of the emacsen for Mac OS X, I have to say that after the console version of 22, CarbonEmacs is the most usable. Aquamacs just does too many non-standard, read unexpected, things with configuration. Aquamacs questions generally aren't answered in any sort of timely manner in #emacs on freenode for whatever that is worth. It seem to be held in disdain simply because it does such a terrible job of handling standard configuration options in .emacs.
Some time ago, I was searching for a text editor for my new Mac. Since this was some months ago, some points might have been corrected in the meantime.
I feel that Aquamacs is by far the best OSX-Emacs. However, it feels a bit too Mac-like in some areas. For example, it rather uses several windows instead of several buffers and the coloring schemes are not "normal" Emacs-style.
If you look for a more basic set, Carbon Emacs might do it as well, though you might want to add some additional packages to add PHP support or AucTeX.
Emacs.app feels broken in my opinion. It not even opens files using drag and drop.
I use the CarbonEmacs version on the Macports program. It installs all the dependencies with just one line:
sudo port install emacs
For anyone interested in Macports (www.macports.org)
I love CarbonEmacs because it sticks very close to the standard GNU Emacs distribution, while still fitting in nicely with the Mac desktop. To me, it "felt" like Emacs on my Ubuntu desktop even if it looked like a Mac application.
Emacs 22 has worked pretty well for me.
I prefer Vim built from the Subversion repository. I run it in the console where I don't need to use the mouse while editing.

Resources