SlideShare uma empresa Scribd logo
1 de 18
Baixar para ler 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?

Mais conteúdo relacionado

Mais procurados

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
 

Mais procurados (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
 

Semelhante a 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
 

Semelhante a 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
 

Último

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 

Último (20)

Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 

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