Add chocolatey package spec

This commit is contained in:
Thomas Jensen 2019-03-28 21:57:56 +01:00
parent 416ae729e8
commit 77ee4908e3
No known key found for this signature in database
GPG Key ID: A4ACEE270D0FB7DB
3 changed files with 147 additions and 1 deletions

View File

@ -29,6 +29,7 @@ PKG_NAME = boxes-$(BVERSION)
.PHONY: clean build win32 debug win32.debug infomsg replaceinfos test package win32.package package_common
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
build debug: infomsg replaceinfos
$(MAKE) -C src BOXES_PLATFORM=unix $@
@ -39,6 +40,7 @@ win32: infomsg replaceinfos
win32.debug: infomsg replaceinfos
$(MAKE) -C src BOXES_PLATFORM=win32 debug
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
infomsg:
@echo "| For compilation info please refer to the boxes compilation FAQ"
@ -52,6 +54,7 @@ src/boxes.h: src/boxes.h.in src/regexp/regexp.h Makefile
doc/boxes.1: doc/boxes.1.in Makefile
sed -e 's/--BVERSION--/$(BVERSION)/; s/--GLOBALCONF--/$(subst /,\/,$(GLOBALCONF))/' doc/boxes.1.in > doc/boxes.1
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
$(PKG_NAME).tar.gz:
mkdir -p $(PKG_NAME)/doc
@ -68,11 +71,35 @@ package: build
win32.package: win32
$(MAKE) BOXES_PLATFORM=win32 $(PKG_NAME).tar.gz
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
choco: tools/LICENSE.txt tools/boxes.cfg tools/boxes.exe tools/README.md tools/README.Win32.md
choco pack --version=$(BVERSION)
tools/LICENSE.txt: LICENSE
cp LICENSE tools/LICENSE.txt
tools/boxes.cfg: boxes-config
cp boxes-config tools/boxes.cfg
tools/boxes.exe: src/boxes.exe
cp src/boxes.exe tools/
tools/README.md: README.md
cp README.md tools/
tools/README.Win32.md: README.Win32.md
cp README.Win32.md tools/
src/boxes.exe: win32
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
clean:
rm -f doc/boxes.1 src/boxes.h
rm -f doc/boxes.1 src/boxes.h tools/boxes.cfg tools/LICENSE.txt tools/boxes.exe tools/README*.md boxes.portable.*.nupkg
$(MAKE) -C src clean
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
test:
cd test; ./testrunner.sh -suite

97
boxes.portable.nuspec Normal file
View File

@ -0,0 +1,97 @@
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2015/06/nuspec.xsd">
<metadata>
<id>boxes.portable</id>
<title>boxes (Portable)</title>
<version>0.0.0</version>
<authors>The Boxes Contributors</authors>
<owners>Thomas Jensen</owners>
<summary>Command Line ASCII Boxes Unlimited!</summary>
<description><![CDATA[*Boxes* is a command line program that draws a box around its input text. It can remove
and repair those boxes, too. You can easily make your own box designs if you wish, but many designs are
already provided.
*Boxes* is a portable application (hence the `.portable` suffix in the choco package ID). It is installed into
the package directory `%ChocolateyInstall%\lib\boxes`. Chocolatey makes *boxes* available to you on the `PATH`
via its `%ChocolateyInstall%\bin` directory. This is the only official *boxes* choco package.
### Examples
After *boxes* is installed, try calling it like this:
`C:\>echo Hello World | boxes`
```
/***************/
/* Hello World */
/***************/
```
or like this:
`C:\>echo Hello World! | boxes -d unicornsay`
```
_______________
/ \
| Hello World! |
\_________ __'\
|/ \\
\ \\ .
|\\/|
/ " '\
. . .
/ ) |
' _.' |
'-'/ \
```
A more complex call might look like this:
`C:\>echo Spring is in the Air! | boxes -d spring -p h4 -ac`
```
,
/\^/`\
| \/ |
| | | jgs
\ \ / _ _
'\\//' _{ ' }_
|| Spring is in the Air! { `.!.` }
|| ',_/Y\_,'
|| , {_,_}
|\ || |\ |
| | || | | (\| /)
| | || / / \| //
\ \||/ / |//
`\\//` \ \./ \\ \./ \\ \./ \ \\ |/ /
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
```
### Modifying boxes.cfg
At some point, you may wish to modify existing box designs or even add your own.
When that happens, you may find that you don't have the necessary access permissions to modify boxes.cfg in
`%ChocolateyInstall%\lib\boxes` directly. In that case, make a copy of boxes.cfg and place it in one of the
precedent locations, where *boxes* finds it before the original. When reading the config file, *boxes* will try
these locations (in order):
1. The file specified by the environment variable `BOXES`.
2. A file called boxes.cfg in the directory specified by the environment variable `HOME`.
3. The boxes.cfg installed by choco.
&nbsp;
]]></description>
<projectUrl>https://boxes.thomasjensen.com/</projectUrl>
<tags>ascii ascii-art filter command-line cli</tags>
<iconUrl>https://boxes.thomasjensen.com/images/boxes-sq-256.png</iconUrl>
<!-- <license type="expression">GPL-2.0-only</license> -->
<licenseUrl>https://www.gnu.org/licenses/old-licenses/gpl-2.0.html</licenseUrl>
<language>en</language>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<releaseNotes>https://boxes.thomasjensen.com/2019/02/boxes-v1.3-released.html</releaseNotes>
<projectSourceUrl>https://github.com/ascii-boxes/boxes</projectSourceUrl>
<docsUrl>https://boxes.thomasjensen.com/docs/</docsUrl>
<bugTrackerUrl>https://github.com/ascii-boxes/boxes/issues</bugTrackerUrl>
</metadata>
<files>
<file src="tools\**" target="tools" />
</files>
</package>

22
tools/VERIFICATION.txt Normal file
View File

@ -0,0 +1,22 @@
VERIFICATION
Verification is intended to assist the Chocolatey moderators and community
in verifying that this package's contents are trustworthy.
.+"+.+"+.+"+.+"+.+"+.
( )
) b o x e s (
( )
"+.+"+.+"+.+"+.+"+.+"
This package is maintained by the original author of the contained software.
The nuspec of this package is located at https://github.com/ascii-boxes/boxes/blob/master/boxes.portable.nuspec .
Verification instructions:
1. Download Windows binary from project GitHub site:
https://github.com/ascii-boxes/boxes/releases
2. Compare with contents of this package.
The files "boxes.exe" and "boxes.cfg" should be binary identical.
That's all, really. Boxes is a simple, portable command-line application which consists only of these two files.