A framework is a type of bundle that packages dynamic shared libraries with the resources that the library requires, including files (nibs and images), localized strings, header files, and maybe documentation. The .framework is an Apple structure that contains all of the files that make up a framework. Frameworks are stored in the following location (where the * is the name of an app or framework): /Applications/*contents/Frameworks /Library/*/ /Library/Application Support/*/*.app/Contents/ /Library/Developer/CommandLineTools/ /Library/Developer/ /Library/Frameworks /Library/Printers/ /System/iOSSupport/System/Library/PrivateFrameworks /System/iOSSupport/System/Library/Frameworks /System/Library/CoreServices /System/Library/Frameworks /System/Library/PrivateFrameworks /usr/local/Frameworks If you just browse through these directories, you’ll see so many things you can use in apps. You can easily add an import followed by the name in your view…
-
-
Super-Simple Bash Graphs
The sparkr gem is installed by default in macOS. To use it to produce simple graphs, simply run it followed by a series of integers: sparkr 12 110 250 110 12 The result would be as follows: This is useful for a quick and dirty visualization in scripts. For example, a series of 5, 10, 200 numbers that don’t have that much range where you’re just looking for a simple pattern. Like number of lines in logs, etc. Obviously, you can pay a lot of money for graphing frameworks and very fancy-schmancy tools. This is really just for me in small scripts. Note: sparkr isn’t installed on all Mac systems.…
-
Command Line Fu: Open Hidden Apps In macOS
macOS allows you to launch an app but in a hidden state. To do so, use the open command to open the app and then use the -a flag to specify the path of the app and –hide after the path to the app, as follows: /usr/bin/open -a /Applications/Notes.app --hide
-
Quick and Dirty OpenBSM Auditing In macOS
OpenBSM is a subsystem that has been installed on the Mac for some time. OpenBSM provides that ability to create and read audit logs based on the Common Criteria standards. Audit Logs The quick and easy way to see what OpenBSM is auditing is to cat the /etc/security/audit_control file: cat /etc/security/audit_control The output displays the directory of audit logs, as well as what is currently being audited. By default the configuration is as follows: ## $P4: //depot/projects/trustedbsd/openbsm/etc/audit_control#8 $#dir:/var/auditflags:lo,aaminfree:5naflags:lo,aapolicy:cnt,argvfilesz:2Mexpire-after:10Msuperuser-set-sflags-mask:has_authenticated,has_console_accesssuperuser-clear-sflags-mask:has_authenticated,has_console_accessmember-set-sflags-mask:member-clear-sflags-mask:has_authenticated You can then see all of the files in your audit log, using a standard ls of those ls /var/audit As you can see, the files are then stored with a date/time stamp naming convention. …
-
MacTech: We’re Building Up To Something, But What?
My session from MacTech 2017.
-
Move From Hosting Files From A macOS Server To A macOS Client
Migrating file services from a macOS Server to a macOS Client can be a bit traumatic at first. Mostly because the thought itself can be a bit daunting. But once you get started, it’s pretty simple. Mostly because there’s less to do. And that can be a challenge. While there are ways to hack together solutions for network homes and other more advanced features, if you’re doing that, then you’re missing a key point here. Let’s start by documenting our existing share points. We’ll do this with the serveradmin command and using the settings verb for the sharing service as follows: sudo serveradmin settings sharing Each share is an item…
-
Backup Macs with Carbonite
Carbonite is a great tool for backing up Macs and Windows devices. To install Carbonite, download it from www.carbonite.com. Once downloaded, copy the app to the /Applications directory and open the app. The Carbonite app will then install the components required to support the backup operations and index the drive.Next, you’ll see some basic folders that will be backed up. Check the box for those you want to add to the backup (or do this later) and click the Install button. Click Open Carbonite. Notice that the backup has begun! The only really customer-installable action is to select the directories to be backed up, which is done using the left-hand sidebar. …
-
DNS: Install BIND on macOS
The DNS service in macOS Server was simple to setup and manage. It’s a bit more manual in macOS without macOS Server. The underlying service that provides DNS is Bind. Bind will require a compiler to install, so first make sure you have the Xcode command line tools installed. To download Bind, go to ISC at https://www.isc.org/downloads/. From there, copy the installer locally and extract the tar file. Once that’s extracted, run the configure from within the extracted directory: ./configure --enable-symtable=none --infodir="/usr/share/info" --sysconfdir="/etc" --localstatedir="/var" --enable-atomic="no" --with-gssapi=yes --with-libxml2=no Next, run make: make Then run make install: make install Now download a LaunchDaemon plist (I just stole this from the org.isc.named.plist on a…
-
Migrate From macOS To A Synology Based VPN
Synology is able to do everything a macOS Server could do, and more. So if you need to move your VPN service, it’s worth looking at a number of different solutions. The most important question to ask is whether you actually need a VPN any more. If you have git, mail/groupware, or file services that require remote access then you might want to consider moving these into a hosted environment somewhere. But if you need access to the LAN and you’re a small business without other servers, a Synology can be a great place to host your VPN services. Before you setup anything new, first snapshot your old settings. Let’s…
-
Install Directory Services on a Synology
People who have managed Open Directory and will be moving to Synology will note that directory services really aren’t nearly as complicated was we’ve made them out to be for years. This is because Apple was protecting us from doing silly things to break our implementations. It was also because Apple bundled a number of seemingly disparate technologies into ldap. It’s worth mentioning that LDAP on a Synology is LDAP. We’re not federating services, we’re not kerberizing services, we’re not augmenting schemas, etc. We can leverage the directory service to provide attributes though, and have that central phone book of user and group memberships we’ve come to depend on directory…