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.6k
flatpak
Red Hat Tech Nightのボツネタでした
Kazuo Moriwaka
November 15, 2019
Tweet
Share
More Decks by Kazuo Moriwaka
See All by Kazuo Moriwaka
システム全体の暗号化ポリシーをカスタマイズ
moriwaka
0
2.5k
Red Hat Enterprise Linux 9のリリースノートを読む前に知りたい最近のキーワードをまとめて復習
moriwaka
0
1.8k
odpからmp4を作る / odp2mp4
moriwaka
0
400
Red Hat Enterprise Linux Web Console を使う / cockpit-rhel8
moriwaka
0
940
systemdエッセンシャル / systemd-intro
moriwaka
46
13k
Red Hat Enterprise Linux 8 の セキュリティトピック
moriwaka
2
1.4k
システム全体の暗号化ポリシー設定
moriwaka
0
1.2k
端末のセッション記録
moriwaka
0
5.9k
Application Streamsと、yumのmodule
moriwaka
0
1.5k
Other Decks in Technology
See All in Technology
Evolution on AI Agent and Beyond - AGI への道のりと、シンギュラリティの3つのシナリオ
masayamoriofficial
0
190
JOAI発表資料 @ 関東kaggler会
joai_committee
1
390
イオン店舗一覧ページのパフォーマンスチューニング事例 / Performance tuning example for AEON store list page
aeonpeople
2
310
アジャイルテストで高品質のスプリントレビューを
takesection
0
120
Figma + Storybook + PlaywrightのMCPを使ったフロントエンド開発
yug1224
10
2.9k
マイクロモビリティシェアサービスを支える プラットフォームアーキテクチャ
grimoh
1
240
Oracle Base Database Service:サービス概要のご紹介
oracle4engineer
PRO
2
20k
「AI2027」を紐解く ― AGI・ASI・シンギュラリティ
masayamoriofficial
0
110
人を動かすことについて考える
ichimichi
2
330
[CVPR2025論文読み会] Linguistics-aware Masked Image Modelingfor Self-supervised Scene Text Recognition
s_aiueo32
0
210
Goでマークダウンの独自記法を実装する
lag129
0
220
Goss: New Production-Ready Go Binding for Faiss #coefl_go_jp
bengo4com
0
1.1k
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Side Projects
sachag
455
43k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
The Art of Programming - Codeland 2020
erikaheidi
55
13k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Optimizing for Happiness
mojombo
379
70k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
570
A designer walks into a library…
pauljervisheath
207
24k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Making Projects Easy
brettharned
117
6.3k
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