Commit Graph

134 Commits

Author SHA1 Message Date
Daniel Markstedt
8d057b6f5b Bump Webmin module versions 2024-05-01 16:15:43 +09:00
Daniel Markstedt
4aa832ced4 Local Netatalk install script, bump to v2.3.1 2024-05-01 16:15:43 +09:00
Delan Azabani
b7ecb8b8e2 Fix problems installing on Raspberry Pi OS 12 (bookworm) (#1408)
* Fix problems installing on Raspberry Pi OS 12 (bookworm)

* don’t cachePipPackages in option 1

* add gcc to required packages for web container
2024-05-01 16:15:43 +09:00
Daniel Markstedt
c7d34bbb99 Freeze Python requirements for the Control Board client 2024-05-01 16:15:43 +09:00
Daniel Markstedt
d9cb374bc0 Install and use the vsftpd webmin module 2024-05-01 16:15:43 +09:00
Daniel Markstedt
53e33388ec easyinstall.sh: fix typos in script syntax (#1391)
* easyinstall.sh: fix typo in sudoCache() function name

* Fix typo in apt-get command
2024-05-01 16:15:43 +09:00
PiSCSI User
105a729048 revert moving webmin to sub-path 2024-05-01 16:15:43 +09:00
Uwe Seimet
ddfd40d5c9 Fix typo (choice 0) in easyinstall.sh (#1372)
* Fix typo (choice 0) in easyinstall.sh

Co-authored-by: Frank Danapfel
2024-05-01 16:15:42 +09:00
Benjamin Krein
de9b65ac04 config webmin at /webmin path in nginx 2024-05-01 16:15:42 +09:00
Benjamin Krein
e4414640e1 automate interaction for webmin install 2024-05-01 16:15:42 +09:00
Daniel Markstedt
b5e40c7f9b
easyinstall: Add ca-certificates to list of packages to install with apt (#1341)
* Add ca-certificates to list of packages to install with apt

* Remove dhcpcd from packages to install
2023-11-11 06:10:37 -08:00
Daniel Markstedt
2e2df10531 Install the dhcpcd package with the common bundle 2023-11-10 19:33:09 +09:00
Daniel Markstedt
a6136c7f4a Check for webmin module config before modifying 2023-11-08 18:17:14 +09:00
Benjamin Krein
bd5341d62d address review items 2023-11-05 20:10:01 +09:00
Benjamin Krein
51220d41ad remove redundant package install 2023-11-05 20:10:01 +09:00
Benjamin Krein
3c00716b06 add missing dependency 2023-11-05 20:10:01 +09:00
Benjamin Krein
cde190a2cb fix netatalk paths in webmin 2023-11-05 20:10:01 +09:00
Daniel Markstedt
07a4826167 The Webmin netatalk module depends on libcgi-session-perl 2023-11-04 22:13:39 +09:00
Daniel Markstedt
cad3df690e Deliberately remove a previous venv for the python clients 2023-11-04 21:21:52 +09:00
Uwe Seimet
41bdcd4aed
Issues 1179 and 1182 (#1232)
* Update logging

* Remove duplicate code

* Update unit tests

* Clean up includes

* Merge ProtobufSerializer into protobuf_util namespace

* Precompile regex

* Add const

* Add Split() convenience method, update log level/ID parsing

* Move log.h to legacy folder

* Elimininate gotos

* Fixes for gcc 13

* Update compiler flags

* Update default folder handling

* Use references instead of pointers

* Move code for better encapsulation

* Move code

* Remove unused method argument

* Move device logger

* Remove redundant to_string

* Rename for consistency

* Update handling of protobuf pointers

* Simplify protobuf usage

* Memory handling update

* Add hasher
2023-10-15 08:38:15 +02:00
Daniel Markstedt
2ced0d3515 Default compiler threads based on available RAM, but no more or less than available cores 2023-10-07 19:46:30 +09:00
Daniel Markstedt
65c1b194c5
Manage Samba and Netatalk with Webmin (#1217)
* Display status of Samba/Netatalk/vsftp in the footer, with links to Webmin module

* Add option to install Webmin and the netatalk2 module
2023-09-24 09:30:54 -07:00
Daniel Markstedt
3b6822d7c8
easyinstall: Dynamically detect an available network i/f, and abort if none is found (#1193)
* Dynamically detect an available network i/f, and abort if none is found

* Network i/f fallback for headless mode

* Split piscsi installation and system service configuration
2023-07-31 12:13:23 -07:00
Daniel Markstedt
fa2b02b222
Bump netatalk 2.x version to 230701 (#1185) 2023-07-17 19:23:10 -05:00
Daniel Markstedt
8dd5071122
Bump Netatalk to v230302 (#1142) 2023-04-09 19:29:25 -05:00
Daniel Markstedt
ff017a9c1d
Web UI: Handling for non-existence of working dirs (#1130) 2023-03-23 20:07:19 -07:00
Daniel Markstedt
b6cc6a23af
Bump to Netatalk 2.x 230301 (#1119) 2023-03-06 09:18:04 -08:00
Daniel Markstedt
3de66af55c
Use one core with the compiler by default (#1114) 2023-03-02 13:51:22 -08:00
Daniel Markstedt
282c639438
Netatalk: Configure atalkd to use piscsi_bridge by default
- Inject piscsi_bridge into atalkd.conf if in use (#1088)
- Pass more parameters to the Netatalk script (cores, headless, no make clean, no packages)
- Bump to Netatalk 2.x 230202
2023-02-27 14:26:30 -08:00
Tony Kuker
059a31ba53
add special option for pi-gen for building piscsi images (#1107)
Co-authored-by: Tony Kuker <akuker@gmail.com>
2023-02-26 20:29:32 -06:00
Daniel Markstedt
4d9d90aaa5
Bump Netatalk version to 2.230201 (#1093) 2023-02-05 09:30:45 -08:00
Daniel Markstedt
071fdd2dd5
Move os_integration to root level (#1085)
* Move the os_integration dir from cpp/ to root level

Co-authored-by: nucleogenic <nr@nucleogenic.com>
2023-01-28 15:03:41 -08:00
Daniel Markstedt
934a66c785
Remove incorrect and unused usermod command (#1073) 2023-01-21 11:21:32 -08:00
akuker
8dec4af3b9
add gettext (#1048)
Co-authored-by: Tony Kuker <akuker@gmail.com>
2022-12-21 20:00:37 -06:00
Daniel Markstedt
2354b62f43
Introduce FTP server option; sundry bug fixes (#1028)
* Add script to install ftp server

* Grep only the first ip address to avoid capturing the docker ip address

* Consistently use --assume-yes and --no-install-recommends with apt-get

* Capture corner case where both rascsi and piscsi groups exist

* Add CI/CD dependency of easyinstall.sh

* Update the run choices
2022-12-09 21:00:31 -08:00
Daniel Markstedt
35447cc1c6
Migrate rascsi data to piscsi with easyinstall (#1021)
Hybrid approach of:
- Always checking for legacy services for each workflow that involves installing new services, then disable and rename them.
- Check for the rascsi group, as well as old rascsi.conf, rascsi_bridge, config dir and secret file inline whenever the script interacts with them, then rename them.
- Check for the old self signed cert and key, as well as compiled protobuf libs, and delete them when the web ui is installed

Also fixed:
- the old manpage renaming script which should keep the old 'rascsi' names.
- removed the ancient apache cleanup, since it's been over 2 years now since the PHP webapp was deprecated.
- general purpose stop/disable/status functions for systemd services
- general purpose deleteFile function
- default to half of the max no. of cores for compiling
- use the SKIP_PACKAGES flag in more functions
- introduce a SKIP_MAKE_CLEAN flag
2022-12-07 10:59:15 -08:00
Daniel Markstedt
52c2aa474f
Rebrand project to PiSCSI (#1016)
* Rebrand project to PiSCSI
- rascsi ->piscsi
- rasctl -> scsictl
- rasdump -> scsidump
- ras* -> piscsi* (rasutil -> piscsi_util, etc.)

* Refined the formatting and wording of the app startup banner
* Kept some references to rascsi and rasctl where backwards compatibility is concerned
* Point to the new github repo URL

Co-authored-by: nucleogenic <nr@nucleogenic.com>
Co-authored-by: Uwe Seimet <Uwe.Seimet@seimet.de>
2022-12-05 09:58:23 -08:00
nucleogenic
88ff542aeb
Run web API test suite in GitHub Actions (#1009)
- Fixed ignore patterns in .dockerignore
- Added healthchecks to backend and web containers
- Reduced Docker image sizes
- Removed RaSCSI references in various areas (e.g. rascsi -> backend)
- Added compilation-only step to easyinstall.sh
- Moved apt package lists to variables
- Revert to triggering GitHub Actions runs on push
- Updated web/frontend_checks workflow to run black and flake8 against all Python sources
- Capture log files from backend/web containers
- Fix None to float conversion bug when user agent is absent or unrecognised
2022-12-04 14:31:57 +00:00
Daniel Markstedt
0d95890887
Get and set pretty hostname to use as system name in Web UI (#997)
- Display the pretty hostname as system name in header
- Move IP and hostname down to the footer
- New endpoint for setting the pretty hostname, plus form field in the Web UI
- (unrelated) Use platform.uname() instead of shell uname
- (unrelated) Better logic for fetching the Mac HD Drivers zip file in easyinstall.sh
2022-11-20 10:20:32 -08:00
Daniel Markstedt
a7a8510796
Bump to Netatalk 2.221101 (#983) 2022-11-11 21:35:46 -08:00
Daniel Markstedt
e8b72c48de
Introduce option to use clang++, and option to skip apt packages (#971)
- Make clang++-11 the default for compiling rascsi
- Add --with_gcc option to use g++ instead
- Add option to skip apt-get package installation (this saves a significant amount of time running the script on a Zero when you already have the required packages installed)
- Add a line to the script menu showing current options
- Surrounding cleanup
2022-11-07 18:59:19 -08:00
Daniel Markstedt
921ba7d2ed
Headless bypass for sudo -v in easyinstall (#963)
* Headless bypass for sudo check. Also, correct check for mac drivers dir.

* Remove inline sudo -v checks. There's no proof they improve anything.

* Use akuker's dropbox storage
2022-11-03 20:58:31 -07:00
Daniel Markstedt
85edd50047
Partition and format HFS/FAT volumes in the Web UI + SMB install (#946)
- New "format as" option when creating new images; removing the image creation options from easyinstall
- Bring in HFSer as new submodule providing the driver binaries; removing the Lido driver binary from this repo
- Add SpeedTools driver option
- Point to github mirror of hfdisk, since the original git server is down
- While rearranging the easyinstall options, moved the CtrlBoard option up to the main section
- Add an easyinstall script to configure Samba, while consolidating file sharing with Netatalk
2022-11-01 16:43:24 -07:00
Daniel Markstedt
08194af424
Move C++ code into cpp/ dir (#941)
- Moved C++ code to cpp/ from src/raspberrypi
- Related updates to Makefile, easyinstall.sh, and the github build rules
- Removed the native X68k C code in src/x68k from the repo
2022-10-25 12:59:30 -07:00
nucleogenic
198c10f70a
Enable web UI auth for test environment (#931) 2022-10-22 09:49:46 -07:00
Daniel Markstedt
ade656e38b
Break out frontend and backend auth options into stand alone options (#925)
* Break out frontend and backend auth options into stand alone options

* Improve the token auth checks when installing clients
2022-10-21 19:49:53 -07:00
Daniel Markstedt
ac39b3b8a3
Netatalk: Prompt user when pre-existing config is found; Append the images dir as a shared volume (#916)
* Prompt the user before continuing with installation when Netatalk config dir is detected

* Add Netatalk with images dir sharing as an experimental feature
2022-10-17 17:42:49 -07:00
Daniel Markstedt
0e4d42f04c
Use man2html to generate man pages in the Web UI (#887)
* Use man2html to generate man pages in the web UI

* Fix tests
2022-10-04 06:38:15 -07:00
nucleogenic
6ad436c085
Add --headless option to easyinstall.sh, enable web auth by default on standalone web UI installs 2022-09-26 00:00:18 +01:00
Daniel Markstedt
12b61ada84
Consistently use SI-compliant notation for file sizes (B/KiB/MiB/GiB/TiB) where appropriate. (#855) 2022-09-25 16:37:36 -05:00