{"id":13545995,"url":"https://github.com/azagaya/laigter","last_synced_at":"2026-03-12T15:38:19.809Z","repository":{"id":35641729,"uuid":"195250271","full_name":"azagaya/laigter","owner":"azagaya","description":"Laigter: automatic normal map generator for sprites!","archived":false,"fork":false,"pushed_at":"2026-02-19T03:27:08.000Z","size":7505,"stargazers_count":1149,"open_issues_count":4,"forks_count":71,"subscribers_count":17,"default_branch":"master","last_synced_at":"2026-02-19T08:41:33.488Z","etag":null,"topics":["gamedev","normalmap"],"latest_commit_sha":null,"homepage":"https://azagaya.itch.io/laigter","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/azagaya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"patreon":"azagaya","ko_fi":"azagayavj"}},"created_at":"2019-07-04T13:49:20.000Z","updated_at":"2026-02-19T03:27:12.000Z","dependencies_parsed_at":"2024-04-24T20:44:31.701Z","dependency_job_id":"2d7dfbb6-4d23-43b9-9dc9-b40b3ad96afa","html_url":"https://github.com/azagaya/laigter","commit_stats":null,"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"purl":"pkg:github/azagaya/laigter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azagaya%2Flaigter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azagaya%2Flaigter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azagaya%2Flaigter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azagaya%2Flaigter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/azagaya","download_url":"https://codeload.github.com/azagaya/laigter/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azagaya%2Flaigter/sbom","scorecard":{"id":220902,"data":{"date":"2025-08-11","repo":{"name":"github.com/azagaya/laigter","commit":"0025ac447959259f2a7b2619b0369f936488efda"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.1,"checks":[{"name":"Code-Review","score":0,"reason":"Found 1/25 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/laigter-linux.yaml:1","Warn: no topLevel permission defined: .github/workflows/laigter-mac.yaml:1","Warn: no topLevel permission defined: .github/workflows/laigter-windows.yaml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU General Public License v3.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-linux.yaml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-linux.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-linux.yaml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-linux.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-linux.yaml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-linux.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-linux.yaml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-linux.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-mac.yaml:9: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-mac.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-mac.yaml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-mac.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-mac.yaml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-mac.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-mac.yaml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-mac.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-windows.yaml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-windows.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-windows.yaml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-windows.yaml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/laigter-windows.yaml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-windows.yaml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/laigter-windows.yaml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/azagaya/laigter/laigter-windows.yaml/master?enable=pin","Warn: downloadThenRun not pinned by hash: .github/workflows/laigter-mac.yaml:29","Info:   0 out of   6 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   6 third-party GitHubAction dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact 1.12.1 not signed: https://api.github.com/repos/azagaya/laigter/releases/182024493","Warn: release artifact 1.12.0 not signed: https://api.github.com/repos/azagaya/laigter/releases/180511666","Warn: release artifact 1.11.0 not signed: https://api.github.com/repos/azagaya/laigter/releases/117309681","Warn: release artifact 1.10.7 not signed: https://api.github.com/repos/azagaya/laigter/releases/51576920","Warn: release artifact 1.10.6 not signed: https://api.github.com/repos/azagaya/laigter/releases/43865690","Warn: release artifact 1.12.1 does not have provenance: https://api.github.com/repos/azagaya/laigter/releases/182024493","Warn: release artifact 1.12.0 does not have provenance: https://api.github.com/repos/azagaya/laigter/releases/180511666","Warn: release artifact 1.11.0 does not have provenance: https://api.github.com/repos/azagaya/laigter/releases/117309681","Warn: release artifact 1.10.7 does not have provenance: https://api.github.com/repos/azagaya/laigter/releases/51576920","Warn: release artifact 1.10.6 does not have provenance: https://api.github.com/repos/azagaya/laigter/releases/43865690"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 7 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T02:27:40.427Z","repository_id":35641729,"created_at":"2025-08-17T02:27:40.427Z","updated_at":"2025-08-17T02:27:40.427Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30430981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:34:45.044Z","status":"ssl_error","status_checked_at":"2026-03-12T14:09:33.793Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["gamedev","normalmap"],"created_at":"2024-08-01T12:00:29.655Z","updated_at":"2026-03-12T15:38:19.764Z","avatar_url":"https://github.com/azagaya.png","language":"C++","funding_links":["https://patreon.com/azagaya","https://ko-fi.com/azagayavj","https://www.patreon.com/bePatron?u=19254491","https://paypal.me/PabloFonovich","https://ko-fi.com/O5O110W22"],"categories":["Graphics","Tools"],"sub_categories":[],"readme":"![laigter-banner](https://user-images.githubusercontent.com/46932830/87454669-acbf9300-c5da-11ea-932a-fa4ec67e705f.png)\n\n# Laigter [![Build Status](https://travis-ci.com/azagaya/laigter.svg?branch=master)](https://travis-ci.com/azagaya/laigter)\n\n## Overview\n\n- [Download](#download)\n- [Contributing](#contributing)\n- [Screenshots](#screenshots)\n- [Compiling](#compiling)\n  - [Linux](#compiling-on-linux)\n  - [Windows](#compiling-on-windows)\n  - [macOS](#compiling-on-macos)\n- [License](#license)\n\nLaigter is a tool that automatically generates maps for dynamic lighting effects\nin games. It allows normal, parallax, specular and occlusion map generation.\nAlso, it allows the user to preview how the effect will look in-game.\n\nLaigter is available in Spanish, English, French, Brazilian-Portuguese, Catalan,\nDanish and Greek. It should automatically detect your PC language.\n\n[![Discord Server](https://discord.com/api/guilds/582648422167871514/embed.png)](https://discord.gg/88kJqry)\n\n## Download\n\n[**Download from itch.io**](https://azagaya.itch.io/laigter)\n\n[**Download from the Release page**](https://github.com/azagaya/laigter/releases)\n\n## Contributing\n\nThe easiest way to contribute is trying Laigter and giving me your feedback.\nPlease open an issue when you find a bug, and try to specify the way to\nreproduce it. Also, suggestions, feature requests, and new ideas are welcome.\nPlease open issues for all that!\n\nOn itch.io, you can download the tool for free, or choose to pay any amount to\nsupport the project.\n\nYou can also support the development on Patreon: [![Become a Patron!](https://c5.patreon.com/external/logo/become_a_patron_button.png)](https://www.patreon.com/bePatron?u=19254491)\n\nOr support it by PayPal:\n[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://paypal.me/PabloFonovich).\n\nNow you can also\n[![ko-fi](https://www.ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/O5O110W22)\n\nIf you want to contribute by coding, please contact me and we'll see how we can\nwork together! Many things are needed. Also, please read the\n[Contributing guidelines](CONTRIBUTING.md).\n\n## Screenshots\n\n![screenshot1](https://user-images.githubusercontent.com/46932830/90258696-4c14b780-de1f-11ea-8e33-33dbfc9fd86c.png)\n![screenshot2](https://user-images.githubusercontent.com/46932830/90258716-51720200-de1f-11ea-900b-4511ec2b608b.png)\n![screenshot3](https://user-images.githubusercontent.com/46932830/90258795-6babe000-de1f-11ea-9833-5cb57255b21f.png)\n![screenshot4](https://user-images.githubusercontent.com/46932830/90258904-8e3df900-de1f-11ea-8fc0-5b903b17d5c7.png)\n![screenshot5](https://user-images.githubusercontent.com/46932830/90258976-a877d700-de1f-11ea-9add-afdd1f461bd7.png)\n![screenshot6](https://user-images.githubusercontent.com/46932830/90258978-a9106d80-de1f-11ea-97d6-6c782d6347ff.png)\n![screenshot7](https://user-images.githubusercontent.com/46932830/90259018-bded0100-de1f-11ea-808b-4e576e64db89.png)\n![screenshot8](https://user-images.githubusercontent.com/46932830/90259039-c7766900-de1f-11ea-98ac-4b09b7ebc528.png)\n![screenshot9](https://user-images.githubusercontent.com/46932830/90259055-ce04e080-de1f-11ea-8318-46424a9da843.png)\n![screenshot10](https://user-images.githubusercontent.com/46932830/90259749-ec1f1080-de20-11ea-9bd9-bbf0573d35b9.png)\n## Compiling\n\n- [Linux](#compiling-on-linux)\n- [Windows](#compiling-on-windows)\n- [macOS](#compiling-on-macos)\n\n### Compiling on Linux\n\n- [Dependencies](#getting-the-dependencies)\n  - [Debian/Ubuntu](#debianubuntu)\n  - [Fedora](#fedora)\n  - [Arch Linux/Manjaro](#arch-linuxmanjaro)\n\n- [Compiling and Building](#building)\n\n#### Getting the Dependencies\n\nCompiling on Linux is pretty straightforward. The following dependencies are required:\n\n- Qt 5.14 or above (modules Concurrent, Core, Gui, Widgets) and optionally Qt Creator.\n- OpenGL development libraries.\n\nIf you install Qt from the online installer, you don't need to install the Qt-related packages below.\n\nInstall prerequisites by entering the following command in a terminal (depending\non your distribution):\n\n##### Debian/Ubuntu\n\n```bash\nsudo apt install qt5-default qt5-qmake libgl1-mesa-dev\n```\n\n##### Fedora\n\n```bash\nsudo dnf install qt5-devel mesa-libGL-devel\n```\n\n##### Arch Linux/Manjaro\n\n```bash\nsudo pacman -Sy qt5-base\n```\n\n#### Get the source\n\nThen get the source either via `git clone`:\n\n```bash\ngit clone https://github.com/azagaya/laigter\n```\n\nor download the package via:\n\n1. Get the package [here](https://github.com/azagaya/laigter/archive/master.zip)\n2. Extract the package in your desired location\n\nThen finally `cd` into the Laigter directory: `cd laigter`\n\n#### Building\n\n##### Using Qt Creator\n\nThat's it, you can now open `laigter.pro` with QtCreator and build or debug Laigter.\n\n##### Using the terminal\n\nAfter installing dependencies, you can also build from the terminal with:\n\n```bash\nmkdir build\ncd build\nqmake ../\nmake -j$(nproc)\n```\n\n### Compiling on Windows\n\n#### Getting Qt\n\nFor Windows, the steps are similar:\n\n- Install Qt: I strongly discourage the offline installer, use the online installer instead. In the components selection window, you'll need to select Qt Creator under **Qt \u003e Developer and Designer Tools** and the MinGW 64-bit or 32-bit toolchain under **Qt \u003e Developer and Designer Tools \u003e MinGW 7.3.0** and **Qt \u003e Qt 5.14.0 \u003e MinGW 7.3.0**.\n\nDo not choose the MSVC toolchain. If you choose both the 64-bit and 32-bit versions, make sure that only one version is in the system path, otherwise you will have problems compiling.\n\nTested with Qt 5.14.\n\n#### Get the source\n\nYou may get the source cloning the repository. For that, I recommend using [Git for Windows](https://gitforwindows.org/). With it, you can clone Laigter:\n\n```bash\ngit clone https://github.com/azagaya/laigter\n```\n\nYou may also download the package directly if you don't want to use Git:\n\n1. Get the package [here](https://github.com/azagaya/laigter/archive/master.zip)\n2. Extract the package in your desired location\n\n#### Building\n\nOpen Laigter project in Qt Creator installed with the online installer, and run the project. No extra steps should be needed.\n\n#### Deploying the application\n\nIf you want to deploy the application for Windows, you will need the\n[windeployqt](https://doc.qt.io/qt-5/windows-deployment.html) command. Something\nlike the following should be enough:\n\n```batch\nmkdir .\\deploy\nwindeployqt --dir .\\deploy ..\\build-laigter-Desktop_Qt_5_14_0_MinGW_32_bit-Release\\release\\laigter.exe\ncopy /Y ..\\build-laigter-Desktop_Qt_5_14_0_MinGW_32_bit-Release\\release\\laigter.exe .\\deploy\\laigter.exe\n```\n\n### Compiling on macOS\n\nOn Mac, is very similar than on Linux.\n\n#### Prerequisites\n\nFirst, install Qt. I recommend using the online installer for Mac.\n\n#### Get the source\n\nThen get the source either via `git clone`:\n\n```bash\ngit clone https://github.com/azagaya/laigter\n```\n\nor download the package via:\n\n1. Get the package [here](https://github.com/azagaya/laigter/archive/master.zip)\n2. Extract the package in your desired location\n\nThen finally `cd` into the Laigter directory: `cd laigter`\n\n#### Building\n\nThat's it, you can now open `laigter.pro` with QtCreator and build or debug Laigter.\n\nAnd that's all the tests I could make before I had to return the Mac.\n\n### Using Laigter with command line\n\nLaigter can be used from the command line with following options:\n\n``` -?, -h, --help ```\nDisplays help on commandline options.\n\n``` --help-all ```\nDisplays help including Qt specific options.\n\n``` -v, --version ```\nDisplays version information.\n\n``` -s, --software-opengl ```\nUse software opengl renderer.\n\n``` -g, --no-gui ```\nDo not start graphical interface.\n\n``` -d, --diffuse \u003cdiffuse texture path\u003e ```\nDiffuse texture to load.\n\n``` -n, --normal ```\nGenerate normals texture.\n\n``` -c, --specular ```\nGenerate specular texture.\n\n``` -o, --occlusion ```\nGenerate occlusion teture.\n\n``` -p, --parallax ```\nGenerate parallax textures.\n\n``` -r, --preset \u003cpreset file path\u003e ```\nPreset file to use for texture generation.\n\n### Examples for command line\n\nSome basic example for common usages:\n\n``` \u003cPathToLaigter\u003e/laigter.exe --no-gui -d \"\u003cpathToDiffuseTexture\u003e.png\" -n ```\nExporting a normals texture of the specified diffuse texture using the default profile.\n\n``` \u003cPathToLaigter\u003e/laigter.exe --no-gui -d \"\u003cpathToDiffuseTexture\u003e.png\" -n -c -o -p ```\nExporting normals, specular, occlusion and parallax textures of the specified diffuse texture using the default profile.\n\n``` \u003cPathToLaigter\u003e/laigter.exe --no-gui -d \"\u003cpathToDiffuseTexture\u003e.png\" --r \"\u003cpathToPresetProfile\u003e\" -n -c -o -p ```\nExporting normals, specular, occlusion and parallax textures of the specified diffuse texture using the specified preset profile.\n\n#### macOS\n\nSymlink the binary. Replace `/Applications` with the path to Laigter.\n\n    sudo ln -s /Applications/laigter.app/Contents/MacOS/laigter /usr/local/bin\n\nNow that the `laigter` binary is symlinked to a location in the `PATH` environment variable,\nyou can run Laigter from anywhere:\n\n    laigter --no-gui -d \"\u003cpathToDiffuseTexture\u003e.png\" --r \"\u003cpathToPresetProfile\u003e\" -n -c -o -p\n\n## License\n\nCopyright (C) 2019 Pablo Ivan Fonovich\n\nThis program is free software: you can redistribute it and/or modify it under\nthe terms of the GNU General Public License as published by the Free Software\nFoundation, either version 3 of the License, or (at your option) any later\nversion.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY\nWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A\nPARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with\nthis program. If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazagaya%2Flaigter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazagaya%2Flaigter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazagaya%2Flaigter/lists"}