Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Swift製CLIツールをMintを使わずSwiftPackageManagerで管理する
Search
Yasuharu Yanamura
February 12, 2020
Programming
2.6k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swift製CLIツールをMintを使わずSwiftPackageManagerで管理する
Yasuharu Yanamura
February 12, 2020
More Decks by Yasuharu Yanamura
See All by Yasuharu Yanamura
Conditional Contents in SwiftUI
yanamura
2
22k
iOS開発からフロントエンド開発に転身
yanamura
0
2.6k
Other Decks in Programming
See All in Programming
速習iPhone Duo対応
yuukiw00w
2
980
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
110
Ghostty + Neovimで作る 透明でカッコ良い開発環境
j341nono
0
170
Turning Architecture into Unit Tests in the AI Era (NSSpain XIV)
steliosf
PRO
1
140
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
22
22k
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
360
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
190
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
550
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
160
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
130
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
409
67k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
The agentic SEO stack - context over prompts
schlessera
0
970
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
2
360
The World Runs on Bad Software
bkeepers
PRO
72
12k
Exploring anti-patterns in Rails
aemeredith
4
530
sira's awesome portfolio website redesign presentation
elsirapls
0
450
Writing Fast Ruby
sferik
630
63k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
WENDY [Excerpt]
tessaabrams
14
40k
Transcript
SwiftCLIπʔϧΛMintΛΘͣ SwiftPackageManagerͰཧ͢Δ Potatotips #68 2020/2/12 Yasuharu Yanamura
ࣗݾհ • Yasuharu Yanamura/༄ଜ ߁ • ɹ@yanamura_ɹɹ@yanamura • ίωώτגࣜձࣾ •
ϚϚϦiOSΞϓϦ։ൃ
iOSͷ։ൃͰ͏πʔϧྨ • SwiftFormat • SwiftLint • XcodeGen etc...
ཧํ๏͍Ζ͍Ζ • Homebrew • Cocoapods • Mint
Swift Package ManagerΛͬͨํ๏
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift OBNFద
͍ํ // swift-tools-version:5.1 import PackageDescription let package = Package( name:
"Tools", dependencies: [ .package(url: "https://github.com/apple/swift-format", .branch("master")), .package(url: "https://github.com/yonaskolb/XcodeGen", from: "2.13.0"), .package(url: "https://github.com/mac-cain13/R.swift", .exact("5.1.0")), ] ) Package.swift EFQFOEFODJFTʹ͏ πʔϧΛྻڍ
͍ํ $ swift run -c release xcodegen ࣮ߦ
͍ํ $ swift run -c release xcodegen ࣮ߦ ॳճ࣮ߦϏϧυ͕ΔͷͰ͍͕ɺ ̎ճҎ߱Ωϟογϡ͞ΕΔͷͰ͍
MintͷΑ͏ͳύοέʔδཧπʔϧͷΠϯ ετʔϧͳ͠Ͱ͑Δ
طʹSwiftPMͬͯΔ߹ - Package.swiftͷdependenciesʹπʔϧྨ͍Εͨ͘ͳ͍ dependencies: [ .package(url: "https://github.com/kylef/PathKit.git", from: "1.0.0"), .package(url:
"https://github.com/jakeheis/SwiftCLI.git", from: "5.0.0"), .package(url: "https://github.com/apple/swift-format", .branch("master")), ], πʔϧผʹ͍ͨ͠
طʹSwiftPMͬͯΔ߹ - πʔϧ༻ͷσΟϨΫτϦΛ࡞ͬͯͦ͜ʹπʔϧ༻ͷ Package.swiftΛஔ͘
طʹSwiftPMͬͯΔ߹ - πʔϧ༻ͷσΟϨΫτϦΛ࡞ͬͯͦ͜ʹπʔϧ༻ͷ Package.swiftΛஔ͘ - swift runͷpackage-pathͰͦͷσΟϨΫτϦΛࢦఆ $ swift run
-c release --package-path Tools xcodegen 1BDLBHFTXJGUͷ͋Δ σΟϨΫτϦΛࢦఆ
Mintͱͷൺֱ
Ωϟογϡͷอଘઌ SwiftPackageManager: ./.buildҎԼʹอଘ Mint: /user/local/mintҎԼʹอଘ
ઃఆϑΝΠϧ SwiftPackageManager: Package.swift͕ඞਢ Mint: Mintfileͳ͠Ͱ࣮ߦͰ͖Δ $ mint run yonoskolb/
[email protected]
xcodegen
ৄͪ͘͜͠Β • SwiftCLIπʔϧΛMintΛΘͣSwiftPMͰཧ͢Δ - ίωώτ ։ൃऀϒϩά-
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