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
Swift製CLIツールをMintを使わずSwiftPackageManagerで管理する
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
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
Claude Code全社展開のためにやったことn選~プラグイン302個・コミッター271人を支えるために~
kenchan
5
1.4k
属人化した知識を、 AIが辿れる地図にする
pkshadeck
PRO
1
150
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
180
言語を使う側から、作る側へ。 自作 Lisp で得た新たな気づき。
andpad
0
160
自動化したのに回らないテスト運用の壁ーAI時代の品質責任と生産性
mfunaki
0
130
Welcome to the "Parametricity" 🏙️ − Generic だけど Specific な世界 −
guvalif
PRO
1
210
TSX の <Hoge<Fuga>> という構文に驚いた話 / tsx-type-argument-syntax
kanaru0928
0
210
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
410
PHP に部分適用が来るぞ!……ところで何それ?おいしいの? #phpcon / phpcon-2026
shogogg
0
600
Japan Community Day at Kubecon + CloudNativeCon Japan 2026: Learning Container Privilege Control by Building My Own Low-Level Container Runtime
ternbusty
1
150
yield再入門 #phpcon
o0h
PRO
0
990
Terraform標準の組織で AWS CDKをどう使うか
mu7889yoon
1
500
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
The agentic SEO stack - context over prompts
schlessera
0
860
Why Our Code Smells
bkeepers
PRO
340
58k
Building Adaptive Systems
keathley
44
3.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
480
30 Presentation Tips
portentint
PRO
1
360
エンジニアに許された特別な時間の終わり
watany
108
250k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.6k
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
440
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Ͱཧ͢Δ - ίωώτ ։ൃऀϒϩά-
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