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
410
Red Hat Enterprise Linux Web Console を使う / cockpit-rhel8
moriwaka
0
950
systemdエッセンシャル / systemd-intro
moriwaka
46
13k
Red Hat Enterprise Linux 8 の セキュリティトピック
moriwaka
2
1.4k
システム全体の暗号化ポリシー設定
moriwaka
0
1.2k
端末のセッション記録
moriwaka
0
6k
Application Streamsと、yumのmodule
moriwaka
0
1.5k
Other Decks in Technology
See All in Technology
動画データのポテンシャルを引き出す! Databricks と AI活用への奮闘記(現在進行形)
databricksjapan
0
120
FastAPIの魔法をgRPC/Connect RPCへ
monotaro
PRO
1
580
いま注目しているデータエンジニアリングの論点
ikkimiyazaki
0
550
SOC2取得の全体像
shonansurvivors
1
340
今改めてServiceクラスについて考える 〜あるRails開発者の10年〜
joker1007
20
9.3k
OCI Network Firewall 概要
oracle4engineer
PRO
1
7.7k
Goのビルドシステムの変遷 / The history of Go's build system
ymotongpoo
12
3.5k
Modern_Data_Stack最新動向クイズ_買収_AI_激動の2025年_.pdf
sagara
0
150
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
240
Go Conference 2025: GoのinterfaceとGenericsの内部構造と進化 / Go type system internals
ryokotmng
3
540
Azure SynapseからAzure Databricksへ 移行してわかった新時代のコスト問題!?
databricksjapan
0
110
Pythonによる契約プログラミング入門 / PyCon JP 2025
7pairs
5
2.3k
Featured
See All Featured
It's Worth the Effort
3n
187
28k
Gamification - CAS2011
davidbonilla
81
5.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
What's in a price? How to price your products and services
michaelherold
246
12k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
For a Future-Friendly Web
brad_frost
180
9.9k
Building Adaptive Systems
keathley
43
2.8k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.9k
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