From f2db614faffca90b514828cc045dde9be48c6802 Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Tue, 22 Feb 2022 00:17:33 +0100 Subject: Added website; released 2.0.1 --- INSTALL | 15 ++-- Makefile | 14 +++- README.md | 72 +----------------- doc/nissy.html | 4 +- doc/nissy.pdf | Bin 33152 -> 33154 bytes nissy.exe | Bin 788679 -> 0 bytes www/download/index.html | 190 ++++++++++++++++++++++++++++++++++++++++++++++++ www/examples/index.html | 49 +++++++++++++ www/favicon.png | Bin 0 -> 6550 bytes www/index.html | 93 ++++++++++++++++++++++++ www/screenshot.png | Bin 0 -> 61239 bytes www/style.css | 99 +++++++++++++++++++++++++ 12 files changed, 457 insertions(+), 79 deletions(-) delete mode 100755 nissy.exe create mode 100644 www/download/index.html create mode 100644 www/examples/index.html create mode 100644 www/favicon.png create mode 100644 www/index.html create mode 100644 www/screenshot.png create mode 100644 www/style.css diff --git a/INSTALL b/INSTALL index e3ed7a9..f0bba55 100644 --- a/INSTALL +++ b/INSTALL @@ -1,3 +1,7 @@ +# Website + +Nissy is available at https://nissy.tronto.net + # Requirements A full installation of nissy requires about 3Gb of space, @@ -23,7 +27,7 @@ Sorry for the inconvenience, I don't have a Windows machine to test this on. Edit the Makefile to match your local configuration (usually not necessary, but you may want to change the PREFIX variable) and run make, followed by make install. -Follows the instructions below to install the pruning tables. +Follow the instructions below to install the pruning tables. ## Tables Nissy needs to generate certain large tables to work. These tables are by default @@ -33,7 +37,7 @@ nissy simply loads the corresponding file from the hard disk. The very large table for optimal solving can take some time to generate (about 1.5 hours on my fairly old but decent laptop, using 8 CPU threads). -In order to generate it you need at least 5Gb or RAM. +In order to generate it you need at least 5Gb of RAM. All other tables are much faster. You can ask nissy to generate all the tables it will ever need with the gen @@ -50,8 +54,7 @@ systems this folder is either .nissy/tables in the user's home directory or $XDG_DATA_HOME/nissy/tables if the XDG variable is configured. On Windows it is the same directory as the nissy.exe executable file. -Choose either (zip format) +You can downloads all the tables from the following link: https://nissy.tronto.net/nissy-tables-2.0.zip -or (tar.gz format) - https://nissy.tronto.net/nissy-tables-2.0.tar.gz -and extract the archive into the correct folder. +The version 2.0 at the end of the file name is only indicative. +Later versions will use the same tables, unless otherwise specified. diff --git a/Makefile b/Makefile index a167d5a..fcad62b 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ # See LICENSE file for copyright and license details. -VERSION = 2.0 +VERSION = 2.0.1 PREFIX = /usr/local MANPREFIX = ${PREFIX}/share/man @@ -40,6 +40,16 @@ dist: clean nissy.exe rm -rf nissy-${VERSION} mv nissy.exe nissy-${VERSION}.exe +upload: dist + rsync -v --rsync-path=openrsync nissy-${VERSION}.exe \ + tronto.net:/var/www/htdocs/nissy.tronto.net/ + rsync -v --rsync-path=openrsync nissy-${VERSION}.tar.gz \ + tronto.net:/var/www/htdocs/nissy.tronto.net/ + +website: + rsync -rv --rsync-path=openrsync \ + www/ tronto.net:/var/www/htdocs/nissy.tronto.net + install: nissy mkdir -p ${DESTDIR}${PREFIX}/bin cp -f nissy ${DESTDIR}${PREFIX}/bin/nissy @@ -53,5 +63,5 @@ uninstall: rm -rf ${DESTDIR}${PREFIX}/bin/nissy ${DESTDIR}${MANPREFIX}/man1/nissy.1 for s in ${SCRIPTS}; do rm -rf ${DESTDIR}${PREFIX}/bin/$$s; done -.PHONY: all debug clean dist install uninstall +.PHONY: all debug clean dist install uninstall upload diff --git a/README.md b/README.md index 6e249ba..64e29ea 100644 --- a/README.md +++ b/README.md @@ -11,75 +11,9 @@ Nissy can also solve many different substeps of Thistlethwaite's algorithm (DR/HTR), and can use NISS (Normal-Inverse Scramble Switch). It can be useful to analyze your DR solves (and more, once I implement more features). -## Why should I use Nissy? - -You should use Nissy if you: - -* Want to analyze your DR solutions or check for multiple optimal (or sub-optimal) -solutions for EO/DR/HTR or similar substeps. -* You just want a Rubik's cube solver and you like command line interfaces. -* You want an alternative to Cube Explorer. - -## Requirements - -A full installation of nissy requires about 3Gb of space, -of which 2.3Gb are occupied by the huge pruning table for fast optimal solving, -and running it requires the same amount of RAM. -One can choose to never use this function and not to install the relative -pruning table. There is an alternative (slower) -optimal solving function that uses about 500Mb of RAM. - -## Installation - -### On Windows - -Try downloading and executing in a terminal the file nissy.exe, then -follow the instructions in the **Tables** section below for -installing the pruning tables. -If nissy.exe does not work, you can try following the UNIX instructions -in WSL (Windows Subsystem for Linux) or in a similar environment. - -Sorry for the inconvenience, I don't have a Windows machine to test this on. - -### On a UNIX system: - -Edit the Makefile to match your local configuration (usually not necessary, but you -may want to change the `PREFIX` variable) and run `make`, followed by `make install`. -Follows the instructions below to install the pruning tables. - -### Tables -Nissy needs to generate certain large tables to work. These tables are by default -generated the first time they are needed (e.g the first time you ask to solve a -certain step) and then saved to a file. Whenever these tables are needed again, -nissy simply loads the corresponding file from the hard disk. - -The very large table for optimal solving can take some time to generate -(about 1.5 hours on my fairly old but decent laptop, using 8 CPU threads). -In order to generate it you need at least 5Gb or RAM. -All other tables are much faster. - -You can ask Nissy to generate all the tables it will ever need with the `gen` -command. It is recommended to use more than one thread, if your CPU has them. -For example, you can run: - -``` -nissy gen -t 8 -``` - -to generate all tables using 8 threads. - -Alternatively, you can simply download all the tables and copy them into the -correct folder (see manual page, `ENVIRONMENT` section). On UNIX operating -systems this folder is either `.nissy/tables` in the user's home directory or -`$XDG_DATA_HOME/nissy/tables` if the XDG variable is configured. On Windows -it is the same directory as the nissy.exe executable file. - -Choose either the -[zip](https://nissy.tronto.net/nissy-tables-2.0.zip) -or the -[tar.gz](https://nissy.tronto.net/nissy-tables-2.0.tar.gz) -file (click the links to download) and -extract them in the correct folder. +You get Nissy from [nissy.tronto.net](https://nissy.tronto.net). The download +links and installation instructions can be found on the +[download page](https://nissy.tronto.net/download). ## Structure of the code diff --git a/doc/nissy.html b/doc/nissy.html index ed73e37..f39100e 100644 --- a/doc/nissy.html +++ b/doc/nissy.html @@ -1,5 +1,5 @@ - + @@ -308,7 +308,7 @@ D' F R' D B L2 B R2 L U L U2 B D' U R U F2 (18)

