• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
2013 Ohio LinuxFest - Ports, Packages, and PBI's
 

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

on

  • 260 views

Slides from my 2013 Ohio Linux Fest talk entitled: ...

Slides from my 2013 Ohio Linux Fest talk entitled:
PC-BSD: Ports, Packages, and PBI's

This covers all the different methods for installing applications on a PC-BSD system, with additional information about how to use these systems within the individualized jails via the "Warden" - the jail management utility in PC-BSD.

Statistics

Views

Total Views
260
Views on SlideShare
260
Embed Views
0

Actions

Likes
0
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

    • 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?