Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding local repositories #81

Open
Mark2Mark opened this issue Mar 17, 2021 · 3 comments
Open

Adding local repositories #81

Mark2Mark opened this issue Mar 17, 2021 · 3 comments

Comments

@Mark2Mark
Copy link
Collaborator

Mark2Mark commented Mar 17, 2021

I wonder if that’s possible at all, I get my local repos to show up in the plugin manager, but Glyphs 3 crashes when trying to install.

First: The reason why I try that is, that the authorisation doesn’t even accept my own python plugins unless I "properly" install them. But this is not useful when developing, as I would have to re-install for every little change. My old approch with using aliases fails now. Even double clicking the plugin to install via Glyphs, which then recognises that it’s a Repo and asks if I want to use the Alias, eventually ends in the Notification that it’s from an unknown developer. Maybe you have a better idea of a python dev workflow, if so, the following might be obsolete.

Here’s my setup:

"my-dev-plugins.plist":

{
	packages = {
		plugins = (
			{
				descriptions = {
					en = "Dev Plugin 1";
				};
				path = "MyPluginInDevelopment.glyphsReporter";
				url = "/Users/…/00 - Development/Glyphsapp-Plugins/my-plugin-repo";
			},
		);
	};
}

Then this "my-dev-plugins.plist" is added to Preferences > Addons > Alternate Plugin Repos

Then it shows in the Plugin Manager, but when clicking Install, Glyphs crashes with a system crash report that contains something about assertion failure in the git_clone command. This comes up only if I add a "/.git" to the url (just trying things):

Application Specific Information:
Assertion failed: (out && url && local_path), function git_clone, file /Users/georg/Code/objective-git/External/libgit2/src/clone.c, line 398.

I didn’t send the crash report yet, to not clutter your reports. I assume I already made a couple of mistakes in this setup.

If that approach is valid and useful for others (and we can fix my mistakes here) I am happy to draft a guide for others to use, as I think it’s very neat if that’s working.

@schriftgestalt
Copy link
Owner

Do you have installed a local git server? I think the url needs to point to a server, not just a repo. So you can keep the packages.plist local, but the repo needs to be on a server.

@florianpircher
Copy link
Collaborator

florianpircher commented Mar 21, 2021

My old approch with using aliases fails now. Even double clicking the plugin to install via Glyphs, which then recognises that it’s a Repo and asks if I want to use the Alias, eventually ends in the Notification that it’s from an unknown developer.

This approach still works for me, but I don’t have an M1 equipped Mac, so maybe that is the difference.

@florianpircher
Copy link
Collaborator

florianpircher commented Mar 21, 2021

I actually managed to install a local repository. The url field needs to start with file://, for example:

{
	packages = {
		plugins = (
			{
				descriptions = {
					en = "Dev Plugin 1";
				};
				path = "MyPluginInDevelopment.glyphsReporter";
				url = "file:///Users/…/00 - Development/Glyphsapp-Plugins/my-plugin-repo";
			},
		);
	};
}

But that also just clones my local plugin files into Glyphs Repositories directory, so I am not sure if that improves anything.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants