Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Swift on Linux
Search
Ben Scheirman
October 13, 2016
Programming
1
870
Swift on Linux
Presented at CocoaConf Austin 2016 and Pragmaconf '16 in Verona, Italy
Ben Scheirman
October 13, 2016
Tweet
Share
More Decks by Ben Scheirman
See All by Ben Scheirman
A Promise for a Better Future
subdigital
0
160
Bézier Curves
subdigital
1
5.5k
Buckets of Code
subdigital
0
2k
Building 5 Calls for iOS
subdigital
0
130
tvOS Workshop
subdigital
1
160
Swift Solutions
subdigital
2
460
iOS 8 Networking
subdigital
4
940
iOS 8 App Extensions
subdigital
1
370
Effective Networking with iOS 8 and Swift
subdigital
4
1.7k
Other Decks in Programming
See All in Programming
Flutter On-device AI로 완성하는 오프라인 앱, 박제창 @DevFest INCHEON 2025
itsmedreamwalker
1
110
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.3k
dotfiles 式年遷宮 令和最新版
masawada
1
780
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
270
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
140
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
740
20251212 AI 時代的 Legacy Code 營救術 2025 WebConf
mouson
0
180
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
0
280
ELYZA_Findy AI Engineering Summit登壇資料_AIコーディング時代に「ちゃんと」やること_toB LLMプロダクト開発舞台裏_20251216
elyza
0
170
ゲームの物理 剛体編
fadis
0
350
マスタデータ問題、マイクロサービスでどう解くか
kts
0
100
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
350
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
58
6.2k
Navigating Team Friction
lara
191
16k
How STYLIGHT went responsive
nonsquared
100
6k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Raft: Consensus for Rubyists
vanstee
141
7.2k
Bash Introduction
62gerente
615
210k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
1
100
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
The Pragmatic Product Professional
lauravandoore
37
7.1k
Transcript
Swift on Linux
Hi, I’m Ben @subdigital
None
None
Written in Swift
Running on $5/mo Linux VPS
(my little secret)
Swift 1.0 Sept 2014 Swift 2.0 Swift Open Sourced Swift
3.0! Sept 2015 Dec 2015 Sept 2016
… but what does that mean? + github.com/apple
1. Swift Language, Compiler, & Debugger (with full commit history!)
None
None
None
2. Swift Core Libraries
*not on Linux (yet) github.com/apple/swift-corelibs-foundation github.com/apple/swift-corelibs-xctest github.com/apple/swift-corelibs-libdispatch Foundation XCTest libDispatch*
3. Swift Package Manager github.com/apple/swift-package-manager
• Defines how modules are built • Resolves Dependencies •
Convention over Configuration
// Package.swift import PackageDescription let package = Package( name: “Foo”,
dependencies: [] )
None
4. Swift Evolution github.com/apple/swift-evolution
None
let’s play
vagrantup.com
git.io/vwJ4g
“Trusty Tahr” trusty(14.04) 64-bit
None
None
$ sudo apt-get install -y \ git \ clang \
libicu-dev
$ Demo
github.com/subdigital/ nsdateformatter
What Else?
?
Wrap your favorite C library!
Create a modulemap: module CCurl [system] { header "/usr/include/curl/curl.h" link
"curl" export * }
Add a git tag…. $ git add . $ git
commit -m “Initial commit” [master (root-commit) fa72d04] initial commit 1 file changed, 1 insertion(+) $ git tag 0.0.1
Reference from your Package.swift .Package(url: “../CCurl”, majorVersion: 0)
Doing active development? Don’t forget to update the tag…. every
time…
None
Thanks! @subdigital nsscreencast.com