Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation/setup are an undocumented mess; unsuitable for general use #5

Open
ticalc-travis opened this issue May 8, 2017 · 1 comment

Comments

@ticalc-travis
Copy link
Owner

ticalc-travis commented May 8, 2017

Since this started as a personal, hacked-together project that sort of organically evolved over time and was not really originally intended as a public open-source program, it's nontrivial for anyone to download and actually get this stuff into a runnable state. I don't even know the full procedure without figuring it out by trial and error, since I never bothered properly documenting it. I don't even have an actual list of dependencies (and there are quite a few)!

There are a lot of things that are hard-coded (sometimes in multiple source files) that really shouldn't be. The Postgres connection/username parameters for the Markov data come to mind. The IRC module doesn't have connection defaults that are really suitable for any use other than on my own personal machine. Without significant modification, the update_markov.py script is totally useless outside my own box because of all the custom code and hardcoded pathnames and IRC log-parsing stuff in it. There isn't really any proper separation of source and “configuration” files (like personalitiesrc.py). Some of the configuration/state data is stored in the DB and some in files.

Some possible things to do:

  • Document the dependencies and the entire setup procedure
  • Have some kind of general configuration system of some sort, especially for the IRC and DB config
  • Ideally, split up all the DB stuff into a separate module so that the system could be extended to use alternative DB backends (this would require refactoring on a level I don't really want to tackle right now)
  • Get rid of the current update_markov.py (which in its current form probably doesn't really belong in this repo to begin with) and provide some sort of simple, generic tool to let users add lines to the Markov corpus
  • For IRC, maybe have some kind of actual authentication system for control and administration instead of manually-specified hostmasks at launch-time, and/or a way to control and configure the bot that doesn't require an IRC connection

Maybe I'll write a general outline of all the steps needed to get it working on a fresh GNU/Linux distro and make a more general corpus-management tool at some point, but I don't really have the time and inclination at the moment to do much else.

@ticalc-travis
Copy link
Owner Author

Well, I have now at least written a guide on the wiki that should include the main steps of getting it running on another system.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant