Ken Moore
32d74530ad
Disable the sysadm/update API class unless pc-updatemanager is installed.
...
This system does not work with the newer "trueos-update" utility. We will need a new API backend for that tool.
2018-09-06 08:50:25 -04:00
Ken Moore
4b0d6334d1
Make sure that the beadm backend can run if beadm is in base
2018-09-05 10:29:39 -04:00
Ken Moore
ed2c244282
Fix up the port template to use the new Qt flavors system
2018-09-05 09:52:21 -04:00
Ken Moore
8ba0b72cd0
Fix up the paths where sysadm looks for pkg repo configs.
2018-09-05 09:20:06 -04:00
Ken Moore
67e687ba4c
Update the sysadm/update API class:
...
Make it able to use "trueos-update" as well as "pc-updatemanager" for upgrades
2018-09-01 07:33:26 -04:00
Ken Moore
0fdcdb2c9b
Update WebBackend.cpp
...
Fix the sysadm/pkg API class detection method to account for the new location of the "pkg" binary on TrueOS 18.06
Also fix the sysadm/update API class to look for the "trueos-update" utility.
2018-09-01 06:31:49 -04:00
Ken Moore
aab6f484ef
Remove the IFM_[FDDI/TOKEN] usage in SysAdm. Removed from upstream FreeBSD.
2018-06-12 09:26:41 -04:00
Ken Moore
25177739c2
Clean up some dispatcher parsing routines for sourcectl
2018-04-19 08:51:34 -04:00
Ken Moore
25ca2d430d
Cleanup the service manager backend a bit.
...
Make it more robust concerning OpenRC vs rc.d management.
2018-04-04 10:59:45 -04:00
Ken Moore
6630432922
Merge pull request #33 from OtacilioNeto/master
...
Fix 100% CPU usage bug when listing users under FreeBSD.
2018-03-19 08:14:37 -04:00
Otacílio
d7c4e29d9a
Fix 100% CPU usage bug when listing users under FreeBSD.
2018-03-18 22:52:13 -03:00
Ken Moore
fd5504b304
Allow the "CDN_TYPE" option to be exposed via the update settings API calls now.
...
This allows an easy way to switch between IPFS and CDN types.
2018-02-05 09:58:46 -05:00
Ken Moore
b08d8461fc
Put all the build files into a separate directory (keep source dir clean).
2018-02-05 09:53:56 -05:00
Ken Moore
c1be586f87
Fix up the creation of new configuration files in sysadm-general (setConfFileValue()).
2017-12-18 13:27:14 -05:00
Ken Moore
dd4ab15bb4
Merge branch 'master' of github.com:trueos/sysadm
2017-12-07 09:39:46 -05:00
Ken Moore
6b43bc6a29
Couple quick updates for handling failed update checks.
2017-12-07 09:39:18 -05:00
q5sys
d6147d70f4
update port maintainer
2017-11-24 15:43:43 -05:00
Ken Moore
77986e0312
Fix the update-required flag detection
2017-11-22 10:43:00 -05:00
Ken Moore
06e2f83902
Merge branch 'master' of github.com:trueos/sysadm
2017-11-22 10:28:44 -05:00
Ken Moore
42adfc6ca1
Couple minor tweaks for the sysadm server.
2017-11-22 10:28:21 -05:00
Ken Moore
f4a2459429
Change the internal reboot/update mechanism to use the new "applyUpdates()" function instead of just systemReboot().
2017-11-17 16:02:39 -05:00
Ken Moore
c5bf944017
[API CHANGE] Add a new API call for sysadm/update: action="applyupdate".
...
This takes no other inputs, and returns the following:
{
"applyupdate" : {
"result" : "rebooting to apply updates"
}
}
2017-11-17 15:58:37 -05:00
q5sys
2157dbb6c2
add new library files
2017-11-02 11:52:07 -04:00
q5sys
d07658ee21
more api work for sourcectl
2017-11-02 11:48:25 -04:00
q5sys
355b47d93a
cut old source source from systemmanager.cpp
2017-11-02 10:10:56 -04:00
q5sys
62655ebd41
backend work for source control api
2017-11-02 10:02:03 -04:00
Ken Moore
ce53715265
Make sure the system update check is done via a DISPATCHER process.
...
This prevent possible hangs in the main server thread from the health check, and also ensures that the system update check API call can now return a new "checkingforupdates" status.
2017-10-27 13:35:42 -04:00
Ken Moore
4247c3529a
[API CHANGE] New API call: sysadm/moused, action="get_synaptics_options"
...
No other input arguments required.
This will return any additional options that are available through the "synaptics" driver system (typically used for laptops).
REST Request (example):
-------------------------------
PUT /sysadm/moused
{
"action" : "get_synaptics_options"
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"args" : {
"action" : "get_synaptics_options"
},
"name" : "moused",
"namespace" : "sysadm"
}
Response:
-------------------------------
{
"args": {
"get_synaptics_options": {
"disable_touchpad": "false",
"enable_synaptics": "false",
"enable_two_finger_scroll": "false"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-26 13:32:43 -04:00
Ken Moore
bb1ec413eb
[API CHANGE] sysadm/moused, action="set_tap_to_click"
...
Inputs (at least one required):
"enable" = "true" or "false" : Turn tap to click on or off
"timeout" = "[positive integer]" : Modify the timeout value (0 is sometimes used to disable tap-to-click)
REST Request (example):
-------------------------------
PUT /sysadm/moused
{
"timeout" : "0",
"action" : "set_tap_to_click"
}
WebSocket Request:
-------------------------------
{
"namespace" : "sysadm",
"name" : "moused",
"args" : {
"timeout" : "0",
"action" : "set_tap_to_click"
},
"id" : "fooid"
}
Response:
-------------------------------
{
"args": {
"set_tap_to_click": {
"timeout": "0"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-26 13:27:51 -04:00
Ken Moore
d7ddcb5ae0
[API CHANGE] New API call: sysadm/moused, action="get_tap_to_click"
...
No other input arguments
This returns the information about the current settings of "tap-to-click" for laptop touchpads.
REST Request (example):
-------------------------------
PUT /sysadm/moused
{
"action" : "get_tap_to_click"
}
WebSocket Request:
-------------------------------
{
"args" : {
"action" : "get_tap_to_click"
},
"name" : "moused",
"namespace" : "sysadm",
"id" : "fooid"
}
Response:
-------------------------------
{
"args": {
"get_tap_to_click": {
"enabled": "unavailable",
"timeout": "125000",
"using_synaptics": "false"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-26 12:55:07 -04:00
Ken Moore
654b1a72d5
Add another quick error detection flag to the new "getsysctl" action in the system manager.
2017-10-26 11:17:25 -04:00
Ken Moore
3cb89665b7
Compress the batteryInfo function into a single "apm" process call instead of 3 of them.
2017-10-26 09:59:10 -04:00
Ken Moore
5807bedd68
[API CHANGE] New API call: sysadm/systemmanager, action="getsysctl"
...
Required arguments: "sysctl" (string or array of strings)
This will report back the value of the requested sysctl(s).
REST Request (example):
-------------------------------
PUT /sysadm/systemmanager
{
"action" : "getsysctl",
"sysctl" : [
"hw.usb.atp.touch_timeout",
"hw.psm.tap_timeout"
]
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"name" : "systemmanager",
"namespace" : "sysadm",
"args" : {
"action" : "getsysctl",
"sysctl" : [
"hw.usb.atp.touch_timeout",
"hw.psm.tap_timeout"
]
}
}
Response:
-------------------------------
{
"args": {
"getsysctl": {
"hw.psm.tap_timeout": "125000",
"hw.usb.atp.touch_timeout": "125000"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-26 09:26:51 -04:00
Ken Moore
2240fdd8c7
[API CHANGE] Adjust the output structure for the "sysctllist" action in the system manager.
...
The output now returns objects with value, type, and description of each sysctl instead of just the values.
REST Request (example):
-------------------------------
PUT /sysadm/systemmanager
{
"action" : "sysctllist"
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"namespace" : "sysadm",
"args" : {
"action" : "sysctllist"
},
"name" : "systemmanager"
}
Response:
-------------------------------
{
"args": {
"sysctllist": {
"compat.ia32.maxdsiz": {
"type": "unsigned long",
"value": "536870912"
},
"compat.ia32.maxssiz": {
"type": "unsigned long",
"value": "67108864"
},
"compat.ia32.maxvmem": {
"type": "unsigned long",
"value": "0"
},
"compat.linux.osname": {
"description": "Linux kernel OS name",
"type": "string",
"value": "Linux"
},
"compat.linux.osrelease": {
"description": "Linux kernel OS release",
"type": "string",
"value": "2.6.32"
},
"compat.linux.oss_version": {
"description": "Linux OSS version",
"type": "integer",
"value": "198144"
}
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-26 09:10:02 -04:00
Ken Moore
52ae9e8e5c
Add ability to specify working directory to the dispatcher, and update the new fetch_ports API call.
2017-10-04 10:56:43 -04:00
Ken Moore
068ef24a66
Enable a new API call:
...
sysadm/systemmanager - "action" = "fetch_ports"
OPTIONAL argument: "ports_dir" = directory to place the ports tree
REST Request (example):
-------------------------------
PUT /sysadm/systemmanager
{
"action" : "fetch_ports"
}
WebSocket Request:
-------------------------------
{
"namespace" : "sysadm",
"args" : {
"action" : "fetch_ports"
},
"name" : "systemmanager",
"id" : "fooid"
}
Response:
-------------------------------
{
"args": {
"fetch_ports": {
"process_id": "system_fetch_ports_tree",
"result": "process_started"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-10-04 10:37:11 -04:00
Ken Moore
fba91d29c9
Enable/clean the backend functio
2017-10-04 10:31:49 -04:00
Ken Moore
a239e43c05
Add a new option to the moused options:
...
"mouse_scroll_invert" = [true/false]
This will invert the scroll direction for the mouse device.
2017-09-15 09:31:53 -04:00
Ken Moore
991dcdd2f9
Merge branch 'master' of github.com:trueos/sysadm
2017-08-25 09:25:55 -04:00
Ken Moore
e9a338fa0f
Make sure that pc-updatemanager syncconf is always run before any automated update checks begin.
2017-08-25 09:25:18 -04:00
ZackaryWelch
6447b0fed1
Moved the SysAdm client manpage to the client repo
2017-08-24 13:21:10 -04:00
ZackaryWelch
cf5b11a539
Added a man page for the sysadm cli client
2017-08-24 11:26:23 -04:00
Tim Moore
93f4d89b7d
Remove (Coming Soon) from SysAdm issues tracker
2017-08-21 12:27:56 -04:00
Ken Moore
4e23691d50
Commit some more work on an /etc/rc.conf writing routine for networking.
...
Not enabled for API calls yet.
2017-08-10 14:53:30 -04:00
Ken Moore
376eaa4e37
[API CHANGE] Add a new action for sysadm/network class:
...
"action" = "list-settings"
List all the settings for network devices that are saved in /etc/rc.conf
-----------------
REST Request (example):
-------------------------------
PUT /sysadm/network
{
"action" : "list-settings"
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"namespace" : "sysadm",
"args" : {
"action" : "list-settings"
},
"name" : "network"
}
Response:
-------------------------------
{
"args": {
"lo0": {
"associated_device": "",
"device": "lo0",
"static_gateway": "",
"static_ipv4": "",
"static_ipv6": "",
"static_netmask": "",
"use_dhcp": "false"
},
"re0": {
"associated_device": "",
"device": "re0",
"static_gateway": "",
"static_ipv4": "",
"static_ipv6": "",
"static_netmask": "",
"use_dhcp": "true"
},
"ue0": {
"associated_device": "",
"device": "ue0",
"static_gateway": "",
"static_ipv4": "",
"static_ipv6": "",
"static_netmask": "",
"use_dhcp": "true"
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-08-10 13:51:35 -04:00
Ken Moore
4dded17898
Important update to pkg backend:
...
1) Change the API calls to all be name-based instead of origin-based
2) This fixes the detection/viewing of base packages
3) This makes the AppCafe 100% ready for the flavours/subpackages which is coming from upstream pkg sometime soon.
2017-08-10 10:38:32 -04:00
Ken Moore
6ab7c3dc01
Adjust the logic of the dispatcher processes a bit:
...
For the incremental process notifications, only include the latest output from the process, not the full thing up to that point. Some processes (life preserver, pc-updatemanager) run for a long time and eventually get massive log files.
2017-08-07 11:52:06 -04:00
Ken Moore
34b388277d
[API CHANGE] Add a new "action" for sysadm/systemmanager
...
"action"="deviceinfo" will return the full information about all devices attached to the system (via `pciconf -lv`)
-------------------
REST Request (example):
-------------------------------
PUT /sysadm/systemmanager
{
"action" : "deviceinfo"
}
WebSocket Request:
-------------------------------
{
"id" : "fooid",
"name" : "systemmanager",
"namespace" : "sysadm",
"args" : {
"action" : "deviceinfo"
}
}
Response:
-------------------------------
{
"args": {
"deviceinfo": {
"ahci0": {
"class": "mass storage",
"device": "8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode]",
"subclass": "SATA",
"vendor": "Intel Corporation"
},
"ehci0": {
"class": "serial bus",
"device": "8 Series/C220 Series Chipset Family USB EHCI",
"subclass": "USB",
"vendor": "Intel Corporation"
},
"ehci1": {
"class": "serial bus",
"device": "8 Series/C220 Series Chipset Family USB EHCI",
"subclass": "USB",
"vendor": "Intel Corporation"
},
"hdac0": {
"class": "multimedia",
"subclass": "HDA",
"vendor": "NVIDIA Corporation"
},
"hdac1": {
"class": "multimedia",
"device": "8 Series/C220 Series Chipset High Definition Audio Controller",
"subclass": "HDA",
"vendor": "Intel Corporation"
},
"hostb0": {
"class": "bridge",
"device": "4th Gen Core Processor DRAM Controller",
"subclass": "HOST-PCI",
"vendor": "Intel Corporation"
},
"isab0": {
"class": "bridge",
"device": "B85 Express LPC Controller",
"subclass": "PCI-ISA",
"vendor": "Intel Corporation"
},
"none0": {
"class": "simple comms",
"device": "8 Series/C220 Series Chipset Family MEI Controller",
"vendor": "Intel Corporation"
},
"none1": {
"class": "serial bus",
"device": "8 Series/C220 Series Chipset Family SMBus Controller",
"subclass": "SMBus",
"vendor": "Intel Corporation"
},
"pcib1": {
"class": "bridge",
"device": "Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller",
"subclass": "PCI-PCI",
"vendor": "Intel Corporation"
},
"pcib2": {
"class": "bridge",
"device": "8 Series/C220 Series Chipset Family PCI Express Root Port",
"subclass": "PCI-PCI",
"vendor": "Intel Corporation"
},
"pcib3": {
"class": "bridge",
"device": "8 Series/C220 Series Chipset Family PCI Express Root Port",
"subclass": "PCI-PCI",
"vendor": "Intel Corporation"
},
"pcib4": {
"class": "bridge",
"device": "8 Series/C220 Series Chipset Family PCI Express Root Port",
"subclass": "PCI-PCI",
"vendor": "Intel Corporation"
},
"pcib5": {
"class": "bridge",
"device": "82801 PCI Bridge",
"subclass": "PCI-PCI",
"vendor": "Intel Corporation"
},
"re0": {
"class": "network",
"device": "RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller",
"subclass": "ethernet",
"vendor": "Realtek Semiconductor Co., Ltd."
},
"vgapci0": {
"class": "display",
"device": "GM206 [GeForce GTX 960]",
"subclass": "VGA",
"vendor": "NVIDIA Corporation"
},
"xhci0": {
"class": "serial bus",
"device": "8 Series/C220 Series Chipset Family USB xHCI",
"subclass": "USB",
"vendor": "Intel Corporation"
}
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-08-02 11:14:38 -04:00
Ken Moore
00251895a3
[API CHANGE] Add a new "pkg_install_verify" action to sysadm/pkg
...
Add an "action" = "pkg_install_verify" option to the sysadm/pkg API call.
REQUIRED: "pkg_origins" - string or array of pkg origins
"repo" - remote repository that the package will be installed from.
----------
REST Request (example):
-------------------------------
PUT /sysadm/pkg
{
"repo" : "trueos-major",
"action" : "pkg_install_verify",
"pkg_origins" : [
"www/qupzilla-qt5-webkit"
]
}
WebSocket Request:
-------------------------------
{
"name" : "pkg",
"namespace" : "sysadm",
"id" : "fooid",
"args" : {
"action" : "pkg_install_verify",
"pkg_origins" : [
"www/qupzilla-qt5-webkit"
],
"repo" : "trueos-major"
}
}
Response:
-------------------------------
{
"args": {
"pkg_install_verify": {
"conflicts": [],
"install": {
"qupzilla-qt5-webkit": {
"comment": "Web browser based on WebKit engine and Qt Framework",
"flatsize": "13380132",
"name": "qupzilla-qt5-webkit",
"origin": "www/qupzilla-qt5-webkit",
"pkgsize": "2574460",
"version": "1.8.9_3"
}
}
}
},
"id": "fooid",
"name": "response",
"namespace": "sysadm"
}
2017-08-01 13:08:51 -04:00
Ken Moore
09c41edaca
Clean up some more whitespace in sysadm server files.
2017-07-27 15:19:54 -04:00