The USPTO Registered Logo Badge of the Medical Marijuana Initiative of North America - International Limited, an Arizona Benefit Corporation to the left of Mt Hood sunlit from the northwest in June followed by the proprietary MMINAIL octocopter delivery bot.

Ruby Macports


Welcome! This is the Ruby Macports page of the MMINAIL.


Note. This page has explicit access to the local jQuery library as well as to a local complimentary working (.js) file.


More to come ...


Ruby Macports 2nd Instance


So, ya wanna upgrade Ur system Ruby AND learn a little Homebrew, heh?


Via Jekyl, no doubt.

This is a very sensitive area of juxposition for the Internet, the Coding Community, and for Global Intelligence in general.

Cuidado! You must tread lightly, and carry a big Unix stick! ~ Steve Jobs"

Especially when working with your 'fixed-in-concrete' system Ruby and the dreaded entrenched Macports.


Binary Archives (.tbz2)


Macports pre-compiles Port(s) into Binary Archives (BA), or Port files called MacPort BA(s) and then stores the finished products on a remote server.

The finished MacPort BA(s) are then tagged eligible for download via Macports dot org.

In addition, MacPort BA(s) in (.tbz2) format are also created both locally and automatically in the /opt/local/var/macports/software/ subdirectory of your Macports initial ( default ) install or in your Macports 2nd ( Macports241 ) install whenever port installs a Port file.

Caveat. The MacPort BA(s) can only be used on a target system running Macports.

For example, a MacPort BA cannot be installed on a system that relies solely upon Homebrew, or the Fink Project.


Build Phase


The build phase of an install is usually the phase that takes the longest amount of time to run in terms of milliseconds.

Macports allows a MacPort BA and an accompanying set of utilities to skip the build phase of an install and to begin installation of an application right after the 'destroot' phase.

As a result, applications need not be compiled when installing to on a target system capable of handling MacPort BA(s).

For this capability, the administrator must download and install Macports onto the development machine.


Destroot Phase


More to come ...


Binary Packages (.pkg)


Binary Packages, or BP are stand-alone Binary installers that are pre-compiled.

And, as such ... do NOT require an accompanying set of Macports utilities.


Separate Install of Macports


A 2nd install of Macports on your development machine will give you the capability of locally creating BP ... For distribution (if licensed).

And, thereby avoiding conflicts with Port files on systems that already have an initial default copy of Macports installed.

In addition, a utility exists via Macports should you wish to distribute your software via (.dmg) rather than (.pkg) formats.


Performance


To perform a 2nd install of Macports on your development machine that is separate from the initial default /opt/local/ install, focus on the following two (2) command switches.

Create a second App trigger ...
1
--with-applications-dir
In the Applications folder.

And,

Create an Alt directory ...
1
--prefix
To Install Into.

Note. The --prefix switch accommodates the alternative directory.

Whereas, the --with-applications-dir switch avoids conflict with your already existing local Applications/MacPorts folder.

Rule. Stay with the opt directory of your machine root, and build a 2nd install of Macports in an alternative subdirectory.

For example, /opt/Macports241/.


The Issue


Why fuss with another instance of Macports?

Analysis. When the issue of solving why your local Jekyll server hangs when given the previous accurate start command of ...

Jekyll Start Command ...
1
jekyll serve --watch --baseurl ""
Was working fine!

Prior to the attempted upgrade to Ruby 2.4.0 via Homebrew ...

Conclusion. The "fuss" Becomes paramount to further development.


Download and Unpack


Navigate via the Finder to the location of your preferred and separate 2nd install of Macports ie.) /opt/Macports241/.

When you have arrived at your destination, right-click over the subdirectory name in order to expose the Services tab.

Now, select a 'new Terminal window at folder' to open up the Terminal program.

Before the administrative instant User can unpack a Port file ... ( In this case Macports base ver 2.4.1 ), the BA must be downloaded.

The following code must be executed in the Terminal in order to download the requested Port file from Macports, as follows:

