User::I...:System(3)
π User::I...:System(3) β User Contributed Perl Documentation π
okay bestie, sit down, we're talking about User::I...:System(3) from the User Contributed Perl Documentation section. it's giving perl, it's giving identity management, it's giving "yes i have a presence on that server actually". let's get into it π«Ά
β¨ NAME β¨
User::Identity::System β the physical system of a person. like, the actual box. the machine. her server. π»β¨
πΈ INHERITANCE πΈ
User::Identity::System
is a User::Identity::Item
so yeah, it's a User::Identity::Item underneath. family tree moment π
π¦ SYNOPSIS π¦
use User::Identity;
use User::Identity::System;
my $me = User::Identity->new(...);
my $server = User::Identity::System->new(...);
$me->add(system => $server);
# Simpler
use User::Identity;
my $me = User::Identity->new(...);
my $addr = $me->add(system => ...);
look at that second one. the Simpler version. lowkey the main character. you just add a system and the object builds itself for you. slay β¨
π DESCRIPTION π
so the User::Identity::System object holds the description of a user's presence on a system. that's the whole vibe. your person, on a machine, described. π
the systems get collected together by a User::Identity::Collection::Systems object β like a little friend group of servers, no cap.
β οΈ important bestie: nearly all methods can return undef. so check your returns. don't be out here assuming things. π
this extends DESCRIPTION in User::Identity::Item.
π METHODS π
extends METHODS in User::Identity::Item.
π Constructors π
extends Constructors in User::Identity::Item.
$class->new( [$name], %options )β creates a shiny new system. you can pass a name as the first argument, or just drop it in theOPTIONlist. and if you don't give it a name at all? the organization gets used as the name instead. cute little fallback. π
here's the full options table, verbatim, because facts are facts:
-Option --Defined in --Default
description User::Identity::Item undef
hostname 'localhost'
location undef
name User::Identity::Item <required>
os undef
parent User::Identity::Item undef
password undef
username undef
and now the breakdown, one by one:
description => STRINGβ the description, obviously.hostname => $nameβ the$nameof the system we're describing. and listen, it is preferred to use full system names, not abbreviations. like, use"www.tux.aq"instead of just"www"so you don't get your wires crossed. full names only, we're not doing confusion today. π«location => $nick|OBJECTβ the$nickof a location that's defined for the same user. or you can just hand it aUser::Identity::LocationOBJECT directly. your call, bestie.name => STRINGβ the name. yeah.os => STRINGβ the name of the operating system running on the server. it is advised to use the same names Perl's$^Ovariable uses. go peek at theperlvarman-page for that variable, andperlportfor all the possible values. iykyk πparent => OBJECTβ the parent object.password => STRINGβ the password used to log in. and it must be un-encoded: directly usable.
π¨ BESTIE. LISTEN. be warned that storing un-encoded passwords is a high security list. that's the actual wording and it is NOT a drill. this is the dangerous part of the page. do not leave your plaintext passwords lying around like yesterday's iced coffee. π
username => STRINGβ the username used to log in to this host.
πΈ Attributes πΈ
extends Attributes in User::Identity::Item.
$obj->description()β inherited, see"Attributes"inUser::Identity::Item.$obj->hostname()β the hostname getter, that's it, that's the tweet.$obj->location()β returns the object that describes which location this system relates to. the location can be used to find the name of the organization involved, or to create a signature. and if no location was specified? you getundefback. π$obj->name( [$newname] )β inherited, see"Attributes"inUser::Identity::Item.$obj->os()β the OS.$obj->password()β the password. (un-encoded, remember? we talked about this. π)$obj->username()β the username.
π§ Collections π§
extends Collections in User::Identity::Item.
$obj->add($collection, $role)β inherited, see"Collections"inUser::Identity::Item.$obj->addCollection( $object | <[$type], %options> )β inherited, see"Collections"inUser::Identity::Item.$obj->collection($name)β inherited, see"Collections"inUser::Identity::Item.$obj->parent( [$parent] )β inherited, see"Collections"inUser::Identity::Item.$obj->removeCollection($object|$name)β inherited, see"Collections"inUser::Identity::Item.$any->type()β inherited, see"Collections"inUser::Identity::Item.$obj->user()β inherited, see"Collections"inUser::Identity::Item.
π Searching π
extends Searching in User::Identity::Item.
$obj->find($collection, $role)β inherited, see"Searching"inUser::Identity::Item.
π DIAGNOSTICS π
the error messages, and what they're actually trying to tell you:
Error: cannot load collection module for $type ($class): $@β either the$typeyou specified doesn't exist, or that module named$classis throwing compilation errors. and if the type named in the warning isn't a package name, then you gave a nickname that was never defined β maybe you forgot torequirethe package that defines that nickname. cast byaddCollection().Error: nvalid collection $name.β the collection with$namedoesn't exist and can't be created. cast byadd(). (yes, it really saysnvalid. we don't fix, we report. π«‘)Error: this $object is not a collection.β cast byaddCollection().
π SEE ALSO π
this module is part of User-Identity version 4.00, built on December 12, 2025. website: http://perl.overmeer.net/CPAN/ π
π LICENSE π
for contributors, see file ChangeLog.
this software is copyright (c) 2003-2025 by Mark Overmeer.
this is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself. periodt. π
and that's the whole page, bestie!! π this one came out of perl v5.42.0, dated 2026-01-17, and it lives in the User::I...:System(3) slot in your manual. go forth and describe your servers responsibly β and for the love of everything, keep those passwords encoded. mwah πβ¨π¦
π¦ where this page comes from
- fedora 44: perl-User-Identity 4.00-2.fc44 Β· GPL-1.0-or-later OR Artistic-1.0-Perl
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms