Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.3%) to scientific vocabulary
Keywords
Repository
Modern lightdm webkit2 theme
Basic Info
- Host: GitHub
- Owner: TheWisker
- License: gpl-3.0
- Language: JavaScript
- Default Branch: master
- Homepage: https://thewisker.github.io/Shikai/
- Size: 139 MB
Statistics
- Stars: 124
- Watchers: 1
- Forks: 8
- Open Issues: 0
- Releases: 16
Topics
Metadata Files
README.md
Shikai
Modern lightdm webkit2 theme
Index
Description []
Sleek lightdm webkit2 theme that focuses on looks with performance in mind
Features []
The theme features:
- Draggable windows
- Multi-monitor support
- Multi-language support
- Custom time and date formats
- Saving configurations as sub-themes
- Background shuffle on background click
- Sleek animations and on-hover effects
- Graphical on-theme style configuration
- Graphical on-theme behaviour configuration
- Custom backgrounds configured via web-greeter.yml
- Idle login window auto-hiding at x seconds of inactivity
- Default user and session configured via web-greeter.yml
- Background synchronization when using the multi-headed mode
- Custom user images configured via a .face image on user home folders
Live Demo []
https://thewisker.github.io/Shikai
[!TIP] Demo password:
password[!NOTE] Demo wallpapers do not properly fit on some aspect ratios, thus looking out of place, but that can be fixed when the theme is installed by changing the wallpapers for ones that have the correct aspect ratio
Screenshots []





Install []
There are several ways to install the theme, whichever you use, do not forget to also follow the steps in General.
General
After having installed the theme, you will need to follow these steps to get it running:
- Select the greeter you are using in the
/etc/lightdm/lightdm.conffile, which hosts LightDM's configuration:- Under [Seat:*], set greeter-session to the one you use:
greeter-session=web-greeter
- Under [Seat:*], set greeter-session to the one you use:
- Select the Shikai theme in the
/etc/lightdm/web-greeter.ymlfile, which hosts the greeter's configuration:- Under branding, set theme to shikai:
theme: shikai
- Under branding, set theme to shikai:
- Optionally, configure the environment to your liking, as explained in configuration
[!NOTE] You can skip any step you have already completed previously
[!WARNING] When selecting a greeter-session have in mind that Shikai only supports WebGreeter, NodyGreeter and SeaGreeter as greeters
Arch Linux
You can install Shikai from the AUR repository:
- Package shikai-theme:
[!TIP] For information on how to install an AUR package read this wiki
Script
Follow the steps:
- Download and unpack a release and cd into its root folder.
- Execute the following bash script from the repo root directory:
./scripts/install.sh.
Manual
Follow the steps:
- Download and unpack a release, then, cd into its root folder.
- Locate, under the
distdirectory, theindex.htmlandmonitor.htmlfiles. - In said files, search and replace the string
window.__is_debug = true;withwindow.__is_debug = false;. - Copy the contents of the
distdirectory to/usr/share/web-greeter/themes/shikai.
Uninstall []
The theme is uninstalled in different ways depending on how it was installed. For a complete uninstall, one must also follow the steps in General.
General
After having uninstalled the theme you will, optionally, need to follow some steps to not lose functionality:
- If keeping the Greeter, select another theme in the
/etc/lightdm/web-greeter.ymlfile which hosts the greeter's configuration:- Under branding, set theme to the new theme:
theme: which-theme
- Under branding, set theme to the new theme:
- If removing the Greeter but keeping LightDM, select another greeter in the
/etc/lightdm/lightdm.conffile which hosts LightDM's configuration:- Under [Seat:*], set greeter-session to the new greeter:
greeter-session=which-greeter
- Under [Seat:*], set greeter-session to the new greeter:
- If removing LightDM, make sure to set up a new way to login into the system.
Arch Linux
Simply uninstall the shikai-theme package.
Script & Manual
Simply remove the /usr/share/web-greeter/themes/shikai folder.
Update []
To update the theme simply install the new version overwriting the old version.
[!TIP] The theme localStorage can be deleted from the on-theme configuration
[!CAUTION] Failure to delete localStorage before updating to a version which introduces breaking changes will result in errors on theme load
Configuration []
On-Theme
The configuration button becomes avaiable by hovering over the top-left corner of the window. The behaviour and style settings are saved locally only when the configuration panel gets closed. The themes configuration gets saved on theme creation, deletion and activation.
[!NOTE] Make sure to delete this configuration when updating to a Shikai version that introduces breaking changes
Greeter
The configuration for the greeter resides in /etc/lightdm/web-greeter.yml
Shikai uses the following entries from the configuration:
- Under
branding:
| Key | Description | Recommended Value | Shikai-only | Type |
|---------------------------|---------------------------------------|-----------------------------------------------------------------|-------------------|--------------|
| backgroundimagesdir | directory where wallpapers are stored | /usr/share/web-greeter/themes/shikai/assets/media/wallpapers | | str |
| logo_image | directory where logos are stored | /usr/share/web-greeter/themes/shikai/assets/media/logos | | str |
| user_image | default image for users that lack one | /usr/share/web-greeter/themes/shikai/assets/media/profile.jpg | | str |
- Under
greeter:
| Key | Description | Recommended Value | Shikai-only | Type |
|-------------------------|---------------------------------------------------------------------------|-------------------------|-------------------|--------------|
| theme | greeter theme to use | shikai | | str |
| icon_theme | cursor icon theme to use | | | str |
| default_user | default user to select initially | | [X] | str |
| default_session | default session to select initially | | [X] | str |
| screensaver_timeout | blank the screen after this many seconds of inactivity | | | int |
| detectthemeerrors | provide an option to load a fallback theme when theme errors are detected | True | | bool |
| debug_mode | enable debug mode for the greeter as well as greeter themes | False | | bool |
| secure_mode | don't allow themes to make remote http requests | True | | bool |
- Under
layouts:
List of preferred keyboard layouts to use. Shikai only uses the first layout as, at the moment, it does not provide a way to switch layout on-theme.
[!TIP] Consider using ACLs for a more fine-grained control over permissions
[!WARNING] Paths and assets loaded by the theme must be accessible to the lightdm system user account with read and execute permissions
LightDM
LightDM can be configured to turn on the numlock by default:
- ***Other***:
- **Install** it by *other means*

