merge history from draft packaging

This commit is contained in:
T.C. Hollingsworth 2013-08-27 05:17:41 -07:00
commit b4a131eb9a
6 changed files with 186 additions and 0 deletions

19
LICENSE Normal file
View File

@ -0,0 +1,19 @@
Copyright 2013 T.C. Hollingsworth <tchollingsworth@gmail.com>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
IN THE SOFTWARE.

8
README.devel Normal file
View File

@ -0,0 +1,8 @@
web-assets-devel contains the RPM macros that implement the Fedora Web Assets
and JavaScript packaging policies.
For more information on packaging Web Assets, see:
https://fedoraproject.org/wiki/Packaging:Web_Assets
For more information on packaging JavaScript, see:
https://fedoraproject.org/wiki/Packaging:JavaScript

19
README.md Normal file
View File

@ -0,0 +1,19 @@
one directory to rule them all
==============================
For more information, see the
[proposal](https://fedoraproject.org/Changes/Web_Assets) and
[proposed guidelines](https://fedoraproject.org/User:Patches/PackagingDrafts/Web_Assets)
Try Me
------
```sh
sudo yum install git fedora-packager
git clone https://github.com/tchollingsworth/fedora-web-assets
cd fedora-web-assets
fedpkg --dist=f19 local
sudo yum install noarch/*
```
[There are also some builds here.](http://patches.fedorapeople.org/web-assets/)

13
macros.web-assets Normal file
View File

@ -0,0 +1,13 @@
%_webassetdir %{_datadir}/web-assets
%_jsdir %{_datadir}/javascript
%js_includes() %{expand: \
%(
ver=$(rpm -q --qf='%%{version}' -- %1)
if [[ $? -eq 0 ]]; then
echo "Provides: js-includes(%1) = $ver"
else
echo "Provides: js-includes(%1)"
fi
)
}

14
web-assets.conf Normal file
View File

@ -0,0 +1,14 @@
Alias /_sysassets /usr/share/web-assets
<Directory /usr/share/web-assets>
Options -Indexes
Require all granted
</Directory>
Alias /_sysassets/javascript /usr/share/javascript
Alias /_sysassets/js /usr/share/javascript
<Directory /usr/share/javascript>
Options -Indexes
Require all granted
</Directory>

113
web-assets.spec Normal file
View File

@ -0,0 +1,113 @@
#disable the httpd stuff while we're waiting on getting the path issues
#cleared up
%global enable_httpd 0
Name: web-assets
Version: 4
Release: 2%{?dist}
Summary: A simple framework for bits pushed to browsers
BuildArch: noarch
License: MIT
URL: https://fedoraproject.org/wiki/User:Patches/PackagingDrafts/Web_Assets
Source1: LICENSE
Source2: macros.web-assets
Source3: web-assets.conf
Source4: README.devel
%description
%{summary}.
%package filesystem
Summary: The basic directory layout for Web Assets
#there's nothing copyrightable about a few directories and symlinks
License: Public Domain
%description filesystem
%{summary}.
%package devel
Summary: RPM macros for Web Assets packaging
License: MIT
Requires: web-assets-filesystem = %{version}-%{release}
%description devel
%{summary}.
%if 0%{?enable_httpd}
%package httpd
Summary: Web Assets aliases for the Apache HTTP daemon
License: MIT
Requires: web-assets-filesystem = %{version}-%{release}
Requires: httpd
Requires(post): systemd
Requires(postun): systemd
%description httpd
%{summary}.
%endif
%prep
%setup -c -T
cp %{SOURCE1} LICENSE
cp %{SOURCE4} README.devel
%build
#nothing to do
%install
mkdir -p %{buildroot}%{_datadir}/web-assets
mkdir -p %{buildroot}%{_datadir}/javascript
ln -sf ../javascript %{buildroot}%{_datadir}/web-assets/javascript
ln -sf ../javascript %{buildroot}%{_datadir}/web-assets/js
ln -sf ../fonts %{buildroot}%{_datadir}/web-assets/fonts
install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/macros.d/macros.web-assets
%if 0%{?enable_httpd}
install -Dpm0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/httpd/conf.d/web-assets.conf
%post httpd
systemctl reload-or-try-restart httpd.service || :
%postun httpd
systemctl reload-or-try-restart httpd.service || :
%endif
%files filesystem
%{_datadir}/web-assets
%{_datadir}/javascript
%files devel
%{_rpmconfigdir}/macros.d/macros.web-assets
%doc LICENSE README.devel
%if 0%{?enable_httpd}
%files httpd
%config(noreplace) %{_sysconfdir}/httpd/conf.d/web-assets.conf
%doc LICENSE
%endif
%changelog
* Sat Aug 24 2013 T.C. Hollingsworth <tchollingsworth@gmail.com> - 4-2
- tighten dependency on filesystem from other packages
- add brief README to -devel
* Fri Aug 16 2013 T.C. Hollingsworth <tchollingsworth@gmail.com> - 4-1
- temporarily disable httpd stuff while we're waiting on sorting out the
directory
* Tue Jul 30 2013 T.C. Hollingsworth <tchollingsworth@gmail.com> - 3-1
- rename directories per discussion on lists
- provide a /_sysassets/js shortcut
* Fri Jul 19 2013 T.C. Hollingsworth <tchollingsworth@gmail.com> - 2-1
- rename the license now that we have proper git
- prefix httpd-exported directory with an underscore (thanks to Joe Orton)
- add "Require all granted" (thanks to Remi Collet)
- alias /usr/share/javascript explictly
* Thu Jul 11 2013 T.C. Hollingsworth <tchollingsworth@gmail.com> - 1-1
- initial package