Compare commits

..

7 Commits

Author SHA1 Message Date
e8914c63fb CMakeLists.txt: declare compatibility with 3.27
All checks were successful
Arch Linux AUR Success
Alpine 3.19 Success
Sadly, the 3.5 deprecation warning doesn't go away after this.
2023-08-01 03:19:35 +02:00
529ad4a27b README.adoc: update package information 2023-07-01 22:00:19 +02:00
e137182417 Add clang-format configuration, clean up 2021-10-30 03:03:04 +02:00
5ffdd26e59 Bump minimum CMake version, related clean up 2020-10-29 16:28:18 +01:00
be98666db2 Fix looks, update screenshot, update README information 2020-08-28 22:58:11 +02:00
197cd20d6c Add an old screenshot to the README 2020-08-22 09:43:10 +02:00
083f11965d Name change 2020-08-22 09:30:50 +02:00
9 changed files with 56 additions and 23 deletions

34
.clang-format Normal file
View File

@@ -0,0 +1,34 @@
# clang-format is fairly limited, and these rules are approximate:
# - array initializers can get terribly mangled with clang-format 12.0,
# - sometimes it still aligns with space characters,
# - struct name NL { NL ... NL } NL name; is unachievable.
BasedOnStyle: GNU
ColumnLimit: 80
IndentWidth: 4
TabWidth: 4
UseTab: ForContinuationAndIndentation
BreakBeforeBraces: Allman
SpaceAfterCStyleCast: true
AlignAfterOpenBracket: DontAlign
AlignOperands: DontAlign
AlignConsecutiveMacros: Consecutive
AllowAllArgumentsOnNextLine: false
AllowAllParametersOfDeclarationOnNextLine: false
IndentGotoLabels: false
# IncludeCategories has some potential, but it may also break the build.
# Note that the documentation says the value should be "Never".
SortIncludes: false
# Must be kept synchronized with gi18n.h
WhitespaceSensitiveMacros: ['_', 'Q_', 'N_', 'C_', 'NC_']
# This is a compromise, it generally works out aesthetically better.
BinPackArguments: false
# Unfortunately, this can't be told to align to column 40 or so.
SpacesBeforeTrailingComments: 2
# GLib-specific macro body wrappers.
MacroBlockBegin: "G_STMT_START"
MacroBlockEnd: "G_STMT_END"

View File

