Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - dev-kasibhatla/system_info3: Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user). · GitHub
Skip to content

Repository files navigation

system_info3

system_info3 provides easy access to essential system information, including details about your system's architecture, kernel, memory, operating system, CPU, and user environment.

This is a fork of system_info2, maintained after the original author stepped down. Thanks to the previous contributors for their work on the original package.

With system_info3, you can easily retrieve key hardware and OS characteristics, such as:

  • Kernel architecture
  • Kernel bitness
  • Kernel name
  • Kernel version
  • Operating system name
  • Operating system version
  • User directory
  • User id
  • User name
  • User space bitness
  • Physical memory and swap details
  • CPU information

Getting Started

  1. Install the package

Dart

dart pub add system_info3

Flutter

flutter pub add system_info3
  1. Import the package
import'package:system_info3/system_info3.dart';
  1. Use the package

Example

if (SysInfo.operatingSystemName =="Ubuntu") {
log.info("We love Ubuntu users");
}

Screenshot

Screenshot

Compatibility

  • Windows
  • Linux
  • MacOS
  • Android
  • iOS

Usage

This package provides various system information like kernel details, operating system information, CPU specifications, and memory statistics. Below is a guide on how to use the package in different categories. Refer to the API documentation for more details on the available classes and methods.

1. Kernel Information

You can retrieve details about the system's kernel architecture, version, and other kernel-related information.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Kernel architecture : ${SysInfo.kernelArchitecture}');
print('Raw Kernel architecture : ${SysInfo.rawKernelArchitecture}');
print('Kernel bitness : ${SysInfo.kernelBitness}');
print('Kernel name : ${SysInfo.kernelName}');
print('Kernel version : ${SysInfo.kernelVersion}');
}

Available Kernel Information:

  • kernelArchitecture: The architecture of the kernel (e.g., x86_64, arm64).
  • rawKernelArchitecture: The raw architecture of the kernel.
  • kernelBitness: The bitness of the kernel (e.g., 32-bit or 64-bit).
  • kernelName: The name of the kernel (e.g., Linux, Darwin).
  • kernelVersion: The version of the kernel.

2. Operating System (OS) Information

You can get details about the operating system, user information, and the system's user environment.

import'package:system_info3/system_info3.dart';
voidmain() {
print('Operating system name : ${SysInfo.operatingSystemName}');
print('Operating system version: ${SysInfo.operatingSystemVersion}');
print('User directory : ${SysInfo.userDirectory}');
print('User id : ${SysInfo.userId}');
print('User name : ${SysInfo.userName}');
print('User space bitness : ${SysInfo.userSpaceBitness}');
}

Available OS Information:

  • operatingSystemName: The name of the operating system (e.g., Windows, Linux, macOS).
  • operatingSystemVersion: The version of the operating system.
  • userDirectory: The directory of the current user.
  • userId: The ID of the current user.
  • userName: The name of the current user.
  • userSpaceBitness: The bitness of the user space (32-bit or 64-bit).

3. CPU Information

This section provides details about the CPU, such as the number of cores and their specific characteristics.

import'package:system_info3/system_info3.dart';
voidmain() {
final cores =SysInfo.cores;
print('Number of cores : ${cores.length}');
for (final core in cores) {
print(' Architecture : ${core.architecture}');
print(' Name : ${core.name}');
print(' Socket : ${core.socket}');
print(' Vendor : ${core.vendor}');
}
}

Available CPU Information:

  • cores: A list of CPU cores with details such as architecture, name, socket, and vendor.
    • architecture: The architecture of the core (e.g., x86_64, arm).
    • name: The name of the CPU core (e.g., Intel(R) Core(TM) i7-9700K).
    • socket: The socket number where the core resides.
    • vendor: The vendor of the CPU (e.g., Intel, AMD).

4. Memory/RAM Information

This section shows the total and free physical and virtual memory available on the system.

Note:: getFreePhysicalMemory() returns memory that is not in use but may not be immediately available for allocation. getAvailablePhysicalMemory() returns memory that can be reclaimed and is ready for use. This distinction is only relevant on Linux and Android. On MacOS and Windows the two values are the same.

import'package:system_info3/system_info3.dart';
voidmain() {
constint megaByte =1024*1024;
print('Total physical memory : ${SysInfo.getTotalPhysicalMemory() ~/ megaByte} MB');
print('Free physical memory : ${SysInfo.getFreePhysicalMemory() ~/ megaByte} MB');
print('Available physical memory: ${SysInfo.getAvailablePhysicalMemory() ~/ megaByte} MB');
print('Total virtual memory : ${SysInfo.getTotalVirtualMemory() ~/ megaByte} MB');
print('Free virtual memory : ${SysInfo.getFreeVirtualMemory() ~/ megaByte} MB');
print('Virtual memory size : ${SysInfo.getVirtualMemorySize() ~/ megaByte} MB');
}

Available Memory Information:

  • getTotalPhysicalMemory(): Returns the total physical memory in bytes.
  • getFreePhysicalMemory(): Returns the free physical memory in bytes.
  • getTotalVirtualMemory(): Returns the total virtual memory in bytes.
  • getFreeVirtualMemory(): Returns the free virtual memory in bytes.
  • getVirtualMemorySize(): Returns the virtual memory size in bytes.

Note: The memory values are returned in bytes. The example code converts them to megabytes for easier reading.

Check out the example for a complete implementation. Run the example using the following command:

dart example/example.dart

Additional information

Report issues and help improve the package on GitHub. Check API reference for more detailed information.

About

Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages