A desktop client for IPFS.
You don't need the command line to run an IPFS node. Just install IPFS Desktop and have all the power of IPFS in your hands. Powered by Web UI.
Download the latest release
brew cask install ipfs
choco install ipfs-desktop
IPFS Desktop allows you to run your IPFS Node on your machine without having to bother with command line tools. With it, you have the power of Web UI on tip of your hands plus a handful of shortcuts you can find on settings.
⚠ Please note that this version is not stable yet and might change. Also, Linux support is still experimental and it might not work on every desktop environment. Please file an issue if you find a bug.
IPFS Desktop's main feature is to allow you to have the IPFS daemon always running in the background. But fear not! If you need to stop it, you can do it just by clicking on 'Stop'.
ipfs://
, ipns://
and dweb:
linksIPFS Desktop has the capacity to handle protocols at the operating system level; i.e., if an application tries to open a link to either ipfs://
, ipns://
or dweb:
, then the OS will call IPFS Desktop, which will handle the link.
For example, if you come across a link on the Internet whose href
attribute is ipns://ipfs.io
, then IPFS Desktop will be able to handle it.
On Windows, an easy way to open a link would be to open the Run window (Win+R), paste the link, and hit Enter. Then, IPFS Desktop handles the rest. The same happens if you try opening the same link in a browser.
ipfs
to your systemIf you're using macOS or Windows and don't have ipfs
installed on your system, IPFS Desktop will automatically install it so it is available through the command line. If you're using Linux, or already have ipfs
installed, you can tell IPFS Desktop to take care of it (and keep it up to date!) by toggling the option on Settings.
You can easily add files and folders to IPFS:
You can enable, on Settings, a shortcut to download an hash on the keyboard.
You can enable, on Settings, a shortcut to take screenshots and add them automatically to IPFS.
Download the latest release of IPFS Desktop for your OS, below.
Platform | Download link | Download count |
---|---|---|
Windows | IPFS-Desktop-Setup-0.10.4.exe | |
Mac | IPFS-Desktop-0.10.4.dmg |
We provide multiple experimental installers for Linux and FreeBSD:
Package | Download link | Download count |
---|---|---|
tar | ipfs-desktop-0.10.4-linux-x64.tar.xz | |
deb | ipfs-desktop-0.10.4-linux-amd64.deb | |
rpm | ipfs-desktop-0.10.4-linux-x86_64.rpm | |
AppImage | ipfs-desktop-0.10.4-linux-x86_64.AppImage | |
freebsd | ipfs-desktop-0.10.4-linux-x64.freebsd |
Or you can use your favorite package manager:
brew cask install ipfs
choco install ipfs-desktop
snap install ipfs-desktop
ipfs-desktop
package maintained by @alexhenrie
Using package managers? Please head to our package managers page and help us add support for yours!
You can find releases notes and older versions on the releases page.
To install it from source you need Node.js >=10.4.0
and
need npm >=6.1.0
installed. This uses node-gyp
so you must take a look at their platform specific dependencies.
Then the follow the steps below to clone the source code, install the dependencies and run it the app:
git clone https://github.com/ipfs-shipyard/ipfs-desktop.git
cd ipfs-desktop
npm ci
npm start
The IPFS Desktop app will launch and should appear in your OS menu bar.
The translations are stored on ./assets/locales and the English version is the source of truth. Other languages are periodically pulled from Transifex, a web interface to help us translate IPFS Desktop and its components to another languages.
package.json
git tag vA.B.C
git push && git push origin vA.B.C
latest.yml, latest-mac.yml, latest-linux.yml
files on the release are used by the app to determine when an app update is available. Once a release is published, users should recieve the app update. See: https://www.electron.build/auto-update..dmg
at Apple (context: #1365)
.dmg
from https://github.com/ipfs-shipyard/ipfs-desktop/releases/vA.B.C
APPLEID
and APPLEIDPASS
are set either as environment variables or entries in .env
file. Those need to belong to the same org as cert used for signing.node pkgs/macos/notarize-cli.js ./IPFS-Desktop-A.B.C.dmg
node pkgs/chocolatey/update.js $version
- this script will update a few files:
pubchoco
in the commit message. Then CI should:
cd pkgs/chocolatey
choco pack
- generates a .nupkg
file.choco push $generated_nupkg --key $api --source https://push.chocolatey.org
Feel free to join in. All welcome. Open an issue!
If you're interested in contributing translations, go to project page on Transifex, create an account, pick a language and start translating.
This repository falls under the IPFS Code of Conduct.
The configuration file and logs are located on:
~/Library/Application Support/IPFS Desktop/
%appdata%/IPFS Desktop/
~/.config/IPFS Desktop/
For quick access to this folders, just right-click on your tray icon and then 'Logs Directory' or 'Configuration File', depending on what you want.
Note for developers: When running dev version via npm start
configuration will be placed in /Electron/
instead of /IPFS Desktop/
(~/.config/Electron/config.json
on Linux). This is a known limitation of dev mode, does not impact packaged versions.
We use ipfsd-ctl, which, in default conditions, will check IPFS_PATH
environment variable. If not set, we fallback to $HOME/.ipfs
. As soon as the first run has succeded, we save the information about the repository location in the configuration file, which becomes the source of truth.
Since we're using ipfsd-ctl, we have our own embedded IPFS binary. We try to always have the latest version.
By default we use the flags --migrate=true --routing=dhtclient ----enable-gc=true
when running the IPFS daemon. They can be changed via the configuration file, which can be easily accessed as mentioned above.
Some Linux users may see an error like this:
The SUID sandbox helper binary was found, but is not configured correctly. Rather than run without sandboxing I'm aborting now. You need to make sure that chrome-sandbox is owned by root and has mode 4755.
or a very short one, when starting in a terminal:
$ ipfs-desktop
$Trace/breakpoint trap
This is a known issue with Electron/Chrome and some hardened kernels. If you are interested in details, read this.
The only reliable way to fix this at the moment is to start the app with additional parameter:
$ ipfs-desktop --no-sandbox
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。