Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:42.2
dice
dice.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File dice.spec of Package dice
# # spec file for package dice # # Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: dice Version: 0.7.3 Release: 0 %define mod_name dice %define mod_full_name %{mod_name}-%{version} %define rb_build_versions %{rb_default_ruby} BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: %{rubygem abstract_method >= 1.2.1} BuildRequires: %{rubygem bundler} BuildRequires: %{rubygem cheetah >= 0.4.0} BuildRequires: %{rubygem gem2rpm} BuildRequires: %{rubygem gli >= 2.11.0} BuildRequires: %{rubygem inifile >= 2.0.2} BuildRequires: %{rubygem json >= 1.8.0} BuildRequires: %{rubygem rice} BuildRequires: %{ruby} BuildRequires: fdupes BuildRequires: gcc-c++ BuildRequires: ruby-devel BuildRequires: ruby-macros >= 5 BuildRequires: update-alternatives # Disable autogenerating "Requires:" headers for bundled gems. %define __requires_exclude ^rubygem Requires: ruby >= 2.0 Requires: ruby-solv Url: http://www.suse.com Source0: %{mod_full_name}.gem Source1: %{mod_name}-rpmlintrc Source2: gem2rpm.yml Summary: Light Weight Image Build System License: GPL-3.0 Group: Development/Languages/Ruby %description Given there is the need to build a kiwi appliance for a customer, one wants to keep track of the updates from the distribution and software vendors according to the components used in the appliance. This leads to a regular rebuild of that appliance which should be automatically triggered whenever the repository which stores all the software packages has changed. With Dice there is a tool which automatically builds all appliances stored in a directory %prep %build %install # Install the Ruby source %gem_install \ --symlink-binaries \ --doc-files="COPYING key" \ -f # Change to ruby gem dir pushd %{buildroot}%{_libdir}/ruby/gems/%{rb_ver}/gems/%{mod_full_name} # Build CPP extensions ( cd lib/semaphore && ruby ./extconf.rb && make && rm -f semaphore.o ) # Bundle dependencies cat > Gemfile <<EOT gem "cheetah", ">= 0.4.0" gem "gli", ">= 2.11.0" gem "abstract_method", ">= 1.2.1" %if %suse_version <= 1310 gem "json", ">= 1.8.0" %endif gem "inifile", ">= 2.0.2" EOT mkdir -p vendor/cache cp %{_libdir}/ruby/gems/%{rb_ver}/cache/*.gem vendor/cache bundle install --standalone --local rm -rf vendor .bundle Gemfile Gemfile.lock # Delete devel source ( cd lib/semaphore && rm -f semaphore.cpp Makefile extconf.rb ) # Move bash completion mkdir -p %{buildroot}/etc/bash_completion.d mv completion/dice.sh %{buildroot}/etc/bash_completion.d popd # Adapt the binary # Here we do a surgery on the binary to actually load the bundled gems. # This is a hack, but it can't be done anywhere else because the binary # is generated during gem install. sed -i '/gem/i \ Gem.path.unshift("%{_libdir}/ruby/gems/%{rb_ver}/gems/%{mod_full_name}/bundle/ruby/%{rb_ver}") ' %{buildroot}/usr/bin/dice.ruby*-%{version} # Convert duplicate files to symlinks %fdupes -s %{buildroot} %gem_packages %config /etc/bash_completion.d/dice.sh %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor