{"id":24071435,"url":"https://github.com/opencrew-tech/openbsd-electron","last_synced_at":"2025-04-28T13:44:49.176Z","repository":{"id":243725261,"uuid":"805492834","full_name":"opencrew-tech/openbsd-electron","owner":"opencrew-tech","description":"Ongoing OpenBSD port of Electron","archived":false,"fork":false,"pushed_at":"2025-03-30T19:08:47.000Z","size":2566,"stargazers_count":10,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-04-25T01:14:30.918Z","etag":null,"topics":["electron","openbsd","vscode"],"latest_commit_sha":null,"homepage":"","language":"BitBake","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opencrew-tech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-24T17:42:04.000Z","updated_at":"2025-04-21T19:07:48.000Z","dependencies_parsed_at":"2024-07-20T19:44:59.553Z","dependency_job_id":"7810b8cf-7cd4-4818-bf43-8d537e6c071b","html_url":"https://github.com/opencrew-tech/openbsd-electron","commit_stats":null,"previous_names":["fabienr/openbsd-electron","opencrew-tech/openbsd-electron"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencrew-tech%2Fopenbsd-electron","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencrew-tech%2Fopenbsd-electron/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencrew-tech%2Fopenbsd-electron/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opencrew-tech%2Fopenbsd-electron/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opencrew-tech","download_url":"https://codeload.github.com/opencrew-tech/openbsd-electron/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251321627,"owners_count":21570765,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["electron","openbsd","vscode"],"created_at":"2025-01-09T16:53:51.591Z","updated_at":"2025-04-28T13:44:49.153Z","avatar_url":"https://github.com/opencrew-tech.png","language":"BitBake","readme":"# OpenBSD + Electron\n\n\u003cp align=\"center\"\u003e\n    \u003cimg src=\".readme/openbsd-electron.png\" alt=\"OpenBSD + Electron logo\" width=\"256\"/\u003e\n\u003c/p\u003e\n\nAn effort to port Electron (and, by extension, VS Code) to OpenBSD.  \nIt includes custom `modnpm` and `modyarn` modules to facilitate the integration of Node-based ports.\n\n***Status : Working**, need some more cleaning.*\n\n## Electron\n\nElectron is built on Chromium, utilizing the same patches and features as the current port.\nThe implementation includes OpenBSD-specific support for pledge and unveil, with a per-application design.\n\nElectron is installed system-wide with a single installation, and applications should be compatible with this shared version.\nInstead of creating distfiles or bundling Electron with individual applications (though technically feasible), each application \nincludes a dedicated wrapper to properly initialize Electron with its specific configuration and resources.\n\n*Efforts are underway to implement [fuses](https://www.electronjs.org/docs/latest/tutorial/fuses) support with a single, sensible default.*\n\n## Node packages managers\n\nTo avoid network usage during the build process, the available options are quite limited:\n\n* Using a pre-made cache for offline functionality, which requires someone to distribute the archive\n* Filling the cache before the extraction phase, necessitating a tool to populate the cache\n* Extracting directly into node_modules, which should be the package manager's job and is complex to implement\n\n*The most viable solution seems to fill the cache before extraction.*\n\n* `yarn`: works well with a simple, flat, directory cache\n* `npm`: use cacache and also repository API, not only package module\n* `pnpm`: todo\n* `berry`: to study\n\nEach package manager generates a lock file that describes all dependencies and the structure of `node_modules`.  \nThe `port-modules` tool parses these lock files to produce a `modules.inc` file.\n\n* `moyarn`: fill the cache during extract, limited support for Electron ports only\n* `modnpm`: setup node_modules, lightly tested on different kinds of ports\n\n*The plan is to implement a `cache-add` CLI for each package manager, aiming for upstream adoption.*\n\n## Ports included\n\n* VScode : everythings seems to works **without sandboxing**, kerberos support not tested\n* teams-for-linux : screen share, webcam, audio tested ok\n* signal-desktop : screen share, webcam, audio tested ok\n* stretchly : ok\n* byar-chobby : ok\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencrew-tech%2Fopenbsd-electron","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopencrew-tech%2Fopenbsd-electron","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopencrew-tech%2Fopenbsd-electron/lists"}