neoagent 2.3.1-beta.79 → 2.3.1-beta.80

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/lib/manager.js CHANGED
@@ -985,10 +985,17 @@ async function ensureQemuInstalled() {
985
985
  logInfo('Running "brew install qemu"...');
986
986
  runOrThrow('brew', ['install', 'qemu']);
987
987
  } else if (platform === 'linux') {
988
+ const isArm = process.arch === 'arm64' || process.arch === 'aarch64';
988
989
  if (commandExists('apt-get')) {
989
- logInfo('Running "sudo apt-get update && sudo apt-get install -y qemu-system-x86 qemu-utils"...');
990
+ const pkgs = ['qemu-utils'];
991
+ if (isArm) {
992
+ pkgs.push('qemu-system-arm');
993
+ } else {
994
+ pkgs.push('qemu-system-x86');
995
+ }
996
+ logInfo(`Running "sudo apt-get update && sudo apt-get install -y ${pkgs.join(' ')}"...`);
990
997
  runOrThrow('sudo', ['apt-get', 'update']);
991
- runOrThrow('sudo', ['apt-get', 'install', '-y', 'qemu-system-x86', 'qemu-utils']);
998
+ runOrThrow('sudo', ['apt-get', 'install', '-y', ...pkgs]);
992
999
  } else if (commandExists('dnf')) {
993
1000
  logInfo('Running "sudo dnf install -y qemu-kvm qemu-img"...');
994
1001
  runOrThrow('sudo', ['dnf', 'install', '-y', 'qemu-kvm', 'qemu-img']);
@@ -996,7 +1003,7 @@ async function ensureQemuInstalled() {
996
1003
  logInfo('Running "sudo yum install -y qemu-kvm qemu-img"...');
997
1004
  runOrThrow('sudo', ['yum', 'install', '-y', 'qemu-kvm', 'qemu-img']);
998
1005
  } else {
999
- throw new Error('Unsupported Linux distribution. Please install qemu-system-x86 and qemu-utils manually.');
1006
+ throw new Error('Unsupported Linux distribution. Please install qemu-system and qemu-utils manually.');
1000
1007
  }
1001
1008
  } else {
1002
1009
  throw new Error('Unsupported platform for automatic QEMU installation. Please install QEMU manually.');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "neoagent",
3
- "version": "2.3.1-beta.79",
3
+ "version": "2.3.1-beta.80",
4
4
  "description": "Proactive personal AI agent with no limits",
5
5
  "license": "MIT",
6
6
  "main": "server/index.js",
@@ -1 +1 @@
1
- 22bbadf1f2ea672ae483857a022cb8a8
1
+ c4f02a78bf62d1a1a5b124fc35ed3521
@@ -37,6 +37,6 @@ _flutter.buildConfig = {"engineRevision":"42d3d75a56efe1a2e9902f52dc8006099c45d9
37
37
 
38
38
  _flutter.loader.load({
39
39
  serviceWorkerSettings: {
40
- serviceWorkerVersion: "2070448138" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
40
+ serviceWorkerVersion: "3936325548" /* Flutter's service worker is deprecated and will be removed in a future Flutter release. */
41
41
  }
42
42
  });
@@ -127331,7 +127331,7 @@ r===$&&A.b()
127331
127331
  o.push(A.id(p,A.iS(!1,new A.a3(B.tF,A.e_(new A.cU(B.h8,new A.a5o(r,p),p),p,p),p),!1,B.I,!0),p,p,0,0,0,p))}r=!1
127332
127332
  if(!s.ay)if(!s.ch){r=s.e
127333
127333
  r===$&&A.b()
127334
- r=B.b.A("mp2gc5nk-6661ee0").length!==0&&r.b}if(r){r=s.d
127334
+ r=B.b.A("mp2h37q0-7a8973e").length!==0&&r.b}if(r){r=s.d
127335
127335
  r===$&&A.b()
127336
127336
  r=r.V&&!r.a0?84:0
127337
127337
  q=s.e
@@ -131991,7 +131991,7 @@ $S:324}
131991
131991
  A.Y_.prototype={}
131992
131992
  A.R_.prototype={
131993
131993
  mJ(a){var s=this
131994
- if(B.b.A("mp2gc5nk-6661ee0").length===0||s.a!=null)return
131994
+ if(B.b.A("mp2h37q0-7a8973e").length===0||s.a!=null)return
131995
131995
  s.zY()
131996
131996
  s.a=A.pN(B.Pq,new A.b3i(s))},
131997
131997
  zY(){var s=0,r=A.l(t.H),q,p=2,o=[],n=this,m,l,k,j,i,h,g,f
@@ -132009,7 +132009,7 @@ if(!t.f.b(k)){s=1
132009
132009
  break}i=J.Z(k,"buildId")
132010
132010
  h=i==null?null:B.b.A(J.r(i))
132011
132011
  j=h==null?"":h
132012
- if(J.bi(j)===0||J.c(j,"mp2gc5nk-6661ee0")){s=1
132012
+ if(J.bi(j)===0||J.c(j,"mp2h37q0-7a8973e")){s=1
132013
132013
  break}n.b=!0
132014
132014
  n.J()
132015
132015
  p=2
@@ -132026,7 +132026,7 @@ case 2:return A.i(o.at(-1),r)}})
132026
132026
  return A.k($async$zY,r)},
132027
132027
  v0(){var s=0,r=A.l(t.H),q,p=2,o=[],n=this,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1
132028
132028
  var $async$v0=A.h(function(a2,a3){if(a2===1){o.push(a3)
132029
- s=p}for(;;)switch(s){case 0:if(B.b.A("mp2gc5nk-6661ee0").length===0||n.c){s=1
132029
+ s=p}for(;;)switch(s){case 0:if(B.b.A("mp2h37q0-7a8973e").length===0||n.c){s=1
132030
132030
  break}n.c=!0
132031
132031
  n.J()
132032
132032
  p=4
@@ -294,17 +294,19 @@ function buildQemuArgs({
294
294
 
295
295
  if (hostShareRoot) {
296
296
  const id = 'fsdev-host';
297
+ const deviceType = arch === 'arm64' ? 'virtio-9p-device' : 'virtio-9p-pci';
297
298
  args.push(
298
299
  '-fsdev', `local,path=${hostShareRoot},id=${id},security_model=none,readonly=on`,
299
- '-device', `virtio-9p-pci,fsdev=${id},mount_tag=neoagent-host`,
300
+ '-device', `${deviceType},fsdev=${id},mount_tag=neoagent-host`,
300
301
  );
301
302
  }
302
303
 
303
304
  if (hostDataRoot) {
304
305
  const id = 'fsdev-data';
306
+ const deviceType = arch === 'arm64' ? 'virtio-9p-device' : 'virtio-9p-pci';
305
307
  args.push(
306
308
  '-fsdev', `local,path=${hostDataRoot},id=${id},security_model=none`,
307
- '-device', `virtio-9p-pci,fsdev=${id},mount_tag=neoagent-data`,
309
+ '-device', `${deviceType},fsdev=${id},mount_tag=neoagent-data`,
308
310
  );
309
311
  }
310
312