`contrib/example.md` is an example input file. Lightcards takes the first table from a valid Markdown or HTML file. Each row is a card, and the two columns are the front and back.
## Configuration
-An example config file is provided at `/usr/share/doc/lightcards/config.py`, or `~/.local/share/doc/lightcards/config.py` if installed without root privileges. Copy it to `~/.config/lightcards/config.py` or `/etc/lightcards/config.py` and modify the given values.
+Copy the config file at `/etc/lightcards/config.py` to `~/.config/lightcards/config.py` or `~/${XDG_CONFIG_HOME}/lightcards/config.py` and edit.
## License
Copyright Armaan Bhojwani 2021, MIT license
local_xdg = f"{os.path.expanduser('~')}/{os.environ.get('XDG_CACHE_HOME')}/lightcards/config.py"
local = f"{os.path.expanduser('~')}/.config/lightcards/config.py"
world = "/etc/lightcards/config.py"
- world_default = "/usr/share/doc/lightcards/config.py"
- local_default = (
- f"{os.path.expanduser('~')}/.local/share/doc/lightcards/config.py"
- )
-
- if os.path.exists(world_default):
- files.append(world_default)
- if os.path.exists(local_default):
- files.append(local_default)
+
if os.path.exists(world):
files.append(world)
if os.path.exists(local_xdg):
.PP
Configuration is done through the config.py file.
This is an executed Python script and must have valid Python syntax.
-An example config file is provided at
-/usr/share/doc/lightcards/config.py, or
-\[ti]/.local/share/doc/lightcards/config.py if installed locally.
-Copy this to \[ti]/.config/lightcards/config.py or
+.PP
+Copy the global config file from /etc/lightcards/config.py to
+\[ti]/.config/lightcards/config.py or
$XDG_CONFIG_HOME/lightcards/config.py and make modifications! All
-possible options are listed in the sample config file.
+possible options are listed in the global config file.
.SH SEE ALSO
.PP
\f[B]lightcards(1)\f[R]
lightcards-config - configuration file formats for **lightcards(1)**
# CONFIGURATION
-Configuration is done through the config.py file. This is an executed Python script and must have valid Python syntax. An example config file is provided at /usr/share/doc/lightcards/config.py, or ~/.local/share/doc/lightcards/config.py if installed locally. Copy this to ~/.config/lightcards/config.py or $XDG_CONFIG_HOME/lightcards/config.py and make modifications! All possible options are listed in the sample config file.
+Configuration is done through the config.py file. This is an executed Python script and must have valid Python syntax.
+
+Copy the global config file from /etc/lightcards/config.py to ~/.config/lightcards/config.py or $XDG_CONFIG_HOME/lightcards/config.py and make modifications! All possible options are listed in the global config file.
# SEE ALSO
**lightcards(1)**
from setuptools import setup
-from os import path
+import os
+import shutil
-pwd = path.abspath(path.dirname(__file__))
-with open(path.join(pwd, "README.md"), encoding="utf-8") as f:
+pwd = os.path.abspath(os.path.dirname(__file__))
+with open(os.path.join(pwd, "README.md"), encoding="utf-8") as f:
long_description = f.read()
+
+def mkdir(dir):
+ try:
+ os.makedirs(dir)
+ except FileExistsError:
+ pass
+
+
+if os.geteuid() == 0:
+ mkdir("/etc/lightcards/")
+ shutil.copyfile("./config.py", "/etc/lightcards/config.py")
+else:
+ xdg = os.environ.get("XDG_CONFIG_HOME")
+ home = os.path.expanduser("~")
+
+ if xdg:
+ mkdir(f"{xdg}/lightcards")
+ shutil.copyfile("./config.py", f"{xdg}/lightcards/config.py")
+ else:
+ mkdir(f"{home}/.config/lightcards")
+ shutil.copyfile("./config.py", f"{home}/.config/lightcards/config.py")
+
+
setup(
name="lightcards",
version="0.7.0",
data_files=[
("man/man1", ["man/lightcards.1"]),
("man/man5", ["man/lightcards-config.5"]),
- (
- "share/doc/lightcards/",
- [
- "./config.py",
- "./README.md",
- "man/lightcards.1.md",
- "man/lightcards-config.5.md",
- "./LICENSE",
- ],
- ),
],
entry_points={
"console_scripts": ["lightcards=lightcards:main"],