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
The NuGet ecosystem
Search
Awesome Incremented
November 05, 2015
Programming
0
120
The NuGet ecosystem
Reviewing NuGet 3.0 and some interesting projects within the NuGet ecosystem
Awesome Incremented
November 05, 2015
Tweet
Share
More Decks by Awesome Incremented
See All by Awesome Incremented
Fast GeoIp Lookup using Redis
awesomeincremented
0
63
Continuous License Compliance-Analysis
awesomeincremented
0
23
(Almost) Continuous Delivery with Docker in offline environments
awesomeincremented
0
20
Update on Technology Radar
awesomeincremented
0
35
Docker Build Automation with Jenkins
awesomeincremented
1
57
Software Quality
awesomeincremented
1
55
Code Reviews
awesomeincremented
0
51
Coding Guidelies
awesomeincremented
0
43
Oracle Spatial 101 - An Introduction
awesomeincremented
0
100
Other Decks in Programming
See All in Programming
CSC509 Lecture 12
javiergs
PRO
0
140
Amazon Qを使ってIaCを触ろう!
maruto
0
380
Java ジェネリクス入門 2024
nagise
0
700
Enabling DevOps and Team Topologies Through Architecture: Architecting for Fast Flow
cer
PRO
0
180
C++でシェーダを書く
fadis
6
4k
Duckdb-Wasmでローカルダッシュボードを作ってみた
nkforwork
0
110
リリース8年目のサービスの1800個のERBファイルをViewComponentに移行した方法とその結果
katty0324
5
4.2k
【Kaigi on Rails 2024】YOUTRUST スポンサーLT
krpk1900
1
320
Webの技術スタックで マルチプラットフォームアプリ開発を可能にするElixirDesktopの紹介
thehaigo
2
1k
JavaでLチカしたい! / JJUG CCC 2024 Fall LT
nhayato
0
120
OpenTelemetryでRailsのパフォーマンス分析を始めてみよう(KoR2024)
ymtdzzz
5
2k
外部システム連携先が10を超えるシステムでのアーキテクチャ設計・実装事例
kiwasaki
1
280
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
8.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
93
16k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
42
9.2k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Documentation Writing (for coders)
carmenintech
65
4.4k
Become a Pro
speakerdeck
PRO
25
5k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
[RailsConf 2023] Rails as a piece of cake
palkan
51
4.9k
A designer walks into a library…
pauljervisheath
202
24k
Into the Great Unknown - MozCon
thekraken
32
1.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Transcript
The NuGet ecosystem Reviewing some interesting projects Dev.Talk November 2015
Thomas Mentzel & Marcel Körtgen
Agenda •NuGet and changes in 3.0 •Built on top of
NuGet •Chocolatey and beyond •Squirrel - ClickOnce reloaded •NuPlug - Pluins powered by MEF & NuGet •Klondike - Digging for NuGets
What is NuGet? •NuGet = Package Manager (libraries) • consume
& produce packages (.nupkg) • .NET, C++ (CoApp) • integrated in Visual Studio •NuGet gallery → https://www.nuget.org/
Changes in NuGet 3.0 •UI changes → 100% rewrite •v3
protocol → perf & scalability •project.json
Changes in NuGet 3.0 Project.JSON •.NET Core (UWP) •Transitive Dependencies
→ maintainability •Global Packages → %userprofile%\.nuget\packages Dropped Features (mostly update issues) •solution level packages •install.ps1, uninstall.ps1 •content packages •config file transforms
Chocolatey •Package Manager (binaries) • “apt-get for Windows” • automates
download & click-through •Gallery → https://chocolatey.org/ •Providers • Chef, Puppet, Boxstarter, OneGet, ...
OneGet •Unified interface to package management systems • shipped with
Win10 or WMF 5.0 • https://github.com/OneGet/oneget •List of supported providers • https://github.com/OneGet/oneget/issues/77
Boxstarter •Easy scripting of Windows installations • Using chocolatey •
Reboot resilient • Remote Installations • launch from url or Gist • built my Matt Wrock from Chef → http://boxstarter.org/
Squirrel •Squirrel: It's like ClickOnce but Works™ • https://github.com/squirrel/squirrel.windows •
Uses .nupkg as deployment packages • Delta compression for updates! • https://github.com/mkoertgen/hello.squirrel •Used by Slack → https://slack.com/is
NuPlug •https://github.com/awesome-inc/NuPlug •NuGet as plugin library •Package with 1..n interface
implementations •Procedure • load packages.config • download packages and dependencies (!) • get implementations for interface (MEF)
Klondike •https://github.com/themotleyfool/Klondike •Easy to use NuGet Server •SelfHost, IIS, Mono
•Lucene index for fast searching •Proxy for non local-packages •User management and personal API keys
Summary •NuGet is great solving dependencies •The ecosystem makes it
awesome because • get libraries for development in VS • install software with Chocolatey • create a plugin system with NuPlug • deploy an entire system with Boxstarter
Some References •NuGet Ecosystem (NuGet docs) •NuGet Team Blog •Octopus
Deploy in the ThoughtWorks Technology Radar (Octopus Blog)
Thank You Time for Questions!