update application offering following #369
c.f. Fediversity/Fediversity#369
This commit is contained in:
		
							parent
							
								
									e0bb8adabe
								
							
						
					
					
						commit
						d233e9204f
					
				
					 1 changed files with 14 additions and 28 deletions
				
			
		|  | @ -72,38 +72,24 @@ Tests will concisely describe the abilities the Fediversity system provides. | ||||||
| these tests can be run on any sufficiently powerful machine with Nix installed, and reliably validate that the use cases work as intended. | these tests can be run on any sufficiently powerful machine with Nix installed, and reliably validate that the use cases work as intended. | ||||||
| The proposed work is realistically achievable. | The proposed work is realistically achievable. | ||||||
| 
 | 
 | ||||||
| ## Identified applications | ## Applications | ||||||
| 
 | 
 | ||||||
| As the initial application to be supported, we have selected [Forgejo](https://forgejo.org/), given it: | To demonstrate our functionality, we integrate our work with NGI Zero project [SelfHostBlocks](https://github.com/ibizaman/selfhostblocks), which offers the interfaces for applications to indicate their needs, for our purpose of data portability notably including back-up and restore, and is in the process of [preparing an RFC](https://discourse.nixos.org/t/pre-rfc-decouple-services-using-structured-typing/58257) to get these practices upstreamed to nixpkgs. | ||||||
| 
 | 
 | ||||||
| 1. is supported in [SelfHostBlocks](https://github.com/ibizaman/selfhostblocks), facilitating implementation | At the time of writing, applications it supports include: | ||||||
| 1. is part of our own infrastructure, allowing us to bootstrap |  | ||||||
| 1. given the above, makes our development team self-sufficient for the purpose of its initial user feedback cycle |  | ||||||
| 1. relevant features are merged upstream |  | ||||||
| 1. uses a language featuring static typing, offering it a baseline level of robustness |  | ||||||
| 
 | 
 | ||||||
| Our consideration to limit the initially supported applications is to keep focus on our core innovation, as properly adding support for applications may involve: | - [Arr](https://wiki.servarr.com/) | ||||||
|  | - [Audiobookshelf](https://www.audiobookshelf.org/) | ||||||
|  | - [Deluge](https://deluge-torrent.org/) | ||||||
|  | - [Forgejo](https://forgejo.org/) | ||||||
|  | - [Grocy](https://grocy.info/) | ||||||
|  | - [Hledger](https://hledger.org/) | ||||||
|  | - [Home Assistant](https://www.home-assistant.io/) | ||||||
|  | - [Jellyfin](https://jellyfin.org/) | ||||||
|  | - [Nextcloud](https://nextcloud.com/) | ||||||
|  | - [Vaultwarden](https://github.com/dani-garcia/vaultwarden) | ||||||
| 
 | 
 | ||||||
| - PoC: | The result of the work should be generic enough to support any NGI packages implementing such interfaces. | ||||||
|     - compartmentalising state for backups/portability/redundancy |  | ||||||
|     - migration actions such as rewrites of connections/URLs |  | ||||||
|     - integration with single sign-on and LDAP for user management (or as a stop-gap, provisioning of initial user) |  | ||||||
| - MVP: |  | ||||||
|     - handling application upgrades |  | ||||||
|     - creating schemas of (identified relevant) settings |  | ||||||
|     - documentation |  | ||||||
|     - hardening |  | ||||||
| - post-MVP: |  | ||||||
|     - handling backward-incompatible setting interface changes |  | ||||||
|     - coordinating with end-users to improve the user experience |  | ||||||
| - if missing first-class Nix support: |  | ||||||
|     - packaging for Nix |  | ||||||
|     - creating NixOS service module |  | ||||||
|     - integrating with identified contracts (see SelfHostBlocks) |  | ||||||
|     - maintaining the above on version updates |  | ||||||
|     - coordinating with upstream developers on immutable-friendly development |  | ||||||
| 
 |  | ||||||
| The result of the work in the hosting vertical should be generic enough to support all NGI packages sufficiently documented and packaged in NixOS. |  | ||||||
| 
 | 
 | ||||||
| ## Methodology challenges | ## Methodology challenges | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue