SlideShare a Scribd company logo
1 of 18
Download to read offline
PC-BSD:
Ports, Packages, and PBI's
Ken Moore
PC-BSD/iXsystems
Ohio LinuxFest
September 14th
, 2013
What is PC-BSD?
FreeBSD Simplified!
● Pre-configured desktop/server
installation
● Desktop-Environment agnostic
● Automatic ZFS setup
● Up-to-date package repositories
PC-BSD Additions
● Graphical Installer
● Warden (jail management)
● PBI package format w/ EasyPBI
● System backup/restore
functionality
● Many system administration
and device management utilities
FreeBSD Ports
Features
● ~25,000 applications
● Standardized method of
building/installing
applications.
● Independent of FreeBSD
version.
● FreeBSD Porters Handbook
Downsides
● Compiling from source
● Constant flux
● Size of the ports tree
FreeBSD Ports – Usage
● Ports tree management
– portsnap fetch extract: Install the ports tree
– portsnap fetch update: Update the ports tree
● Searching the ports tree
– http://www.freshports.org
● Installing a port
– cd /usr/ports/<category>/<portname>
– make install clean
FreeBSD pkgng
(Next Generation Packages)
Features
● Binary packages
● No ports tree
● Fast and easy
● Dependency
checking/resolving
Downsides
● No FreeBSD repo
● Security concerns
● Static compilation options
● FreeBSD series dependent
PC-BSD provides pkgng repositories for the release and stable branches of FreeBSD
These packages are digitally signed/sealed for secure digital transfer and use.
pkgng - Usage
● All interactions are run using the pkg command
– pkg add: install local package
– pkg install: download/install package from repo
– pkg delete: Uninstall a package
– pkg info: list information about installed packages
– pkg search: search the repo for package(s)
– pkg update: update local packages to the latest
versions on the repo
Many more pkg commands are available: use pkg help to
see the full list.
pkgng – Graphical Interface
The PBI Package System
The Purpose
● Provide a safe, system package
independent, method of
installing/updating applications
Additional Goals
● Ensure that applications do not
require an internet connection
for installation
● Minimize library duplication to
preserve disk space
The Implementation
● Written in pure shell (/bin/sh)
● Intelligently shared libraries
between PBI's
● A single PBI contains all
libraries, files, and data needed
for an application to run.
● Completely independent of the
local system packages and other
PBI applications
Using PBI's – Command Line
● Full command-line usage for the PBI system is
available using the pbi_* commands.
– pbi_add: Install PBI (from local file or remote repo)
– pbi_remove: Uninstall PBI
– pbi_info: List information about current PBI(s)
– pbi_browser: List/search available PBI's in the repo
– pbi_update: Update an installed PBI
– pbi_create: Package a local directory into a PBI
– pbi_makeport: build a PBI from a FreeBSD port
Additional commands for running a repo are also available
Using PBI's - AppCafe
Creating PBI's - EasyPBI
● Graphical front-end to the PBI
build system
– Generate build instructions
(a PBI “module”)
– Run the actual build process
● Tight (but optional) integration
with the FreeBSD ports
collection
● No technical experience required
● Average time to create a module
for a FreeBSD port: 5 minutes
start to finish
Summary of Formats
Ports Packages PBI's
Pre-Compiled No Yes Yes
Compile-time Options Yes No No
Plugin-aware Yes Yes No
Self-Contained No No Yes
Offline Installation No Yes* Yes
Delta Updates No No Yes
Reliability Poor Average Good
Installed To: /usr/local /usr/local/ /usr/pbi/<name>-<arch>
Available on FreeBSD Yes Yes** No
Available on PC-BSD Yes Yes Yes
* This is not recommended due to dependency resolution of pkgng
** FreeBSD does not provide any up-to-date package repositories
Examples
● Ports
– Best used for building customized drivers and/or
modifying the base system with specialized options
● Packages
– Generally used for any applications that require
integration within the system environment or highly
customizable with pre-compiled plugins
– Desktop environments, development platforms, system
hardware or administration utilities
● PBI's
– End-user or frequently updated applications
– Web browsers, email clients, games, audio/video, etc..
The Warden
What is it?
● Jail Managment Utility
● Powerful way to configure
and run a large number of
FreeBSD jails
● Simple sandboxing utility for
developers or users
● Secure environment for
running web services
Features
● ZFS snapshots
● Autostart jails on bootup
● Administer packages, services,
and users from outside the jail
● Import/export jails between
systems
● Traditional, ports, and Linux
jails possible
● Template system for customized
jail creation
Warden - Usage
● Command-line usage is all run via warden
– warden help: Show all the CLI options
– warden create/delete
– warden import/export: Uses a *.wdn file for transport
– warden list: list installed jails
– warden chroot: launch chroot into a jail
And many more for things like ZFS snapshot
management and jail configuration
Warden – Graphical Interface
Demo Time!!
Questions?

