Mono.framework is missing on my mac ... but it's... there? - macos

Please help me interwebs.
I'm having trouble getting my xamarin app to work. I've done a reinstall of Mac OS X and installed Xamarin using the installer, which adds mono and all the rest of it.
Now when I open up terminal and type which mono i get
/Library/Frameworks/Mono.framework/Versions/Current/Commands/mono
...which is what I expect.
But when I navigate to that place (again in terminal) there's nothing there.
From my root folder I go "cd System/Library/Frameworks " and then hit ls and I get a looooong list of installed frameworks but no Mono.framework.
If I go to Apple > About this Mac > System Report > Frameworks Mono IS listed. I can execute Mono commands on the command line. If I look in paths.d the specified path for mono is /Library/Frameworks/Mono.framework/Versions/Current/Commands/mono but I can't find that location so how is it even a thing?
My linux skills are not great, can anyone please help me understand what's going on here?

I think you are looking in the 'wrong' Library folder. There are a few different Library folders. There is one under the Disk Drive (root) directory, one under the User directory, one under the System directory. I think they are all hidden by default. So you need to set your folder/view options explicitly to show the Library folder since it might be hidden by default. The directory you are looking for is directly under you Disk Drive (root).

Related

MacOS: where to install global application data with r/w access

To where a pkg installer package on MacOS should install global application data ? All users of this specific system as well as the app itself should have read and write access to this data. Atm I install it to /Library/Application Support/"mycompany"/"MyApp" and modify the permissions. Is this a good practise for all MacOS versions ?
Thank you !
EDIT:
Meanwhile I have tested to r/w access files in this directory on Sierra and Mojave. It works like a charm when I set the permissions in my custom library folder recursively with chmod -R 777 (well, less would be enough).
BTW I do this with a batch post installation shell script in the packages app here. It's a great UI based app (instead of using a bunch of command line tools). Building the pkg can be automated by a single command line: /usr/local/bin/packagesbuild /path/to/the/project.pkgproj, so integration into a flawless workflow is easy.
Yes. The only change I'm aware of related to this was in 10.7 when Apple changed the /Library folder to a hidden directory. (unlisted in finder unless specified) The path remains unchanged.
https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/MacOSXDirectories/MacOSXDirectories.html

How To Find $EXIST_HOME in eXist-db

I am trying to edit my config file, which I am told is located at $EXIST_HOME/conf.xml. However, when I type $EXIST_HOME into my terminal nothing happens, and I have no idea where to look for the file in my file system. I am using OSX, and installed eXist using the standalone GUI, and was not asked where to install files at setup.
How can I get to the config file?
$EXIST_HOME is just used to represent wherever you installed eXist to. On many Linux/Unix based systems (including Mac OS X) it is recommended to set this environment variable in your profile to the location where you installed eXist. If you do not, when you try to start eXist it will try and self-determine this from the location of its binaries.
If you installed eXist from the .dmg file which is provided for Mac OS X users, then you can drag and drop eXist to wherever you wish, however typically this would be /Applications/eXist-db.
If you installed eXist from the .jar installer by running java -jar eXist-db-setup-2.2.jar or double-clicking the Jar file (if your computer is configured to execute Jar files), then the second screen of the installer prompts you for the location to install eXist to. The default location set for Mac OS X is /Applications/eXist-db.
So if you didn't change the defaults, your $EXIST_HOME would be /Applications/eXist-db.
On OS X, as adamretter correctly states, the default installation directory when using the Exist-DB installation disk image (.dmg) is /Applications/eXist-db. However, when you navigate to the /Applications/eXist-db folder and click on the exist-db icon, as if to open the directory for further browsing, all that happens is that the Exist-DB server starts. Less experienced Mac users might not realise that you have to right-click with the mouse on the Exist-DB icon in the Applications folder and choose 'Show Package Contents' from the menu in order to view the directories that sit beneath it.
The config.xml file can be found at:
/Applications/eXist-db.app/Contents/Resources/etc/config.xml
P.S. Don't forget to make a backup copy before you start editing :)

Are there any portable versions of Git for Mac OSX?

