1 Star 0 Fork 0

CRH380AM-3024 / ipfs-desktop

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

IPFS Desktop

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

IPFS Desktop

total download count latest release download count

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.

Table of Contents

Features

IPFS daemon always running

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'.

Handle ipfs://, ipns:// and dweb: links

IPFS 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.

Adds ipfs to your system

If 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.

Easy add to IPFS

You can easily add files and folders to IPFS:

  • On Windows, you can right click on files to add them to IPFS through IPFS Desktop.
  • On macOS, you can drag and drop them to the tray icon.

Download copied hashes

You can enable, on Settings, a shortcut to download an hash on the keyboard.

Auto-add screenshots

You can enable, on Settings, a shortcut to take screenshots and add them automatically to IPFS.

Install

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:

  • Homebrew - brew cask install ipfs
  • Chocolatey - choco install ipfs-desktop
  • Snap - snap install ipfs-desktop
  • AUR - 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.

Install from Source

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.

Translations

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.

Releasing

  • (Optional) Create a new Draft Release.
  • Bump the version in package.json
  • Create a tag with the same version: git tag vA.B.C
  • Publish local changes and the tag to GitHub repo: git push && git push origin vA.B.C
  • Wait for the CI to upload the binaries to the draft release (a new one will be created if you haven't drafted one).
  • The 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.
  • Notarize .dmg at Apple (context: #1365)
    1. Download .dmg from https://github.com/ipfs-shipyard/ipfs-desktop/releases/vA.B.C
    2. Ensure 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.
    3. Run node pkgs/macos/notarize-cli.js ./IPFS-Desktop-A.B.C.dmg
  • Update Homebrew Cask.
  • Update Chocolatey package:
    1. Wait for the artefact on the releases page
    2. Run node pkgs/chocolatey/update.js $version - this script will update a few files:
      1. Update the version number on ipfs-desktop.nuspec
      2. Update the binary URL on chocolateyinstall.ps1
      3. Update the SHA256 of the binary on chocolateyinstall.ps1
    3. Git commit with pubchoco in the commit message. Then CI should:
      1. cd pkgs/chocolatey
      2. choco pack - generates a .nupkg file.
      3. choco push $generated_nupkg --key $api --source https://push.chocolatey.org
  • To start work on the next version, bump the version in the package.json and repeat theses steps.

Contribute

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.

FAQ

Where is the configuration and logs?

The configuration file and logs are located on:

  • Mac: ~/Library/Application Support/IPFS Desktop/
  • Windows: %appdata%/IPFS Desktop/
  • Linux: ~/.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.

How do we select the IPFS repo location?

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.

Which version of IPFS are we running?

Since we're using ipfsd-ctl, we have our own embedded IPFS binary. We try to always have the latest version.

Which flags do we use to boot IPFS?

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.

Troubleshooting

Does not start on Linux (Debian 10)

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

License

MIT Protocol Labs, Inc.

The MIT License (MIT) Copyright (c) 2019 Protocol Labs, Inc. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

An unobtrusive and user-friendly desktop application for IPFS on Windows, Mac and Linux. 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/wdaispace/ipfs-desktop.git
git@gitee.com:wdaispace/ipfs-desktop.git
wdaispace
ipfs-desktop
ipfs-desktop
master

搜索帮助