BSD Ports

www/py-horizon 25.2.0 DragonFly

OpenStack Dashboard (Horizon)

System
DragonFly
Repository
DPorts
Maintainer
[email protected] (as in FreeBSD)
License
APACHE20
Categories
python, www
Package size
3866.8 KiB, 33297.6 KiB installed

Description

Horizon is a Django-based project aimed at providing a complete OpenStack Dashboard along with an extensible framework for building new dashboards from reusable components. The openstack_dashboard module is a reference implementation of a Django site that uses the horizon app to provide web-based interactions with the various OpenStack projects.

In the other systems

The newest version among them is 27.0.0, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
DragonFlywww/py-horizon25.2.0 behind since 2026-07-11none known-[email protected]-
FreeBSDwww/py-horizon27.0.0 newestnone known-[email protected]2026-09-20
HardenedBSDwww/py-horizon27.0.0 newestno data-[email protected]-
GhostBSDwww/py-horizon27.0.0 newestno data-[email protected]-

Install

Binary package:

pkg install py311-horizon

From DPorts:

cd /usr/dports/www/py-horizon && make install clean

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

Run dependencies 59

No port depends on this one.

Configuration

No options to configure.

Service scripts
none

Message after installing

======================
 Apache configuration
======================

If you plan to use apache make sure that the mod_wsgi module is enabled and the
correct ownership for static/local libraries for the openstack_dashboard are
set:

# chown -R horizon /usr/local/lib/python3.11/site-packages/openstack_dashboard/static
# chown -R horizon /usr/local/lib/python3.11/site-packages/openstack_dashboard/local

Use the following snippet as reference:

### Start

<VirtualHost *:80>
        WSGIScriptAlias / /usr/local/lib/python3.11/site-packages/openstack_dashboard/wsgi/django.wsgi
        WSGIDaemonProcess horizon user=horizon group=horizon processes=3 threads=10 display-name=%{GROUP}
        WSGIProcessGroup horizon
        WSGIApplicationGroup %{GLOBAL}

        DocumentRoot /var/lib/horizon

        Alias /static/horizon/lib/angular/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular/data/
        Alias /static/horizon/lib/angular_bootstrap/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_bootstrap/data/
        Alias /static/horizon/lib/angular_fileupload/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_fileupload/data/
        Alias /static/horizon/lib/angular_gettext/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_gettext/data/
        Alias /static/horizon/lib/angular_lrdragndrop/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_lrdragndrop/data/
        Alias /static/horizon/lib/angular_schemaform/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_schemaform/data/
        Alias /static/horizon/lib/angular_smart_table/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/angular_smart_table/data/
        Alias /static/horizon/lib/bootstrap_datepicker/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/bootstrap_datepicker/data/
        Alias /static/horizon/lib/bootstrap_scss/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/bootstrap_scss/data/
        Alias /static/horizon/lib/bootswatch/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/bootswatch/data/
        Alias /static/horizon/lib/d3/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/d3/data/
        Alias /static/horizon/lib/font_awesome/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/font_awesome/data/
        Alias /static/horizon/lib/hogan/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/hogan/data/
        Alias /static/horizon/lib/jasmine/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/jasmine/data/
        Alias /static/horizon/lib/jquery_migrate/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/jquery_migrate/data/
        Alias /static/horizon/lib/jquery_quicksearch/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/jquery_quicksearch/data/
        Alias /static/horizon/lib/jquery_tablesorter/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/jquery_tablesorter/data/
        Alias /static/horizon/lib/jsencrypt/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/jsencrypt/data/
        Alias /static/horizon/lib/mdi/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/mdi/data/
        Alias /static/horizon/lib/objectpath/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/objectpath/data/
        Alias /static/horizon/lib/rickshaw/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/rickshaw/data/
        Alias /static/horizon/lib/roboto_fontface/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/roboto_fontface/data/
        Alias /static/horizon/lib/spin/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/spin/data/
        Alias /static/horizon/lib/termjs/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/termjs/data/
        Alias /static/horizon/lib/tv4/ /usr/local/lib/python3.11/site-packages/xstatic/pkg/tv4/data/
        Alias /static/horizon /usr/local/lib/python3.11/site-packages/horizon/static/horizon
        Alias /static /usr/local/lib/python3.11/site-packages/openstack_dashboard/static

        <Directory />
                AllowOverride None
        </Directory>

        <Directory /usr/local/lib/python3.11/site-packages/openstack_dashboard/wsgi>
                Require all granted
        </Directory>

        <Directory /usr/local/lib/python3.11/site-packages/openstack_dashboard/static>
                Require all granted
        </Directory>

        <Directory /usr/local/lib/python3.11/site-packages/horizon/static>
                Require all granted
        </Directory>

        <Directory /usr/local/lib/python3.11/site-packages/xstatic/pkg/*/data>
                Require all granted
        </Directory>

</VirtualHost>

### End

======================
 Custom configuration
======================

Create the configuration:

# cd /usr/local/lib/python3.11/site-packages/openstack_dashboard/local
# cp local_settings.py.example local_settings.py

Add one or more entries to the ALLOWED_HOSTS directive:

ALLOWED_HOSTS = [ 'host1', '192.168.0.1' ]

Horizon must be configured for at least one Keystone server to work properly:

OPENSTACK_HOST = "127.0.0.1"
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "_member_"

To enable django-compressor add this option:

STATIC_ROOT = '/usr/local/lib/python3.11/site-packages/openstack_dashboard/static'