Using symbolic links inside OS X application bundles - macos

I'm having a following problem. I have a bundle that has the following structure:
B.app/Contents/Frameworks -> link to an existing FS location [1]
B.app/Contents/Info.plist
B.app/Contents/MacOS
B.app/Contents/MacOS/AliasBinary -> link to an existing binary called ExistingBinary [2]
B.app/Contents/Resources -> link to an existing FS location [3]
Links [1] and [3] are just links to existing filesystem locations (i.e. directories) that are outside of the bundle. AliasBinary is a link to another application that I don't want to copy to the bundle, but would like to share it between many bundles. The latter binary is called ExistingBinary
The problem I'm having is that calling
$ open B.app
does open the application but only if the previous instance of ExistingBinary is not running. The same applies for double clicking on B.app. If there's no previous instance of ExistingBinary running then everything works correctly. Once ExistingBinary is started I can no longer start B.app by double clicking or by calling open B.app
Help!
EDIT:
The funny fact is that everything works if the bundle is inside /Applications but when I move it outside /Applications it just restores focus on the first instance of an app.
open -n helps, but that's not what I want :)

This may be the default launch services behaviour of not opening existing applications twice.
In Leopard, try
open -n B.app
or if you have the launch utility:
launch -m B.app

Related

Is there any way to inspect the contents of the RocksDB instance used by NEAR Protocol?

