Compare commits
8 Commits
11_0_0-12_
...
11_0_0-17_
Author | SHA1 | Date | |
---|---|---|---|
659f060eb6 | |||
1087a8a5a2 | |||
6a5a756438 | |||
91ca26de27 | |||
8b93232bbe | |||
ed1c3e13b1 | |||
095a0a1499 | |||
d16ea6a847 |
@@ -27,10 +27,10 @@ It is based on the perl Mojolicious package. Mojolicious is a real-time web fram
|
||||
smeserver-manager provides an intuitive and user-friendly web interface that allows administrators to manage various aspects of the server without needing deep technical knowledge or command-line skills.
|
||||
|
||||
#### User and Group Management:
|
||||
Easily add, remove, and manage user accounts and groups. The interface simplifies creating email accounts, setting passwords, and configuring user permissions.
|
||||
It allows you to easily add, remove, and manage user accounts and groups. The interface simplifies creating email accounts, setting passwords, and configuring user permissions.
|
||||
|
||||
#### Network Configuration:
|
||||
Configures network settings such as IP addresses, DNS, DHCP, and gateway settings. The interface also provides options for setting up VPNs, remote access, and firewall rules.
|
||||
You can configures network settings such as IP addresses, DNS, DHCP, and gateway settings. The interface also provides options for setting up VPNs, remote access, and firewall rules.
|
||||
|
||||
#### File Sharing and Storage:
|
||||
Enables and manages file sharing services like Samba (for Windows file sharing) and NFS (for Unix/Linux file sharing). Administrators can easily create shared folders and manage permissions.
|
||||
|
2
clog
2
clog
@@ -1,2 +0,0 @@
|
||||
* Sun Jul 28 2024 Brian Read <brianr@koozali.org> 11.0.0-12.sme
|
||||
- correct positio of flag-icon [SME: 12706]
|
@@ -1,4 +1,5 @@
|
||||
/* DO NOT MODIFY THIS FILE! It is updated automatically */
|
||||
{
|
||||
$OUT = <<'EOF';
|
||||
|
||||
/* smeserver_manager2 */
|
||||
|
||||
@@ -272,5 +273,7 @@ a.menu-title {
|
||||
left: 2px;
|
||||
}
|
||||
|
||||
/*end*/
|
||||
|
||||
/*end*/
|
||||
EOF
|
||||
}
|
||||
|
@@ -23,14 +23,16 @@ use File::Basename;
|
||||
|
||||
our $cdb = esmith::ConfigDB->open || die "Couldn't open config db";
|
||||
|
||||
my $dnf_status_file = '/var/cache/dnf/dnf.status';
|
||||
|
||||
#use File::stat;
|
||||
|
||||
our %dbs;
|
||||
|
||||
for ( qw(available installed updates) )
|
||||
{
|
||||
$dbs{$_} = esmith::ConfigDB->open_ro("yum_$_") or
|
||||
die "Couldn't open yum_$_ DB\n";
|
||||
$dbs{$_} = esmith::ConfigDB->open_ro("dnf_$_") or
|
||||
die "Couldn't open dnf_$_ DB\n";
|
||||
}
|
||||
|
||||
for ( qw(repositories) )
|
||||
@@ -52,10 +54,11 @@ sub main {
|
||||
|
||||
$yum_datas{'trt'} = 'STAT';
|
||||
|
||||
if ( -e "/var/run/yum.pid" ) {
|
||||
|
||||
if ( $c->is_dnf_running()) {
|
||||
$yum_datas{'trt'} = 'LOGF';
|
||||
$dest = 'yumlogfile';
|
||||
} elsif ($cdb->get_prop('yum', 'LogFile')) {
|
||||
} elsif ($cdb->get_prop('dnf', 'LogFile')) {
|
||||
$yum_datas{'trt'} = 'PSTU';
|
||||
$yum_datas{'reconf'} = $cdb->get_value('UnsavedChanges', 'yes');
|
||||
$dest = 'yumpostupg';
|
||||
@@ -83,9 +86,9 @@ sub do_display {
|
||||
$yum_datas{'trt'} = $trt;
|
||||
|
||||
# force $trt if current logfile
|
||||
if ( -e "/var/run/yum.pid" ) {
|
||||
if ( $c->is_dnf_running() ) {
|
||||
$trt = 'LOGF';
|
||||
} elsif ($cdb->get_prop('yum', 'LogFile')) {
|
||||
} elsif ($cdb->get_prop('dnf', 'LogFile')) {
|
||||
$trt = 'PSTU';
|
||||
}
|
||||
|
||||
@@ -106,13 +109,13 @@ sub do_display {
|
||||
}
|
||||
|
||||
if ( $trt eq 'LOGF' ) {
|
||||
if (-e "/var/run/yum.pid") {
|
||||
if ($c->is_dnf_running()) {
|
||||
$dest = 'yumlogfile';
|
||||
}
|
||||
}
|
||||
|
||||
if ( $trt eq 'PSTU') {
|
||||
if ($cdb->get_prop('yum', 'LogFile')) {
|
||||
if ($cdb->get_prop('dnf', 'LogFile')) {
|
||||
$dest = 'yumpostupg';
|
||||
$yum_datas{'reconf'} = $cdb->get_value('UnsavedChanges', 'yes');
|
||||
}
|
||||
@@ -221,7 +224,7 @@ sub do_update {
|
||||
if ( $trt eq 'LOGF' ) {
|
||||
|
||||
$dest = 'yumlogfile';
|
||||
if ( ! -e "/var/run/yum.pid") {
|
||||
if ( ! $c->is_dnf_running()) {
|
||||
$yum_datas{trt} = 'SUC';
|
||||
$result = $c->l('yum_SUCCESS');
|
||||
}
|
||||
@@ -247,6 +250,24 @@ sub do_update {
|
||||
|
||||
};
|
||||
|
||||
sub get_dnf_status {
|
||||
#interrogate status file created and maintained by smeserver.py plugin for dnf.
|
||||
my ($c) = @_;
|
||||
my $file_name = $dnf_status_file;
|
||||
my $content = "resolved";
|
||||
if ( -e "$file_name") {
|
||||
open my $fh, '<', $file_name or die "Can't open file: $!";
|
||||
$content = <$fh>;
|
||||
close $fh;
|
||||
}
|
||||
return $content;
|
||||
}
|
||||
|
||||
sub is_dnf_running {
|
||||
my ($c) = @_;
|
||||
my $dnf_status = $c->get_dnf_status();
|
||||
return $dnf_status ne "resolved" && $dnf_status ne "config" && $dnf_status ne "sack";
|
||||
}
|
||||
|
||||
sub is_empty {
|
||||
|
||||
@@ -289,7 +310,7 @@ sub package_functions_enabled {
|
||||
|
||||
my ($c) = @_;
|
||||
|
||||
return ($cdb->get_prop("yum", "PackageFunctions") eq "enabled");
|
||||
return ($cdb->get_prop("dnf", "PackageFunctions") eq "enabled");
|
||||
|
||||
}
|
||||
|
||||
@@ -298,7 +319,7 @@ sub get_status {
|
||||
|
||||
my ($c, $prop, $localise) = @_;
|
||||
|
||||
my $status = $cdb->get_prop("yum", $prop) || 'disabled';
|
||||
my $status = $cdb->get_prop("dnf", $prop) || 'disabled';
|
||||
|
||||
return $status unless $localise;
|
||||
|
||||
@@ -433,7 +454,7 @@ sub change_settings {
|
||||
PackageFunctions
|
||||
) )
|
||||
{
|
||||
$cdb->set_prop('yum', $param, $c->param("yum_$param"));
|
||||
$cdb->set_prop("dnf", $param, $c->param("yum_$param"));
|
||||
}
|
||||
|
||||
my $check4updates = $c->param("yum_check4updates");
|
||||
@@ -441,21 +462,21 @@ sub change_settings {
|
||||
|
||||
if ($check4updates ne 'disabled') { $status = 'enabled'; }
|
||||
|
||||
$cdb->set_prop('yum', 'check4updates', $check4updates);
|
||||
$cdb->set_prop("dnf", 'check4updates', $check4updates);
|
||||
|
||||
my $deltarpm = $c->param("yum_DeltaRpmProcess");
|
||||
$cdb->set_prop('yum', 'DeltaRpmProcess', $deltarpm);
|
||||
$cdb->set_prop("dnf", 'DeltaRpmProcess', $deltarpm);
|
||||
|
||||
my $downloadonly = $c->param("yum_DownloadOnly");
|
||||
if ($downloadonly ne 'disabled') { $status = 'enabled'; }
|
||||
|
||||
$cdb->set_prop('yum', 'DownloadOnly', $downloadonly);
|
||||
$cdb->set_prop("dnf", 'DownloadOnly', $downloadonly);
|
||||
|
||||
my $AutoInstallUpdates = $c->param("yum_AutoInstallUpdates");
|
||||
if ($AutoInstallUpdates ne 'disabled') { $status = 'enabled'; }
|
||||
|
||||
$cdb->set_prop('yum', 'AutoInstallUpdates', $AutoInstallUpdates);
|
||||
$cdb->set_prop('yum', 'status', $status);
|
||||
$cdb->set_prop("dnf", 'AutoInstallUpdates', $AutoInstallUpdates);
|
||||
$cdb->set_prop("dnf", 'status', $status);
|
||||
|
||||
my %selected = map {$_ => 1} @{$c->every_param('SelectedRepositories')};
|
||||
|
||||
@@ -469,7 +490,7 @@ sub change_settings {
|
||||
|
||||
$dbs{repositories}->reload;
|
||||
|
||||
unless ( system( "/sbin/e-smith/signal-event", "yum-modify" ) == 0 )
|
||||
unless ( system( "/sbin/e-smith/signal-event", "dnf-modify" ) == 0 )
|
||||
{
|
||||
return $c->l('yum_ERROR_UPDATING_CONFIGURATION');
|
||||
}
|
||||
@@ -484,11 +505,11 @@ sub do_yum {
|
||||
|
||||
for ( qw(SelectedGroups SelectedPackages) )
|
||||
{
|
||||
$cdb->set_prop("yum", $_, join(',', (@{$c->every_param($_)} )));
|
||||
$cdb->set_prop("dnf", $_, join(',', (@{$c->every_param($_)} )));
|
||||
}
|
||||
|
||||
esmith::util::backgroundCommand(0,
|
||||
"/sbin/e-smith/signal-event", "yum-$function");
|
||||
"/sbin/e-smith/signal-event", "dnf-$function");
|
||||
|
||||
for ( qw(available installed updates) ) {
|
||||
$dbs{$_}->reload;
|
||||
@@ -517,7 +538,7 @@ sub format_yum_log {
|
||||
|
||||
$cdb->reload;
|
||||
|
||||
my $filepage = $cdb->get_prop('yum', 'LogFile');
|
||||
my $filepage = $cdb->get_prop('dnf', 'LogFile');
|
||||
return '' unless $filepage and ( -e "$filepage" );
|
||||
|
||||
my $out = sprintf "<PRE>";
|
||||
@@ -537,7 +558,7 @@ sub post_upgrade_reboot {
|
||||
|
||||
my $c = shift;
|
||||
|
||||
$cdb->get_prop_and_delete('yum', 'LogFile');
|
||||
$cdb->get_prop_and_delete('dnf', 'LogFile');
|
||||
$cdb->reload;
|
||||
|
||||
if (fork == 0) {
|
||||
@@ -552,7 +573,7 @@ sub post_upgrade_reboot {
|
||||
sub show_yum_log {
|
||||
my $c = shift;
|
||||
my $out = $c->format_yum_log();
|
||||
my $yum_log = $cdb->get_prop_and_delete('yum', 'LogFile');
|
||||
my $yum_log = $cdb->get_prop_and_delete('dnf', 'LogFile');
|
||||
return $out;
|
||||
}
|
||||
|
||||
|
@@ -79,9 +79,9 @@
|
||||
|
||||
%= hidden_field 'trt' => 'CONF'
|
||||
<br>
|
||||
<div class='center'>
|
||||
<!--<div class='center'>-->
|
||||
%= submit_button $c->l('SAVE'), class => 'action'
|
||||
</div>
|
||||
<!--</div>-->
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -47,9 +47,9 @@
|
||||
|
||||
%= hidden_field 'trt' => 'INST'
|
||||
<br><br>
|
||||
<div class='center'>
|
||||
<!-- <div class='center'>-->
|
||||
%= submit_button $c->l('yum_INSTALL_SOFTWARE'), class => 'action'
|
||||
</div>
|
||||
<!--</div>-->
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -34,9 +34,9 @@
|
||||
%= hidden_field 'trt' => 'PSTU'
|
||||
%= hidden_field 'reconf' => $yum_datas->{reconf}
|
||||
<br>
|
||||
<div class='center'>
|
||||
<!-- <div class='center'>-->
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<!--</div>-->
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -46,9 +46,9 @@
|
||||
|
||||
%= hidden_field 'trt' => 'REMO'
|
||||
<br>
|
||||
<div class='center'>
|
||||
<!--<div class='center'>-->
|
||||
%= submit_button $c->l('REMOVE'), class => 'action'
|
||||
</div>
|
||||
<!--</div>-->
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -33,9 +33,9 @@
|
||||
|
||||
%= hidden_field 'trt' => 'UPDT'
|
||||
<br>
|
||||
<div class='center'>
|
||||
<!--<div class='center'>-->
|
||||
%= submit_button $c->l('yum_INSTALL_UPDATES'), class => 'action'
|
||||
</div>
|
||||
<!--</div>-->
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -2,7 +2,7 @@ Summary: Sme server navigation module : manager 2
|
||||
%define name smeserver-manager
|
||||
Name: %{name}
|
||||
%define version 11.0.0
|
||||
%define release 12
|
||||
%define release 17
|
||||
Version: %{version}
|
||||
Release: %{release}%{?dist}
|
||||
License: GPL
|
||||
@@ -108,6 +108,23 @@ true
|
||||
%defattr(-,root,root)
|
||||
|
||||
%changelog
|
||||
* Thu Aug 22 2024 Brian Read <brianr@koozali.org> 11.0.0-17.sme
|
||||
- Left Align Software Install panels Submit button [SME: 12727]
|
||||
|
||||
* Wed Aug 21 2024 Brian Read <brianr@koozali.org> 11.0.0-16.sme
|
||||
- Typo uc DNF changed to lc dnf in Yum.pm [SME: 127245]
|
||||
- Monitor dnf running using dnf status file
|
||||
|
||||
* Wed Aug 21 2024 Brian Read <brianr@koozali.org> 11.0.0-15.sme
|
||||
- Migrate SM2 Software installer panel from use of yum to dnf [SME: 12718]
|
||||
|
||||
* Sun Jul 28 2024 Brian Read <brianr@koozali.org> 11.0.0-14.sme
|
||||
- Version skipped due to operator error! [SME: <none> ]
|
||||
|
||||
* Sun Jul 28 2024 Brian Read <brianr@koozali.org> 11.0.0-13.sme
|
||||
- Fix sysles.css template - overwrote it by mistake [SME: 12706]
|
||||
- Also re-organised login and Legacy SM menus and help on top
|
||||
|
||||
* Sun Jul 28 2024 Brian Read <brianr@koozali.org> 11.0.0-12.sme
|
||||
- correct positio of flag-icon [SME: 12706]
|
||||
|
||||
|
Reference in New Issue
Block a user