server icon indicating copy to clipboard operation
server copied to clipboard

readme lacks information to setup a development environment

Open KaukaHan opened this issue 3 years ago • 4 comments

the readme lacks essential information like the python version. witch is not in the default package-manager of my distro. Maybe a script that sets up everything automatically helps attracting more contributers.

KaukaHan avatar Nov 22 '21 10:11 KaukaHan

You can look it up in the pipfile https://github.com/FAForever/server/blob/aac3d2c25edac5ad682efbdf887afc8ca5054f84/Pipfile#L43-L44

Brutus5000 avatar Nov 22 '21 11:11 Brutus5000

askaholic helped me setting up everything, but this is a barrier for people who contribute to software for their first time in their life like me. If i had not contacted anyone and just tried to follow the readme, the errors might have turned me down.

KaukaHan avatar Nov 22 '21 11:11 KaukaHan

Yea there were a number of things that came up that should really be in the readme, like required software:

  • docker
  • Python 3.7 (with loadable SQLite extensions)
  • Pipenv

Nowhere does it say that you need to install these things. There were also a bunch of other things that I’ll have to go through our discord conversation again to remember.

Askaholic avatar Nov 22 '21 15:11 Askaholic

Ok so from what I helped you with in Discord:

  • Install python3.7
  • Install docker
  • Add yourself to docker group
  • Install pipenv
  • Set PIPENV_VENV_IN_PROJECT=1 in bashrc (technically this is optional but I prefer this way)
  • Shut down some other service that was using port 4000 (OSError: [Errno 98] error while attempting to bind on address ('127.0.1.1', 4000): address already in use)
  • Update the database migration version in your faf-stack and run db migrations
  • Copy faf-stack template config
  • Recompile python with loadable sqlite extensions (necessary option when installing from source)
  • Install Atom plugins
    • linter-flake8
    • isort
  • Fork GitHub repo

These are kindof all the hoops we had to jump through chronologically. Probably not all of them make sense to go into detail on the server README (such as the faf-stack ones), but at least we should mention the potential issues that might arise and how to fix them.

Askaholic avatar Nov 23 '21 07:11 Askaholic