https://github.com/sebastianotronto/nissy

BSD -February 13, 2022 BSD

+February 21, 2022 BSD


diff --git a/doc/nissy.pdf b/doc/nissy.pdf index be8433e..17f8bde 100644 Binary files a/doc/nissy.pdf and b/doc/nissy.pdf differ diff --git a/nissy.exe b/nissy.exe deleted file mode 100755 index 9dd92f8..0000000 Binary files a/nissy.exe and /dev/null differ diff --git a/www/download/index.html b/www/download/index.html new file mode 100644 index 0000000..a161371 --- /dev/null +++ b/www/download/index.html @@ -0,0 +1,190 @@ + + + + Download | Nissy + + + + + + + + + +
+ + +

Get Nissy

+ + + + + + + + + + + + +
Source codeWindows executable
Latest versionnissy-2.0.1.tar.gz (63Kb)nissy-2.0.1.exe (770Kb)
+ +

+In this page you can find download links (see above) +and installation instructions (see below) for +nissy. If instead you wish to clone the +git repository, use +

+git clone https://git.tronto.net/nissy
+
+

+ +

+For a summary of changes and a list of older versions see below. Some versions +(for example 1.0) are not available directly, but can be obtained from +the git repository. +

+ +

Installation

+ +

System requirements

+ +

+A full installation of nissy requires about 3Gb of space, +of which 2.3Gb are occupied by the huge pruning table for fast optimal solving, +and running it requires the same amount of RAM. +One can choose to never use this function and not to install the relative +pruning table. There is an alternative (slower) +optimal solving function that uses about 500Mb of RAM. +

+ +

Windows

+ +

+Try downloading and executing in a terminal the file nissy.exe, +then follow the instructions in the Tables section below for +installing the pruning tables. +If nissy.exe does not work, you can try following the UNIX instructions +in WSL (Windows Subsystem for Linux) or in a similar environment. +

+ +

UNIX (Linux, MacOS, *BSD...)

+

+Edit the Makefile to match your local configuration +(this is usually not necessary, but you may want to change the +PREFIX variable to change the installation path) +and run make, followed by make install. +Follow the instructions below to install the pruning tables. + +

Tables