I'd like to be able to do some development work on public/borrowed computers (where I have no root privileges) and I've managed to get most of my tools working off of a USB stick but I still haven't found a Git solution.
The portable versions of Git that I have found are Windows-only. Do you know of any Mac alternatives?
EDIT: I've gotten a few suggestions to just copy my current installation of git from /usr/bin and put that on a USB drive. That's a great idea but I don't have a current installation of git to copy from. I won't have my own computer back for a couple of weeks.
Would you happen to know where I could grab a pre-compiled version of git for OSX? I don't have access to homebrew or... anything really. Ideally I could just grab a zip file from somewhere and dump it on my USB stick.
I've managed to put together a solution based on ideas from several different people (thanks to all of you):
Download the Git binary for Mac OSX from git-scm.com. The downloaded DMG contains a PKG file.
Unpack the PKG file with unpkg or something similar. (This step is necessary because normally PKG files can only be installed with root privileges.)
Drop the etc and git folders that were just unpacked onto your USB stick.
Now, whenever you plug in your USB stick, just make sure to put the location of the git directory on your PATH (like this: export PATH=$PATH:/path/to/git/on/usb/stick) and you'll be good to go!
NOTE: I've tested many of the git commands using this method and most seem to work without any issues. However, git init will complain like this: warning: templates not found /usr/local/git/share/git-core/templates. Not surprising since the templates are actually on your USB stick and not /usr/local. Despite this warning my repos seem to be working just fine.
Add a environmental variable GIT_TEMPLATE_DIR
to quote the documentation
The template directory contains files and directories that will be
copied to the $GIT_DIR after it is created.
The template directory will be one of the following (in order):
the argument given with the --template option;
the contents of the $GIT_TEMPLATE_DIR environment variable;
the init.templatedir configuration variable; or
the default template directory: /usr/share/git-core/templates.
I've uploaded my /usr/bin/git and /usr/bin/git-shell to
http://www.club.cc.cmu.edu/~ajo/disseminate/git
http://www.club.cc.cmu.edu/~ajo/disseminate/git-shell
You can try those, but I have no idea if this approach is likely to work. (There are no interesting shared-library dependencies reported by otool -L, but I don't know what else might theoretically go wrong with the idea.)
FWIW, I use Mac OS X 10.8.2 and git version 1.7.10.2 (Apple Git-33).
Not sure if this is appropriate as an "answer", since I don't plan to leave those links working indefinitely. Maybe I (or someone) can delete this answer in a month or two.
Apple's command line tools for developers include git, I believe. You can find them on http://developer.apple.com/; you might need a free developer account. They package will want to install to /usr/bin etc., but you should be able to use pax to extract the contents wherever you want.

Installer for a simple Mac OS command-line tool?

How can I build a novice-usable (clickable download) installer for a Mac OS X command-line tool, and where should the binary be installed so that a novice user with no knowledge of shell paths can just open the Terminal app and type "foo" to run the freshly installed foo tool?
Can the installer also install documentation so that the user can type "man foo"?
Are there any other options that should be considered to make the use of a pure command-line (stdin, stdout) tool accessible to a novice Mac user?
What's the minimum version of OS X you're targeting? 10.6 (and IIRC 10.5) include /usr/local/bin in the default PATH, but 10.4 did not. As long as you don't need to support 10.4, you should just put the executable in /usr/local/bin and the man page in /usr/local/share/man/man1 (or whatever the appropriate chapter number is).
For building the installer itself, you can use Apple's PackageMaker utility (part of Xcode). Create a prototype local folder with bin and share/man/man1 subfolders and populate them with your files. Create a package project in PackageMaker, and choose your organization name and minimum target OS. Drag the prototype folder into the project's Contents sidebar. Set the Destination to /usr/local. Switch to the Contents tab and edit the ownership and permissions the files should be installed with (the owner/group should probably all be root/admin, with rwxrwxr-x perms on the folders and executable, rw-rw-r-- on the man page). If any irrelevant files (e.g. .DS_Store) snuck in, exclude them. Look around for any other settings you want to change, then save the project and build the installer. Then test it, to make sure it does what you expect.

How can I uninstall NetBeans on a mac?

I currently have NetBeans 6.5 installed on my mac running leopard.
I searched Google on how to uninstall it and the NetBeans website says to right click on it, select "Show Package Contents" and the uninstaller should be there, but it isn't.
How can I completely uninstall NetBeans in this situation?
Thanks!
Compiled List
Here is a list of the nooks and crannies where you need to find and delete files and folders. I compiled this list from the multiple sources listed on this page.
My list here was true for me in Mountain Lion 10.8.5 with NetBeans 8.0.2. Of course things may change in the future or past.
Some may not be necessary for some upgrades between versions of NetBeans. But if you want a truly fresh install, here you go.
You could write a shell script to do this deleting. But I just do it by hand as this Spring-cleaning is not a regular occurrence.
I suggest making a back-up copy of each of your projects before doing an upgrade of NetBeans.
Home folder
Some hidden folders may appear directly in your home folder. The . as first letter hides the file/folder by default. To permanently show such files/folders in the Finder, read this or this.
~/.netbeans-derby
In later versions of Mac OS X, the Library folder is hidden from your home folder. Also not displayed on the Go menu. To expose, hold down the Option key while choosing Go. A Library menu item appears, about in the middle of the menu.
~/Library/Application Support/NetBeans/
~/Library/Caches/NetBeans/7.4
Root folder
/Applications/NetBeans
/private/var/db/receipts/org.netbeans.*
Note that NetBeans leaves some hidden configuration directories in your home directory. You might want to delete those too:
.asadminpass and .asadmintruststore - directories that contain stuff for Glassfish (Java EE application server)
.netbeans and .netbeans-registration - NetBeans configuration directories
.nbprofiler - something from the NetBeans profiler
In a terminal window, you can list all files and directories (including hidden ones) with ls -la, and you can delete them with for example rm -rf .netbeans (BE CAREFUL with that last command, it deletes stuff so that you can't get it back).
The instructions on this page say that dragging the Netbeans application out of the Applications folder and into the Trash is sufficient.
Barry Brown's answer is correct; I would add how this is handled by NetBeans. If you look under the NetBeans installation directory, then under bin, you will see a shell script named "netbeans," which locates your JDK installation when NetBeans is started.
There are third party "Uninstaller" utilities for Mac, but dragging an application from "Applictions" to the trash bin is typically how application removal is done.
I think you can uninstall it the same way it is done on Ubuntu as explained in this sample post.
I'm not a Mac user myself, so I may be wrong but it's worth posting this here in case there are Linux users in the house.
Very helpful but if like me you get stuck with a blank 7.1 project because none of the settings ever import it could be that like me you are upgrading a mac osx from 7.0rc1 or 7.0rc2.
To fix this or just re-update your settings.
Open Telnet session.
cd /Users/{user}/. netbeans
ls
I had this...
my-MBP:.netbeans {my}$ ls
6.9 7.0rc2 7.1
my-MBP:.netbeans {my}$
I then removed the duff 7.1 settings and manually moved in the 7.0 settings with
rm -R 7.1
cp -rf 7.0rc2 7.1
When opening up NetBeans next time it will take 2-10 minutes to fully rescan & reindex all but works perfectly after this.
HTH
Simon.

Resources