vieter/src/main.v

57 lines
1.1 KiB
Coq
Raw Normal View History

module main
import os
2022-02-21 20:51:41 +01:00
import server
import cli
import console.targets
import console.logs
import console.schedule
import console.man
2022-06-22 16:19:07 +02:00
import console.aur
2022-04-09 09:46:07 +02:00
import cron
2022-12-06 13:50:25 +01:00
import agent
2022-01-09 10:36:02 +01:00
fn main() {
// Stop buffering output so logs always show up immediately
unsafe {
C.setbuf(C.stdout, 0)
}
mut app := cli.Command{
name: 'vieter'
2022-04-06 19:51:54 +02:00
description: 'Vieter is a lightweight implementation of an Arch repository server.'
2022-12-17 14:00:51 +01:00
version: '0.5.0-rc.1'
2022-12-21 23:42:15 +01:00
posix_mode: true
flags: [
cli.Flag{
flag: cli.FlagType.string
name: 'config-file'
abbrev: 'f'
description: 'Location of Vieter config file; defaults to ~/.vieterrc.'
global: true
default_value: [os.expand_tilde_to_home('~/.vieterrc')]
2022-04-06 16:57:27 +02:00
},
cli.Flag{
flag: cli.FlagType.bool
name: 'raw'
abbrev: 'r'
description: 'Only output minimal information (no formatted tables, etc.)'
global: true
},
]
commands: [
server.cmd(),
targets.cmd(),
2022-04-09 09:50:37 +02:00
cron.cmd(),
logs.cmd(),
schedule.cmd(),
man.cmd(),
2022-06-22 16:19:07 +02:00
aur.cmd(),
agent.cmd(),
]
2022-02-19 21:41:26 +01:00
}
app.setup()
app.parse(os.args)
return
}