+ + + + + + + + + +
Zip file
Tablesnissy-tables.2.0.zip (63Kb)
+

+Note: the version 2.0 at the end of the file name is +only indicative. Later versionw will use the same tables, unless +otherwise specified. +

+ +

+Nissy needs certain large tables to work. These tables are by default +generated the first time they are needed (e.g the first time you ask to solve a +certain step) and then saved to a file. Whenever these tables are needed again, +nissy simply loads the corresponding file from the hard disk. +

+ +

+The very large table for optimal solving can take some time to generate +(about 1.5 hours on my fairly old but decent laptop, using 8 CPU threads). +In order to generate it you need at least 5Gb of RAM. +All other tables are much faster. +

+ +

+You can ask nissy to generate all the tables it will ever need with the gen +command. It is recommended to use more than one thread, if your CPU has them. +For example, you can run: +

+ +
nissy gen -t 8
+ +

+to generate all tables using 8 threads. You can change 8 to any number +your CPU supports, up to 64. +

+ +

+Alternatively, you can simply download all the tables and copy them into the +correct folder (see manual page, ENVIRONMENT section). On UNIX +operating systems this folder is either .nissy/tables in the +user's home directory or $XDG_DATA_HOME/nissy/tables if the +XDG variable is configured. On Windows it is the same directory as the +nissy.exe executable file. +

+ +

Version history

+ +

Nissy v2

+ + + + + + + + + + + + + + + + + +
VersionDateComment
2.0.12022-02-22Bugfix release
2.02021-12-29Rewritten from scratch; much faster optimal solver
+ +

Nissy v1

+ +

+Nissy v1 was released in 2020. It was slow, full of bugs and the code +was quite terrible. But in practice it got its job done most of the time. +

+ + +
+ + + + + diff --git a/www/examples/index.html b/www/examples/index.html new file mode 100644 index 0000000..2094014 --- /dev/null +++ b/www/examples/index.html @@ -0,0 +1,49 @@ + + + + Examples | Nissy + + + + + + + + + +
+ + +

Examples

+ +(Coming soon...) + +
+ + + + + diff --git a/www/favicon.png b/www/favicon.png new file mode 100644 index 0000000..3ec80a1 Binary files /dev/null and b/www/favicon.png differ diff --git a/www/index.html b/www/index.html new file mode 100644 index 0000000..1844631 --- /dev/null +++ b/www/index.html @@ -0,0 +1,93 @@ + + + + Nissy | Nissy + + + + + + + + + +
+ + +

Nissy

+ +

A Rubik's cube solver and FMC assistant

+ + + +

+Nissy is a command-line Rubik's cube solver. It can find optimal solutions +for random positions using techniques from Herbert Kociemba's +Cube Explorer and +Tomas Rokicki's +nxopt. +With 4 cores at 2.5GHz and using less than 3Gb of RAM, Nissy can find an optimal +solution in about a minute on average. +

+ +

+Nissy aims at being a complete tool +for FMC (Fewest Moves Challenge) practice. It can solve different steps +of Thistlethwaite's algorithm (also know as DR/HTR) and cans use NISS +(Normal-Inverse Scramble Switch). +

+ +

+You should use Nissy if: +

+ + +

+To get started, head to the download page. +

+ +

+You can also see its source code by cloning the git repository +git.tronto.net/nissy +

+ +
+ + + + + diff --git a/www/screenshot.png b/www/screenshot.png new file mode 100644 index 0000000..a73f2fd Binary files /dev/null and b/www/screenshot.png differ diff --git a/www/style.css b/www/style.css new file mode 100644 index 0000000..1487497 --- /dev/null +++ b/www/style.css @@ -0,0 +1,99 @@ +.menu { + width: 100%; +} + +.links { + text-align: right; + font-weight: bold; +} + +.logo img { + width: 50px; + height: 50px; +} + +.footer { + font-style: italic; + width: 100%; +} + +.hosted { + text-align: right; +} + +body { + margin: auto 8px 20px 8px; +} + +img { + display: block; + margin-left: auto; + margin-right: auto; + max-width: 100%; +} + +pre, code { + background-color: #eeeeee; +} + +pre { + border: 2px solid; + padding: 6px; +} + +#blob { + background: #ffffff; + border: none; +} + +a { + color: #0f2899; + text-decoration: none; +} + +.links a { + font-weight: bold; + color: black; +} + +.hosted a, +.contact a { + font-weight: bold; +} + +a:hover { + text-decoration: underline; +} + +html { + margin: 1em auto; + max-width: 42em; +} + +h1 { + text-align: center; +} + +td h1 { + text-align: left; + font-size: 1.5em; +} + +table { + width: 100%; +} + +.url td { + font-family: monospace; +} + +.dltable th, .dltable td { + border: 1px solid black; + padding: 3px; +} + +.subtitle { + text-align: center; + font-weight: bold; + font-size: 1.1em; +} -- cgit v1.3