Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .erb/scripts/start-main-dev.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// Electron 29 runs on Node 20, whose ESM entrypoint loader does not understand
// .ts files through the CommonJS ts-node/register hook. Keep the dev main
// process on the repo's CommonJS ts-node path by loading a JS bootstrap first.
require('ts-node/register/transpile-only');
require('../../src/apps/main/main.ts');
2 changes: 1 addition & 1 deletion .github/workflows/find-dead-code.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'

- name: Install dependencies
run: npm ci --ignore-scripts
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
Expand All @@ -36,7 +36,7 @@ jobs:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
Expand All @@ -56,7 +56,7 @@ jobs:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '18.x'
node-version-file: '.nvmrc'

- name: Create .npmrc file
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sonar-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'

- name: Install system dependencies
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ jobs:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install system dependencies
Expand Down Expand Up @@ -47,7 +47,7 @@ jobs:
- name: Use Node.js
uses: actions/setup-node@v4
with:
node-version: 18
node-version-file: '.nvmrc'
cache: 'npm'

- name: Install dependencies
Expand Down
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
20
47 changes: 5 additions & 42 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,39 +8,6 @@ As of right now, Internxt Drive Desktop for Linux is only compatible with Ubuntu

We cannot guarantee that the app will work properly on other Linux distributions or with other file explorers as our development and testing efforts are focused on ensuring the best experience for Ubuntu and Debian users.

### FUSE 2

This application requires **FUSE 2** for the virtual drive functionality. FUSE 3 is not supported. On recent Ubuntu versions, `libfuse2` may need to be installed manually:

#### For example, on Debian (>= 13) and Ubuntu (>= 24.04):

```bash
sudo add-apt-repository universe
sudo apt install libfuse2t64
```

**Note:** In Ubuntu 24.04, the libfuse2 package was renamed to libfuse2t64.

#### For example, on Ubuntu (>= 22.04):

```bash
sudo add-apt-repository universe
sudo apt install libfuse2
```

**Warning:** While libfuse2 is OK, do not install the fuse package as of 22.04 or you may break your system. If the fuse package did break your system, you can recover as described [here](https://github.com/orgs/AppImage/discussions/1339).

#### For example, on Ubuntu (<= 21.10):

```bash
sudo apt install fuse libfuse2
sudo modprobe fuse
sudo groupadd fuse

user="$(whoami)"
sudo usermod -a -G fuse $user
```

## Installation

Internxt Drive is available for Linux in two formats:
Expand All @@ -50,16 +17,16 @@ Internxt Drive is available for Linux in two formats:
Download and install the `.deb` package for full compatibility:

```bash
sudo dpkg -i internxt_2.5.1_amd64.deb
sudo dpkg -i internxt_2.6.0_amd64.deb
```

### AppImage

Alternatively, you can use the AppImage format:

```bash
chmod +x Internxt-2.5.1.AppImage
./Internxt-2.5.1.AppImage
chmod +x Internxt-2.6.0.AppImage
./Internxt-2.6.0.AppImage
```

#### ⚠️ Important Note about AppImage and SSO Login:
Expand All @@ -73,7 +40,7 @@ For the best experience with SSO authentication, we recommend using the .deb pac
### Prerequisites

- [NVM](https://github.com/nvm-sh/nvm) (Node Version Manager)
- Node.js 18
- Node.js 20

If working on the FUSE daemon (Go), see [packages/fuse-daemon/README.md](packages/fuse-daemon/README.md) for Go and linting tool prerequisites.

Expand Down Expand Up @@ -111,10 +78,6 @@ sudo apt-get install rpm

## Login Configuration Using Deeplink

To log in via deeplink in development mode, special configuration is required due to limitations in Electron 19.

### Create Entry-Point Script

Create a script in the root of the project named `enable-sso.sh` and add the following content:

```
Expand All @@ -124,7 +87,7 @@ export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

cd "/your-project-path/drive-desktop-linux"
nvm use 18
nvm use 20
npm run start:main "$@"
```

Expand Down
2 changes: 1 addition & 1 deletion beforeBuild.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const electronRebuild = require('electron-rebuild');
const electronRebuild = require('@electron/rebuild');
Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This got changed because i saw that the dependency electron-rebuild got deprecated in favor of this new one, and they also state that there is not api change, just package name


module.exports = async (context) => {
const { appDir, electronVersion, arch } = context;
Expand Down
Loading
Loading