Initialize mostly-blank template for Yuuki to start building on

This commit is contained in:
dgw 2023-03-19 02:24:11 -05:00
commit 32fc93aee8
9 changed files with 152 additions and 0 deletions

57
.gitignore vendored Normal file
View file

@ -0,0 +1,57 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
# C extensions
*.so
# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
*.egg-info/
.installed.cfg
*.egg
# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec
# Installer logs
pip-log.txt
pip-delete-this-directory.txt
# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*,cover
# Translations
*.mo
*.pot
# Django stuff:
*.log
# Sphinx documentation
docs/_build/
# PyBuilder
target/

23
COPYING Normal file
View file

@ -0,0 +1,23 @@
Eiffel Forum License, version 2
1. Permission is hereby granted to use, copy, modify and/or
distribute this package, provided that:
* copyright notices are retained unchanged,
* any distribution of this package, whether modified or not,
includes this license text.
2. Permission is hereby also granted to distribute binary programs
which depend on this package. If the binary program depends on a
modified version of this package, you are encouraged to publicly
release the modified version of this package.
***********************
THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT WARRANTY. ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE TO ANY PARTY FOR ANY
DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THIS PACKAGE.
***********************

6
MANIFEST.in Normal file
View file

@ -0,0 +1,6 @@
include NEWS
include COPYING
include README.md
recursive-exclude * __pycache__
recursive-exclude * *.py[co]

0
NEWS Normal file
View file

3
README.md Normal file
View file

@ -0,0 +1,3 @@
# sopel-amatsukaze
A plugin suite for Sopel that emulates most of Yuuki's Java-based Amatsukaze-chan bot.

25
setup.cfg Normal file
View file

@ -0,0 +1,25 @@
[metadata]
name = sopel-amatsukaze
version = 0.1.0
description = A plugin suite for Sopel that emulates most of Yuuki's Java-based Amatsukaze-chan bot.
author = dgw
author_email = dgw@technobabbl.es
url = https://github.com/dgw/sopel-amatsukaze
license = Eiffel Forum License, version 2
classifiers =
Intended Audience :: Developers
Intended Audience :: System Administrators
License :: Eiffel Forum License (EFL)
License :: OSI Approved :: Eiffel Forum License
Topic :: Communications :: Chat :: Internet Relay Chat
[options]
packages = find:
zip_safe = false
include_package_data = true
install_requires =
sopel>=7.1
[options.entry_points]
sopel.plugins =
amatsukaze = sopel_amatsukaze

25
setup.py Executable file
View file

@ -0,0 +1,25 @@
# -*- coding: utf-8 -*-
from __future__ import print_function
import os
import sys
from setuptools import setup, find_packages
if __name__ == '__main__':
print('Sopel does not correctly load plugins installed with setup.py '
'directly. Please use "pip install .", or add '
'{}/sopel_amatsukaze to core.extra in your config.'
.format(os.path.dirname(os.path.abspath(__file__))),
file=sys.stderr)
with open('README.md') as readme_file:
readme = readme_file.read()
with open('NEWS') as history_file:
history = history_file.read()
setup(
long_description=readme + '\n\n' + history,
long_description_content_type='text/markdown',
)

View file

13
sopel_amatsukaze/byte.py Normal file
View file

@ -0,0 +1,13 @@
# coding=utf8
"""sopel-amatsukaze.byte
Collect bytes and grow your HDD size.
"""
from __future__ import unicode_literals, absolute_import, division, print_function
from sopel import plugin
@plugin.command('byte')
def bytes_game(bot, trigger):
bot.say('Hello, world!')