Download Macports base ver 2.4.1
1
curl -O https://distfiles.macports.org/MacPorts/MacPorts-2.4.1.tar.bz2
Programatically!

Next, unpack the BA file with the following Terminal command ...

Unpack n Un-b-zip! ...
1
tar xf MacPorts-2.4.1.tar.bz2
Pronto! Andele!

This places an exploded subdirectory of name same ie.) MacPorts-2.4.1 in the /opt/Macports241/ folder.


    Whoosh! ( Interlude )

Interlude


Before we can start building a 2nd instance of Macports on your local development machine ...

We must perform something that appears to be counter-intuitive, but once achieved illuminates the pathway to the success of all of your many hours (and, days?) of learning, expanding, and troubleshooting.

¡Recuerde!. In order to pull this off, we must depart from our standard working User and become an administrative instant User ... on the same machine!


Binary Path(s)


The binary path(s) of the initial install /opt/local/bin:/opt/local/sbin: must be commented out from the instant User $PATH variable.

Why? Because the locations the export statements represent must not be present during the Build of the 2nd instance of Macports.


Destination Known


Once we make it to a successful install of a 2nd instance of Macports, we can then upgrade both Ruby to version 2.4.0 and Rubygems to 2.6.11 via another separate Build of a BA, and a call via upgraded gem.

Rather than attempting to install another copy of Ruby through Macports ( this is what hung the local Jekyll server in the first place! )

Or, through Homebrew ( does Homebrew even have their Ruby-24 BA back on the bottle rack again? )

Or, through RVM ... Who was, by the way, feeding off of the error codes generated by Homebrew!

A conspiracy to rig the market in favor of Homebrew? Naw, the RVM boys were just being cautious. Short of allowing the install, the RVM bots were quite accommodative.


Fight Fear w More Fear?


Ya know ... Macports has already countered with a scare claim of their own against the /usr/local/ subdirectory at their online documentation site.

( As opposed to the Macports preferred subdirectory of choice ... /opt/local/ ).

Yep! Created a whole sub-section at their menu of directions to house the scare claim against /usr/local/.

What? Are you all Trump voters? Or, something? Out there in coding land?


Back In Black


Back to the Binary Paths! We've got more work to do there!

Simply right-click over the hidden dot bash underscore profile file located in the root directory of the instant administrative User ... And, open the file for editing in TextEdit.

Once open, simply prepend the export statement that contains a reference to the above Macports binary path(s) with a keyboard 'hash' symbol, or #.

Note. The export statement was originally placed in the dot bash underscore profile file at the time of the initial install of Macports.

After placing the 'hash' symbol, or # appropriately at the front of the export statement ... ( in order to comment the export statement out ), save and close TextEdit.

Now that the instant administrative User's dot bash underscore profile file has been corrected, we must now rebuild the $PATH variable.


Rebuilding The $PATH Variable


First, after editing the the hidden dot bash underscore profile file ... The Terminal program must be 'rebooted'.

  • Close the Terminal Window,
  • Close the Terminal Program,
  • Re-open the Terminal Program.

The path_helper Command


To perform a rebuild of the $PATH variable, at the Terminal prompt enter the 'path_helper' command, as follows:

The path_helper Command ...
1
/usr/libexec/path_helper
Use the full path to the command.

A subsequent echo of the $PATH variable should now reveal an absence of any 'opt' type subdirectories in the administrative instant User path.


Look for opt(s) ...
1
echo $PATH
No opt(s) allowed!

Configure Time


Be sure you have navigated via the Finder to the location of your unpacked tbz2 copy of Macports ver 2.4.1.

Now right-click over the accepted subdirectory to open up the Services tab, a new Terminal window at folder.

Have Macports set the directory of your --prefix switch to the target destination of your 2nd instance with the following Terminal statement.

The Target Destnation
1
MP_PREFIX=/opt/Macports241
Configure, Make, Install

Have Macports set your machine's Applications folder to receive a separate, 2nd Macports install folder named 'Macports241'.

Note. Because this command statement will also start the configuration process of the 2nd instance ... You will need to perform this step as a super-user.