Disclosure: I work with NEAR and am currently on-boarding.
When I start up a local node on a clean machine I see that a .near folder is created in my home directory with a few configuration files (exact files seem to depend on which start_ script I run). Another folder appears inside of the .near folder called data.
Running strings ~/.near/data/*.sst in the folder spits out a few lines starting with the string "rocksdb" which led me to this reference to RocksDB
Is there any way to inspect the contents of a node's RocksDB instance?
I found Keylord but it crashes when I try to configure a new connection to the database (by pointing the connection to ~/.near/data). I didn't pursue that thread.
PSA1: sometimes it's useful to backup the ~/.near folder between node restarts if you want to reset the environment or avoid reusing old data while troubleshooting
mv ~/.near ~/.near_`date +%Y-%m-%d.%s`
PSA2: on MacOS you can watch what happens to the contents of the ~/.near folder while the node boots up and runs. (brew install watch).
watch -d -c -n 0.5 find ~/.near
The content of RocksDB is serialized using our own binary serialization format (http://borsh.io/), so you won't be able to examine the content with general-purpose third-party tools

How to open another folder in VSCode in the same instance?

Let's say I have 2 folders - apple & orange
Now I opened apple in VSCode using code apple.
In the embedded terminal in VSCode, how do I open orange folder in the same instance as apple by overriding it without starting a new instance?
Support for multi-root workspaces is there.vscode-insiders which support multiple projects at same time.Please refer to our documentation for a full explanation of all the features that come with it. Extension authors should refer to our wiki that explains the new extension APIs to make your extension ready for multi-root workspaces.
You can do it like this:
I just tried in my system it working perfectly fine to open a another folder in same instance
code -r path
Like: code -r C:\Users\admin\xxxx\xxxx\apple(orange already opened in the same instance)
If you want to open a existing folder in new window from terminal:
code -n Path
Like: code -n C:\Users\admin\xxxx\xxxx\apple(apple will opens in another window and orange also there.)
If you want to open a new tab in same instance by terminal:
code filename.extension (Hit enter then just press ctrl+S and then it saved the file in the same directory).
Thanks for the question.Hope this will match your curiosity B|
#rioV8 suggested this solution: File > Add Folder to Workspace ==> Multi Root Workspace

All my Jenkins jobs and configs have disappeared after restart of my Mac

After updating macOS to Mojave (10.14.4), my Mac was restarted and upon opening Jenkins (at localhost:8080) it appeared that I've lost all my jobs and the entire system configurations.
There was only 1 user (admin) defined in my installation and my usual password was deemed invalid, when I tried to log back in. So, I tried entering another password I normally used and it was accepted. I then found that all my jobs and configs have disappeared. It looked as if I've just started Jenkins for the first time.
Looking through here on StackOverFlow, there were suggestions to check the JENKINS_HOME variable to find out where the jobs are saved on the disk, but when I typed export $JENKINS_HOME I just get an empty response. So, it looks like I've never configured it during set up.
I then dig through the hard drive and found the folders matching the names of the jobs I created under ~/.jenkins/workspace. However, the contents of all the folders are empty. I was expecting to see the usual files, e.g. build.xml, config.xml, etc.
I then did a global search for build.xml and config.xml on Mac Finder it turned up nothing.
Any idea where my jobs went and what could have caused all the contents of the folders of the jobs to be empty?
You can find your Jenkins installation directory in "Manage Jenkins" -> "configure System" --> "Home directory". Find what was the Jenkins home before you restart MAC. It looks like your home directory is either deleted by you or you are pointing to new folder now. Set it to earlier folder.
If can help,
I'm having a similar problem.
The curious part is about the new directory after the service restart ".jenkins" directory inside :
'/var/root/'.
And now, the password that Jenkins request me is not from
'/Users/username/.jenkins/secrets/initialAdministratorPassword' but from the newst one with same path pattern.
Simon

appcfg.py is not running with cmd prompt (Windows 7)

I am having strange problem. I used to run appcfg.py to update my app to appengine but now its not working anymore. When I run this command
C:\Program Files <x86>\Google\google_appengine>appcfg.py update E:\path\myApp\
Its not giving me anything, no error no feedback. Its just back to this line
C:\Program Files <x86>\Google\google_appengine>
Any idea about this issue!
P.S. I'm using Python 2.7. My code is updating through google app launcher but I need to run it from cmd prompt as I will be downloading/uploading appengine stuff which launcher doesn't allow me to do!
Thanks
I still had a little trouble with the instructions. Here's the steps I used to create a batch file to use the Google App Engine download_app with Windows 7.
In my example,
I'll use drive, C:
Default python path will be, C:\Python27\python.exe
GAE path (include "), "C:\Program Files (x86)\Google\google_appengine\appcfg.py"
App ID {your_app_id} will be just your app-id name
{your_app_version} is the "Version:" number in your GAE app.yaml file
I'll create a folder on my Windows 7 desktop and call it GAE_App
The desktop folder path will be C:\Users\{username}\Desktop\GAE_App
{your email} will be the Gmail account connected to your GAE
Right-click on the desktop and select New->Text Document. Open the newly created text document and add the following line of code modified for your setup to the blank text document,
C:\Python27\python.exe "C:\Program Files (x86)\Google\google_appengine\appcfg.py" download_app -A {your_app_id} -V {your_app_version} --email={your email} C:\Users\{username}\Desktop\GAE_App
Save the text document and change the file name to GAE_Download.bat
It's important that the extension now says ".bat" instead of ".txt"
Once finished, click on the batch to execute it. You'll be asked for a password and then the files should download into the GAE_App folder on your desktop. Now, whenever you need to download your files, just click on the batch file.
Not sure why Google didn't simply include this feature with their GAE for Windows software.
I faced the same issue. Here is a simple solution.
Just do this following Steps:
Go to program file where google app engine is installed. Generally It is named as Google.
click on appcfg.py and select open with.. Select "Choose Default Programs".
Select Python from programs and select "Always Use the selected program to open this kind of file" .
Now run the command you should get the results on command line.
For reference click here
Fixed by accessing python lib like that
C:\Python27>python appcfg.py update E:\path\myApp\
Here's a solution that worked for me:
"google_appengine/appcfg.py" update "C:\PATH TO APP
The appcfg.bat that should be used is located **C:\Program Files\Google\Cloud SDK\google-cloud-sdk\platform\appengine-java-sdk\bin** and not the empty appcfg.bat that for some unknown reason also was here C:\Program Files\Google\Cloud SDK\
Good practice is to add this path to the system variable PATH
This worked for me
Basis
<PATH_TO_PYTHON>python <PATH_TO_APPCFG.PY>appcfg.py -A <PROJECT_INSTANCE_NAME> update app.yaml
Example
X:\Software\Python2.7\python Q:\SOFTWARE\GoogleAppEngineSDK\appcfg.py -A great-1337 update app.yaml

XAMPPLITE / Web Application - auto install

Would like to hear comments from you if its possible to accomplish this with a single mouse click on a bat/exe file -> if its possible to accomplish the following two steps into one:
1: Install xampplite
2: Paste a web application into the htdocs folder. The web application has a file install.php. The install.php file will install the database and prepare the web application for further use.
Thanx,
Why should that not be possible? But installing xmapp on a computer with the generall installer asks you where you want to have the files.
An other idea could be by using the zip file. AFAIK you can unzip files from cmd (by invoking the zip function) to a destination you set, copy the webapplication to the htdocs folder, starting up apache and call an URL to your installer script.

Resources