Downloads every Skyrim mod plugin from nexusmods.com and saves CELL edits of each to a database
https://modmapper.com
Tyler Hallada
8a356ac7f5
Writing to the zip was starting to take forever. It makes more sense to just use my big HD and then zip after I'm done downloading every file. |
||
---|---|---|
migrations | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
README.md |
modmapper
Downloads mods from nexus, parses the plugins inside, and saves data to a postgres database.
Development Install
- Install and run postgres.
- Create postgres user and database (and add uuid extension while you're there ):
createuser modmapper
createdb modmapper
sudo -u postgres -i psql
postgres=# ALTER DATABASE modmapper OWNER TO modmapper;
\password modmapper
# Or, on Windows in PowerShell:
& 'C:\Program Files\PostgreSQL\13\bin\createuser.exe' -U postgres modmapper
& 'C:\Program Files\PostgreSQL\13\bin\createdb.exe' -U postgres modmapper
& 'C:\Program Files\PostgreSQL\13\bin\psql.exe' -U postgres
postgres=# ALTER DATABASE modmapper OWNER TO modmapper;
\password modmapper
- Save password somewhere safe and then and add a
.env
file to the project directory with the contents:
DATABASE_URL=postgresql://modmapper:<password>@localhost/modmapper
RUST_LOG=mod_mapper=debug
- Install
sqlx_cli
withcargo install sqlx-cli --no-default-features --features postgres
- Run
sqlx migrate --source migrations run
which will run all the database migrations. - Get your personal Nexus API token from your profile settings and add it to the
.env
file:
NEXUS_API_KEY=...
- Either run
cargo run
for development mode, or build the release binary withcargo build --release
, which will get saved totarget/release/
.