L i s t a l l e r A simple and secure way to distribute - - PowerPoint PPT Presentation

l i s t a l l e r
SMART_READER_LITE
LIVE PREVIEW

L i s t a l l e r A simple and secure way to distribute - - PowerPoint PPT Presentation

L i s t a l l e r A simple and secure way to distribute 3rd-party applications Matthias Klumpp mak@debian.org matthias@tenstral.net X K C D 9 2 7 Wh y ? P e o p l e w a n t t o h a v e n e w s o f t


slide-1
SLIDE 1

A simple and secure way to distribute 3rd-party applications

L i s t a l l e r

Matthias Klumpp

mak@debian.org matthias@tenstral.net

slide-2
SLIDE 2

X K C D 9 2 7

slide-3
SLIDE 3

Wh y ?

  • P

e

  • p

l e w a n t t

  • h

a v e n e w s

  • f

t w a r e w h i c h i s n

  • t

a v a i l a b l e i n t h e d i s t r i b u t i

  • n

' s r e p

  • s

i t

  • r

i e s – D i s t r i b u t

  • r

r e s

  • u

r c e s a r e l i m i t e d : C a n ' t b a c k p

  • r

t e v e r y t h i n g

  • 3

r d

  • p

a r t y r e p

  • s

i t

  • r

i e s ( „ P P A s “ ) a r e i n s e c u r e a n d c a n p

  • t

e n t i a l l y b r e a k t h e s y s t e m

  • r

d i s t r i b u t i

  • n

u p g r a d e s

  • P

P A s

  • f

t w a r e i s s e t e q u a l t

  • s
  • f

t w a r e r e v i e w e d b y t h e d i s t r i b u t

  • r

, w h i l e c

  • m

i n g f r

  • m

a p

  • t

e n t i a l l y m a l i c i

  • u

s s

  • u

r c e

  • P

P A s a r e d i s t r i b u t i

  • n
  • s

p e c i fj c : L

  • t

s

  • f

P P A s f

  • r

n e w s

  • f

t w a r e a r e a v a i l a b l e f

  • r

U b u n t u , b u t n

  • t

F e d

  • r

a , D e b i a n , …

slide-4
SLIDE 4

L i s t a l l e r G

  • a

l s

  • S

y s t e m i n t e g r a t i

  • n

– T h e u s e r s h

  • u

l d n

  • t

n

  • t

i c e t h a t L i s t a l l e r i s u s e d w h e n i n s t a l l i n g a p p s – L i s t a l l e r a p p s s h

  • u

l d i n t e g r a t e s e a m l e s s l y w i t h t h e s y s t e m – S

  • f

t w a r e u p d a t e s s h

  • u

l d b e r e t r i e v e d u s i n g t h e s a m e U I a s t h e s y s t e m i t s e l f

  • C

r

  • s

s

  • d

i s t r

  • a

n d

  • d

e s k t

  • p

c

  • m

p a t i b i l i t y

  • S

i m p l i fj c a t i

  • n

– N

  • c

a t c h

  • a

l l s

  • l

u t i

  • n

, L i s t a l l e r s h

  • u

l d c

  • v

e r t h e m

  • s

t c

  • m

m

  • n

u s e

  • c

a s e s . N a t i v e d i s t r i b u t i

  • n

p a c k a g e s s h

  • u

l d c

  • v

e r t h e r e m a i n i n g c a s e s

  • S

e c u r i t y

– S i g n a t u r e s , s e c u r i t y h i n t s d a t a b a s e , s a n d b

  • x

i n g , . . .

  • D

e v e l

  • p

e r t

  • l

s

– P r

  • v

i d e h e l p e r s f

  • r

d e v e l

  • p

e r s t

  • m

a k e t h e i r a p p s r u n

  • n

m u l t i p l e d i s t r i b u t i

  • n

s – M a k e p a c k a g i n g a s s i m p l e a s p

  • s

s i b l e , r e d u c e p

  • s

s i b l e e r r

  • r

s

  • u

r c e s

slide-5
SLIDE 5

L i s t a l l e r c

  • n

s i s t s

  • f

m a n y t

  • l

s

slide-6
SLIDE 6

P a c k a g e K i t & L i s t a l l e r

Software Center

packagekitd

Active Queue Package Manager

SYSTEM DBUS

Backend Instance Runner T ask Helper Executable Update Viewer

STDIN STDERR STDOUT

Thread #1 Thread #2

Runner T ask Listaller

slide-7
SLIDE 7

C

  • m

p

  • n

e n t s

  • U

p s t r e a m p r

  • j

e c t s ( G T K + / Q t / . . . ) c a n s h i p c

  • m

p

  • n

e n t d e fj n i t i

  • n

s , d e fj n i n g w h i c h p u b l i c i n t e r f a c e s t h e y p r

  • v

i d e

slide-8
SLIDE 8

U t

  • p

i a p a c k a g i n g e x a m p l e

L e t ' s p a c k a g e B l

  • a

t p a d !

slide-9
SLIDE 9

Wr i t e s

  • m

e c

  • n

fj g

slide-10
SLIDE 10

C r e a t e p a c k a g e !

earth@sun:~/Development/Bloatpad$ lipkgen -b --sign

  • Runs depscan
  • Detects required components: GTK+3 (>= 3.12), GLib2 (>= 2.36), Xorg,

gnome-icon-theme, GStreamer1.0 (>= 1.0)

  • Generates package structure, signs package
  • Runs lilith:

W: icon 'bloatpad.png' has wrong size: 64x52 instead of 64x64 W: missing ';' in 'bloatpad.desktop' Categories field I: desktop-file 'Bloatpad.desktop' is missing keywords! I: no upstream author defined

slide-11
SLIDE 11

U s e r i n s t a l l s p a c k a g e

earth@sun:~$ pkcon install-local Bloatpad-1.0_amd64.ipk earth@sun:~$ lipa -i Bloatpad-1.0_amd64.ipk

  • Our user runs KDE
  • Listaller will search for native

packages declaring the missing components and install them

slide-12
SLIDE 12

U s e r r u n s a p p l i c a t i

  • n

earth@sun:~$ runapp bloatpad

  • Application is run by specifying it's desktop-filename

as argument to runapp

  • Runapp will take care of sandboxing the application,
  • r warn about missing dependencies
  • Will soon support DBus-activated applications as

well

slide-13
SLIDE 13

D e v e l

  • p

e r c r e a t e s u p d a t e

earth@sun:~$ lirepo -a Bloatpad-1.2_amd64.ipk

  • Add new releases to the update repository
  • Also allows cross-distro application repositories („AppStores“), but

users need to add these manually

slide-14
SLIDE 14

U s e r r e m

  • v

e s B l

  • a

t p a d

Apper

slide-15
SLIDE 15

T h a n k y

  • u

f

  • r

y

  • u

r a t t e n t i

  • n

!