More Related Content

What's hot

Embedded Linux Basics
Embedded Linux BasicsEmbedded Linux Basics
Embedded Linux BasicsMarc Leeman
 
2013 Indiana LinuxFest - Getting Started With PC-BSD
2013 Indiana LinuxFest -  Getting Started With PC-BSD2013 Indiana LinuxFest -  Getting Started With PC-BSD
2013 Indiana LinuxFest - Getting Started With PC-BSDKen Moore
 
Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Ionela
 
Introduction to operating system, system calls and interrupts
Introduction to operating system, system calls and interruptsIntroduction to operating system, system calls and interrupts
Introduction to operating system, system calls and interruptsShivam Mitra
 
Yocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerYocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerSherif Mousa
 
Embedded linux system development (slides)
Embedded linux system development (slides)Embedded linux system development (slides)
Embedded linux system development (slides)Jaime Barragan
 
SELF 2014: PBI v10: Application Management Made Easy
SELF 2014: PBI v10: Application Management Made EasySELF 2014: PBI v10: Application Management Made Easy
SELF 2014: PBI v10: Application Management Made EasyKen Moore
 
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteUnit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteTushar B Kute
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionSherif Mousa
 
Secure your IT infrastructure with GNU/Linux
Secure your IT infrastructure  with GNU/LinuxSecure your IT infrastructure  with GNU/Linux
Secure your IT infrastructure with GNU/LinuxBud Siddhisena
 

What's hot (20)

Embedded Linux Basics
Embedded Linux BasicsEmbedded Linux Basics
Embedded Linux Basics
 
2013 Indiana LinuxFest - Getting Started With PC-BSD
2013 Indiana LinuxFest -  Getting Started With PC-BSD2013 Indiana LinuxFest -  Getting Started With PC-BSD
2013 Indiana LinuxFest - Getting Started With PC-BSD
 
Embedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernelEmbedded Linux Kernel - Build your custom kernel
Embedded Linux Kernel - Build your custom kernel
 
Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)Embedded Android : System Development - Part II (Linux device drivers)
Embedded Android : System Development - Part II (Linux device drivers)
 
Oct2009
Oct2009Oct2009
Oct2009
 
Embedded Android : System Development - Part I
Embedded Android : System Development - Part IEmbedded Android : System Development - Part I
Embedded Android : System Development - Part I
 
Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]
 
Linux programming - Getting self started
Linux programming - Getting self started Linux programming - Getting self started
Linux programming - Getting self started
 
Embedded Linux on ARM
Embedded Linux on ARMEmbedded Linux on ARM
Embedded Linux on ARM
 
Introduction to operating system, system calls and interrupts
Introduction to operating system, system calls and interruptsIntroduction to operating system, system calls and interrupts
Introduction to operating system, system calls and interrupts
 
Introduction to Embedded Systems
Introduction to Embedded Systems Introduction to Embedded Systems
Introduction to Embedded Systems
 
Intro to Embedded OS, RTOS and Communication Protocols
Intro to Embedded OS, RTOS and Communication ProtocolsIntro to Embedded OS, RTOS and Communication Protocols
Intro to Embedded OS, RTOS and Communication Protocols
 
Yocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution MakerYocto - Embedded Linux Distribution Maker
Yocto - Embedded Linux Distribution Maker
 
Windows Architecture
Windows ArchitectureWindows Architecture
Windows Architecture
 
Embedded linux system development (slides)
Embedded linux system development (slides)Embedded linux system development (slides)
Embedded linux system development (slides)
 
SELF 2014: PBI v10: Application Management Made Easy
SELF 2014: PBI v10: Application Management Made EasySELF 2014: PBI v10: Application Management Made Easy
SELF 2014: PBI v10: Application Management Made Easy
 
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B KuteUnit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
Unit 6 Operating System TEIT Savitribai Phule Pune University by Tushar B Kute
 
Linux Internals - Interview essentials 4.0
Linux Internals - Interview essentials 4.0Linux Internals - Interview essentials 4.0
Linux Internals - Interview essentials 4.0
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems Introduction
 
Secure your IT infrastructure with GNU/Linux
Secure your IT infrastructure  with GNU/LinuxSecure your IT infrastructure  with GNU/Linux
Secure your IT infrastructure with GNU/Linux
 

Similar to 2013 Ohio LinuxFest - Ports, Packages, and PBI's

PBI v10: Application Management Made Easy by Ken Moore
PBI v10: Application Management Made Easy by Ken MoorePBI v10: Application Management Made Easy by Ken Moore
PBI v10: Application Management Made Easy by Ken MooreiXsystems
 
The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012Philip Polstra
 
Hacking and Forensics on the Go - 44CON 2012
Hacking and Forensics on the Go - 44CON 2012Hacking and Forensics on the Go - 44CON 2012
Hacking and Forensics on the Go - 44CON 201244CON
 
Python on FreeBSD
Python on FreeBSDPython on FreeBSD
Python on FreeBSDpycontw
 
Asiabsdcon2013
Asiabsdcon2013Asiabsdcon2013
Asiabsdcon2013krispcbsd
 
Continuous Integration and DevOps with Open Build Service(OBS)
Continuous Integration and DevOps with Open Build Service(OBS)Continuous Integration and DevOps with Open Build Service(OBS)
Continuous Integration and DevOps with Open Build Service(OBS)Ralf Dannert
 
Strategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and imagesStrategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and imagesMender.io
 
Bringing-it-all-together-overview-of-rpm-packaging-in-fedora
Bringing-it-all-together-overview-of-rpm-packaging-in-fedoraBringing-it-all-together-overview-of-rpm-packaging-in-fedora
Bringing-it-all-together-overview-of-rpm-packaging-in-fedoraLalatendu Mohanty
 
Third-party software management under BSD
Third-party software management under BSDThird-party software management under BSD
Third-party software management under BSDAndrew Pantyukhin
 
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computersPiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computersIan Kluft
 

Similar to 2013 Ohio LinuxFest - Ports, Packages, and PBI's (20)

PBI v10: Application Management Made Easy by Ken Moore
PBI v10: Application Management Made Easy by Ken MoorePBI v10: Application Management Made Easy by Ken Moore
PBI v10: Application Management Made Easy by Ken Moore
 
olf10
olf10olf10
olf10
 
Olf2012
Olf2012Olf2012
Olf2012
 
Scale13
Scale13Scale13
Scale13
 
Scale9x sun
Scale9x sunScale9x sun
Scale9x sun
 
Flourish11
Flourish11Flourish11
Flourish11
 
The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012The Deck by Phil Polstra GrrCON2012
The Deck by Phil Polstra GrrCON2012
 
Polstra 44con2012
Polstra 44con2012Polstra 44con2012
Polstra 44con2012
 
Hacking and Forensics on the Go - 44CON 2012
Hacking and Forensics on the Go - 44CON 2012Hacking and Forensics on the Go - 44CON 2012
Hacking and Forensics on the Go - 44CON 2012
 
Ilf2011
Ilf2011Ilf2011
Ilf2011
 
Python on FreeBSD
Python on FreeBSDPython on FreeBSD
Python on FreeBSD
 
Asiabsdcon2013
Asiabsdcon2013Asiabsdcon2013
Asiabsdcon2013
 
Scale2013
Scale2013Scale2013
Scale2013
 
PHP selber bauen
PHP selber bauenPHP selber bauen
PHP selber bauen
 
Continuous Integration and DevOps with Open Build Service(OBS)
Continuous Integration and DevOps with Open Build Service(OBS)Continuous Integration and DevOps with Open Build Service(OBS)
Continuous Integration and DevOps with Open Build Service(OBS)
 
Strategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and imagesStrategies for developing and deploying your embedded applications and images
Strategies for developing and deploying your embedded applications and images
 
Bringing-it-all-together-overview-of-rpm-packaging-in-fedora
Bringing-it-all-together-overview-of-rpm-packaging-in-fedoraBringing-it-all-together-overview-of-rpm-packaging-in-fedora
Bringing-it-all-together-overview-of-rpm-packaging-in-fedora
 
Third-party software management under BSD
Third-party software management under BSDThird-party software management under BSD
Third-party software management under BSD
 
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computersPiFlash: Linux utility to flash SD cards for Raspberry Pi computers
PiFlash: Linux utility to flash SD cards for Raspberry Pi computers
 
vbsd2013
vbsd2013vbsd2013
vbsd2013
 

Recently uploaded

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

2013 Ohio LinuxFest - Ports, Packages, and PBI's

  • 1. PC-BSD: Ports, Packages, and PBI's Ken Moore PC-BSD/iXsystems Ohio LinuxFest September 14th , 2013
  • 2. What is PC-BSD? FreeBSD Simplified! ● Pre-configured desktop/server installation ● Desktop-Environment agnostic ● Automatic ZFS setup ● Up-to-date package repositories PC-BSD Additions ● Graphical Installer ● Warden (jail management) ● PBI package format w/ EasyPBI ● System backup/restore functionality ● Many system administration and device management utilities
  • 3. FreeBSD Ports Features ● ~25,000 applications ● Standardized method of building/installing applications. ● Independent of FreeBSD version. ● FreeBSD Porters Handbook Downsides ● Compiling from source ● Constant flux ● Size of the ports tree
  • 4. FreeBSD Ports – Usage ● Ports tree management – portsnap fetch extract: Install the ports tree – portsnap fetch update: Update the ports tree ● Searching the ports tree – http://www.freshports.org ● Installing a port – cd /usr/ports/<category>/<portname> – make install clean
  • 5. FreeBSD pkgng (Next Generation Packages) Features ● Binary packages ● No ports tree ● Fast and easy ● Dependency checking/resolving Downsides ● No FreeBSD repo ● Security concerns ● Static compilation options ● FreeBSD series dependent PC-BSD provides pkgng repositories for the release and stable branches of FreeBSD These packages are digitally signed/sealed for secure digital transfer and use.
  • 6. pkgng - Usage ● All interactions are run using the pkg command – pkg add: install local package – pkg install: download/install package from repo – pkg delete: Uninstall a package – pkg info: list information about installed packages – pkg search: search the repo for package(s) – pkg update: update local packages to the latest versions on the repo Many more pkg commands are available: use pkg help to see the full list.
  • 8. The PBI Package System The Purpose ● Provide a safe, system package independent, method of installing/updating applications Additional Goals ● Ensure that applications do not require an internet connection for installation ● Minimize library duplication to preserve disk space The Implementation ● Written in pure shell (/bin/sh) ● Intelligently shared libraries between PBI's ● A single PBI contains all libraries, files, and data needed for an application to run. ● Completely independent of the local system packages and other PBI applications
  • 9. Using PBI's – Command Line ● Full command-line usage for the PBI system is available using the pbi_* commands. – pbi_add: Install PBI (from local file or remote repo) – pbi_remove: Uninstall PBI – pbi_info: List information about current PBI(s) – pbi_browser: List/search available PBI's in the repo – pbi_update: Update an installed PBI – pbi_create: Package a local directory into a PBI – pbi_makeport: build a PBI from a FreeBSD port Additional commands for running a repo are also available
  • 10. Using PBI's - AppCafe
  • 11. Creating PBI's - EasyPBI ● Graphical front-end to the PBI build system – Generate build instructions (a PBI “module”) – Run the actual build process ● Tight (but optional) integration with the FreeBSD ports collection ● No technical experience required ● Average time to create a module for a FreeBSD port: 5 minutes start to finish
  • 12. Summary of Formats Ports Packages PBI's Pre-Compiled No Yes Yes Compile-time Options Yes No No Plugin-aware Yes Yes No Self-Contained No No Yes Offline Installation No Yes* Yes Delta Updates No No Yes Reliability Poor Average Good Installed To: /usr/local /usr/local/ /usr/pbi/<name>-<arch> Available on FreeBSD Yes Yes** No Available on PC-BSD Yes Yes Yes * This is not recommended due to dependency resolution of pkgng ** FreeBSD does not provide any up-to-date package repositories
  • 13. Examples ● Ports – Best used for building customized drivers and/or modifying the base system with specialized options ● Packages – Generally used for any applications that require integration within the system environment or highly customizable with pre-compiled plugins – Desktop environments, development platforms, system hardware or administration utilities ● PBI's – End-user or frequently updated applications – Web browsers, email clients, games, audio/video, etc..
  • 14. The Warden What is it? ● Jail Managment Utility ● Powerful way to configure and run a large number of FreeBSD jails ● Simple sandboxing utility for developers or users ● Secure environment for running web services Features ● ZFS snapshots ● Autostart jails on bootup ● Administer packages, services, and users from outside the jail ● Import/export jails between systems ● Traditional, ports, and Linux jails possible ● Template system for customized jail creation
  • 15. Warden - Usage ● Command-line usage is all run via warden – warden help: Show all the CLI options – warden create/delete – warden import/export: Uses a *.wdn file for transport – warden list: list installed jails – warden chroot: launch chroot into a jail And many more for things like ZFS snapshot management and jail configuration
  • 16. Warden – Graphical Interface