Compare commits

...

2 commits

Author SHA1 Message Date
f4aaf13c17 Update title and content 2025-01-31 22:28:45 -08:00
b8d712e19d Implement setup.py
Update entrypoints
2025-01-31 21:26:45 -08:00
6 changed files with 37 additions and 34 deletions

View file

@ -2,8 +2,7 @@ FROM python:3.12-bookworm
EXPOSE 8080
COPY site_mcknight_tech /site
COPY requirements.txt /tmp/requirements.txt
RUN pip install -r /tmp/requirements.txt
COPY . /site
RUN pip install /site
ENTRYPOINT [ "python3", "/site/__main__.py" ]
ENTRYPOINT [ "launch-site" ]

27
setup.py Normal file
View file

@ -0,0 +1,27 @@
# Copyright (C) 2025 Daniel McKnight - All Rights Reserved
from os.path import join, dirname
from setuptools import setup, find_packages
def get_requirements(requirements_filename: str):
requirements_file = join(dirname(__file__), requirements_filename)
with open(requirements_file, 'r', encoding='utf-8') as r:
requirements = r.readlines()
requirements = [r.strip() for r in requirements if r.strip()
and not r.strip().startswith("#")]
return requirements
setup(
name="site-mcknight-tech",
author="Daniel McKnight",
author_email="daniel@mcknight.tech",
description="McKnight Tech Website",
packages=find_packages(),
include_package_data=True,
package_data={"site_mcknight_tech": ["page_content/*"]},
install_requires=get_requirements("requirements.txt"),
entry_points={
"console_scripts": ['launch-site=site_mcknight_tech.__main__:main']
}
)

View file

@ -44,7 +44,4 @@ def render_header() -> ui.tab_panels:
def main():
header = render_header()
header.set_value(list(_tab_to_content.keys())[0])
ui.run(dark=None)
main()
ui.run(dark=None, reload=False, title="Daniel McKnight")

View file

@ -1,19 +1,4 @@
# McKnight Technology Services
# Daniel McKnight
## Coder, Sysadmin, Manager
Hi! This is some text
## h2 Title
Lorem ipsum...
> This is a quote
### Shell
```shell
ls /
```
### Python
```python
for i in range(42):
print(i)
```
I work in the design and implementation of voice assistants, LLMs, infrastructure, and plenty more.

View file

@ -3,7 +3,7 @@ I have developed and contributed to hundreds of open source repositories on GitH
I cannot share here). This is just a selection of some of my favorite projects and what I like about them.
## Neon Core
This is the primary project I contributed to as part of my work at NeonGecko. It started as work with the (now defunct)
This is the primary project I contribute to as part of my work at NeonGecko. It started as work with the (now defunct)
open source Mycroft AI project, turned into a proprietary fork, and then we ended up open sourcing that fork. Working on
this project, I learned a lot about contributing to open source and managing open source projects. At the start, I learned
how to be a helpful individual contributor, and later I was on the other side, learning how to interface with the community
@ -33,8 +33,8 @@ developer-oriented CLI tools for generating Helm charts to deploy the same servi
systems.
## `neon-debos`
This project was my first foray into Go templates. It started as a fork of another similar project which I adapted to
our needs. As part of this project, I used squashfs/overlayfs to enable safe OS updates with methods to roll-back or
This project was my first exposure to Go templates. It started as a fork of another similar project which I adapted to
our needs. As part of this project, I used squashfs/overlayfs to enable safe OS updates with methods to roll back or
reset an installation in case of any errors. To support this, I compiled custom kernels and implemented a customized
initramfs.

View file

@ -20,11 +20,6 @@ November 2015 - December 2017
- Experience with Windows and Mac system administration, troubleshooting, and repair
## Projects
- Professional open-source work can be found at: https://github.com/neondaniel
- Documentation I wrote for much of my professional work: https://neongeckocom.github.io/neon-docs/
- A selection of small projects are documented on my blog: https://blog.mcknight.tech/
## Technologies
### Languages
- Python