Please have your administrative instant User password ready.

Compiling The Code ...
1
2
sudo ./configure --prefix=$MP_PREFIX  ➡️  
    --with-applications-dir=$MP_PREFIX/Applications
Follow along w the machine ...

A verbose, line-by-line and blow-by-blow compilation will be printing to the Terminal window.

For example, here is an unusual looking line from the compile timeline ...

GNU Step Foundation Library
1
2
3
4
configure: WARNING: GNUSTEP_SYSTEM_ROOT ➡️ 
    is not defined in your environment, ➡️  
    preventing the use of ➡️  
    GNUstep's Foundation library
Sub Apple Foundation Library

Until you realize the GNU Foundation Library closely resembles Apple's Cocoa (formerly NeXT's OpenStep) API.

And, now you see the compilation process opted for the Mac OSX Sierra Xcode Command Line Tools ver 8.3 default to the Apple Foundation Library.


Make It Happen


Next, we must 'make' the now compiled 2nd instance by simply typing the command make at the Terminal window as a super user.

Only super-users make ...
1
sudo make
Be a super-user!

Note. There were (50) warnings during the make with basically the same message.

RE: SysCall deprecated ... Please use a supported interface

For more information, including the Terminal report of the make section in question ... See the private GIST located at GitHub.


Time To Install


Ok, it's time to install what we've made with the following command statement.

From the Terminal,

Install the Make
1
sudo make install
Local admin su doer

Finally, after a successful build, add the location to the 2nd instance bin ie.) /opt/Macports241/bin to your administrative instant User dot $PATH variable by opening the bash underscore profile file once again.

Include the following export statement in the file ...

Add a new line
1
export PATH="/opt/Macports241/bin:$PATH"
Save and close

Keep the original two binary paths from the initial install of Macports commented out by the keyboard 'hash' symbol, or #.

Now that we have changed the administrative instant User dot bash underscore profile file for a second time ...

Once again, we must reboot the terminal for the changes to take effect.

  • Close the Terminal Window,
  • Close the Terminal Program,
  • Re-open the Terminal Program.

Rebuild The $PATH


Recall to perform a rebuild of the $PATH variable ...

Remember to enter the following line of code at the Terminal prompt.

Enter the path_helper command, as follows.

Use every time after an edit
1
/usr/libexec/path_helper
To rebuild the $PATH variable

Similar to before ...

A subsequent echo of the $PATH variable should now reveal the inclusion of a single 'opt' type subdirectory ie.) /opt/Macports241/bin in the administrative instant User path.

Congratulations! You have successfully installed a 2nd instance of the MacPorts system!

To get the accompanyng Port file(s), if any ... And, to update the system, run the following line of code ...

Ensure Macports is fully functional
1
sudo port -v selfupdate
Under this instance.

Returns,

MacPorts base is already the latest version ...

The ports tree has been updated.

To ensure all installed Port files have been upgraded to the Macports max ...

Run the following command from the Terminal prompt as a super-user, as follows:

Upgrade all Port files.
1
sudo port upgrade outdated
aka Binary Archives

Returns,

Nothing to upgrade.


Further Review


For further review,

Please read 'man port', the MacPorts guide.

Also, please read the Macports Wiki.

    Finito! 

Supporting Content Small The Flammarion Logo Badge Small The Flammarion Logo Badge


Welcome! This is the Supporting Content section for the Ruby Macports page of the MMINAIL.

The Concept Library of the MMINAIL is a static informational website.

As such, a Supporting Content section is placed below each (.html) page in the flow of the default layout to grant the end-user additional pertinent information when navigating this site.


E Books


With today's explosion of modern devices ...

Some consumers like to read their articles on their Kindles or iPads.

Therefore, a method to convert any page of this website into an eBook ...

Is auto-built into the top of the Navigation <aside> ...

As well as in the <footer> of every page.


Dot ePub

Simply click the following eBook icon = small dot epub button eBook icon to render the current page as an Overdrive (.epub) or a FB Reader (.mobi) .


Apple iBooks

