Compare commits

..
55 Commits
Author SHA1 Message Date
Alexander Shaduri 49b3d2b992 Windows: Updated NSIS file to include latest files.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 13:41:26 +04:00
Alexander Shaduri 35c8efa686 Updated NEWS file.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 13:33:23 +04:00
Alexander Shaduri 3788c0f3f3 Windows: Install Adwaita hdd and optical disk icons for HiDPI support.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 13:31:28 +04:00
Alexander Shaduri f2f9e6939a Windows: Install Adwaita hdd and optical disk icons for HiDPI support.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 13:20:10 +04:00
Alexander Shaduri 21bb4cf58a Windows: Install Adwaita hdd and optical disk icons for HiDPI support.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 13:16:15 +04:00
Alexander Shaduri b73b813eba Windows: Install gdk_pixbuf loaders.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:55:36 +04:00
Alexander Shaduri 95db883018 Windows: Package missing dlls.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:42:15 +04:00
Alexander Shaduri 08c8026fde Windows: Support msys zip command.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:31:54 +04:00
Alexander Shaduri 48bef0f50b Windows: Don't install gtk settings.ini.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:27:41 +04:00
Alexander Shaduri a459490e8d Fixed Makefile.am error.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:14:26 +04:00
Alexander Shaduri 98b0c8a22d Windows packaging fixes.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:12:24 +04:00
Alexander Shaduri be8fd896da Windows: Updated configure-dev script to allow packaging debug zip versions for testing.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:12:13 +04:00
Alexander Shaduri 5f4d7883eb Increased debian package compatibility level to 9.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:11:34 +04:00
Alexander Shaduri faa1d1f296 Windows: Enable dpiAware support in manifest - Adwaita theme works with it.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:08:40 +04:00
Alexander Shaduri 61d84eebbe Windows: Set GTK_CSD=0 only if no GTK_CSD is set.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 12:01:55 +04:00
Alexander Shaduri bc321ec7eb Embed manifest file in exe.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 11:55:04 +04:00
Alexander Shaduri 9852b4de81 Fixed compilation under Windows.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 11:46:35 +04:00
Alexander Shaduri d508db41c3 Windows compilation fixes.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-04 11:39:41 +04:00
Alexander Shaduri 50e8464ecf Fixed compilation under Windows.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-03 18:03:02 +04:00
Alexander Shaduri e8494efb5f Windows packaging fixes.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-03 12:06:40 +04:00
Alexander Shaduri 3e5588229b Updated homepage URL to https://gsmartcontrol.shaduri.dev .
Updated visible copyright years.

Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-02 13:58:35 +04:00
Alexander Shaduri 4c00270d09 Bumped version to 1.1.4.
Updated NEWS file.

Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-02 13:49:43 +04:00
Alexander Shaduri b5dc08eee6 Info Window: Don't reset font weight values in tables unnecessarily.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-01 14:08:40 +04:00
Alexander Shaduri d6ebc54ab8 Info Window: Make the text views with output texts use monospace font with the new GTK versions.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-02-01 14:03:56 +04:00
Alexander Shaduri 19ffb580af Command execution popup windows: Use "dialog" type of window instead of "notifications"; this should fix #17 (the popup is floating above all the other applications). 2022-01-31 15:29:33 +04:00
Alexander Shaduri fc90686903 Add nullptr check to on_cell_data_render(), just in case. 2022-01-29 11:58:33 +04:00
Alexander Shaduri 3c031b4ee9 Changed branch names in github workflows.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-01-27 21:25:11 +04:00
Alexander Shaduri fdcdba1731 Revert "Fix barely readable info cell texts"
This reverts commit 6adac797d3.
2022-01-15 14:36:26 +04:00
Alexander Shaduri 12da26e47a Fixed a crash when system locale is set to invalid locale.
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-01-13 14:04:37 +04:00
Alexander Shaduri de2b93d990 Map gtk log levels to libdebug log levels. 2022-01-13 14:01:38 +04:00
Alexander Shaduri 1cbc491003 Fixed a few typos (backported from debian package).
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-01-13 13:48:27 +04:00
Alexander Shaduri 26a2fd9dde Support Finnish decimal separator (backported from Debian package).
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-01-13 13:47:15 +04:00
dpc 7e0a8a2b62 Add time (%H%M) to default filename in save dialog
Signed-off-by: Alexander Shaduri <ashaduri@gmail.com>
2022-01-13 13:43:46 +04:00
Harald Judt ca974f3dfa Fix barely readable info cell texts
By simply resetting values, the rendered cell text colors are barely
readable. Setting Pango::WEIGHT_NORMAL instead of resetting seems to fix this
nicely without any negative consequences.

