User Tools

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
services:alist [2025/03/19 09:40] willyservices:alist [2025/07/25 07:34] (current) willy
Line 1: Line 1:
-====== AList  ======+====== OpenList  ======
  
-[[https://alist.nn.ci/|AList]] is a nice tool to make your shares accessible online. +[[https://doc.oplist.org/|OpenList]] is a nice tool to make your shares accessible online. Initially developed as //AList//, around mid 2025 it has then beed forked by the OpenListTeam, because //AList// has been sold/moved to new company that has been cought doing shady stuff on the sources.
- +
-Overall documentation can be reached [[https://alist.nn.ci/guide/|here]]somehow the direct link is bit hidden in the overall mix of Chinese and English.+
  
 The funny thing is that this is a Chinese devleoped open source app. You can see it by the quality of the translations, somehow this make it more interesting to me, as non-English Open Source community needs to be helped and supported as much as possible for a richer and more diverse ecosystem. I am not bothered by //security// since i trust China not less nor more than the US (or whatever other country...). The funny thing is that this is a Chinese devleoped open source app. You can see it by the quality of the translations, somehow this make it more interesting to me, as non-English Open Source community needs to be helped and supported as much as possible for a richer and more diverse ecosystem. I am not bothered by //security// since i trust China not less nor more than the US (or whatever other country...).
  
-I admire how AList guys are trying hard to provide english documentation, and it's another positive point toward the project, which is also actively maintained.+I admire how OpenList guys are trying hard to provide english documentation, and it's another positive point toward the project, which is also actively maintained.
  
 +The fuss around the AList/OpenList migration also proved how resillient can Open Source be.
  
  
 ===== Installation ===== ===== Installation =====
  
-Very simple to host without containers, the porject releases binary packages on GitHub. Download your preferred release [[https://github.com/AlistGo/alist/releases|here]], grab the appropriate binary (linux, amd64, or whatever your self hosting architecture is).+Since i installed AList then migrated to OpenList, i will keep the older paths references to AList in the following, to match my setup. Feel free to rename any AList reference to OpenList. 
 + 
 +Very simple to host without containers, the porject releases binary packages on GitHub. Download your preferred release [[https://github.com/OpenListTeam/OpenList/releases|here]], grab the appropriate binary (linux, amd64, or whatever your self hosting architecture is).
  
-The AList will need to be installed as user //fileserver// and group //users//, see [[selfhost:fileserver|this page]] for more details.+The OpenList will need to be installed as user //fileserver// and group //users//, see [[selfhost:fileserver|this page]] for more details.
  
 The daemon itself will be stored under **/dada/daemons/fileserver**, while it's data will be split between: The daemon itself will be stored under **/dada/daemons/fileserver**, while it's data will be split between:
Line 30: Line 31:
 chown fileserver /data/shares/alist_data chown fileserver /data/shares/alist_data
 su - fileserver su - fileserver
-wget https://github.com/AlistGo/alist/releases/download/<< version >>/alist-linux-amd64.tar.gz+wgethttps://github.com/OpenListTeam/OpenList/releases/download/<< version >>/alist-linux-amd64.tar.gz
 mkdir bin mkdir bin
 cd bin cd bin
-tar xvf ../alist-linux-amd64.tar.gz+tar xvf ../openlist-linux-amd64.tar.gz
 </code> </code>
  
Line 200: Line 201:
 === SSO === === SSO ===
  
-If yo uhave setup your SSO backend, like i describe in [[selfhost:sso|this]] page, go to //management// -> //settings// -> //Single Sign ON// to enable the link to your Authelia.+**Note:** so far i failed at setting up Authelia in AList. The following notes are as far as i got, but currently there seems to be no communication between Authelia and AList itself. 
 + 
 +If you have setup your SSO backend, like i describe in [[selfhost:sso|this]] page, go to //management// -> //settings// -> //Single Sign ON// to enable the link to your Authelia
 + 
 +The official documentation [[https://alist.nn.ci/guide/advanced/sso.html#sso-full-fill-demo|here]] is very detailed, hoping you can read Chinese (i cannot)... Otherwise, follow the indications below. 
 + 
 +Authelia configuration section, to be added to /home/authelia/configuration.yml: 
 +<code> 
 +    clients: 
 +      - client_id: '<< generate a custom client id, see below >>' 
 +        client_secret: '<< generate a custom client secret, see below, the digest goes here >>' 
 +        client_name: 'alist' 
 +        public: false 
 +        authorization_policy: 'one_factor' 
 +        redirect_uris: 
 +          - https://drive.mydomain.com/api/auth/sso_callback\?method=sso_get_token 
 +          - https://drive.mydomain.com/api/auth/sso_callback\?method=get_sso_id 
 +        scopes: 
 +          - 'openid' 
 +          - 'profile' 
 +          - 'email' 
 +        userinfo_signed_response_alg: 'none' 
 +</code> 
 + 
 +To generate a ClientID: 
 +<code bash> 
 +authelia crypto rand --length 72 --charset rfc3986 
 +</code> 
 + 
 +To generate a Client Secret: 
 +<code bash> 
 +authelia crypto hash generate pbkdf2 --variant sha512 --random --random.length 72 --random.charset rfc3986 
 +</code> 
 +Please note **both** the digest and the password itself! 
 + 
 +In AList use the following information: 
 +  * Platform: OIDC 
 +  * Client ID: use the one generated above 
 +  * Client secret: use the one generated above, the password, not the digest 
 +  * Sso oidc username key: preferred_username 
 +  * Sso organization name: user 
 +  * Sso application name: user 
 +  * Sso extra scopes: openid email profile 
 +  * SSO endpoint name: https://login.mydomain.com/.well-known/openid-configuration 
 +  * SSO auto register: create AList users from SSO users 
 +  * SSO default permission: a sum of all the extra permissions. Use 768 for WebDAV access and editing.
  
-.... WIP ... 
  
  
Line 239: Line 284:
 </code> </code>
  
 +
 +===== Update =====
 +
 +Just replace the binary with a new one and restart the service.