Nextcloud 101: apps vs. custom_apps

Hello Forum, I have some questions regarding my understanding of “apps” vs “custom_apps”:

What is a custom app anyway? I think, it’s an app that I (or someone else) code from scratch and put that code directly into that “custom_apps” dir?

Any App I get via “occ app:install” or via the web GUI is not custom but should end up in “apps” dir?

Now I am puzzled, cause an install with “occ app:install” ended up in “custom_apps” instead. Then also Nextcloud complained about “extra_files” while checking for signatures. I moved the installed apps from “custom_apps” to “apps” and the complaint has gone away after “rescan files”.

Is there any difference between installation methods?
Where should apps from the “official repo” (?) end up?
Why do I need “custom_apps” folder, when I don’t code my own apps?
Or is there something like “per user installed” apps that I don’t know about?

FYI: I am talking about group_folders and login_notes.

Have you seen the docs covering the topic? Apps management — Nextcloud latest Administration Manual latest documentation

If you still have questions that’s fine, but not clear from your post.

custom_apps is just an arbitrary name. It’s often something else. You’ll see it a lot because the micro-services Docker image uses it.

1 Like

I know that part of the documentation. But it does not explain, what a “custom” or “extra” app actually is. Does it include the apps from the repo? Or in other words: Are “apps shipped with Nextcloud” only those from the Nextcloud “tar.bz”-file, or are official repo apps also considered as “shipped with Nextcloud”. Or is an app from repo a “third party app” already?

You say, it’s not clear from my post, what questions I have. I disagree. I have several (see the question marks) and I could repeat them here, but that won’t help readability.

Shipped apps are any that are installed by default. The official list is here: server/core/shipped.json at ed11a922548ddc21fd11a4c4d061857ea1318e2e · nextcloud/server · GitHub

One doesn’t need to configure any additional apps paths. Though it’s become fairly common because the entire installation is tidier and it’s clearer what needs to be backed up or restored. And it can simplify things if one wants to split off their apps onto separate partitions.

However if you do so, the one that is writable will be used for apps you install via the app store. And the non-writable one will only contain shipped apps. That’s what the example is in the docs.

“custom” or “extra” are just arbitrary names in some example configurations. You could maybe call them store-apps or local-apps if you want.

One of the common use cases is packagers / imager builders that want to keep the shipped apps separate from local apps to facilitate easier updating, migrations, and/or backups.

1 Like

Ok, thanks, that helped.

1 Like

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.