- Once installed, edit
/etc/lightdm/lightdm.conf- Under [Seat:*], set greeter-setup-script to:
greeter-setup-script=/usr/bin/numlockx on
- Under [Seat:*], set greeter-setup-script to:
Working Environment []
When developing Shikai, one must have a proper working environment set up.
To initalize said environment, one must have installed npm and run npm install.
The repo comes with some scripts to facilitate the development process:
- To package the development version run
npm run devor./scripts/development.sh - To package the production version run
npm run buildor./scripts/production.sh - To package the development version on source change run
npm run watchor./scripts/watch.sh - To package the development version on source change and serve said package locally run
npm run serveror./scripts/server.sh
[!NOTE] Scripts must be run from the repo's root directory
[!WARNING] If you run
npm updateyou are almost guaranteed to end up with package breakages, so just don't. If you did, delete./node_modules/and replace both./package.jsonand./package-lock.jsonwith the ones in the repo.
Dependencies []
Buildtime
The theme buildtime dependencies are listed in the ./package.json file.
Runtime
The theme depends on web-greeter, nody-greeter or sea-greeter and its respective dependencies, plus lightdm.
Contributions []
First and foremost, all contributions are welcome! The steps involved when making a contribution are explained in the CONTRIBUTING.md file. We look forward to your contributions!
- The contributors list is located here.
Translations []
First and foremost, as with contributions, all translations are also welcome!
The steps involved when making a translation are explained in the CONTRIBUTING.md file.
More specific steps can be found in the CONTRIBUTING.md file in the /src/lang folder.
We look forward to your translations!
- The translators list is located here.
Discussions []
The following spaces are provided to discuss: - Ideas for future improvements in here - Questions you want to ask in here - Screenshots you want to share in here
Notes []
- Missing linux distro logo? Submit a pull request!
- Missing language? Submit a pull request including it in
./src/lang! Further details here. - Have a really cool wallpaper to add to the live demo? Submit a pull request!
- Undefined behaviour when adding non-browser-compliant images and non-image files to the wallpapers directory
Troubleshooting []
Profile image not loading
If you have added a .face image to you home folder and it does not load on-theme, it is probably due to a lack of permisions for the lightdm user on the .face file. Thus, ensure the image and its parent folder have read and execute permissions for the lightdm user, either by having them set for others or by using ACLs.
If this does not solve the issue, you can try the following steps:
- Copy the .face image to
/var/lib/AccountsService/icons/renaming it to the desired user's name. - Create the configuration file
/var/lib/AccountsService/users/<username>if it does not exist. - Add the line
Icon=/var/lib/AccountsService/icons/<username>to the configuration file.
As a last resort, if none of these solutions work you can set a default user image as explained here under the Greeter section.
[!NOTE] Replace <username> with the desired user's username
Incomplete loading
On the rare case that the demo or the theme itself only load the backgrounds or do not load the settings, it is most probably due to a recent update that contains changes to the settings JSON structure.
This can be fixed by either: - Looking at the errors in the developer console and manually adding the missing keys and values - Deleting the page's localStorage
Metrics []
License []
Code of Conduct []
This project follows the Contributor Covenant Code of Conduct.
Author []
TheWisker
Owner
- Name: Wisker
- Login: TheWisker
- Kind: user
- Website: https://github.com/TheWisker
- Repositories: 3
- Profile: https://github.com/TheWisker
I don't know why it works
GitHub Events
Total
- Create event: 2
- Release event: 2
- Issues event: 6
- Watch event: 29
- Delete event: 1
- Issue comment event: 13
- Push event: 300
- Pull request review event: 1
- Fork event: 3
Last Year
- Create event: 2
- Release event: 2
- Issues event: 6
- Watch event: 29
- Delete event: 1
- Issue comment event: 13
- Push event: 300
- Pull request review event: 1
- Fork event: 3
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| TheWisker | T****r@p****m | 799 |
| TheWisker | s****7@g****m | 14 |
| Tyler Schneider | t****i@g****m | 1 |
| Faisal Almalki | 7****2 | 1 |
| Tiago M. Neves | t****s@p****m | 1 |
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 14
- Total pull requests: 4
- Average time to close issues: 2 months
- Average time to close pull requests: 3 months
- Total issue authors: 11
- Total pull request authors: 4
- Average comments per issue: 3.86
- Average comments per pull request: 2.0
- Merged pull requests: 3
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 0
- Average time to close issues: 29 days
- Average time to close pull requests: N/A
- Issue authors: 2
- Pull request authors: 0
- Average comments per issue: 2.25
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- TalinTheDev (2)
- lgdsgd2000 (1)
- Hibyehello (1)
- skarpinis (1)
- car8675309 (1)
- stevenxxiu (1)
- TonyN678 (1)
- 4Gettt25 (1)
- Faisal-beep22 (1)
- DillanCMills (1)
- cidne (1)
Pull Request Authors
- tiagomneves-pt (2)
- TalinTheDev (1)
- Faisal-beep22 (1)
- teschnei (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 506 dependencies
- @babel/plugin-proposal-class-properties ^7.18.6 development
- @babel/plugin-syntax-dynamic-import ^7.8.3 development
- @babel/plugin-transform-react-constant-elements ^7.21.3 development
- @babel/plugin-transform-react-inline-elements ^7.21.0 development
- @babel/plugin-transform-runtime ^7.21.0 development
- @babel/preset-env ^7.20.2 development
- @babel/preset-react ^7.18.6 development
- atob >=2.1.0 development
- autoprefixer ^10.4.14 development
- babel-loader ^9.1.2 development
- babel-plugin-transform-react-remove-prop-types ^0.4.24 development
- copy-webpack-plugin ^11.0.0 development
- css-loader ^6.7.3 development
- css-minimizer-webpack-plugin ^4.2.2 development
- html-webpack-plugin ^5.5.0 development
- loader-utils >=1.4.2 development
- mini-css-extract-plugin ^2.7.5 development
- postcss ^8.4.21 development
- postcss-loader ^7.2.4 development
- sass ^1.60.0 development
- sass-loader ^13.2.1 development
- style-loader ^3.3.2 development
- svg-react-loader ^0.4.0 development
- webpack-cli ^5.0.1 development
- cxs ^6.2.0
- react ^18.2.0
- react-color ^2.19.3
- react-dom ^18.2.0
- react-draggable ^4.4.5
- react-dropdown ^1.11.0
- react-redux ^8.0.5
- redux ^4.2.1
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/configure-pages v2 composite
- actions/deploy-pages v1 composite
- actions/upload-pages-artifact v1 composite
- TheWisker/GitHubMetrics master composite
- actions/checkout v3 composite