The brand new app scaffolding tool in our app store |
What's simpler than downloading a zip file, extracting it and running a command in the resulting folder to get an Nextcloud server up on
localhost
for hacking?Yes, it can be that simple, though it might require a few minor tweaks and you have to make sure to have all Nextcloud dependencies installed.
Note that this is useful if you want to develop an Nextcloud app. If you want to develop on the Nextcloud core, a git checkout is the way to go and you'll need some extra steps to get the dependencies in place, get started here. Feedback on this process is highly appreciated, especially if it comes with a pull request for our documentation of course ;-)
Step 1 and Two: Dependencies
- Install PHP and the modules mentioned here
Your distro should make the installation easy. Try these:
- openSUSE:
zypper in php5 php5-ctype php5-curl php5-dom php5-fileinfo php5-gd php5-iconv php5-json php5-ldap php5-mbstring php5-openssl php5-pdo php5-pear php5-posix php5-sqlite php5-tokenizer php5-xmlreader php5-xmlwriter php5-zip php5-zlib
- Debian:
apt-get install php5 php5-json php5-gd php5-sqlite curl libcurl3 libcurl3-dev php5-curl php5-common php-xml-parser php5-ldap bzip2
- openSUSE:
- Make Nextcloud session management work under your own user account.
Either change the path of php session files orchmod 777
the folder they are in, usually something like/var/lib/php
(debian/SUSE) or/var/lib/php/session
(Red Hat).
The Final Four Steps
- Download the latest Nextcloud zip file.
- Extract it in a folder where you want to get going.
- Enter the folder and execute:
php -S localhost:5000
- Visit http://localhost:5000 in your browser
Nextcloud should present you with its installation steps! Give your username and password and you're up and running with SQLite.
Start with the app
Now you create a subfolder in the nextcloud/apps with the name of your app and put in a skeleton. You can generate an app skeleton really easy: use the scaffolding tool, part of our new app store for Nextcloud 11!It's probably wise to now get going with the app development tutorial here. This isn't updated for the scaffolding tool yet, so you'll have a head start here. Be sure to check out the changelog, we try to make sure the latest changes are noted there so even if we didn't manage to fully update the tutorial, you can find out what will and won't work in the changelog. Also, be sure to update the links to get the latest dev doc - this all links to 11, once that is out it is probably better to directly target 12 and so on.
Help and feedback
Your input is very much welcome! If you run through these steps and get stuck somewhere, let me know and I'll update the documentation. Or, of course better still, do a pull request on the documentation right in github. You don't even have to do a full checkout, smaller fixes can easily be done in the web interface on github.Last but not least, ask questions on our forums in the app dev channel or on IRC. Here is the Nextloud development IRC chat channel on freenode.net, also accessible via webchat.
Thanks, good luck, and have fun building Nextcloud apps!