@@ -1,6 +1,5 @@
cmake_minimum_required (VERSION 2.8.5)
project (sensei-raw-ctl C)
set (project_VERSION "1.0")
cmake_minimum_required (VERSION 3.0...3.27)
project (sensei-raw-ctl VERSION 1.0 LANGUAGES C)
find_package (PkgConfig REQUIRED)
pkg_check_modules (dependencies REQUIRED libusb-1.0)
@@ -51,7 +50,7 @@ if (BUILD_GUI)
target_link_libraries (${PROJECT_NAME}-gui ${gtk3_LIBRARIES})
install (TARGETS ${PROJECT_NAME}-gui
DESTINATION ${CMAKE_INSTALL_BINDIR})
endif (BUILD_GUI)
endif ()
find_program (HELP2MAN_EXECUTABLE help2man)
if (NOT HELP2MAN_EXECUTABLE)
@@ -77,18 +76,17 @@ foreach (page ${project_MAN_PAGES})
endforeach ()
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "SteelSeries Sensei Raw control utility")
set (CPACK_PACKAGE_VERSION ${project_VERSION})
set (CPACK_PACKAGE_VENDOR "Premysl Janouch")
set (CPACK_PACKAGE_CONTACT "Přemysl Janouch <p@janouch.name>")
set (CPACK_PACKAGE_VENDOR "Premysl Eric Janouch")
set (CPACK_PACKAGE_CONTACT "Přemysl Eric Janouch <p@janouch.name>")
set (CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE")
set (CPACK_GENERATOR "TGZ;ZIP")
set (CPACK_PACKAGE_FILE_NAME
"${PROJECT_NAME}-${project_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
"${PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}")
set (CPACK_SOURCE_GENERATOR "TGZ;ZIP")
set (CPACK_SOURCE_IGNORE_FILES "/\\\\.git;/build;/CMakeLists.txt.user")
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${project_VERSION}")
set (CPACK_SOURCE_PACKAGE_FILE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}")
set (CPACK_SET_DESTDIR TRUE)
include (CPack)

View File

@@ -1,4 +1,4 @@
Copyright (c) 2013, Přemysl Janouch <p@janouch.name>
Copyright (c) 2013, Přemysl Eric Janouch <p@janouch.name>
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

View File

@@ -10,7 +10,10 @@ Run `sensei-raw-ctl --help` or `man sensei-raw-ctl` for usage information.
If you don't fancy command line tools, there's also a basic GTK+ frontend
available. On Ubuntu and its derivatives, you should be able to find it in your
System Settings.
System Settings, though this feature has disappeared completely with newer GNOME
versions.
image::sensei-raw-ctl-gui.png[align="center"]
Supported devices
-----------------
@@ -20,12 +23,14 @@ Supported devices
Packages
--------
Regular releases are sporadic. git master should be stable enough. You can get
a package with the latest development version from Archlinux's AUR.
Regular releases are sporadic. git master should be stable enough.
You can get a package with the latest development version using Arch Linux's
https://aur.archlinux.org/packages/sensei-raw-ctl-git[AUR],
or as a https://git.janouch.name/p/nixexprs[Nix derivation].
Installation
------------
Build dependencies: cmake >= 2.8.5, help2man +
Build dependencies: cmake >= 3.0, help2man +
Runtime dependencies: libusb >= 1.0, gtk+ >= 3.0 (optional)
$ git clone https://git.janouch.name/p/sensei-raw-ctl.git
@@ -46,9 +51,6 @@ For Debian-based distros, you can do the following instead of the last step:
$ cpack -G DEB
# dpkg -i sensei-raw-ctl-*.deb
Note that for versions of CMake before 2.8.9, you need to prefix `cpack` with
`fakeroot` or file ownership will end up wrong.
Contributing and Support
------------------------
Use https://git.janouch.name/p/sensei-raw-ctl to report bugs, request features,

View File

@@ -2,7 +2,7 @@
#define CONFIG_H
#define PROJECT_NAME "${CMAKE_PROJECT_NAME}"
#define PROJECT_VERSION "${project_VERSION}"
#define PROJECT_VERSION "${PROJECT_VERSION}"
#cmakedefine DEVELOPER_MODE
#ifdef DEVELOPER_MODE

View File

@@ -3,7 +3,7 @@
*
* Very tightly coupled with the sensei-raw-ctl utility.
*
* Copyright (c) 2013, Přemysl Janouch <p@janouch.name>
* Copyright (c) 2013, Přemysl Eric Janouch <p@janouch.name>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted.
@@ -395,4 +395,3 @@ main (int argc, char *argv[])
g_object_unref (builder);
return 0;
}

BIN
sensei-raw-ctl-gui.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -31,6 +31,7 @@
<property name='border-width'>10</property>
<child><object class='GtkNotebook' id='notebook'>
<property name='show-tabs'>FALSE</property>
<property name='show-border'>FALSE</property>
<child><object class='GtkHBox' id='probing_box'>
<property name='halign'>GTK_ALIGN_CENTER</property>
<property name='valign'>GTK_ALIGN_CENTER</property>

View File

@@ -6,7 +6,7 @@
*
* The code might be a bit long but does very little; most of it is UI.
*
* Copyright (c) 2013 - 2016, Přemysl Janouch <p@janouch.name>
* Copyright (c) 2013 - 2016, Přemysl Eric Janouch <p@janouch.name>
*
* Permission to use, copy, modify, and/or distribute this software for any
* purpose with or without fee is hereby granted.
@@ -73,7 +73,7 @@ find_device (int vendor, int product, int *error)
}
out_free:
libusb_free_device_list(list, 1);
libusb_free_device_list (list, 1);
out:
if (error != NULL && err != 0)
*error = err;
@@ -621,4 +621,3 @@ error_1:
error_0:
return status;
}