ipfs / ipfs/ipfs-desktop

IPFS Desktop should install go-ipfs as a service

Open
#1,977 2 comments 1 reaction 0 assignees View on GitHub
area/windows exp/intermediate help wanted need/analysis need/community-input P2
Dominant language
JavaScript
Stars
6.6k
Forks
903
Avg merge
4d 13h
Merged PRs (30d)
5

Description

**Is your feature request related to a problem? Please describe.**
This feature request stemmed from an issue on Windows where IPFS was randomly going full throttle, presumably to do DHT bootstrapping or the like.

Since IPFS Desktop and go-ipfs are running as a normal user app in the system try, it treats go-ipfs with the default "normal" process priority. When CPU usage gets high, it interferes with most all other user applications that are open.

As a temporary workaround, you can restrict the number of processor cores allowed, or lower the process priority from task manager.

I've seen some Linux users use a much nicer workaround -- running go-ipfs as a service and setting the priority lower by default.

**Describe the solution you'd like**
Having IPFS Desktop install go-ipfs as a service on Linux, Windows, etc, allows for
- Better lifecycle management
- Improved system task scheduling
- Automatic restart on failure
- Autostart on login
- Running under a different or system user.
- Automatically lowering Scheduler priority, so high CPU usage doesn't interfere with actual user apps.

**Describe alternatives you've considered**
- Manually setting up the service myself and using the webui instead of IPFS Desktop. A lot of hassle for something that should be enabled by default...

**Additional context**
![image](https://user-images.githubusercontent.com/9384894/153282580-a6e9f1ec-2d12-42b1-b53b-520f9c0ca38d.png)

![image](https://user-images.githubusercontent.com/9384894/153282468-504c553a-620e-4bc6-ab8a-b1199fd6fb1b.png)

![image](https://user-images.githubusercontent.com/9384894/153282631-4e750412-7f4e-46f7-9add-4bd5238861e5.png)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.