@just-every/manager 0.1.6 → 0.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -17,6 +17,9 @@ justevery-manager
17
17
  Use `--download-only` to cache the installer without launching it, and
18
18
  `--print-path` to print the cached path.
19
19
 
20
+ On headless Linux, the wrapper will download and run the headless daemon
21
+ (`Every.Manager_*_linux_amd64_headless`) when available.
22
+
20
23
  ## Environment
21
24
 
22
25
  - `JE_AGENT_VERSION` – override the agent version.
@@ -9,7 +9,7 @@ const sessionType = (process.env.XDG_SESSION_TYPE || '').toLowerCase();
9
9
  const hasDisplay = Boolean(process.env.DISPLAY || process.env.WAYLAND_DISPLAY);
10
10
  const hasGuiSession = hasDisplay || (Boolean(sessionType) && sessionType !== 'tty');
11
11
  const isHeadlessLinux = osPlatform() === 'linux' && !hasGuiSession;
12
- const downloadOnly = args.includes('--download-only') || args.includes('--no-open') || skipLaunchEnv || isHeadlessLinux;
12
+ const downloadOnly = args.includes('--download-only') || args.includes('--no-open') || skipLaunchEnv;
13
13
  const printPath = args.includes('--print-path');
14
14
 
15
15
  if (wantsHelp) {
package/lib/installer.js CHANGED
@@ -164,6 +164,16 @@ function buildCandidateFiles(version) {
164
164
  return [extra];
165
165
  }
166
166
  const files = new Set();
167
+ const prefersHeadless = platform === 'linux' && shouldSkipLaunch();
168
+ if (prefersHeadless) {
169
+ for (const prefix of FILE_PREFIXES) {
170
+ if (prefix !== 'Every.Manager') continue;
171
+ for (const arch of archCandidates) {
172
+ files.add(`${prefix}_${version}_linux_${arch}_headless`);
173
+ files.add(`${prefix}_${version}_${arch}_headless`);
174
+ }
175
+ }
176
+ }
167
177
  if (platform === 'win32') {
168
178
  for (const prefix of FILE_PREFIXES) {
169
179
  for (const arch of archCandidates) {
@@ -310,7 +320,6 @@ async function downloadInstaller(baseUrl, fileName, dest) {
310
320
 
311
321
  function ensureExecutable(path) {
312
322
  if (osPlatform() !== 'linux') return;
313
- if (!path.endsWith('.AppImage')) return;
314
323
  try {
315
324
  chmodSync(path, 0o755);
316
325
  } catch {}
@@ -377,6 +386,9 @@ export async function ensureInstaller({ allowDownload = true } = {}) {
377
386
 
378
387
  export function launchInstaller(installerPath) {
379
388
  const platform = osPlatform();
389
+ if (platform === 'linux' && installerPath.includes('_headless')) {
390
+ return runCommand(installerPath, []);
391
+ }
380
392
  if (shouldSkipLaunch()) {
381
393
  console.log('Every Manager installer downloaded. Launch skipped in this environment.');
382
394
  console.log(`Installer path: ${installerPath}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@just-every/manager",
3
- "version": "0.1.6",
3
+ "version": "0.1.8",
4
4
  "description": "Installer wrapper for Every Manager",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",