Bringing GNU Health into openSUSE

Preview:

Citation preview

Bringing

GNU Health into

openSUSE

Dr. Axel Braun

IntroductionGNU HealthopenSUSE

Development ProcessOpen Build ServiceChecks, Checks, Checks…And the winner is…..

3

Axel Braunabraun@gnusolidario.orgdocb@opensuse.org T: @coogor

Dipl.-Ing, Dr.-Ing. Electrical engineeringWorks as Consultant and Project Manager mostly for international companiesLives in Düsseldorf/Germany

Member of openSUSE project – no commercial relationship with SUSEPackage maintainer for (among others) GNU Health and GNU Health Live CD

Supported education project: Favela Education (.org)Supported medical project: GNU Health

Introduction

5

6

OpenSUSE - History

Oldest existing Linux Company (S.u.S.E. founded 1992!)

SuSE aquired by Novell in 2003, [some more], now an independent business unit of MicroFocus (and growing)

2005 openSUSE launched as community project SUSE remains sponsor

Commercial SLE and openSUSE share code basis

7

OpenSUSE - Status

Tested Tumbleweed Snapshots

Rock-solid Leap Distribution: Codebase from SLE,Desktop & Apps from TW

Ease of use for non-admins: YaST

Thousands of programs at download.opensuse.org

Growing user base since Leap 42.1

400.000 DVD Downloads / month

1.600 new installations / month

Tumbleweed:Rolling Distro

Leap:Stable Release

Development Process

9

Development Process

10

Development Process

Devel Projects

Factory

Tumbleweed

openQA

Sources

Open Build Service

12

SUSE Tools

Machinery

13

Development Process & Repositories

home:UserIndividual Playground

No rules

Official Repositoriese.g. Application:ERP:Tryton:x.x

Packaging guidelines apply

DistributionRules & Reviews

Branch &Submit

Branch

14

1st step: Consolidation of packages

Application:ERP:Tryton:3.8 openSUSE

gnuhealth

devel:languages:python

Which packages are notyet in

?

15

2nd step: Create accepted Devel-Project

Application:ERP:Tryton:x.xSources

Application:ERP:Tryton:Factory

FactoryOpenSUSE:Leap:42.2

d:l:p

16

Before 1st submission to factory….Follow packaging guidelineshttps://en.opensuse.org/Portal:Packaging

Make sure spec file is according to standards(use spec-cleaner!)

Check spec-cleaner did not destroy scripts….

Proper use of packaging-macros

Insert/update system services

Update desktop file

Refresh icon cache

Verbose description (see next slide)

Package security guidelines (writeable directories...)

Package source validation (to trust or not to trust…)

Python packaging guidelines

License file

...and some more

Check, Checks, Checks...

18

Specfile cleaner – guidelines and format

One of the 'old players' in Linux (S.u.S.E. founded 1992!)

SuSE aquired by Novell in 2003, [some more], now an independent business unit of HP

2005 openSUSE launched as community project SUSE remains sponsor

Commercial SLE and openSUSE share code basis

19

Be Verbose – Example trytond_stock

As-is:Summary: Tryton is an OpenSource ERP system

%descriptionThe stock module of the Tryton application platform.

To-be:Summary: The "stock" module of the Tryton ERP system

%descriptionThe stock module defines fundamentals for all stock managementsituations: Locations where product are stored, moves between theselocations, shipments for product arrivals and departures andinventory to control and update stock levels.

20

New packagesReview process

Various Bots for automated checks

Factory-Auto

Check sources

Check build result

License-Digger

Factory-Repo-Checker

Assignment to evaluation project

Peer-Review by at least 2 Maintainers

Review by legal counsellor

21

Submit updates

Guided by maintenance policy

Bugzilla entry required

Documentation required in .changes

Needs improvement!

And the result?

23

Install from package manager

24

Resolution of dependencies

25

Full System Integration1-click Install

Systemd

Seggregation of services

Updates via Package Manager

Documentation

gnuhealth_control-suse – modified to maintain installation

Webclient (sao) and additional Tryton packages inApplication:ERP:Tryton:3.8

Easy setup:

https://www.youtube.com/watch?v=15zCr4pqIp8

Thank you!

Question?

Recommended