stalk

A cross-platform file watcher

https://github.com/applegamer22/stalk

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.4%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

A cross-platform file watcher

Basic Info
  • Host: GitHub
  • Owner: AppleGamer22
  • License: gpl-3.0
  • Language: Go
  • Default Branch: master
  • Homepage:
  • Size: 362 KB
Statistics
  • Stars: 3
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 6
Created about 4 years ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License Code of conduct Citation Codeowners

README.md

stalk

Go Reference Test CodeQL Release Update Documentation

Description

stalk is a cross-platform CLI utility for file-watching.

Why This Name?

This name is simply a stupid ~~pun~~, therefore I do not condone and do not promote stalking (excluding stalking fictional individuals for the purposes of a CTF challenge).

Installation

Nix Flakes

nix { inputs = { # or your preferred NixOS channel nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; applegamer22.url = "github:AppleGamer22/nur"; }; outputs = { nixpkgs }: { nixosConfigurations.nixos = nixpkgs.lib.nixosSystem { specialArgs = { pkgs = import nixpkgs { # ... overlays = [ (final: prev: { # ... ag22 = applegamer22.packages."<your_system>"; }) ]; }; }; modules = [ # or in a separate Nix file ({ pkgs, ... }: { programs.nix-ld.enable = true; environment.systemPackages = with pkgs; [ ag22.stalk ]; }) # ... ]; }; }; }

Arch Linux Distributions

  • yay: bash yay -S stalk-bin
  • paru: bash paru -S stalk-bin

macOS

Windows (working progress)

  • winget: bash winget install AppleGamer22.stalk

Other

  • go:
    • Does not ship with:
      • a manual page
      • pre-built shell completion scripts go install github.com/AppleGamer22/stalk

Functionality

watch Sub-command

The arguments have to be existing files, that the user running the command can read.

-c/--command Flag

This flag specifies the command to be stopped and re-run after each file system event.

-v/--verbose Flag

This flag enables more detailed logs to be printed regarding file system events.

wait Sub-command

The arguments have to be existing files, that the user running the command can read. This command is meant to be integrated inside other scripts, which is why it only waits for a single file system event before terminating.

version Sub-command

-v/--verbose Flag

  • If this flag is provided, the following details are printed to the screen:
    1. semantic version number
    2. commit hash
    3. Go compiler version
    4. processor architecture & operating system
  • Otherwise, only the semantic version number is printed.

Dependencies

The only dependencies stalk requires are the OS-level dependencies of the github.com/fsnotify/fsnotify library.

Common Contributor Routines

Testing

Running the following command will run go test on the cmd and session sub-modules: bash make test

Building From Source

Development

  • Using the following make command will save a stalk binary with the last version tag and the latest git commit hash: bash make debug

Release

  • Using the following GoReleaser command with a version git tag and a clean git state: bash goreleaser build --clean
  • All release artificats will stored in the dist child directory in the codebase's root directory:
    • compressed package archives with:
      • a stalk binary
      • manual page
      • shell completion scripts
    • checksums
    • change log

Copyright

stalk is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.

stalk is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Owner

  • Name: Omri Bornstein
  • Login: AppleGamer22
  • Kind: user
  • Location: Melbourne, Australia

Software Engineer, Gopher, TeXnician | Enthusiastic About Open-Source Software and Software Supply Chains

GitHub Events

Total
  • Release event: 1
  • Watch event: 1
  • Delete event: 30
  • Issue comment event: 6
  • Push event: 38
  • Pull request event: 59
  • Create event: 34
Last Year
  • Release event: 1
  • Watch event: 1
  • Delete event: 30
  • Issue comment event: 6
  • Push event: 38
  • Pull request event: 59
  • Create event: 34

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 0
  • Total pull requests: 57
  • Average time to close issues: N/A
  • Average time to close pull requests: 3 days
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.19
  • Merged pull requests: 52
  • Bot issues: 0
  • Bot pull requests: 57
Past Year
  • Issues: 0
  • Pull requests: 20
  • Average time to close issues: N/A
  • Average time to close pull requests: about 12 hours
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.4
  • Merged pull requests: 18
  • Bot issues: 0
  • Bot pull requests: 20
Top Authors
Issue Authors
  • dependabot[bot] (4)
Pull Request Authors
  • dependabot[bot] (102)
Top Labels
Issue Labels
dependencies (4)
Pull Request Labels
dependencies (102)

Packages

  • Total packages: 2
  • Total downloads: unknown
  • Total dependent packages: 0
    (may contain duplicates)
  • Total dependent repositories: 0
    (may contain duplicates)
  • Total versions: 16
proxy.golang.org: github.com/applegamer22/stalk
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 7.0%
Forks count: 9.0%
Average: 9.0%
Dependent repos count: 9.3%
Stargazers count: 10.9%
Last synced: 11 months ago
proxy.golang.org: github.com/AppleGamer22/stalk
  • Versions: 8
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 7.0%
Forks count: 9.0%
Average: 9.0%
Dependent repos count: 9.3%
Stargazers count: 10.9%
Last synced: 11 months ago

Dependencies

go.mod go
  • github.com/fsnotify/fsnotify v1.5.4
  • github.com/inconshreveable/mousetrap v1.0.0
  • github.com/spf13/cobra v1.5.0
  • github.com/spf13/pflag v1.0.5
  • golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a
go.sum go
  • github.com/cpuguy83/go-md2man/v2 v2.0.2
  • github.com/fsnotify/fsnotify v1.5.4
  • github.com/inconshreveable/mousetrap v1.0.0
  • github.com/russross/blackfriday/v2 v2.1.0
  • github.com/spf13/cobra v1.5.0
  • github.com/spf13/pflag v1.0.5
  • golang.org/x/sys v0.0.0-20220412211240-33da011f77ad
  • golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a
  • gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405
  • gopkg.in/yaml.v2 v2.4.0
.github/workflows/dependency.yml actions
  • actions/checkout v3.3.0 composite
  • actions/dependency-review-action v3 composite
.github/workflows/release.yml actions
  • actions/checkout v3.3.0 composite
  • actions/setup-go v3.5.0 composite
  • anchore/sbom-action/download-syft v0.13.3 composite
  • goreleaser/goreleaser-action v4 composite
.github/workflows/tag.yml actions
  • actions/setup-go v3.5.0 composite
.github/workflows/test.yml actions
  • actions/checkout v3.3.0 composite
  • actions/setup-go v3.5.0 composite