Setup Development environment quickly and get started


#1

I have been searching for a recent step by step guide to setup a dev environment for diaspora.
I am new to gem and ruby so not sure what version is best to use etc,… In the wiki install guides I see ruby2.3 being used but on my production lab for instance, I used a 18.04 ubuntu distro and the diaspora-installer. It is using ruby2.5 already…

What do you use to dev and test changes on diaspora ?

https://wiki.diasporafoundation.org/Installation/Vagrant_puppet_capistrano#How_to_set_up_a_Development_Environment ? It is pretty old so probably many things have changed.


(Benjamin Neff) #2

The Vagrant page is probably pretty out of date, because nobody is actively using and therefore maintaining it.

You can use the Guide for 16.04 https://wiki.diasporafoundation.org/Installation/Ubuntu/Xenial, that should probably work for 18.04 too (which is not released yet). If something needs to be changed for 18.04 that would be good to know so we can change that when we add a guide for 18.04.


#3

Following https://wiki.diasporafoundation.org/Installation/Ubuntu/Xenial didn’t work for me. Using a base brand new 16.04 with mariadb, I ran into dependancy issues at this stage

bin/bundle install --full-index, some gem would not install due to diverse issues… I fixed some but not all…

The nginx conf is not clear/up to date as well.

Eventually, I upgraded to 18.04 beta and used the diaspora-installer package 7.3.99
it helps with setting up nginx.conf actually ( using a socket rather than port 3000 which was the issue with wiki steps … port 3000 is not used currently when running diaspora service )

Now using the diaspora-installer package has some limitation, it doesn’t setup rvm, etc,…

I have tried to run my install in RAILS_ENV = development but it fails on gem dependencies on mysql2…


(Benjamin Neff) #4

It would be important to know what issues you had, so we can fix the guide if there is something missing.

You wrote you want a development setup, so you don’t need an nginx. The nginx config is for production setup, which works with the socked by default, while development setups work in port 3000 by default (and as said, don’t need an nginx). But it should be up to date for production setups.

Also: the diaspora-installer package is for production setups, it’s not made to run in development mode.

When you want to setup a development setup you maybe had the wrong version of the guide, so you need this Version: https://wiki.diasporafoundation.org/Installation/Ubuntu/Xenial?db=mariadb&mode=development#Versions_of_this_guide


(Hank G) #5

As an FYI I followed the 16.04 development postgres instructions on a fresh Linux Mint image and it pretty much went off without a hitch. Now that it’s installed and running I have questions about best practices that aren’t jumping out at me but that’s going in a separate post.


#6

ah cool thx for letting me, I suspect most people use Postgres maybe that’s why no on reported the problem before… I didn’t take any note at the time so I can’t give more details unfortunately.
I plan to update to 7.4.0 so I ll need to pull the git at some point and setup rvm, etc…
NOTE: the diaspora.yml in diaspora-installer package 7.3.99 is not up to date. There are lots of differences with the GitHub config, namely all the relay settings are missing…


(Benjamin Neff) #7

Yes, that’s how it should be, and usually is when you don’t skip any steps :slight_smile:

I use mariadb on my dev installation and can’t remember any problems.

I can only quote this:


#8

Benjamin, make no mistake, I am one of the best idiot proofing people around. If you want to improve things, you need to break them first :wink:
PS: I actually didn’t skip any steps, and I tried a few times with same outcome… Just take this as a feedback, again , I didn’t take any notes, so no details and nothing to do… But if someone comes back with similar comment later, then you start to get a pattern… #my2cents

As for the production install package, why is that person not involved here ? Updates should never be done manually, any professional will tell you that, this is standard across the industry and quite common sense…


(Dennis Schubert) #9

Don’t know, ask them. This package is neither maintained nor supported by the core team, and as such, we are not able to provide support for issues with that package here on Discourse. And that’s the end of this story, really. If you have an issue with the Debian package, head over to the Debian bugtracker, which I already linked you.


(Dennis Schubert) closed #10

Off-topic discussion about unsupported installation methods, original question resolved.

If you have additional steps that would require amending the official installation documentation, either edit the wiki directly or open a new thread.