The Apple iBooks platform also reads and displays the (.epub) format, as well.

When navigating the menu at the Navigation <aside> ...

Look for the book icon to download the offered eBook directly to your machine.

Then, simply right-click over the newly downloaded (.epub) and open up the file in the new Book app for Mac devices.


Secure Hyperlinks


The A's Have It!

In today's complicated world of coding, even the use of the standard hyperlink ...

<a href="" title="" target=""></a>

Is placed into question by the standards of newer, more modern browsers such as Google's V8 powered Chrome browser.


Safe Internal Links


Therefore, to make life easy for the end-user ...

The MMINAIL will show safe, internal links in the bootstrap default color of light dodger blue.


Safe External Links


In addition, safe external links ...

When designated https secure ie.) https://.

Will also be shown in the color of light dodger blue.


Standard External Links


All other external links ...

If designated with standard http ie.) http:// ...

Will be shown in the color of indian red.


How To Navigate This Website


At this website ...

We have the <html> hub for the Benefit Corp aka our Concepts Library.

You (Usted), as a current visitor to our Concepts Library, are now at the Ruby Macports page.


Navigation Aside


In the Navigation <aside> section of this website ...  ...

The end-user will find a Stack of Topics.

Or, for you smartphone users ... the Navigation <aside> section is up! ...  

There, the smartphone user will find the same Stack of Topics for the Concepts Library at MMINAIL.


Stack O Topics


The Navigation <aside> section to your right ... ... If you are viewing this page from the traditional landscape style of your laptop.

Or, the Navigation <aside> section from above ... ... If you are viewing this page from the modern portrait style of your smartphone ...

Both house the same Stack of Topics available for selection at the Concepts Library of the MMINAIL.


Instruction Set


To access one of the Articles or Lessons available for your preferred Topic of Interest ...

  • Simply scroll through the tabs of Topics above, or to the side ...

  • And, click on one that you may have an interest in.

Back Home


Note. At each Topic of Interest, the end-user will find a hyperlink back to the Home page of the Concepts Library.

By clicking on the Home icon   the end-user will be returned to the Home page of the Concepts Library.


Subtopics


When an end-user clicks on a Topic of Interest ...

Either above  ...

Or, over at  ...

The Stack of Topics in the Navigation <aside> section ...

The menu explodes vertically to reveal several subtopical choices.

To select any other Topic of Interest, or any of the many subtitles ...

  • Simply click on the corresponding glyphicon to open up the referenced file.

Unstuck


If you get stuck ...

  • Simply click on the Home icon   to be hyperlinked back to the Home page of the Concepts Library.

Screen Responsiveness


The pages of the Concept Library have been tested for mobile responsiveness.

The authors have determined the accuracies of the page renderings at both a portrait width of 360px and a landscape width of 640px.


Devices


Testing devices have included selections from the following list of devices ...

  • Amazon Kindle Fire HDX 7, 3rd Generation tablet

  • Virtual Galaxy S5 smartphone emulator

Kindle Tablets

On the Kindle tablet, both portrait and landscape renderings appear accurate.


Amazon Fire Phones

And, on the Amazon Fire phone, using automatic screen rotation, both portrait and landscape renderings appear accurate.


Foreign Language


The foreign language expression ¡Finito! can hold a translation from Spanish-To-English ...

Via the <title> tag.

Simply hover over the word in Spanish to reveal its English equivalent.

For example ...

Hovering over the Spanish phrase ¡Por ejemplo! reveals the English equivalent of "For Example".

Try it!


Acronyms


For an acronym to be visually effective when reading a line of text ...

The acronym must first be declared.

In addition, the acronym must stand out from the body of information.

To accomplish both of these objectives, the MMINAIL has selected Ashley Gold.


Ashley Gold

Ashley gold is a primary color within the registered Logo Badge of the Benefit corporation.

Whenever the end user spies a designated Acronym of Ashley Gold ...

Simply hover over the Acronym to reveal the underlying meaning embedded in the title element of the <abbr> tag.


Definitions


