@hurshb50/setup-ubuntu 1.0.3 → 1.1.1

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
@@ -5,9 +5,10 @@ Sets up a fresh Ubuntu machine with tools, configuration, and dotfiles.
5
5
  ## Installation
6
6
 
7
7
  ```bash
8
- sudo apt update && sudo apt install -y curl ca-certificates
8
+ sudo apt update
9
+ sudo apt install -y curl ca-certificates
9
10
  curl -fsSL https://vite.plus | bash
10
- VP_PACKAGE_MANAGER=npm@12 vpx @hurshb50/setup-ubuntu
11
+ vpx @hurshb50/setup-ubuntu
11
12
  ```
12
13
 
13
14
  Vite+ defaults to pnpm, which can hold back freshly published releases. The setup pins npm globally, so later commands need no prefix.
@@ -29,10 +29,6 @@ function path() {
29
29
  export PATH="$HOME/.local/bin:$PATH"
30
30
  }
31
31
 
32
- function package_manager() {
33
- export VP_PACKAGE_MANAGER="npm@12"
34
- }
35
-
36
32
  function setup_history() {
37
33
  shopt -s histappend
38
34
  shopt -s checkwinsize
@@ -135,7 +131,6 @@ function run() {
135
131
  fi
136
132
 
137
133
  path
138
- package_manager
139
134
  load_auto_suggestion
140
135
  setup_history
141
136
  completion
@@ -10,7 +10,7 @@ import fs from "fs/promises";
10
10
  import { execa } from "execa";
11
11
  //#region package.json
12
12
  var name = "@hurshb50/setup-ubuntu";
13
- var version = "1.0.2";
13
+ var version = "1.1.0";
14
14
  //#endregion
15
15
  //#region source/modules/logger/logger.ts
16
16
  var Logger = class Logger {
@@ -295,7 +295,10 @@ var AgentSkills = class {
295
295
  task.continue("Create global skills directory");
296
296
  await fs.mkdir(destinationDirectoryPath, { recursive: true });
297
297
  task.continue("Copy agent skills");
298
- await fs.cp(sourceDirectoryPath, destinationDirectoryPath, { recursive: true });
298
+ await fs.cp(sourceDirectoryPath, destinationDirectoryPath, {
299
+ recursive: true,
300
+ dereference: true
301
+ });
299
302
  task.finish();
300
303
  }
301
304
  };
@@ -371,7 +374,10 @@ var CodeEditor = class {
371
374
  task.continue("Install Zed");
372
375
  if (!await context.dependencyManager.commandExists("zed")) await execa("curl -f https://zed.dev/install.sh | sh", { shell: true });
373
376
  task.continue("Copy configuration");
374
- await fs.cp(sourceDirectoryPath, destinationDirectoryPath, { recursive: true });
377
+ await fs.cp(sourceDirectoryPath, destinationDirectoryPath, {
378
+ recursive: true,
379
+ dereference: true
380
+ });
375
381
  task.finish();
376
382
  }
377
383
  };
@@ -460,7 +466,10 @@ var Fonts = class {
460
466
  task.continue("Create fonts directory");
461
467
  await fs.mkdir(destinationDirectoryPath, { recursive: true });
462
468
  task.continue("Copy fonts");
463
- await fs.cp(sourceDirectoryPath, destinationDirectoryPath, { recursive: true });
469
+ await fs.cp(sourceDirectoryPath, destinationDirectoryPath, {
470
+ recursive: true,
471
+ dereference: true
472
+ });
464
473
  task.finish();
465
474
  }
466
475
  };
@@ -490,7 +499,7 @@ var PasswordManager = class {
490
499
  const task = new Task("Password Manager");
491
500
  context.logger.add(task);
492
501
  task.start();
493
- const dependencies = ["libasound2t64", "1password"];
502
+ const dependencies = [alsaPackageName(await fs.readFile(path.join("/", "etc", "os-release"), "utf8")), "1password"];
494
503
  if (await context.dependencyManager.isInstalled(dependencies)) {
495
504
  task.finish();
496
505
  return;
@@ -520,6 +529,10 @@ var PasswordManager = class {
520
529
  task.finish();
521
530
  }
522
531
  };
532
+ function alsaPackageName(osRelease) {
533
+ const versionId = osRelease.match(/^VERSION_ID="?([\d.]+)"?$/m)?.[1];
534
+ return Number.parseInt(versionId ?? "", 10) >= 24 ? "libasound2t64" : "libasound2";
535
+ }
523
536
  //#endregion
524
537
  //#region source/modules/shell-configuration/shell-configuration.ts
525
538
  var ShellConfiguration = class {
@@ -619,7 +632,10 @@ var Wallpapers = class {
619
632
  task.continue("Create backgrounds directory");
620
633
  await fs.mkdir(destinationDirectoryPath, { recursive: true });
621
634
  task.continue("Copy wallpapers");
622
- await fs.cp(sourceDirectoryPath, destinationDirectoryPath, { recursive: true });
635
+ await fs.cp(sourceDirectoryPath, destinationDirectoryPath, {
636
+ recursive: true,
637
+ dereference: true
638
+ });
623
639
  task.finish();
624
640
  }
625
641
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hurshb50/setup-ubuntu",
3
- "version": "1.0.3",
3
+ "version": "1.1.1",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "distribution"