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.4k
Red Hat Enterprise Linux 9のリリースノートを読む前に知りたい最近のキーワードをまとめて復習
moriwaka
0
1.7k
odpからmp4を作る / odp2mp4
moriwaka
0
390
Red Hat Enterprise Linux Web Console を使う / cockpit-rhel8
moriwaka
0
920
systemdエッセンシャル / systemd-intro
moriwaka
46
13k
Red Hat Enterprise Linux 8 の セキュリティトピック
moriwaka
2
1.4k
システム全体の暗号化ポリシー設定
moriwaka
0
1.2k
端末のセッション記録
moriwaka
0
5.8k
Application Streamsと、yumのmodule
moriwaka
0
1.5k
Other Decks in Technology
See All in Technology
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
13k
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
2.7k
SREのためのeBPF活用ステップアップガイド
egmc
2
1.4k
地図と生成AI
nakasho
0
370
サービスを止めるな! DDoS攻撃へのスマートな備えと最前線の事例
coconala_engineer
1
200
スタックチャン家庭用アシスタントへの道
kanekoh
0
130
【あのMCPって、どんな処理してるの?】 AWS CDKでの開発で便利なAWS MCP Servers特集
yoshimi0227
6
1k
「Chatwork」のEKS環境を支えるhelmfileを使用したマニフェスト管理術
hanayo04
1
420
組織内、組織間の資産保護に必要なアイデンティティ基盤と関連技術の最新動向
fujie
0
420
Frontier Airlines Customer®️ USA Contact Numbers: Complete 2025 Support Guide
frontierairlineswithflyagent
0
100
Deep Security Conference 2025:生成AI時代のセキュリティ監視 /dsc2025-genai-secmon
mizutani
4
3.3k
Building GoReleaser - from shell script to paid product
caarlos0
0
170
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Visualization
eitanlees
146
16k
Why Our Code Smells
bkeepers
PRO
337
57k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Embracing the Ebb and Flow
colly
86
4.8k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Being A Developer After 40
akosma
90
590k
The Language of Interfaces
destraynor
158
25k
We Have a Design System, Now What?
morganepeng
53
7.7k
Scaling GitHub
holman
460
140k
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