Signed-off-by: Harald Judt <h.judt@gmx.at>
2022-01-13 13:40:16 +04:00
Alexander Shaduri 850c18b25b Set LC_NUMERIC=C for smartctl process to avoid locale-dependent number formatting. 2022-01-13 13:39:50 +04:00
Alexander Shaduri 2ca024237d Merge branch 'gsmartcontrol-gtk3' of https://github.com/ashaduri/gsmartcontrol into gsmartcontrol-gtk3 2022-01-12 18:01:26 +04:00
Alexander Shaduri 939914a5ab Fixed a crash when trying to render main window icons which have incomplete data; fixes #13 in gsmartcontrol-gtk3 branch. 2022-01-12 17:58:49 +04:00
Alexander Shaduri 0fedc62c25 Fixes for github actions (autotools). 2022-01-12 17:39:59 +04:00
Alexander Shaduri defdb35655 Fixes for github actions (autotools). 2021-12-01 18:02:49 +04:00
Alexander Shaduri e3ee616acc Fixes for github actions (autotools). 2021-12-01 18:00:41 +04:00
Alexander Shaduri 37fb4dc096 Fixes for github actions (autotools). 2021-12-01 17:57:55 +04:00
Alexander Shaduri 1637a39577 Fixes for github actions (autotools). 2021-12-01 17:54:22 +04:00
Alexander Shaduri 142b458aeb Fixes for github actions (autotools). 2021-12-01 17:44:27 +04:00
Alexander Shaduri 7cccb06950 Fixes for github actions (autotools). 2021-12-01 17:30:12 +04:00
Alexander Shaduri bcc2ef5a06 Fixes for github actions (autotools). 2021-12-01 16:57:49 +04:00
Alexander Shaduri 40eacbbb90 autogen fixes for msys. 2021-12-01 15:25:53 +04:00
Alexander Shaduri ff4b9abf27 Fixes for github actions (autotools). 2021-12-01 15:10:13 +04:00
Alexander Shaduri e9662d800f Fixes for github actions (autotools). 2021-12-01 14:52:05 +04:00
Alexander Shaduri 71273f9021 Support macos stat command in file2csource.sh. 2021-12-01 14:51:59 +04:00
Alexander Shaduri 235f79c88f Fixes for github actions (autotools). 2021-12-01 14:13:54 +04:00
Alexander Shaduri b2c0fe2190 Fixes for github actions (autotools). 2021-12-01 14:01:33 +04:00
Alexander Shaduri 66822e5900 Initial versions of github actions workflows for gtk3 branch. 2021-12-01 13:55:27 +04:00
Alexander Shaduri 2bb98a4ebe Renamed the generated "version" file to "version.txt"; this fixes #14. 2021-12-01 13:23:38 +04:00
Alexander Shaduri 8a5b411057 Removed SVN ignore files and added .gitignore and .gitattributes. 2021-12-01 13:04:08 +04:00
Alexander Shaduri 0531c20e7d Branched the gtk3 version. 2017-12-30 16:55:35 +00:00
36 changed files with 632 additions and 131 deletions
+3
View File
@@ -0,0 +1,3 @@
# Make sure github recognizes header files as C++, not C.
*.h linguist-language=C++
+171
View File
@@ -0,0 +1,171 @@
name: Build - 1.1 Branch (Tier 1 platforms)
on:
# Triggers the workflow on push or pull request events but only for the branch
push:
branches: [ release/1.1 ]
pull_request:
branches: [ release/1.1 ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
env:
SMARTMONTOOLS_INSTALLER: smartmontools-7.2-1.win32-setup.exe
SMARTMONTOOLS_URL: https://nav.dl.sourceforge.net/project/smartmontools/smartmontools/7.2/smartmontools-7.2-1.win32-setup.exe
jobs:
linux-ubuntu:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
with:
ref: release/1.1
- name: Install Dependencies
run: sudo apt-get install libpcre3-dev libgtkmm-3.0-dev gettext autoconf automake
- name: Run Autogen
shell: bash
working-directory: ${{runner.workspace}}/gsmartcontrol
run: ./autogen.sh
- name: Create Build Directory
shell: bash
run: mkdir -p ${{runner.workspace}}/build
- name: Configure
shell: bash
working-directory: ${{runner.workspace}}/build
run: >
$GITHUB_WORKSPACE/configure --prefix=/usr --enable-tests
- name: Build
shell: bash
working-directory: ${{runner.workspace}}/build
run: make
- name: Test
working-directory: ${{runner.workspace}}/build
shell: bash
run: make check
- name: Pack Source
shell: bash
working-directory: ${{runner.workspace}}/build
run: make dist
- name: Upload artifacts
uses: actions/upload-artifact@v2
with:
name: Source Packages (1.1 Branch)
path: ${{runner.workspace}}/build/gsmartcontrol-*.tar.bz2
windows-msys2:
# Disable for now, as the configure stage errors out with "The directory name is invalid."
if: ${{ false }}
runs-on: windows-latest
strategy:
matrix:
include: [
{ msystem: MINGW64, arch: x86_64, root: /mingw64 },
{ msystem: MINGW32, arch: i686, root: /mingw32 }
]
steps:
- uses: actions/checkout@v2
with:
ref: release/1.1
- uses: msys2/setup-msys2@v2
# p7zip is needed to extract smartmontools
# fontconfig owns /etc/fonts
with:
msystem: ${{ matrix.msystem }}
update: true
install: >-
mingw-w64-${{ matrix.arch }}-gtkmm3
mingw-w64-${{ matrix.arch }}-pkg-config
autoconf
automake
mingw-w64-${{ matrix.arch }}-gcc
mingw-w64-${{ matrix.arch }}-fontconfig
make
p7zip
- name: Run Autogen
shell: msys2 {0}
working-directory: ${{runner.workspace}}/gsmartcontrol
run: ./autogen.sh
- name: Create Build Directory
shell: cmd
working-directory: ${{runner.workspace}}
run: md build
- name: Configure
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build
run: ../gsmartcontrol/configure --enable-tests
- name: Build
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build
run: make
- name: Test
working-directory: ${{runner.workspace}}/build
shell: msys2 {0}
run: make check
- name: Download Package Requirements
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build
run: |
mkdir smartmontools
cd smartmontools
wget $SMARTMONTOOLS_URL
- name: Extract Package Requirements (64-bit)
if: ${{ matrix.msystem == 'MINGW64' }}
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build/smartmontools
run: >
7z -bb1 e $SMARTMONTOOLS_INSTALLER
bin64/smartctl.exe
bin64/smartctl-nc.exe
bin/update-smart-drivedb.exe
bin/drivedb.h
- name: Extract Package Requirements (32-bit)
if: ${{ matrix.msystem == 'MINGW32' }}
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build/smartmontools
run: >
7z -bb1 e $SMARTMONTOOLS_INSTALLER
bin/smartctl.exe
bin/smartctl-nc.exe
bin/update-smart-drivedb.exe
bin/drivedb.h
- name: Package ZIP
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build
run: make win-zip-dist
- name: Package NSIS
shell: msys2 {0}
working-directory: ${{runner.workspace}}/build
run: make win-dist
- name: Upload artifacts
uses: actions/upload-artifact@v2
with:
name: Windows Packages (1.1 Branch)
path: ${{runner.workspace}}/build/gsmartcontrol-*-win*.*
+88
View File
@@ -0,0 +1,88 @@
name: Build - 1.1 Branch (Tier 2 platforms)
on:
# Triggers the workflow on push or pull request events but only for the branch
push:
branches: [ release/1.1 ]
pull_request:
branches: [ release/1.1 ]
# Allows you to run this workflow manually from the Actions tab.
# This does not work for non-default branches, that's why we use the push / pull_request triggers above.
workflow_dispatch:
env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: RelWithDebInfo
jobs:
macos-homebrew:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
with:
ref: release/1.1
- name: Install Dependencies
run: brew install pkg-config gtkmm3 pcre automake autoconf
- name: Run Autogen
shell: bash
working-directory: ${{runner.workspace}}/gsmartcontrol
run: ./autogen.sh
- name: Create Build Directory
shell: bash
run: mkdir -p ${{runner.workspace}}/build
- name: Configure
shell: bash
working-directory: ${{runner.workspace}}/build
run: >
$GITHUB_WORKSPACE/configure --prefix=/usr --enable-tests
- name: Build
shell: bash
working-directory: ${{runner.workspace}}/build
run: make
- name: Test
working-directory: ${{runner.workspace}}/build
shell: bash
run: make check
freebsd:
# Disable for now, make cannot find file2csource.sh for some reason.
if: ${{ false }} # disable for now
runs-on: macos-10.15
# env:
# variables to pass to VM
# MYTOKEN : ${{ secrets.MYTOKEN }}
steps:
- uses: actions/checkout@v2
with:
ref: release/1.1
- name: Build and test in FreeBSD
id: test
uses: vmactions/freebsd-vm@v0.1.5
with:
usesh: true
mem: 2048
prepare: >
pkg install -y pkgconf gtkmm30 gettext pcre libiconv autoconf automake
run: >
./autogen.sh
mkdir build && cd build
../configure --prefix=/usr --enable-tests
make
make check
+80
View File
@@ -0,0 +1,80 @@
# Builds
/0*
/doxygen_doc*
/win32*
/win64*
/cmake-build-*
# Build system artifacts
/autom4te.cache
/aclocal.m4
/ar-lib
/compilation_flags
/compile
/config.guess
/config.h
/config.h.in
/config.log
/config.status
/config.sub
/configure
/depcomp
/gsmartcontrol.spec
/install-sh
Makefile
Makefile.in
/missing
/stamp-h1
/version.txt
*.glade.cpp
*.ui.cpp
*.txt.cpp
/data/gsmartcontrol.appdata.xml
/data/gsmartcontrol.desktop
/data/gsmartcontrol-root
/data/nsis/distribution.txt
/data/nsis/gsmartcontrol.nsi
/debian.dist/changelog
/src/gsc_winres.rc
/src/gsmartcontrol.exe.manifest
.deps
# Non-project files
/TODO
# Doxygen generated
/doxygen_doc
# OS-generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db
# IDE
/.vs
/*.pcs
/.idea
/CMakeLists.txt.user
/.kdev4
# Translations
/po/boldquot.sed
/po/en@boldquot.header
/po/en@quot.header
/po/insert-header.sin
/po/Makevars.template
/po/quot.sed
/po/remove-potcdate.sin
/po/Rules-quot
/po/gsmartcontrol.pot
/po/*.gmo
# Backup files
*~
-18
View File
@@ -1,18 +0,0 @@
0*
*.pcs
autom4te.cache
Makefile.in
configure
depcomp
config.guess
config.sub
aclocal.m4
config.h.in
compile
ar-lib
missing
install-sh
*.glade.cpp
*.ui.cpp
*.txt.cpp
.kdev4
-1
View File
@@ -1 +0,0 @@
svn propset svn:ignore -F .svnignore.txt .
+99 -55
View File
@@ -71,7 +71,8 @@ win-dist-clean: win-dist-cleanup
win-dist-prepare-all: nsis-dist-prepare win-zip-dist-prepare
# All of GTK+
# All of GTK+.
# This includes both MSYS and OpenSUSE/mingw patterns.
GTK_BIN_FILES = gdk-pixbuf-query-loaders.exe \
gspawn-win32-helper-console.exe \
gspawn-win32-helper.exe \
@@ -81,14 +82,18 @@ GTK_BIN_FILES = gdk-pixbuf-query-loaders.exe \
gtk-update-icon-cache-3.0.exe \
libatk-1.*.dll \
libatkmm-1.*.dll \
libbrotlidec.dll \
libbrotlicommon.dll \
libbz2-*.dll \
libcairo-*.dll \
libcairomm-1*.dll \
libdatrie-*.dll \
libepoxy-*.dll \
libffi-*.dll \
libexpat-*.dll \
libfontconfig-*.dll \
libfreetype-*.dll \
libfribidi-*.dll \
libgdk-3*.dll \
libgdk_pixbuf-2.*.dll \
libgdkmm-3.*.dll \
@@ -103,7 +108,7 @@ GTK_BIN_FILES = gdk-pixbuf-query-loaders.exe \
libgtk-3*.dll \
libgtkmm-3*.dll \
libharfbuzz*.dll \
libiconv*.dll \
libiconv-*.dll \
libintl*.dll \
libjasper*.dll \
libjpeg*.dll \
@@ -112,11 +117,14 @@ GTK_BIN_FILES = gdk-pixbuf-query-loaders.exe \
libpixman*.dll \
libpng16-*.dll \
libsigc-2.*.dll \
libssp-*.dll \
libstdc++-*.dll \
libthai-*.dll \
libtiff-*.dll \
libwinpthread-*.dll \
libxml2-*.dll \
zlib1.dll
zlib1.dll \
libz.dll
# Don't strip smartctl (it will only change the header), and
@@ -130,7 +138,9 @@ win-dist-prepare: all
cp $(top_srcdir)/AUTHORS.txt $(top_srcdir)/LICENSE_* $(top_srcdir)/README.txt win-dist/doc/
cp $(top_srcdir)/NEWS win-dist/doc/NEWS.txt
cp src/gsmartcontrol.exe src/gsmartcontrol.exe.manifest win-dist/
# The manifest is already embedded in exe
# cp src/gsmartcontrol.exe src/gsmartcontrol.exe.manifest win-dist/
cp src/gsmartcontrol.exe win-dist/
unix2dos win-dist/doc/*.txt
@@ -147,7 +157,12 @@ win-dist-prepare: all
$(MKDIR_P) win-dist/etc/gtk-3.0
cp -p "@WINDOWS_SYSROOT@"/etc/fonts/fonts.conf win-dist/etc/fonts/
# cp -p "@WINDOWS_SYSROOT@"/etc/gtk-3.0/im-multipress.conf win-dist/etc/gtk-3.0/
cp -p "@WINDOWS_SYSROOT@"/etc/gtk-3.0/settings.ini win-dist/etc/gtk-3.0/
# cp -p "@WINDOWS_SYSROOT@"/etc/gtk-3.0/settings.ini win-dist/etc/gtk-3.0/
# Without loaders, images and native file dialog do not work.
$(MKDIR_P) win-dist/lib
$(MKDIR_P) win-dist/lib/gdk-pixbuf-2.0
cp -p -r "@WINDOWS_SYSROOT@"/lib/gdk-pixbuf-2.0/2.10.0 win-dist/lib/gdk-pixbuf-2.0
$(MKDIR_P) win-dist/share
cp -p -r "@WINDOWS_SYSROOT@"/share/themes win-dist/share
@@ -159,66 +174,93 @@ win-dist-prepare: all
# $(MKDIR_P) win-dist/share/icons
# cp -p "@WINDOWS_SYSROOT@"/share/icons/hicolor win-dist/share/icons
# needed for window titlebar (if using client-side decorations),
# Needed for window titlebar (if using client-side decorations),
# tree sorting indicators, GUI icons.
# Note that the current Adwaita uses "ui" directory, while win32 theme expects "actions".
$(MKDIR_P) win-dist/share/icons/Adwaita
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/index.theme win-dist/share/icons/Adwaita
$(MKDIR_P) win-dist/share/icons/Adwaita/16x16/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/actions
$(MKDIR_P) win-dist/share/icons/Adwaita/16x16/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/status/dialog-information.png win-dist/share/icons/Adwaita/16x16/status
$(MKDIR_P) win-dist/share/icons/Adwaita/22x22/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/22x22/status/dialog-information.png win-dist/share/icons/Adwaita/22x22/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/16x16/status
$(MKDIR_P) win-dist/share/icons/Adwaita/16x16/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/devices/drive-harddisk.png win-dist/share/icons/Adwaita/16x16/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/16x16/devices/media-optical.png win-dist/share/icons/Adwaita/16x16/devices
# $(MKDIR_P) win-dist/share/icons/Adwaita/22x22/status
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/22x22/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/22x22/status
$(MKDIR_P) win-dist/share/icons/Adwaita/24x24/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/actions
$(MKDIR_P) win-dist/share/icons/Adwaita/24x24/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/devices/drive-harddisk.png win-dist/share/icons/Adwaita/24x24/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/devices/media-optical.png win-dist/share/icons/Adwaita/24x24/devices
$(MKDIR_P) win-dist/share/icons/Adwaita/24x24/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/status/dialog-information.png win-dist/share/icons/Adwaita/24x24/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/24x24/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/24x24/status
$(MKDIR_P) win-dist/share/icons/Adwaita/32x32/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/actions
$(MKDIR_P) win-dist/share/icons/Adwaita/32x32/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/devices/drive-harddisk.png win-dist/share/icons/Adwaita/32x32/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/devices/media-optical.png win-dist/share/icons/Adwaita/32x32/devices
$(MKDIR_P) win-dist/share/icons/Adwaita/32x32/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/status/dialog-information.png win-dist/share/icons/Adwaita/32x32/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/32x32/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/32x32/status
$(MKDIR_P) win-dist/share/icons/Adwaita/48x48/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/actions
$(MKDIR_P) win-dist/share/icons/Adwaita/48x48/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/devices/drive-harddisk.png win-dist/share/icons/Adwaita/48x48/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/devices/media-optical.png win-dist/share/icons/Adwaita/48x48/devices
$(MKDIR_P) win-dist/share/icons/Adwaita/48x48/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/status/dialog-information.png win-dist/share/icons/Adwaita/48x48/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/48x48/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/48x48/status
$(MKDIR_P) win-dist/share/icons/Adwaita/64x64/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
# $(MKDIR_P) win-dist/share/icons/Adwaita/64x64/status
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/status/dialog-information.png win-dist/share/icons/Adwaita/64x64/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/actions
# $(MKDIR_P) win-dist/share/icons/Adwaita/64x64/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/devices/drive-harddisk.png win-dist/share/icons/Adwaita/64x64/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/devices/media-optical.png win-dist/share/icons/Adwaita/64x64/devices
$(MKDIR_P) win-dist/share/icons/Adwaita/64x64/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/64x64/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/64x64/status
$(MKDIR_P) win-dist/share/icons/Adwaita/96x96/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/actions/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
# $(MKDIR_P) win-dist/share/icons/Adwaita/96x96/status
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/status/dialog-information.png win-dist/share/icons/Adwaita/96x96/status
$(MKDIR_P) win-dist/share/icons/Adwaita/256x256/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/256x256/status/dialog-information.png win-dist/share/icons/Adwaita/256x256/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/window-close-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/window-maximize-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/window-minimize-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/window-restore-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/pan-down-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/ui/pan-up-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/actions
# $(MKDIR_P) win-dist/share/icons/Adwaita/96x96/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/devices/drive-harddisk.png win-dist/share/icons/Adwaita/96x96/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/devices/media-optical.png win-dist/share/icons/Adwaita/96x96/devices
$(MKDIR_P) win-dist/share/icons/Adwaita/96x96/status
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/96x96/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/96x96/status
# $(MKDIR_P) win-dist/share/icons/Adwaita/256x256/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/256x256/devices/drive-harddisk.png win-dist/share/icons/Adwaita/256x256/devices
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/256x256/devices/media-optical.png win-dist/share/icons/Adwaita/256x256/devices
# $(MKDIR_P) win-dist/share/icons/Adwaita/256x256/status
# cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/256x256/status/dialog-information-symbolic.symbolic.png win-dist/share/icons/Adwaita/256x256/status
$(MKDIR_P) win-dist/share/icons/Adwaita/512x512/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/512x512/devices/drive-harddisk.png win-dist/share/icons/Adwaita/512x512/devices
cp -p "@WINDOWS_SYSROOT@"/share/icons/Adwaita/512x512/devices/media-optical.png win-dist/share/icons/Adwaita/512x512/devices
# other
cp -p "@WINDOWS_SYSROOT@"/bin/libgcc_s_*.dll win-dist/
@@ -246,7 +288,9 @@ win-zip-dist-prepare: win-dist-prepare
cp -a win-dist $(WIN_ZIP_NAME)
win-zip-dist-nocleanup: win-zip-dist-prepare
zip -K -9r $(WIN_ZIP_NAME).zip $(WIN_ZIP_NAME)
zip -9r $(WIN_ZIP_NAME).zip $(WIN_ZIP_NAME)
# Only when cross-compiling:
# zip -K -9r $(WIN_ZIP_NAME).zip $(WIN_ZIP_NAME)
win-zip-dist-cleanup:
rm -rf $(WIN_ZIP_NAME)
+20
View File
@@ -1,3 +1,23 @@
Version 1.1.4, released on 2022-02-04
Fixed a crash when trying to render main window icons which have incomplete
data; this fixes a rare crash when scanning devices (#13).
Fixed rendering compatibility issues with newer GTK3 versions.
Fixed build system conflict with C++20 version header (#14).
Fixed "Running command ..." dialog floating above windows of other
applications (#17).
Fixed a crash when system locale is set to invalid locale.
Support Finnish decimal separator (backported from the Debian package)
(#23).
Set LC_NUMERIC=C for smartctl process to avoid locale-dependent number
formatting (#23).
Fixed printing all GTK messages as warnings; the messages are sorted by
severity now.
Add current time to default filename in Save Output dialog.
Support macos stat command in file2csource.sh.
Fixed a few typos (backported from the Debian package).
Windows port now uses Adwaita theme due to issues with win32 theme.
Windows port is dpi-aware now.
Version 1.1.3, released on 2017-11-12
Fixed gsmartcontrol-root not launching if GDK_* variables are not set.
+1 -1
View File
@@ -25,7 +25,7 @@ behind such controllers can be manually added to GSmartControl using
"Add Device..." functionality or --add-device command-line option.
See https://www.smartmontools.org/wiki/Supported_RAID-Controllers .
https://gsmartcontrol.sourceforge.io/
https://gsmartcontrol.shaduri.dev
+4
View File
@@ -48,6 +48,7 @@ case $type in
--enable-optimize-options --enable-tests --host=i686-w64-mingw32" ;;
win32-cross-debug)
flags="PATH=\"/usr/i686-w64-mingw32/bin:/usr/i686-w64-mingw32/sys-root/mingw/bin:$PATH\" \
--with-windows-sysroot=/usr/i686-w64-mingw32/sys-root/mingw \
--enable-debug-options --enable-tests --host=i686-w64-mingw32" ;;
win64-cross)
flags="PATH=\"/usr/x86_64-w64-mingw32/bin:/usr/x86_64-w64-mingw32/sys-root/mingw/bin:$PATH\" \
@@ -55,6 +56,7 @@ case $type in
--enable-optimize-options --enable-tests --host=x86_64-w64-mingw32" ;;
win64-cross-debug)
flags="PATH=\"/usr/x86_64-w64-mingw32/bin:/usr/x86_64-w64-mingw32/sys-root/mingw/bin:$PATH\" \
--with-windows-sysroot=/usr/x86_64-w64-mingw32/sys-root/mingw \
--enable-debug-options --enable-tests --host=x86_64-w64-mingw32" ;;
win32-msys)
@@ -63,6 +65,7 @@ case $type in
--enable-optimize-options --enable-tests --host=i686-w64-mingw32" ;;
win32-msys-debug)
flags="PATH=\"/mingw32/i686-w64-mingw32:/mingw32/bin:$PATH\" \
--with-windows-sysroot=/mingw32 \
--enable-debug-options --enable-tests --host=i686-w64-mingw32" ;;
win64-msys)
flags="PATH=\"/mingw64/x86_64-w64-mingw32:/mingw64/bin:$PATH\" \
@@ -70,6 +73,7 @@ case $type in
--enable-optimize-options --enable-tests --host=x86_64-w64-mingw32" ;;
win64-msys-debug)
flags="PATH=\"/mingw64/x86_64-w64-mingw32:/mingw64/bin:$PATH\" \
--with-windows-sysroot=/mingw64 \
--enable-debug-options --enable-tests --host=x86_64-w64-mingw32" ;;
esac
+3 -11
View File
@@ -1,5 +1,5 @@
AC_INIT([GSmartControl],[1.1.3],[],[gsmartcontrol])
AC_INIT([GSmartControl],[1.1.4],[],[gsmartcontrol])
AC_CONFIG_SRCDIR([configure.ac])
AC_CONFIG_HEADERS([config.h])
@@ -474,11 +474,7 @@ AC_SUBST(AUTODIRS)
# -------------------------------------------------------------------------------------
AC_CONFIG_FILES([ data/gsmartcontrol.desktop data/gsmartcontrol.appdata.xml \
data/nsis/distribution.txt data/nsis/gsmartcontrol.nsi \
debian.dist/changelog \
src/gsc_winres.rc src/gsmartcontrol.exe.manifest \
gsmartcontrol.spec version compilation_flags ])
AC_CONFIG_FILES([data/gsmartcontrol.desktop data/gsmartcontrol.appdata.xml data/nsis/distribution.txt data/nsis/gsmartcontrol.nsi debian.dist/changelog src/gsc_winres.rc src/gsmartcontrol.exe.manifest gsmartcontrol.spec version.txt compilation_flags])
AC_CONFIG_FILES([data/gsmartcontrol-root], [chmod +x data/gsmartcontrol-root])
@@ -486,11 +482,7 @@ AC_CONFIG_FILES([data/gsmartcontrol-root], [chmod +x data/gsmartcontrol-root])
# these are all the makefiles to generate
AC_CONFIG_FILES([Makefile src/Makefile src/applib/Makefile src/res/Makefile src/hz/Makefile \
src/libdebug/Makefile src/rconfig/Makefile src/rmn/Makefile \
data/Makefile data/16/Makefile data/22/Makefile data/24/Makefile data/32/Makefile \
data/48/Makefile data/64/Makefile data/128/Makefile data/256/Makefile data/nsis/Makefile \
debian.dist/Makefile])
AC_CONFIG_FILES([Makefile src/Makefile src/applib/Makefile src/res/Makefile src/hz/Makefile src/libdebug/Makefile src/rconfig/Makefile src/rmn/Makefile data/Makefile data/16/Makefile data/22/Makefile data/24/Makefile data/32/Makefile data/48/Makefile data/64/Makefile data/128/Makefile data/256/Makefile data/nsis/Makefile debian.dist/Makefile])
AC_OUTPUT
+2 -2
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2017 GSmartControl developers -->
<!-- Copyright 2017 - 2022 GSmartControl developers -->
<component type="desktop">
<id>gsmartcontrol</id>
<metadata_license>CC0-1.0</metadata_license>
@@ -16,7 +16,7 @@
</p>
</description>
<launchable type="desktop-id">gsmartcontrol.desktop</launchable>
<url type="homepage">https://gsmartcontrol.sourceforge.io</url>
<url type="homepage">https://gsmartcontrol.shaduri.dev</url>
<screenshots>
<screenshot type="default">
<caption>Main window</caption>
+1 -1
View File
@@ -4,7 +4,7 @@ Version @VERSION@
The latest version of this distribution, as well as the source code of
GSmartControl, can be found at
https://gsmartcontrol.sourceforge.io
https://gsmartcontrol.shaduri.dev
and
https://sourceforge.net/projects/gsmartcontrol/files/
+5 -3
View File
@@ -4,11 +4,13 @@
; Compatible with NSIS Unicode 2.45.
; Public Domain
Unicode True
!define PRODUCT_VERSION "@VERSION@"
!define PRODUCT_NAME "GSmartControl"
!define PRODUCT_NAME_SMALL "gsmartcontrol"
!define PRODUCT_PUBLISHER "Alexander Shaduri"
!define PRODUCT_WEB_SITE "https://gsmartcontrol.sourceforge.io"
!define PRODUCT_WEB_SITE "https://gsmartcontrol.shaduri.dev"
;!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\AppMainExe.exe"
!define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
@@ -134,7 +136,6 @@ SectionIn 1 RO
SetOverwrite On
File *.exe
File *.dll
File gsmartcontrol.exe.manifest
File gsmartcontrol.ico
File icon_*.png
File drivedb.h
@@ -145,6 +146,7 @@ SectionIn 1 RO
; GTK and stuff
File /r etc
File /r share
File /r lib
; Add Shortcuts (this inherits the exe's run permissions)
CreateShortCut "$SMPROGRAMS\GSmartControl.lnk" "$INSTDIR\gsmartcontrol.exe" "" \
@@ -226,7 +228,6 @@ Section Uninstall
Delete "$INSTDIR\*.exe"
Delete "$INSTDIR\*.dll"
Delete "$INSTDIR\gsmartcontrol.exe.manifest"
Delete "$INSTDIR\gsmartcontrol.ico"
Delete "$INSTDIR\icon_*.png"
@@ -239,6 +240,7 @@ Section Uninstall
; GTK and stuff
RMDir /r "$INSTDIR\etc"
RMDir /r "$INSTDIR\share"
RMDir /r "$INSTDIR\lib"
; clean up generated stuff
Delete "$INSTDIR\*stdout.txt"
+1 -1
View File
@@ -1 +1 @@
5
9
+1 -1
View File
@@ -1,7 +1,7 @@
Source: gsmartcontrol
Section: utils
Priority: extra
Homepage: https://gsmartcontrol.sourceforge.io/
Homepage: https://gsmartcontrol.shaduri.dev
Maintainer: Alexander Shaduri <ashaduriREMOVETHIS@gmail.com>
Build-Depends: debhelper (>= 5), autotools-dev,
libpcre3-dev, libgtkmm-3.0-dev (>= 3.4.0)
+3 -3
View File
@@ -1,11 +1,11 @@
This package was debianized by Alexander Shaduri <ashaduri 'at' gmail.com> on
Sat, 15 Nov 2008 00:12:04 +0400.
It was downloaded from <https://gsmartcontrol.sourceforge.io/>
It was downloaded from <https://gsmartcontrol.shaduri.dev>
Copyright:
Copyright (C) 2008 - 2017 Alexander Shaduri <ashaduri 'at' gmail.com>
Copyright (C) 2008 - 2022 Alexander Shaduri <ashaduri 'at' gmail.com>
License:
@@ -27,6 +27,6 @@ On Debian systems, the complete text of the GNU General
Public Licenses can be found in `/usr/share/common-licenses/GPL-2' and
`/usr/share/common-licenses/GPL-3'.
The Debian packaging is (C) 2008 - 2017 Alexander Shaduri <ashaduri 'at' gmail.com> and
The Debian packaging is (C) 2008 - 2022 Alexander Shaduri <ashaduri 'at' gmail.com> and
is licensed under the GPLv2 and GPLv3, see above.
+6 -1
View File
@@ -24,7 +24,12 @@ fi
in_file="$1";
out_file="$2";
sym_name="$3";
size=`stat -c "%s" "$in_file"`
size="";
if [[ $OSTYPE == 'darwin'* ]]; then
size=`stat "-f%z" "$in_file"`
else
size=`stat -c "%s" "$in_file"`
fi
# header. extern means "global" in this context (needed because const
+1 -1
View File
@@ -6,7 +6,7 @@ Name: gsmartcontrol
Version: @VERSION@
Release: 0
License: GPL-2.0 AND GPL-3.0
Url: https://gsmartcontrol.sourceforge.io/
Url: https://gsmartcontrol.shaduri.dev
Vendor: Alexander Shaduri <ashaduri 'at' gmail.com>
# Packager: Alexander Shaduri <ashaduri 'at' gmail.com>
Source: http://sourceforge.net/projects/gsmartcontrol/files/%{version}/%{name}-%{version}.tar.bz2
+6 -1
View File
@@ -131,7 +131,7 @@ bool Cmdex::execute()
#endif
hz::ScopedEnv lang_env("LANG", "C", change_lang);
hz::ScopedEnv lc_numeric_env("LC_NUMERIC", "C", change_lang);
debug_out_info("app", DBG_FUNC_MSG << "Executing \"" << cmd << "\".\n");
/*
@@ -253,8 +253,13 @@ bool Cmdex::execute()
bool Cmdex::try_stop(hz::signal_t sig)
{
DBG_FUNCTION_ENTER_MSG;
#ifdef _WIN32
if (!this->running_ || this->pid_ == 0)
return false;
#else
if (!this->running_ || this->pid_ <= 0)
return false;
#endif
// other variants: SIGHUP(1) (terminal closed), SIGINT(2) (Ctrl-C),
// SIGKILL(9) (kill).
+1 -1
View File
@@ -29,7 +29,7 @@ bool CmdexSyncGui::execute()
#define CMDEX_DIALOG_MESSAGE_TYPE Gtk::MESSAGE_OTHER
#define CMDEX_DIALOG_HINT_TYPE Gdk::WINDOW_TYPE_HINT_NOTIFICATION
#define CMDEX_DIALOG_HINT_TYPE Gdk::WINDOW_TYPE_HINT_DIALOG
+1
View File
@@ -345,6 +345,7 @@ std::string SmartctlParser::parse_byte_size(const std::string& str, uint64_t& by
to_replace.push_back(",");
to_replace.push_back(".");
to_replace.push_back(std::string(1, 0xa0));
to_replace.push_back(std::string(1, 0xc2));
#ifdef _WIN32
// if current locale is C, then probably we didn't change it at application
+2 -2
View File
@@ -110,7 +110,7 @@ std::map<char, DriveLetterInfo> win32_get_drive_letter_map()
for (char c = 'A'; c <= 'Z'; ++c) {
if (drives[c - 'A']) { // drive is present
debug_out_dump("app", "Windows drive found: " << c << ".\n");
if (GetDriveType((c + string(":\\")).c_str()) == DRIVE_FIXED) {
if (GetDriveType((c + std::string(":\\")).c_str()) == DRIVE_FIXED) {
debug_out_dump("app", "Windows drive " << c << " is fixed.\n");
good_drives.push_back(c);
}
@@ -120,7 +120,7 @@ std::map<char, DriveLetterInfo> win32_get_drive_letter_map()
// Try to open each drive, check its disk extents
for (std::size_t i = 0; i < good_drives.size(); ++i) {
char drive = good_drives[i];
string drive_str = string("\\\\.\\") + drive + ":";
std::string drive_str = std::string("\\\\.\\") + drive + ":";
HANDLE h = CreateFileA(
drive_str.c_str(), GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL,
OPEN_EXISTING, FILE_FLAG_NO_BUFFERING | FILE_FLAG_RANDOM_ACCESS, NULL);
+1 -1
View File
@@ -815,7 +815,7 @@ std::string StorageDevice::get_save_filename() const
{
std::string model = this->get_model_name(); // may be empty
std::string serial = this->get_serial_number();
std::string date = hz::format_date("%Y-%m-%d", false);
std::string date = hz::format_date("%Y-%m-%d_%H%M", true);
std::string filename_format;
rconfig::get_data("gui/smartctl_output_filename_format", filename_format);
+24 -4
View File
@@ -43,7 +43,12 @@ std::string StorageAttribute::format_raw_value() const
// If it's fully a number, format it with commas
if (hz::number_to_string(raw_value_int) == raw_value) {
std::stringstream ss;
ss.imbue(std::locale(""));
try {
ss.imbue(std::locale(""));
}
catch (const std::runtime_error& e) {
// something is wrong with system locale, can't do anything here.
}
ss << std::fixed << raw_value_int;
return ss.str();
}
@@ -71,7 +76,12 @@ std::string StorageStatistic::format_value() const
// If it's fully a number, format it with commas
if (hz::number_to_string(value_int) == value) {
std::stringstream ss;
ss.imbue(std::locale(""));
try {
ss.imbue(std::locale(""));
}
catch (const std::runtime_error& e) {
// something is wrong with system locale, can't do anything here.
}
ss << std::fixed << value_int;
return ss.str();
}
@@ -153,7 +163,12 @@ int StorageErrorBlock::get_warning_level_for_error_type(std::string& type)
std::string StorageErrorBlock::format_lifetime_hours() const
{
std::stringstream ss;
ss.imbue(std::locale(""));
try {
ss.imbue(std::locale(""));
}
catch (const std::runtime_error& e) {
// something is wrong with system locale, can't do anything here.
}
ss << std::fixed << lifetime_hours;
return ss.str();
}
@@ -173,7 +188,12 @@ std::ostream& operator<< (std::ostream& os, const StorageErrorBlock& b)
std::string StorageSelftestEntry::format_lifetime_hours() const
{
std::stringstream ss;
ss.imbue(std::locale(""));
try {
ss.imbue(std::locale(""));
}
catch (const std::runtime_error& e) {
// something is wrong with system locale, can't do anything here.
}
ss << std::fixed << lifetime_hours;
return ss.str();
}
+1 -1
View File
@@ -1677,7 +1677,7 @@ StorageProperty::warning_t storage_property_autoset_warning(StorageProperty& p)
} else if (name_match(p, "smart_enabled") && !p.value_bool) {
w = StorageProperty::warning_notice;
reason = "SMART is disabled. You shoud enable it to read any SMART information from this drive. "
reason = "SMART is disabled. You should enable it to read any SMART information from this drive. "
"Additionally, some drives do not log useful data with SMART disabled, so it's advisable to keep it always enabled.";
} else if (name_match(p, "info_warning")) {
+2 -2
View File
@@ -40,7 +40,7 @@ GscAboutDialog::GscAboutDialog(BaseObjectType* gtkcobj, const app_ui_res_ref_t&
set_version(VERSION);
// set these properties here (after setting hooks) to make the links work.
set_website("https://gsmartcontrol.sourceforge.io/");
set_website("https://gsmartcontrol.shaduri.dev");
set_license(LicenseTextResData().get_string());
@@ -50,7 +50,7 @@ GscAboutDialog::GscAboutDialog(BaseObjectType* gtkcobj, const app_ui_res_ref_t&
// #endif
// spammers go away
set_copyright("Copyright (C) 2008 - 2017 Alexander Shaduri " "<ashaduri" "" "@" "" "" "gmail.com>");
set_copyright("Copyright (C) 2008 - 2022 Alexander Shaduri " "<ashaduri" "" "@" "" "" "gmail.com>");
std::string authors_str = AuthorsTextResData().get_string();
+36 -5
View File
@@ -127,10 +127,12 @@ namespace {
crt->property_cell_background().reset_value();
crt->property_foreground().reset_value();
}
if (p->value_statistic.is_header) {
crt->property_weight() = Pango::WEIGHT_BOLD;
} else {
crt->property_weight().reset_value();
if (p->value_type == StorageProperty::value_type_statistic) {
if (p->value_statistic.is_header) {
crt->property_weight() = Pango::WEIGHT_BOLD;
} else {
crt->property_weight().reset_value();
}
}
}
}
@@ -1128,8 +1130,12 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (buffer) {
buffer->set_text("\nComplete error log:\n\n" + iter->value_string);
// set marks so we can scroll to them
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
// Set marks so we can scroll to them
if (!error_log_row_selected_conn.connected()) { // avoid double-connect
error_log_row_selected_conn = treeview->get_selection()->signal_changed().connect(
sigc::bind(sigc::bind(sigc::ptr_fun(on_error_log_treeview_row_selected), col_mark_name), this));
@@ -1240,6 +1246,11 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (iter->generic_name == "scttemp_log") {
Glib::RefPtr<Gtk::TextBuffer> buffer = textview->get_buffer();
buffer->set_text("\nComplete SCT temperature log:\n\n" + iter->value_string);
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
}
}
@@ -1385,6 +1396,11 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (iter->generic_name == "scterc_log") {
Glib::RefPtr<Gtk::TextBuffer> buffer = textview->get_buffer();
buffer->set_text("\nComplete SCT Error Recovery Control settings:\n\n" + iter->value_string);
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
}
}
@@ -1418,6 +1434,11 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (iter->generic_name == "selective_selftest_log") {
Glib::RefPtr<Gtk::TextBuffer> buffer = textview->get_buffer();
buffer->set_text("\nComplete selective self-test log:\n\n" + iter->value_string);
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
}
}
@@ -1451,6 +1472,11 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (iter->generic_name == "sataphy_log") {
Glib::RefPtr<Gtk::TextBuffer> buffer = textview->get_buffer();
buffer->set_text("\nComplete phy log:\n\n" + iter->value_string);
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
}
}
@@ -1484,6 +1510,11 @@ void GscInfoWindow::fill_ui_with_info(bool scan, bool clear_ui, bool clear_tests
if (iter->generic_name == "directory_log") {
Glib::RefPtr<Gtk::TextBuffer> buffer = textview->get_buffer();
buffer->set_text("\nComplete directory log:\n\n" + iter->value_string);
// Make the text monospace (the 3.16+ glade property does not work anymore for some reason).
Glib::RefPtr<Gtk::TextTag> tag = buffer->create_tag();
tag->property_family() = "Monospace";
buffer->apply_tag(tag, buffer->begin(), buffer->end());
}
}
+26 -4
View File
@@ -192,7 +192,26 @@ extern "C" {
const gchar* message, gpointer user_data)
{
// log_domain is already printed as part of message.
debug_print_error("gtk", "%s\n", message);
switch(log_level) {
case G_LOG_FLAG_RECURSION:
case G_LOG_FLAG_FATAL:
case G_LOG_LEVEL_ERROR: // fatal
case G_LOG_LEVEL_CRITICAL:
debug_print_error("gtk", "%s\n", message);
break;
case G_LOG_LEVEL_WARNING:
debug_print_warn("gtk", "%s\n", message);
break;
case G_LOG_LEVEL_MESSAGE:
case G_LOG_LEVEL_INFO:
debug_print_info("gtk", "%s\n", message);
break;
case G_LOG_LEVEL_DEBUG:
debug_print_dump("gtk", "%s\n", message);
break;
case G_LOG_LEVEL_MASK:
break;
}
}
}
@@ -307,7 +326,7 @@ namespace {
std::string warningtext = std::string("\nWarning: GSmartControl");
warningtext += " comes with ABSOLUTELY NO WARRANTY.\n";
warningtext += "See LICENSE_gsmartcontrol.txt file for details.\n";
warningtext += "\nCopyright (C) 2008 - 2017 Alexander Shaduri <ashaduri" "" "@" "" "" "gmail.com>\n\n";
warningtext += "\nCopyright (C) 2008 - 2022 Alexander Shaduri <ashaduri" "" "@" "" "" "gmail.com>\n\n";
std::fprintf(stdout, "%s%s", versiontext.c_str(), warningtext.c_str());
}
@@ -323,8 +342,11 @@ bool app_init_and_loop(int& argc, char**& argv)
// Glib::thread_init();
#ifdef _WIN32
// Disable client-side decorations (enable native windows decorations) under Windows.
hz::env_set_value("GTK_CSD", "0");
std::string csd_value;
if (!hz::env_get_value("GTK_CSD", csd_value)) { // if not set
// Disable client-side decorations (enable native windows decorations) under Windows.
hz::env_set_value("GTK_CSD", "0");
}
#endif
// Glib needs the C locale set to system locale for command line args.
+4
View File
@@ -1203,6 +1203,10 @@ bool GscMainWindow::testing_active() const
GscInfoWindow* GscMainWindow::show_device_info_window(StorageDeviceRefPtr drive)
{
if (!drive) {
return 0;
}
// if a test is being run on it, disallow.
if (drive->get_test_is_active()) {
gui_show_warn_dialog("Please wait until the test is finished on this drive.", this);
+28 -5
View File
@@ -69,6 +69,8 @@ class GscMainWindowIconView : public Gtk::IconView {
columns.add(col_drive_ptr);
columns.add(col_populated);
// create a Tree Model
ref_list_model = Gtk::ListStore::create(columns);
// ref_list_model->set_sort_column(col_name, Gtk::SORT_ASCENDING);
@@ -207,7 +209,14 @@ class GscMainWindowIconView : public Gtk::IconView {
void on_cell_data_render(const Gtk::TreeModel::const_iterator& iter)
{
Gtk::TreeRow row = *iter;
if (!row[col_populated]) { // protect against rendering incomplete model entry
return;
}
Glib::RefPtr<Gdk::Pixbuf> pixbuf = row[col_pixbuf];
if (!pixbuf) {
return;
}
// Gtkmm property_surface() doesn't work, so use plain C.
// https://bugzilla.gnome.org/show_bug.cgi?id=788513
@@ -241,6 +250,8 @@ class GscMainWindowIconView : public Gtk::IconView {
this->decorate_entry(row);
row[col_populated] = true; // triggers rendering
drive->signal_changed.connect(sigc::mem_fun(this, &GscMainWindowIconView::on_drive_changed));
if (scroll_to_it) {
@@ -279,6 +290,9 @@ class GscMainWindowIconView : public Gtk::IconView {
void decorate_entry(Gtk::TreeModel::Row& row)
{
StorageDeviceRefPtr drive = row[col_drive_ptr];
if (!drive) {
return;
}
// it needs this space to be symmetric (why?);
std::string name; // = "<big>" + drive->get_device_with_type() + " </big>\n";
@@ -473,8 +487,11 @@ class GscMainWindowIconView : public Gtk::IconView {
} else { // enable drives menu, set proper smart toggles
Gtk::TreePath model_path = *(this->get_selected_items().begin());
Gtk::TreeModel::Row row = *(ref_list_model->get_iter(model_path));
StorageDeviceRefPtr drive = row[col_drive_ptr];
if (!row[col_populated]) { // protect against using incomplete model entry
return;
}
StorageDeviceRefPtr drive = row[col_drive_ptr];
main_window->set_drive_menu_status(drive);
}
}
@@ -488,8 +505,11 @@ class GscMainWindowIconView : public Gtk::IconView {
return;
Gtk::TreeModel::Row row = *(ref_list_model->get_iter(model_path));
StorageDeviceRefPtr drive = row[col_drive_ptr];
if (!row[col_populated]) { // protect against using incomplete model entry
return;
}
StorageDeviceRefPtr drive = row[col_drive_ptr];
main_window->show_device_info_window(drive);
}
@@ -536,9 +556,11 @@ class GscMainWindowIconView : public Gtk::IconView {
this->unselect_all(); // unselect on empty area right-click
}
Gtk::Menu* menu = main_window->get_popup_menu(drive);
if (menu)
menu->popup(event_button->button, event_button->time);
if (drive) {
Gtk::Menu* menu = main_window->get_popup_menu(drive);
if (menu)
menu->popup(event_button->button, event_button->time);
}
return true; // stop handling
}
@@ -568,6 +590,7 @@ class GscMainWindowIconView : public Gtk::IconView {
Gtk::TreeModelColumn<Glib::ustring> col_description; ///< Model column
Gtk::TreeModelColumn<Glib::RefPtr<Gdk::Pixbuf> > col_pixbuf; ///< Model column
Gtk::TreeModelColumn<StorageDeviceRefPtr> col_drive_ptr; ///< Model column
Gtk::TreeModelColumn<bool> col_populated; ///< Model column, indicates whether the model entry has been fully populated.
Glib::RefPtr<Gtk::ListStore> ref_list_model; ///< The icon view model
unsigned int num_icons; ///< Track the number of icons, because liststore makes it difficult to count them.
+4 -1
View File
@@ -1,6 +1,9 @@
gsmartcontrol ICON "gsmartcontrol.ico"
// Embed manifest in exe
1 24 "gsmartcontrol.exe.manifest"
1 VERSIONINFO
FILEVERSION 0,0,0,0
PRODUCTVERSION 0,0,0,0
@@ -14,7 +17,7 @@ BEGIN
VALUE "FileDescription", "GSmartControl - Hard disk drive and SSD health inspection tool"
VALUE "FileVersion", "@VERSION@"
VALUE "InternalName", "gsmartcontrol.exe"
VALUE "LegalCopyright", "Copyright (C) 2008 - 2017 Alexander Shaduri"
VALUE "LegalCopyright", "Copyright (C) 2008 - 2022 Alexander Shaduri"
VALUE "OriginalFilename", "gsmartcontrol.exe"
VALUE "ProductName", "GSmartControl"
VALUE "ProductVersion", "@VERSION@"
+4 -2
View File
@@ -18,10 +18,12 @@
</ms_asmv2:security>
</ms_asmv2:trustInfo>
<!-- GTK3 applications aren't quite dpi-aware -->
<!-- GTK3 applications aren't quite dpi-aware with win32 theme, among other
visual issues.
On the other hand, HiDPI Adwaita works (it also looks slightly like win11 theme), so we prefer that. -->
<asmv3:application>
<asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
<dpiAware>false</dpiAware>
<dpiAware>true</dpiAware>
</asmv3:windowsSettings>
</asmv3:application>
+1 -1
View File
@@ -195,7 +195,7 @@ namespace internal {
inline int process_signal_send(process_id_t process_handle, signal_t sig)
{
if (process_handle <= 0) {
if (process_handle == 0) {
errno = ESRCH; // The pid or process group does not exist.
return -1;
}
+2 -2
View File
@@ -225,7 +225,7 @@
<object class="GtkEntry" id="smartctl_options_entry">
<property name="visible">True</property>
<property name="can_focus">True</property>
<property name="tooltip_text" translatable="yes">Global parameters for smartctl. These parameters will be used every time the progam invokes smartctl. Must be shell-escaped.</property>
<property name="tooltip_text" translatable="yes">Global parameters for smartctl. These parameters will be used every time the program invokes smartctl. Must be shell-escaped.</property>
<property name="activates_default">True</property>
<property name="primary_icon_activatable">False</property>
<property name="secondary_icon_activatable">False</property>
@@ -239,7 +239,7 @@
<object class="GtkLabel" id="label8">
<property name="visible">True</property>
<property name="can_focus">False</property>
<property name="tooltip_text" translatable="yes">Global parameters for smartctl. These parameters will be used every time the progam invokes smartctl. Must be shell-escaped.</property>
<property name="tooltip_text" translatable="yes">Global parameters for smartctl. These parameters will be used every time the program invokes smartctl. Must be shell-escaped.</property>
<property name="halign">start</property>
<property name="label" translatable="yes">Smartctl parameters:</property>
<property name="use_underline">True</property>
View File