Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
flatpak
Search
Kazuo Moriwaka
November 15, 2019
Technology
0
2.4k
flatpak
Red Hat Tech Nightのボツネタでした
Kazuo Moriwaka
November 15, 2019
Tweet
Share
More Decks by Kazuo Moriwaka
See All by Kazuo Moriwaka
システム全体の暗号化ポリシーをカスタマイズ
moriwaka
0
1.9k
Red Hat Enterprise Linux 9のリリースノートを読む前に知りたい最近のキーワードをまとめて復習
moriwaka
0
1.5k
odpからmp4を作る / odp2mp4
moriwaka
0
280
Red Hat Enterprise Linux Web Console を使う / cockpit-rhel8
moriwaka
0
730
systemdエッセンシャル / systemd-intro
moriwaka
46
12k
Red Hat Enterprise Linux 8 の セキュリティトピック
moriwaka
2
1.3k
システム全体の暗号化ポリシー設定
moriwaka
0
1.1k
端末のセッション記録
moriwaka
0
5.3k
Application Streamsと、yumのmodule
moriwaka
0
1.3k
Other Decks in Technology
See All in Technology
APIテスト自動化の勘所
yokawasa
7
4.1k
オニオンアーキテクチャで実現した 本質課題を解決する インフラ移行の実例
hryushm
14
3k
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
[JAWS-UG金沢支部×コンテナ支部合同企画]コンテナとは何か
furuton
3
240
なんで、私がAWS Heroに!? 〜社外の広い世界に一歩踏み出そう〜
minorun365
PRO
6
1.1k
独自ツール開発でスタジオ撮影をDX!「VLS(Virtual LED Studio)」 / dx-studio-vls
cyberagentdevelopers
PRO
1
180
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
3.6k
【若手エンジニア応援LT会】AWS Security Hubの活用に苦労した話
kazushi_ohata
0
160
チームを主語にしてみる / Making "Team" the Subject
ar_tama
4
300
新卒1年目が挑む!生成AI × マルチエージェントで実現する次世代オンボーディング / operation-ai-onboarding
cyberagentdevelopers
PRO
1
160
Nix入門パラダイム編
asa1984
2
200
Product Engineer Night #6プロダクトエンジニアを育む仕組み・施策
hacomono
PRO
1
460
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
37
1.8k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
We Have a Design System, Now What?
morganepeng
50
7.2k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Code Review Best Practice
trishagee
64
17k
Embracing the Ebb and Flow
colly
84
4.4k
Designing Experiences People Love
moore
138
23k
GitHub's CSS Performance
jonrohan
1030
460k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.6k
Transcript
flatpak もりわか
2 令和元年 ですね
3 元年 といえば
4 Linux デスクトップ 元年
5 Red Hat Enterprise Linux 8 • サーバOSとしては超強い • 一方デスクトップとしては貧弱
• ソフトウェアなくてつらい • Fedoraなら山ほどソフトウェアがあるのに…… • 事情はわかる • どんどん新しくしたいのとライフサイクルがあわない • codecのライセンス等の問題 • 儲からない……
6 RHEL8のデモブースを準備する • ビデオ流そ…… H.264のcodecないやん! なんとかデスクトップアプリいれたい • 自前ビルド ← GentooかArchへ行こう
• EPELやrpmfusionとか ← わかるけど競合したらやだな • snapd EPEL ← にあるっぽい • flatpak ← RHEL8に入ってる。これ試そう
7 flatpak • OSTreeを基盤としたアプリケーショ ンの配布技術 • バイナリやライブラリをまとめて配布 する • ディストリビューションを選ばない
(はず)
8 OSTree (libostree) ってなに? • ディレクトリツリーをgit風にバージョン管理する基盤 • branch/commit/reference/pullなどの概念 • リポジトリ
• ファイルをチェックサムで識別するcontentl-addressed object store • 特定reference(とそのN世代前まで)だけミラーするなど • 複数バージョンをチェックアウト • リポジトリからhardlinkしたりbtrfsならCoWしたり • 起動可能なディレクトリツリーを考慮 • ブートローダ設定のswapによる更新、更新失敗時の巻き戻しなど
9 ostreeのコマンド例 $ ostree --repo=repo init $ mkdir tree $
echo 'heeeeee' > tree/hello.txt $ ostree --repo=repo commit --branch=base tree 13c7e9a6edbf25e3b56443ce88c46b35e6edd7a7a7c9c7685788d47e09e66aca $ echo 'hello' > tree/hello.txt $ echo 'world' > tree/world.txt $ ostree --repo=repo commit --branch=base tree ab66069b57a61d2665bdf52c221627ec16fad6dcabf09dd00034f7350cdd1db3 $ ostree diff --repo=repo base base^ M /hello.txt D /world.txt
10 OSTree応用例 • OSの更新をatomicにおこなう(成功するか、失敗して古い のに戻る) • Atomic Host, CoreOS, Fedora
SilverblueでOS更新に利用 • アプリケーションの配布につかう • flatpak
11 flatpak • OSTreeを基盤としたアプリケーションの配 布技術 • バイナリと、バイナリが依存するライブラリ をまとめて配布 • 複数バージョンの混在が可能
• freedesktop.org, GNOME, KDE(Qt)のランタ イム • デスクトップ環境と統合 • ディストリビューションを選ばない(はず)
12 RHEL8のgnome-softwareでAudio & Video
13 RHEL8のデモブースを準備する • flathub.org quick setup RHEL → → →リポジトリ設定
→ VLCインストール
14 flatpakをいれると劇的にアレコレ生える
15 つたえたかったこと • デスクトップ用途でRHELはしんどい • flatpakつかうといろいろ生える • 背景の技術もおもしろいよ • 実はOSTreeだけじゃなくてOCIも扱えたりするよ
16 Thank You