Move data

In the stan­dard use of the Bol Processor, all data is stored in the "bolprocessor" fold­er locat­ed in the "htdocs" fold­er cre­at­ed by MAMP or XAMPP. Read the instal­la­tion instruc­tions for more details. This is accept­able in most cas­es because Bol Processor data is basi­cal­ly made of text files that do not take up much space.

However, there are a num­ber of rea­sons why a user might want to store data in loca­tions oth­er than the "bolprocessor" fold­er:

  1. Need for addi­tion­al space
  2. Avoid stor­ing data on the start­up disk
  3. Sharing data with oth­er appli­ca­tions and oth­er users
  4. Sharing data via a cloud device (e.g. DropBox).

A pro­ce­dure for mov­ing the entire "bolprocessor" fold­er is described in the instal­la­tion instruc­tions: for exam­ple, in the MacOS envi­ron­ment. Unfortunately, as of today, the relo­cat­ed instal­la­tion does not work on MacOS with XAMPP after a reboot, unless the "BolProcessorInstaller.pkg" installer is run again. The same prob­lem might exist in both Windows and Linux envi­ron­ments where MAMP or XAMPP is used.

In fact, there is not much inter­est in relo­cat­ing the entire "bolprocessor" fold­er. Moving data fold­ers out­side this fold­er will suf­fice. This tuto­r­i­al will tell you how to do this.

The first time you install the Bol Processor, the "bolprocessor" fold­er will con­tain a unique fold­er called "ctests" for stor­ing data. This fold­er con­tains exam­ples that are updat­ed when a new ver­sion is installed. However, you can use it to store new projects, new sub­fold­ers, etc., which will not be affect­ed by new versions.

You can also cre­ate your own fold­ers (and sub­fold­ers) at the same lev­el as "ctests". The inter­face is designed for the cre­ation, mov­ing and dele­tion of fold­ers and files with­in the "bolprocessor" fold­er. Always use the inter­face. Creating a fold­er (or a file) via the Finder or File Manager may not work, espe­cial­ly with XAMPP, because the own­er may be dif­fer­ent from the Apache server's iden­ti­ty. For geeks: XAMPP runs as "dae­mon" while the Finder runs as your per­son­al identity.

Creating fold­ers and files with­out using the Bol Processor inter­face may result in "per­mis­sion errors" when a file is saved. Indeed, there are workarounds, for those famil­iar with shell scripts, for exam­ple the "change_permissions.sh" script designed for Linux and MacOS. But this is not a pleas­ant way to use the Bol Processor…

In short, always cre­ate fold­ers using the CREATE FOLDERS func­tion in the inter­face. Once cre­at­ed, they can be moved (even with the Finder or File Manager) with­in the "bolprocessor" fold­er, and even renamed. The Bol Processor will always recog­nise them as its own.

Below is an exam­ple of two fold­ers called "data" and "my_data" cre­at­ed at the same lev­el as "ctests":

Now, how can we move a fold­er out­side the "bolprocessor" fold­er? Once we've moved it, the inter­face no longer shows it. For exam­ple, let us do this with "my_data". (The fold­er may be emp­ty or con­tain oth­er fold­ers and files.)

Using the Finder in MacOS, or copy/paste in Windows and Linux, we move "my_data" to the desired loca­tion, for exam­ple a "MUSIC" fold­er at the root of an exter­nal dri­ve called "EXT". Make sure that this loca­tion accepts read/write operations.

At this point, there is no more "my_data" in "bolprocessor", or we delete it using the DELETE FOLDERS but­ton. You can't delete "ctests" with this delete function.

To make "my_data" vis­i­ble again from its remote loca­tion, we need to cre­ate a sym­bol­ic link. Unfortunately, the Bol Processor's inter­face can­not do this due to secu­ri­ty restric­tions. I've spent hours with a chat­bot try­ing to find a workaround!

In MacOS and Linux, the sym­bol­ic link is cre­at­ed from a (Unix) Terminal. In Windows, you will use the Windows PowerShell (admin).

This pro­ce­dure doesn't work with alias­es cre­at­ed by the Finder in MacOS. You real­ly need to use sym­bol­ic links.

MacOS or Linux

Open the Terminal (in the Applications fold­er) and point it to the "htdocs" direc­to­ry. For those unfa­mil­iar with Unix com­mands, you will need to type "cd " (fol­lowed by a space) and drag "htdocs" to the end of this com­mand, then press "return". You can type the instruc­tion "ls -al" to see the con­tents of "htdocs", which con­tains "bolprocessor", "ctests", and more.

Suppose that your "MUSIC" fold­er is on disk "EXT" and you want to link to the relo­cat­ed "my_data" fold­er. Type this command:

ln -s /Volumes/EXT/MUSIC/my_data my_data

This will cre­ate the "my_data" sym­bol­ic link point­ing to the remote "my_data" fold­er. Check that the link has been cre­at­ed by typ­ing "ls -al".

Depending on the disk or disk area used to store relo­cat­ed data, you might encounter prob­lems due to MacOS access restric­tions, espe­cial­ly if the System Integrity Protection (SIP) is enabled.

If you are using a recent installer (as of 3 Feb 2025) and a XAMPP Apache serv­er, the 'daemon' iden­ti­ty used by XAMPP is auto­mat­i­cal­ly added to the 'admin', 'wheel' and 'staff' groups which are com­mon­ly used by the Finder.

There are prob­a­bly few­er restric­tions with MAMP because this serv­er runs under your per­son­al iden­ti­ty, and file own­ers are set to that identity.

Windows

Right-click the start icon at the bot­tom left of the screen, and select Windows PowerShell (admin). Then type the fol­low­ing com­mand to cre­ate a sym­bol­ic link — in fact a junc­tion (/J instead of /D):

cmd /c mklink /J "C:\MAMP\htdocs\bolprocessor\my_data" "D:\MUSIC\my_data"

If you are using XAMPP, replace "\MAMP\" with "\xampp\".

Depending on the disk or disk area used to store relo­cat­ed data, you may encounter issues due to Windows 10 access restrictions.

For exam­ple, mov­ing your data to the OneDrive direc­to­ry won't work by default. If you must keep the tar­get fold­er inside OneDrive, you must dis­able the syn­chro­ni­sa­tion of your files:

  • Open OneDrive Settings
  • Go to "Choose fold­ers"
  • Uncheck your data folder(s).

Return to the Bol Processor

Now, the BolProcessor inter­face will show "my_data" as if the fold­er was in "bolprocessor". If it doesn't, make sure that the paths used to cre­ate the link were correct.

Make sure that you can cre­ate and save data in the relo­cat­ed fold­er. Welcome to shared projects!

Leave a Reply

Your email address will not be published. Required fields are marked *