How to install Akaunting web-based accounting software

Work in Progress

Another user posted a little while ago, asking about making Akaunting available for Nethserver. Akaunting is free accounting software with what appears to be a business focus. It sounded interesting, so I took a crack at it. It isn’t entirely working for me with these instructions; I think that’s going to come down to making the .htaccess file work properly (or replicating it in a virtual host configuration). But if anyone’s interested in pursuing it further, here’s what I have so far.

Get started

Install Web hosting (with all options), MariaDB (MySQL) Server from software center
Install php-scl
yum install git nano unzip
Set desired directory/vhost (these directions assume the default virtual host) to >= 7.3

Install Composer

yum install php-composer-installers

Install NPM

curl -sL https://rpm.nodesource.com/setup_10.x | sudo bash -
yum install nodejs

Create Database

mysql
create database akaunting;
grant all privileges on akaunting.* to akaunting@localhost identified by 'strongpassword';
flush privileges;
quit

Edit httpd.conf

Edit /etc/httpd/conf/httpd.conf, line 151, to AllowOverride All.
systemctl reload httpd

Download Akaunting

cd /var/www/html
git clone https://github.com/akaunting/akaunting
chown -R apache:apache akaunting
cd akaunting

Install

scl enable php73 'composer install'
npm install
npm run dev
scl enable php73 'php artisan install --db-name="akaunting" --db-username="akaunting" --db-password="strongpassword" --admin-email="admin@yourdomain.org" --admin-password="123456"'

Log in

Browse to http://neth_name/akaunting and log in with the email and password you specified above

4 Likes

Hi Dan,

For a test, I used MariaDB-102 Collection and it is functional.

Thank you for that howto,

Michel-André

1 Like

I recently checked out akaunting, its a cool app. then all the relevant modules for a busines become an annually paid modules, wah…

@oneitonitram
@danb35

The relevant apps needed for a business actually add up to quite a sizeable sum / year…

:frowning:

My 2 cents
Andy

This should be watched mostly for a an accounting software, not sure that apache needs all rights everywhere, except where it needs to store data/files

Hi Stéphane,

You can also suppress all rights from “other”

chmod -R o-rwx /var/www/html/akaunting/*
chmod -R o-rwx /var/www/html/akaunting/.*

I just tried it, changed some parameters in the Web UI, and no problem.

At least, anyone who have access to the console and doesn’t have root privileges will not be able to see something in that folder…

Michel-André

1 Like

When I try to install the software, I get the following errors
# npm install
npm WARN @babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.13.12 requires a peer of @babel/core@^7.13.0 but none is installed. You must install peer dependencies yourself.
npm WARN eslint-plugin-prettier@3.3.1 requires a peer of eslint@>=5.0.0 but none is installed. You must install peer dependencies yourself. npm WARN laravel-mix@6.0.13 requires a peer of postcss@^8.1.2 but none is installed. You must install peer dependencies yourself.

# npm run dev
[webpack-cli] Error: Unknown option '--hide-modules'
[webpack-cli] Run 'webpack --help' to see available commands and options
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! akaunting@2.0.0 development: cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the akaunting@2.0.0 development script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.