Compare commits
No commits in common. "f4aaf13c17228ab204301cb8bc4ea603b2ca184e" and "8ccdde5cb127a5cb2261c205860248f46198e2a6" have entirely different histories.
f4aaf13c17
...
8ccdde5cb1
6 changed files with 34 additions and 37 deletions
|
@ -2,7 +2,8 @@ FROM python:3.12-bookworm
|
||||||
|
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
|
|
||||||
COPY . /site
|
COPY site_mcknight_tech /site
|
||||||
RUN pip install /site
|
COPY requirements.txt /tmp/requirements.txt
|
||||||
|
RUN pip install -r /tmp/requirements.txt
|
||||||
|
|
||||||
ENTRYPOINT [ "launch-site" ]
|
ENTRYPOINT [ "python3", "/site/__main__.py" ]
|
||||||
|
|
27
setup.py
27
setup.py
|
@ -1,27 +0,0 @@
|
||||||
# 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']
|
|
||||||
}
|
|
||||||
)
|
|
|
@ -44,4 +44,7 @@ def render_header() -> ui.tab_panels:
|
||||||
def main():
|
def main():
|
||||||
header = render_header()
|
header = render_header()
|
||||||
header.set_value(list(_tab_to_content.keys())[0])
|
header.set_value(list(_tab_to_content.keys())[0])
|
||||||
ui.run(dark=None, reload=False, title="Daniel McKnight")
|
ui.run(dark=None)
|
||||||
|
|
||||||
|
|
||||||
|
main()
|
||||||
|
|
|
@ -1,4 +1,19 @@
|
||||||
# Daniel McKnight
|
# McKnight Technology Services
|
||||||
## Coder, Sysadmin, Manager
|
|
||||||
|
|
||||||
I work in the design and implementation of voice assistants, LLMs, infrastructure, and plenty more.
|
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)
|
||||||
|
```
|
||||||
|
|
|
@ -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.
|
I cannot share here). This is just a selection of some of my favorite projects and what I like about them.
|
||||||
|
|
||||||
## Neon Core
|
## Neon Core
|
||||||
This is the primary project I contribute to as part of my work at NeonGecko. It started as work with the (now defunct)
|
This is the primary project I contributed 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
|
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
|
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
|
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.
|
systems.
|
||||||
|
|
||||||
## `neon-debos`
|
## `neon-debos`
|
||||||
This project was my first exposure to Go templates. It started as a fork of another similar project which I adapted to
|
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
|
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
|
reset an installation in case of any errors. To support this, I compiled custom kernels and implemented a customized
|
||||||
initramfs.
|
initramfs.
|
||||||
|
|
||||||
|
|
|
@ -20,6 +20,11 @@ November 2015 - December 2017
|
||||||
|
|
||||||
- Experience with Windows and Mac system administration, troubleshooting, and repair
|
- 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
|
## Technologies
|
||||||
### Languages
|
### Languages
|
||||||
- Python
|
- Python
|
||||||
|
|
Loading…
Reference in a new issue