#!/usr/bin/env perl # # sboconfig # script to handle sbotools configuration # # author: Jacob Pipkin # date: Pungenday, the 40th day of Discord in the YOLD 3178 # license: WTFPL use strict; use warnings FATAL => 'all'; use SBO::Lib; use File::Basename; use Getopt::Std; use File::Copy; use File::Path qw(make_path); use Fcntl; my %config = %SBO::Lib::config; my $self = basename($0); sub show_usage { print <; close($fh); tie my @temp, 'Tie::File', $filename; my $has = 'FALSE'; my $regex = qr/\A\Q$key\E=/; FIRST: for my $tmpline (@temp) { if ($tmpline =~ $regex) { $has = 'TRUE'; $tmpline = "$key=$val"; last FIRST; } } untie @temp; if ($has eq 'FALSE') { open (my $writer, '>>', $filename); print {$writer} "$key=$val\n"; close($writer); } move($filename,$conf_file); } else { open my $writer, '>', $conf_file; print {$writer} "$key=$val\n"; close($writer); } } while (my ($key,$value) = each %changes) { print "Setting $key to $value...\n"; config_write($key,$value); } exit(0);