The <abbr> tag can also be used to house Definitions as well as Acronyms.

As we have seen in the above referenced Ashley Gold definition ...

Whenever the end-user spies a designated Acronym or Definition of Ashley Gold color ...

Simply hover over the Acronym or Definition to reveal the underlying meaning embedded in the title element of the <abbr> tag.


Carriage Return


The carriage return, or ... ➡️

The carriage return is used extensively throughout the working repos of the Concept Library to prevent the overflow of raw code.

By preventing the overflow of raw code when rendering a code block, the view of the end-user avoids the slider effect.

And, by eliminating the slider effect, responsive views using other devices ie.) Kindle Fire HDX will maintain screen boundaries without overflow.


Site Monitoring


Note. The Http Headers of this repo are being monitored by Internet Supervision dot com.


Reproduction In Part


Most authors will allow for the reproduction of their works in part ...

When the case of brief quotations embodied in critical articles or reviews is addressed.

As long as an appropriate citation is presented concurrent with the review, authors are generally receptive.

Therefore, please remember to provide a Link-back to the original author, or to the publisher of the original publication when citing.

Thank you for your consideration.

Got An Idea?


If you have an idea that will spruce this site up even better than it already is ...

Then, you know the drill ...

Simply go ahead and fork this repo, make your changes, and send us a pull request.


Coding Community


If you are an expert in your field of specialty ...

Why not fork our Concept Library and create a new Topic of your choosing, or embellish upon an existing Topic.


Pull Requests


Send us a Pull Request.

Our team of coders will review your contribution and get back to you with a "thumbs up" ( or, "thumbs down" ).


Can You Contribute Code?


As we can now decipher the time spent by our functions at the code block level ...

How much of your coding time are you willing to invest in this project?

As we rely heavily upon contributions from the coding community, your contribution of code will be greatly appreciated.

Thank you for your effort and participation in our program to code the globe!


Can You Contribute Cash?


If you have enjoyed and benefited from this article ...

Then, why not drop a little change in our digital bucket at the Square Up - Cash Me donation portal.

As we can now spend the equivalent of our grandparents' monthly mortgage payment at our local Sunday football games ...

How much of your spare cash are you willing to invest in this project?


Starving Coders

As we rely heavily upon contributions from the coding community, your contribution of cash will be greatly appreciated.

Note. Your donation will help us fund our Starving Coders initiative through our Medcoin™ Crypto Currency Division.


Can You Contribute Ether?


As we have witnessed the exponential growth of Bitcoin (BTC) from 9 cents USD per coin ...

To over $18,000 USD per coin over the past nine (9) years.

Plus, the recent explosion of Ripple (XRP) from less than one-penny to over $2 USD.

How much of your spare Ether ( ETH ) are you willing to invest in this project?

As we rely heavily upon contributions from the coding community, your contribution of ether will be greatly appreciated, as well.


Public Hash

Simply scan the following QR Code to extract our Coinbase public hash address to send Gifts O Wei in support of our Medcoin™ Crypto Currency Project.

QR Code - Coinbase - Bus Card

Note. The easiest and safest way to extract our public `ETH` hash-address is to point your smartphone at the `QR Code` shown and engage the `Sophos Intercept X QR Code Scanner`. From there you will be able to open the link safely via the `Sophos Intercept X Link Checker`.


No Warranty


Disclaimer. The author of this website has made every effort to ensure accuracy ...

However, the information contained in this website, and in its pages, is offered to the public without any warranty expressed or implied.

Therefore, the author of this website, and by extension its pages and content cannot be held liable for any damages that may be caused indirectly or directly by the software instructions or tutorials contained in the pages of this website.


License


The license and privacy policy pages ...

For further review, please see the License page and the Privacy Policy page of this website to clarify.


Copyright © 2000 - 2021

The Medical Marijuana Initiative of North America Small Registered MMINAIL™ Logo Badge Small Registered MMINAIL™ Logo Badge
- International Limited Small R-Reggae™ Trademark Symbol Logo Badge Small R-Reggae™ Trademark Symbol Logo Badge