finally put this under version control
This commit is contained in:
commit
55f357eb88
9 changed files with 1583 additions and 0 deletions
58
mvwt.c
Normal file
58
mvwt.c
Normal file
|
@ -0,0 +1,58 @@
|
|||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
|
||||
#include <sys/stat.h>
|
||||
#include <skalibs/sgetopt.h>
|
||||
#include <skalibs/stralloc.h>
|
||||
#include <skalibs/env.h>
|
||||
#include <skalibs/bytestr.h>
|
||||
#include <skalibs/strerr.h>
|
||||
#include <skalibs/exec.h>
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#define USAGE "mvwt [-c cachedir] id"
|
||||
#define WALLTAKER_URL "walltaker.joi.how"
|
||||
|
||||
int
|
||||
main(int argc, char *const *argv)
|
||||
{
|
||||
int opt;
|
||||
subgetopt l = SUBGETOPT_ZERO;
|
||||
stralloc envmod = STRALLOC_ZERO;
|
||||
|
||||
PROG = "mvwt";
|
||||
const char *cachedir = CACHE_DIR;
|
||||
|
||||
while ((opt = subgetopt_r(argc, (const char * const*) argv, "c:", &l)) != -1) {
|
||||
switch (opt) {
|
||||
case 'c': /* wallpaper cache directory */
|
||||
cachedir = l.arg;
|
||||
break;
|
||||
default:
|
||||
printf("switch %d", argc);
|
||||
strerr_dieusage(100, USAGE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
argc -= l.ind;
|
||||
argv += l.ind;
|
||||
if (argc != 1) {
|
||||
printf("argc %d", argc);
|
||||
strerr_dieusage(100, USAGE);
|
||||
}
|
||||
|
||||
if (chdir(cachedir) < 0)
|
||||
strerr_diefu(111, "chdir to cache dir "
|
||||
"(mkdir it if it doesn't exist)");
|
||||
|
||||
char const *wtc_argv[] = { "s6-tlsclient", "-N", "-Z", "--",
|
||||
WALLTAKER_URL, "443", "mvwtc", argv[0], 0 };
|
||||
|
||||
if (!env_addmodif(&envmod, "CADIR", CADIR_DIR))
|
||||
strerr_diefu(111, "set CADIR");
|
||||
|
||||
xmexec_m(wtc_argv, envmod.s, envmod.len);
|
||||
|
||||
return 111; /* uh oh! */
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue