Skip to content

Commit

Permalink
First commit
Browse files Browse the repository at this point in the history
  • Loading branch information
fredrare committed Jun 12, 2023
0 parents commit 07eb19c
Show file tree
Hide file tree
Showing 17 changed files with 903 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Auto detect text files and perform LF normalization
* text=auto
24 changes: 24 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
This is free and unencumbered software released into the public domain.

Anyone is free to copy, modify, publish, use, compile, sell, or
distribute this software, either in source code form or as a compiled
binary, for any purpose, commercial or non-commercial, and by any
means.

In jurisdictions that recognize copyright laws, the author or authors
of this software dedicate any and all copyright interest in the
software to the public domain. We make this dedication for the benefit
of the public at large and to the detriment of our heirs and
successors. We intend this dedication to be an overt act of
relinquishment in perpetuity of all present and future rights to this
software under copyright law.

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 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.

For more information, please refer to <http://unlicense.org>
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# lightdm-weeb-minimal
## Summary
A lightdm greeter based on lightdm-gab-gradient, customized a bit for your minimal weeb needs. See the [live demo](https://fredrare.github.io/lightdm-weeb-minimal).

## Features
- Apple-styled shadows and corners
- Fractal noise-based aesthetic pastel background
- Date in japanese
- Time with seconds
- Multi-user
- Anti-shoulder-surfing ultra-secure password field
- Keyboard-navigation support
- Built-in fonts

## Screenshot
![Screenshot](static/img/demo.png "Demo screenshot")

## Installation guide:
1. Install `lightdm` and `web-greeter`.
```sh
# Remember to update your system, pls
sudo pacman -Syu

# Now, you can proceed
sudo pacman -S lightdm
yay -S web-greeter
```
2. Enable `lightdm`.
```sh
sudo systemctl enable lightdm
```
3. In the terminal, navigate to `/usr/share/web-greeter/themes`.
```sh
cd /usr/share/web-greeter/themes
```
4. Clone this repository.
```sh
git clone https://github.com/fredrare/lightdm-weeb-minimal.git weeb-minimal
```
5. Enable the theme in your `/etc/lightdm/web-greeter.yml` by going to the `greeter` section, finding the `theme` variable and replacing its value with `weeb-minimal`.
6. Edit `/etc/lightdm/lightdm.conf`, find the `greeter_session` variable and replace its value with `web-greeter`.
181 changes: 181 additions & 0 deletions index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="static/css/style.css" />
</head>
<body>
<div id="login-box">
<img id="login-picture" />
<div id="login-response"></div>
<form id="login-form" action="javascript: provideSecret();">
<div class="usernames">
<div class="arrow" id="last">
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M15.75 19.5L8.25 12l7.5-7.5"
/>
</svg>
</div>
<select id="name" tabindex="1"></select>
<div class="arrow" id="next">
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
>
<path stroke-linecap="round" stroke-linejoin="round" d="M8.25 4.5l7.5 7.5-7.5 7.5" />
</svg>
</div>
</div>
<div class="password-container">
<div class="password-inputs">
<input
placeholder="Password"
id="password-mask"
readonly
aria-readonly="true"
tabindex="-1"
/>
<input placeholder="Password" type="password" id="login-password" tabindex="2" />
</div>
<button class="visibility-button" type="button" tabindex="3">
<svg
id="show-password"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
width="1rem"
height="1rem"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M2.036 12.322a1.012 1.012 0 010-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178z"
/>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"
/>
</svg>
<svg
id="hide-password"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
width="1rem"
height="1rem"
style="display: none"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M3.98 8.223A10.477 10.477 0 001.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.45 10.45 0 0112 4.5c4.756 0 8.773 3.162 10.065 7.498a10.523 10.523 0 01-4.293 5.774M6.228 6.228L3 3m3.228 3.228l3.65 3.65m7.894 7.894L21 21m-3.228-3.228l-3.65-3.65m0 0a3 3 0 10-4.243-4.243m4.242 4.242L9.88 9.88"
/>
</svg>
</button>
</div>
<button id="login-button" type="submit" tabindex="3" class="button">
<svg
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
width="1rem"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M15.75 9V5.25A2.25 2.25 0 0013.5 3h-6a2.25 2.25 0 00-2.25 2.25v13.5A2.25 2.25 0 007.5 21h6a2.25 2.25 0 002.25-2.25V15m3 0l3-3m0 0l-3-3m3 3H9"
/>
</svg>

<span>Login</span>
</button>
</form>
</div>
<div class="time">
<span id="hours"></span>
:
<span id="minutes"></span>
:
<span id="seconds"></span>
</div>
<div class="date">
<span id="month"></span>
<span id="day"></span>
<span>&nbsp&nbsp</span>
<span id="weekday"></span>
</div>
<div id="login-bar">
<svg
class="power shutdown"
onclick="lightdm.shutdown();"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
tabindex="4"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M5.636 5.636a9 9 0 1012.728 0M12 3v9"
/>
</svg>
<svg
class="power restart"
onclick="lightdm.restart();"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
tabindex="5"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0l3.181 3.183a8.25 8.25 0 0013.803-3.7M4.031 9.865a8.25 8.25 0 0113.803-3.7l3.181 3.182m0-4.991v4.99"
/>
</svg>
<svg
class="power sleep"
onclick="lightdm.suspend();"
xmlns="http://www.w3.org/2000/svg"
fill="none"
viewBox="0 0 24 24"
stroke-width="1.5"
stroke="currentColor"
tabindex="6"
>
<path
stroke-linecap="round"
stroke-linejoin="round"
d="M21.752 15.002A9.718 9.718 0 0118 15.75c-5.385 0-9.75-4.365-9.75-9.75 0-1.33.266-2.597.748-3.752A9.753 9.753 0 003 11.25C3 16.635 7.365 21 12.75 21a9.753 9.753 0 009.002-5.998z"
/>
</svg>
</div>
<script type="text/javascript" src="static/js/mock.js"></script>
<script type="text/javascript" src="static/js/clock.js"></script>
<script type="text/javascript" src="static/js/funnypassword.js"></script>
<script type="text/javascript" src="static/js/main.js"></script>
</body>
</html>
6 changes: 6 additions & 0 deletions index.theme
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[theme]
name=lightdm-weeb-minimal
description=A web greeter theme for weebs.
engine=lightdm-web-greeter
url=index.html
session=awesome
Loading

0 comments on commit 07eb19c

Please sign in to comment.