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
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
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.6k
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
10k
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
420
2025年になってもまだMySQLが好き
yoku0825
8
4.8k
20250913_JAWS_sysad_kobe
takuyay0ne
2
210
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
570
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
510
職種の壁を溶かして開発サイクルを高速に回す~情報透明性と職種越境から考えるAIフレンドリーな職種間連携~
daitasu
0
160
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
260
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
250
2つのフロントエンドと状態管理
mixi_engineers
PRO
3
110
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
220
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Thoughts on Productivity
jonyablonski
70
4.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Optimizing for Happiness
mojombo
379
70k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
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