From 3f628663b68585f4e8aeb11143b483a3b1ec8ae2 Mon Sep 17 00:00:00 2001 From: Johannes Rudolph Date: Sat, 13 Jan 2018 19:21:48 +0100 Subject: rename README to README.md --- README | 90 --------------------------------------------------------------- README.md | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+), 90 deletions(-) delete mode 100644 README create mode 100644 README.md diff --git a/README b/README deleted file mode 100644 index 830ae5b..0000000 --- a/README +++ /dev/null @@ -1,90 +0,0 @@ -This is the Shop System of Oldenburg's Hackspace Mainframe. - -The software has been developed as a credit based system for members of the -hackspace. The system depends on a cheap serial barcode scanner, which is used -to establish user sessions (by scanning CODE39 based user codes) and buying -products (by scanning their EAN). The members receive an invoice at the end of -the month, which is also send to the hackspace's treasurer for further processing. - -Since the user barcodes do not contain any advanced authentication mechanism, -security is established by sending daily mails in addition to the monthly -invoice mail. The daily mail (which is only sent if something has been bought) -lists all products bought by the member on this day and the current total sum -for the month. - -The system provides the following features: - * time shifted daily mails (08:00-07:59 of the following day), so that there - is a lower chance of purchases from one visit being split over two mails. - * native rendering of PDF invoices using Cairo (fast & lightweight) - * invoice mails are sent using text/plain and text/html - * support for sending a database backup to a mail address - * curses based user interface - * basic audio support - -The system administration is done using a simple web interface, which provides -support for the following tasks: - * adding information about new products - * restocking products - * changing selling prices of products - * updating the user database by importing a userlist.csv - (regularly generated by our treasurer) - -The system consists of multiple daemons written in Vala, which communicate -with each other using DBus. - -Build Dependencies: - * apt install build-essential valac libesmtp-dev libgpgme11-dev libncursesw5-dev libncurses5-dev libgee-0.8-dev libgmime-2.6-dev libarchive-dev libgstreamer1.0-dev libgtk2.0-dev librsvg2-dev libsoup2.4-dev libsqlite3-dev libpango1.0-dev libssl-dev dbus-x11 mdbus2 policykit-1 - -Additional runtime dependencies: - * apt install fonts-lmodern gstreamer1.0-alsa gstreamer1.0-plugins-base - -Suggested runtime dependencies: - * apt install sqlite3 - -== Installation == - -You can install to different location or use a different username, -but you need to modify a few things. - -=== Git Setup === - - * adduser "shop" with homedir in /home/shop - * clone git repository into /home/shop/serial-barcode-scanner - -=== Build the Software === - - * ./configure - * make shop.db - * make - -=== DBus Configuration === - - * cd dbus - * make - * sudo make install - -=== Systemd === - - * cd systemd - * sudo make install - -=== Configuration === - - * mv example.cfg ktt-shopsystem.cfg - * edit ktt-shopsystem.cfg - -=== Database === - - * Create user - `sqlite3 shop.db "INSERT INTO users (id, email, firstname, lastname) VALUES (1, 'test@tester', 'Firstname', 'Lastname');"` - * Setup user password - `mdbus2 -s io.mainframe.shopsystem.Database /io/mainframe/shopsystem/database io.mainframe.shopsystem.Database.SetUserPassword 1 "password"` - `sqlite3 shop.db "UPDATE authentication set superuser = 1, auth_users = 1, auth_products = 1, auth_cashbox = 1 where user = 1";` - * Demo Data - `sqlite3 shop.db "INSERT INTO categories (name) VALUES ('Getränke')";` - `sqlite3 shop.db "INSERT INTO supplier (name,city,postal_code,street,phone,website) VALUES ('Demo Lieferant','Musterstadt','12345','Musterstraße 5','+49 1234 56789','https://www.ktt.de');"` - -== Customize Your Shop == - -Edit the Logo in the logo.txt File. -A helpful tool you will found here [http://patorjk.com/software/taag/](http://patorjk.com/software/taag/) diff --git a/README.md b/README.md new file mode 100644 index 0000000..830ae5b --- /dev/null +++ b/README.md @@ -0,0 +1,90 @@ +This is the Shop System of Oldenburg's Hackspace Mainframe. + +The software has been developed as a credit based system for members of the +hackspace. The system depends on a cheap serial barcode scanner, which is used +to establish user sessions (by scanning CODE39 based user codes) and buying +products (by scanning their EAN). The members receive an invoice at the end of +the month, which is also send to the hackspace's treasurer for further processing. + +Since the user barcodes do not contain any advanced authentication mechanism, +security is established by sending daily mails in addition to the monthly +invoice mail. The daily mail (which is only sent if something has been bought) +lists all products bought by the member on this day and the current total sum +for the month. + +The system provides the following features: + * time shifted daily mails (08:00-07:59 of the following day), so that there + is a lower chance of purchases from one visit being split over two mails. + * native rendering of PDF invoices using Cairo (fast & lightweight) + * invoice mails are sent using text/plain and text/html + * support for sending a database backup to a mail address + * curses based user interface + * basic audio support + +The system administration is done using a simple web interface, which provides +support for the following tasks: + * adding information about new products + * restocking products + * changing selling prices of products + * updating the user database by importing a userlist.csv + (regularly generated by our treasurer) + +The system consists of multiple daemons written in Vala, which communicate +with each other using DBus. + +Build Dependencies: + * apt install build-essential valac libesmtp-dev libgpgme11-dev libncursesw5-dev libncurses5-dev libgee-0.8-dev libgmime-2.6-dev libarchive-dev libgstreamer1.0-dev libgtk2.0-dev librsvg2-dev libsoup2.4-dev libsqlite3-dev libpango1.0-dev libssl-dev dbus-x11 mdbus2 policykit-1 + +Additional runtime dependencies: + * apt install fonts-lmodern gstreamer1.0-alsa gstreamer1.0-plugins-base + +Suggested runtime dependencies: + * apt install sqlite3 + +== Installation == + +You can install to different location or use a different username, +but you need to modify a few things. + +=== Git Setup === + + * adduser "shop" with homedir in /home/shop + * clone git repository into /home/shop/serial-barcode-scanner + +=== Build the Software === + + * ./configure + * make shop.db + * make + +=== DBus Configuration === + + * cd dbus + * make + * sudo make install + +=== Systemd === + + * cd systemd + * sudo make install + +=== Configuration === + + * mv example.cfg ktt-shopsystem.cfg + * edit ktt-shopsystem.cfg + +=== Database === + + * Create user + `sqlite3 shop.db "INSERT INTO users (id, email, firstname, lastname) VALUES (1, 'test@tester', 'Firstname', 'Lastname');"` + * Setup user password + `mdbus2 -s io.mainframe.shopsystem.Database /io/mainframe/shopsystem/database io.mainframe.shopsystem.Database.SetUserPassword 1 "password"` + `sqlite3 shop.db "UPDATE authentication set superuser = 1, auth_users = 1, auth_products = 1, auth_cashbox = 1 where user = 1";` + * Demo Data + `sqlite3 shop.db "INSERT INTO categories (name) VALUES ('Getränke')";` + `sqlite3 shop.db "INSERT INTO supplier (name,city,postal_code,street,phone,website) VALUES ('Demo Lieferant','Musterstadt','12345','Musterstraße 5','+49 1234 56789','https://www.ktt.de');"` + +== Customize Your Shop == + +Edit the Logo in the logo.txt File. +A helpful tool you will found here [http://patorjk.com/software/taag/](http://patorjk.com/software/taag/) -- cgit v1.2.3