Problem with permission on Linux

What do you want to achieve?

 To be able to use the program to create a simple user interface on a Xaio ESP32 with Seeed's round display on Kubuntu Linux 23.10

What have you tried so far?

 Restarting the project from scratch multiple time in a blank folder

Screenshot or video

Others

  • SquareLine Studio version:
    SquareLine_Studio_Linux_v1_3_4
  • Operating system:
    Kubuntu 23.10
  • Target hardware:
    Processors: 32 × AMD Ryzen 9 5950X 16-Core Processor
    Memory: 31.2 GiB of RAM
    Graphics Processor: AMD Radeon RX 6600 XT

Squareline Studio, Linux version 1.3.4, is creating Arduino files with no permission set. See “ls -l” output below.

 ---------- 1 randy randy 3008 Nov  9 02:42 ui.ino

Permissions for the main project files are normal. See “ls -l” output below.

 -rw-rw-r-- 1 randy randy 17711 Jan 10 10:23 SquareLine_Project.spj

This prevents Squareline Studio from resaving or modifying the files and Arduin IDE can’t open them.

Additionally, parameters set in the project are not being entered in the files that are created. For example, in “ui.ino” the screen width and height values contain the placeholder’s name vice values entered in the project settings. See below.

/Change to your screen resolution/
static const uint16_t screenWidth = UI_PROJECT_HOR_RES;
static const uint16_t screenHeight = UI_PROJECT_VER_RES;

“lv_conf.h” has the same issue. See below. Assuming it is because the values are inserted after initial file creation.

/Helper/
#define __LVGL_V8_3 (UI_LVGL_VERSION_MAJOR == 8 && UI_LVGL_VERSION_MINOR == 3)

/*====================
COLOR SETTINGS
====================/

/Color depth: 1 (1 byte per pixel), 8 (RGB332), 16 (RGB565), 32 (ARGB8888)/
#define LV_COLOR_DEPTH UI_PROJECT_COLOR_DEPTH

/Swap the 2 bytes of RGB565 color. Useful if the display has an 8-bit interface (e.g. SPI)/
#define LV_COLOR_16_SWAP UI_PROJECT_COLOR_16_SWAP

/*Enable features to draw on transparent background.
It’s required if opa, and transform_ style properties are used.
Can be also used if the UI is above another layer, e.g. an OSD menu or video player./
#define LV_COLOR_SCREEN_TRANSP (__LVGL_V8_3 ? 1 : 0)

Sincerely,
Randy

Additional info:
When I open Squareline Studio it says an error occurred in the previous session. Highlighted section from the log listed below:

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.740: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.740: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.780: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.780: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.890: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.890: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.897: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:17.897: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached
AStyle version: 3.1

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:37.949: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:37.949: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:37.972: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:37.972: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:38.030: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:38.030: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:38.143: GFileInfo created without standard::size

(SquareLine_Studio.x86_64:8735): GLib-GIO-CRITICAL **: 11:12:38.143: file …/…/…/gio/gfileinfo.c: line 1846 (g_file_info_get_size): should not be reached
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/docs/ESP32’: No such file or directory
chmod: cannot access ‘UNO’: No such file or directory
chmod: cannot access ‘board’: No such file or directory
chmod: cannot access ‘mod/ESP32’: No such file or directory
chmod: cannot access ‘UNO’: No such file or directory
chmod: cannot access ‘board’: No such file or directory
chmod: cannot access ‘mod.jpg’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/docs/ESP32’: No such file or directory
chmod: cannot access ‘UNO’: No such file or directory
chmod: cannot access ‘board’: No such file or directory
chmod: cannot access ‘mod/ESP32’: No such file or directory
chmod: cannot access ‘UNO’: No such file or directory
chmod: cannot access ‘board’: No such file or directory
chmod: cannot access ‘pinout.jpg’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/docs/PlatformIO/Configuring’: No such file or directory
chmod: cannot access ‘options.txt’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/Arduino_Life/Arduino_Life.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/Pong_v3/Pong_v3.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/RLE_Font_test/RLE_Font_test.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Char_times/TFT_Char_times.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Clock/TFT_Clock.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Clock_Digital/TFT_Clock_Digital.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Ellipse/TFT_Ellipse.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Meter_5/TFT_Meter_5.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Print_Test/TFT_Print_Test.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_Rainbow/TFT_Rainbow.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_flash_jpg/TFT_flash_jpg.ino’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_flash_jpg/jpeg1.h’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory
chmod: cannot access ‘x’: No such file or directory
chmod: cannot access ‘128/TFT_flash_jpg/jpeg2.h’: No such file or directory
chmod: cannot access ‘/home/randy/Arduino/ui_project_name/libraries/TFT_eSPI/examples/160’: No such file or directory

In the next version of SquareLine Studio the permissions will be set properly for the files/folders extracted from the board-templates on Linux. If not set in the board-template, the files/folders will get full read/write/execute permissions as a fallback to avoid a possible 000 permission. ( FYI: There’s a topic with similar question and answer: Error when exporting Project Template )

Hermit,
Thanks for the reply and info. I’ll standby waiting for the next release.

Sincerely,
Randy